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

الملخص

بحسب VulDB • 17/09/2026

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

HID: core: تهدئة الإدخال في hid_hw_stop() لمنع حدوث Use-After-Free (استخدام بعد التحرير)

يستدعي برنامج تشغيل (driver) دالة probe الخاصة به `hid_device_io_start()` لتمكين تسليم البيانات المدخلة، ثم يفشل في خطوة لاحقة من خطوات التهيئة ويعود للخلف عبر استدعاء `hid_hw_stop()`. يؤدي هذا الإجراء إلى تحرير بنية `struct hidraw` عن طريق `hidraw_disconnect()` بينما قد تكون تقارير HID قيد التنفيذ على معالج آخر (CPU)، مما يتسبب في الإشارة إلى الكائن المحرر (`dereferencing`) من خلال `hidraw_report_event()`. وقد أبلغ syzbot عن حدوث Use-After-Free الناتج عن ذلك في برنامج تشغيل corsair-psu الخاص بـ HID.

نشر Edward Adam Davis تصحيحاً خاصاً بكل driver لبرنامج التشغيل corsair-psu، يضيف استدعاءً صريحاً لـ `hid_device_io_stop()` قبل `hid_hw_stop()` في مسار الخطأ التابع لدالة probe ("hwmon: prevent packets from going to driver for probe"، بتاريخ 2026-04-28). أظهرت عملية التدقيق (Auditing) للشجرة أن هناك 15 برنامج تشغيل يستدعي `hid_device_io_start()`؛ منها 7 تستدعي أيضاً `hid_device_io_stop()` و8 لا تفعل ذلك:

برامج التشغيل التي تستدعي hid_device_io_start() دون وجود استدعاء مطابق لـ hid_device_io_stop() قبل hid_hw_stop(): drivers/hwmon/corsair-psu.c (تم نشر التصحيح بواسطة Edward) drivers/hwmon/corsair-cpro.c drivers/hwmon/nzxt-kraken3.c drivers/hwmon/nzxt-smart2.c drivers/hwmon/gigabyte_waterforce.c drivers/hid/hid-logitech-dj.c drivers/hid/hid-nintendo.c drivers/hid/hid-mcp2221.c

تعرض ما يقارب نصف جميع المستدعين لهذه الواجهة البرمجية (API) للخطر. تم توحيد عملية التهدئة في `hid_hw_stop()` بحيث لا يضطر المستدعون إلى تذكر استدعاء التوقف المطابق: إذا كان برنامج التشغيل قد ترك قيمة `hdev->io_started` صحيحة عند الدخول، يتم استدعاء `hid_device_io_stop()` قبل `hid_disconnect()`.

بالنسبة لبرامج التشغيل السبعة التي تستدعي `hid_device_io_stop()` بشكل صحيح بالفعل، تكون قيمة `hdev->io_started` خاطئة (false) عند الدخول، مما يؤدي إلى اختصار الشرط الحامي (guard short-circuits)، ويبقى السلوك دون تغيير.

لا يوجد وسم Fixes: لأن برامج التشغيل المتأثرة حصلت على استدعاءات `hid_device_io_start()` الخاصة بها بشكل مستقل عبر سنوات؛ والثغرة تمثل إساءة استخدام عامة للفئة البرمجية (class-wide API misuse) وليست تراجعية ناتجة عن التزامين واحد.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

مسؤول

Linux

حجز

17/09/2026

إفشاء

17/09/2026

الاعتدال

تمت الموافقة

إدخال

VDB-407076

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you know our Splunk app?

Download it now for free!