In the Linux kernel, the following vulnerability has been resolved:
HID: appleir: fix UAF on pending key_up_timer in remove()
appleir_remove() runs hid_hw_stop() before timer_delete_sync(). hid_hw_stop() synchronously unregisters the HID input device via hid_disconnect() -> hidinput_disconnect() -> input_unregister_device(), which drops the last reference and frees the underlying input_dev when no userspace handle holds it open.
key_up_tick() reads appleir->input_dev and calls input_report_key() / input_sync() on it. The timer is armed from appleir_raw_event() with a HZ/8 (~125 ms) timeout on every keydown and key-repeat report. If a key was pressed shortly before the device is disconnected, the timer can fire after hid_hw_stop() has freed input_dev but before the teardown drains it.
A simple reorder is not sufficient. Putting the timer drain first still leaves a window where a USB URB completion (raw_event) running during hid_hw_stop() can call mod_timer() and re-arm the timer, which then fires after hidinput_disconnect() has freed input_dev. The same URB-completion window also lets raw_event() reach key_up(), key_down() and battery_flat() directly, all of which dereference appleir->input_dev.
Introduce a 'removing' flag on struct appleir, gated by the existing spinlock. appleir_remove() sets the flag under the lock and then shuts down the timer with timer_shutdown_sync(), which both drains any in-flight callback and permanently disables further mod_timer() calls. appleir_raw_event() and key_up_tick() bail out early if the flag is set, so no path can arm or run the timer, or dereference appleir->input_dev, after remove() has started tearing down.
The keyrepeat and flatbattery branches of appleir_raw_event() previously called into the input layer without holding the spinlock; take it now so the flag check is well-defined. This incidentally closes a pre-existing read-side race on appleir->current_key in the keyrepeat branch.
This bug is structurally a sibling of commit 4db2af929279 ("HID: appletb-kbd: fix UAF in inactivity-timer cleanup path") and has been present since the driver was introduced.
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade kernel-livepatch-5.10.262-262.1063Upgrade perf-debuginfoUpgrade kernel-headersUpgrade kernel-tools-debuginfoUpgrade python-perf-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-debuginfoUpgrade kernel-develUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-debuginfo-common-x86_64Upgrade kernel-toolsUpgrade bpftoolUpgrade kernel-tools-develUpgrade perfUpgrade kernelUpgrade python-perf | Oct 19, 2026 | Oct 19, 2026 |
| Debian | — | Upgrade linux-6.1Upgrade linux-6.12Upgrade linux | Aug 2, 2026 | Aug 2, 2026 |
| Redhat_linux | — | No solution exists | Jul 29, 2026 | Jul 25, 2026 |
| Ubuntu | — | Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-5.15.0-1100-gkeopUpgrade linux-image-gcp-6.8Upgrade linux-image-5.15.0-1111-ibmUpgrade linux-image-azure-cvmUpgrade linux-image-azure-fde-5.15Upgrade linux-image-gcp-5.15Upgrade linux-image-5.15.0-1117-aws-fipsUpgrade linux-image-generic-64k-hwe-26.04Upgrade linux-image-gke-hwe-26.04Upgrade linux-image-gkeop-6.8Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-5.15.0-198-generic-64kUpgrade linux-image-7.0.0-1011-gcp-64kUpgrade linux-image-ibmUpgrade linux-image-aws-fipsUpgrade linux-image-nvidia-bos-64k-7.0Upgrade linux-image-azure-lts-26.04Upgrade linux-image-gcp-fipsUpgrade linux-image-gcp-fips-5.15Upgrade linux-image-generic-lpae-5.15Upgrade linux-image-fipsUpgrade linux-image-oem-26.04bUpgrade linux-image-raspi-realtime-7.0Upgrade linux-image-6.8.0-147-fipsUpgrade linux-image-virtual-7.0Upgrade linux-image-7.0.0-1018-nvidia-64kUpgrade linux-image-5.15.0-1123-azure-fipsUpgrade linux-image-6.8.0-1067-ibmUpgrade linux-image-7.0.0-31-realtimeUpgrade linux-image-5.15.0-1116-realtimeUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-aws-64k-7.0Upgrade linux-image-lowlatency-64kUpgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-azure-fipsUpgrade linux-image-azure-fips-5.15Upgrade linux-image-aws-7.0Upgrade linux-image-generic-64k-5.15Upgrade linux-image-7.0.0-31-realtime-64kUpgrade linux-image-gcp-64kUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-5.15.0-1109-intel-iot-realtimeUpgrade linux-image-nvidiaUpgrade linux-image-5.15.0-1112-nvidiaUpgrade linux-image-virtual-hwe-26.04Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-6.8.0-147-generic-64kUpgrade linux-image-lowlatency-5.15Upgrade linux-image-ibm-5.15Upgrade linux-image-lowlatencyUpgrade linux-image-5.15.0-1080-xilinx-zynqmpUpgrade linux-image-nvidia-bosUpgrade linux-image-7.0.0-1006-gkeUpgrade linux-image-intel-iotg-5.15Upgrade linux-image-6.8.0-1071-gcp-fipsUpgrade linux-image-oem-26.04Upgrade linux-image-oracle-7.0Upgrade linux-image-lowlatency-6.8Upgrade linux-image-6.8.0-1071-gcpUpgrade linux-image-aws-64k-5.15Upgrade linux-image-6.8.1-1062-realtimeUpgrade linux-image-aws-fips-5.15Upgrade linux-image-gcp-7.0Upgrade linux-image-generic-5.15Upgrade linux-image-oracle-5.15Upgrade linux-image-generic-64k-6.8Upgrade linux-image-5.15.0-1112-intel-iotgUpgrade linux-image-awsUpgrade linux-image-gke-64k-7.0Upgrade linux-image-azure-fdeUpgrade linux-image-7.0.0-1019-raspiUpgrade linux-image-5.15.0-198-generic-lpaeUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-gke-64kUpgrade linux-image-nvidia-7.0Upgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-oem-26.04aUpgrade linux-image-5.15.0-1117-awsUpgrade linux-image-5.15.0-195-lowlatencyUpgrade linux-image-6.8.0-1066-gkeUpgrade linux-image-7.0.0-1018-nvidiaUpgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-gke-5.15Upgrade linux-image-virtual-6.8Upgrade linux-image-7.0.0-1012-awsUpgrade linux-image-5.15.0-1109-kvmUpgrade linux-image-raspi-7.0Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-generic-lpaeUpgrade linux-image-oracleUpgrade linux-image-6.8.0-1069-azure-fdeUpgrade linux-image-realtimeUpgrade linux-image-6.8.0-147-lowlatencyUpgrade linux-image-realtime-7.0Upgrade linux-image-realtime-64k-7.0Upgrade linux-image-6.8.0-147-genericUpgrade linux-image-gke-7.0Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-7.0.0-1019-raspi-realtimeUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-realtime-5.15Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-aws-64k-6.8Upgrade linux-image-7.0.0-1013-ibmUpgrade linux-image-7.0.0-1011-oracle-64kUpgrade linux-image-7.0.0-1006-gke-64kUpgrade linux-image-6.8.0-147-lowlatency-64kUpgrade linux-image-6.8.0-1067-awsUpgrade linux-image-6.8.0-1064-oracle-64kUpgrade linux-image-6.8.0-1064-oracleUpgrade linux-image-realtime-6.8.1Upgrade linux-image-generic-hwe-20.04Upgrade linux-image-7.0.0-1012-aws-64kUpgrade linux-image-5.15.0-198-fipsUpgrade linux-image-nvidia-64k-hwe-26.04Upgrade linux-image-6.8.0-1067-aws-64kUpgrade linux-image-5.15.0-1114-oracleUpgrade linux-image-raspiUpgrade linux-image-oem-7.0Upgrade linux-image-nvidia-bos-7.0Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-azure-6.8Upgrade linux-image-realtime-hwe-26.04Upgrade linux-image-aws-6.8Upgrade linux-image-realtime-64kUpgrade linux-image-oracle-64k-7.0Upgrade linux-image-oracle-64kUpgrade linux-image-intel-iotgUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-ibm-classicUpgrade linux-image-ibm-7.0Upgrade linux-image-gke-6.8Upgrade linux-image-generic-7.0Upgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-azure-fde-6.8Upgrade linux-image-azure-5.15Upgrade linux-image-nvidia-64kUpgrade linux-image-5.15.0-1118-gcp-fipsUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-ibm-6.8Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-aws-5.15Upgrade linux-image-7.0.0-2018-nvidia-bosUpgrade linux-image-5.15.0-1122-azure-fdeUpgrade linux-image-aws-64kUpgrade linux-image-realtime-64k-hwe-26.04Upgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-intelUpgrade linux-image-genericUpgrade linux-image-azure-lts-24.04Upgrade linux-image-aws-lts-24.04Upgrade linux-image-7.0.0-1014-azureUpgrade linux-image-6.8.0-1066-gke-64kUpgrade linux-image-6.8.0-1052-gkeopUpgrade linux-image-oem-20.04dUpgrade linux-image-oem-20.04bUpgrade linux-image-kvmUpgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-5.15.0-1123-azureUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-laptop-23.10Upgrade linux-image-6.8.0-1071-gcp-64kUpgrade linux-image-6.8.0-1067-aws-fipsUpgrade linux-image-5.15.0-198-genericUpgrade linux-image-5.15.0-1118-gcpUpgrade linux-image-5.15.0-1112-nvidia-lowlatencyUpgrade linux-image-gke-64k-hwe-26.04Upgrade linux-image-7.0.0-2018-nvidia-bos-64kUpgrade linux-image-7.0.0-1013-oemUpgrade linux-image-generic-64k-7.0Upgrade linux-image-gkeUpgrade linux-image-gkeopUpgrade linux-image-azure-7.0Upgrade linux-image-gcpUpgrade linux-image-generic-64kUpgrade linux-image-azureUpgrade linux-image-aws-lts-22.04Upgrade linux-image-7.0.0-1011-oracleUpgrade linux-image-6.8.0-1071-azure-fipsUpgrade linux-image-5.15.0-195-lowlatency-64kUpgrade linux-image-nvidia-64k-7.0Upgrade linux-image-oem-20.04cUpgrade linux-image-7.0.0-1011-gcpUpgrade linux-image-raspi-realtimeUpgrade linux-image-nvidia-bos-64kUpgrade linux-image-gkeop-5.15Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-generic-hwe-26.04Upgrade linux-image-generic-6.8Upgrade linux-image-fips-6.8Upgrade linux-image-7.0.0-31-generic-64kUpgrade linux-image-virtual-5.15Upgrade linux-image-gke-64k-6.8Upgrade linux-image-virtualUpgrade linux-image-oracle-6.8Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-azure-fips-6.8Upgrade linux-image-7.0.0-31-genericUpgrade linux-image-6.8.0-1071-azureUpgrade linux-image-5.15.0-1113-gkeUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-oem-20.04Upgrade linux-image-kvm-5.15Upgrade linux-image-nvidia-5.15Upgrade linux-image-nvidia-hwe-26.04Upgrade linux-image-azure-lts-22.04Upgrade linux-image-5.15.0-1117-aws-64kUpgrade linux-image-gcp-64k-7.0Upgrade linux-image-fips-5.15Upgrade linux-image-aws-fips-6.8 | Sep 14, 2026 | Sep 7, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Aug 13, 2026 | Jul 25, 2026 |
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub