
اكتشف ثغرة CVE-2025-55182 (React2Shell) RCE في مكونات الخادم الخاصة بـ React. ماسح ضوئي سريع ودقيق بدون نتائج إيجابية خاطئة.
CVSS 10.0 RCE في مكونات React الخادمية. هل تطبيقك المستند إلى React 19 معرض للخطر؟
ماسح سريع ودقيق لثغرة CVE-2025-55182 (React2Shell) - ثغرة تنفيذ أوامر عن بُعد خطيرة تم استغلالها في بيئات الإنتاج. بدون نتائج إيجابية خاطئة مع كشف ذكي لمكونات الخادم.
React2Shell هي ثغرة قصوى الخطورة (CVSS 10.0) في مكونات React الخادمية تسمح بتنفيذ أوامر عن بُعد دون مصادقة. يمكن للمهاجمين استغلالها عبر طلبات HTTP مصممة خصيصًا لنقاط نهاية الدوال الخادمية.
حقائق رئيسية:
⚠️ ملاحظة مهمة: فقط React 19.x معرضة للخطر. React 18.x والإصدارات الأقدم غير متأثرة.
# الخيار أ: ماسح Node.js (موصى به - متعدد المنصات، بدون تبعيات)
npx react2shell-scanner /path/to/your/project
# الخيار ب: تحميل وتشغيل مباشر
curl -sSL https://raw.githubusercontent.com/nxgn-kd01/react2shell-scanner/main/scan.js > scan.js
node scan.js /path/to/your/project
# الخيار ج: استنساخ وتشغيل
git clone https://github.com/nxgn-kd01/react2shell-scanner.git
cd react2shell-scanner
node scan.js /path/to/your/project
نتائج في ثوان: 🚨 معرض للخطر | ⚠️ تحذيرات | ✅ آمن
تقوم هذه الأداة بكشف الثغرات بشكل ذكي:
'use server''use server'| الخاصية | القيمة |
|---|---|
| CVE ID | CVE-2025-55182 |
| الاسم | React2Shell |
| درجة CVSS | 10.0 (حرج) |
| متجه CVSS | AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
| ناقل الهجوم | الشبكة |
| المصادقة | لا حاجة |
| الأثر | اختراق كامل للنظام |
React:
19.0.0, 19.1.0, 19.1.1, 19.2.0حزم React Server DOM:
react-server-dom-webpack 19.0.0 - 19.2.0react-server-dom-parcel 19.0.0 - 19.2.0react-server-dom-turbopack 19.0.0 - 19.2.0Next.js:
14.0.0 إلى 14.2.3414.3.0-canary.0 إلى 14.3.0-canary.8715.0.0 إلى 15.0.615.1.0 إلى 15.1.815.2.0 إلى 15.2.515.3.0 إلى 15.3.515.4.0 إلى 15.4.715.5.0 إلى 15.5.616.0.0 إلى 16.0.9أطر إضافية متأثرة (حسب الإعلان الرسمي من React):
react-router 7.0.0 - 7.1.3waku 0.21.0 - 0.21.5@parcel/rsc 2.12.0 - 2.13.2@vitejs/plugin-rsc 0.1.0 - 0.2.0rwsdk (Redwood SDK) 0.1.0 - 0.4.0expo 52.0.0 - 52.0.9React: 19.2.1 أو أحدث
Next.js:
14.2.35+, 14.3.0-canary.88+15.0.7+, 15.1.9+, 15.2.6+, 15.3.6+, 15.4.8+, 15.5.7+16.0.10+أطر أخرى:
react-router: 7.1.4+waku: 0.21.6+@parcel/rsc: 2.13.3+@vitejs/plugin-rsc: 0.2.1+rwsdk: 0.4.1+expo: 52.0.10+ماسح Node.js (موصى به):
ماسح Bash:
# تثبيت jq (إذا كنت تستخدم ماسح Bash)
# macOS
brew install jq
# Ubuntu/Debian
sudo apt-get install jq
# RHEL/CentOS
sudo yum install jq
الخيار أ: الاستنساخ (موصى به للمستخدمين)
# استنساخ المستودع
git clone https://github.com/nxgn-kd01/react2shell-scanner.git
cd react2shell-scanner
# جعل البرامج النصية قابلة للتنفيذ
chmod +x scan.sh scan.js
الخيار ب: التفرع (موصى به للمساهمين)
# تفرع على GitHub (انقر على زر "Fork" في صفحة المستودع)
# ثم استنساخ التفرع الخاص بك
git clone https://github.com/YOUR_USERNAME/react2shell-scanner.git
cd react2shell-scanner
# جعل البرامج النصية قابلة للتنفيذ
chmod +x scan.sh scan.js
# إضافة ال remote upstream للبقاء محدثًا
git remote add upstream https://github.com/nxgn-kd01/react2shell-scanner.git
الخيار ج: التحميل المباشر
# إصدار Node.js (موصى به - متعدد المنصات)
curl -O https://raw.githubusercontent.com/nxgn-kd01/react2shell-scanner/main/scan.js
chmod +x scan.js
# إصدار Bash (Unix/Linux/macOS فقط)
curl -O https://raw.githubusercontent.com/nxgn-kd01/react2shell-scanner/main/scan.sh
chmod +x scan.sh
🔍 فحص الدليل الحالي:
# باستخدام Node.js (موصى به)
node scan.js
# باستخدام Bash
./scan.sh
📁 فحص مشروع محدد:
node scan.js /path/to/project
./scan.sh /path/to/project
🗂️ فحص متكرر (جميع الأدلة الفرعية):
node scan.js -r
./scan.sh -r
إخراج JSON (للأتمتة):
node scan.js --json
./scan.sh --json
وضع CI/CD (يخرج برمز 1 إذا كان معرضًا للخطر):
node scan.js --ci
./scan.sh --ci
إخراج مفصل:
node scan.js -v
./scan.sh -v
دمج الخيارات:
node scan.js /path/to/projects -r --json --ci
./scan.sh /path/to/projects -r --json --ci
| الخيار | الوصف |
|---|---|
-r, --recursive | فحص جميع الأدلة الفرعية بحثًا عن مشاريع Node.js |
-v, --verbose | عرض إخراج مفصل |
--json | إخراج النتائج بصيغة JSON |
--ci | الخروج برمز 1 إذا تم العثور على ثغرات (لـ CI/CD) |
-h, --help | عرض رسالة المساعدة |
| الرمز | المعنى |
|---|---|
| 0 | لم يتم العثور على ثغرات |
| 1 | تم العثور على ثغرات (عند استخدام علامة --ci) |
| 2 | حدث خطأ في الفحص |
$ node scan.js ~/my-react-app
╔════════════════════════════════════════════════════════════╗
║ CVE-2025-55182 Scanner (React2Shell) ║
╚════════════════════════════════════════════════════════════╝
Severity: CRITICAL (CVSS 10.0)
Description: Unauthenticated RCE in React Server Components
Scan Summary:
Total projects: 1
Vulnerable: 1
Safe: 0
⚠ VULNERABLE PROJECTS FOUND:
1. /Users/user/my-react-app
└─ react 19.0.0 → 19.2.1
└─ next 15.0.3 → 15.0.5
Fix command:
$ cd /Users/user/my-react-app
$ npm install [email protected] [email protected]
$ node scan.js ~/projects -r --json > results.json