CVE-2024-53191: wifi: ath12k: fix warning when unbinding
In the Linux kernel, the following vulnerability has been resolved:
wifi: ath12k: fix warning when unbinding
If there is an error during some initialization related to firmware,
the buffers dp->tx_ring[i].tx_status are released.
However this is released again when the device is unbinded (ath12k_pci),
and we get:
WARNING: CPU: 0 PID: 2098 at mm/slub.c:4689 free_large_kmalloc+0x4d/0x80
Call Trace:
free_large_kmalloc
ath12k_dp_free
ath12k_core_deinit
ath12k_pci_remove
...
The issue is always reproducible from a VM because the MSI addressing
initialization is failing.
In order to fix the issue, just set the buffers to NULL after releasing in
order to avoid the double free.
Security readout for executives and security teams
Plain-English summary
A Linux ath12k Wi-Fi driver cleanup error can free the same memory twice when device initialization fails and the device is later removed. This may corrupt kernel memory and affect confidentiality, integrity, or availability. Exploitation requires local, low-privilege access; the supplied evidence does not establish remote or active exploitation.
Executive priority
Prioritize normal high-severity kernel remediation for systems using ath12k, particularly multi-user or virtualized hosts. This is not supported as an emergency internet-wide threat because local access and a specific driver failure path are required, with no cited active exploitation. Accelerate action where untrusted users have local access or relevant kernel warnings appear.
Technical view
Firmware-related initialization failure can release ath12k transmit-status buffers. During ath12k PCI unbinding, cleanup releases them again, producing a CWE-415 double free. The kernel fix nulls each buffer pointer after its first release. The issue is consistently reproducible in a VM when MSI address initialization fails.
Likely exposure
Exposure is limited to Linux systems using the ath12k PCI Wi-Fi driver and encountering the relevant initialization failure followed by unbinding. The bundle identifies affected Linux versions, including 6.3, 6.6.64, 6.11.11, 6.12.2, and 6.13, but does not provide unambiguous affected ranges. Distribution backports may change exposure.
Exploitation context
CVSS 3.1 scores this 7.8 high, requiring local access and low privileges, without user interaction. Potential impacts are rated high across confidentiality, integrity, and availability. The CVE is not listed as KEV, and the supplied sources provide no evidence of exploitation in the wild.
Researcher notes
The demonstrated path is a double free during error cleanup: initialization releases tx_status buffers, then ath12k_dp_free releases them during PCI removal. The fix clears pointers after release. The VM reproducibility statement concerns triggering the faulty lifecycle through MSI initialization failure; it does not, by itself, demonstrate controlled exploitation. Exact vulnerable commit ancestry should be checked against each kernel build.
Mitigation direction
Update to a vendor-supported kernel containing the referenced ath12k fixes.
Check distribution advisories because stable fixes may be backported without changing expected version numbering.
Prioritize systems using ath12k hardware, especially virtualized environments showing MSI initialization failures.
Limit unnecessary local access until affected kernels are updated.
Validation and detection
Inventory kernel versions and determine whether the ath12k PCI driver is present or loaded.
Verify the installed kernel contains the applicable stable fix or vendor backport.
Review kernel logs for ath12k initialization failures, SLUB warnings, or ath12k cleanup traces.
Test device initialization and removal safely after updating, without attempting exploitation.
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.
cwe · low confidence lookup
CWE-415: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
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.
2CVSS vectors
3Timeline events
1ADP providers
5Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: total
CVSS vector scores
2 official scores
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.