CVE Catalog

CVE-2026-116776

HighCVSS 7.0
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.18%

7th percentile - higher than 7% of all known CVEs

Summary

USB Test is a lightweight Windows CLI utility for verifying sector integrity and detecting overreported capacity on USB flash drives. Prior to version 1.1.5, getSectorSize() in `USB Test/src/driveinfo.cpp` trusts DISK_GEOMETRY.BytesPerSector returned by IOCTL_DISK_GET_DRIVE_GEOMETRY without checking success or enforcing size bounds. The value is used for division and to size a heap buffer before memcpy, so a malicious USB storage device can report a value below eight bytes causing repeated out-of-bounds writes, or zero causing a divide-by-zero denial of service.

Risk Assessment

A physically connected malicious USB device can cause heap corruption, crash the elevated application, and potentially permit arbitrary code execution.

Recommendation

Update USB Test to version 1.1.5 or later. Avoid running tests on untrusted USB devices.

Related vulnerabilities

Original NVD description (English source)

USB Test is a lightweight Windows CLI utility for verifying sector integrity and detecting overreported capacity on USB flash drives. Prior to version 1.1.5, getSectorSize() in USB Test/src/driveinfo.cpp trusts DISK_GEOMETRY.BytesPerSector returned by IOCTL_DISK_GET_DRIVE_GEOMETRY without checking whether the call succeeded or enforcing size bounds. USB Test/src/drivetest.cpp uses the value for division and to size a heap buffer before memcpy(buffer.data(), &sector, 8), so a physically connected malicious USB storage device can report a value below eight bytes and cause repeated out-of-bounds writes, or report zero and cause a divide-by-zero denial of service when a user starts a drive test. The heap corruption can crash the elevated application and may permit arbitrary code execution. This issue is fixed in version 1.1.5.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS