[{"data":1,"prerenderedAt":236},["ShallowReactive",2],{"news-react2shell-sicherheitsluecke-nextjs":3},{"id":4,"title":5,"author":6,"body":7,"cover":224,"date":225,"description":226,"extension":227,"hero":228,"meta":229,"navigation":230,"path":231,"seo":232,"showContactForm":233,"showTechNav":233,"stem":234,"__hash__":235},"content\u002Fnews\u002Freact2shell-sicherheitsluecke-nextjs.md","React2Shell: Kritische Lücke in React Server Components und Next.js","Thomas K.",{"type":8,"value":9,"toc":216},"minimark",[10,14,19,22,25,45,55,59,62,65,69,86,120,128,141,171,175,184,188,212],[11,12,13],"p",{},"Eine kritische Lücke in React Server Components erlaubt Angreifern, ohne Anmeldung Code auf Ihrem Server auszuführen, und wird bereits aktiv ausgenutzt. Welche React- und Next.js-Anwendungen betroffen sind und was Sie jetzt sofort tun sollten.",[15,16,18],"h2",{"id":17},"was-ist-passiert","Was ist passiert?",[11,20,21],{},"Am 3. Dezember 2025 hat das React-Team eine Sicherheitslücke mit der Kennung CVE-2025-55182 veröffentlicht, die inzwischen unter dem Namen „React2Shell“ bekannt ist. Gemeldet hatte sie der Sicherheitsforscher Lachlan Davidson am 29. November über das Bug-Bounty-Programm von Meta. Die Bewertung liegt bei CVSS 10.0, dem Höchstwert.",[11,23,24],{},"Die Ursache liegt darin, wie React Anfragen an Server-Function-Endpunkte dekodiert. Das dabei verwendete Flight-Protokoll deserialisiert Daten auf unsichere Weise. Ein Angreifer kann mit einer einzigen präparierten HTTP-Anfrage beliebigen Code auf dem Server ausführen, ohne sich vorher anmelden zu müssen.",[11,26,27,28,32,33,36,37,40,41,44],{},"Betroffen sind die Pakete ",[29,30,31],"code",{},"react-server-dom-webpack",", ",[29,34,35],{},"react-server-dom-parcel"," und ",[29,38,39],{},"react-server-dom-turbopack"," in den Versionen 19.0, 19.1.0, 19.1.1 und 19.2.0. Behoben ist die Lücke in 19.0.1, 19.1.2 und 19.2.1. Next.js führt das Problem als CVE-2025-66478: Verwundbar sind Anwendungen mit App Router unter Next.js 15.x und 16.x sowie Canary-Versionen ab 14.3.0-canary.77. Laut React-Team kann eine Anwendung auch dann angreifbar sein, wenn sie selbst gar keine Server Functions implementiert, solange sie React Server Components unterstützt. Ein frisch mit ",[29,42,43],{},"create-next-app"," erzeugtes Projekt genügt.",[11,46,47,48,32,51,54],{},"Neben Next.js nennt das React-Team weitere betroffene Frameworks und Bundler, darunter React Router, Waku, ",[29,49,50],{},"@vitejs\u002Fplugin-rsc",[29,52,53],{},"@parcel\u002Frsc"," und RedwoodSDK. Sicherheitsforscher beobachten seit dem 4. Dezember aktive Angriffe, laut AWS unter anderem durch Gruppen mit Verbindungen nach China.",[15,56,58],{"id":57},"warum-betrifft-sie-das","Warum betrifft Sie das?",[11,60,61],{},"Next.js ist für viele Unternehmenswebsites, Kundenportale und Shops die Basis. Eine Lücke, die ohne Anmeldung zur Codeausführung führt, bedeutet im schlimmsten Fall: Angreifer lesen Umgebungsvariablen mit Datenbank-Passwörtern und API-Schlüsseln aus, installieren Schadsoftware oder nutzen den Server als Sprungbrett ins interne Netz. Berichten zufolge versuchten Angreifer genau das, unter anderem den Diebstahl von Cloud-Zugangsdaten.",[11,63,64],{},"Nicht betroffen sind reine Client-Anwendungen ohne Server sowie Projekte, die kein Framework mit Unterstützung für React Server Components einsetzen. Next.js-Anwendungen mit Pages Router, die Edge Runtime sowie stabile Versionen von Next.js 13 und 14 sind laut Next.js-Team ebenfalls nicht betroffen.",[15,66,68],{"id":67},"was-sie-jetzt-tun-sollten","Was Sie jetzt tun sollten",[70,71,72,80],"ul",{},[73,74,75,79],"li",{},[76,77,78],"strong",{},"Inventar erstellen:"," Listen Sie alle Anwendungen auf, die React 19 oder Next.js nutzen, auch interne Tools, Prototypen und Projekte von Agenturen oder Freelancern.",[73,81,82,85],{},[76,83,84],{},"Versionen prüfen:"," Im Projektverzeichnis zeigt npm die tatsächlich installierten Versionen:",[87,88,93],"pre",{"className":89,"code":90,"language":91,"meta":92,"style":92},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npm ls next react-server-dom-webpack react-server-dom-turbopack react-server-dom-parcel\n","bash","",[29,94,95],{"__ignoreMap":92},[96,97,100,104,108,111,114,117],"span",{"class":98,"line":99},"line",1,[96,101,103],{"class":102},"sBMFI","npm",[96,105,107],{"class":106},"sfazB"," ls",[96,109,110],{"class":106}," next",[96,112,113],{"class":106}," react-server-dom-webpack",[96,115,116],{"class":106}," react-server-dom-turbopack",[96,118,119],{"class":106}," react-server-dom-parcel\n",[70,121,122],{},[73,123,124,127],{},[76,125,126],{},"Patchen:"," Aktualisieren Sie auf die gepatchte Version Ihrer Release-Linie, für Next.js mindestens 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7 bzw. 16.0.7. Das Next.js-Team stellt zusätzlich ein Hilfswerkzeug bereit:",[87,129,131],{"className":89,"code":130,"language":91,"meta":92,"style":92},"npx fix-react2shell-next\n",[29,132,133],{"__ignoreMap":92},[96,134,135,138],{"class":98,"line":99},[96,136,137],{"class":102},"npx",[96,139,140],{"class":106}," fix-react2shell-next\n",[70,142,143,153,159,165],{},[73,144,145,148,149,152],{},[76,146,147],{},"Neu bauen und deployen:"," Ein Update der ",[29,150,151],{},"package.json"," allein reicht nicht. Lockfile aktualisieren, Container-Images neu bauen und in allen Umgebungen ausrollen.",[73,154,155,158],{},[76,156,157],{},"Geheimnisse rotieren:"," Wenn Ihre Anwendung am 4. Dezember ungepatcht online war, empfiehlt das Next.js-Team, alle genutzten Secrets zu erneuern, beginnend mit den kritischsten.",[73,160,161,164],{},[76,162,163],{},"Logs prüfen:"," Suchen Sie nach auffälligen POST-Anfragen und unerwarteten Prozessen auf Ihren Servern.",[73,166,167,170],{},[76,168,169],{},"WAF nur als Überbrückung:"," Cloud-Anbieter wie Cloudflare, AWS oder Vercel haben Filterregeln ausgerollt. Diese fangen bekannte Angriffsmuster ab, ersetzen aber kein Update. Einen Workaround per Konfiguration gibt es laut Next.js nicht.",[15,172,174],{"id":173},"fazit","Fazit",[11,176,177,178,183],{},"React2Shell gehört zu den gravierendsten Lücken im JavaScript-Ökosystem der letzten Jahre: maximal bewertet, einfach auszunutzen und bereits aktiv angegriffen. Wer React Server Components oder Next.js mit App Router einsetzt, sollte heute patchen und nicht auf das nächste Release-Fenster warten. Wenn Sie Hilfe bei der Bestandsaufnahme oder beim Update Ihrer Anwendungen brauchen, ",[179,180,182],"a",{"href":181},"\u002Fkontakt","sprechen Sie uns an",".",[15,185,187],{"id":186},"quellen","Quellen",[70,189,190,198,205],{},[73,191,192],{},[179,193,197],{"href":194,"rel":195},"https:\u002F\u002Freact.dev\u002Fblog\u002F2025\u002F12\u002F03\u002Fcritical-security-vulnerability-in-react-server-components",[196],"nofollow","Critical Security Vulnerability in React Server Components – React Blog",[73,199,200],{},[179,201,204],{"href":202,"rel":203},"https:\u002F\u002Fnextjs.org\u002Fblog\u002FCVE-2025-66478",[196],"Security Advisory: CVE-2025-66478 – Next.js Blog",[73,206,207],{},[179,208,211],{"href":209,"rel":210},"https:\u002F\u002Finvicti.com\u002Fblog\u002Fweb-security\u002Freact2shell-critical-rce-in-react-rsc-next-js-cve-2025-55182-cve-2025-66478",[196],"React2Shell: Critical RCE in React RSC and Next.js – Invicti",[213,214,215],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":92,"searchDepth":217,"depth":217,"links":218},2,[219,220,221,222,223],{"id":17,"depth":217,"text":18},{"id":57,"depth":217,"text":58},{"id":67,"depth":217,"text":68},{"id":173,"depth":217,"text":174},{"id":186,"depth":217,"text":187},"\u002Fimages\u002Fnews\u002Freact2shell-sicherheitsluecke-nextjs.webp","2025-12-10","Eine kritische Lücke in React Server Components erlaubt Codeausführung auf Ihrem Server. Welche Next.js-Apps betroffen sind und was Sie jetzt tun sollten.","md",null,{},true,"\u002Fnews\u002Freact2shell-sicherheitsluecke-nextjs",{"title":5,"description":226},false,"news\u002Freact2shell-sicherheitsluecke-nextjs","f1kQoxP8elaxlcObWQFOzjt-9liYofQe3V1zHtrzvzA",1793714089452]