Skip to main content
VulnerabilityPublished Updated

CVE-2026-98763: Linux kernel · usb: core: clear both ep_in and ep_out for non-ep0 control endpoints

Affects Linux kernelSource CVE Database V5

0

Not known to be exploited · fixed in c50413ecb662ea43c7f487632c8114721743a277 : update Linux kernel when convenient.

Data as of 26 Oct 2026, 14:18 UTC

Severity
Unrated

Rated by Threat Radar · CVSS not yet scored by NVD

EPSS
0.1% chance of exploitation in 30 days – higher than 5% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in c50413ecb662ea43c7f487632c8114721743a277, 198d74dcfa129523125f46a89479d3b446b17dbe, 7a9f61476b0e8002092a52ee8295edeeb0a28d1e +2

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 18 Oct 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponised: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.

What to do

Upgrade to a fixed release listed under Affected software.

Affected software

ProductAffectedFixed in
LinuxLinuxAffected
  • ≥ 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, < c50413ecb662ea43c7f487632c8114721743a277
Fixed in
  • c50413ecb662ea43c7f487632c8114721743a277
LinuxLinuxAffected
  • ≥ 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, < 198d74dcfa129523125f46a89479d3b446b17dbe
Fixed in
  • 198d74dcfa129523125f46a89479d3b446b17dbe
LinuxLinuxAffected
  • ≥ 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, < 7a9f61476b0e8002092a52ee8295edeeb0a28d1e
Fixed in
  • 7a9f61476b0e8002092a52ee8295edeeb0a28d1e
LinuxLinuxAffected
  • ≥ 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, < 1da16c46b8d7101b74bc2d72a04e23cf5c7ddea1
Fixed in
  • 1da16c46b8d7101b74bc2d72a04e23cf5c7ddea1
LinuxLinuxAffected
  • ≥ 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, < 0e8baa78d872f2db440d8b9ded946ab8dceb89eb
Fixed in
  • 0e8baa78d872f2db440d8b9ded946ab8dceb89eb
LinuxLinuxAffected
  • =2.6.12
Fixed in–

Description

In the Linux kernel, the following vulnerability has been resolved: usb: core: clear both ep_in and ep_out for non-ep0 control endpoints In usb_enable_endpoint(), non-zero control endpoints (where usb_endpoint_xfer_control(&ep->desc) is true) populate both dev->ep_in[epnum] and dev->ep_out[epnum] with the same struct usb_host_endpoint pointer. However, usb_disable_endpoint() only clears either dev->ep_out[epnum] or dev->ep_in[epnum] depending on the direction bit of epaddr when reset_hardware is set, leaving the opposite direction's array slot pointing to the disabled/freed endpoint. Clear both dev->ep_out[epnum] and dev->ep_in[epnum] when disabling a non-ep0 control endpoint with reset_hardware set, and update the function kerneldoc accordingly. Tested in QEMU against Linux 7.3.0-rc3 using dummy_hcd and raw-gadget to enumerate a USB device with a non-zero control endpoint (bEndpointAddress 0x01, bmAttributes USB_ENDPOINT_XFER_CONTROL), verifying that both dev->ep_in[1] and dev->ep_out[1] are cleared when the interface is disabled.

References

Community reviews

Loading reviews…