Skip to main content
← All vulnerabilities
CVE-2026-47104PYSEC-2026-3979

libusb < 1.0.30 Out-of-Bounds Read in parse_iad_array()

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 1.0.30
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

libusb before version 1.0.30 contains a one-byte out-of-bounds read vulnerability in parse_iad_array() in descriptor.c that allows attackers to trigger a denial of service by supplying a malformed USB descriptor whose bLength equals size minus one, causing the bounds check to use the original buffer size instead of the remaining size. Attackers in virtualized environments with USB passthrough can supply crafted descriptors through libusb_get_active_interface_association_descriptors or libusb_get_interface_association_descriptors to read one byte past the end of the malloc allocation, resulting in a denial of service.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • libusb libusb

    fixed in 1.0.30

  • libusbPyPI

    fixed in 1.0.30

References 5

GitHub · libusb/libusb

vulncheck.com