Skip to main content
← All vulnerabilities
CVE-2026-89729

HID: sensor-hub: Fix out-of-bounds write in sensor_hub_get_feature

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.109, and 2 more
None on Exploit-DB, Metasploit or GitHub

Summary

In the Linux kernel, the following vulnerability has been resolved: HID: sensor-hub: Fix out-of-bounds write in sensor_hub_get_feature sensor_hub_get_feature() clamps its return value to the caller's buffer size, but the copy loop still copies field->report_size / 8 bytes for each report value. A malicious HID descriptor can advertise a large feature field size while an IIO caller supplies a small stack buffer, such as a single s32, causing an out-of-bounds write. HID core stores parsed report values in __s32 slots and clamps extracted values to 32 bits. Reject feature fields that require more than one slot per value, guard the total byte count calculation, and clamp each per-value copy to the remaining caller buffer.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From 5459ada2b3cd69e6bf1b0c034feb810975d0072b · fixed in 1c0463f0f028801a933f090cd2695f132635b374; From 5459ada2b3cd69e6bf1b0c034feb810975d0072b · fixed in 4145aa149a32e4b35d5d47e380d0c6c438b4e6fe; From 5459ada2b3cd69e6bf1b0c034feb810975d0072b · fixed in 8bf8aaf2f74de64f801eb30bc38927dba1f8e40a; From 5459ada2b3cd69e6bf1b0c034feb810975d0072b · fixed in c5c60260a07e627084e792ea959ab468ccfa4d50; From 5459ada2b3cd69e6bf1b0c034feb810975d0072b · fixed in fa95b14198b6c8ea721b4784f466d3c2c2bac83a; From 5459ada2b3cd69e6bf1b0c034feb810975d0072b · fixed in 9f43499ce6458a572b781f6bb46c464ab59fa825; From 5459ada2b3cd69e6bf1b0c034feb810975d0072b · fixed in bc3d72c44bff17688dc5f3e5132a53b51dae0f04; From 5459ada2b3cd69e6bf1b0c034feb810975d0072b · fixed in c92693f3ed099401d0383ef35ca1fe1e6ba033de

  • Linux Linux

    4.9

  • KernelLinux

    From 4.9.0 · fixed in 5.10.270; From 5.11.0 · fixed in 5.15.221; From 5.16.0 · fixed in 6.1.188; From 6.2.0 · fixed in 6.6.157; From 6.7.0 · fixed in 6.12.109; From 6.13.0 · fixed in 6.18.50; From 6.19.0 · fixed in 7.2.4

References 8

git.kernel.org