CVE-2026-46138 in Linuxالمعلومات

الملخص

بحسب VulDB • 28/05/2026

في نواة لينكس، تم حل الثغرة التالية:

بلوتوث: hci_event: إصلاح قراءة خارج النطاق (OOB) وحلقة لا نهائية في دالة hci_le_create_big_complete_evt

تقوم الدالة hci_le_create_big_complete_evt() بالتكرار عبر اتصالات BT_BOUND الخاصة بمقبض BIG باستخدام حلقة while، حيث تصل إلى ev->bis_handle[i++] في كل تكرار. ومع ذلك، لا يوجد تحقق من أن قيمة i تبقى ضمن نطاق ev->num_bis قبل الوصول إلى المصفوفة.

عندما يرسل وحدة التحكم (controller) حدث LE_Create_BIG_Complete يحتوي على عدد أقل من إدخالات bis_handle مقارنة بعدد اتصالات BT_BOUND الخاصة بـ BIG، أو عندما تكون num_bis=0، فإن الحلقة تقرأ ما بعد مصفوفة bis_handle[] المرنة الصالحة إلى ذاكرة الهيم (heap) المجاورة. وبما أن القيم الخارجة عن النطاق عادة ما تتجاوز HCI_CONN_HANDLE_MAX (0x0EFF)، فإن دالة hci_conn_set_handle() ترفضها ويبقى الاتصال في حالة BT_BOUND. ثم يتم العثور على نفس الاتصال مرة أخرى بواسطة دالة hci_conn_hash_lookup_big_state()، مما يؤدي إلى إنشاء حلقة لا نهائية مع الاحتفاظ بقفل hci_dev_lock.

تم إصلاح هذه المشكلة عن طريق إنهاء BIG في حال عدم إمكانية إعداد جميع BIS بشكل صحيح.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

المصادر

Do you need the next level of professionalism?

Upgrade your account now!