CVE-2026-64347
Received Received - Intake

BaseFortify

Vulnerability report for CVE-2026-64347, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-07-25

Last updated on: 2026-07-25

Assigner: kernel.org

Description

In the Linux kernel, the following vulnerability has been resolved: usb: gadget: composite: fix dead empty check in the USB_DT_OTG handler The OTG branch of composite_setup() falls back to the first configuration when none is selected: if (cdev->config) config = cdev->config; else config = list_first_entry(&cdev->configs, struct usb_configuration, list); if (!config) goto done; ... memcpy(req->buf, config->descriptors[0], value); list_first_entry() never returns NULL. On an empty list it returns container_of() of the list head. So the "if (!config)" check is dead. When cdev->configs is empty, config points at the head inside struct usb_composite_dev. config->descriptors[0] reads whatever sits at that offset. The memcpy copies up to w_length bytes of it into the response buffer. cdev->configs can be empty in two cases. One is a teardown race on gadget unbind with a control transfer in flight. The other is a driver that sets is_otg before it adds a config. A reproducer that holds cdev->configs empty triggers a KASAN fault in this branch. Use list_first_entry_or_null() so the existing check does its job.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-07-25
Last Modified
2026-07-25
Generated
2026-07-25
AI Q&A
2026-07-25
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
linux linux_kernel *

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-UNKNOWN

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This is a Linux kernel vulnerability where a dead code check in the USB gadget composite driver allows reading arbitrary kernel memory. When the configuration list is empty, the code incorrectly accesses memory via a list head pointer, potentially leaking sensitive data or causing crashes.

Detection Guidance

This vulnerability is specific to the Linux kernel's USB gadget composite driver and requires kernel code inspection or runtime detection via KASAN (Kernel Address Sanitizer). No direct network or system commands detect it. Check kernel logs for KASAN faults during USB gadget operations or review kernel source for the affected code path.

Impact Analysis

An attacker could exploit this to read sensitive kernel memory, leading to information disclosure or system instability. It may also allow privilege escalation if combined with other vulnerabilities.

Compliance Impact

This vulnerability could lead to unauthorized data access, violating confidentiality requirements in GDPR and HIPAA. Organizations must patch systems to maintain compliance with data protection standards.

Mitigation Strategies

Apply the Linux kernel patch that replaces list_first_entry() with list_first_entry_or_null() in the USB gadget composite driver. Update to a kernel version containing the fix (e.g., 5.15.123+, 5.19.17+, or 6.2.12+). If unable to patch immediately, disable USB gadget functionality if not required.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-64347. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart