
CVE-2025-55183 Scanner
Uno scanner di sicurezza per rilevare la vulnerabilità CVE-2025-55183 - divulgazione del codice sorgente dei React Server Components (RSC) di Next.js.
Questo scanner rileva la divulgazione del codice sorgente nei React Server Components (RSC) di Next.js. Una richiesta HTTP malevola inviata a una Server Function vulnerabile può restituire in modo non sicuro il codice sorgente di qualsiasi Server Function quando l'argomento viene convertito in stringa.
pip install -r requirements.txt
Oppure installare manualmente:
pip install requests urllib3 tqdm
# Scansiona un singolo URL
python3 scanner.py https://example.com
# Scansiona da un file con elenco di host
python3 scanner.py hosts.txt
Crea un file di testo con un host per riga. Lo scanner estrarrà il nome host dalla prima colonna (supporta input separati da tabulazione o spazio):
example.com 192.0.2.1 Cloudflare
subdomain.example.com 192.0.2.2 Cloudflare
https://app.example.com
Le righe che iniziano con # vengono trattate come commenti e ignorate.
argomenti posizionali:
input URL di destinazione o file contenente l'elenco degli host
argomenti opzionali:
-h, --help Mostra il messaggio di aiuto ed esci
-t TIMEOUT, --timeout TIMEOUT
Timeout della richiesta in secondi (default: 10)
-o OUTPUT, --output OUTPUT
File di output per i risultati
--format {text,json,csv}
Formato di output (default: text)
--threads THREADS Numero di thread concorrenti (default: 1)
--delay DELAY Ritardo tra le richieste in secondi (default: 0.5)
--rate-limit RATE_LIMIT
Richieste al secondo per host (0 per disabilitare, default: 10.0)
--retries RETRIES Numero di tentativi per richieste fallite (default: 3)
-v, --verbose Aumenta la verbosità (-v, -vv, -vvv)
-q, --quiet Sopprime l'output non essenziale
# Scansiona con 10 thread concorrenti
python3 scanner.py hosts.txt --threads 10
# Output dei risultati in formato JSON
python3 scanner.py hosts.txt --format json -o results.json
# Output dei risultati in formato CSV
python3 scanner.py hosts.txt --format csv -o results.csv
# Imposta il ritardo tra le richieste e il limite di frequenza
python3 scanner.py hosts.txt --delay 1.0 --rate-limit 5.0
# Abilita l'output verbose per il debug
python3 scanner.py hosts.txt -vv
# Sopprime l'output non essenziale
python3 scanner.py hosts.txt --quiet -o results.json
Output di testo leggibile con riepilogo della scansione e risultati dettagliati:
============================================================
RIEPILOGO SCANSIONE
============================================================
Totale host scansionati: 5
Host vulnerabili: 2
Host sicuri: 3
============================================================
[!] https://example.com - VULNERABILE
Trovati 3 codici sorgente divulgati
[+] https://example2.com - Non vulnerabile
Output JSON strutturato con tutti i dettagli della scansione:
{
"summary": {
"total_hosts": 5,
"vulnerable_hosts": 2,
"safe_hosts": 3
},
"results": [
{
"url": "https://example.com",
"vulnerable": true,
"chunk_paths": ["/_next/static/chunks/..."],
"action_ids": ["abc123..."],
"leaked_sources": [...]
}
]
}
Valori separati da virgola per un facile import in fogli di calcolo:
URL,Vulnerable,Chunks Found,Action IDs Found,Leaked Sources Count,Error
https://example.com,Yes,5,3,2,
https://example2.com,No,0,0,0,
Lo scanner esegue un processo in tre fasi:
/_next/static/chunks/$F1 a ciascun Action ID per attivare la divulgazione del codice sorgente0: Nessun host vulnerabile trovato1: Uno o più host vulnerabili trovatiSe riscontri errori di connessione:
--timeout 30-vv per vedere i messaggi di errore dettagliatiSe i target bloccano le richieste:
--delay 2.0--rate-limit 2.0--threads 1Se vedi errori di import:
pip install -r requirements.txt
Nota: tqdm è opzionale - lo scanner funzionerà anche senza, ma non mostrerà le barre di progresso.
Questo strumento è fornito solo per scopi educativi e test di sicurezza autorizzati.
Questo strumento è progettato per la ricerca sulla sicurezza e i test di penetrazione autorizzati. L'uso non autorizzato contro sistemi che non possiedi o per i quali non hai il permesso di testare è illegale e non etico. Gli autori non sono responsabili per qualsiasi uso improprio di questo strumento.