
Scanner CVE-2025-55183
Un scanner de sécurité pour détecter la CVE-2025-55183 - la vulnérabilité de divulgation du code source des composants serveur React (RSC) de Next.js.
Ce scanner détecte la divulgation de code source dans les composants serveur React (RSC) de Next.js. Une requête HTTP malveillante envoyée à une fonction serveur vulnérable peut renvoyer de manière non sécurisée le code source de n'importe quelle fonction serveur lorsque l'argument est converti en chaîne.
pip install -r requirements.txt
Ou installez manuellement :
pip install requests urllib3 tqdm
# Scan a single URL
python3 scanner.py https://example.com
# Scan from a file with host list
python3 scanner.py hosts.txt
Créez un fichier texte avec un hôte par ligne. Le scanner extraira le nom d'hôte de la première colonne (prend en charge les entrées séparées par des tabulations ou des espaces) :
example.com 192.0.2.1 Cloudflare
subdomain.example.com 192.0.2.2 Cloudflare
https://app.example.com
Les lignes commençant par # sont traitées comme des commentaires et ignorées.
positional arguments:
input Target URL or file containing list of hosts
optional arguments:
-h, --help Show help message and exit
-t TIMEOUT, --timeout TIMEOUT
Request timeout in seconds (default: 10)
-o OUTPUT, --output OUTPUT
Output file for results
--format {text,json,csv}
Output format (default: text)
--threads THREADS Number of concurrent threads (default: 1)
--delay DELAY Delay between requests in seconds (default: 0.5)
--rate-limit RATE_LIMIT
Requests per second per host (0 to disable, default: 10.0)
--retries RETRIES Number of retries for failed requests (default: 3)
-v, --verbose Increase verbosity (-v, -vv, -vvv)
-q, --quiet Suppress non-essential output
# Scan with 10 concurrent threads
python3 scanner.py hosts.txt --threads 10
# Output results in JSON format
python3 scanner.py hosts.txt --format json -o results.json
# Output results in CSV format
python3 scanner.py hosts.txt --format csv -o results.csv
# Set delay between requests and rate limit
python3 scanner.py hosts.txt --delay 1.0 --rate-limit 5.0
# Enable verbose output for debugging
python3 scanner.py hosts.txt -vv
# Suppress non-essential output
python3 scanner.py hosts.txt --quiet -o results.json
Sortie texte lisible par l'homme avec le résumé de l'analyse et les résultats détaillés :
============================================================
SCAN SUMMARY
============================================================
Total hosts scanned: 5
Vulnerable hosts: 2
Safe hosts: 3
============================================================
[!] https://example.com - VULNERABLE
Found 3 leaked source code(s)
[+] https://example2.com - Not vulnerable
Sortie JSON structurée avec tous les détails de l'analyse :
{
"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": [...]
}
]
}
Valeurs séparées par des virgules pour une importation facile dans des feuilles de calcul :
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,
Le scanner effectue un processus en trois étapes :
/_next/static/chunks/$F1 à chaque ID d'action pour déclencher la divulgation du code source0 : aucun hôte vulnérable trouvé1 : un ou plusieurs hôtes vulnérables trouvésSi vous rencontrez des erreurs de connexion :
--timeout 30-vv pour voir les messages d'erreur détaillésSi les cibles bloquent les requêtes :
--delay 2.0--rate-limit 2.0--threads 1Si vous voyez des erreurs d'import :
pip install -r requirements.txt
Remarque : tqdm est facultatif - le scanner fonctionnera sans lui mais n'affichera pas de barres de progression.
Cet outil est fourni à des fins éducatives et de tests de sécurité autorisés uniquement.
Cet outil est conçu pour la recherche en sécurité et les tests d'intrusion autorisés. Toute utilisation non autorisée contre des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas la permission de tester est illégale et contraire à l'éthique. Les auteurs ne sont pas responsables de toute utilisation abusive de cet outil.