Kritische RCE · CVSS 10.0 · Aktive Ausnutzung

React2Shell – kritische RCE-Schwachstelle in React Server Components & Next.js

React2Shell (CVE-2025-55182 und CVE-2025-66478) ist eine pre-auth Remote-Code-Execution-Schwachstelle im Flight-Protokoll von React Server Components. Eine Ausnutzung kann zur vollständigen Kompromittierung der Server, Zugriff auf Secrets und zu Auswirkungen auf nachgelagerte Kunden- und Backend-Systeme führen.

10+ Jahre Incident Response & DFIR EU-basiertes Forensik- & IR-Team React / Next.js / moderne Web-Stacks
CVE
CVE-2025-55182
CVE-2025-66478
Bewertung
CVSS 10.0 (kritisch)
Angriffstyp
Pre-auth RCE via unsicherer Deserialisierung (Flight-Protokoll)
Status
Aktives Scanning & Ausnutzung, Patches verfügbar
(Stand ca. 08. Dezember 2025)

Management-Zusammenfassung

Was ist React2Shell?

React2Shell ist eine Schwachstelle in der Art und Weise, wie React Server Components Daten vom Client entgegennehmen und verarbeiten. Angreifer können speziell präparierte Flight-Payloads senden, die dazu führen, dass der Server interne Strukturen falsch interpretiert – bis hin zur Ausführung von Angreifer-Code auf dem Server.

Wer ist betroffen?

Betroffen sind Anwendungen, die React Server Components in verwundbaren Versionen einsetzen – direkt oder über Frameworks wie Next.js (App Router), React Router mit RSC, Waku, RSC-Plugins für Parcel/Vite oder Redwood/Expo. Klassische „Client-only“-React-SPAs, die vollständig im Browser laufen und keinen RSC-Server nutzen, sind von diesem spezifischen Fehler nicht betroffen.

Warum ist das kritisch?

Die Schwachstelle ist ohne Authentifizierung aus der Ferne ausnutzbar, erhält einen CVSS-Score von 10.0 und betrifft ein weit verbreitetes Technologie-Ökosystem. Sicherheitsanbieter berichten über aktives Scanning und Exploit-Versuche, inklusive Aktivität von staatlich unterstützten Gruppen.

Zeitleiste (vereinfacht)

  1. Ende November 2025

    Verantwortungsvolle Meldung

    Sicherheitsforscher Lachlan Davidson meldet dem React/Meta-Team eine kritische Schwachstelle im Flight-Protokoll von React Server Components.

  2. 3. Dezember 2025

    Öffentliche Advisories & Patches

    React veröffentlicht ein Advisory zu CVE-2025-55182; Next.js veröffentlicht ein eigenes Advisory zu CVE-2025-66478. Gepatchte Versionen der RSC-Pakete und von Next.js werden bereitgestellt.

  3. Kurz nach der Offenlegung

    Proof-of-Concepts & Scanning

    Erste (teilweise fehlerhafte) PoCs erscheinen öffentlich. Sicherheitsanbieter beobachten automatisierte, internetweite Scans nach verwundbaren Next.js-/RSC-Anwendungen.

  4. Folgende Tage

    Ausnutzung in freier Wildbahn

    Threat-Intelligence-Feeds berichten über „in-the-wild“-Exploits, inklusive Versuche durch APT-Gruppen sowie opportunistische Angriffe (z. B. Kryptomining, Backdoors).

Betroffene Komponenten & Versionen

React Server Components (RSC)

Die eigentliche Schwachstelle liegt in den React-Serverbibliotheken, die das Flight-Protokoll implementieren:

  • react-server-dom-webpack
  • react-server-dom-parcel
  • react-server-dom-turbopack

Explizit verwundbare Versionen

  • 19.0.0
  • 19.1.0
  • 19.1.1
  • 19.2.0

Gepatchte Versionen

  • ≥ 19.0.1
  • ≥ 19.1.2
  • ≥ 19.2.1

Weitere React-19.x-Versionen, die nicht explizit als verwundbar oder gepatcht genannt werden, sollten gegen das aktuelle Advisory geprüft werden.

Klassische Client-only-React-Apps ohne RSC-Server sind von React2Shell selbst nicht betroffen, können jedoch andere Schwachstellen aufweisen.

Next.js (CVE-2025-66478)

Next.js integriert RSC-Funktionalität und stellt sie über den App Router und Server Actions bereit. Für viele Organisationen ist dies die relevanteste Angriffsfläche.

Verwundbare Releases (Auszug)

  • 14.3.0-canary.77+ (bestimmte Canaries)
  • 15.x vor den Fix-Releases
  • 16.x vor den Fix-Releases

