Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Outils/GitHubGitHub/fatguru/cve-2025-55182-scanner
Scanners de VulnérabilitésExploitationExploitation d'Applications WebContournement de WAFSécurité WebTests d'IntrusionRed Teaming
GitHubfatguru/cve-2025-55182-scanner

CVE-2025-55182-scanner

Un scanner de surface non intrusif pour CVE-2025-55182 (React Server Components RCE). Détecte les points de terminaison RSC exposés dans les applications React 19 et Next.js.

Voir le dépôt
112173il y a 9 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Scanner de surface d'exposition des composants serveur React

(CVE-2025-55182)

Un détecteur de surface spécialisé et non intrusif pour CVE-2025-55182 (RCE des composants serveur React).


⚠️ Contexte technique critique

Lisez ceci avant d'analyser :

Bien que CVE-2025-55182 soit une vulnérabilité RCE critique (CVSS 10.0), l'exploitation réelle dans les environnements de production Next.js est conditionnelle.

  1. La barrière de la liste blanche : Next.js utilise un serverManifest pour autoriser les modules autorisés. Les tentatives directes de charger des modules dangereux (comme child_process) via RSC échouent souvent car ils ne figurent pas dans ce manifeste.
  2. La chaîne d'attaque : Pour parvenir à une RCE sur une cible durcie, les attaquants doivent souvent enchaîner cette vulnérabilité avec une primitive de pollution de prototype pour écraser le serverManifest en mémoire et contourner la liste blanche.
  3. Minification Webpack : Dans les builds de production, les identifiants de modules sont minifiés (par exemple 742 au lieu de "vm"). Les exploits rigides qui devinent les noms échoueront (faux négatifs).

Cet outil est un détecteur de surface. Il identifie si le protocole RSC est exposé et actif. Trouver un point d'accès exposé est l'étape préalable pour identifier la surface d'attaque où une chaîne de pollution de prototype pourrait être tentée.


🛡️ Pourquoi utiliser ce détecteur de surface ?

  • La plupart des preuves de concept publiques et des scanners génèrent des faux négatifs dans les environnements de production parce qu'ils tombent dans quatre pièges courants :

  • Rigidité des exploits : Ils tentent d'exécuter des gadgets spécifiques (comme vm ou child_process) qui sont bloqués par les listes blanches, ou reposent sur des ID codés en dur (par exemple "id":"vm") qui échouent face aux builds Webpack minifiés.

  • Redirections racine : Frapper POST / sur Next.js déclenche souvent une redirection 307/308 (par exemple vers /login), ce qui entraîne la perte du corps POST ou sa conversion en GET avant que le serveur ne le traite.

  • Inadéquation du transport : De nombreux scanners envoient les charges utiles en text/plain ou en JSON brut. Les actions serveur strictes de Next.js requièrent souvent une encapsulation multipart/form-data. Si le format est erroné, le serveur retourne 404/200 sans jamais déclencher l'analyseur vulnérable.

  • Cécité au WAF : Les outils standards voient un 403 Interdit et abandonnent. Ils ne parviennent pas à distinguer entre un blocage IP global et un filtre de règle spécifique, manquant ainsi des opportunités de contourner le WAF en utilisant des techniques d'encodage ou de rembourrage.

Ce scanner résout tous les trois défis :

✅ Sondage intelligent de chemins : Sonde automatiquement des chemins aléatoires inexistants (par exemple /x7z9q2) pour contourner les redirections racine (307/308) et forcer le routeur d'application Next.js à traiter le contexte de la requête.

✅ Transport strict (Multipart) : Utilise l'encapsulation multipart/form-data au lieu du texte brut. Cela résout les faux négatifs sur les points d'accès d'actions serveur strictes qui retournent autrement des 404.

✅ Analyse différentielle du WAF : Distingue entre les blocages globaux ([BLOCKED]) et le filtrage par règle spécifique ([FILTERED]). Si le backend autorise le protocole mais bloque la charge utile, le scanner l'identifie comme une cible de grande valeur.

