مرة أخرى ... وجدوا ثغرة أخرى في النظام الفرعي eBPF

الأخبار مؤخرا كسر ذلك حددت نقطة ضعف جديدة (تمت فهرستها بالفعل ضمن CVE-2021-4204) في النظام الفرعي eBPF (من أجل التغيير) ...

وهو أن النظام الفرعي eBPF لم يتوقف عن كونه مشكلة أمنية رئيسية لـ Kernel لأنه تم الكشف بسهولة في عام 2021 عن ثغرتين في الشهر نتحدث عن بعض منهما هنا في المدونة.

وعن تفاصيل المشكلة الحالية يذكر ذلك تم اكتشاف ثغرة أمنية تسمح للسائق بالعمل داخل نواة لينكس في جهاز ظاهري JIT خاص والذي بدوره يسمح للمستخدم المحلي غير المتميز بتصعيد الامتيازات وتنفيذ الكود الخاص به على مستوى النواة.

في وصف المشكلة ، يذكرون ذلك تعود الثغرة الأمنية إلى المسح غير المناسب لبرامج eBPF المرسلة للتنفيذنظرًا لأن النظام الفرعي eBPF يوفر وظائف مساعدة ، يتم التحقق من صحتها بواسطة مدقق خاص.

تسمح هذه الثغرة الأمنية للمهاجمين المحليين بزيادة الامتيازات على
تثبيتات Linux Kernel المتأثرة. يجب على المهاجم أولاً الحصول على
القدرة على تشغيل التعليمات البرمجية بامتيازات منخفضة على النظام المستهدف
استغلال هذه الثغرة الأمنية.

الخلل المحدد موجود في التعامل مع برامج eBPF. السؤال ناتج عن عدم وجود التحقق المناسب من برامج eBPF التي يوفرها المستخدم قبل تشغيلها. 

إلى جانب ذلك ، تتطلب بعض الوظائف تمرير قيمة PTR_TO_MEM كوسيطة ويجب أن يعرف المدقق حجم الذاكرة المرتبطة بالوسيطة لتجنب مشاكل تجاوز سعة المخزن المؤقت المحتملة.

بينما للوظائف bpf_ringbuf_submit و bpf_ringbuf_discard, لا يتم إبلاغ المدقق بالبيانات المتعلقة بحجم الذاكرة المنقولة (هذا هو المكان الذي تبدأ فيه المشكلة) ، والذي يستفيد منه المهاجم ليتمكن من استخدامه للكتابة فوق مناطق الذاكرة خارج حدود المخزن المؤقت عند تنفيذ كود eBPF المصمم خصيصًا.

يمكن للمهاجم استغلال هذه الثغرة الأمنية لـ تصعيد الامتيازات وتنفيذ التعليمات البرمجية في سياق النواة. لاحظ أنه يتم تعطيل bpf غير المتميز افتراضيًا في معظم التوزيعات.

يذكر أنه لكي يقوم المستخدم بتنفيذ هجوم ، يجب أن يكون المستخدم قادرًا على تحميل برنامج BPF الخاص بك والعديد من توزيعات Linux الحديثة تحظر ذلك افتراضيًا (بما في ذلك الوصول غير المتميز إلى eBPF محظور الآن افتراضيًا في النواة نفسها ، اعتبارًا من الإصدار 5.16).

على سبيل المثال ، ذكر أن الضعف يمكن استغلالها في التكوين الافتراضي في توزيعة لا تزال مستخدمة تمامًا وقبل كل شيء تحظى بشعبية كبيرة كما هي أوبونتو 20.04 LTS ، ولكن في بيئات مثل Ubuntu 22.04-dev و Debian 11 و openSUSE 15.3 و RHEL 8.5 و SUSE 15-SP4 و Fedora 33 ، فإنها تظهر فقط إذا قام المسؤول بتعيين المعلمة kernel.unprivileged_bpf_disabled إلى 0.

حاليًا ، كحل بديل لمنع الثغرة الأمنية ، يُذكر أنه يمكنك منع المستخدمين غير المتميزين من تشغيل برامج BPF عن طريق تشغيل الأمر في محطة طرفية:

sysctl -w kernel.unprivileged_bpf_disabled=1

أخيرًا ، يجب ذكر ذلك ظهرت المشكلة منذ Linux kernel 5.8 ولا تزال غير مصححة (بما في ذلك الإصدار 5.16) وهذا هو السبب سوف يتأخر كود الاستغلال لمدة 7 أيام وسيتم نشره في تمام الساعة 12:00 بالتوقيت العالمي المنسق ، أي في 18 يناير 2022.

مع ذلك الغرض منه هو إعطاء الوقت الكافي لإتاحة التصحيحات لمستخدمي توزيعات Linux المختلفة داخل القنوات الرسمية لكل واحدة من هذه التوزيعات ويمكن للمطورين والمستخدمين تصحيح الثغرة الأمنية المذكورة.

بالنسبة لأولئك الذين يرغبون في أن يكونوا قادرين على معرفة حالة تشكيل التحديثات مع القضاء على المشكلة في بعض التوزيعات الرئيسية ، يجب أن يعرفوا أنه يمكن تتبعهم من هذه الصفحات:  ديبيانRHELSUSEفيدوراأوبونتوالقوس.

إذا كنت مهتم بمعرفة المزيد عنها حول الملاحظة ، يمكنك الرجوع إلى البيان الأصلي في الرابط التالي.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: AB Internet Networks 2008 SL
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.