CVE-2024-43856: dma: fix call order in dmam_free_coherent
In the Linux kernel, the following vulnerability has been resolved:
dma: fix call order in dmam_free_coherent
dmam_free_coherent() frees a DMA allocation, which makes the
freed vaddr available for reuse, then calls devres_destroy()
to remove and free the data structure used to track the DMA
allocation. Between the two calls, it is possible for a
concurrent task to make an allocation with the same vaddr
and add it to the devres list.
If this happens, there will be two entries in the devres list
with the same vaddr and devres_destroy() can free the wrong
entry, triggering the WARN_ON() in dmam_match.
Fix by destroying the devres entry before freeing the DMA
allocation.
kokonut //net/encryption
http://sponge2/b9145fe6-0f72-4325-ac2f-a84d81075b03
Security readout for executives and security teams
Plain-English summary
A race in Linux DMA memory cleanup can confuse kernel bookkeeping when another task quickly reuses the freed address. The kernel may remove the wrong tracking record and raise a warning. The record rates this high severity, but the supplied evidence does not establish reliable privilege escalation or real-world compromise.
Executive priority
Treat this as a high-priority kernel maintenance issue, accelerating remediation on systems permitting low-privileged local access or using DMA-intensive drivers. The sources do not show an unauthenticated internet attack path or active exploitation, so prioritize using actual kernel and vendor-package exposure.
Technical view
dmam_free_coherent() freed a DMA allocation before removing its devres entry. A concurrent allocation could reuse the same virtual address, creating duplicate matches; devres_destroy() could then free the wrong entry and trigger WARN_ON() in dmam_match. The stable fixes reverse the cleanup order.
Likely exposure
Exposure applies to affected Linux kernels when reachable driver activity invokes managed coherent DMA cleanup under the required concurrency. The supplied version data includes ambiguous entries and does not identify affected drivers, so confirm exposure using distribution or device-vendor backport records.
Exploitation context
The CVSS vector describes a local, low-complexity attack requiring low privileges and no user interaction. The bundle marks this CVE as absent from KEV and provides no evidence of active exploitation or a public exploit. Trigger reliability and practical security impact remain unclear.
Researcher notes
The documented outcome is race-dependent devres bookkeeping corruption and a dmam_match warning. The supplied sources do not establish deterministic code execution, privilege escalation, affected driver families, or exploit availability. Distribution exposure depends on backports, making commit-level package verification more reliable than version comparison alone.
Mitigation direction
Update to a vendor-supported kernel containing the applicable stable fix or downstream backport.
Reboot into the updated kernel and remove vulnerable kernels from normal boot selection.
If patching is delayed, consult vendor guidance; the supplied sources identify no safe workaround.
Validation and detection
Inventory running kernel versions and distribution package revisions across potentially affected systems.
Confirm each installed package contains the applicable stable commit or documented downstream backport.
Reboot patched systems and verify the running kernel matches the remediated package.
Review kernel logs for WARN_ON reports involving dmam_match; absence alone does not prove safety.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2024-43856 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.