TinyUSB before 0.20.1 contains an integer underflow vulnerability in the HID host report descriptor parser tuh_hid_parse_report_descriptor() in src/class/hid/hid_host.c that allows a malicious USB device to trigger an out-of-bounds read by subtracting an item size from the remaining descriptor length without validating the item fits within the remaining buffer. Attackers can present a crafted USB device with a truncated report descriptor causing the uint16_t desc_len value to underflow, resulting in out-of-bounds memory reads and denial of service on the host system.
https://www.vulncheck.com/advisories/tinyusb-integer-underflow-via-hid-report-descriptor-parser
https://github.com/hathach/tinyusb/releases/tag/0.21.0
https://github.com/hathach/tinyusb/commit/85047e1777f5c20b7a936aa905c746125d3ed066
Published: 2026-11-03
Updated: 2026-11-03
Base Score: 5.6
Vector: CVSS2#AV:L/AC:L/Au:N/C:P/I:N/A:C
Severity: Medium
Base Score: 5.2
Vector: CVSS:3.1/AV:P/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H
Severity: Medium
Base Score: 5.2
Vector: CVSS:4.0/AV:P/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N
Severity: Medium
EPSS: 0.00276