✅ Mode de contournement automatique : Inclut un moteur optionnel --bypass qui tente automatiquement des techniques d'évasion (échappements Unicode, mutation d'espaces, rembourrage inutile) contre les cibles [FILTERED].

✅ Détection durcie : Capture les « crashes silencieux » ([SUSPICIOUS]) sur les serveurs d'entreprise qui suppriment les en-têtes X-Powered-By, et identifie l'empreinte de redirection 303 See Other d'Assetnote.

✅ Empreinte active : Utilise une charge utile spécialisée (["$1:aa:aa"]) pour déclencher l'erreur unique « Digest » de React 19 RSC, confirmant que l'analyseur est actif même sans une RCE complète.


🚀 Installation

  1. Clonez le dépôt :

    root@kitploit:~
    git clone https://github.com/fatguru/CVE-2025-55182-scanner.git
    cd CVE-2025-55182-scanner
    
  2. Installez les dépendances (recommandé dans un environnement virtuel) :

    root@kitploit:~
    pip install -r requirements.txt
    

💻 Utilisation

Analyse de base

Vérifiez une URL unique. Remarque : assurez-vous de pointer vers le bon chemin d'application (par exemple /dashboard, /login), pas seulement le domaine racine, car les points d'accès du routeur d'application Next.js sont spécifiques au chemin.

root@kitploit:~
python3 cve_2025_55182_scanner.py -u http://localhost:3000/dashboard

Analyse groupée

Analysez une liste d'URLs à partir d'un fichier (une URL par ligne). C'est la stratégie recommandée pour éviter d'omettre des chemins spécifiques.

root@kitploit:~
python3 cve_2025_55182_scanner.py -l targets.txt -o results.csv

Mode non sécurisé (Nouveau)