Gepatchte Releases (Auszug)

  • 15.0.5
  • 15.1.9
  • 15.2.6
  • 15.3.6
  • 15.4.8
  • 15.5.7
  • 16.0.7
  • 15.6.0-canary.58
  • 16.1.0-canary.12

Auch mit gepatchten Next.js-Versionen sollte überprüft werden, ob Lockfiles und transitive Abhängigkeiten keine verwundbaren RSC-Pakete mehr referenzieren.

Weitere betroffene Frameworks & Ökosysteme

Über Next.js hinaus können alle Frameworks betroffen sein, die React Server Components oder das Flight-Protokoll verwenden, darunter:

React Router (RSC-Modus) Waku @parcel/rsc @vitejs/plugin-rsc RedwoodSDK Expo mit RSC-Unterstützung

In vielen SBOM-/SCA-Berichten tauchen diese Komponenten nur indirekt über React auf. Eine tiefere Analyse des Abhängigkeitsbaums ist daher empfehlenswert.

Angriffspfad – technischer Überblick

Die Schwachstelle basiert auf unsicherer Deserialisierung von Flight-Payloads im React-Server. RSC-Clients senden strukturierte Daten, die Komponentenbäume und Serverfunktionen beschreiben. Beim Dekodieren werden bestimmte Strukturen und Schlüssel nicht streng genug validiert. Angreifer können interne Objekte manipulieren und Codepfade erreichen, in denen angreiferkontrollierte Werte ausgeführt werden.

  1. Identifikation der Endpunkte: RSC-/Server-Action-Endpunkte können über typische Routen, Response-Header und Framework-Signaturen (z. B. Next.js App Router) erkannt werden.
  2. Präparierte Flight-Payload: Statt legitimer Daten sendet der Angreifer eine speziell aufgebaute Payload, die Prototypen „vergiftet“ oder interne Typkennzeichen missbraucht.
  3. Unsicheres Dekodieren & Dispatch: Der Flight-Decoder wandelt die Daten in JavaScript-Objekte um und übergibt sie an die Serverlogik. Unzureichende Validierung ermöglicht es, dass angreiferkontrollierte Werte an Stellen landen, die nicht für Benutzereingaben vorgesehen waren.
  4. Gadget-Chain bis zur RCE: Durch Ausnutzen vorhandener Codepfade („Gadgets“) können Angreifer letztlich beliebigen JavaScript-Code im Kontext des Node-/Next.js-Prozesses ausführen.
  5. Post-Exploitation: Nach erreichter Codeausführung folgen typischerweise Zugriff auf Secrets, Installation von Backdoors, Kryptomining oder laterale Bewegung in internen Netzen.
Hinweis zu PoCs: Viele öffentliche „Proof-of-Concept“-Skripte sind unvollständig oder nutzen unsaubere Anwendungsmuster aus (z. B. direkten Aufruf von child_process.exec) statt der eigentlichen Schwachstelle. Solche PoCs sollten nicht unreflektiert gegen Produktivsysteme eingesetzt werden.

Erkennung & Telemetrie

Infrastruktur- & Runtime-Sicht

  • Prozessüberwachung: unerwartete Child-Prozesse (Shells, Kryptominer, Tools), die von Node-/Next.js-Servern gestartet werden.
  • Dateiaktivität: neu angelegte Binärdateien oder Skripte in App-/Temp-Verzeichnissen.
  • Netzwerkverhalten: Verbindungen von Webserver-Containern zu unbekannten Command-and-Control-Hosts.
  • Sicherheits-Sensoren: eBPF-/Syscall-basierte Werkzeuge (z. B. Falco-Regeln), die verdächtige Systemaufrufe aus Next.js-/Node-Prozessen erkennen.

HTTP-, Log- & Anwendungssicht

  • HTTP-Muster: große, binäre oder ungewöhnlich strukturierte Requests auf Routen, die mit Server Components oder Server Actions verknüpft sind.
  • Fehlermuster: Häufung von 5xx-Fehlern mit RSC-/Flight-bezogenen Stack-Traces, insbesondere von wenigen Quell-IP-Adressen.
  • WAF-/IDS-Regeln: aktuelle React2Shell-Signaturen der Security-Anbieter aktivieren, geblockte Requests protokollieren und prüfen.
  • Threat Hunting: verdächtige HTTP-Requests mit Systemevents (Prozessstarts, Tool-Aufrufe, Konfigurationsänderungen) korrelieren.

Empfohlene Maßnahmen & Priorisierung

