Skip to content

Next.js 16.4.5 : sept failles corrigées, dont une élevée

Next.js 16.4.5 et 15.5.29 corrigent sept failles, surtout liées au cache des Cache Components. Versions concernées, risques et mise à jour.

Publié le 3 min de lecture
Next.js 16.4.5 : sept failles corrigées, dont une élevée

L'équipe de Next.js a publié le 3 novembre 2026 les versions 16.4.5 et 15.5.29 du framework React, qui corrigent sept vulnérabilités. Annoncée une semaine plus tôt, cette mise à jour de sécurité programmée concerne les deux branches LTS encore maintenues : 16.4 (Active LTS) et 15.5 (Maintenance LTS). La majorité des failles touchent le système de cache, avec un risque de fuite de données entre utilisateurs ou entre clients d'une même application.

Une faille élevée dans le cache multi-tenant

Lors de l'annonce préalable du 27 octobre, Vercel évoquait sept failles de gravité moyenne. Le bulletin final en classe finalement une en gravité élevée (GHSA-mfr8-8qww-v76h). Elle concerne les applications qui ont activé les Cache Components et qui appellent une même fonction publique use cache à la fois directement et depuis unstable_cache, lorsque cette fonction lit un paramètre racine comme un identifiant de client (tenant).

Pendant le remplissage d'un cache vide, un appel concurrent via unstable_cache peut recevoir le résultat d'une autre requête sans vérification de ses paramètres racine. Ce résultat peut ensuite être stocké et servi à d'autres visiteurs jusqu'à sa revalidation. Dans une application multi-tenant, il peut donc contenir les données d'un autre client.

Six failles moyennes, surtout côté cache

Deux autres vulnérabilités relèvent de la même famille :

  • GHSA-vc7v-qv4w-wrv8 : avec des fonctions use cache imbriquées, un contenu généré pour une valeur de paramètre racine (site, langue, client) peut être servi pour une autre ;
  • GHSA-rhh4-g77r-r9qj : des arguments binaires distincts passés à une fonction use cache peuvent produire la même identité de cache, ce qui permet de recevoir le résultat d'un autre utilisateur ou d'empoisonner le sien.

Le bulletin décrit aussi un empoisonnement du « shell » de page partagé sur les applications auto-hébergées (next start) utilisant les Cache Components sans Partial Prefetching. Une URL forgée par un attaquant non authentifié peut y provoquer un contenu erroné ou des erreurs 404 persistantes, sur une forme de route bien précise.

Les trois dernières failles sont plus contextuelles :

  • GHSA-pc58-hwjq-p385 : derrière certains reverse proxies HTTP/1.1 qui mutualisent les requêtes sur une même connexion, renvoyer tel quel un objet Response récupéré auprès d'un tiers peut décaler les réponses entre clients ;
  • GHSA-f3mh-rxg3-f5g2 : dans les routes Edge, un cookie posé avec NextResponse.cookies.set() peut apparaître dans l'en-tête interne x-middleware-set-cookie, lisible par du JavaScript de même origine, même s'il est marqué HttpOnly ;
  • GHSA-7qx7-33qx-rqx2 : une image malveillante peut être prise pour un fichier AVIF et contourner le réglage images.dangerouslyAllowSVG: false de l'optimiseur d'images.

Pour ces trois cas, Vercel précise les limites : l'exploitation suppose une configuration de proxy particulière, du JavaScript déjà présent sur l'origine, ou une source d'images autorisée.

Mettre à jour

La correction passe par une montée de version de la dépendance next : 16.4.5 pour la branche 16.4, 15.5.29 pour la branche 15.5. Le bulletin ne propose pas de contournement : la mise à jour est la seule mesure indiquée. Les applications qui n'utilisent ni les Cache Components, ni les routes Edge, ni l'optimisation d'images sont moins exposées, mais il reste prudent de suivre ces versions de maintenance.

Les projets encore sur une branche plus ancienne doivent d'abord migrer vers une version LTS maintenue pour recevoir ces correctifs. Pour situer Next.js parmi les autres options, voir notre comparatif des frameworks web. Côté serveur, la faille Brotli corrigée dans Node.js rappelle que le runtime mérite la même vigilance.

Articles liés

GitHub Actions bloquera pull_request_target par défaut dans les dépôts publics le 2 décembre 2026. Calendrier, coupures tests et comment s'y préparer.
Go 1.27.2 et 1.26.9 corrigent 15 failles, dont plusieurs dans le serveur HTTP/2 de net/http. Ce qui est touché et pourquoi mettre à jour Go rapidement.
Le bulletin de sécurité Android de novembre 2026 corrige plus de 200 failles, dont une critique dans Framework. Niveaux de correctif et que faire.