Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
0xMiddleware — CVE-2025-29927: Next.js Middleware Exploit | Kitploit
Outils/GitHubGitHub/ev3rpalestine/0xmiddleware
Web Vulnerability ScannersExploitationWeb Application ExploitationWeb SecurityPenetration TestingAuthentication
GitHubev3rpalestine/0xmiddleware

0xMiddleware

CVE-2025-29927: Next.js Middleware Exploit

Voir le dépôt
1il y a 1 anPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2025-29927 : Exploitation du middleware Next.js

Cet outil démontre et automatise l'exploitation de CVE-2025-29927, une vulnérabilité dans Next.js qui permet à un attaquant de contourner les vérifications du middleware (comme l'authentification) en abusant de l'en-tête interne x-middleware-subrequest.

🔧 Comment fonctionne l'exploit

Next.js utilise en interne l'en-tête x-middleware-subrequest pour empêcher les boucles infinies dans les requêtes récursives. Cependant, cet en-tête n'est pas protégé contre la manipulation externe dans certaines versions, ce qui permet à un acteur malveillant de le falsifier.

En définissant manuellement cet en-tête, la logique du middleware chargée d'appliquer l'authentification, les redirections, la journalisation ou le filtrage est complètement ignorée.

Ce que fait cet outil :

  • Envoie une requête de référence (sans en-tête)
  • Itère sur plusieurs charges utiles pour x-middleware-subrequest
  • Compare le contenu du corps des réponses
  • Détecte et rapporte :
    • ✅ Bypass confirmé : le statut 403 devient 200
    • ⚠️ Différence de réponse : le statut reste identique, mais le contenu diffère (bypass partiel ou comportement involontaire)
  • Enregistre les résultats dans des fichiers de sortie propres pour une analyse approfondie

🔖 Versions concernées

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

Cibles vulnérables :

  • Applications Next.js auto-hébergées utilisant un middleware (par ex. next start avec sortie : standalone)
  • Applications où le middleware est utilisé pour l'authentification ou l'application de mesures de sécurité, sans nouvelle validation à l'exécution

Non vulnérables :

  • Applications hébergées sur Vercel ou Netlify
  • Exportations statiques (next export)

👁️ Exploit en action

Exemple de bypass du middleware :

root@kitploit:~
Requête normale :
  GET /admin --> 403 Forbidden

Requête avec en-tête :
  GET /admin --> 200 OK
  x-middleware-subrequest: middleware 

Même si la cible vérifie l'authentification via le middleware, ceci le contourne complètement.


⚙️ Installation et utilisation

🔥 Cloner le dépôt

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

📂 Entrée

Créez un fichier nommé urls.txt avec une URL par ligne :

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

🚀 Lancer l'outil

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

⚙️ Ce qu'il fait

  • Envoie des requêtes à chaque URL avec et sans l'en-tête d'exploitation

  • Utilise plusieurs variations de charges utiles :

    • middleware
    • pages/_middleware
    • src/middleware
    • (et plus encore)
  • Journalise :

    • ✅ middleware_exploited.txt : pour les vrais bypass (403 → 200)
    • ⚠️ middleware_response_diff.txt : lorsque le contenu de la réponse diffère

🚨 Correctif / Atténuation

Mettez à jour Next.js immédiatement vers une version sécurisée :

  • 15.2.3+
  • 14.2.25+
  • 13.5.9+

Également :

  • Assurez-vous que la validation du middleware est revérifiée côté serveur (par ex. via getServerSideProps, JWT, sessions)
  • Assainissez ou rejetez l'utilisation externe des en-têtes internes

✨ Exemple de sortie

root@kitploit:~
[✔] Bypass réussi : https://target.com/admin (charge utile : middleware)
[•] Différence de réponse détectée : https://target.com/login (charge utile : src/middleware)

[✔] 3 bypass trouvés > middleware_exploited.txt
[•] 5 différences de réponse trouvées > middleware_response_diff.txt

🔗 Références

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

Télécharger l’outil