
Scanner zur Erkennung von CVE-2025-55182 & CVE-2025-66478 auf gezielten Webdiensten.
Ein sicherer, nicht-invasiver Scanner zur Erkennung von React Server Components (RSC) und Next.js-Schwachstellen mit Remote-Codeausführung (CVE-2025-55182 & CVE-2025-66478).
Dieser Scanner hilft Organisationen zu erkennen, ob ihre Webdienste für die React2Shell-Schwachstelle anfällig sind, die Anwendungen betrifft, die React Server Components und Next.js verwenden. Die Schwachstelle ermöglicht es Angreifern, durch speziell präparierte Multipart-Formulardaten eine Remote-Codeausführung zu erreichen.
Wichtig: Dieser Scanner verwendet ausschließlich sichere Seitenkanal-Erkennungsmethoden und führt keinen Code auf Zielsystemen aus.
Sichere Erkennungsmethode
Flexible Scan-Optionen
/_next, /api)Ausgabeoptionen
pip install -r requirements.txt
Oder manuell installieren:
pip install requests tqdm urllib3
Einzelne URL scannen:
python scanner.py -u https://example.com
Mehrere Hosts aus einer Datei scannen:
python scanner.py -l hosts.txt
Scan mit benutzerdefinierten Pfaden:
python scanner.py -u https://example.com --path /_next --path /api
Scan mit Pfaden aus einer Datei:
python scanner.py -u https://example.com --path-file paths.txt
Benutzerdefinierte Header:
python scanner.py -u https://example.com -H "Authorization: Bearer token" -H "X-Custom: value"
Multithreaded Scannen:
python scanner.py -l hosts.txt -t 20
Ergebnisse als JSON exportieren:
python scanner.py -l hosts.txt -o results.json
Alle Ergebnisse exportieren (einschließlich nicht verwundbarer):
python scanner.py -l hosts.txt -o results.json --all-results
Ausführlicher Modus (Details für alle Hosts anzeigen):
python scanner.py -l hosts.txt -v
Ruhiger Modus (nur verwundbare Hosts anzeigen):
python scanner.py -l hosts.txt -q
Farben deaktivieren:
python scanner.py -l hosts.txt --no-color
Ein Host pro Zeile. Zeilen, die mit # beginnen, werden ignoriert.
https://example.com
http://test.example.org
another-site.com
# This is a comment
Ein Pfad pro Zeile. Pfade werden automatisch mit / präfixiert, falls nicht vorhanden.
/_next
/api
/actions
# Comment lines are ignored
Der Scanner verwendet eine nicht-invasive Erkennungsmethode, die:
JavaScript-Fehlermeldungen
SyntaxError - Weist auf fehlerhaftes JSON-Parsing der Formulardaten hinUnexpected token - Deutet auf eine verwundbare RSC-Deserialisierung hinReferenceError / TypeError - Offenbart unsicheren Zugriff auf ObjekteigenschaftenRSC-spezifische Fehlerantworten
text/x-componentVary: RSC, Next-Router-State-Tree){"digest":"..."})$@, Fehlerobjekte)Der Scanner erkennt sowohl ausführliche Fehlermeldungen (ältere Versionen) als auch strukturierte RSC-Fehlerantworten (neuere Versionen) und gewährleistet so eine umfassende Abdeckung verschiedener Next.js-Implementierungen.
Wichtig: Diese Methode führt KEINEN Code auf dem Zielsystem aus. Sie erkennt lediglich anhand der Fehlerantworten, ob das System verwundbar ist.
python scanner.py -u https://myapp.com
# Create hosts file with all your domains
python scanner.py -l organization-hosts.txt -t 20 -o scan-results.json
# Create paths.txt with common Next.js endpoints
python scanner.py -l hosts.txt --path-file paths.txt -o results.json
python scanner.py -u https://myapp.com -H "Cookie: session=abc123" -H "Authorization: Bearer token"
Der Scanner markiert einen Host als VERWUNDBAR, wenn er Folgendes erkennt:
Wenn der Scanner eine Schwachstelle erkennt, bedeutet das:
0: Keine Schwachstellen gefunden1: Eine oder mehrere Schwachstellen erkannt-t) an, um Ziele nicht zu überlastenWenn Ihre Anwendung als verwundbar eingestuft wird:
Sofortmaßnahmen:
Langfristige Sicherheit:
Referenzen:
Dieses Tool ist ausschließlich für autorisierte Sicherheitstests bestimmt. Unbefugter Zugriff auf Computersysteme ist illegal. Die Autoren sind nicht verantwortlich für Missbrauch oder Schäden, die durch dieses Programm verursacht werden.
| Option | Beschreibung |
|---|
-u, --url URL | Einzelne zu scannende URL |
-l, --list FILE | Datei mit einer Liste der zu scannenden Hosts |
-t, --threads N | Anzahl gleichzeitiger Threads (Standard: 10) |
--timeout N | Anfragetimeout in Sekunden (Standard: 10) |
-o, --output FILE | Ausgabedatei für Ergebnisse (JSON-Format) |
--all-results | Alle Ergebnisse speichern, nicht nur verwundbare Hosts |
-k, --insecure | SSL-Zertifikatsprüfung deaktivieren |
-H, --header HEADER | Benutzerdefinierter Header (mehrfach verwendbar) |
-v, --verbose | Ausführliche Ausgabe (Details für alle Hosts anzeigen) |
-q, --quiet | Ruhiger Modus (nur verwundbare Hosts anzeigen) |
--no-color | Farbige Ausgabe deaktivieren |
--path PATH | Benutzerdefinierter Pfad zum Testen (mehrfach verwendbar) |
--path-file FILE | Datei mit einer Liste der zu testenden Pfade |