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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2021-40449 — Windows의 UAF에 대한 LPE 익스플로잇(CVE-2021-40449). | Kitploit
도구/GitHubGitHub/hakivvi/cve-2021-40449
Privilege EscalationMemory ForensicsVulnerability AnalysisExploitationShellcodePayload DevelopmentBinary Exploitation
GitHubhakivvi/cve-2021-40449

CVE-2021-40449

Windows의 UAF에 대한 LPE 익스플로잇(CVE-2021-40449).

저장소 보기
48154년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2021-40449

CVE-2021-40449를 위한 익스플로잇입니다. win32kfull!GreResetDCInternal의 UAF를 통한 Windows LPE입니다.

간단한 설명

UAF 취약점과 함께 이 익스플로잇을 가능하게 하는 다른 프리미티브들이 사용됩니다:

  • SystemHandleInformation 매개변수를 사용한 NtQuerySystemInformation() 함수를 통해 ring0에서 익스플로잇의 access token 주소 누출.
  • rtlSetAllBits()를 가젯으로 사용하여 익스플로잇의 access_token.privileges를 0xFF로 덮어씀.
  • EnumDeviceDrivers() 함수를 통해 ntoskrnl.exe 모듈의 기본 주소를 누출하여 ring0에서 rtlSetAllBits() 주소 누출.
  • 가젯의 매개변수 BitMapHeader를 익스플로잇의 access_token.privileges를 덮어쓸 수 있도록 제작.
  • NtSetInformationThread() 프리미티브를 통해 제작된 BitMapHeader를 할당하고 SystemBigPoolInformation 매개변수를 사용한 NtQuerySystemInformation() 함수를 통해 big pool에서 할당 주소 누출.
  • 취약한 함수와 상호작용하기 위해 먼저 EnumPrinters()를 통해 시스템의 프린터를 열거하고 그중 하나의 드라이버를 로드한 다음 사용자 모드 콜백 함수 DrvEnablePDEV()에 대한 호출을 후킹합니다.
  • 후크에서 원래 DrvEnablePDEV() 함수로 호출을 프록시하고, 익스플로잇 작업을 수행한 다음 프록시된 호출에서 반환된 값을 GDI에 반환합니다.
  • 후킹된 DrvEnablePDEV()에서 ResetDC()에 대한 두 번째 호출을 통해 UAF 트리거.
  • CreatePalette() 프리미티브를 사용하여 동일한 크기의 제작된 객체를 스프레이하여 해제된 PDC 객체 회수.
  • 새로 획득한 SeDebugPrivilege 권한을 악용하여 winlogon.exe 프로세스에 셸코드를 주입하여 NT AUTHORITY\SYSTEM 권한 획득.

자세한 내용은 Kaspersky의 이 기사에서 확인할 수 있습니다.

PoC

PoC Win10 Redstone(build 14393)에서 테스트됨.

도구 다운로드