CVE-2026-43428: USB: core: Limit the length of unkillable synchronous timeouts
In the Linux kernel, the following vulnerability has been resolved:
USB: core: Limit the length of unkillable synchronous timeouts
The usbcontrolmsg(), usbbulkmsg(), and usbinterruptmsg() APIs in usbcore allow unlimited timeout durations. And since they use uninterruptible waits, this leaves open the possibility of hanging a task for an indefinitely long time, with no way to kill it short of unplugging the target device.
To prevent this sort of problem, enforce a maximum limit on the length of these unkillable timeouts. The limit chosen here, somewhat arbitrarily, is 60 seconds. On many systems (although not all) this is short enough to avoid triggering the kernel's hung-task detector.
In addition, clear up the ambiguity of negative timeout values by treating them the same as 0, i.e., using the maximum allowed timeout.
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2026-43428?
The severity of CVE-2026-43428 is medium with a CVSS score of 5.5.
How do I fix CVE-2026-43428?
You can fix CVE-2026-43428 by applying the available patches that limit the length of unkillable synchronous timeouts.
What does CVE-2026-43428 affect?
CVE-2026-43428 affects the Linux kernel, specifically the USB core APIs like usb_control_msg(), usb_bulk_msg(), and usb_interrupt_msg().
What are the risks associated with CVE-2026-43428?
The risks associated with CVE-2026-43428 include potential denial of service due to unlimited timeout durations leading to uninterruptible waits.
When was CVE-2026-43428 published?
CVE-2026-43428 was published on May 8, 2026.