CVE-2024-39466
📋 TL;DR
A null pointer dereference vulnerability in the Linux kernel's Qualcomm LMH thermal driver occurs when the driver fails to check for SCM (Secure Channel Manager) availability during probe. This can cause kernel crashes or system instability on affected devices. The vulnerability affects Linux systems with Qualcomm hardware using the LMH thermal driver.
💻 Affected Systems
- Linux kernel with Qualcomm LMH thermal 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 →⚠️ Risk & Real-World Impact
Worst Case
Kernel panic leading to system crash and denial of service, potentially requiring physical reboot.
Likely Case
System instability or crash when the thermal driver initializes on affected hardware configurations.
If Mitigated
Minor system instability that may be recoverable without full crash.
🎯 Exploit Status
This is a local kernel driver bug that occurs during driver initialization. No authentication bypass or remote exploitation is involved.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Kernel versions containing commits: 0a47ba94ec3d8f782b33e3d970cfcb769b962464, 2226b145afa5e13cb60dbe77fb20fb0666a1caf3, 560d69c975072974c11434ca6953891e74c1a665, aa1a0807b4a76b44fb6b58a7e9087cd4b18ab41b, d9d3490c48df572edefc0b64655259eefdcbb9be
Vendor Advisory: https://git.kernel.org/stable/c/0a47ba94ec3d8f782b33e3d970cfcb769b962464
Restart Required: Yes
Instructions:
1. Update Linux kernel to version containing the fix commits. 2. For distributions: Use package manager (apt/yum/dnf) to update kernel. 3. Reboot system to load new kernel.
🔧 Temporary Workarounds
Disable LMH thermal driver
linuxPrevent loading of the vulnerable driver module
echo 'blacklist qcom_lmh' > /etc/modprobe.d/blacklist-qcom-lmh.conf
rmmod qcom_lmh
🧯 If You Can't Patch
- Ensure systems are not using Qualcomm hardware with LMH thermal driver
- Implement monitoring for kernel panics or system instability
🔍 How to Verify
Check if Vulnerable:
Check if system has Qualcomm hardware and LMH driver loaded: lsmod | grep qcom_lmh
Check Version:
uname -r
Verify Fix Applied:
Check kernel version contains fix commits: uname -r and verify with distribution patch notes
📡 Detection & Monitoring
Log Indicators:
- Kernel panic messages
- Null pointer dereference errors in kernel logs
- System crash/reboot events
Network Indicators:
- None - this is a local kernel issue
SIEM Query:
source="kernel" AND ("NULL pointer dereference" OR "kernel panic" OR "qcom_lmh")
🔗 References
- https://git.kernel.org/stable/c/0a47ba94ec3d8f782b33e3d970cfcb769b962464
- https://git.kernel.org/stable/c/2226b145afa5e13cb60dbe77fb20fb0666a1caf3
- https://git.kernel.org/stable/c/560d69c975072974c11434ca6953891e74c1a665
- https://git.kernel.org/stable/c/aa1a0807b4a76b44fb6b58a7e9087cd4b18ab41b
- https://git.kernel.org/stable/c/d9d3490c48df572edefc0b64655259eefdcbb9be
- https://git.kernel.org/stable/c/0a47ba94ec3d8f782b33e3d970cfcb769b962464
- https://git.kernel.org/stable/c/2226b145afa5e13cb60dbe77fb20fb0666a1caf3
- https://git.kernel.org/stable/c/560d69c975072974c11434ca6953891e74c1a665
- https://git.kernel.org/stable/c/aa1a0807b4a76b44fb6b58a7e9087cd4b18ab41b
- https://git.kernel.org/stable/c/d9d3490c48df572edefc0b64655259eefdcbb9be