Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

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

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

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2021-21551 — dbutil_2_3.sys 中的任意内核读/写,概念验证本地权限提升至 nt authority/system | Kitploit
工具/GitHubGitHub/mathisvickie/cve-2021-21551
权限提升漏洞分析漏洞利用二进制利用Archived
GitHubmathisvickie/cve-2021-21551

CVE-2021-21551

dbutil_2_3.sys 中的任意内核读/写,概念验证本地权限提升至 nt authority/system

查看仓库
5914464年前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2021-21551

通过启动系统命令来利用CVE-2021-21551进行本地权限提升(LPE)的简单PoC。

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-21551

在签名的戴尔Windows驱动程序(dbutil_2_3.sys)中发现了一个问题,可能导致整个本地系统被攻陷。该驱动程序的ioctl调度例程缺乏对用户提供的缓冲区的验证。

IOCTL

任何人都可以创建句柄并向这些ioctl代码发出ioctl请求,从而破坏Windows安全模型:

  • 0x9b0c1f40 - 任意物理内存读取
  • 0x9b0c1f44 - 任意物理内存写入
  • 0x9b0c1ec4 - 任意内核内存读取
  • 0x9b0c1ec8 - 任意内核内存写入
  • 0x9b0c1ecc - 对MmFreeContiguousMemorySpecifyCache调用的受控参数
  • 0x9b0c1ec0 - 对MmAllocateContiguousMemorySpecifyCache调用的受控参数
  • 0x9b0c1f00 & 0x9b0c1f8c & 0x9b0c1f88 & 0x9b0c1f84 & 0x9b0c1f80 - 访问某些端口

编译PoC

该PoC分别利用_0x9b0c1ec4_/0x9b0c1ec8 ioctl代码进行任意内核内存读取/写入。首先,它在内核中定位_PsInitialSystemProcess_以获取系统令牌,然后将该令牌写入当前进程的_EPROCESS_结构。在编译之前,请使用https://www.vergiliusproject.com/更新你的_EPROCESS_偏移量以避免蓝屏死机(BSOD)。

root@kitploit:~
DWORD EPROCESS_ActiveProcessLinks = 0x2e8;
DWORD EPROCESS_Token = 0x348;

使用Visual Studio编译(需要Windows头文件)。Ntdll SDK头文件:https://github.com/mathisvickie/segy-software/blob/main/external/ntdll.h

运行

在以下系统上测试通过:

  • Windows 8
  • Windows 10 2004
  • Windows 10 20H2

成功的利用将运行系统命令提示符(system cmd)。如果出现bugcheck PAGE_FAULT_IN_NONPAGED_AREA,则偏移量可能不正确。示例输出: 404

下载工具