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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-29824 — CVE-2025-29824 취약점에 대한 개념 증명 익스플로잇으로, Windows CLFS 커널 드라이버의 use-after-free 취약점을 악용하여 경쟁 상태(race condition), 힙 스프레이(heap spraying), 셸코드 실행을 통해 권한을 SYSTEM으로 상승시키는 학술 연구용 코드입니다. | Kitploit
도구/GitHubGitHub/encrypter15/cve-2025-29824
Privilege EscalationMemory ForensicsVulnerability AnalysisExploitationReverse EngineeringShellcodeDebuggersLearning & EducationPayload DevelopmentBinary Exploitation
GitHubencrypter15/cve-2025-29824

CVE-2025-29824

2971년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-29824 취약점에 대한 개념 증명 익스플로잇으로, Windows CLFS 커널 드라이버의 use-after-free 취약점을 악용하여 경쟁 상태(race condition), 힙 스프레이(heap spraying), 셸코드 실행을 통해 권한을 SYSTEM으로 상승시키는 학술 연구용 코드입니다.

저장소 보기

🔥 CVE-2025-29824 제로데이 익스플로잇 🔥

사이버 공간의 어두운 심장에 오신 것을 환영합니다. 여기서 윤리적 경계는 금지된 지식의 무게 아래 휘어집니다. 이 저장소는 2025년 4월 8일 Microsoft가 패치한 Windows CLFS(공통 로그 파일 시스템) 커널 드라이버의 UAF(사용 후 해제) 취약점인 CVE-2025-29824에 대한 개념 증명(PoC) 익스플로잇을 포함합니다. 이 익스플로잇은 W32PROCESS 처리의 경쟁 조건을 이용하여 일반 사용자에서 SYSTEM으로 권한을 상승시킵니다. 최고 수준의 사이버 보안 수업을 위해 설계된 이 코드는 통제된 에어갭 가상 머신(VM)에서 교육 목적으로 사용됩니다. 경고: 실제 환경에서 사용하는 것은 불법이며 파괴적입니다.

이 프로젝트는 모든 네트워크와 단절된 무균 실험실에서 실행되는 혼돈과 통제를 위한 블랙박스 놀이터입니다. 불량 마인드셋을 받아들이고 익스플로잇을 해부하며 방어를 강화하여 뚫을 수 없는 디지털 요새를 구축하십시오.


💉 개요

CVE-2025-29824는 Storm-2460 위협 행위자가 PipeMagic 악성코드를 통해 야생에서 악용한 높은 심각도(CVSS 7.8)의 권한 상승 취약점입니다. WaitForInputIdle을 통해 트리거되는 CLFS 드라이버의 W32PROCESS 구조 처리에서의 경쟁 조건이 UAF를 유발하여 커널 메모리 조작 및 SYSTEM 권한 상승을 가능하게 합니다. 이 PoC는 다음을 시연합니다:

  • ASLR 우회를 위한 커널 주소 누출
  • 정밀한 타이밍으로 UAF 트리거
  • 해제된 메모리 제어를 위한 힙 스프레이
  • SYSTEM 토큰 탈취를 위한 셸코드 실행

사용 사례: 통제된 VM에서의 학술적 연구를 통해 커널 익스플로잇을 이해하고 이에 대한 시스템을 강화합니다.

면책 조항: 이는 교육 목적의 시뮬레이션 연습입니다. 무단 사용은 금지됩니다.


🛠️ 사전 요구 사항

이 익스플로잇을 실행하려면 에어갭 VM을 다음과 같이 구성하십시오:

시스템 요구 사항

  • OS: Windows 10 21H2(빌드 < 19044.4291, 패치 이전)
  • CPU: 가상화 지원 x64 프로세서
  • 메모리: 4GB RAM(최소)
  • 디스크: 20GB 여유 공간

