All vulnerabilities
CVE-2026-98501

Linux: HID: alps: fix use-after-free on input2 registration failure

Linux LinuxOperating systems
CVSS
NoneNot scored
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.21%Chance of exploitation activity in the next 30 days, higher than 10% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed in64f824dccfd316fd3db8ea1cc4e8a76ad6a02740Also 2e55d76e6e8a756f6d87c241de975599f82b02fa, 5a8ad63158165bacd6a1d7420e0fe5364c913b06 and 3 moreCVE List
Published18 Oct 2026Updated 19 Oct 2026CVE List

What fixes it

  • 64f824dccfd316fd3db8ea1cc4e8a76ad6a02740LinuxCVE List
  • 2e55d76e6e8a756f6d87c241de975599f82b02faLinuxCVE List
  • 5a8ad63158165bacd6a1d7420e0fe5364c913b06LinuxCVE List
  • 47e5e177e9e4e10da6f2759d5ce8d049e33efdc4LinuxCVE List
  • 925da1d2a24787f24872de13a4680437c54de179LinuxCVE List
  • 443f6b93442b10b972a16f57ceaaea75b77892b6LinuxCVE List

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

Description

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

HID: alps: fix use-after-free on input2 registration failure

alps_input_configured() stores data->input2 before calling input_register_device(). If registration fails, input_free_device() frees the input device but data->input2 still points to the freed memory. alps_input_configured() calls hid_hw_open() before allocating input2, so URBs are already active and raw_event can fire during the failure window. A U1_SP_ABSOLUTE_REPORT_ID report arriving then causes u1_raw_event() to dereference the freed data->input2 -> use-after-free.

Fix by only storing input2 into drvdata after successful registration and adding a NULL guard in the raw_event path.

Text from CVE List

Affected versions 18

  • Linuxaffected: 2562756dde550901c224e3805102bdfc17e7d13a before 64f824dccfd316fd3db8ea1cc4e8a76ad6a02740CVE List
  • Linuxaffected: 2562756dde550901c224e3805102bdfc17e7d13a before 2e55d76e6e8a756f6d87c241de975599f82b02faCVE List
  • Linuxaffected: 2562756dde550901c224e3805102bdfc17e7d13a before ef8ca5bb4c8b9696f38b1bebce1c851baa02b77bCVE List
  • Linuxaffected: 2562756dde550901c224e3805102bdfc17e7d13a before 5a8ad63158165bacd6a1d7420e0fe5364c913b06CVE List
  • Linuxaffected: 2562756dde550901c224e3805102bdfc17e7d13a before 47e5e177e9e4e10da6f2759d5ce8d049e33efdc4CVE List
  • Linuxaffected: 2562756dde550901c224e3805102bdfc17e7d13a before 925da1d2a24787f24872de13a4680437c54de179CVE List
  • Linuxaffected: 2562756dde550901c224e3805102bdfc17e7d13a before 443f6b93442b10b972a16f57ceaaea75b77892b6CVE List
  • Linuxaffected: 2562756dde550901c224e3805102bdfc17e7d13a before d3aba3442798ce4a4c8ce3104d7b286d61e605f9CVE List
  • Linuxaffected: 4.8CVE List
  • Linuxunaffected: all versions before 4.8CVE List
  • Linuxunaffected: 5.10.271 through 5.10.*CVE List
  • Linuxunaffected: 5.15.222 through 5.15.*CVE List
  • Linuxunaffected: 6.1.189 through 6.1.*CVE List
  • Linuxunaffected: 6.6.158 through 6.6.*CVE List
  • Linuxunaffected: 6.12.112 through 6.12.*CVE List
  • Linuxunaffected: 6.18.55 through 6.18.*CVE List
  • Linuxunaffected: 7.2.9 through 7.2.*CVE List
  • Linuxunaffected: 7.3CVE List

References 8