CVE-2024-39509

HID: core: remove unnecessary WARN_ON() in implement()

State
Published
Severity
Not scored
Published
Jul 12, 2024
Updated
Oct 15, 2026
Reserved
Jun 25, 2024

Read the record on cve.org

Description

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

HID: core: remove unnecessary WARN_ON() in implement()

Syzkaller hit a warning [1] in a call to implement() when trying to write a value into a field of smaller size in an output report.

Since implement() already has a warn message printed out with the help of hid_warn() and value in question gets trimmed with: ... value &= m; ... WARN_ON may be considered superfluous. Remove it to suppress future syzkaller triggers.

[1] WARNING: CPU: 0 PID: 5084 at drivers/hid/hid-core.c:1451 implement drivers/hid/hid-core.c:1451 [inline] WARNING: CPU: 0 PID: 5084 at drivers/hid/hid-core.c:1451 hid_output_report+0x548/0x760 drivers/hid/hid-core.c:1863 Modules linked in: CPU: 0 PID: 5084 Comm: syz-executor424 Not tainted 6.9.0-rc7-syzkaller-00183-gcf87f46fd34d #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/02/2024 RIP: 0010:implement drivers/hid/hid-core.c:1451 [inline] RIP: 0010:hid_output_report+0x548/0x760 drivers/hid/hid-core.c:1863 ... Call Trace: <TASK> __usbhid_submit_report drivers/hid/usbhid/hid-core.c:591 [inline] usbhid_submit_report+0x43d/0x9e0 drivers/hid/usbhid/hid-core.c:636 hiddev_ioctl+0x138b/0x1f00 drivers/hid/usbhid/hiddev.c:726 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:904 [inline] __se_sys_ioctl+0xfc/0x170 fs/ioctl.c:890 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf5/0x240 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f ...

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 95d1c8951e5bd50bb89654a99a7012b1e75646bd to before 955b3764671f3f157215194972d9c01a3a4bd316Affected
  • 95d1c8951e5bd50bb89654a99a7012b1e75646bd to before f9db5fbeffb951cac3f0fb1c2eeffb79785399caAffected
  • 95d1c8951e5bd50bb89654a99a7012b1e75646bd to before 33f6832798dd3297317901cc1db556ac3ae80c24Affected
  • 95d1c8951e5bd50bb89654a99a7012b1e75646bd to before 8bac61934cd563b073cd30b8cf6d5c758ab5ab26Affected
  • 95d1c8951e5bd50bb89654a99a7012b1e75646bd to before bfd546fc7fd76076f81bf41b85b51ceda30949fdAffected
  • 95d1c8951e5bd50bb89654a99a7012b1e75646bd to before 30f76bc468b9b2cbbd5d3eb482661e3e4798893fAffected
  • 95d1c8951e5bd50bb89654a99a7012b1e75646bd to before 655c6de2f215b61d0708db6b06305eee9bbfeba2Affected
  • 95d1c8951e5bd50bb89654a99a7012b1e75646bd to before 4aa2dcfbad538adf7becd0034a3754e1bd01b2b5Affected
LinuxLinux
  • 4.7Affected
  • before 4.7Not affected
  • 4.19.317 through 4.19.*Not affected
  • 5.4.279 through 5.4.*Not affected
  • 5.10.221 through 5.10.*Not affected
  • 5.15.162 through 5.15.*Not affected
  • 6.1.95 through 6.1.*Not affected
  • 6.6.35 through 6.6.*Not affected
  • 6.9.6 through 6.9.*Not affected
  • 6.10 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.