ثغرة أمنية في نظام Linux kernel الفرعي لأداة USB Gadget ، مما قد يسمح بتنفيذ التعليمات البرمجية

USB Gadget، وهو نظام فرعي من Linux kernel يوفر واجهة برمجة لإنشاء أجهزة عميل USB وبرامج تحاكي أجهزة USB، به ثغرة أمنية (CVE-2021-39685) قد تؤدي إلى تسرب المعلومات من kernel، أو تعطله، أو تنفيذه. رمز تعسفي على مستوى النوى. يتم تنفيذ الهجوم من قبل مستخدم محلي لا يتمتع بأي امتيازات من خلال التلاعب بفئات الأجهزة المختلفة التي يتم تنفيذها استنادًا إلى USB Gadget API، مثل rndis وhid وuac1 وuac1_legacy وuac2.

تم إصلاح المشكلة في تحديثات Linux kernel المنشورة مؤخرًا 5.15.8 و5.10.85 و5.4.165 و4.19.221 و4.14.258 و4.9.293 و4.4.295. تظل المشكلة غير محلولة في التوزيعات (Debian، Ubuntu، RHEL، SUSE، Fedora، Arch). تم إعداد نموذج أولي لاستغلال الثغرة الأمنية.

سبب المشكلة هو تجاوز سعة المخزن المؤقت في معالجات طلب نقل البيانات في برامج تشغيل الأداة الذكية rndis وhid وuac1 وuac1_legacy وuac2. ونتيجة لاستغلال الثغرة الأمنية، يمكن لمهاجم لا يتمتع بأي امتيازات الوصول إلى ذاكرة kernel عن طريق إرسال طلب تحكم خاص بقيمة حقل wLength تتجاوز حجم المخزن المؤقت الثابت، والذي يتم تخصيص 4096 بايت له دائمًا (USB_COMP_EP0_BUFSIZ). أثناء الهجوم، يمكن لعملية غير مميزة في مساحة المستخدم قراءة أو كتابة ما يصل إلى 65 كيلو بايت من البيانات في ذاكرة kernel.

المصدر: opennet.ru

إضافة تعليق