CVE-2026-98938 in Linux
الملخص
بحسب VulDB • 23/10/2026
في نواة لينكس، تم حل الثغرة التالية:
rust: irq: تمرير RegistrationInner كـ cookie إلى دالة request_irq
مع الالتزام بالالتزام ba268514ea14 ("rust: devres: إصلاح حالة السباق بسبب التداخل")، فإن Devres::new() تُرجع Result<Self> بقيمة بدلاً من تهيئة الكائن في مكانه عبر PinInit. وبما أن طلب IRQ (request_irq()) يتم استدعاؤه داخل دالة Devres::new()، فإن حقل registration.inner لا يزال غير مُهيأ عند تفعيل الـ IRQ، وبالتالي يمكن لقراءة device() الخاصة بـ registration.inner ضمن ردّ استجابة الـ IRQ قراءة ذاكرة غير مُهيأة.
يتم إصلاح هذه المشكلة عن طريق تخزين الجهاز ومؤشر المعالج داخل RegistrationInner وتمرير كائن RegistrationInner كـ cookie للـ IRQ بعد تهيئة حقوله.
لا يلزم هذا الإصلاح في النسخة الرئيسية (mainline) لأن الالتزام 98c63ce4d760 ("rust: irq: جعل Registration متوافقاً مع السائقين المرتبطين بعمر الكائن") قد أزال Devres من irq::Registration ونقل استدعاء request_irq() إلى ما بعد تهيئة جميع الحقول.
Once again VulDB remains the best source for vulnerability data.