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.
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 cacheimbriqué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 cachepeuvent 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
Responseré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 internex-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: falsede 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.