Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessPhysically connect crafted USB HID device
-
DeliveryPresent truncated report descriptor
-
ExploitUnderflow uint16_t desc_len in parser
-
ExecutionOut-of-bounds memory read
-
ImpactHost denial of service
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Integer underflow checks
|
| Exploitation Conditions | The host must be built with TinyUSB (before 0.20.1) acting as a USB HID host that parses device report descriptors via tuh_hid_parse_report_descriptor(). The attacker must have physical access to attach a USB device (CVSS AV:P) that presents a crafted, truncated HID report descriptor whose item size exceeds the remaining buffer, causing the uint16_t desc_len to underflow. Limiting factors: exploitation requires physical presence and a device that can emulate a malicious USB HID descriptor; it is not reachable over any network, needs no authentication (PR:N) and no user interaction beyond connecting the device (UI:N). Impact is confined to a host crash (DoS) and limited out-of-bounds reads, not code execution or integrity loss. |
| Impact | This is a genuinely medium/low real-world priority despite the integer-underflow mechanism, and the limiting signal is the attack vector. The CVSS 4.0 vector (base 5.2) specifies AV:P - physical access - meaning an attacker must physically connect a malicious USB device to a host running TinyUSB as a USB HID host; this is not remotely exploitable. AC:L/AT:N/PR:N/UI:N indicate that once physical access exists the trigger is reliable, needs no privileges, and no user interaction beyond plugging in the device. Impact is bounded: VA:H (denial of service via host crash) plus VC:L (limited out-of-bounds read disclosure), with no integrity impact (VI:N) and no scope change (SC/SI/SA:N). The vuln.today decision label is 'this_month', consistent with a real but non-emergency issue. No EPSS score was provided in the input, so exploitation probability cannot be quantified here. This is NOT in CISA KEV and no confirmed exploit code is identified, so there is no evidence of active exploitation. Net: a legitimate bug worth patching on a normal cycle, but the physical-access requirement confines realistic risk to scenarios where untrusted USB devices reach the host (kiosks, unattended embedded/host devices, supply-chain or evil-maid situations) rather than broad remote compromise. |
| Exploit ScenarioDerived | An attacker with physical access connects a crafted USB device presenting a truncated HID report descriptor to a host running TinyUSB as a USB HID host. When tuh_hid_parse_report_descriptor() subtracts an item size from the remaining descriptor length without verifying the item fits, the uint16_t desc_len underflows, causing out-of-bounds memory reads that crash the host (denial of service). No public exploit code is identified at time of analysis; exploitation requires physical USB access per CVSS AV:P. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Nov 03, 2026
Integer underflow in TinyUSB's HID host report descriptor parser (tuh_hid_parse_report_descriptor()) allows a malicious USB device to trigger out-of-bounds reads and host denial of service by presenting a truncated report descriptor that makes the uint16_t remaining-length value wrap. TinyUSB releases before 0.20.1 used as a USB HID host are affected; exploitation requires physical attachment of a crafted device (AV:P), needs no authentication or user interaction, and is not reachable over a network. A vendor patch is available, and no public exploit was identified at time of analysis.
RemediationAI
Upgrade TinyUSB to 0.20.1 or later; the provided references include fix commit 85047e1777f5c20b7a936aa905c746125d3ed066 and the 0.21.0 release at https://github.com/hathach/tinyusb/releases/tag/0.21.0, with vendor advisory details at https://www.vulncheck.com/advisories/tinyusb-integer-underflow-via-hid-report-descriptor-parser. Rebuild and redeploy affected firmware that enables the TinyUSB HID host parser. No specific workaround is documented in the provided sources; the available guidance is to apply the vendor patch by updating the TinyUSB version.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
TinyUSB is an embedded USB stack used on microcontrollers and small systems. The affected code is the HID host class parser in src/class/hid/hid_host.c, which walks report descriptor items supplied by an attached USB HID device. The root cause is CWE-191 integer underflow: the parser subtracts an item size from the remaining descriptor length (uint16_t desc_len) without first validating that the item fits within the remaining buffer. A crafted, truncated HID report descriptor causes desc_len to wrap to a large value, so subsequent parsing performs out-of-bounds reads. The supplied CVSS 4.0 vector is AV:P/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N (score 5.2), and the independent assessment is CVSS 3.1 AV:P/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H; impact is limited to information exposure through out-of-bounds reads and denial of service, not code execution or integrity loss. Attack reachability is constrained to physical USB access on hosts built with the HID host parser.
Know when Tinyusb gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
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
AV:P because exploitation requires connecting a malicious USB device; A:H for host DoS and C:L for the bounded out-of-bounds read, with no integrity impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
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.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Integer overflow occurs when an arithmetic operation produces a result that exceeds the maximum value a given integer type can store.
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
EUVD-2026-116215
NVD
CVE.org
GitHub
Exploit-DB