
Analyse technique détaillée de CVE-2025-55182 (React2Shell), une vulnérabilité RCE critique dans React Server Components, incluant les paquets concernés, les mécanismes d'exploitation et les recommandations de correctifs.
CVE-2025-55182 (« React2Shell ») est une vulnérabilité critique d'exécution de code à distance (RCE) dans React Server Components (RSC) — plus précisément dans la logique de désérialisation du protocole React Flight.
Le moteur serveur de React analyse incorrectement les données provenant du navigateur.
Un attaquant peut envoyer une requête HTTP spécialement conçue à votre serveur.
Cette requête amène le runtime serveur de React à exécuter du JavaScript arbitraire côté serveur.
Cela permet aux attaquants de :
create-next-appSi notre site utilise React 19 OU Next.js avec l'App Router, nous devons considérer que nous sommes vulnérables jusqu'à ce que le correctif soit appliqué.
Une liste complète et vérifiée des packages et versions affectés :
| Package | Versions vulnérables | Versions corrigées |
|---|---|---|
react-server-dom-webpack | 19.0.0, 19.1.0, 19.1.1, 19.2.0 | 19.0.1, 19.1.2, 19.2.1 |
react-server-dom-parcel | identiques à ci-dessus | identiques à ci-dessus |
react-server-dom-turbopack | identiques à ci-dessus | identiques à ci-dessus |
Ces packages sont liés à React Server Components (RSC) — la cause racine.
Ces frameworks utilisent RSC en interne, ils ont donc hérité de la vulnérabilité :
| Framework / Outil | Affecté ? | Remarques |
|---|---|---|
| Next.js (App Router) | Oui | Le plus gravement impacté. Vulnérabilité suivie sous CVE-2025-66478 (désormais fusionnée dans CVE-2025-55182). |
| Vite RSC Plugin | Oui | Toute installation utilisant React Server Components. |
| Parcel RSC Plugin | Oui | Même raison. |
| React Router RSC Preview | Oui | Intègre la logique serveur RSC. |
| RedwoodJS RSC (RedwoodSDK) | Oui | Utilise le runtime RSC. |
| Waku | Oui | Runtime expérimental basé sur RSC. |
| Tout framework empaquetant le serveur RSC de React 19 | Oui | Doit consulter ses avis de sécurité. |
Directives de sécurité officielles et complètes pour rester en sécurité.
Mettez à jour vers les versions corrigées :
"react-server-dom-webpack": "19.0.1" or "19.1.2" or "19.2.1"
"react-server-dom-parcel": "same"
"react-server-dom-turbopack": "same"
Exécutez:
npm install react-server-dom-webpack@latest react-server-dom-parcel@latest react-server-dom-turbopack@latest
Mettez à jour vers les versions corrigées de Next.js :
| Version majeure | Version sécurisée |
|---|---|
| 14.x (stable) | Dernière version de sécurité 14.x |
| 15.x | 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7 |
| 16.x | 16.0.7 |
Exécutez:
npm install next@latest
Solution alternative (correctif temporaire et moins recommandé par la documentation officielle)Ces mesures ne corrigent pas entièrement le problème — mais réduisent l'exposition pendant une courte période :
Bloquez ou limitez le débit des requêtes POST multipart/form-data vers :
/app//actionsLes attaquants s'appuient sur des fragments multipart malformés pour déclencher l'exploit.