Skip to main content

TinyUSB EUVDEUVD-2026-116215

| CVE-2026-61497 MEDIUM
Integer Underflow (CWE-191)
2026-11-03 VulnCheck GHSA-qf63-w79j-qw7p
5.2
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Physically connect crafted USB HID device
  2. Delivery
    Present truncated report descriptor
  3. Exploit
    Underflow uint16_t desc_len in parser
  4. Execution
    Out-of-bounds memory read
  5. Impact
    Host 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.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – 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

TinyUSB 0 <0.20.1

Affected Packages

euvd tinyusb fix: 0.20.1

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

Vendor (VulnCheck) PRIMARY 5.2 MEDIUM
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
vuln.today AI 5.2 MEDIUM

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.

3.1 AV:P/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H
4.0 AV:P/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Physical
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

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

Prevalence
Medium
open-source USB stack widely used in microcontroller/embedded projects, not ubiquitous
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

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.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy