
Dieses Repository dokumentiert Forschung zum Deserialisierungsverhalten in Next.js React Server Components (RSC) unter Verwendung des Flight-Protokolls. Es konzentriert sich darauf, wie fehlerhafte Multipart-Bodies in Kombination mit der Verarbeitung von Server-Action-Anfragen auf bestimmten Builds zu Prototype-Traversal- und Ausführungs-Primitiven führen können.
Dieses Repository dokumentiert Forschung zu CVE-2025-55182, auch bekannt als React2Shell, einer kritischen Schwachstelle durch unsichere Deserialisierung in React Server Components (RSC) und Frameworks, die das RSC-Flight-Protokoll einbetten, insbesondere den Next.js App Router.
Der Schwerpunkt liegt hier darauf, wie fehlerhafte RSC-/Flight-Payloads in Kombination mit der Verarbeitung von Server Functions (Server Actions) zur Ausführung von angreiferkontrolliertem JavaScript auf dem Server führen können.
Dieses Material dient dem defensiven Verständnis, der kontrollierten Reproduktion im Labor und der Dokumentation. Es handelt sich nicht um ein gebrauchsfertiges Exploit-Toolkit. Testen Sie ausschließlich Systeme, die Ihnen gehören oder für deren Bewertung Sie eine ausdrückliche schriftliche Genehmigung besitzen.
Der Kernfehler liegt in der serverseitigen RSC-Flight-Implementierung. Er betrifft die folgenden npm-Pakete und Versionen:
Verwundbare Pakete und Versionen (Vulert)
react-server-dom-webpack
react-server-dom-parcel
react-server-dom-turbopack
Gepatchte Versionen (laut React-Advisory) (Vulert)
Jede Anwendung, die React 19 mit RSC und eines der verwundbaren Pakete verwendet, sollte bis zu einem Upgrade als betroffen behandelt werden, auch wenn sie keine Server Functions explizit definiert.
Next.js erbt die verwundbare RSC-Implementierung, wenn der App Router verwendet wird. Das Problem wird für Next.js als CVE-2025-66478 geführt und ebenfalls mit CVSS 10.0 bewertet. (SOCRadar® Cyber Intelligence Inc.)
Verwundbare Next.js-Versionen (App Router)
Alle Builds, die React 19 RSC verwenden, mit:
next 15.x vor:
next 16.x vor 16.0.7
Canary-Builds ab 14.3.0-canary.77 sowie spätere Canary-Releases vor den Fixes
In der Praxis bedeutet das:
create-next-app-Projekte, die den App Router und React 19 verwenden, fallen in den Anwendungsbereich, sofern sie nicht aktualisiert werden.Nicht betroffen von dieser CVE (gemäß Herstellerangaben) (Black Kite)
Jedes Framework oder jeder Bundler, der die verwundbaren RSC-Pakete ausliefert, kann betroffen sein. Derzeit gelistete Ökosysteme umfassen: (Vulert)
@parcel/rsc@vitejs/plugin-rscWenn ein Stack React 19 zusammen mit einem der verwundbaren react-server-dom-*-Pakete verwendet, ist davon auszugehen, dass er betroffen ist, bis das Gegenteil bewiesen ist.
Basierend auf öffentlichen Advisories und Herstelleranalysen weist die Ausnutzung die folgenden Merkmale auf: (Vulert)
Authentifizierung
Konfiguration
react-server-dom-*-Paketschild_process.exec selbst zu definierenNetzwerkexposition
Angriffsablauf (Überblick)
CVSS-3.1-Bewertungen beschreiben dies wie folgt:
In kontrollierten Testumgebungen berichten Forscher und Hersteller bei Verwendung verwundbarer Versionen und RSC-aktivierter Konfigurationen von Folgendem: (SOCRadar® Cyber Intelligence Inc.)