
استغلال Docker
يوفر هذا المستودع بيئة Docker تفاعلية ومتكاملة لعرض وتحليل ثغرة "Dirty Pipe" الخاصة بتصعيد الامتيازات بأمان. وهو مصمم كأداة تعليمية لمحترفي الأمن السيبراني لفهم آليات استغلال نقدي على مستوى النواة داخل بيئة محكومة.
كانت Dirty Pipe ثغرة نقدية اكتُشفت في نواة لينكس (تؤثر على الإصدارات من 5.8 فصاعدًا). وقد سمحت لمستخدم محلي غير مميز بالكتابة فوق البيانات في أي ملفات للقراءة فقط.
التأثير خطير: من خلال الكتابة فوق ملف حساس مثل /etc/passwd أو ملف SUID ثنائي، يمكن للمهاجم بسهولة تصعيد صلاحياته إلى root، والحصول على سيطرة كاملة على النظام. كانت هذه الثغرة خطيرة بشكل خاص لأنها تجاوزت فحوصات صلاحيات الملفات القياسية، وهي رقابة أمنية أساسية في لينكس.
يستفيد هذا المشروع من Docker لإنشاء بيئة آمنة ومعزولة وضعيفة عن قصد. وهذا يسمح لأي شخص بدراسة الاستغلال دون المخاطرة بجهازه المضيف.
المكونات الرئيسية هي:
Dockerfile: يحدد المخطط الأساسي للحاوية الضعيفة لدينا. يستخدم صورة أساسية أقدم (debian:bullseye-20210927-slim) معروفة بأن نواتها عرضة لـ Dirty Pipe، ويؤتمت عملية الإعداد.exploit.c: كود C الذي ينفذ منطق الاستغلال، استنادًا إلى إثبات المفهوم الأصلي من Max Kellermann.Makefile: ملف make بسيط لتجميع كود C إلى ملف ثنائي قابل للتنفيذ داخل الحاوية.سيرشدك هذا الدليل خلال بناء البيئة وتنفيذ الاستغلال.
المتطلبات الأساسية: يجب أن يكون Docker مثبتًا ويعمل على نظامك.
افتح الطرفية واستنسخ هذا المشروع.
git clone https://github.com/mrchucu1/CVE-2022-0847-Docker.git
cd CVE-2022-0847-Docker
استخدم الأمر docker build لإنشاء صورة الحاوية. سيتولى Dockerfile التعامل مع جميع التبعيات وتجميع كود الاستغلال.
docker build -t dirty-pipe-demo .
الآن، قم بتشغيل الحاوية بشكل تفاعلي. تضمن العلامة --rm حذف الحاوية عند الخروج، ويمنحك -it واجهة تفاعلية.
docker run --rm -it dirty-pipe-demo
سيتم نقلك إلى شل داخل الحاوية كمستخدم غير مميز (hacker@...:/$).
الآن، قم بتنفيذ الاستغلال المترجم مسبقًا:
# أنت حالياً مستخدم غير مميز.
# موجهك يبدو كالتالي: hacker@<container_id>:/$
#
# الآن قم بتشغيل الاستغلال...
./exploit
نجاح! يقوم الاستغلال بالكتابة فوق ملف SUID ثنائي لمنحك شل root. سيتغير موجه الطرفية من $ إلى #، مما يشير إلى أن لديك الآن صلاحيات root.
# تم نجاح الاستغلال.
# موجهك الآن هو شل root: # whoami
root
#
هذا المشروع هو أكثر من مجرد تشغيل سكريبت؛ إنه عرض عملي لمبادئ أمنية نقدية ذات صلة بعملي كمهندس أمن سحابي:
هذا المشروع وكوده مخصصان لأغراض تعليمية وبحثية فقط. لا تحاول استخدام هذا الاستغلال على أي نظام ليس لديك إذن صريح ومصرح به.