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/stealthmoud/react-server-cve-lab
Analyse des VulnérabilitésExploitationSécurité WebTests d'IntrusionApprentissage et ÉducationLabs et Pratique
GitHubstealthmoud/react-server-cve-lab

react-server-cve-lab

Laboratoire de recherche en sécurité pour CVE-2025-55183 et CVE-2025-55184 dans React Server Components

Voir le dépôt
53il y a 9 moisPas encore vérifié

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

Laboratoire de Sécurité des Composants Serveur React (CVE-2025-55183 & CVE-2025-55184)

License: MIT React Version CVE-2025-55183 CVE-2025-55184

Un environnement de test de sécurité complet pour les vulnérabilités CVE-2025-55183 (Exposition de code source) et CVE-2025-55184 (Déni de service) dans les Composants Serveur React.

⚠️ Avertissement

À USAGE UNIQUEMENT ÉDUCATIF ET POUR LA RECHERCHE EN SÉCURITÉ

Ce dépôt contient des applications volontairement vulnérables et des outils d'exploitation. Testez uniquement sur des systèmes qui vous appartiennent ou pour lesquels vous avez une autorisation écrite explicite. Les tests non autorisés sont illégaux et contraires à l'éthique.

📋 Table des matières

  • À propos des vulnérabilités
  • Démarrage rapide
  • Structure du dépôt
  • Application vulnérable
  • Utilisation du scanner
  • Documentation détaillée
  • Correction
  • Licence

🔍 À propos des vulnérabilités

Les deux vulnérabilités affectent les versions 19.0.0 à 19.2.2 des Composants Serveur React, divulguées le 11 décembre 2025.

CVE-2025-55183 : Exposition de code source (Sévérité moyenne)

PropriétéValeur
SévéritéMoyenne (CVSS 5.3)
TypeDivulgation d'informations
ImpactExposition du code source serveur
AuthentificationAucune requise

Les attaquants peuvent forcer les arguments des Actions Serveur à divulguer du code source exclusivement serveur en appelant .toString() sur des objets de fonction serveur. Cela expose :

  • La logique métier et les algorithmes
  • Les clés API ou secrets codés en dur
  • Les détails d'implémentation internes
  • Les requêtes de base de données et les informations sur le schéma

CVE-2025-55184 : Déni de service (Sévérité élevée)

PropriétéValeur
SévéritéÉlevée (CVSS 7.5)
TypeDéni de service
ImpactInterruption totale du service
AuthentificationAucune requise

Des charges utiles spécialement conçues créent une récursion infinie de promesses, provoquant le blocage indéfini du serveur Node.js. Cela entraîne :

  • Indisponibilité complète du service
  • Épuisement du CPU
  • Boucle d'événements bloquée
  • Redémarrage manuel nécessaire

Comparaison

AspectCVE-2025-55183CVE-2025-55184
SévéritéMoyenneÉlevée
TypeDivulgation d'informationsDéni de service
ImpactFuite de code sourceCrash du serveur
DétectionLa réponse contient du codeTimeout/blocage du serveur
RécupérationImmédiateNécessite un redémarrage

⚠️ Important : À propos de CVE-2025-55184 (DoS) dans cette démo

Pourquoi le DoS pourrait ne pas faire planter l'application de démo

TL;DR : L'application EST vulnérable (React 19.0.0), mais les protections modernes peuvent empêcher le crash réel dans cet environnement de démo.

La réalité

CVE-2025-55184 est une vulnérabilité RÉELLE et CRITIQUE affectant React 19.0.0-19.2.2 dans les environnements de production. Cependant, démontrer avec succès le crash DoS dans une démo locale peut être difficile en raison de :

1. Protection intégrée de Next.js

  • Next.js 15.x inclut des limites d'erreur qui interceptent et récupèrent de nombreux plantages
  • Les mécanismes automatiques de récupération d'erreur empêchent la récursion infinie
  • Le mode production a une gestion d'erreur différente du chemin de code vulnérable

2. Isolation Docker

  • La conteneurisation ajoute une isolation des processus
  • Les limites de ressources empêchent le blocage complet du système
  • Le système d'initialisation de Docker peut détecter et redémarrer les processus bloqués

3. Développement vs Production

  • Le chemin de code vulnérable exact nécessite des configurations de production spécifiques
  • Les environnements de développement/démo ont des mécanismes de sécurité supplémentaires
  • Les conditions de concurrence et le timing sont différents dans les conteneurs

Comment vérifier que la vulnérabilité EST présente

Même si l'exploit ne fait pas planter la démo, vous pouvez vérifier la vulnérabilité par :

