
Bei CVE-2021-34527 handelt es sich um eine kritische Schwachstelle, die Remote-Codeausführung und lokale Rechteausweitung ermöglicht und als „PrintNightmare“ bekannt ist.
CVE-2021-34527 ist eine kritische Schwachstelle für Remotecodeausführung und lokale Rechteausweitung, die als "PrintNightmare" bekannt ist.
Proof-of-Concept-Exploits wurden für die Remotecodeausführung (Python, C++) und eine C#-Version für die lokale Rechteausweitung veröffentlicht. Ich hatte keine native Implementierung in reinem PowerShell gesehen und wollte versuchen, den Exploit zu verfeinern und neu zu gestalten.
Dieses PowerShell-Skript führt eine lokale Rechteausweitung (LPE) mit der PrintNightmare-Angriffstechnik durch.
Dies wurde unter Windows Server 2016 und Windows Server 2019 getestet.
Fügt standardmäßig einen neuen Benutzer zur lokalen Administratorengruppe hinzu:
Invoke-Nightmare # add user `adm1n`/`P@ssw0rd` in the local admin group by default
Invoke-Nightmare -DriverName "Xerox" -NewUser "K1LL9" -NewPassword "SuperSecure1o1"
Geben Sie eine benutzerdefinierte DLL-Nutzlast an, um alles andere zu tun, was Sie möchten.
Import-Module .\cve-2021-34527.ps1
Invoke-Nightmare -DLL "C:\absolute\path\to\your\bindshell.dll"
Die LPE-Technik benötigt keine Remote-RPC oder SMB, da sie nur mit den Funktionen des Print Spoolers arbeitet. Dieses Skript enthält eine Base64-kodierte GZIP-komprimierte Nutzlast für eine benutzerdefinierte DLL, die entsprechend Ihren Argumenten gepatcht wird, um einfach einen neuen Benutzer zur lokalen Administratorengruppe hinzuzufügen. Dieses Skript enthält Methoden aus PowerSploit/PowerUp, um die Win32-APIs reflektiv aufzurufen. Diese Methode durchläuft nicht alle Druckertreiber, um den passenden DLL-Pfad zu finden – sie nimmt einfach den ersten Treiber und ermittelt den passenden Pfad.