1 points par GN⁺ 2 시간 전 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • L’équipe React et Vercel ont divulgué simultanément 12 vulnérabilités de sécurité affectant React Server Components et Next.js, en recommandant fortement de mettre à jour immédiatement les applications
  • Elles couvrent divers vecteurs d’attaque, dont le déni de service (DoS), le contournement du middleware, la SSRF, le XSS et l’empoisonnement de cache, avec 6 failles de sévérité High, 4 Moderate et 2 Low
  • Les versions corrigées proposées sont React 19.0.6/19.1.7/19.2.6 et Next.js 15.5.16/16.2.5, et les frameworks serveur basés sur React doivent également être mis à jour
  • Certaines vulnérabilités ne peuvent pas être bloquées par des défenses au niveau réseau comme un WAF, ce qui rend indispensable un correctif dans le code même de l’application
  • Les vulnérabilités sont réparties sur de larges zones fonctionnelles de Next.js, notamment Server Components, Pages Router et l’Image Optimization API, ce qui élargit leur portée

Packages concernés et versions corrigées

  • Correctifs React concernés : react-server-dom-webpack, react-server-dom-parcel, react-server-dom-turbopack — mise à jour requise vers les versions 19.0.6, 19.1.7, 19.2.6 respectivement
  • Correctifs Next.js concernés : 15.5.16 et 16.2.5
  • En cas d’utilisation de frameworks serveur basés sur React comme Vinext, OpenNext ou TanStack Start, il faut également mettre à jour ce framework vers la dernière version

Vulnérabilités de sévérité High (6)

  • CVE-2026-23870 / GHSA-8h8q-6873-q5fj — déni de service (DoS) dans React Server Components
    • Vulnérabilité affectant à la fois React et Next.js
  • GHSA-267c-6grr-h53f — contournement du middleware via la route segment-prefetch
  • GHSA-mg66-mrh9-m8jx — déni de service via épuisement des connexions (connection exhaustion) dans les Cache Components
  • GHSA-492v-c6pp-mqqv — contournement du middleware via injection de paramètres sur des routes dynamiques
    • Impossible à bloquer de manière sûre avec des règles WAF, avec risque de casser le fonctionnement de l’application
  • GHSA-c4j6-fc7j-m34r — SSRF (Server-Side Request Forgery) via upgrade WebSocket
    • Impossible à bloquer de manière sûre avec des règles WAF
  • GHSA-36qx-fr4f-26g5 — contournement du middleware dans Pages Router i18n

Vulnérabilités de sévérité Moderate (4)

  • GHSA-ffhc-5mcf-pf4q — XSS via CSP nonce
  • GHSA-gx5p-jg67-6x7h — XSS dans les scripts beforeInteractive
  • GHSA-h64f-5h5j-jqjh — déni de service dans l’Image Optimization API
  • GHSA-wfc6-r584-vfw7 — empoisonnement de cache des réponses RSC

Vulnérabilités de sévérité Low (2)

  • GHSA-vfv6-92ff-j949 — empoisonnement de cache via collision de cache busting RSC
  • GHSA-3g8h-86w9-wvmq — empoisonnement de cache des redirections de middleware

Possibilité de blocage par WAF

  • Les vulnérabilités pouvant être bloquées au niveau réseau (WAF) sont limitées à une partie des failles DoS, et les règles existantes de mitigation du CVE React Server Component s’appliquent aussi aux nouvelles vulnérabilités DoS
  • De nombreuses vulnérabilités High, comme le contournement du middleware, la SSRF ou le XSS, ne peuvent pas être bloquées de manière sûre par un WAF, ce qui fait du correctif applicatif la seule réponse possible
  • Certains cas peuvent être traités par des règles WAF personnalisées, mais leur déploiement en règles managées globales comporte un risque de casser le fonctionnement de l’application

Impact selon les adaptateurs de framework

  • Vinext : son architecture étant différente de celle de Next.js standard, il n’est pas vulnérable aux CVE publiés
    • Le protocole PPR resume n’est pas implémenté, les endpoints data-route de Pages Router ne sont pas exposés, et des en-têtes internes comme x-nextjs-data sont supprimés à la frontière des requêtes
    • En défense supplémentaire, vinext init a été modifié pour exiger React 19.2.6 ou supérieur
  • OpenNext : l’adaptateur lui-même n’est pas directement vulnérable, mais l’utilisateur doit mettre à jour lui-même la version de Next.js de son application
    • Une nouvelle version renforçant davantage l’adaptateur a déjà été publiée

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.