CVE-2024-53191

7.8 HIGH

📋 TL;DR

This CVE describes a double-free vulnerability in the Linux kernel's ath12k WiFi driver that occurs during device unbinding when firmware initialization fails. The vulnerability allows potential kernel memory corruption and could lead to system crashes or privilege escalation. It primarily affects Linux systems using Qualcomm Atheros ath12k WiFi hardware.

💻 Affected Systems

Products:
  • Linux kernel with ath12k driver
Versions: Linux kernel versions containing vulnerable ath12k driver code (specific versions not specified in CVE, but patches are available in stable branches)
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: The issue is particularly reproducible in virtual machine environments where MSI addressing initialization may fail. Requires ath12k WiFi hardware or driver to be present.

📦 What is this software?

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel panic leading to denial of service, or potential privilege escalation to kernel mode if an attacker can trigger the double-free and control subsequent memory allocations.

🟠

Likely Case

System crash or kernel panic when unbinding the ath12k device, particularly in virtualized environments where MSI addressing initialization may fail.

🟢

If Mitigated

System remains stable as the patch prevents the double-free condition from occurring.

🌐 Internet-Facing: LOW - Requires local access to trigger the vulnerability through device unbinding operations.
🏢 Internal Only: MEDIUM - Local users or processes with sufficient privileges could trigger the vulnerability, potentially causing system instability.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Exploitation requires local access and ability to trigger device unbinding operations. The vulnerability is a double-free that could potentially be leveraged for privilege escalation, but no public exploits are known.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Patches available in Linux kernel stable branches (commits: 223b546c6222d42147eff034433002ca5e2e7e09, 90556b96338aa6037cd26dac857327fda7c19732, 94c9100b600f05a36b33f9ed76dbd6fb0eb25386, ca68ce0d9f4bcd032fd1334441175ae399642a06)

Vendor Advisory: https://git.kernel.org/stable/c/223b546c6222d42147eff034433002ca5e2e7e09

Restart Required: Yes

Instructions:

1. Update to a patched Linux kernel version from your distribution's repositories. 2. For custom kernels, apply the relevant patch from the stable kernel tree. 3. Reboot the system to load the new kernel.

🔧 Temporary Workarounds

Disable ath12k driver

linux

Prevent loading of the vulnerable ath12k driver module

echo 'blacklist ath12k' >> /etc/modprobe.d/blacklist-ath12k.conf
rmmod ath12k
update-initramfs -u

Avoid device unbinding

linux

Prevent operations that trigger device unbinding for ath12k hardware

🧯 If You Can't Patch

  • Restrict local access to prevent users from triggering device unbinding operations
  • Monitor system logs for warnings related to ath12k driver or kernel memory management

🔍 How to Verify

Check if Vulnerable:

Check if ath12k driver is loaded: lsmod | grep ath12k. Check kernel version and whether it contains the vulnerable code.

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version is updated to include the patch. Check dmesg for absence of double-free warnings during ath12k operations.

📡 Detection & Monitoring

Log Indicators:

  • Kernel warnings about 'free_large_kmalloc' in dmesg
  • Ath12k driver error messages during initialization or unbinding
  • Kernel panic or oops messages

SIEM Query:

source="kernel" AND ("free_large_kmalloc" OR "ath12k" AND ("warning" OR "error" OR "panic"))

🔗 References

📤 Share & Export