Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
KnockGiga — Gigabyte gdrv3.sys IOCTL을 악용하여 검사되지 않은 물리 메모리 읽기를 통해 SYSTEM 토큰을 사용자 프로세스에 기록하는 로컬 권한 상승 개념 증명. | Kitploit
도구/GitHubGitHub/mein-0/knockgiga
Privilege EscalationVulnerability AnalysisExploitationReverse EngineeringHardware SecurityBinary Exploitation
GitHubmein-0/knockgiga

KnockGiga

Gigabyte gdrv3.sys IOCTL을 악용하여 검사되지 않은 물리 메모리 읽기를 통해 SYSTEM 토큰을 사용자 프로세스에 기록하는 로컬 권한 상승 개념 증명.

저장소 보기
3451일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

안녕 해커들.

gdrv3.sys는 Gigabyte App Center와 EasyTune에 포함되어 배포되는 서명된 커널 드라이버다. 이 드라이버는 보안 서술자 없이 \.\GIOV3를 생성하므로, 로컬 사용자라면 누구나 관리자 권한 없이, UAC 없이 열 수 있다. 이 드라이버의 IOCTL 두 개가 전부다.

첫 번째 IOCTL(0xC3502019)은 물리 메모리를 읽는다고 되어 있다. 물리 주소, 길이, 출력 포인터를 주면 그곳에 바이트를 복사한다. 문제는 출력 포인터다. 드라이버는 그것이 사용자 공간인지 전혀 확인하지 않는다. ProbeForWrite도, 경계 검사도, 아무것도 없다. 그래서 "읽기"는 사실상 write-what-where이며, 결과가 어디에 떨어질지만 고르면 된다. 물리 메모리에서 SYSTEM 프로세스 토큰을 읽은 다음, 출력 포인터를 자신의 EPROCESS 토큰 필드로 바로 향하게 하면 된다. 드라이버가 SYSTEM 토큰을 당신의 프로세스에 대신 써 넣어준다.

그게 익스플로잇의 전부다. 메모리 손상도, 커널 모드 셸코드도 없다. CPL0에서 실행되어서는 안 되는 것이 실행되지 않으므로 SMEP, SMAP, KVAS, CET, CFG는 등장하지 않는다. 데이터만 사용하는 방식이며, 매번 성공했다. 두 번째 IOCTL 쌍(0xC3502584 읽기, 0xC3502580 쓰기)은 고전적인 방식이다. 임의의 MSR, 인덱스 화이트리스트 없음. IA32_LSTAR를 읽는 것만으로도 KASLR이 그 자체로 깨지고, 쓰면 syscall 진입점을 탈취한다. SMEP/SMAP 우회가 필요해서 보조 경로로 남겨두었지만, 그것만으로도 심각하다.

일반 사용자 계정에서 빌드하고 실행:

gcc -O2 -o poc.exe poc.c -lpsapi
poc.exe

Windows 10 x64 22H2(빌드 19045)에서 테스트했다. 이 드라이버는 Gigabyte App Center와 함께 배포되므로, 많은 Gigabyte 메인보드에서 이미 로드되어 있다.

2026년 6월에 Gigabyte에 제보했고 그들은 수정했다. 최신 빌드는 장치에 SDDL을 적용해 관리자만 접근하도록 잠그고, MSR 쓰기에 화이트리스트를 추가한다. 현재의 gdrv3는 더 이상 이 방식으로 익스플로잇할 수 없다.

SYSTEM shell

도구 다운로드