Skip to content
KitploitKITPLOIT
StrumentiBlog
Log in
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
0xMiddleware — CVE-2025-29927: Exploit del Middleware Next.js | Kitploit
Strumenti/GitHubGitHub/ev3rpalestine/0xmiddleware
Scanner di Vulnerabilità WebExploitSfruttamento di Applicazioni WebSicurezza WebPenetration TestingAutenticazione
GitHubev3rpalestine/0xmiddleware

0xMiddleware

CVE-2025-29927: Exploit del Middleware Next.js

Vedi Repository
1151 anno faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2025-29927: Exploit del Middleware di Next.js

Questo strumento dimostra e automatizza lo sfruttamento di CVE-2025-29927, una vulnerabilità in Next.js che consente a un attaccante di bypassare i controlli del middleware (come l'autenticazione) abusando dell'header interno x-middleware-subrequest.

🔧 Come funziona l'Exploit

Next.js utilizza internamente l'header x-middleware-subrequest per prevenire loop infiniti nelle richieste ricorsive. Tuttavia, in alcune versioni, questo header non è protetto contro la manipolazione esterna, consentendo a un attore malintenzionato di falsificarlo.

Impostando manualmente questo header, la logica del middleware responsabile dell'applicazione di autenticazione, reindirizzamenti, logging o filtri viene completamente saltata.

Cosa fa questo strumento:

  • Invia una richiesta di base (senza header)
  • Itera su più payload per x-middleware-subrequest
  • Confronta il contenuto del corpo della risposta
  • Rileva e segnala:
    • ✅ Bypass Confermato: lo stato 403 diventa 200
    • ⚠️ Differenza nella Risposta: lo stato rimane lo stesso, ma il contenuto cambia (bypass parziale o comportamento indesiderato)
  • Salva i risultati in file di output puliti per analisi successive

🔖 Versioni Vulnerabili

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

Target Vulnerabili:

  • App Next.js self-hosted che utilizzano il middleware (es. next start con output: standalone)
  • Applicazioni in cui il middleware viene utilizzato per autenticazione o applicazione di misure di sicurezza e non viene rivalidato a runtime

Non Vulnerabili:

  • App ospitate su Vercel o Netlify
  • Esportazioni statiche (next export)

👁️ Exploit in Azione

Esempio di Bypass del Middleware:

Richiesta Normale:
  GET /admin --> 403 Forbidden

Richiesta con Header:
  GET /admin --> 200 OK
  x-middleware-subrequest: middleware 

Anche se il target verifica l'autenticazione tramite middleware, questo lo bypassa completamente.


⚙️ Installazione e Utilizzo

🔥 Clona il Repository

git clone https://github.com/0x0Luk/0xMiddleware.git
cd 0xMiddleware

📂 Input

Crea un file chiamato urls.txt con un URL per riga:

https://target.com/admin
https://target.com/_next/static/asset.js

🚀 Esegui lo Strumento

python3 0xMiddleware.py urls.txt

⚙️ Cosa fa

  • Invia richieste a ciascun URL con e senza l'header dell'exploit

  • Utilizza più varianti di payload:

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

    • ✅ middleware_exploited.txt: per bypass reali (403 → 200)
    • ⚠️ middleware_response_diff.txt: quando il contenuto della risposta differisce

🚨 Fix / Mitigazione

Aggiorna immediatamente Next.js a una versione sicura:

  • 15.2.3+
  • 14.2.25+
  • 13.5.9+

Inoltre:

  • Assicurati che la validazione del middleware sia ricontrollata lato server (es. tramite getServerSideProps, JWT, sessioni)
  • Sanifica o rifiuta l'uso esterno degli header interni

✨ Esempio di Output

[✔] Bypass riuscito: https://target.com/admin (payload: middleware)
[•] Differenza nella risposta rilevata: https://target.com/login (payload: src/middleware)

[✔] Trovati 3 bypass > middleware_exploited.txt
[•] Trovate 5 differenze nelle risposte > middleware_response_diff.txt

🔗 Riferimenti

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

Scarica lo strumento