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

الملخص

بحسب VulDB • 07/10/2026

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

بلوتوث: hci_qca: عدم الكتابة إلى المنفذ التسلسلي بعد إغلاقه

تقوم دالة `hci_uart_close()` بإغلاق منفذ serdev إذا كان علم HCI_QUIRK_NON_PERSISTENT_SETUP مُعدًا (على سبيل المثال، لعائلة WCN399x). يؤدي فشل استدعاء `hci_dev_open_sync()` الذي يلي نجاح `qca_setup()` إلى استدعاء `hdev->close()` ولكن ليس `hdev->shutdown()`، مما يعني أن المنفذ يُغلق بينما يظل `power->vregs_on` في حالة "مفعّل" (true). ثم تمرر دالة `qca_serdev_remove()` اختبارها الخاص بـ `power->vregs_on` وتستدعي `qca_power_off()`، والتي تكتب إلى المنفذ المغلق بشكل غير مشروط.

تم رصد هذه الحالة على جهاز WCN3988 من خلال فك ربط السائق (driver) بعد فشل وحدة التحكم. تتبع الكود أدناه مأخوذ من نواة تعتمد الإصدار 7.0.0، حيث كانت `qca_power_off()` تُسمى آنذاك `qca_power_shutdown()`:

Unable to handle kernel NULL pointer dereference at virtual address 0000000000000038 Call trace: tty_set_termios+0x50/0x238 (P) ttyport_set_baudrate+0x84/0xc0 serdev_device_set_baudrate+0x24/0x40 qca_power_shutdown+0x158/0x1fc [hci_uart]
qca_serdev_remove+0x54/0x68 [hci_uart]
serdev_drv_remove+0x1c/0x2c device_remove+0x4c/0x80 device_release_driver_internal+0x1cc/0x224 device_driver_detach+0x18/0x24 unbind_store+0xb4/0xc0

تحقق من علم HCI_UART_PROTO_READY، الذي تقوم `hci_uart_close()` بإلغائه في نفس المكان الذي تغلق فيه المنفذ، قبل الكتابة إليه. يتم ترك تعطيل التنظيم (regulator disable) غير مشروط بحيث تظل وحدة التحكم مُطفأة الطاقة.

العنصر المتدلي serport->tty الذي يحول هذه الحالة إلى use-after-free تم معالجته في تصحيح منفصل.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

مسؤول

Linux

حجز

25/09/2026

إفشاء

06/10/2026

الاعتدال

تمت الموافقة

إدخال

VDB-414236

EPSS

0.00173

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you need the next level of professionalism?

Upgrade your account now!