Skip to main content
← All vulnerabilities
CVE-2026-43156

net: usb: pegasus: enable basic endpoint checking

Published
Last modified
published
Not listed in CISA KEV
None on Exploit-DB, Metasploit or GitHub

Summary

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

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    Version range not reported

  • Linux Linux

    2.6.12

References 8

git.kernel.org