CVE Catalog

CVE-2026-89733

HighCVSS 7.8
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.16%

6th percentile - higher than 6% of all known CVEs

Summary

In the Linux kernel, the USB gadget uvc driver's uvc_function_bind() and uvc_function_unbind() leave dangling pointers uvc->control_req and uvc->control_buf after freeing. This leads to use-after-free.

Risk Assessment

Can cause memory corruption and system instability, potentially leading to privilege escalation. Systems using USB gadget UVC are at risk.

Recommendation

Update the Linux kernel to a version containing the fix that sets the pointers to NULL after freeing in both functions.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: usb: gadget: uvc: fix dangling pointers in uvc_function_bind() and uvc_function_unbind() In uvc_function_bind() error path, we use usb_ep_free_request which uses uvc->control_req but does not set it to NULL afterwards. Thus, uvc->control_req is a dangling pointer causing a UAF. Also we do not set the uvc->control_buf pointer to NULL after freeing it, which is another dangling pointer. Fix it by setting uvc->control_req to NULL after we run usb_ep_free_request() and uvc->control_buf to NULL after kfree. Do the same for uvc_function_unbind().

Vulnerability data from NVD (NIST) · CISA KEV · EPSS