ثغرة أمنية في Sudo تسمح بتصعيد الامتيازات عند استخدام قواعد محددة

في المرافق سودو، يستخدم لتنظيم تنفيذ الأوامر نيابة عن مستخدمين آخرين، المحددة عالي التأثر (CVE-2019-14287)، والذي يسمح لك بتنفيذ الأوامر باستخدام حقوق الجذر، إذا كانت هناك قواعد في إعدادات sudoers حيث يوجد في قسم التحقق من معرف المستخدم بعد الكلمة الأساسية المسموح بها "ALL" حظر صريح للتشغيل باستخدام حقوق الجذر ("... (الكل، !الجذر) ..." ). لا تظهر الثغرة الأمنية في التكوينات الافتراضية في التوزيعات.

إذا كان لدى sudoers قواعد صالحة، ولكنها نادرة جدًا في الممارسة العملية، تسمح بتنفيذ أمر معين بموجب UID لأي مستخدم آخر غير الجذر، فيمكن للمهاجم الذي لديه سلطة تنفيذ هذا الأمر تجاوز التقييد المحدد وتنفيذ الأمر باستخدام حقوق الجذر. لتجاوز القيد، ما عليك سوى محاولة تنفيذ الأمر المحدد في الإعدادات باستخدام UID "-1" أو "4294967295"، مما سيؤدي إلى تنفيذه باستخدام UID 0.

على سبيل المثال، إذا كانت هناك قاعدة في الإعدادات تمنح أي مستخدم الحق في تنفيذ البرنامج /usr/bin/id تحت أي UID:

myhost ALL = (ALL, !root) /usr/bin/id

أو خيارًا يسمح بالتنفيذ فقط لمستخدم محدد:

myhost bob = (ALL, !root) /usr/bin/id

يمكن للمستخدم تنفيذ "sudo -u '#-1' id" وسيتم تشغيل الأداة المساعدة /usr/bin/id كجذر، على الرغم من الحظر الصريح في الإعدادات. سبب المشكلة هو إغفال القيم الخاصة "-1" أو "4294967295"، والتي لا تؤدي إلى تغيير في UID، ولكن نظرًا لأن Sudo نفسه يعمل بالفعل كجذر، دون تغيير UID، فإن الأمر target أيضًا تم إطلاقه باستخدام حقوق الجذر.

في توزيعات SUSE وopenSUSE، بدون تحديد "NOPASSWD" في القاعدة، توجد ثغرة أمنية غير قابلة للاستغلال، نظرًا لأنه في sudoers يتم تمكين وضع "Defaults targetpw" افتراضيًا، والذي يتحقق من UID مقابل قاعدة بيانات كلمات المرور ويطالبك بإدخال كلمة مرور المستخدم المستهدف. بالنسبة لمثل هذه الأنظمة، لا يمكن تنفيذ الهجوم إلا في حالة وجود قواعد بالشكل التالي:

myhost ALL = (ALL, !root) NOPASSWD: /usr/bin/id

تم إصلاح المشكلة في الإصدار سودو 1.8.28. الإصلاح متاح أيضًا في النموذج رقعة. في مجموعات التوزيع، تم بالفعل إصلاح الثغرة الأمنية ديبيان, قوس لينكس, SUSE / openSUSE, أوبونتو, جنتو и فري. وحتى وقت كتابة هذا المقال، ظلت المشكلة دون حل RHEL и فيدورا. تم تحديد الثغرة الأمنية من قبل باحثين أمنيين من شركة Apple.

المصدر: opennet.ru

إضافة تعليق