في المرافق
إذا كان لدى 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" في القاعدة، توجد ثغرة أمنية
myhost ALL = (ALL, !root) NOPASSWD: /usr/bin/id
تم إصلاح المشكلة في الإصدار
المصدر: opennet.ru