Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
0xMiddleware — CVE-2025-29927: Next.js Middleware Exploit | Kitploit
Ferramentas/GitHubGitHub/ev3rpalestine/0xmiddleware
Web Vulnerability ScannersExploitationWeb Application ExploitationWeb SecurityPenetration TestingAuthentication
GitHubev3rpalestine/0xmiddleware

0xMiddleware

CVE-2025-29927: Next.js Middleware Exploit

Ver Repositório
1há 1 anoAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2025-29927: Exploração de Middleware no Next.js

Esta ferramenta demonstra e automatiza a exploração de CVE-2025-29927, uma vulnerabilidade no Next.js que permite a um atacante contornar verificações de middleware (como autenticação) abusando do cabeçalho interno x-middleware-subrequest.

🔧 Como a Exploração Funciona

O Next.js usa internamente o cabeçalho x-middleware-subrequest para evitar loops infinitos em requisições recursivas. No entanto, esse cabeçalho não é protegido contra manipulação externa em determinadas versões, permitindo que um ator malicioso o falsifique.

Ao definir esse cabeçalho manualmente, a lógica do middleware responsável por impor autenticação, redirecionamentos, logging ou filtragem é completamente ignorada.

O Que Esta Ferramenta Faz:

  • Envia uma requisição de linha de base (sem cabeçalho)
  • Itera sobre múltiplos payloads para x-middleware-subrequest
  • Compara o conteúdo do corpo da resposta
  • Detecta e relata:
    • ✅ Bypass Confirmado: status 403 se torna 200
    • ⚠️ Diferença de Resposta: o status permanece o mesmo, mas o conteúdo difere (bypass parcial ou comportamento não intencional)
  • Salva os resultados em arquivos de saída limpos para análise posterior

🔖 Versões Afetadas

  • Next.js 15.x < 15.2.3
  • Next.js 14.x < 14.2.25
  • Next.js 13.x < 13.5.9

Alvos Vulneráveis:

  • Aplicações Next.js auto-hospedadas usando middleware (ex.: next start com output: standalone)
  • Aplicações onde o middleware é usado para autenticação ou imposição de segurança e não é revalidado em tempo de execução

Não Vulneráveis:

  • Aplicações hospedadas na Vercel ou Netlify
  • Exportações estáticas (next export)

👁️ Exploração em Ação

Exemplo de Bypass de Middleware:

root@kitploit:~
Normal Request:
  GET /admin --> 403 Forbidden

Request with Header:
  GET /admin --> 200 OK
  x-middleware-subrequest: middleware 

Mesmo que o alvo verifique autenticação via middleware, isto o contorna completamente.


⚙️ Instalação e Uso

🔥 Clone o Repositório

root@kitploit:~
git clone https://github.com/0x0Luk/0xMiddleware.git
cd 0xMiddleware

📂 Entrada

Crie um arquivo chamado urls.txt com uma URL por linha:

root@kitploit:~
https://target.com/admin
https://target.com/_next/static/asset.js

🚀 Execute a Ferramenta

root@kitploit:~
python3 0xMiddleware.py urls.txt

⚙️ O Que Ela Faz

  • Envia requisições para cada URL com e sem o cabeçalho da exploração

  • Usa múltiplas variações de payload:

    • middleware
    • pages/_middleware
    • src/middleware
    • (e mais)
  • Registra:

    • ✅ middleware_exploited.txt: para bypasses reais (403 → 200)
    • ⚠️ middleware_response_diff.txt: quando o conteúdo da resposta difere

🚨 Correção / Mitigação

Atualize o Next.js imediatamente para uma versão segura:

  • 15.2.3+
  • 14.2.25+
  • 13.5.9+

Além disso:

  • Garanta que a validação do middleware seja reverificada no lado do servidor (ex.: via getServerSideProps, JWT, sessões)
  • Sanitize ou rejeite o uso externo de cabeçalhos internos

✨ Exemplo de Saída

root@kitploit:~
[✔] Bypass successful: https://target.com/admin (payload: middleware)
[•] Response difference detected: https://target.com/login (payload: src/middleware)

[✔] Found 3 bypasses > middleware_exploited.txt
[•] Found 5 response diffs > middleware_response_diff.txt

🔗 Referências

  • ✨ CVE: https://nextjs.org/blog/cve-2025-29927

Baixar ferramenta