
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.
| 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+