CVE-2024-35843·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: iommu/vt-d: Use device rbtree in iopf reporting path The existing I/O page fault handler currently locates the PCI device by calling pci_get_domain_bus_and_slot(). This function searches the list of all PCI devices until the desired device is found. To improve lookup efficiency, replace it with device_rbtree_find() to search the device within the probed device rbtree. The I/O page fault is initiated by the device, which does not have any synchronization mechanism with the software to ensure that the device stays in the probed device tree. Theoretically, a device could be released by the IOMMU subsystem after device_rbtree_find() and before iopf_get_dev_fault_param(), which would cause a use-after-free problem. Add a mutex to synchronize the I/O page fault reporting path and the IOMMU release device path. This lock doesn't introduce any performance overhead, as the conflict between I/O page fault reporting and device releasing is very rare.
- Severity
- medium
- Software
- Kernel
- Fixed in
- 6.8.2
- Published
- 2024-05-17
Affected versions
Until: 6.8.2
Fixed in: 6.8.2
How to fix this CVE
Update your Linux kernel to version 6.8.2 or later to resolve a use-after-free vulnerability in the Intel VT-d IOMMU I/O page fault handling path. The vulnerability occurs when device lookup and release operations lack proper synchronization, potentially allowing memory access after device deallocation. Apply the kernel update and reboot your system to activate the security patch.
sudo dnf update kernel && 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 6.8.2 — if your version is earlier, you are vulnerable.
- Step 2: Verify IOMMU is enabled on your system by checking `dmesg | grep -i 'intel.*iommu'` or `cat /proc/cmdline | grep iommu` — this vulnerability only affects systems with VT-d IOMMU enabled.
- Step 3: Search kernel logs for page fault errors related to IOMMU by running `dmesg | grep -i 'iopf\|iommu.*fault'` to identify any triggering conditions.
- Step 4: After applying the kernel update and rebooting, confirm the patch is active by running `uname -r` and verifying the version is 6.8.2 or later.
FAQ
What is CVE-2024-35843?
CVE-2024-35843 is a use-after-free vulnerability in the Linux kernel's Intel VT-d IOMMU subsystem. The I/O page fault handler can access a freed device object when device removal and fault reporting occur without proper synchronization, potentially leading to kernel memory corruption or denial of service.
Is CVE-2024-35843 being actively exploited?
No, CVE-2024-35843 is not listed in the CISA Known Exploited Vulnerabilities catalog and no public exploits are currently available. However, the vulnerability still requires patching as a precautionary measure for system stability.
What versions of Kernel are affected by CVE-2024-35843?
All kernel versions prior to 6.8.2 are affected. Systems running kernel 6.8.2 and later have this vulnerability remediated.
How do I check if my server is vulnerable to CVE-2024-35843?
Run `uname -r` to display your kernel version. If the version is older than 6.8.2 and your system has VT-d IOMMU enabled (check via `dmesg | grep 'Intel.*IOMMU'`), your server is vulnerable.
Does Defensia detect CVE-2024-35843?
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-35843 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2024-35843. Free for 1 server.
Get started free