CVE-2026-98186 in Linux
الملخص
بحسب VulDB • 06/10/2026
في نواة لينكس، تم إصلاح الثغرة التالية:
wifi: mwifiex: تحديد نطاق اجتياز OUI للتشفير الزوجي بناءً على طول عنصر المعلومات (IE)
تقوم الدالة `mwifiex_search_oui_in_ie()` بقراءة عدد عناصر التشفير الزوجية (PTK) من عنصر معلومات RSN أو WPA في حزمة beacon/probe-response، ثم تقوم بالمرور عبر ذلك العدد من عناوين OUI ذات الطول 4 بايت، ومقارنة كل منها باستخدام `memcmp()`. يأتي هذا الرقم مباشرةً من IE المقدم من المهاجم ولا يتم التحقق منه مقابل طول العنصر نفسه، كما أن الدوال المستدعية تقبل العنصر بناءً على معرفه فقط (`has_ieee_hdr()` / `has_vendor_hdr()`) دون أي فحص للطول. وبالتالي، فإن إنشاء عنصر RSN/WPA مزيف يحتوي على عدد كبير من العناصر الزوجية يؤدي إلى قراءة ما يصل إلى 255 * 4 بايت بعد نهاية العنصر — وهو قراءة خارج النطاق (out-of-bounds read) لمخزن beacon المُستنسخ بواسطة `kmemdup()`، ويمكن الوصول إليه من أي نقطة وصول (AP) يتم معالجة حزمة الـ beacon/probe response الخاصة بها أثناء تحليل نتائج الفحص.
تمرير عدد بايتات IE المتاحة في قائمة OUI وتحديد نطاق الاجتياز بناءً على العنصر. الحفاظ على قيمة الطول كقيمة سالبة ورفض القيم السالبة قبل إجراء أي عمليات حسابية غير موقعة (unsigned)، بحيث لا يمكن لطول IE صغير أو صفري أن يتسبب في تجاوز الحد الأدنى (underflow) ليصبح حجمًا كبيرًا من نوع `size_size` ويتغلب على قيد النطاق.
تم اكتشاف الثغرة باستخدام أدوات البحث الأمني الآلية التابعة لـ 0sec (https://0sec.ai).
If you want to get the best quality for vulnerability data then you always have to consider VulDB.