Executive brief
A vulnerability exists in the Linux kernel's support for certain SCSI storage controllers (aic94xx). When one of these storage devices is physically unplugged or its software driver is removed, a timing issue can cause the system to attempt to use memory that has already been cleared. This could lead to a system crash or potentially allow an attacker to gain unauthorized control over the system.
Technical details
A use-after-free (UAF) vulnerability exists in the aic94xx SCSI driver within the Linux kernel. The root cause is located in the asd_pci_remove() function, which fails to synchronize with or cancel pending tasklets before freeing the asd_ha data structure. This creates a race condition during hot-unplug events or module unloading where a scheduled tasklet may attempt to access the already-freed asd_ha structure. An attacker with local access could potentially exploit this race condition to cause a denial of service (kernel panic) or achieve arbitrary code execution. The fix involves invoking tasklet_kill() to ensure all scheduled tasklets complete before resource cleanup proceeds.
Affected products
- Linux Linux Kernel All versions prior to the January 2026 patches
Timeline
- 2025-10-29: disclosed: Initial patch submission by Junrui Luo
- 2026-01-02: patched: Fix merged into various stable kernel branches
- 2026-01-13: advisory: CVE published
References
- https://git.kernel.org/stable/c/278455a82245a572aeb218a6212a416a98e418de
- https://git.kernel.org/stable/c/751c19635c2bfaaf2836a533caa3663633066dcf
- https://git.kernel.org/stable/c/a41dc180b6e1229ae49ca290ae14d82101c148c3
- https://git.kernel.org/stable/c/b3e655e52b98a1d3df41c8e42035711e083099f8
- https://git.kernel.org/stable/c/c8f6f88cd1df35155258285c4f43268b361819df
- https://git.kernel.org/stable/c/e354793a7ab9bb0934ea699a9d57bcd1b48fc27b
- https://git.kernel.org/stable/c/f6ab594672d4cba08540919a4e6be2e202b60007