What’s Vulnerable › Vulnerabilities
CVE-2024-45013: nvme: move stopping keep-alive into nvme_uninit_ctrl()
- Severity: medium (CVSS 5.5 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.4% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2024-09-11 · updated 2026-08-04
- Weakness: CWE-416
Description
In the Linux kernel, the following vulnerability has been resolved: nvme: move stopping keep-alive into nvme_uninit_ctrl() Commit 4733b65d82bd ("nvme: start keep-alive after admin queue setup") moves starting keep-alive from nvme_start_ctrl() into nvme_init_ctrl_finish(), but don't move stopping keep-alive into nvme_uninit_ctrl(), so keep-alive work can be started and keep pending after failing to start controller, finally use-after-free is triggered if nvme host driver is unloaded. This patch fixes kernel panic when running nvme/004 in case that connection failure is triggered, by moving stopping keep-alive into nvme_uninit_ctrl(). This way is reasonable because keep-alive is now started in nvme_init_ctrl_finish().
Affected products
- Linux kernel: from 6.7 before 6.10.7; 6.11-rc1, 6.11-rc2, 6.11-rc3, 6.11-rc4 — fixed in 6.10.7
How to fix
Upgrade to a fixed version: Linux kernel 6.10.7. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/4101af98ab573554c4225e328d506fec2a74bc54
- https://git.kernel.org/stable/c/a54a93d0e3599b05856971734e15418ac551a14c
Get alerted when CVE-2024-45013 or the next vulnerability affects your stack