CVE-2025-71073
Published: 13 January 2026
Summary
CVE-2025-71073 is a high-severity Use After Free (CWE-416) vulnerability in Linux Linux Kernel. Its CVSS base score is 7.8 (High).
Operationally, exploitation aligns with the MITRE ATT&CK technique Exploitation for Privilege Escalation (T1068); ranked at the 1.7th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.
The strongest mitigations our analysis identified are NIST 800-53 SI-2 (Flaw Remediation) and CM-7 (Least Functionality).
Deeper analysis
CVE-2025-71073 is a use-after-free vulnerability in the Linux kernel's lkkbd input driver. The issue arises because lkkbd_interrupt() schedules a work item via schedule_work(), and the work handler lkkbd_reinit() dereferences the lkkbd structure and its serio/input_dev fields. Functions like lkkbd_disconnect() and error paths in lkkbd_connect() free the lkkbd structure without fully preventing the reinit work from running or being re-queued until serio_close() returns, potentially allowing the work handler to access freed memory.
A local attacker with low privileges can exploit this vulnerability, as indicated by its CVSS v3.1 score of 7.8 (AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H). Exploitation requires access to the system and involves triggering the interrupt and work scheduling in a race condition during device disconnect or connect errors, potentially leading to arbitrary code execution, denial of service, or data corruption through the use-after-free (CWE-416).
The provided patch references from kernel.org stable branches resolve the issue by replacing cancel_work_sync() with disable_work_sync() in lkkbd_disconnect() and lkkbd_connect() error paths after serio_open(). This ensures the reinit work cannot be re-queued, preventing execution after the structure is freed. Security practitioners should apply the relevant stable kernel updates containing commits 3a7cd1397c20, cffc4e29b1e2, or e58c88f0cb2d.
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2026-2271
Vulnerability details
In the Linux kernel, the following vulnerability has been resolved: Input: lkkbd - disable pending work before freeing device lkkbd_interrupt() schedules lk->tq via schedule_work(), and the work handler lkkbd_reinit() dereferences the lkkbd structure and its serio/input_dev fields. lkkbd_disconnect() and error…
more
paths in lkkbd_connect() free the lkkbd structure without preventing the reinit work from being queued again until serio_close() returns. This can allow the work handler to run after the structure has been freed, leading to a potential use-after-free. Use disable_work_sync() instead of cancel_work_sync() to ensure the reinit work cannot be re-queued, and call it both in lkkbd_disconnect() and in lkkbd_connect() error paths after serio_open().
- CWE(s)
Related Threats
MITRE ATT&CK Enterprise TechniquesAI
Why these techniques?
Local kernel use-after-free in input driver enables privilege escalation via crafted interrupt/work scheduling race during disconnect.
CVEs Like This One
Affected Assets
Mitigating Controls
Mitigating Controls (NIST 800-53 r5) AI
Timely remediation through application of stable kernel patches resolves the use-after-free in the lkkbd driver by properly disabling pending work before freeing the structure.
Memory protection safeguards such as kernel address space layout randomization and stack-smashing protections mitigate exploitation of the use-after-free during interrupt-triggered work handling.
Least functionality restrictions can disable the nonessential lkkbd input driver, eliminating exposure to the race condition in device connect/disconnect paths.