CVE-2024-46849
📋 TL;DR
This CVE describes a use-after-free vulnerability in the Linux kernel's ASoC (Audio System on Chip) subsystem for Amlogic AXG sound cards. The vulnerability occurs when the 'card->dai_link' buffer is reallocated but a 'pad' pointer continues to reference the old memory location, potentially allowing attackers to execute arbitrary code or cause system crashes. This affects Linux systems using the affected ASoC driver.
💻 Affected Systems
- Linux kernel with ASoC meson axg-card driver
📦 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 →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 →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 →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
Local privilege escalation to kernel mode, allowing complete system compromise, data theft, or persistent backdoor installation.
Likely Case
Kernel panic leading to system crash and denial of service, requiring reboot to restore functionality.
If Mitigated
Limited impact due to SELinux/AppArmor restrictions or container isolation preventing kernel access.
🎯 Exploit Status
Requires local access and ability to load/modify kernel modules. The KASAN report suggests the bug is detectable during module loading.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Fixed in kernel commits: 4f9a71435953f941969a4f017e2357db62d85a86, 5a2cc2bb81399e9ebc72560541137eb04d61dc3d, 7d318166bf55e9029d56997c3b134f4ac2ae2607, a33145f494e6cb82f3e018662cc7c4febf271f22, e1a199ec31617242e1a0ea8f312341e682d0c037
Vendor Advisory: https://git.kernel.org/stable/c/4f9a71435953f941969a4f017e2357db62d85a86
Restart Required: Yes
Instructions:
1. Update Linux kernel to version containing the fix commits. 2. Check distribution-specific security advisories. 3. Reboot system to load patched kernel.
🔧 Temporary Workarounds
Disable vulnerable kernel module
linuxPrevent loading of the affected snd_soc_meson_axg_sound_card module
echo 'blacklist snd_soc_meson_axg_sound_card' >> /etc/modprobe.d/blacklist.conf
rmmod snd_soc_meson_axg_sound_card
🧯 If You Can't Patch
- Restrict local user access to systems with vulnerable kernel
- Implement strict SELinux/AppArmor policies to limit kernel module operations
🔍 How to Verify
Check if Vulnerable:
Check if snd_soc_meson_axg_sound_card module is loaded: lsmod | grep snd_soc_meson_axg_sound_card
Check Version:
uname -r
Verify Fix Applied:
Check kernel version against distribution security advisory; verify module loads without KASAN errors
📡 Detection & Monitoring
Log Indicators:
- Kernel panic messages
- KASAN use-after-free reports in dmesg
- Failed module loading attempts
Network Indicators:
- None - local exploitation only
SIEM Query:
source="kernel" AND ("KASAN" OR "use-after-free" OR "snd_soc_meson")
🔗 References
- https://git.kernel.org/stable/c/4f9a71435953f941969a4f017e2357db62d85a86
- https://git.kernel.org/stable/c/5a2cc2bb81399e9ebc72560541137eb04d61dc3d
- https://git.kernel.org/stable/c/7d318166bf55e9029d56997c3b134f4ac2ae2607
- https://git.kernel.org/stable/c/a33145f494e6cb82f3e018662cc7c4febf271f22
- https://git.kernel.org/stable/c/e1a199ec31617242e1a0ea8f312341e682d0c037
- https://git.kernel.org/stable/c/e43364f578cdc2f8083abbc0cb743ea55e827c29
- https://git.kernel.org/stable/c/fb0530025d502cb79d2b2801b14a9d5261833f1a
- https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html
- https://lists.debian.org/debian-lts-announce/2025/03/msg00002.html