CVE-2026-68361 in Linux
Zusammenfassung
von VulDB • 10.08.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
hwmon: (corsair-psu) Beenden Sie die Geräte-E/A, bevor hid_hw_stop aufgerufen wird.
hid_hw_stop() stoppt nicht die Geräte-E/A.
Dies führt zu einer Race Condition zwischen hid_input_report() und dem Zeitpunkt unmittelbar nach der Ausführung von hid_device_io_start() innerhalb von corsairpsu_probe(). Wenn der Probe-Vorgang fehlschlägt, nachdem „io start“ initiiert wurde, resultiert diese Race Condition in einer Use-After-Free-Schwachstelle [1].
CPU0 CPU1 ==== ==== corsairpsu_probe() hid_device_io_start() ... Treiber-Eingabesperre (driver_input_lock) wird freigegeben hid_hw_stop() kfree(hidraw) __hid_input_report() ... driver_input_Sperre wird erworben hid_report_raw_event() hidraw_report_event() ... Zugriff auf die list_lock von hidraw // löst Use-After-Free aus
Folglich, wenn corsairpsu_probe() fehlschlägt und hid_hw_stop() ausgeführt werden muss, wird das io_started-Flag zunächst gelöscht, während die driver_input_Sperre gehalten wird, um potenzielle Race Conditions im Zusammenhang mit Eingangsberichten zu verhindern.
[1]
BUG: KASAN: slab-use-after-free in rt_spin_lock+0x83/0x400 kernel/locking/spinlock_rt.c:56 Call Trace: hidraw_report_event+0x5d/0x3a0 drivers/hid/hidraw.c:577 hid_report_raw_event+0x311/0x1730 drivers/hid/hid-core.c:2076 __hid_input_report drivers/hid/hid-core.c:2152 [inline]
hid_input_report+0x44e/0x580 drivers/hid/hid-core.c:2174 hid_irq_in+0x47e/0x6d0 drivers/hid/usbhid/hid-core.c:286 __usb_hcd_giveback_urb+0x3b3/0x5e0 drivers/usb/core/hcd.c:1657 dummy_timer+0x8a9/0x47d0 drivers/usb/gadget/udc/dummy_hcd.c:2005
Zugewiesen durch Task 10: hidraw_connect+0x57/0x430 drivers/hid/hidraw.c:606 hid_connect+0x5bf/0x19d0 drivers/hid/hid-core.c:2277 hid_hw_start+0xa8/0x120 drivers/hid/hid-core.c:2387 corsairpsu_probe+0xd9/0x3c0 drivers/hwmon/corsair-psu.c:782
Freigegeben durch Task 10: hidraw_disconnect+0x4f/0x60 drivers/hid/hidraw.c:662 hid_disconnect drivers/hid/hid-core.c:2362 [inline]
hid_hw_stop+0x101/0x1e0 drivers/hid/hid-core.c:2407 corsairpsu_probe+0x327/0x3c0 drivers/hwmon/corsair-psu.c:826
Das Problem wird behoben, indem hid_device_io_stop() vor dem Aufruf von hid_hw_stop() aufgerufen wird.
[groeck: Betreff und Beschreibung aktualisiert;
rufe hid_device_io_stop() nur auf, wenn E/A gestartet wurde]
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.