
يوثّق هذا المستودع بحثًا في سلوك إلغاء التسلسل داخل مكوّنات خادم React (RSC) في Next.js باستخدام بروتوكول Flight، مع التركيز على كيفية تسبب أجسام multipart التالفة مقترنة بمعالجة طلبات Server Action في اجتياز النموذج الأولي وبدائيات تنفيذ على بعض الإصدارات.
يُوثّق هذا المستودع البحث حول CVE-2025-55182، المعروف أيضًا باسم React2Shell، وهي ثغرة حرجة في إلغاء التسلسل غير الآمن في React Server Components (RSC) والأطر التي تدمج بروتوكول RSC Flight، خاصةً Next.js App Router.
يركز هذا المحتوى على كيفية تسبب حمولات RSC / Flight غير الصالحة مقترنةً بمعالجة Server Function (Server Action) في تنفيذ JavaScript يتحكم فيه المهاجم على الخادم.
هذه المادة مخصّصة للفهم الدفاعي، وإعادة الإنتاج المخبري الخاضع للتحكم، والتوثيق. إنها ليست مجموعة أدوات استغلال جاهزة. لا تختبر إلا ضد الأنظمة التي تملكها أو لديك تفويض كتابي صريح لتقييمها.
يقع الخطأ الأساسي في تنفيذ RSC Flight على جانب الخادم. ويؤثر على حزم npm التالية وإصداراتها:
الحزم والإصدارات القابلة للاستغلال (Vulert)
react-server-dom-webpack
react-server-dom-parcel
react-server-dom-turbopack
الإصدارات المصححة (وفقًا لإشعار React) (Vulert)
يجب التعامل مع أي تطبيق يستخدم React 19 مع RSC وأحد الحزم القابلة للاستغلال على أنه متأثر حتى يتم ترقية هذه الحزم، حتى لو لم يعرّف Server Functions بشكل صريح.
يرث Next.js تنفيذ RSC القابل للاستغلال عند استخدام App Router. وتُتتبع المشكلة في Next.js باسم CVE-2025-66478، كما أنها مُقيّمة بـ CVSS 10.0. (SOCRadar® Cyber Intelligence Inc.)
إصدارات Next.js القابلة للاستغلال (App Router)
جميع البنيات التي تستخدم React 19 RSC مع:
next 15.x قبل:
next 16.x قبل 16.0.7
البنيات التجريبية (Canary) بدءًا من 14.3.0-canary.77 والإصدارات التجريبية الأحدث قبل الإصلاحات
وهذا يعني عمليًا:
create-next-app الافتراضية التي تستخدم App Router وReact 19 ضمن نطاق التأثر ما لم يتم تحديثها.غير متأثر في هذه الثغرة (وفقًا لتوجيهات البائع) (Black Kite)
يمكن أن يتأثر أي إطار أو أداة تجميع (bundler) توزّع حزم RSC القابلة للاستغلال. تشمل النظم البيئية المذكورة حاليًا: (Vulert)
@parcel/rsc@vitejs/plugin-rscإذا كانت الحزمة التقنية تستخدم React 19 مع أحد حزم react-server-dom-* القابلة للاستغلال، فافترض أنها متأثرة حتى يثبت العكس.
استنادًا إلى الإشعارات العامة وتقارير البائعين، يتسم الاستغلال بالخصائص التالية: (Vulert)
المصادقة
الإعدادات
react-server-dom-* قابلة للاستغلالchild_process.exec بأنفسهمالتعرض الشبكي
مسار الهجوم (بمستوى عالٍ)
تصف تقييمات CVSS 3.1 هذا بالشكل التالي:
في بيئات الاختبار الخاضعة للتحكم، وباستخدام إصدارات قابلة للاستغلال وتكوينات مفعّلة لـ RSC، أفاد الباحثون والبائعون بالتالي: (SOCRadar® Cyber Intelligence Inc.)