Ignore les erreurs de certificat SSL/TLS (utile pour l'analyse basée sur IP, les laboratoires locaux ou les certificats auto-signés).

root@kitploit:~
python3 cve_2025_55182_scanner.py -u [https://192.168.1.50](https://192.168.1.50) -k

Analyse avec en-têtes personnalisés (Contournement WAF / Authentification)

Nouveau dans v2.1 : utilisez le flag --header pour transmettre des cookies de session ou des jetons si l'application est derrière une authentification ou un WAF qui nécessite des en-têtes spécifiques.

root@kitploit:~
python3 cve_2025_55182_scanner.py -u https://target.com --header "Cookie: session=123" --header "Authorization: Bearer xyz"

Options

FlagDescription
-u, --urlURL cible unique (par exemple http://target.com/dashboard).
-l, --listFichier contenant une liste d'URLs à analyser (une par ligne).
--bypass(Nouveau v2.5) Active le mode d'évasion WAF. Tente automatiquement des techniques de mutation (Unicode, Rembourrage, Espaces) si une cible est détectée comme [FILTERED].
--headerAjoute des en-têtes personnalisés (par exemple Cookie: session=xyz, Authorization: Bearer...). Peut être utilisé plusieurs fois.
-o, --outputSauvegarde les résultats dans un fichier texte.
-k, --insecureDésactive la vérification du certificat TLS (Supprime les avertissements SSL).
-t, --threadsNombre de threads concurrents pour l'analyse groupée (défaut : 10).
--timeoutDélai d'attente de la requête en secondes (défaut : 10s pour accommoder les charges utiles multipart).
--verboseActive le mode débogage. Affiche les étapes de sondage détaillées, l'état de blocage WAF et les tentatives de contournement.

📊 Interprétation des résultats (v2.5)

[EXPOSED] | 🔴 (Rouge) | Vulnérable

Le serveur a traité la charge utile et a renvoyé une erreur de digest React 19 OU une redirection d'action (303). Haute confiance de surface exposée.

[BYPASSED] | 🟠 (Orange) | WAF contourné

Succès ! Le scanner a initialement détecté un filtre, mais l'a contourné avec succès en utilisant des techniques de mutation (par exemple Rembourrage/Unicode) pour déclencher la vulnérabilité.

[SUSPICIOUS] | 🟡 (Jaune) | Avertissement

Le serveur a planté (500) lors de l'analyse de la charge utile. Indique une logique de sérialisation exposée, même sur des cibles durcies qui suppriment les en-têtes X-Powered-By.

[FILTERED] | 🔵 (Bleu) | Règle WAF détectée

Le serveur accepte le trafic RSC (charge utile bénigne passée), mais une règle WAF spécifique a bloqué la charge utile d'exploitation. La cible est vivante derrière le WAF. Utilisez --bypass pour tenter de contourner.

[INFO] | 🔵 (Cyan) | Protocole détecté

Le serveur parle RSC (text/x-component) mais a géré la charge utile avec élégance. Probablement corrigé ou comportement standard.

[BLOCKED] | 🟣 (Magenta) | Blocage WAF global

Tout a été bloqué (403/406), y compris la poignée de main bénigne. Le WAF bloque entièrement le protocole ou votre IP.

[SAFE] | 🟢 (Vert) | Propre

Le serveur a renvoyé 404/200 mais a ignoré les en-têtes RSC / corps multipart sur tous les chemins sondés.

🛠️ Modèle Nuclei (https://github.com/projectdiscovery/nuclei)

Un modèle Nuclei basé sur cette logique de détection est inclus dans ce dépôt : cve-2025-55182-detection.yaml.

root@kitploit:~
nuclei -t cve-2025-55182-detection.yaml -l targets.txt

v2.5 Journal des modifications (Mise à jour majeure)

  • Mode de contournement WAF : Nouveau flag --bypass qui automatise les techniques d'évasion (Espaces, Unicode, Grand rembourrage) lorsqu'une cible est détectée comme [FILTERED].
  • Support multipart : Le transport de la charge utile est passé à multipart/form-data pour corriger les faux négatifs sur les cibles retournant des 404 aux charges utiles textuelles.
  • Analyse intelligente :
    • [FILTERED] : Identifie quand un WAF bloque spécifiquement la charge utile d'exploitation mais autorise le trafic RSC (cibles de grande valeur).
    • [SUSPICIOUS] : Désormais capture les crashes sur les serveurs durcis qui cachent les en-têtes X-Powered-By.
    • [EXPOSED] : Ajout de la détection des redirections 303 See Other utilisées par certaines implémentations vulnérables.

v2.2 Journal des modifications (Mise à jour critique)

  • Correction de faux négatif (Multipart) : Passage du transport de la charge utile de text/plain à multipart/form-data. Cela résout les faux négatifs sur les cibles qui imposent strictement les données de formulaire pour les actions serveur et retournaient auparavant des 404.
  • Détection de redirection : Logique mise à jour pour capturer les en-têtes HTTP 303 See Other et x-action-redirect, qui sont des indicateurs forts du traitement RSC souvent cachés lorsque les scanners suivent automatiquement les redirections.

v2.1 Mises à jour

  • Correction de faux positif : Logique mise à jour pour séparer 'Info' (Protocole RSC détecté, probablement corrigé) de 'Suspicious' (Crash serveur/500), résolvant les problèmes avec les versions corrigées de React 19.x.
  • Détection WAF : Le scanner identifie et signale désormais explicitement le statut [BLOCKED] (HTTP 403/406) lorsque les WAF interceptent la signature d'attaque.
  • Stratégie d'en-tête : Ajout de l'argument optionnel --header pour l'identification personnalisée du trafic, l'autorisation ou la mise en liste blanche WAF.
  • Améliorations UX : Bannière ASCII corrigée, ajout de la suppression des avertissements SSL (-k) et gestion robuste des couleurs.

⚖️ Avertissement

Cet outil est conçu pour aider les chercheurs en sécurité et les administrateurs à identifier les surfaces d'attaque exposées dans leurs propres systèmes. L'auteur n'est pas responsable de toute utilisation abusive de cet outil. Ne l'utilisez pas contre des systèmes pour lesquels vous n'avez pas d'autorisation explicite de tester.

Références :

root@kitploit:~
- https://nvd.nist.gov/vuln/detail/CVE-2025-55182
- https://www.wiz.io/blog/critical-vulnerability-in-react-cve-2025-55182
Télécharger l’outil