CVE-2026-99155 in Linux
الملخص
بحسب VulDB • 28/10/2026
في نواة لينكس، تم إصلاح الثغرة التالية:
scsi: xen/scsifront: التحقق من وجود إدخال ظل (shadow entry) فارغ في استجابة الخادم الخلفي
تقوم الدالة `scsifront_do_response()` بالتحقق من صحة معرف الطلب (`rqid`) الموجود في استجابة الخادم الخلفي مقابل القيمة القصوى `VSCSIIF_MAX_REQS` قبل استخدامها كمؤشر لـ `info->shadow[]`. ومع ذلك، فإنها تقوم بإلغاء مرجع (dereference) الإدخال للاختبار الخاص بـ `->inflight` دون التحقق مما إذا كان هذا الموضع مشغولاً. تكون فتحات الظل فارغة (`NULL`) قبل إرسال أمر ما (حيث يتم تصفير منطقة الخصوصية للمضيف عند التخصيص)، وتُعاد إلى حالة فارغة في `_scsifront_put_rqid()` بمجرد اكتمال الطلب. وبالتالي، فإن معرف طلب (`rqid`) ضمن النطاق الصحيحة ولكنه لا يتوافق مع طلب قيد التنفيذ يؤدي إلى قيام الواجهة الأمامية بإلغاء مرجع مؤشر فارغ (NULL pointer).
يمكن لخادم خلفي خبيث أو به أخطاء في البرمجة أن يعطل تشغيل النظام الضيف عن طريق إرجاع استجابة يكون فيها `rqid` ضمن النطاق الصحيح ولكن الطلب غير قيد التنفيذ - على سبيل المثال، استجابة زائفة قبل إصدار أي أمر، أو نسخة مكررة لأمر تم إنجازه بالفعل. تحتوي الحلقة (ring) على عدد محدود من الفتحات وهو `VSCSIIF_MAX_REQS` (16 فتحة)، لذا فإن كل معرف طلب (`rqid`) ضمن النطاق الصحيح يختار فتحة فارغة قبل إرسال الأمر الأول.
رفض الاستجابة التي لا يكون فيها موضع الظل مشغولاً.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.