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 : Exploitation du Middleware Next.js | Kitploit
Outils/GitHubGitHub/ev3rpalestine/0xmiddleware
Scanners de Vulnérabilités WebExploitationExploitation d'Applications WebSécurité WebTests d'IntrusionAuthentification
GitHubev3rpalestine/0xmiddleware

0xMiddleware

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

Voir le dépôt
14il 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
Télécharger l’outil
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