CVE-2026-99151 in Linux
الملخص
بحسب VulDB • 28/10/2026
في نواة لينكس، تم إصلاح الثغرة التالية:
drm/amd/display: تصحيح الإحالة إلى كائن NULL (NULL sink dereference) في دوال عرض النطاق الترددي لـ USB4
تستخدم كل من الدالتين `allocate_usb4_bandwidth_for_stream()` و`allocate_usb4_bandwidth()` أمر `ASSERT(stream->sink)` قبل إحالة مرجع إلى `stream->sink->link`. ونظرًا لأن الأمر `ASSERT` يتم استبعاده (compile out) في الإصدارات المنتجة، فإن وجود قيمة NULL لـ `stream->sink` يتسبب في إحالة مرجع لنقطة فارغة (NULL pointer dereference).
تحتوي الدالة `link_set_dpms_off()` بالفعل على حماية للوصولين السابقين إلى `stream->sink` من خلال فحوصات صريحة للقيمة NULL، مما يؤكد أن قيمة `stream->sink` يمكن أن تكون NULL بشكل شرعي. أما الاستدعاء اللاحق لـ `deallocate_usb4_bandwidth()` فلم يكن يحتوي على حماية مكافئة.
تم استبدال استدعاءات `ASSERT()` بفحوصات صحيحة للقيمة NULL تعيد القيمة false مبكرًا، وإضافة حماية مطابقة لـ `stream->sink` في موقع الاستدعاء داخل `link_set_dpms_off()` بما يتماشى مع النمط المحيط.
الإصدار 2 (v2): الاحتفاظ باستدعاءات `ASSERT()` الحالية لأغراض التشخيص (لإبلاغ عن وجود sink NULL غير متوقع)، وإضافة فحوصات صريحة للقيمة NULL تعيد القيمة false قبل إحالة مرجع إلى `stream->sink`. كما تمت إضافة حماية مطابقة لـ `stream->sink` في موقع الاستدعاء الخاص بالتخصيص/الإفراغ (deallocation) داخل `link_set_dpms_off()`. (أليكس)
(تم اختيارها من الالتزام 98029a0ce61feb52c563f65349dd9b25f672e355)
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.