Méthode 1 : Vérification de version (la plus fiable)

root@kitploit:~
cd vulnerable-app
npm list react react-dom

# Sortie :
[email protected]        ← VERSION VULNÉRABLE
[email protected]    ← VERSION VULNÉRABLE

Si vous voyez 19.0.0 à 19.2.2, l'application EST vulnérable.

Méthode 2 : Détection par scanner

root@kitploit:~
cd scanner
python scan.py http://localhost:3000

Le scanner vérifie :

  • ✅ Version React dans la plage vulnérable
  • ✅ Actions Serveur activées
  • ✅ En-têtes de réponse serveur appropriés
  • ✅ Modèles de points de terminaison exploitables

🚀 Démarrage rapide

Prérequis

  • Docker & Docker Compose
  • Python 3.7+
  • Git

1. Cloner le dépôt

root@kitploit:~
git clone https://github.com/StealthMoud/react-server-cve-lab.git
cd react-server-cve-lab

2. Démarrer l'application vulnérable

root@kitploit:~
# Démarrer l'application (vulnérable aux deux CVE)
docker-compose up --build -d

# Application disponible à : http://localhost:3000

3. Exécuter le scanner

root@kitploit:~
cd scanner

# Installer les dépendances
pip install -r requirements.txt

# Scanner les deux vulnérabilités
python scan.py http://localhost:3000

# Scanner uniquement CVE-2025-55183
python scan.py --cve 55183 http://localhost:3000

# Scanner uniquement CVE-2025-55184
python scan.py --cve 55184 http://localhost:3000

# Scanner plusieurs cibles
python scan.py --file targets.txt

📁 Structure du dépôt

root@kitploit:~
react-server-cve-lab/
├── README.md                          # Ce fichier
├── DOCUMENTATION.md                   # Documentation technique complète
├── LICENSE
├── .gitignore
├── docker-compose.yml
│
├── vulnerable-app/                    # Vulnérable aux DEUX CVE
│   ├── Dockerfile
│   ├── package.json
│   ├── next.config.js
│   └── app/
│       ├── layout.js
│       ├── page.js
│       └── actions.js                 # Actions serveur vulnérables
│
├── scanner/
│   ├── requirements.txt
│   ├── scan.py                        # Scanner pour les deux CVE
│   └── README.md
│
└── exploits/
    ├── exploit-55183.py               # PoC pour CVE-2025-55183
    ├── exploit-55184.py               # PoC pour CVE-2025-55184
    └── README.md

🎯 Application vulnérable

L'application est une application Next.js exécutant React 19.0.0 avec des Actions Serveur, vulnérable aux deux CVE.

Fonctionnalités

  • Actions Serveur : Plusieurs points de terminaison démontrant les deux vulnérabilités
  • Code réaliste : Simule des motifs réels avec des secrets
  • Tests faciles : Interface utilisateur simple pour les tests manuels
  • Basé sur Docker : Environnement isolé et reproductible

Démarrer l'application

root@kitploit:~
# Utiliser Docker Compose (recommandé)
docker-compose up --build -d

# Vérifier si elle tourne
curl http://localhost:3000

# Voir les logs
docker-compose logs -f

# Arrêter l'application
docker-compose down

Configuration manuelle (sans Docker)

root@kitploit:~
cd vulnerable-app
npm install
npm run build
npm start

🔎 Utilisation du scanner

Le scanner unifié détecte à la fois CVE-2025-55183 et CVE-2025-55184.

Utilisation de base

root@kitploit:~
cd scanner

# Scanner les deux CVE
python scan.py http://localhost:3000

# Scanner un CVE spécifique uniquement
python scan.py --cve 55183 http://localhost:3000
python scan.py --cve 55184 http://localhost:3000

Options avancées

root@kitploit:~
# Sortie verbeuse
python scan.py --verbose http://localhost:3000

# Timeout personnalisé
python scan.py --timeout 10 http://example.com

# Scanner plusieurs URLs depuis un fichier
python scan.py --file targets.txt

# Enregistrer les résultats en JSON
python scan.py --output results.json http://localhost:3000

# Désactiver la vérification SSL
python scan.py --no-verify https://self-signed.example.com

# Scanner tous les CVE avec sortie verbeuse et enregistrer les résultats
python scan.py --verbose --output scan-results.json http://localhost:3000

Exemple de sortie

root@kitploit:~
╔═══════════════════════════════════════════════════════════╗
║     Scanner de vulnérabilités des Composants Serveur React  ║
║         CVE-2025-55183 & CVE-2025-55184                  ║
╚═══════════════════════════════════════════════════════════╝

