Overview
About vulnerability
In the Linux kernel, the following vulnerability has been resolved:
usb: atm: cxacru: fix a flaw in existing endpoint checks
Syzbot once again identified a flaw in usb endpoint checking, see [1]. This time the issue stems from a commit authored by me (2eabb655a968 (“usb: atm: cxacru: fix endpoint checking in cxacru_bind()”)).
While using usb_find_common_endpoints() may usually be enough to discard devices with wrong endpoints, in this case one needs more than just finding and identifying the sufficient number of endpoints of correct types - one needs to check the endpoint’s address as well.
Since cxacru_bind() fills URBs with CXACRU_EP_CMD address in mind, switch the endpoint verification approach to usb_check_XXX_endpoints() instead to fix incomplete ep testing.
[1] Syzbot report:
usb 5-1: BOGUS urb xfer, pipe 3 != type 1
WARNING: CPU: 0 PID: 1378 at drivers/usb/core/urb.c:504 usb_submit_urb+0xc4e/0x18c0 drivers/usb/core/urb.c:503
…
RIP: 0010:usb_submit_urb+0xc4e/0x18c0 drivers/usb/core/urb.c:503
…
Call Trace:
Details
- Affected product:
- Oracle Linux 7 ELS , Ubuntu 18.04 ELS
- Affected packages:
- linux @ 4.15.0 (+1 more)
Fixes
KernelCare state
Live-patch status from KernelCare for each operating system.
| Operating system | Status | Covered kernels |
|---|---|---|
| Debian 11 | Released |
4 kernels
|
| Debian 11 cloud | Released |
4 kernels
|
| Debian 12 | Will Not Fix | — |
| Ubuntu 18.04 AWS Focal | Will Not Fix | — |
| Ubuntu 18.04 HWE Focal | Released |
69 kernels
|
| Ubuntu 20.04 | Released |
126 kernels
|
| Ubuntu 20.04 Azure | Released |
99 kernels
|
| Ubuntu 20.04 GCP | Ready For Release | — |
| Ubuntu 20.04 HWE AWS | Released |
11 kernels
|
| Ubuntu 20.04 HWE Azure | Released |
11 kernels
|
| Ubuntu 22.04 | Released |
15 kernels
|
| Ubuntu 22.04 AWS | Released |
12 kernels
|
| Ubuntu 22.04 Azure | Released |
12 kernels
|
| Ubuntu 24.04 | Released |
20 kernels
|
| Ubuntu 24.04 AWS | Planned | — |