CVE-2026-45923
published 2026-05-27CVE-2026-45923: In the Linux kernel, the following vulnerability has been resolved: net: usb: catc: enable basic endpoint checking catc_probe() fills three URBs with hardcoded…
medium5.5
In the Linux kernel, the following vulnerability has been resolved:
net: usb: catc: enable basic endpoint checking
catc_probe() fills three URBs with hardcoded endpoint pipes without
verifying the endpoint descriptors:
- usb_sndbulkpipe(usbdev, 1) and usb_rcvbulkpipe(usbdev, 1) for TX/RX
- usb_rcvintpipe(usbdev, 2) for interrupt status
A malformed USB device can present these endpoints with transfer types
that differ from what the driver assumes.
Add a catc_usb_ep enum for endpoint numbers, replacing magic constants
throughout. Add usb_check_bulk_endpoints() and usb_check_int_endpoints()
calls after usb_set_interface() to verify endpoint types before use,
rejecting devices with mismatched descriptors at probe time.
Similar to
- commit 90b7f2961798 ("net: usb: rtl8150: enable basic endpoint checking")
which fixed the issue in rtl8150.
Affected
9 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| linux | linux | — | — |
| linux | linux | >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < eade522d3e6ac3f3bfb51bfa5b5b4b32bd0b846f | eade522d3e6ac3f3bfb51bfa5b5b4b32bd0b846f |
| linux | linux | >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < ac7739b78ded519e1d9919a814da3b34120bec8c | ac7739b78ded519e1d9919a814da3b34120bec8c |
| linux | linux | >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 163d04897e57633c5d2e69734e4e4b22bb63f50d | 163d04897e57633c5d2e69734e4e4b22bb63f50d |
| linux | linux | >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < a488001a8197da4f9c413eec8f6acbff71c60145 | a488001a8197da4f9c413eec8f6acbff71c60145 |
| linux | linux | >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 36c28b028efba0f42218d41fed12c47ce217c1f1 | 36c28b028efba0f42218d41fed12c47ce217c1f1 |
| linux | linux | >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 1a42cfced8900d33d032c7ec338484855b61b8cc | 1a42cfced8900d33d032c7ec338484855b61b8cc |
| linux | linux | >= 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 9e7021d2aeae57c323a6f722ed7915686cdcc123 | 9e7021d2aeae57c323a6f722ed7915686cdcc123 |
| linux | linux_kernel | — | — |