CVE-2024-56580
📋 TL;DR
A NULL pointer dereference vulnerability in the Linux kernel's CAMSS driver allows local attackers to cause a kernel panic and system crash. This affects Linux systems using Qualcomm Camera Subsystem drivers, particularly on ARM-based devices. The vulnerability requires local access to trigger.
💻 Affected Systems
- Linux kernel with CONFIG_VIDEO_QCOM_CAMSS enabled
📦 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 →⚠️ Risk & Real-World Impact
Worst Case
Local denial of service causing kernel panic and system reboot, potentially leading to data loss or service disruption.
Likely Case
System crash requiring reboot when CAMSS driver initialization fails due to missing power domain registration.
If Mitigated
No impact if proper kernel hardening prevents local user access or if CAMSS driver is not loaded.
🎯 Exploit Status
Exploitation requires local access and ability to trigger CAMSS driver probe with missing power domains. Simple to trigger but requires specific conditions.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Linux kernel commit 4f45d65b781499d2a79eca12155532739c876aa2
Vendor Advisory: https://git.kernel.org/stable/c/4f45d65b781499d2a79eca12155532739c876aa2
Restart Required: Yes
Instructions:
1. Update to Linux kernel version containing commit 4f45d65b781499d2a79eca12155532739c876aa2
2. Rebuild kernel if compiling from source
3. Reboot system to load patched kernel
🔧 Temporary Workarounds
Disable CAMSS driver
linuxPrevent loading of vulnerable driver module
echo 'blacklist qcom_camss' >> /etc/modprobe.d/blacklist.conf
rmmod qcom_camss
🧯 If You Can't Patch
- Restrict local user access to prevent triggering the vulnerability
- Ensure CAMSS power domains are properly registered before driver probe
🔍 How to Verify
Check if Vulnerable:
Check if CAMSS driver is loaded: lsmod | grep camss AND check kernel version against patched commit
Check Version:
uname -r
Verify Fix Applied:
Verify kernel contains commit: git log --oneline | grep '4f45d65b781499d2a79eca12155532739c876aa2'
📡 Detection & Monitoring
Log Indicators:
- Kernel panic messages mentioning 'dev_pm_domain_detach' or 'camss_probe'
- NULL pointer dereference warnings in dmesg
Network Indicators:
- None - local vulnerability only
SIEM Query:
kernel: "NULL pointer dereference" AND "camss" OR "dev_pm_domain_detach"