CVE-2026-64003 in Linux
الملخص
بحسب VulDB • 20/07/2026
في نواة لينكس، تم حل الثغرة التالية:
scsi: core: تشغيل طوابير الانتظار لجميع الأجهزة غير SDEV_DEL من خلال دالة scsi_run_host_queues
بينما يكون مضيف SCSI في حالة استرداد (recovery state)، لن تقوم الدالة `scsi_mq_requeue_cmd()` بتعيين قائمة إعادة الإرسال لأمر تم إعادة إرساله ليتم تنفيذه مستقبلاً. يُتوقع أن يؤدي استدعاء `scsi_run_host_queues()` إلى تشغيل جميع أجهزة SCSI بمجرد زوال حالة الاسترداد.
ومع ذلك، تستخدم `scsi_run_host_queues()` الدالة `shost_for_each_device()` التي تعتمد على `scsi_device_get()`، وبالتالي تتجاهل الأجهزة في حالة إزالة جزئية مثل SDEV_CANCEL. لكن هذه الأجهزة قد تحتوي أيضاً على طلبات تم إعادة إرسالها (requeued requests)، مما يؤدي إلى تعطل الطلبات بسبب عدم تشغيل الطوابير، ويسبب تجميد عملية إزالة الجهاز.
تحتاج `scsi_run_host_queues()` إلى التشغيل ضد أجهزة أكثر من تلك التي يسمح بها الماكرو `shost_for_each_device()`. بدلاً من استخدام فحوصات الحالة المقيدة للغاية في `scsi_device_get()`، يجب تجاهل الأجهزة الموجودة فقط في حالة SDEV_DEL أو عندما لا يمكن الحصول على مرجع (reference). حاول تشغيل الطوابير لجميع الأجهزة الأخرى عند استدعاء `scsi_run_host_queues()`.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.