CVE-2025-38556

Summary

In the Linux kernel, the following vulnerability has been resolved:

HID: core: Harden s32ton() against conversion to 0 bits

Testing by the syzbot fuzzer showed that the HID core gets a shift-out-of-bounds exception when it tries to convert a 32-bit quantity to a 0-bit quantity. Ideally this should never occur, but there are buggy devices and some might have a report field with size set to zero; we shouldn't reject the report or the device just because of that.

Instead, harden the s32ton() routine so that it returns a reasonable result instead of crashing when it is called with the number of bits set to 0 – the same as what snto32() does.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxdde5845a529ff753364a6d1aea61180946270bfa < 6cdf6c708717c5c6897d0800a1793e83757c7491affected
LinuxLinuxdde5845a529ff753364a6d1aea61180946270bfa < eeeaba737919bdce9885e2a00ac2912f61a3684daffected
LinuxLinuxdde5845a529ff753364a6d1aea61180946270bfa < 3c86548a20d7bc2861aa4de044991a327bebad1aaffected
LinuxLinuxdde5845a529ff753364a6d1aea61180946270bfa < 810189546cb6c8f36443ed091d91f1f5d2fc2ec7affected
LinuxLinuxdde5845a529ff753364a6d1aea61180946270bfa < d3b504146c111548ab60b6ef7aad00bfb1db05a2affected
LinuxLinuxdde5845a529ff753364a6d1aea61180946270bfa < 8b4a94b1510f6a46ec48494b52ee8f67eb4fc836affected
LinuxLinuxdde5845a529ff753364a6d1aea61180946270bfa < 865ad8469fa24de1559f247d9426ab01e5ce3a56affected
LinuxLinuxdde5845a529ff753364a6d1aea61180946270bfa < a6b87bfc2ab5bccb7ad953693c85d9062aef3fddaffected
LinuxLinux2.6.20affected
LinuxLinux0 < 2.6.20unaffected
LinuxLinux5.10.248 <= 5.10.*unaffected
LinuxLinux5.15.198 <= 5.15.*unaffected
LinuxLinux6.1.159 <= 6.1.*unaffected
LinuxLinux6.6.119 <= 6.6.*unaffected
LinuxLinux6.12.46 <= 6.12.*unaffected
LinuxLinux6.15.10 <= 6.15.*unaffected
LinuxLinux6.16.1 <= 6.16.*unaffected
LinuxLinux6.17 <= *unaffected

Weaknesses

ADP Enrichment

CISA ADP Vulnrichment

  • SSVC:
  • Exploitation: none
    • Automatable: no
    • Technical Impact: partial

References