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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-51585 — rt26cx21x64.sys 익스플로잇 (Realtek PCIe GbE/2.5GbE/5GbE 제품군) | Kitploit
도구/GitHubGitHub/catforgor/cve-2026-51585
Vulnerability AnalysisExploitationReverse EngineeringHardware & IoT SecurityBinary Exploitation
GitHubcatforgor/cve-2026-51585

CVE-2026-51585

rt26cx21x64.sys 익스플로잇 (Realtek PCIe GbE/2.5GbE/5GbE 제품군)

저장소 보기
34개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

realtek poc

rt26cx21x64.sys 익스플로잇 (Realtek PCIe GbE/2.5GbE/5GbE 계열)

개요

OID 0xFF816871은 NIC의 mmio BAR를 호출 프로세스의 가상 주소 공간에 매핑합니다. (MmLockedPagesSpecifyCache), \.\RealTekCard{GUID}를 통해 UM에서 접근 가능

이 IOCTL(0x0012C818)은 레지스트리 값(DrvMode=4)에 의해 게이트됩니다.

mmio 레지스터 접근 권한을 얻으면, 루프백 모드에서 NIC의 tx/rx 디스크립터 링을 프로그래밍하여 임의의 물리 주소를 읽고 쓸 수 있습니다(AllocateUserPhysicalPages가 PFN을 제공).

리버스 엔지니어링

IOCTL 디스패치

IOCTL 0x12C008(1230872)은 첫 번째 취약한 디스패치 분기입니다. 0x12C00C와 0x12C010은 다른 경로로 이어지며, a5는 스위치를 통해 IOCTL 코드를 전달합니다.

IOCTL 디스패치

모드 게이트

DMA 경로에 도달하기 전에 드라이버는 전역 DrvMode 플래그를 확인하며, 비트 2가 설정되어 있어야 합니다. 그렇지 않으면 취약한 MMIO 매핑 경로에 도달할 수 없습니다.

모드 게이트 확인

dword_1400D0208과 4의 AND 연산이 확인입니다.

가드 우회

취약한 경로 앞에는 두 개의 가드가 있으며, DMA 경로에 진입하려면 둘 다 false로 평가되어야 합니다. 이는 디바이스 확장의 바이트 플래그와 이전 이미지의 모드 확인입니다.

가드 우회

!_(_BYTE _)(a1 + 12465)는 우회하기 쉽습니다. 디바이스가 초기화되지 않았는지만 확인하면 됩니다.

sub_14001B67C도 사소하게 쉽습니다.

MDL 할당

드라이버는 호출자가 제공한 물리 주소에 대해 검증 없이 MDL을 할당합니다. 경계나 범위 검증이 전혀 없습니다. 아무것도 없습니다.

MDL 할당

물리 매핑

MDL은 커널 VA에 매핑되고 기본 주소가 호출자에게 전달됩니다. 0x40000010은 MAP_NO_EXECUTE 및 MmNonCached입니다.

MmMapLockedPages

MmMapLockedPagesSpecifyCache는 매핑된 VA를 생성하여 *a2에 기록하고 UM에 반환합니다. 이를 통해 임의의 물리 읽기/쓰기 프리미티브를 얻을 수 있습니다.

요구 사항

  • nic.h와 호환되는 Realtek 어댑터.

사용법

관리자 권한으로 실행합니다.

첫 실행 후 레지스트리 값이 설정되며 PC를 재시작해야 합니다.

이 기능이 작동하려면 NIC가 링크 UP 상태여야 합니다(디스크립터를 처리할 수 있도록).

다음 중 하나를 수행하세요:

  • 다른 PC, 라우터 또는 링크 UP을 제공할 수 있는 모든 장치에 이더넷 케이블 연결

또는

  • RJ45 포트의 핀 1-2 및 3-6을 단락시켜 링크 UP 상태로 전환

빌드

root@kitploit:~
$ cmake -B build
$ cmake --build build --config Release

참고 사항

  • 대부분의 흥미로운 부분(cr3, 스톰핑 등)을 제거했지만 이것이 기본 POC입니다.
도구 다운로드