
Ce script scanne une liste d'URLs pour détecter si elles utilisent **Next.js** et détermine si elles sont vulnérables à **CVE-2025-29927**. Il tente optionnellement l'exploitation à l'aide d'une wordlist.
Ce script analyse une liste d'URLs pour détecter si elles utilisent Next.js et détermine si elles sont vulnérables à CVE-2025-29927. Il tente optionnellement une exploitation à l'aide d'une wordlist.
# Cloner le dépôt
git clone https://github.com/ferpalma21/Automated-Next.js-Security-Scanner-for-CVE-2025-29927.git
cd Automated-Next.js-Security-Scanner-for-CVE-2025-29927.git
# Installer les dépendances
npm install
Exécutez le script avec différentes options :
node index.js -u "https://example.com" -v
node index.js -u "https://example.com"
node index.js -u "https://site1.com, https://site2.com"
node index.js -f urls.txt
node index.js -u "https://example.com" -o results.txt
node index.js -u "https://example.com" -v
node index.js -u "https://example.com" -a -w wordlist.txt
-v) : Journaux détaillés affichés dans la console.-v n'est pas défini, les résultats sont affichés au format JSON.-o) : Sauvegarde les vulnérabilités détectées dans un fichier.Analyzing: https://example.com
https://example.com is running Next.js version: 13.5.9.
Potentially vulnerable to CVE-2025-29927.
Mettez à niveau vers Next.js 14.2.25 ou 15.2.3 ou ultérieur. Si la mise à niveau n'est pas possible, bloquez l'en-tête x-middleware-subrequest au niveau du WAF ou du serveur. Versions corrigées : 15.2.3, 14.2.25, 13.5.9, 12.3.5
Ce projet est sous licence MIT.
| Option | Alias | Description |
|---|
-u | --urls | Liste d'URLs (séparées par des espaces/virgules) |
-f | --file | Fichier contenant des URLs (une par ligne) |
-c | --chrome | Chemin vers Chromium (défaut : /snap/bin/chromium) |
-o | --output | Fichier pour sauvegarder les résultats des sites vulnérables |
-v | --verbose | Active une sortie détaillée |
-r | --redirect | Suit les redirections (optionnel, peut mener à des faux positifs) |
-a | --attack | Tente une exploitation (à utiliser avec précaution) |
-w | --wordlist | Fichier wordlist pour l'exploitation |
-t | --headless | Exécute Puppeteer en mode headless |
-x | --headers | En cas d'échec d'exploitation, réessaie avec des en-têtes différents |