
Exploit funcional para CVE-2025-29927, una omisión crítica de autorización en middleware de Next.js. Envía solicitudes HTTP manipuladas con el encabezado x-middleware-subrequest para saltar las comprobaciones de autenticación en rutas protegidas.
Este repositorio contiene un exploit funcional para CVE-2025-29927, una vulnerabilidad crítica de omisión de autorización en Next.js. El fallo permite a los atacantes eludir las comprobaciones de autenticación y autorización basadas en middleware, otorgando acceso no autorizado a rutas protegidas.
CVE-2025-29927 es una vulnerabilidad crítica en el middleware de Next.js que permite a los atacantes omitir las comprobaciones de autenticación y autorización mediante el envío de una solicitud HTTP especialmente diseñada que contiene el encabezado interno x-middleware-subrequest. Este encabezado está destinado a uso interno para evitar la recursión infinita durante la ejecución del middleware. Sin embargo, su manejo inadecuado permite a los atacantes explotar este mecanismo para saltarse las comprobaciones del middleware, exponiendo potencialmente rutas administrativas sensibles y contenido protegido.
La vulnerabilidad afecta a versiones de Next.js anteriores a:
Las aplicaciones que utilizan middleware para tareas críticas, como autenticación o comprobaciones de seguridad, y que ejecutan versiones afectadas, son vulnerables a este exploit. Cabe destacar que los despliegues alojados en Vercel están automáticamente protegidos contra esta vulnerabilidad.
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Python 3.7+
Aplicación Next.js vulnerable con control de acceso basado en middleware
python3 exploit.py --host <IP> --port <PUERTO> --path <RUTA> --method <MÉTODO>