CVE-2024-40956·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: dmaengine: idxd: Fix possible Use-After-Free in irq_process_work_list Use list_for_each_entry_safe() to allow iterating through the list and deleting the entry in the iteration process. The descriptor is freed via idxd_desc_complete() and there's a slight chance may cause issue for the list iterator when the descriptor is reused by another thread without it being deleted from the list.
- Severity
- high
- Software
- Kernel
- Fixed in
- 6.9.7
- Published
- 2024-07-12
Affected versions
From: 6.7
Until: 6.9.7
Fixed in: 6.9.7
How to fix this CVE
Update your Linux kernel to version 6.9.7 or later to resolve a use-after-free vulnerability in the IDXD DMA engine interrupt handler. This vulnerability could allow local attackers with limited privileges to cause denial of service or potentially execute arbitrary code. Apply the kernel update through your distribution's package manager and reboot your system to activate the patched kernel.
sudo dnf update kernel kernel-devel && sudo rebootDefensia detects this vulnerability
How to check if you are affected
- Step 1: Check your current kernel version with `uname -r` and compare against the affected range (6.7 through 6.9.6)
- Step 2: Verify if the IDXD driver is loaded by running `lsmod | grep idxd` or checking for Intel Data Streaming Accelerator devices with `lspci | grep -i accelerator`
- Step 3: Search system logs for kernel warnings or crashes related to IDXD using `grep -i 'idxd\|dmaengine' /var/log/kern.log /var/log/messages`
- Step 4: After applying the update, confirm the new kernel version is loaded with `uname -r` and verify it shows 6.9.7 or later
FAQ
What is CVE-2024-40956?
CVE-2024-40956 is a use-after-free memory vulnerability in the Linux kernel's IDXD (Intel Data Streaming Accelerator) DMA engine interrupt handler. When processing descriptor completion lists, freed descriptors could be accessed again if they were reused by another thread before being removed from the iteration list, leading to kernel crashes or potential code execution.
Is CVE-2024-40956 being actively exploited?
No, CVE-2024-40956 is not currently listed in CISA's Known Exploited Vulnerabilities (KEV) catalog and no public exploits have been released. However, the vulnerability requires only local access with limited privileges to trigger.
What versions of Kernel are affected by CVE-2024-40956?
Linux kernel versions 6.7 through 6.9.6 are affected. Kernel 6.9.7 and later versions contain the fix.
How do I check if my server is vulnerable to CVE-2024-40956?
Run `uname -r` to check your kernel version. If it reports a version between 6.7 and 6.9.6, you are vulnerable. Additionally, verify IDXD support is present with `grep -i idxd /boot/config-$(uname -r)` or `lsmod | grep idxd`.
Does Defensia detect CVE-2024-40956?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If the Linux kernel is installed on a monitored server, CVE-2024-40956 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/1b08bf5a17c66ab7dbb628df5344da53c8e7ab33
- https://git.kernel.org/stable/c/83163667d881100a485b6c2daa30301b7f68d9b5
- https://git.kernel.org/stable/c/a14968921486793f2a956086895c3793761309dd
- https://git.kernel.org/stable/c/e3215deca4520773cd2b155bed164c12365149a7
- https://git.kernel.org/stable/c/faa35db78b058a2ab6e074ee283f69fa398c36a8
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2024-40956. Free for 1 server.
Get started free