Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
MercilessAmd — 针对 AMD AmdTools64.sys 的 MSR 读写 IOCTL 的概念验证利用,用于覆盖 IA32_LSTAR、绕过 SMEP,并在 Windows 10 x64 上从管理员权限提升至 SYSTEM 权限。 | Kitploit
工具/GitHubGitHub/mein-0/mercilessamd
权限提升漏洞分析漏洞利用逆向工程Shellcode红队二进制利用
GitHubmein-0/mercilessamd

MercilessAmd

针对 AMD AmdTools64.sys 的 MSR 读写 IOCTL 的概念验证利用,用于覆盖 IA32_LSTAR、绕过 SMEP,并在 Windows 10 x64 上从管理员权限提升至 SYSTEM 权限。

查看仓库
403天前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

嗨,黑客们。

AmdTools64.sys 是 AMD uProf 附带的已签名 Special Tools 驱动。无需 UAC 绕过,也不存在标准用户边界。一旦拿到句柄,MSR 索引就没有任何白名单限制,因此你可以随意读写任何 MSR。

读取侧本身就能破坏 KASLR。读取 IA32_LSTAR(0xC0000082),驱动就会免费把 ntoskrnl!KiSystemCall64 交给你。写入侧才是真正的问题所在。IA32_LSTAR 是 CPU 在每次系统调用时跳转到的地址,而该驱动允许普通用户覆盖它。把它指向你控制的代码,下一次系统调用就会以 CPL0 运行你的代码。SMEP 是唯一的障碍,因此该漏洞利用首先读取 IA32_LSTAR 来定位 ntoskrnl,从磁盘解析导入目录,找到几个用 mov cr4, rax 清除 SMEP 的 gadget,运行一小段 shellcode 将 SYSTEM 令牌复制到当前进程,并在退出时恢复 IA32_LSTAR,使机器继续正常工作。

只有两个 IOCTL,这就是全部内容。0xFFF02804 读取 MSR,0xFFF02808 写入 MSR,两者都使用 20 字节缓冲区,且没有索引校验。分发器只检查缓冲区长度。此外还有物理内存读写和用户态物理映射(0xFFF0281C、0xFFF02820、0xFFF028A4),但映射路径在任意 RAM 上可能触发 PFN_LIST_CORRUPT,因此这里使用的是 MSR 路径。

我在 Windows 10 x64 22H2(build 19045.6456)上使用 AMD uProf 5.3.521.0 进行了测试。驱动版本为 1.7.16.218。没有竞态条件,也没有堆布局操纵,每次运行都成功。该驱动随 uProf 一起分发,并安装在大量 AMD 机器上,因此它已经为你加载好了。截图是 Win10 机器:之前 whoami 是 subhan\windows10,之后是 nt authority\system。

在 Windows 11 26300 上,我可以安装驱动并读取 IA32_LSTAR,但当内存完整性开启时,对 LSTAR 的 wrmsr 会失败,VBS/HVCI 会拦截它。已知的 Win11 EPROCESS 布局为 UniqueProcessId 0x1D0、ActiveProcessLinks 0x1D8、Token 0x248、ImageFileName 0x338,并已在该版本中对照 PsGetProcessId、PsReferenceProcessToken 和 PsGetProcessImageFileName 进行核对。

其价值在于已签名的驱动和内核原语:管理员可以加载 AMD 驱动并获得 ring-0 代码执行能力。这里的 LSTAR 到 SYSTEM 的链路是漏洞利用部分,而不是新发现的驱动。

我于 2026-08-17 向 AMD PSIRT 报告了此事。然而,他们竭尽全力避免承认这一缺口,甚至在我的 Gmail 上封禁了我,使我无法再用自己的地址给他们发送邮件。这只是开始;今后,我不会再直接或通过他们的其他渠道与他们分享我关于 AMD 产品的发现。我会继续在这里分享一切。敬请关注,继续黑客之旅!

下载工具