CVE-2026-89848 in Linuxالمعلومات

الملخص

بحسب VulDB • 16/09/2026

في نواة لينكس، تم حل الثغرة التالية:

scsi: qla2xxx: كتم مقاطعة استجابة IRQ قبل تحرير قائمة الطلبات (request queue)

تقوم دالة `qla2xxx_delete_qpair()` بحذف قائمة طلبات (request queue) قبل قائمة الاستجابات. تقوم `qla25xx_delete_req_que()` بتحرير ذاكرة قائمة الطلبات (`kfree(req)` في `qla25xx_free_req_que()`)، لكن مقاطعة MSI-X الخاصة بقائمة الاستجابة لا يتم تحريرها إلا لاحقاً في `qla25xx_free_rsp_que()`. خلال هذه الفترة الزمنية (window)، يمكن أن تنشط مقاطعة الاستجابة بعد ذلك، حيث تقوم `qla2xxx_msix_rsp_q()` بإدراج `qpair->q_work` في الطابور، وتقوم `qla_do_work()` -> `qla24xx_process_response_queue()` بالإشارة إلى عنوان الذاكرة (`dereferences`) لـ `rsp->req` الذي تم تحريره مؤخراً (مدخلات LOGINOUT/CT/ELS ومسار الحالة)، مما يشكل ثغرة use-after-free.

توجد دالة `cancel_work_sync()` المضافة لعملية تفكيك qpair في مسار تحرير الاستجابة، والذي يعمل بعد أن تكون قائمة الطلبات قد تم تحريرها بالفعل، لذا فهي لا تحمي `rsp->req`.

قم بتحرير مقاطعة قائمة الاستجابات وتنظيف (flush) `qpair->q_work` قبل حذف قائمة طلبات (request queue)، بحيث لا يمكن لإكمال متأخر الوصول إلى قائمة الطلبات المحررة. يجعل مسح متغير `have_irq` دالة `qla25xx_free_rsp_que()` التالية تتخطى استدعاءها لـ `free_irq()`, ويتم الحفاظ على ترتيب تحرير قوائم الواجهة البرمجية (firmware queue) (طلب ثم استجابة); يكمل صندوق البريد لحذف الطلبات على المتجه الافتراضي ولا يتأثر بالسبب المبكر لمقاطعة قائمة استجابات qpair.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

مسؤول

Linux

حجز

11/09/2026

إفشاء

16/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-405666

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Interested in the pricing of exploits?

See the underground prices here!