أداة استغلال RCE عن بعد لمكونات React Server Components
📖 مقدمة الأداة
أداة استغلال RCE عن بعد لمكونات React Server Components هي أداة اختبار أمان مصممة خصيصًا لاستغلال ثغرات تنفيذ الأكواد عن بُعد في إطارَي React Server Components و Next.js، وتوفّر واجهة تشغيل رسومية وتدعم أوضاع هجوم متعددة وميزة الفحص الجماعي.
⚠️ إخلاء مسؤولية: هذه الأداة مخصصة لاختبارات الأمان المصرّح بها ومسابقات CTF فقط، ويُحظر استخدامها في الهجمات غير القانونية. أي عواقب تنجم عن استخدام هذه الأداة يتحملها المستخدم وحده.
🎯 نطاق تأثر الثغرة
الإصدارات المتأثرة من React Server
React Server 19.0.0
React Server 19.0.1 (ملاحظة: بعض التصحيحات المبكرة لم تغطِ الثغرة بالكامل)
React Server 19.1.* (جميع إصدارات 19.1.x)
React Server 19.2.0
الإصدارات المتأثرة من Next.js
Next.js v15.0.0 - v15.0.4
Next.js v15.1.0 - v15.1.8
Next.js v15.2.x - v15.5.6
Next.js v16.0.0 - v16.0.6
Next.js v14.3.0-canary.77 وما فوق من إصدارات Canary
المكونات الأخرى المتأثرة
Dify - منصة تطوير تطبيقات الذكاء الاصطناعي
NextChat - إطار عمل تطبيقات المحادثة
التطبيقات الأخرى المبنية على إصدارات متأثرة من React Server Components أو Next.js
ملاحظة: إذا كان تطبيقك يستخدم أيًا من الإصدارات المذكورة أعلاه، يُنصح بترقيته فورًا إلى إصدار آمن أو اتخاذ الإجراءات الوقائية المناسبة.
✨ الميزات والخصائص
🎯 الوظائف الأساسية
فحص الثغرة: فحص سريع لمعرفة ما إذا كان الهدف يحتوي على ثغرة RCE في React Server Components / Next.js
عودة ناتج الأوامر: تنفيذ أوامر النظام مباشرةً والحصول على الناتج
حقن حصان طروادة في الذاكرة: حقن Webshell دائم في الخادم الهدف
Shell عكسي: الحصول على Shell تفاعلي للنظام الهدف
الفحص الجماعي: دعم فحص عدة عناوين URL دفعةً واحدة لتحديد الأنظمة الضعيفة بسرعة
🔧 وظائف مساعدة
دعم الوكيل: دعم تكوين وكيل HTTP (مثل Burp Suite) لتسهيل تحليل حركة المرور
تخصيص الترويسات: إمكانية إضافة ترويسات طلب HTTP مخصصة لتجاوز الحمايات البسيطة
سجل فوري: عرض سجل العمليات بشكل لحظي لتسهيل تتبّع عملية الاختبار
إعداد المهلة: إمكانية تخصيص مهلة الطلب بما يناسب بيئات الشبكات المختلفة
🚀 البدء السريع
المتطلبات البيئية
Java 8 أو إصدار أحدث
نظام تشغيل Windows / Linux / macOS
تشغيل الأداة
انقر نقرًا مزدوجًا لتشغيل الملف React Server Components 远程RCE.jar
أو يمكن التشغيل عبر سطر الأوامر:
root@kitploit:~
java -jar React Server Components 远程RCE.jar
عند أول تشغيل ستظهر رسالة إخلاء المسؤولية، يرجى قراءتها بعناية والموافقة عليها قبل متابعة الاستخدام
📋 دليل الاستخدام
1️⃣ الإعدادات الأساسية
قبل استخدام أي وظيفة، يجب تكوين المعلومات الأساسية أولًا:
عنوان URL الهدف: إدخال عنوان موقع الويب المراد اختباره (مثال: http://192.168.1.100:3000)
مسار الهجوم: مسار التطبيق (الافتراضي: /apps، ويمكن تعديله حسب الهدف)
مهلة الطلب: عدد ثواني مهلة الطلب (الافتراضي: 30 ثانية)
الترويسات المخصصة: اختيارية، كل ترويسة في سطر منفصل بالتنسيق Header-Name: value
2️⃣ فحص الثغرة
املأ عنوان URL الهدف والإعدادات الأساسية
انقر على زر "اختبار الثغرة"
انتظر نتيجة الفحص، وستقوم الأداة تلقائيًا بتحديد ما إذا كان الهدف يحتوي على الثغرة
تلميح: يُنصح بإجراء فحص الثغرة أولًا، والتأكد من وجود الثغرة في الهدف قبل القيام بأي عمليات لاحقة.
🎮 شرح أوضاع الهجوم بالتفصيل
الوضع الأول: عودة ناتج الأوامر
السيناريو المناسب: الحاجة إلى تنفيذ أوامر النظام وعرض نتائج التنفيذ
خطوات الاستخدام:
انتقل إلى تبويب "عودة ناتج الأوامر"
اكتب الأمر المراد تنفيذه في حقل إدخال الأوامر (مثال: whoami، ipconfig، ls -la)
انقر على زر "تنفيذ الأمر"
شاهد نتيجة تنفيذ الأمر في منطقة النص أسفل الواجهة
أمثلة على أوامر شائعة:
Windows: whoami، ipconfig، dir، net user
Linux: whoami، ifconfig، ls -la، uname -a
الوضع الثاني: حقن حصان طروادة في الذاكرة
السيناريو المناسب: الحاجة إلى ترك باب خلفي دائم في الخادم الهدف
خطوات الاستخدام:
انتقل إلى تبويب "حقن حصان طروادة في الذاكرة"
عيّن مسار الوصول للحصان (مثال: /exec)
انقر على زر "حقن الحصان في الذاكرة"
بعد نجاح الحقن، يمكن تنفيذ الأوامر بالطريقة التالية:
root@kitploit:~
الوصول إلى: http://العنوان_الهدف/exec?cmd=whoami
ملاحظات الاستخدام:
يتم تسجيل الحصان في ذاكرة التطبيق الهدف، ولن يترك أي ملف على القرص
سيفقد الحصان فعاليته بعد إعادة تشغيل الخادم
يتم تمرير الأمر المراد تنفيذه عبر معامل URL cmd
الوضع الثالث: Shell عكسي
السيناريو المناسب: الحاجة إلى الحصول على Shell تفاعلي للنظام الهدف
خطوات الاستخدام:
ابدأ الاستماع على جهازك المحلي (مثل استخدام netcat):
root@kitploit:~
nc -lvnp 4444
انتقل إلى تبويب "Shell عكسي"
املأ عنوان IP للاستماع (عنوان IP لجهازك)
املأ منفذ الاستماع (مثال: 4444)
انقر على زر "إرسال الـ Shell العكسي"
ارجع إلى نافذة netcat وانتظر اتصال الـ Shell
ملاحظات هامة:
تأكد من أن الخادم الهدف يمكنه الوصول إلى عنوان IP ومنفذ الاستماع لديك
يجب أن يسمح جدار الحماية بالاتصالات الواردة على المنفذ المقابل
في البيئات الفعلية قد تكون هناك قيود من سياسات الشبكة
الوضع الرابع: الفحص الجماعي
السيناريو المناسب: الحاجة إلى فحص الثغرة على عدة أهداف في وقت واحد
خطوات الاستخدام:
انتقل إلى تبويب "الفحص الجماعي"
اكتب قائمة عناوين URL الهدف في مربع النص (كل عنوان في سطر منفصل)
انقر على زر "بدء الفحص"
شاهد نتائج الفحص، وستقوم الأداة بتحديد الأهداف التي تحتوي على الثغرة
⚙️ الإعدادات المتقدمة
تكوين وكيل HTTP
يُستخدم لنقل حركة المرور إلى أدوات التقاط الحزم مثل Burp Suite، لتسهيل تحليل الطلبات والاستجابات.
خطوات التكوين:
انقر على قائمة "الإعدادات" في الأعلى ← "إعدادات الوكيل"
اختر "تمكين"
املأ مضيف الوكيل (مثال: 127.0.0.1)
املأ منفذ الوكيل (مثال: 8080)
انقر على "حفظ"
إعدادات Burp Suite:
تأكد من أن مستمع الوكيل في Burp Suite قد بدأ
عنوان الاستماع الافتراضي: 127.0.0.1:8080
يمكنك في Burp اعتراض وتعديل جميع الطلبات التي ترسلها الأداة
عرض حالة الوكيل:
بعد اكتمال التكوين، ستظهر حالة الوكيل في الزاوية العلوية اليمنى من الواجهة
الأخضر يعني أنه مفعّل، والرمادي يعني أنه غير مكوّن
🛡️ توصيات أمنية
الاستخدام في بيئة مصرّح بها فقط: تأكد من حصولك على إذن صريح لاختبار الهدف
لا تستخدمه في بيئة الإنتاج: تجنب التسبب في أضرار لأنظمة الإنتاج
احمِ بيانات الاختبار: يجب الاحتفاظ بأي معلومات حساسة يتم الحصول عليها أثناء الاختبار بشكل آمن
الامتثال للقوانين واللوائح: قد يؤدي اختبار الاختراق غير المصرّح به إلى مخالفة القانون
الاستخدام في مسابقات CTF: هذه الأداة مناسبة للاستخدام في بيئات قانونية مثل CTF وميادين التدريب
❓ الأسئلة الشائعة
السؤال 1: ماذا أفعل عند ظهور رسالة "لم يتم اكتشاف ثغرة"؟
الأسباب المحتملة:
عنوان URL الهدف غير صحيح أو الخدمة غير مشغّلة
الهدف لا يحتوي على هذه الثغرة
تكوين مسار الهجوم خاطئ
الشبكة غير متصلة أو يتم حظر الاتصال بواسطة جدار الحماية
الحلول:
تحقق من إمكانية الوصول إلى عنوان URL الهدف بشكل طبيعي
جرّب تعديل معامل مسار الهجوم
تحقق من اتصال الشبكة وإعدادات الوكيل
السؤال 2: لا تظهر نتيجة تنفيذ الأمر؟
الأسباب المحتملة:
تم تنفيذ الأمر بنجاح ولكن بدون مخرجات (مثل بعض أوامر كتابة الملفات)
قيود صلاحيات النظام الهدف
خطأ في صياغة الأمر
الحلول:
جرّب تنفيذ أمر بمخرجات واضحة (مثل id)
تحقق من صحة صياغة الأمر
اطّلع على التفاصيل في منطقة السجل أسفل الواجهة
السؤال 3: فشل اتصال الـ Shell العكسي؟
الأسباب المحتملة:
الهدف لا يمكنه الوصول إلى عنوان IP للاستماع لديك
جدار الحماية يمنع الاتصال
المنفذ مشغول
الحلول:
تأكد من أن خدمة الاستماع قد بدأت (nc -lvnp المنفذ)
تحقق من إعدادات جدار الحماية واسمح بالمنفذ المقابل
تأكد من صحة عنوان IP المدخل (إذا كان الهدف وجهازك على نفس الشبكة الداخلية، استخدم عنوان IP الداخلي)
السؤال 4: كيف يمكنني عرض تفاصيل الطلبات والاستجابات؟
الحلول:
قم بتكوين وكيل HTTP (مثل Burp Suite)
شاهد حركة HTTP كاملة في أداة الوكيل
ستظهر أيضًا المعلومات الأساسية في منطقة السجل أسفل الواجهة
📞 الدعم الفني
المؤلف: CrabSec
الإصدار: v1.0.0
📜 بيان حقوق النشر
هذه الأداة مخصصة للتعلم واختبارات الأمان المصرّح بها فقط. جميع العواقب الناتجة عن استخدام هذه الأداة يتحملها المستخدم وحده، ولا يتحمل المطوّر أي مسؤولية.
يرجى الالتزام بقانون الأمن السيبراني واللوائح ذات الصلة، وكن باحثًا أمنيًا ذا أخلاق عالية!