Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
poc-nextjs-CVE-2025-29927 — Scanner automatisé de PoC pour la vulnérabilité de contournement du middleware Next.js CVE-2025-29927. Teste plusieurs payloads x-middleware-subrequest sur des URL cibles avec analyse concurrente et export JSON. | Kitploit
Outils/GitHubGitHub/ticofookfook/poc-nextjs-cve-2025-29927
Scanners de VulnérabilitésGénération de PayloadsExploitationExploitation d'Applications WebSécurité WebTests d'Intrusion
GitHubticofookfook/poc-nextjs-cve-2025-29927

poc-nextjs-CVE-2025-29927

Scanner automatisé de PoC pour la vulnérabilité de contournement du middleware Next.js CVE-2025-29927. Teste plusieurs payloads x-middleware-subrequest sur des URL cibles avec analyse concurrente et export JSON.

Voir le dépôt
2il 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

Scanner de Vulnérabilité Middleware Subrequest de Next.js

Un outil robuste de preuve de concept (PoC) pour détecter la vulnérabilité du middleware de Next.js (CVE-2025-29927).

Vue d'ensemble

Cet outil teste une vulnérabilité critique dans les applications Next.js où l'en-tête x-middleware-subrequest peut être utilisé pour contourner les vérifications de sécurité implémentées dans le middleware. L'exploit consiste à envoyer des requêtes HTTP avec des en-têtes malveillants spécifiques, variant selon la version de Next.js.

Comment fonctionne l'exploit

Selon les recherches, il existe différentes charges utiles pour différentes versions de Next.js :

  1. Versions antérieures à 12.2 :

    x-middleware-subrequest: pages/_middleware
    
  2. Versions à partir de 12.2 :

    x-middleware-subrequest: middleware
    

    ou

    x-middleware-subrequest: src/middleware
    

    (si l'application utilise le répertoire src)

  3. Versions plus récentes (comme 15.x) :

    x-middleware-subrequest: middleware:middleware:middleware:middleware:middleware
    

    ou

    x-middleware-subrequest: src/middleware:src/middleware:src/middleware:src/middleware:src/middleware
    

Notre PoC teste automatiquement toutes ces charges utiles et rapporte celle qui a réussi.

Fonctionnalités

  • Test d'une ou plusieurs cibles
  • Scan concurrent avec multithreading
  • Chemins de requête personnalisables
  • Test automatique de toutes les charges utiles possibles
  • Sortie détaillée et colorée dans le terminal
  • Exportation des résultats en JSON
  • Gestion robuste des erreurs
  • Détection complète des vulnérabilités

Prérequis

  • Python 3.7+
  • Paquets nécessaires :
    • requests
    • colorama

Installation

# Clonez le dépôt ou téléchargez les fichiers
# Naviguez jusqu'au répertoire
cd poc-nextjs-2025

# Installez les paquets nécessaires
pip install -r requirements.txt

Utilisation

python main.py -u https://exemple.com   # Tester une seule URL
python main.py -f cibles.txt             # Tester plusieurs URLs depuis un fichier

Arguments de ligne de commande

OptionDescription
-u, --url URLURL cible à scanner
-f, --file FICHIERFichier contenant plusieurs URLs à scanner (une par ligne)
-p, --paths CHEMINSListe de chemins à tester séparés par des virgules (par défaut : chemins courants)
-t, --threads NNombre de threads concurrents (par défaut : 5)
-o, --output FICHIERSauvegarder les résultats dans un fichier JSON
--timeout NDélai d'attente de la requête en secondes (par défaut : 10)

Exemples

# Scan basique d'une seule cible
python main.py -u https://exemple.com

# Scanner plusieurs cibles avec des chemins personnalisés
python main.py -f cibles.txt -p /api/utilisateurs,/admin,/tableau-de-bord

# Scanner avec une plus grande concurrence et un délai d'attente plus long
python main.py -u https://exemple.com -t 10 --timeout 15

# Sauvegarder les résultats dans un fichier JSON
python main.py -u https://exemple.com -o resultats_scan.json

Méthodologie de détection

Le scanner fonctionne en :

  1. Envoi d'une requête normale à la cible
  2. Envoi de requêtes avec différentes variations de l'en-tête x-middleware-subrequest selon les versions de Next.js
  3. Comparaison des réponses pour identifier les indicateurs de vulnérabilité :
    • Requête normale bloquée (4xx/5xx) mais requête d'exploit autorisée (2xx)
    • Différence significative dans le contenu de la réponse
    • Indicateurs de contournement d'authentification/autorisation

Atténuation

Si vous découvrez des applications vulnérables, appliquez ces atténuations :

  • Mettez à jour vers les versions 14.2.25 ou 15.2.3 ou ultérieures de Next.js
  • Implémentez un middleware qui bloque les requêtes avec l'en-tête x-middleware-subrequest
export function middleware(request: NextRequest) {
  if (request.headers.has('x-middleware-subrequest')) {
    return new Response('Non autorisé', { status: 401 });
  }
  return NextResponse.next();
}
Télécharger l’outil