
Scanner automatisé pour la RCE CVE-2025-55182 dans Next.js avec 8 techniques de contournement WAF, exécution de commandes personnalisées et mode de détection réservé aux tests pour les tests d'intrusion autorisés.
CVE-2025-55182 Scanner Avancé
Outil de test d'intrusion avancé pour détecter et exploiter la vulnérabilité CVE-2025-55182 dans les applications Next.js
📋 Table des matières Aperçu
Fonctionnalités
Installation
Utilisation
Exemples
Techniques de contournement
Détails techniques
Avertissement
Contribution
Licence
🔍 Aperçu CVE-2025-55182 est une vulnérabilité critique d'exécution de code à distance (RCE) affectant les applications Next.js via les composants serveur React. Ce scanner offre un moyen automatisé de détecter et d'exploiter cette vulnérabilité avec diverses techniques de contournement WAF.
Score CVSS : 9.8 (Critique)
✨ Fonctionnalités Variantes de charge utile multiples : différents schémas d'exploitation
Techniques de contournement WAF : 8 méthodes de contournement différentes
Exécution de commandes personnalisées : exécuter des commandes système arbitraires
Test de vulnérabilité : mode test uniquement pour une détection sécurisée
Support proxy : acheminer le trafic via un proxy pour le débogage
Contournement SSL : option pour ignorer la vérification du certificat SSL
Mécanisme de réessai : réessai automatique en cas d'échec
Sortie colorée : interface console facile à lire
🚀 Installation Prérequis Python 3.6 ou supérieur
gestionnaire de paquets pip
pip install -r requirements.txt
chmod +x scanner.py Installation Docker bash
docker build -t cve-2025-55182-scanner .
docker run --rm cve-2025-55182-scanner -h 📖 Utilisation Utilisation de base bash
python scanner.py -h
python scanner.py -d http://target.com --test-only
python scanner.py -d http://target.com -c "whoami" Options de ligne de commande Option Description Par défaut -d, --domain URL cible http://localhost:3000 -c, --command Commande à exécuter id -t, --technique Technique de contournement (1-8) 1 -p, --proxy Serveur proxy None -k, --insecure Ignorer la vérification SSL False --test-only Tester uniquement la vulnérabilité False -h, --help Afficher le message d'aide N/A 📚 Exemples Exploitation de base bash
python scanner.py -d http://vulnapp.com --test-only
python scanner.py -d http://vulnapp.com -c "id"
python scanner.py -d https://target.com -c "ls -la" -k
python scanner.py -d http://localhost:3000 -c "cat /etc/passwd" Exemples de contournement WAF bash
python scanner.py -d http://target.com -c "uname -a" -t 2
python scanner.py -d https://target.com -c "whoami" -t 3 -k
python scanner.py -d http://target.com -c "pwd" -t 4 -p http://127.0.0.1:8080
for i in {1..8}; do echo "Trying technique $i" python scanner.py -d http://target.com -c "hostname" -t $i echo "" done Utilisation avancée bash
for target in $(cat targets.txt); do echo "Testing $target" python scanner.py -d $target --test-only done
python scanner.py -d http://target.com -c "ifconfig" > output.txt
python scanner.py -d https://target.com -c "env" -p http://127.0.0.1:8080 -k 🛡️ Techniques de contournement Le scanner inclut 8 techniques de contournement WAF différentes :
Charge utile par défaut : schéma d'exploitation original
Encodage Base64 : encoder les commandes en Base64
Encodage Unicode : utiliser l'encodage de caractères Unicode
Manipulation de casse : variations de casse aléatoires
Double encodage : double encodage URL
Octets nuls : injection d'octets nuls
En-têtes mixtes : en-têtes HTTP variés
Délais aléatoires : ajouter des intervalles de pause aléatoires
Chaque technique peut être sélectionnée avec le drapeau -t.
🔧 Détails techniques Contexte de la vulnérabilité CVE-2025-55182 est une vulnérabilité de pollution de prototype dans Next.js qui conduit à une exécution de code à distance via les composants serveur React. La vulnérabilité permet aux attaquants d'exécuter des commandes arbitraires sur le serveur.
Structure de la charge utile L'outil utilise une requête multipart/form-data spécialement conçue avec une pollution de prototype pour atteindre une RCE :
Pollution de prototype : pollue la chaîne de prototypes de Promise
Injection de commande : injecte l'exécution de child_process de Node.js
Extraction de résultats : extrait les résultats via les en-têtes de redirection
Méthode de détection Le scanner envoie des requêtes spécialement conçues et recherche :
les en-têtes X-Action-Redirect contenant la sortie de commande
des schémas de réponse spécifiques indiquant une exploitation réussie
des messages d'erreur suggérant la présence de la vulnérabilité
⚠️ Avertissement IMPORTANT : UTILISATION LÉGALE ET ÉTHIQUE UNIQUEMENT
Cet outil est fourni pour :
Recherche et éducation en sécurité
Tests d'intrusion autorisés
Évaluation de vulnérabilité avec autorisation appropriée
Fins de sécurité défensive
N'UTILISEZ PAS CET OUTIL POUR :
Test non autorisé de systèmes
Activités illégales
Fins malveillantes
Violation des conditions d'utilisation
En utilisant cet outil, vous acceptez :
L'utiliser uniquement sur des systèmes que vous possédez ou pour lesquels vous avez une autorisation explicite de test
Vous conformer à toutes les lois et réglementations applicables
Accepter l'entière responsabilité de vos actions
Ne pas tenir l'auteur responsable de toute mauvaise utilisation
🤝 Contribution Les contributions sont les bienvenues ! Voici comment vous pouvez aider :
Signaler des problèmes Vérifier si le problème existe déjà
Fournir des étapes de reproduction détaillées
Inclure les messages d'erreur et les journaux
Spécifier les détails de votre environnement
Contributions de code Forker le dépôt
Créer une branche de fonctionnalité
Rédiger des messages de commit clairs
Ajouter des tests si applicable
Soumettre une pull request
Demandes de fonctionnalités Suggérer de nouvelles fonctionnalités via les issues GitHub avec le label 'enhancement'.
📄 Licence Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.
Licence MIT
Copyright (c) 2025
Par la présente, une permission est accordée, gratuitement, à toute personne obtenant une copie de ce logiciel et des fichiers de documentation associés (le « Logiciel »), de traiter le Logiciel sans restriction, y compris, sans limitation, les droits d'utilisation, de copie, de modification, de fusion, de publication, de distribution, de sous-licence et/ou de vente de copies du Logiciel, et de permettre aux personnes à qui le Logiciel est fourni de le faire, sous réserve des conditions suivantes :
L'avis de copyright ci-dessus et cet avis d'autorisation doivent être inclus dans toutes les copies ou parties substantielles du Logiciel.
LE LOGICIEL EST FOURNI « EN L'ÉTAT », SANS GARANTIE D'AUCUNE SORTE, EXPRESSE OU IMPLICITE, Y COMPRIS, MAIS SANS S'Y LIMITER, LES GARANTIES DE QUALITÉ MARCHANDE, D'ADÉQUATION À UN USAGE PARTICULIER ET D'ABSENCE DE CONTREFAÇON. EN AUCUN CAS LES AUTEURS OU TITULAIRES DU COPYRIGHT NE POURRONT ÊTRE TENUS RESPONSABLES DE TOUTE RÉCLAMATION, DOMMAGES OU AUTRE RESPONSABILITÉ, QUE CE SOIT DANS LE CADRE D'UNE ACTION CONTRACTUELLE, DÉLICTUELLE OU AUTRE, DÉCOULANT DE, OU EN RELATION AVEC LE LOGICIEL OU SON UTILISATION, OU D'AUTRES INTERACTIONS AVEC LE LOGICIEL.
🔗 Références Entrée officielle CVE-2025-55182
Modèle Nuclei ProjectDiscovery
Avis de sécurité Next.js
Documentation des composants serveur React
⭐ Historique d'étoiles Si vous trouvez cet outil utile, veuillez envisager de lui donner une étoile sur GitHub !
Rappelez-vous : Un grand pouvoir implique de grandes responsabilités. Utilisez cet outil de manière éthique et légale.