Aikido

Vulnérabilité RCE critique dans React et Next.js (CVE-2025-55182) : Ce que vous devez corriger maintenant

Sooraj ShahSooraj Shah
|
#

Points clés à retenir

  • CVE-2025-55182 est une vulnérabilité critique d'exécution de code à distance dans les React Server Components.
  • Next.js attribue un identifiant connexe, CVE-2025-66478, en raison de son utilisation du même protocole Flight sous-jacent.
  • Les versions vulnérables incluent react-server-dom-webpack, react-server-dom-parcel et react-server-dom-turbopack à travers plusieurs versions de React 19.
  • Des frameworks tels que Next.js, React Router (mode RSC), le plugin Vite RSC, le plugin Parcel RSC, RedwoodSDK et Waku intègrent ces packages vulnérables.
  • Aikido suit désormais 10/10 CVE-2025-55182 et le CVE-2025-66478 de Next.js qui y est lié. Connectez vos dépôts pour le scanner.

En bref : Voyez comment vous êtes affecté

Aikido suit désormais le CVE-2025-55182 et le CVE-2025-66478 de Next.js qui y est lié. Connectez vos dépôts pour déterminer si votre application ou ses dépendances incluent des implémentations vulnérables de React Server Component.

Étapes de remédiation

1. Mettre à niveau React

Installez une version de React corrigée, telle que 19.0.1, 19.1.2 ou 19.2.1. Celles-ci incluent une gestion des entrées renforcée.

2. Mettre à niveau les frameworks qui regroupent les RSC

Mettez à jour votre framework vers sa version patchée correspondante.
Les utilisateurs de Next.js doivent passer à la dernière version patchée de leur ligne de version majeure.
Toute personne utilisant une version canary à partir de 14.3.0-canary.77 doit revenir à la dernière version stable 14.x.

3. Mettre à jour les bundlers et plugins compatibles RSC

Assurez-vous de mettre à jour :

  • Plugin RSC Vite
  • Plugin RSC Parcel
  • Préversion React Router RSC
  • RedwoodSDK
  • Waku

Chacun a publié des versions qui incluent l'implémentation RSC corrigée.

4. Valider avec Aikido

Après la mise à niveau, effectuez une analyse pour confirmer que :

  • Toutes les versions vulnérables ont été supprimées
  • Aucune dépendance transitive ne reste affectée
  • Les intégrations de frameworks et de bundlers sont entièrement patchées

Contexte

CVE-2025-55182 est une vulnérabilité critique d'exécution de code à distance non authentifiée affectant les React Server Components. Elle touche également l'écosystème plus large des frameworks qui reposent sur le protocole React Flight. Next.js a attribué la CVE-2025-66478 pour suivre son exposition, qui découle du même problème sous-jacent.

La vulnérabilité permet à des requêtes spécialement conçues de déclencher un comportement de désérialisation non sécurisé au sein de l'implémentation RSC côté serveur, ce qui peut conduire à l'exécution de code à distance sous certaines conditions. Elle affecte les versions de React 19.0, 19.1.0, 19.1.1 et 19.2.0, ainsi que les intégrations en aval qui intègrent ces packages.

Approfondissement

Nature de la vulnérabilité

Le problème provient d'une gestion non sécurisée des charges utiles sérialisées dans le protocole React Flight. Des charges utiles malformées ou adverses peuvent influencer l'exécution côté serveur de manière inattendue. Les versions de React corrigées incluent une validation plus stricte et un comportement de désérialisation renforcé.

Pourquoi vous pourriez être affecté même sans utiliser de fonctions serveur

Les frameworks intègrent généralement l'implémentation RSC par défaut. Une application peut donc être exposée même si elle ne définit pas explicitement de fonctions serveur. La couche d'intégration elle-même peut invoquer le chemin de code vulnérable.

Versions affectées

Les versions de React 19.0, 19.1.0, 19.1.1 et 19.2.0 sont vulnérables.
Les versions de Next.js à partir de 14.3.0-canary.77, ainsi que toutes les versions 15.x et 16.x antérieures à leurs versions corrigées, sont affectées en raison de leur utilisation de l'implémentation RSC.

Notes sur l'environnement d'hébergement

Vercel a mis en œuvre des protections au niveau de la couche de requête pour réduire l'exposition pendant que les utilisateurs effectuent la mise à niveau, mais celles-ci ne corrigent pas la vulnérabilité. Tous les utilisateurs doivent mettre à jour vers les versions corrigées dès que possible.

Sévérité

Score CVE : 10.0 Critique
Impact : Exécution de code à distance
Vecteur d'attaque : À distance et non authentifié

Chronologie

29 novembre : Vulnérabilité signalée
30 novembre : Confirmation et développement du correctif
1er décembre : Coordination avec les mainteneurs de frameworks et les fournisseurs d'hébergement
3 décembre : Publication des correctifs publics et divulgation de la CVE

Preuve de concept (Crédit à @maple3142)

La vidéo de preuve de concept suivante, initialement publiée par @maple3142 sur X, démontre comment des requêtes multipart spécialement conçues peuvent exploiter une désérialisation non sécurisée dans les versions affectées de React et Next.js. Tout le crédit revient à l'auteur original.

Regarder la vidéo complète de la preuve de concept ici.

Le chercheur a démontré qu'en manipulant la logique de désérialisation de RSC, un attaquant peut contrôler le Chunk.prototype.then chemin de résolution, menant à l'exécution d'une logique contrôlée par l'attaquant lors de la désérialisation de Blob. Les détails techniques complets sont disponibles dans la preuve de concept originale publiée sur GitHub Gist par @maple3142.

Scannez votre base de code maintenant

Aikido assure le suivi de CVE-2025-55182 et CVE-2025-66478 sur tous les écosystèmes pris en charge. Connectez vos dépôts pour effectuer une analyse complète et évaluer rapidement votre exposition. Commencez gratuitement avec Aikido ici.

Références

Équipe React. Divulgation de la CVE-2025-55182
Avis de sécurité Vercel concernant les CVE-2025-55182 et CVE-2025-66478

4.7/5

Sécurisez votre logiciel dès maintenant.

Essai gratuit
Sans CB
Planifiez une démo
Vos données ne seront pas partagées - Accès en lecture seule - Pas de CB nécessaire

Sécurisez-vous maintenant.

Sécuriser votre code, votre cloud et votre runtime dans un système centralisé unique.
Détectez et corrigez les vulnérabilités rapidement et automatiquement.

Pas de carte de crédit requise | Résultats du scan en 32 secondes.