
ماسح أمني لكشف الثغرات الأمنية CVE-2025-55182 و CVE-2025-66478 في مشاريع React Server Components (RSC)
أداة فحص أمني شاملة للكشف عن ثغرات CVE-2025-55182 وCVE-2025-66478 في مشاريع React وNext.js التي تستخدم مكونات خادم React (RSC).
تفحص هذه الأداة مشروعك بحثًا عن الإصدارات المعرضة للخطر من React وNext.js وحزم RSC ذات الصلة التي قد تكون عرضة لهجمات تنفيذ الأوامر عن بُعد (RCE). تتيح هذه الثغرة للمهاجمين غير المصادق عليهم تنفيذ تعليمات برمجية عشوائية على الخادم الخاص بك.
⚠️ تنبيه حرج: اعتبارًا من ديسمبر 2025، ما يقرب من 39% من البيئات السحابية تحتوي على نسخ من Next.js أو React بإصدارات معرضة للخطر. يلزم اتخاذ إجراء فوري إذا كنت تستخدم مكونات خادم React.
node_modules بحثًا عن إصدارات الحزم المعرضة للخطر"use server" في قاعدة التعليمات البرمجية الخاصة بك| الحزمة | الوصف |
|---|---|
react | مكتبة React الأساسية |
next | إطار عمل Next.js |
react-server-dom-webpack | تكامل RSC مع Webpack |
react-server-dom-parcel | تكامل RSC مع Parcel |
react-server-dom-turbopack | تكامل RSC مع Turbopack |
check.js:git clone https://github.com/yourusername/check-react-rce-cve-2025-55182.git
cd /path/to/your/project
node /path/to/check.js
يمكنك أيضًا نسخ check.js مباشرة إلى مشروعك وتشغيله:
node check.js
===========================================================================
REACT RCE VULNERABILITY SCANNER (CVE-2025-55182)
===========================================================================
Scanning installed packages...
Starting Deep Codebase Scanning...
===========================================================================
AUDIT REPORT
===========================================================================
[CVE-2025-55182] React Vulnerability
---------------------------------------------------------------------------
react : 19.0.0 VULNERABLE (React 19.0.0 < 19.0.1)
react-server-dom-webpack : 19.0.0 VULNERABLE (19.0.0 < 19.0.1)
[CVE-2025-66478] Next.js Vulnerability
---------------------------------------------------------------------------
next : 15.0.3 VULNERABLE (v15.0.x < 15.0.5)
[Project Analysis]
---------------------------------------------------------------------------
Router Type : App Router (RSC-enabled)
Server Actions Usage : Detected (5 files)
===========================================================================
RISK CONCLUSION: CRITICAL (CVSS 10.0 - Remote Code Execution)
===========================================================================
⚠ ACTION REQUIRED:
Your project uses React Server Components with vulnerable packages.
This vulnerability allows unauthenticated remote code execution.
Vulnerable packages: react, next, react-server-dom-webpack
Run the following commands to patch:
> npm install react@latest react-dom@latest
> npm install next@latest
> npm update react-server-dom-webpack react-server-dom-parcel react-server-dom-turbopack
| المستوى | الوصف |
|---|---|
| 🔴 حرجة | تم اكتشاف حزم معرضة للخطر + ميزات RSC قيد الاستخدام. يلزم اتخاذ إجراء فوري. |
| 🟡 متوسطة | تم اكتشاف حزم معرضة للخطر، لكن لم يتم اكتشاف RSC بنشاط. يُنصح بالتحديث. |
| 🟢 آمنة | لا توجد حزم معرضة للخطر أو استخدام إصدارات تسبق دعم RSC. |
| الحالة | المعنى |
|---|---|
VULNERABLE | إصدار الحزمة متأثر بالثغرة (CVE) |
SAFE | الحزمة محدثة إلى إصدار مصحح |
SAFE_CLASSIC | إصدار الحزمة يسبق RSC (غير متأثر) |
NOT INSTALLED | الحزمة غير موجودة في المشروع |
UNKNOWN | تعذر تحديد حالة الإصدار |
| الفرع | الإصدارات المعرضة للخطر | الإصدار المصحح |
|---|---|---|
| React 19.0.x | 19.0.0 | ≥ 19.0.1 |
| React 19.1.x | 19.1.0, 19.1.1 | ≥ 19.1.2 |
| React 19.2.x | 19.2.0 | ≥ 19.2.1 |
| React 18.x والإصدارات الأقدم | — | غير متأثر (بدون دعم RSC) |
| الفرع | الإصدار المصحح |
|---|---|
| Next.js 16.0.x | ≥ 16.0.7 |
| Next.js 15.5.x | ≥ 15.5.7 |
| Next.js 15.4.x | ≥ 15.4.8 |
| Next.js 15.3.x | ≥ 15.3.6 |
| Next.js 15.2.x | ≥ 15.2.6 |
| Next.js 15.1.x | ≥ 15.1.9 |
| Next.js 15.0.x | ≥ 15.0.5 |
| Next.js 14.3.0-canary.77+ | ⚠️ معرض للخطر (نسخة تجريبية مع بروتوكول Flight) |
| Next.js 14.x (مستقر) | غير متأثر |
| Next.js 13.x | غير متأثر |
الإعدادات التالية غير متأثرة بهذه الثغرات:
شدة الخطورة: حرجة (CVSS 10.0)
الحزم المتأثرة:
react-server-dom-webpackreact-server-dom-parcelreact-server-dom-turbopackنوع الثغرة: إلغاء تسلسل غير آمن
الوصف:
توجد ثغرة حرجة لتنفيذ الأوامر عن بُعد (RCE) في حزمة react-server، والتي تُعد جزءًا لا يتجزأ من مكونات خادم React (RSC). يعود السبب الجذري لهذه الثغرة إلى إلغاء تسلسل غير آمن داخل بروتوكول "Flight" الخاص بـ RSC.
تسمح هذه الثغرة لمهاجم غير مصادق بتحقيق تنفيذ أوامر عن بُعد على الخادم من خلال إرسال طلب HTTP مُصمم خصيصًا إلى أي نقطة نهاية لدوال الخادم. حتى التطبيقات التي لا تنفذ بشكل صريح نقاط نهاية دوال خادم React قد تكون معرضة للخطر إذا كانت تدعم مكونات خادم React، حيث تؤثر الثغرة على التكوينات الافتراضية.
متجه الهجوم:
التأثير:
المراجع:
شدة الخطورة: حرجة (CVSS 10.0)
الحزمة المتأثرة: next
نوع الثغرة: إلغاء تسلسل غير آمن (موروثة من RSC الخاصة بـ React)
الوصف: ثغرة حرجة لتنفيذ الأوامر عن بُعد في Next.js تؤثر على التطبيقات التي تستخدم App Router مع مكونات خادم React. تُعد هذه الثغرة مظهرًا سفليًا لثغرة CVE-2025-55182، حيث ترثها Next.js من خلال تنفيذها لبروتوكول React Flight.
تسمح هذه الثغرة للمهاجمين غير المصادق عليهم بتنفيذ تعليمات برمجية عشوائية على الخوادم المتأثرة من خلال إرسال طلبات HTTP مُصممة خصيصًا تستغل المعالجة غير الآمنة لحمولات RSC.
متجه الهجوم:
التأثير:
المراجع:
تؤثر ثغرة بروتوكول React Flight على أي إطار عمل أو أداة تجميع تنفذ مكونات خادم React. إذا كان مشروعك يستخدم أيًا مما يلي، فيجب عليك التحقق من تصحيح حزم React لديك:
| الإطار/الأداة | الحالة | ملاحظات |
|---|---|---|
| Next.js | ⚠️ متأثر | الإطار الأساسي الذي يستخدم RSC. حدّث إلى الإصدارات المصححة. |
| React Router | ⚠️ متأثر | عند استخدام وضع RSC، تحقق من تحديث حزم React. |
| Waku | ⚠️ متأثر | إطار RSC مصغر. يجب استخدام إصدارات React المصححة. |
| RedwoodJS (rwsdk) | ⚠️ متأثر | يستخدم rwsdk تقنية RSC. تأكد من تصحيح حزم React. |
| Parcel | ⚠️ متأثر | إذا كنت تستخدم @parcel/rsc، تحقق من حزم React. |
| Vite | ⚠️ متأثر | إذا كنت تستخدم @vitejs/plugin-rsc، تحقق من حزم React. |
| Remix | ⚠️ متأثر محتمل | إذا كنت تستخدم ميزات RSC التجريبية، فتأكد من تصحيح حزم React. |
أي تطبيق يستخدم مكونات خادم React قد يكون عرضة للخطر. تكمن الثغرة الأساسية في تنفيذ React لتقنية RSC، لذلك بغض النظر عن الإطار الذي تستخدمه، يجب عليك تحديث حزم React (
reactوreact-domوreact-server-dom-*) إلى الإصدارات المصححة.
قام مزودو السحابة الرئيسيون بنشر قواعد جدار حماية تطبيقات الويب (WAF) بشكل استباقي للحماية من هذه الثغرات. ومع ذلك، تُعد حماية WAF إجراءً مؤقتًا ولا تلغي الحاجة إلى تصحيح تطبيقاتك.
| الميزة | التفاصيل |
|---|---|
| الحالة | ✅ محمي |
| التغطية | جميع العملاء (مجاني، Pro، Business، Enterprise) |
| المتطلب | يجب تمرير حركة المرور عبر WAF الخاص بـ Cloudflare |
| الإجراء المطلوب | تأكد من تفعيل القواعد المدارة (Pro/Enterprise) |
| ملاحظة | Cloudflare Workers محصنة بطبيعتها ضد هذا الاستغلال |
قامت Cloudflare بنشر قواعد WAF جديدة لحظر محاولات استغلال ثغرة CVE-2025-55182 تلقائيًا. جميع العملاء الذين تمر حركة مرور تطبيقات React الخاصة بهم عبر Cloudflare يتمتعون بحماية تلقائية.
للتحقق من الحماية:
| الميزة | التفاصيل |
|---|---|
| الحالة | ✅ محمي |
| مجموعة القواعد | AWSManagedRulesKnownBadInputsRuleSet (v1.24+) |
| التغطية | عملاء AWS WAF الذين يستخدمون القواعد المدارة |
| الإجراء المطلوب | تحقق من أن إصدار مجموعة القواعد هو 1.24 أو أحدث |
قامت AWS بدمج قواعد محدثة لثغرة CVE-2025-55182 في الإصدار الافتراضي (1.24) من مجموعة القواعد المدارة لـ AWS WAF.
لتفعيل الحماية:
# Verify your rule set version in AWS Console
# Security → WAF → Web ACLs → [Your ACL] → Rules
خيار القاعدة المخصصة: للحماية الفورية، يمكنك نشر قواعد AWS WAF مخصصة لاكتشاف ومنع محاولات الاستغلال:
{
"Name": "BlockReactRCE",
"Priority": 0,
"Statement": {
"ByteMatchStatement": {
"SearchString": "rsc-payload-exploit-pattern",
"FieldToMatch": { "Body": {} },
"TextTransformations": [{ "Priority": 0, "Type": "NONE" }],
"PositionalConstraint": "CONTAINS"
}
},
"Action": { "Block": {} }
}
ملاحظة: خدمات AWS المدارة غير متأثرة عمومًا، لكن يجب تحديث التطبيقات التي تعمل بإصدارات React/Next.js معرضة للخطر في بيئتك الخاصة على الفور.
| الميزة | التفاصيل |
|---|---|
| الحالة | ✅ محمي |
| مجموعة القواعد | مجموعة القواعد الافتراضية (DRS) 2.1 |
| التغطية | عملاء Azure WAF |
| الإجراء المطلوب | تحقق من استخدام DRS 2.1 أو أنشئ قواعد مخصصة |
يمكن لـ Azure WAF مع أحدث مجموعة قواعد افتراضية (DRS) 2.1 اكتشاف بعض محاولات استغلال هذه الثغرة.
لتفعيل الحماية:
مثال على قاعدة مخصصة: يمكن للمؤسسات إنشاء قواعد WAF مخصصة مصممة خصيصًا لحظر نمط الاستغلال. توصي Azure بالتحقق من القواعد المخصصة في بيئة اختبار قبل النشر في بيئة الإنتاج.
| الميزة | التفاصيل |
|---|---|
| الحالة | ✅ محمي |
| الخدمة | Cloud Armor |
| التغطية | عملاء Cloud Armor |
| الإجراء المطلوب | فعّل قواعد WAF المهيأة مسبقًا |
توفر Google Cloud Armor الحماية من خلال قواعد WAF المهيأة مسبقًا ويمكن تكوينها بسياسات أمنية مخصصة.
لتفعيل الحماية:
| الميزة | التفاصيل |
|---|---|
| الحالة | ✅ محمي |
| التغطية | جميع عمليات النشر على Vercel |
| الإجراء المطلوب | لا يزال يتعين تحديث Next.js إلى الإصدار المصحح |
نفذت Vercel إجراءات تخفيف على مستوى المنصة لحماية التطبيقات المستضافة. ومع ذلك، توصي Vercel بشدة بتحديث Next.js إلى الإصدارات المصححة.
⚠️ حماية WAF إجراء مؤقت. تؤكد جميع مزودي السحابة على ما يلي:
- لا تعمل جدران الحماية WAF على إصلاح الثغرة - فهي تحظر أنماط الاستغلال المعروفة فقط
- قد يتمكن المهاجمون من تجاوز WAF - فالمتغيرات الجديدة للاستغلال قد تفلت من الاكتشاف
- التصحيح إلزامي - حدّث إلى الإصدارات المُصلحة فورًا
- أعد بناء التطبيقات - بعد الترقية، أعد البناء لضمان استخدام التبعيات المصححة
شغّل الأوامر التالية في دليل مشروعك:
# Update React packages
npm install react@latest react-dom@latest
# Update Next.js (if using)
npm install next@latest
# Update RSC packages (if present)
npm update react-server-dom-webpack react-server-dom-parcel react-server-dom-turbopack
# IMPORTANT: Rebuild your application
npm run build
بعد التحديث، شغّل الماسح مرة أخرى للتأكد من تصحيح جميع الثغرات:
node check.js
يجب أن يُظهر الإخراج المتوقع ما يلي:
RISK CONCLUSION: SAFE
✓ Your system is safe from CVE-2025-55182 and CVE-2025-66478.
| التاريخ | الحدث |
|---|---|
| 3 ديسمبر 2025 | تم الكشف عن الثغرة من قبل باحثين أمنيين |
| 3 ديسمبر 2025 | تم تخصيص CVE-2025-55182 وCVE-2025-66478 |
| 3 ديسمبر 2025 | ينشر فريق React نشرة أمنية |
| 3 ديسمبر 2025 | يصدر فريقا React وNext.js تصحيحات |
| 3 ديسمبر 2025 | ينشر مزودو السحابة حمايات WAF |
| 3 ديسمبر 2025 | لم يتم الإبلاغ عن أي حالات استغلال في البيئات الحقيقية |
رخصة MIT - راجع LICENSE للحصول على التفاصيل.
ابقَ بأمان! 🔐