
Exploit fonctionnel pour CVE-2025-29927, un contournement critique de l'autorisation middleware Next.js. Envoie des requêtes HTTP spécialement conçues avec l'en-tête x-middleware-subrequest pour contourner les contrôles d'authentification sur les routes protégées.
Ce dépôt contient un exploit fonctionnel pour CVE-2025-29927, une vulnérabilité critique de contournement d'autorisation dans Next.js. Cette faille permet aux attaquants de contourner les contrôles d'authentification et d'autorisation basés sur le middleware, accordant un accès non autorisé aux routes protégées.
CVE-2025-29927 est une vulnérabilité critique dans le middleware de Next.js qui permet aux attaquants de contourner les contrôles d'authentification et d'autorisation en envoyant une requête HTTP spécialement conçue contenant l'en-tête interne x-middleware-subrequest. Cet en-tête est destiné à un usage interne pour empêcher la récursion infinie pendant l'exécution du middleware. Cependant, sa gestion inappropriée permet aux attaquants d'exploiter ce mécanisme pour sauter les contrôles du middleware, exposant potentiellement des routes administratives sensibles et du contenu protégé.
La vulnérabilité affecte les versions de Next.js antérieures à :
Les applications utilisant un middleware pour des tâches critiques, telles que l'authentification ou les contrôles de sécurité, et fonctionnant sur des versions affectées sont vulnérables à cet exploit. Notamment, les déploiements hébergés sur Vercel sont automatiquement protégés contre cette vulnérabilité.
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Python 3.7+
Application Next.js vulnérable avec contrôle d'accès basé sur le middleware
python3 exploit.py --host <IP> --port <PORT> --path <PATH> --method <METHOD>