1. Patching & Versionsmanagement (oberste Priorität)

  • React aktualisieren: betroffene RSC-Pakete auf gepatchte Versionen (mindestens 19.0.1, 19.1.2 oder 19.2.1) aktualisieren; Lockfiles und transitive Abhängigkeiten prüfen.
  • Next.js aktualisieren: auf eine der dokumentierten Fix-Versionen migrieren (z. B. 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7, 16.0.7 oder die entsprechenden Canaries).
  • Weitere RSC-Frameworks: Vendor-Advisories für React Router, Waku, Redwood, Expo etc. befolgen und empfohlene Updates einspielen.
  • Rebuild & Rollout: nach Updates Artefakte neu bauen und Deployments so aktualisieren, dass alte, verwundbare Bundles entfernt werden.

2. Härtung & temporäre Schutzmaßnahmen

  • WAF-Regeln: React2Shell-Signaturen aktivieren; verdächtige Multipart-/Binär-Requests auf RSC-/Server-Action-Routen blockieren.
  • Angriffsfläche reduzieren: nicht genutzte RSC-/Server-Action-Endpunkte deaktivieren; interne RSC-Funktionalität nicht direkt ins Internet exponieren.
  • Least Privilege: Berechtigungen für App-Container und Service-Accounts minimal halten (kein unnötiger Zugriff auf kritische Backendsysteme).

3. Forensik & Incident Response

  • Logs und Telemetriedaten ab Veröffentlichung der Advisories für alle exponierten Next.js-/RSC-Anwendungen auswerten.
  • Fokus auf Systeme, bei denen verdächtige HTTP-Requests und ungewöhnliche Prozessaktivität zusammenfallen.
  • Bei Verdacht: betroffene Systeme isolieren, Artefakte sichern (Container-Images, Logs, Speicherdumps) und strukturierte Incident-Response- Maßnahmen gemäß Ihren Playbooks durchführen.

FAQ für Kundengespräche

„Wir nutzen React im Frontend – sind wir automatisch betroffen?“

Nicht zwingend. React2Shell betrifft primär React Server Components auf der Serverseite. Klassische SPAs, die vollständig im Browser laufen und keinen RSC-Server verwenden, sind von dieser spezifischen Schwachstelle nicht betroffen – auch wenn andere Risiken bestehen können.

„Wir haben bereits gepatcht – sind wir fertig?“

Patching ist der wichtigste Schritt, aber nicht das Ende. Es sollte geprüft werden, ob die gepatchten Versionen überall ausgerollt wurden, ob es verdächtige Aktivität vor dem Patchen gab und ob unnötige RSC-Funktionalität exponiert war.

„Gibt es bereits aktive Angriffe?“

Ja. Sicherheitsanbieter berichten von automatisiertem Scanning und Exploit-Versuchen, auch durch bekannte APT-Gruppen. Organisationen mit internetexponierten Next.js-/RSC- Anwendungen sollten Log- und Telemetrie-Analysen priorisieren.

„Wie priorisieren wir React2Shell gegenüber anderen Schwachstellen?“

Wenn React Server Components aus dem Internet erreichbar sind, sollte React2Shell als höchste Priorität (P1) behandelt werden. In Umgebungen ohne RSC-Server ist die Priorität niedriger, dennoch sollte das Thema zeitnah im Rahmen des Patch-Managements adressiert werden.

Wie wir Sie bei React2Shell unterstützen können

Als spezialisiertes Sicherheitsteam unterstützen wir Organisationen dabei, React2Shell strukturiert und risikobasiert zu adressieren:

  • Remote Discovery & Voranalyse: Identifikation von Next.js-/RSC-Assets und Erstellung einer ersten Risikoeinschätzung (z. B. passive Stack-Checks, sichere Remote-Scans).
  • Repository- & Build-Analyse: Analyse von Abhängigkeiten, Lockfiles und CI/CD-Pipelines zur Identifikation verwundbarer Versionen und RSC-Nutzung.
  • Patching & Härtung: Unterstützung bei React-/Next.js-Upgrades, Konfigurationsanpassungen, WAF-Regeln und Plattformhärtung.
  • Detection Engineering & IR: Aufbau von Erkennungsregeln (SIEM, EDR, WAF) und Durchführung von Forensik/IR, wenn ein Kompromiss vermutet wird.

Nächste Schritte für interessierte Organisationen

  1. Schnelles Scoping: welche Anwendungen nutzen React / Next.js / moderne React-Frameworks und wo sind sie exponiert?
  2. Bereitstellung von Basisinformationen (Tech-Stack, Hosting, Cloud-/On-Prem-Setup, Logging-/Monitoring-Status).
  3. Gemeinsame Priorisierung kritischer Ziele sowie Planung von Analyse, Patching und – falls nötig – forensischen Maßnahmen.

Auf Wunsch stellen wir leichte Skripte bereit, mit denen Kunden eigene Repositories und Deployments auf React2Shell-Exposure prüfen können (z. B. Versionschecks für React RSC & Next.js).