CVE-2026-98501NVD
Vulnerability Summary
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.
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.
CVSS v3.1 Base Metrics — Score 7.1 (HIGH)
Attack VectorAdjacent
Attack ComplexityHigh
Privileges RequiredNone
User InteractionRequired
ScopeUnchanged
ConfidentialityHigh
IntegrityHigh
AvailabilityHigh
Affected & Patched Versions
Not provided by NVD for this CVE.
Not provided by NVD for this CVE.
External References
- https://git.kernel.org/stable/c/2e55d76e6e8a756f6d87c241de975599f82b02fa
- https://git.kernel.org/stable/c/443f6b93442b10b972a16f57ceaaea75b77892b6
- https://git.kernel.org/stable/c/47e5e177e9e4e10da6f2759d5ce8d049e33efdc4
- https://git.kernel.org/stable/c/5a8ad63158165bacd6a1d7420e0fe5364c913b06
- https://git.kernel.org/stable/c/64f824dccfd316fd3db8ea1cc4e8a76ad6a02740
- https://git.kernel.org/stable/c/925da1d2a24787f24872de13a4680437c54de179
- https://git.kernel.org/stable/c/d3aba3442798ce4a4c8ce3104d7b286d61e605f9
- https://git.kernel.org/stable/c/ef8ca5bb4c8b9696f38b1bebce1c851baa02b77b