CVE-2026-43156
EUVD-2026-2771506.05.2026, 12:16
In the Linux kernel, the following vulnerability has been resolved:
net: usb: pegasus: enable basic endpoint checking
pegasus_probe() fills URBs with hardcoded endpoint pipes without
verifying the endpoint descriptors:
- usb_rcvbulkpipe(dev, 1) for RX data
- usb_sndbulkpipe(dev, 2) for TX data
- usb_rcvintpipe(dev, 3) for status interrupts
A malformed USB device can present these endpoints with transfer types
that differ from what the driver assumes.
Add a pegasus_usb_ep enum for endpoint numbers, replacing magic
constants throughout. Add usb_check_bulk_endpoints() and
usb_check_int_endpoints() calls before any resource allocation to
verify endpoint types before use, rejecting devices with mismatched
descriptors at probe time, and avoid triggering assertion.
Similar fix to
- commit 90b7f2961798 ("net: usb: rtl8150: enable basic endpoint checking")
- commit 9e7021d2aeae ("net: usb: catc: enable basic endpoint checking")EnginsightAffected Products (NVD)
| Vendor | Product | Version |
|---|---|---|
| linux | linux_kernel | 2.6.12.1 ≤ 𝑥 < 5.10.252 |
| linux | linux_kernel | 5.11 ≤ 𝑥 < 5.15.202 |
| linux | linux_kernel | 5.16 ≤ 𝑥 < 6.1.165 |
| linux | linux_kernel | 6.2 ≤ 𝑥 < 6.6.128 |
| linux | linux_kernel | 6.7 ≤ 𝑥 < 6.12.75 |
| linux | linux_kernel | 6.13 ≤ 𝑥 < 6.18.16 |
| linux | linux_kernel | 6.19 ≤ 𝑥 < 6.19.6 |
| linux | linux_kernel | 2.6.12 |
| linux | linux_kernel | 2.6.12:rc2 |
| linux | linux_kernel | 2.6.12:rc3 |
| linux | linux_kernel | 2.6.12:rc4 |
| linux | linux_kernel | 2.6.12:rc5 |
| linux | linux_kernel | 7.0:rc1 |
𝑥
= Vulnerable software versions
Debian Releases
Vulnerability Media Exposure
References