Vulnerabilities
- CVSS
- 7.0 High
- Vector
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H- EPSS
- 0.21%
- Risk score
- 8.2
- Published
- 2026-07-19
- Status
- Published
In the Linux kernel, the following vulnerability has been resolved:
usb: gadget: composite: fix integer underflow in WebUSB GET_URL handling
The WebUSB GET_URL handler in composite_setup() narrows
landing_page_length to fit the host-supplied wLength using
landing_page_length = w_length
- WEBUSB_URL_DESCRIPTOR_HEADER_LENGTH + landing_page_offset;
If wLength is smaller than WEBUSB_URL_DESCRIPTOR_HEADER_LENGTH the
unsigned subtraction wraps, and the subsequent
memcpy(url_descriptor->URL,
cdev->landing_page + landing_page_offset,
landing_page_length - landing_page_offset);
ends up copying close to UINT_MAX bytes from cdev->landing_page into
cdev->req->buf. KASAN reports a slab-out-of-bounds in composite_setup
on the kmalloc-2k gadget_info allocation, and FORTIFY_SOURCE traps the
memcpy as a 4294967293-byte field-spanning write into
url_descriptor->URL (size 252).
A USB host can reach this from a single SETUP packet against any
gadget that has webusb/use=1 and a landingPage configured.
Handle the small-wLength case before the math: when the host requested
fewer bytes than the URL descriptor header, only the header is
meaningful and no URL bytes need to be copied. Setting
landing_page_length to landing_page_offset makes the existing memcpy a
no-op and leaves the descriptor returned to the host unchanged for all
larger wLength values.
A flaw was found in the Linux kernel's USB gadget composite driver. A remote attacker, acting as a malicious USB host, could send a specially crafted `GET_URL` request. This request, with a small `wLength` value, triggers an integer underflow when calculating the buffer length for a memory copy operation. This leads to an out-of-bounds write, causing memory corruption and potentially a denial of service or arbitrary code execution.
Coverage 5
threat-intel
Multiple vulnerabilities have been discovered in the SUSE Linux kernel. These vulnerabilities can lead to data confidentiality and integrity breaches, policy circumvention, and denial of service conditions. The affected…
threat-intel
Multiple vulnerabilities have been discovered in the Linux kernel of SUSE. Several of these vulnerabilities allow for privilege escalation, data confidentiality breaches, and data integrity issues. These vulnerabilities…
vulnerability
Multiple vulnerabilities have been discovered in the Linux kernel of Ubuntu. Some of these vulnerabilities allow for privilege escalation, data confidentiality compromise, and data integrity compromise. These vulnerabili…
vulnerability
Multiple vulnerabilities have been discovered in the Linux kernel of Ubuntu. Some of these vulnerabilities allow for privilege escalation, data confidentiality breaches, and data integrity compromise. These vulnerabiliti…
threat-intel
Multiple vulnerabilities have been discovered in the Linux kernel of Ubuntu. Some of these vulnerabilities allow for privilege escalation, data confidentiality breaches, and denial of service attacks. The vulnerabilities…
Advisories and references