Overview
About vulnerability
In the Linux kernel, the following vulnerability has been resolved:
USB: hub: Ignore non-compliant devices with too many configs or interfaces
Robert Morris created a test program which can cause usb_hub_to_struct_hub() to dereference a NULL or inappropriate pointer:
Oops: general protection fault, probably for non-canonical address
0xcccccccccccccccc: 0000 [#1] SMP DEBUG_PAGEALLOC PTI
CPU: 7 UID: 0 PID: 117 Comm: kworker/7:1 Not tainted 6.13.0-rc3-00017-gf44d154d6e3d #14
Hardware name: FreeBSD BHYVE/BHYVE, BIOS 14.0 10/17/2021
Workqueue: usb_hub_wq hub_event
RIP: 0010:usb_hub_adjust_deviceremovable+0x78/0x110
…
Call Trace:
The cause of this error is that the device has two interfaces, and the hub driver binds to interface 1 instead of interface 0, which is where usb_hub_to_struct_hub() looks.
We can prevent the problem from occurring by refusing to accept hub devices that violate the USB spec by having more than one configuration or interface.
Details
- Affected product:
- AlmaLinux 9.2 ESU , Amazon Linux 2 ELS , CentOS 6 ELS , CentOS 7 ELS , CentOS 8.4 ELS , CentOS 8.5 ELS , CentOS Stream 8 ELS , CloudLinux 6 ELS , CloudLinux 7 ELS , Debian 10 ELS , Oracle Linux 6 ELS , Oracle Linux 7 ELS , RHEL 7 ELS , TuxCare 9.6 ESU , Ubuntu 16.04 ELS , Ubuntu 18.04 ELS , Ubuntu 20.04 ELS
- Affected packages:
- kernel @ 2.6.32 (+19 more)
Fixes
KernelCare state
Live-patch status from KernelCare for each operating system.
| Operating system | Status | Covered kernels |
|---|---|---|
| AlmaLinux 9.2 ESU | Released |
23 kernels
|
| AlmaLinux 9.6 ESU | Planned | — |
| Amazon Linux 2023 | Planned | — |
| Debian 11 | Released |
34 kernels
|
| Debian 11 cloud | Released |
14 kernels
|
| Debian 12 | Planned | — |
| Proxmox VE 7 5.15 | Released |
47 kernels
|
| Ubuntu 18.04 AWS Focal | Released |
56 kernels
|
| Ubuntu 18.04 HWE Focal | Released |
69 kernels
|
| Ubuntu 20.04 | Released |
126 kernels
|
| Ubuntu 20.04 AWS | Released |
108 kernels
|
| Ubuntu 20.04 Azure | Released |
99 kernels
|
| Ubuntu 20.04 GCP | Ready For Release | — |
| Ubuntu 20.04 HWE AWS | Released |
56 kernels
|
| Ubuntu 20.04 HWE Azure | Released |
39 kernels
|
| Ubuntu 22.04 | Released |
73 kernels
|
| Ubuntu 22.04 AWS | Released |
64 kernels
|
| Ubuntu 22.04 Azure | Released |
60 kernels
|
| Ubuntu 24.04 | Released |
27 kernels
|
| Ubuntu 24.04 AWS | Planned | — |