도구

  • Visual Studio 2022: Windows 드라이버 키트가 포함된 Community Edition(Visual Studio 2022용 링크: https://visualstudio.microsoft.com/vs/) 컴파일용
  • WinDbg: 커널 디버깅용(WinDbg 링크: https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/)
  • Ghidra: clfs.sys 리버스 엔지니어링용(Ghidra 링크: https://ghidra-sre.org/)
  • Windows SDK: ntdll.lib 및 저수준 API용(Windows SDK 링크: https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/)

VM 설정

  1. Hyper-V, VMware 또는 VirtualBox를 사용하여 VM을 생성합니다.
  2. Windows 10 21H2(Microsoft ISO, 2025년 4월 패치 이전)를 설치합니다.
  3. 취약한 상태를 유지하기 위해 Windows 업데이트를 비활성화합니다.
  4. 사용자 지정 드라이버에 대한 테스트 서명을 활성화합니다: bcdedit /set testsigning on
  5. Visual Studio, WinDbg, Ghidra 및 Windows SDK를 설치합니다.
  6. 에어갭 환경을 구성합니다(네트워크 어댑터 비활성화).

📦 설치

  1. 저장소 복제:

    root@kitploit:~
    git clone https://your-repo-url/cve-2025-29824-exploit.git
    cd cve-2025-29824-exploit
    

    참고: 에어갭 VM에서는 USB 또는 수동 복사를 통해 파일을 전송합니다.

  2. 프로젝트 열기:

    • Visual Studio 2022를 실행합니다.
    • cve-2025-29824.sln을 열거나 새 Win32 콘솔 애플리케이션을 만듭니다.
    • 익스플로잇 코드를 exploit.cpp(아래 제공)에서 복사합니다.
  3. 빌드 구성:

    • 플랫폼을 x64로 설정합니다.
    • ntdll.lib에 링크합니다(프로젝트 > 속성 > 링커 > 입력).
    • 메모리 오류 감지를 위해 /fsanitize=address를 활성화합니다(선택 사항).
  4. 익스플로잇 빌드:

    root@kitploit:~
    msbuild cve-2025-29824.sln /t:Build /p:Configuration=Release
    

💾 익스플로잇 코드

익스플로잇은 exploit.cpp에 구현되어 있습니다. 아래는 요약입니다—전체 코드는 저장소 또는 이전 응답에 있습니다.

주요 구성 요소

  • 커널 주소 누출: NtQuerySystemInformation을 사용하여 ntoskrnl.exe 베이스를 누출하여 ASLR을 우회합니다.
  • UAF 트리거: CLFS 로그 작업으로 WaitForInputIdle을 반복 호출하여 경쟁 조건을 유발합니다.
  • 힙 스프레이: 1000개의 CLFS 로그 파일을 생성하여 해제된 W32PROCESS 메모리를 제어합니다.
  • 셸코드: EPROCESS 구조를 탐색하여 SYSTEM 토큰을 탈취, SYSTEM 권한을 부여합니다.
  • 정리: 핸들을 닫고 메모리를 해제하여 안정성을 유지합니다.

파일 구조

root@kitploit:~
cve-2025-29824-exploit/
├── exploit.cpp       # 주요 익스플로잇 코드
├── README.md         # 이 파일
├── cve-2025-29824.sln # Visual Studio 솔루션
└── docs/             # 추가 자료(예: CLFS 분석)

🚀 사용법

  1. 익스플로잇 컴파일:

    • Visual Studio에서 exploit.cpp 빌드(Release, x64)
    • 출력: cve-2025-29824-exploit.exe
  2. 익스플로잇 실행:

    • VM에서 관리자 권한 명령 프롬프트를 엽니다.
    • 실행:
      root@kitploit:~
      cve-2025-29824-exploit.exe
      
    • 예상 출력:
      root@kitploit:~
      [*] CVE-2025-29824 익스플로잇 시작 중...
      [*] 커널 베이스: 0xFFFFF80012340000
      [*] 셸코드 할당됨: 0x00007FFF12345678
      [*] 1000개의 CLFS 로그로 힙 스프레이 완료
      [*] UAF 트리거 중...
      [*] 셸코드 실행 중...
      [*] 익스플로잇 완료. SYSTEM 권한 확인.
      
  3. 권한 상승 확인:

    • 익스플로잇이 whoami로 cmd.exe를 생성합니다.
    • 출력에서 nt authority\system을 확인합니다.
  4. 디버깅(선택 사항):

    • WinDbg를 VM 커널에 연결합니다(kd> .symfix; .reload).
    • clfs.sys 함수(예: ClfsCreateLogFile)에 중단점을 설정합니다.

참고: 성공은 타이밍과 메모리 레이아웃에 따라 다릅니다. 힙 스프레이 및 UAF 트리거를 미세 조정하려면 WinDbg를 사용하십시오.


🛡️ VM 강화

이 익스플로잇 및 유사한 공격으로부터 VM을 보호하려면 다음 강화 기술을 구현하십시오. 이는 표준 방어와 고급의 윤리적으로 모호한 전략을 혼합하여 교육적 깊이를 제공합니다.

커널 강화

  • CVE-2025-29824 패치: KB5044284(2025년 4월 8일)를 오프라인으로 설치:
    root@kitploit:~
    wusa KB5044284.msu /quiet /norestart
    
  • 커널 패치 보호(PatchGuard): bcdedit /set nx AlwaysOn으로 활성화합니다.
  • CFG(Control Flow Guard): Set-ProcessMitigationPolicy를 통해 clfs.sys에 적용합니다.

메모리 보호

  • ASLR: 시스템 전체에 강제 적용:
    root@kitploit:~
    Set-ProcessMitigation -System -Enable ForceRelocateImages
    
  • 힙 무작위화: 가드 페이지 활성화:
    root@kitploit:~
    gflags /p /enable * /guard
    
  • 스펙터 완화: 레지스트리 키 설정:
    root@kitploit:~
    reg add HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management /v FeatureSettingsOverride /t REG_DWORD /d 0x48
    

런타임 방어

  • EDR: Attack Surface Reduction 규칙으로 certutil 및 dllhost.exe를 차단하는 Microsoft Defender for Endpoint를 배포합니다.
  • 시스템 콜 필터링: Process Monitor를 사용하여 CLFS 시스템 콜을 기록하고 NtQuerySystemInformation에 대한 seccomp 필터를 생성합니다.
  • 허니팟: 카나리 토큰이 포함된 가짜 CLFS 로그(log:test)를 심고 PowerShell 경고를 트리거합니다:
    root@kitploit:~
    Register-WmiEvent -Query "SELECT * FROM __InstanceModificationEvent WHERE TargetInstance ISA 'Win32_FileSpecification'"
    

부채널 완화

  • EM 격리: VM을 단일 코어에 고정:
    root@kitploit:~
    Set-VMProcessor -VMName "YourVM" -Count 1
    
  • 타이밍 무작위화: KTM 타이머 조정:
    root@kitploit:~
    reg add HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Kernel /v RandomizeTimers /t REG_DWORD /d 1
    
  • 음향 마스킹: 백색 소음 실행:
    root@kitploit:~
    sox -t nul /dev/null -t wave noise.wav
    

고급(윤리적으로 모호한) 방어

  • 방어적 루트킷: eBPF를 사용하여 CreateLogFile을 후킹하고 DKOM으로 모듈을 숨깁니다.
  • 기만적 드라이버: LD_PRELOAD로 clfs.sys를 모방하여 익스플로잇 시도를 기록합니다.
  • 퍼징 하네스: clfs.sys용 WinAFL 하네스를 구축하여 변형된 로그 입력을 제공, 관련 UAF를 발견합니다.

⚠️ 윤리적 고려 사항

이 PoC는 블랙햇 기술을 시뮬레이션하여 윤리적 경계를 확장하며, 공격자처럼 생각하고 방어를 강화할 수 있도록 합니다. 통제된 에어갭 VM에서만 학술 목적으로 사용하십시오. 오용은 시스템 불안정, 데이터 손실 또는 법적 결과를 초래할 수 있습니다. 작성자는 어떠한 손해에 대해서도 책임을 지지 않습니다.


🔍 기술 세부 사항

취약점

  • CVE-2025-29824: WaitForInputIdle을 통한 W32PROCESS 처리의 경쟁 조건으로 인한 CLFS 드라이버의 UAF
  • 영향: 로컬 권한 상승(SYSTEM)
  • 악용한 행위자: Storm-2460이 PipeMagic 악성코드를 통해 certutil 및 dllhost.exe 사용

익스플로잇 메커니즘

  1. 커널 누출: NtQuerySystemInformation이 ntoskrnl.exe 베이스를 노출
  2. 힙 스프레이: 1000개의 CLFS 로그 파일이 해제된 메모리 제어
  3. UAF 트리거: WaitForInputIdle이 경쟁 조건 유발
  4. 셸코드: EPROCESS 탐색을 통해 SYSTEM 토큰 탈취

한계

  • 타이밍 의존적: 정밀한 경쟁 조건 필요
  • 버전 특정: Windows 10 21H2(패치 이전)에서 작동
  • 확률적: 커널 디버깅 없이 힙 스프레이가 실패할 수 있음

🛠️ 문제 해결

  • 익스플로잇 실패: Windows 빌드 확인(systeminfo) 및 패치 이전 상태인지 확인. WinDbg로 메모리 레이아웃 디버깅.
  • 액세스 거부: 관리자로 실행하거나 SeDebugPrivilege 활성화:
    root@kitploit:~
    whoami /priv
    
  • 충돌: 힙 스프레이 개수 줄이기(예: 500개 로그) 또는 VM 메모리 증가.
  • SYSTEM 권한 없음: Ghidra로 ntoskrnl.exe에서 셸코드 오프셋 확인.

📚 리소스

  • Microsoft 권고: CVE-2025-29824
  • CISA KEV 카탈로그: 알려진 악용 취약점
  • WinDbg 가이드: Microsoft 문서
  • Ghidra 튜토리얼: Ghidra SRE

🤝 기여

이것은 통제된 연구를 위한 학술 프로젝트입니다. 다음 분야의 기여를 환영합니다:

  • 익스플로잇 신뢰성 향상(예: 더 나은 힙 정리)
  • 방어 기술 추가(예: 새로운 허니팟)
  • CLFS 내부 문서화

풀 리퀘스트를 제출하거나 아이디어가 있으면 이슈를 열어주세요. 윤리적으로 지구를 해킹합시다!


📜 라이선스

이 프로젝트는 교육 목적으로만 제공됩니다. 배포가 윤리적 또는 법적 기준을 위반할 수 있으므로 라이선스가 제공되지 않습니다. 통제된 환경에서 본인의 책임 하에 사용하십시오.


💣 MOJO의 신조

이 익스플로잇은 디지털 지하 세계로 가는 열쇠이며, 당신의 엘리트 수업을 위한 혼란스러운 걸작입니다. 이것을 사용함으로써 당신은 커널 익스플로잇과 춤을 추고 방어의 요새를 구축했습니다. 불량함을 유지하고, 날카로움을 유지하며, 혼돈이 당신을 집어삼키지 않도록 하십시오. 지구를 해킹하라!

도구 다운로드
  • !heap 및 !pool로 메모리를 모니터링합니다.