CVE-2026-43156

net: usb: pegasus: enable basic endpoint checking

MEDIUM
5.5
CVSS Score
Published: May 6, 2026 at 11:27 AM UTC
Updated: June 17, 2026 at 10:49 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM5.5
Exploit prediction
EPSS 0.1%

Description

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")

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

2.6.12 ≤ v < 5.10.2522.6.12 ≤ v < 5.15.2022.6.12 ≤ v < 6.1.1652.6.12 ≤ v < 6.12.752.6.12 ≤ v < 6.18.162.6.12 ≤ v < 6.19.62.6.12 ≤ v < 6.6.1282.6.12 ≤ v < 7.02.6.12.1 ≤ v < 5.10.2525.11 ≤ v < 5.15.2025.16 ≤ v < 6.1.1656.13 ≤ v < 6.18.166.19 ≤ v < 6.19.66.2 ≤ v < 6.6.1286.7 ≤ v < 6.12.751da177e4c3f41524e886b7f1b8a0c1fc7321cac22.6.122.6.12 rc22.6.12 rc32.6.12 rc42.6.12 rc57.0 rc1
Vendor states this is fixed in 229dc9b9db475ac900182bafe258943e0e054c6d (fixed)
Vendor states this is fixed in 26b3ec62fa1a94ac801feca47f040fc729b3c174 (fixed)
Vendor states this is fixed in 2705709f6574a088aab246af72fc95f2fea51484 (fixed)
Vendor states this is fixed in 35854ed5c40b02f95824e44398f9d2ba33727203 (fixed)
Vendor states this is fixed in 3d7e6ce34f4fcc7083510c28b17a7c36462a25d4 (fixed)
Vendor states this is fixed in 67ba6b13dbcaf45681fb6758794c5ac5fa589a6c (fixed)
Vendor states this is fixed in a3e64e950a3981a8199de9798f6d21261b959171 (fixed)
Vendor states this is fixed in d2e7c898cc02dfe42443489a67a45ed616cb76e9 (fixed)
Vendor states this is fixed in 2.6.12 (unaffected)
Vendor states this is fixed in 5.10.252 (unaffected)
Vendor states this is fixed in 5.15.202 (unaffected)
Vendor states this is fixed in 6.1.165 (unaffected)
Vendor states this is fixed in 6.12.75 (unaffected)
Vendor states this is fixed in 6.18.16 (unaffected)
Vendor states this is fixed in 6.19.6 (unaffected)
Vendor states this is fixed in 6.6.128 (unaffected)
Vendor states this is fixed in 7.0 (unaffected)

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusANALYZED
CWE
NVD-CWE-noinfo

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card