Vulnérabilité de contournement d’autorisation dans le middleware Next.js : CVE-2025-29927

Next.js est un framework React populaire pour le développement d’applications web full-stack, largement adopté pour ses fonctionnalités de rendu côté serveur et de génération de sites statiques. Le middleware dans Next.js permet aux développeurs d’exécuter du code avant qu’une requête ne soit traitée, activant ainsi des fonctionnalités telles que l’authentification et l’autorisation. Une vulnérabilité de sécurité critique a été identifiée dans les versions de Next.js antérieures à 14.2.25 et 15.2.3, qui pourrait permettre à des attaquants de contourner les contrôles d’autorisation implémentés dans le middleware, permettant potentiellement un accès non autorisé à des ressources sensibles.

ProduitNext.js
Date24/03/2025 11:03:35
Informations
  • Correctif disponible

Résumé technique

La vulnérabilité, identifiée sous le nom de CVE-2025-29927, provient d’une gestion incorrecte de l’en-tête interne x-middleware-subrequest. Next.js utilise cet en-tête pour empêcher les requêtes récursives de déclencher des boucles infinies. Cependant, un attaquant peut exploiter ce mécanisme en créant des requêtes incluant l’en-tête x-middleware-subrequest, contournant ainsi l’exécution du middleware. Ce contournement peut mener à des accès non autorisés à des routes et des ressources protégées au sein d’une application Next.js.

Recommandations

Pour atténuer les risques associés à la CVE-2025-29927, il est essentiel d’adopter les mesures suivantes :

  1. Mettre à jour Next.js : Mettez à jour votre application Next.js vers les versions corrigées :
  • Pour Next.js 15.x, mettez à jour vers la version 15.2.3.
  • Pour Next.js 14.x, mettez à jour vers la version 14.2.25.
  • Pour Next.js 13.x, mettez à jour vers la version 13.5.9.
  • Pour Next.js 12.x, mettez à jour vers la version 12.3.5.
  1. Implémenter le filtrage des requêtes : Si la mise à jour immédiate n’est pas possible, configurez l’application ou le reverse proxy pour bloquer les requêtes externes contenant l’en-tête x-middleware-subrequest. Cette mesure peut prévenir les tentatives de contournement du middleware non autorisées.

  2. Déployer des règles WAF : Utilisez des solutions de pare-feu d’application web (WAF) pour détecter et bloquer les requêtes tentant d’exploiter cette vulnérabilité. Par exemple, Cloudflare a publié une règle WAF gérée pour protéger contre la CVE-2025-29927.

  3. Réviser la logique d’autorisation : Assurez-vous que les contrôles d’autorisation critiques ne reposent pas exclusivement sur le middleware. Implémentez des contrôles redondants au niveau des routes ou des contrôleurs pour renforcer la sécurité.

  4. Surveiller et auditer les journaux : Analysez régulièrement les journaux du serveur à la recherche de modèles d’accès inhabituels ou de tentatives d’accès non autorisées, en particulier celles impliquant l’en-tête x-middleware-subrequest.

[Callforaction-THREAT-Footer]

Leave a Reply

Your email address will not be published. Required fields are marked *