rahul0xkr/gdrv-arbitrary-rw-lpe

GitHub: rahul0xkr/gdrv-arbitrary-rw-lpe

这是一个利用 GDRV.sys 驱动程序漏洞实现内核任意读写,并通过窃取 SYSTEM Token 进行本地提权的演示项目。

Stars: 0 | Forks: 0

# Windows 内核 LPE 漏洞利用(通过 GDRV.sys)(任意读写 → 窃取 Token) ## 概述 本项目演示了 GDRV.sys 驱动程序中的一个本地提权(LPE)漏洞。该驱动程序暴露了一个 IOCTL,可在不验证用户提供的指针的情况下执行内存复制操作。 通过利用此漏洞,我们实现了任意内核读写,并通过窃取 SYSTEM 进程的 token 来提升权限。 ## 漏洞摘要 IOCTL:`0xC3502808` 驱动程序执行: memcpy(dst, src, size) 其中: - `dst` = 用户控制 - `src` = 用户控制 - `size` = 用户控制 未执行任何验证 → 导致内核中的任意内存访问。 ## 根本原因 ``` v8 = *(_BYTE *)(v6 + v3++); *(_BYTE *)(v3 - 1) = v8; v3 → destination pointer (user-controlled) v5 → source pointer (user-controlled) v4 → size (user-controlled) ``` 这导致了任意读/写原语。 ## 漏洞利用步骤 1. 打开设备 \\.\GIO 2. 构建任意读/写原语 3. 通过 EnumDeviceDrivers 泄露内核基址 4. 解析 PsInitialSystemProcess 5. 读取 SYSTEM EPROCESS 6. 遍历 ActiveProcessLinks 7. 定位当前进程 8. 窃取 SYSTEM token 9. 生成 SYSTEM shell ## 演示 Token 已窃取! whoami nt authority\system ## 构建与运行 g++ exploit.cpp -o exploit.exe -lpsapi exploit.exe
标签:C++, Conpot, CSV导出, Exploit, GDRV.sys, IOCTL, LPE, Token窃取, Web报告查看器, Windows内核, Windows安全, 任意读写, 内存安全, 内核开发, 内核态, 协议分析, 数据擦除, 本地提权, 权限提升, 漏洞分析, 白帽子, 系统编程, 路径探测, 驱动漏洞