في برامج تشغيل شرائح Broadcom اللاسلكية
تم التعرف على المشاكل عن طريق الهندسة العكسية للبرامج الثابتة من Broadcom. وتستخدم الرقائق المتأثرة على نطاق واسع في أجهزة الكمبيوتر المحمولة والهواتف الذكية ومجموعة متنوعة من الأجهزة الاستهلاكية، من أجهزة التلفزيون الذكية إلى أجهزة إنترنت الأشياء. على وجه الخصوص، تُستخدم شرائح Broadcom في الهواتف الذكية من الشركات المصنعة مثل Apple وSamsumg وHuawei. يُشار إلى أنه تم إخطار Broadcom بالثغرات الأمنية في سبتمبر 2018، لكن الأمر استغرق حوالي 7 أشهر لإصدار الإصلاحات بالتنسيق مع الشركات المصنعة للمعدات.
تؤثر ثغرتان أمنيتان على البرامج الثابتة الداخلية ومن المحتمل أن تسمحا بتنفيذ تعليمات برمجية في بيئة نظام التشغيل المستخدم في شرائح Broadcom، مما يجعل من الممكن مهاجمة البيئات التي لا تستخدم Linux (على سبيل المثال، تم تأكيد إمكانية مهاجمة أجهزة Apple)
تظهر الثغرات الأمنية في برنامج التشغيل في كل من برنامج التشغيل wl الخاص (SoftMAC وFullMAC) وbrcmfmac مفتوح المصدر (FullMAC). تم اكتشاف تجاوزين في المخزن المؤقت في برنامج التشغيل wl، وتم استغلالهما عندما ترسل نقطة الوصول رسائل EAPOL منسقة خصيصًا أثناء عملية التفاوض على الاتصال (يمكن تنفيذ الهجوم عند الاتصال بنقطة وصول ضارة). في حالة شريحة SoftMAC، تؤدي الثغرات الأمنية إلى اختراق نواة النظام، وفي حالة FullMAC، يمكن تنفيذ التعليمات البرمجية على جانب البرنامج الثابت. يحتوي brcmfmac على تجاوز سعة المخزن المؤقت وخطأ في فحص الإطار يتم استغلاله عن طريق إرسال إطارات التحكم. مشاكل مع برنامج التشغيل brcmfmac في Linux kernel
نقاط الضعف التي تم تحديدها:
- CVE-2019-9503 - السلوك غير الصحيح لبرنامج تشغيل brcmfmac عند معالجة إطارات التحكم المستخدمة للتفاعل مع البرامج الثابتة. إذا كان الإطار الذي يتضمن حدث البرنامج الثابت يأتي من مصدر خارجي، فإن برنامج التشغيل يتجاهله، ولكن إذا تم استلام الحدث عبر الناقل الداخلي، فسيتم تخطي الإطار. المشكلة هي أن الأحداث من الأجهزة التي تستخدم USB يتم نقلها عبر الناقل الداخلي، مما يسمح للمهاجمين بنقل إطارات التحكم في البرامج الثابتة بنجاح عند استخدام المحولات اللاسلكية مع واجهة USB؛
- CVE-2019-9500 - عند تمكين ميزة "Wake-up on Wireless LAN"، من الممكن التسبب في تجاوز سعة الكومة في برنامج تشغيل brcmfmac (الوظيفة brcmf_wowl_nd_results) عن طريق إرسال إطار تحكم معدّل خصيصًا. يمكن استخدام هذه الثغرة لتنظيم تنفيذ التعليمات البرمجية في النظام الرئيسي بعد اختراق الشريحة أو بالاشتراك مع الثغرة CVE-2019-9503 لتجاوز عمليات التحقق في حالة إرسال إطار التحكم عن بعد؛
- CVE-2019-9501 - تجاوز سعة المخزن المؤقت في برنامج التشغيل wl (وظيفة wlc_wpa_sup_eapol) الذي يحدث عند معالجة الرسائل التي يتجاوز محتوى حقل معلومات الشركة المصنعة لها 32 بايت؛
- CVE-2019-9502 - يحدث تجاوز سعة المخزن المؤقت في برنامج التشغيل wl (وظيفة wlc_wpa_plumb_gtk) عند معالجة الرسائل التي يتجاوز محتوى حقل معلومات الشركة المصنعة لها 164 بايت.
المصدر: opennet.ru