React2shell : faille critique dans React / Next.js permet l’exécution de code à distance

Une vulnérabilité « Critique » (CVE-2025-55182 pour React, CVE-2025-66478 pour Next.js) a été découverte le 3 décembre 2025 dans React Server Components (RSC). Cette faille surnommée « React2shell » permet à un attaquant non authentifié d’exécuter du code arbitraire sur le serveur via une simple requête HTTP malformée.

En quoi consiste la faille

  • Le problème vient d’une désérialisation non sécurisée des “payloads” envoyés aux endpoints de type Server Function. L’implémentation du protocole “React Flight” accepte des données contrôlées par l’utilisateur sans validation suffisante.
  • Même si votre application n’utilise pas explicitement d’endpoints “Server Function”, si elle supporte les React Server Components (RSC), elle peut être vulnérable.
  • Les versions affectées incluent :
    • Pour React : react-server-dom-webpack, react-server-dom-parcel, react-server-dom-turbopack en versions 19.0.0, 19.1.0, 19.1.1, 19.2.0
    • Pour Next.js (App Router) : versions ≥ 14.3.0-canary.77, toutes les branches 15.x et 16.x.

Comment corriger ou atténuer le risque immédiatement

  • Mettre à jour immédiatement React et Next.js vers les versions corrigées :
    • Pour React : 19.0.1, 19.1.2 ou 19.2.1.
    • Pour Next.js : 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7 ou 16.0.7.
  • Si mise à jour impossible immédiatement : déployer des règles WAF pour bloquer les requêtes suspectes vers les endpoints RSC / Server Function, surveiller le trafic HTTP, et éventuellement restreindre l’exposition réseau des serveurs.
  • Pour les hébergeurs / plateformes (Netlify, Vercel, etc.) : vérifier que le correctif est appliqué côté hébergeur. Certains, comme Netlify, ont déjà déployé des mesures pour protéger les sites hébergés.

Pourquoi c’est un problème massif

  • Selon l’analyse de la firme de sécurité Wiz, 39 % des environnements cloud contiendraient des instances vulnérables React / Next.js.
  • Le bug touche les configurations par défau, une application Next.js standard créée avec create-next-app et déployée en production est vulnérable sans configuration spéciale.
  • La vulnérabilité permet l’exécution de code serveur, ce qui peut donner un accès complet à des bases de données, des informations sensibles ou permettre un pivot vers d’autres parties de l’infrastructure.

0 commentaires pour cet article

Soyez le premier à commenter cet article !

Votre adresse email ne sera pas publiée.

0 commentaire