CVE-2024-40964
📋 TL;DR
A null pointer dereference vulnerability exists in the Linux kernel's ALSA HDA driver for CS35L41 audio codecs. When a device with index 0 is unbound, the cs35l41_hda_unbind() function may dereference a null pointer, potentially causing a kernel panic or system crash. This affects Linux systems using the affected kernel versions with CS35L41 audio hardware.
💻 Affected Systems
- Linux kernel
📦 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 →⚠️ Risk & Real-World Impact
Worst Case
Kernel panic leading to system crash and denial of service, requiring physical or remote reboot.
Likely Case
System instability or crash when audio devices are removed or reconfigured, causing temporary denial of service.
If Mitigated
Minor system disruption during audio device management operations.
🎯 Exploit Status
Requires local access and ability to trigger audio device unbinding operations.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Patches available in stable kernel trees (commits: 19be722369c3, 6386682cdc8b, ff27bd8e1788)
Vendor Advisory: https://git.kernel.org/stable/c/19be722369c347f3af1c5848e303980ed040b819
Restart Required: Yes
Instructions:
1. Update to patched kernel version from your distribution. 2. Rebuild kernel if using custom kernel. 3. Reboot system after update.
🔧 Temporary Workarounds
Disable CS35L41 audio driver
linuxPrevent loading of vulnerable driver module
echo 'blacklist snd_hda_codec_cs35l41' >> /etc/modprobe.d/blacklist.conf
rmmod snd_hda_codec_cs35l41
🧯 If You Can't Patch
- Restrict local user access to audio device management operations.
- Monitor system logs for kernel panic events related to audio drivers.
🔍 How to Verify
Check if Vulnerable:
Check if CS35L41 driver is loaded: lsmod | grep cs35l41
Check Version:
uname -r
Verify Fix Applied:
Check kernel version includes patched commits or verify driver version.
📡 Detection & Monitoring
Log Indicators:
- Kernel panic messages in /var/log/kern.log or dmesg
- Audio driver crash logs
Network Indicators:
- None - local vulnerability
SIEM Query:
source="kernel" AND ("panic" OR "Oops") AND "cs35l41"
🔗 References
- https://git.kernel.org/stable/c/19be722369c347f3af1c5848e303980ed040b819
- https://git.kernel.org/stable/c/6386682cdc8b41319c92fbbe421953e33a28840c
- https://git.kernel.org/stable/c/ff27bd8e17884f7cdefecb3f3817caadd6813dc0
- https://git.kernel.org/stable/c/19be722369c347f3af1c5848e303980ed040b819
- https://git.kernel.org/stable/c/6386682cdc8b41319c92fbbe421953e33a28840c
- https://git.kernel.org/stable/c/ff27bd8e17884f7cdefecb3f3817caadd6813dc0