ZeroHour

CVE-2026-80604

mass

Out-of-bounds read in Linux kernel HID numbered report handling

CVSS 3.1
8.8 high
EPSS
<1%p18
Published
()
Modified
AI analysis

CVE-2026-80604 is an out-of-bounds read in the Linux kernel's HID core: when hid_report_raw_event() is invoked with a buffer size of 0 for a numbered report, hid_get_report() unconditionally dereferences data[0] to extract the report ID before any size validation, causing an out-of-bounds read or kernel panic. A malicious or compromised HID device (for example over USB or Bluetooth) that delivers a zero-length numbered report can trigger the flaw. An attacker gains denial of service via kernel panic and potentially disclosure of adjacent kernel memory; the assigned CVSS 3.1 score is 8.8 (high, adjacent attack vector). Any Linux system running a kernel with the vulnerable HID core path is affected, though the source data does not specify affected or fixed version ranges. No exploitation is currently known: there is no public proof of concept, the flaw is not in CISA KEV, and EPSS estimates only a 0.3% probability of exploitation within 30 days.

What to do: Obtain the fix via your distribution's kernel security channel or by moving to a kernel that includes the HID core commit "HID: core: Fix OOB read in hid_get_report for numbered reports"; the source data does not state a minimum fixed version, so do not assume any specific release. Until patched, avoid attaching untrusted or low-quality USB/Bluetooth HID devices to sensitive hosts and check whether HID support (especially Bluetooth HID) is enabled. Given no public PoC, no KEV listing and a 0.3% EPSS score, scheduling this within normal patch cadence is reasonable for most environments.

Affected
Linux kernel (HID core subsystem)
Estimated exposure
mass≈ billions of Linux-based devices in deployment (servers, Android handsets, embedded systems) — Estimated from the Linux kernel's ubiquity across billions of servers, Android devices and embedded systems with HID (USB/Bluetooth) support enabled, tempered by the requirement that a connected device actually sends a crafted zero-length…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

In the Linux kernel, the following vulnerability has been resolved: HID: core: Fix OOB read in hid_get_report for numbered reports When a caller passes a size of 0 to hid_report_raw_event() for a numbered report, the function originally called hid_get_report() before performing any size validation. Inside hid_get_report(), if the report is numbered (report_enum->numbered is true), it unconditionally dereferences data[0] to extract the report ID. With a size of 0, this results in an out-of-bounds read or kernel panic. Fix this by moving the numbered report size validation check before the call to hid_get_report(), ensuring that size is at least 1 before dereferencing the data pointer.

Vector
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

In the news

No ingested article mentions this CVE yet.