
Vulnerabilidad crítica en next.js : Evadir la autenticación de middleware
Este repositorio se proporciona estrictamente solo con fines educativos. No descubrí esta vulnerabilidad; se trata de una demostración y explicación de un problema de seguridad divulgado públicamente. Usar este conocimiento para explotar sistemas vulnerables sin autorización es ilegal y poco ético.
Si estás usando Next.js para tus aplicaciones en producción, detente y verifica tu número de versión. Hay una vulnerabilidad grave de middleware que podría dejar todo tu sistema de autenticación completamente expuesto.
Esta vulnerabilidad crítica ha sido divulgada y parcheada de manera responsable, así que comparto esta demostración educativa para ayudar a los desarrolladores a entender el problema y proteger sus sistemas.
El problema radica en cómo Next.js maneja el encabezado HTTP interno x-middleware-subrequest. Este encabezado fue diseñado para prevenir la recursión del middleware, pero los atacantes pueden manipularlo para eludir completamente la ejecución del middleware.
Piensa en lo que eso significa: cualquier seguridad basada en middleware es potencialmente ineficaz:
Se ha informado de que esta vulnerabilidad se ha utilizado en la naturaleza para acceder a paneles de administración, datos de usuarios e incluso información financiera. Algunas organizaciones tuvieron sus datos sensibles expuestos sin siquiera saberlo.
Este repositorio incluye:
# Strips the problematic header
proxy_set_header x-middleware-subrequest "";
# Does the same thing for Apache users
RequestHeader unset x-middleware-subrequest
// Quick middleware fix until you can properly update
app.use((req, res, next) => {
delete req.headers['x-middleware-subrequest'];
next();
});
Esta vulnerabilidad refuerza principios importantes de seguridad:
Consulte estos recursos para crear aplicaciones Next.js más seguras:
Este repositorio proporciona una explicación técnica y demostración de CVE-2025-29927 solo con fines educativos. Toda la información se basa en detalles divulgados públicamente que han sido parcheados adecuadamente. Si descubres vulnerabilidades de seguridad en cualquier software, sigue siempre las prácticas de divulgación responsable:
Esta vulnerabilidad demuestra cómo incluso los frameworks bien diseñados pueden tener fallos de seguridad críticos. Manténganse vigilantes y hagan de la actualización de dependencias parte de su flujo de trabajo habitual.
¡No duden en contactarme si tienen preguntas o necesitan ayuda para implementar alguna de estas correcciones!