[*] Test de http://localhost:3000

[CVE-2025-55183] Exposition de code source
[!] VULNÉRABLE : Code source divulgué
    Fonctions exposées : 3
    Longueur du code : 1247 caractères
    Contient des secrets : ✓ (clés API trouvées)

[CVE-2025-55184] Déni de service
[!] VULNÉRABLE : Attaque DoS réussie
    Code d'état : 404
    Content-Type : text/plain
    Marqueurs trouvés : ✓

============================================================
RÉSUMÉ
============================================================
Total testé : 1
CVE-2025-55183 vulnérable : 1
CVE-2025-55184 vulnérable : 1
Les deux CVE vulnérables : 1
Non vulnérable : 0

📚 Documentation détaillée

Pour une analyse technique complète des deux vulnérabilités :

DOCUMENTATION.md - Documentation technique complète couvrant :

  • Analyse détaillée des vulnérabilités pour les deux CVE
  • Explications des causes racines
  • Techniques d'exploitation avec exemples
  • Évaluations d'impact
  • Stratégies de détection
  • Correction étape par étape
  • Meilleures pratiques de prévention
  • Exemples de code et PoC

🛡️ Correction

Actions immédiates requises

Les deux vulnérabilités sont corrigées dans les mêmes versions de correctif :

  1. Mettre à jour React vers une version patchée :

    root@kitploit:~
    npm install [email protected] [email protected]
    # ou
    npm install react@latest react-dom@latest
    
  2. Mettre à jour Next.js (si applicable) :

    root@kitploit:~
    npm install next@latest
    
  3. Vérifier le correctif :

    root@kitploit:~
    npm list react react-dom next
    python scanner/scan.py http://localhost:3000
    

Versions patchées

PaquetVersions vulnérablesVersions patchées
React19.0.0 - 19.2.219.0.3+, 19.1.4+, 19.2.3+
Next.js 15.1.x< 15.1.415.1.4+
Next.js 15.0.x< 15.0.415.0.4+
Next.js 14.x< 14.2.2414.2.24+

Vérification après correction

root@kitploit:~
# Exécuter le scanner pour confirmer les correctifs
cd scanner
python scan.py http://votre-app-patchee.com

# Sortie attendue :
# [+] CVE-2025-55183 : NON VULNÉRABLE
# [+] CVE-2025-55184 : NON VULNÉRABLE

🔒 Meilleures pratiques de sécurité

Prévenir CVE-2025-55183 (Exposition de code source)

  1. Validation des entrées : Validez toujours les entrées des Actions Serveur
  2. Ne jamais stocker de secrets dans le code : Utilisez des variables d'environnement
  3. Obfuscation du code : Envisagez l'obfuscation au moment de la construction pour la logique sensible
  4. Audits réguliers : Examinez les Actions Serveur pour les données sensibles

Prévenir CVE-2025-55184 (DoS)

  1. Limitation de débit : Implémentez des limites de taux de requêtes
  2. Timeouts : Définissez des timeouts appropriés pour toutes les opérations asynchrones
  3. Vérifications de santé : Implémentez une surveillance de santé robuste
  4. Disjoncteurs : Empêchez les pannes en cascade

Recommandations générales

  • Maintenez React et Next.js à jour
  • Abonnez-vous aux avis de sécurité
  • Implémentez un pare-feu d'application web (WAF)
  • Analyse de sécurité régulière dans CI/CD
  • Plan de réponse aux incidents pour la divulgation et le DoS

🤝 Contribution

Les contributions sont les bienvenues ! Domaines d'amélioration :

  • Cas de test supplémentaires
  • Méthodes de détection améliorées
  • Meilleurs exemples d'exploitation
  • Documentation enrichie

N'hésitez pas à soumettre une Pull Request.

📄 Licence

Ce projet est sous licence MIT - voir le fichier LICENCE pour plus de détails.

🔗 Références

Avis officiels

  • Blog de sécurité React
  • Bulletin de sécurité Vercel

Détails CVE

  • CVE-2025-55183 (NVD)
  • CVE-2025-55184 (NVD)

Ressources supplémentaires

  • CWE-502 : Désérialisation de données non fiables
  • CWE-200 : Exposition d'informations
  • Documentation des Composants Serveur React

⭐ Soutien

Si vous trouvez ce dépôt utile pour votre recherche en sécurité, veuillez envisager de lui donner une étoile !

📧 Contact

  • Problèmes : Problèmes GitHub
  • Sécurité : Veuillez signaler les vulnérabilités de manière responsable

Télécharger l’outil