
معمل Docker معزول وماسح ضوئي ثابت لـ CVE-2025-55182، مع إصدارات Next.js القابلة للاختراق/المصححة والتحقق من صحة PoC لإلغاء تسلسل RSC Flight.
إخلاء مسؤولية: تم إنشاء هذا المستودع وملحقات إثبات المفهوم (PoC) فيه لأغراض تعليمية وبحثية وعرض أمني دفاعي فقط داخل بيئة مختبر معزولة. يُحظر تمامًا إجراء اختبارات غير مصرح بها ضد الأنظمة الخارجية.
يوفر هذا المستودع بيئة Docker قابلة لإعادة الإنتاج مكوّنة من حاويتين، مصممة لتحليل واستغلال والتحقق من التخفيفات الخاصة بثغرة إلغاء تسلسل بروتوكول Flight في مكونات خادم React (RSC)، والتي يُشار إليها شائعًا باسم React2Shell / CVE-2025-55182. يعرض المختبر تأثير ما بعد الاستغلال على بناء Next.js غير مصحح، ويُثبت فعالية التخفيفات على بناء مصحح.
http://127.0.0.1:3001 (حاوية react2shell-vulnerable)http://127.0.0.1:3002 (حاوية react2shell-patched)internal: true).127.0.0.1 (localhost) لمنع الوصول الخارجي عبر الشبكة المحلية.DUMMY_SECRET=LAB_VULNERABLE_SECRET_DO_NOT_USE_12345) لاختبار تسريب البيانات لتجنب تعريض بيانات حساسة.24.0.0+, Compose v2.20.0+)3.8+ — المكتبة القياسية فقط للأتمتة الأساسية)استنسخ المستودع وتحقق من بيئتك المحلية:
git clone https://github.com/PhanHoangKhang/React2Shell.git
انتقل إلى دليل lab/ وقم بتهيئة حاويتي البناء المزدوجتين:
cd lab
docker-compose up -d --build
cd ..
شغّل ماسح الكشف في كلا المختبرين:
python src/react2shell_scanner.py lab/patched
python src/react2shell_scanner.py lab/vulnerable
cd lab
docker-compose stop
cd ..
لتنفيذ اختبارات التحقق من الاستغلال والتحقق من أدوات تسريب البيانات، يرجى الرجوع إلى دليل إثبات المفهوم المفصل خطوة بخطوة:
👉 عرض دليل إثبات المفهوم والتحقق من الثغرة (poc_reference.md)
package-lock.json (تنسيق v3). يعطي الماسح الثابت أولوية لتحليل شجرة التبعيات المُحلَّلة داخل packages["node_modules/next"] للكشف الدقيق.15.0.3 (بما في ذلك بنى 15.0.0-rc) على أنها معرضة لثغرة إلغاء التسلسل في بروتوكول Flight الخاص بـ RSC.| الخدمة المستهدفة | الإطار / الحزمة | الإصدار المثبت | تنسيق ملف القفل |
|---|
الهدف المصاب (:3001) | Next.js | 15.0.0-rc.1 | package-lock.json (إصدار ملف القفل 3) |
| React / React-DOM | 19.0.0-rc-65a56d0e-20241020 | إصدار سجل NPM | |
الهدف المصحح (:3002) | Next.js | 15.0.3 (مستقر) | package-lock.json (إصدار ملف القفل 3) |
| React / React-DOM | 19.0.0 (مستقر) | إصدار سجل NPM |