CVE-2021-47645
📋 TL;DR
A NULL pointer dereference vulnerability in the Linux kernel's Zoran media driver allows local attackers to cause a kernel panic or system crash. This affects systems using the staging media driver for Zoran-based video capture cards. Only local users with access to the affected driver can trigger this vulnerability.
💻 Affected Systems
- Linux kernel with Zoran media driver 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 →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 denial of service causing kernel panic and system crash, potentially leading to data loss or service disruption.
Likely Case
Local denial of service causing system instability or crash when specific media operations are performed.
If Mitigated
Minimal impact if proper access controls prevent unauthorized users from accessing the media subsystem.
🎯 Exploit Status
Requires local access and ability to interact with the Zoran media driver. No known public exploits.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Fixed in Linux kernel stable releases via commits referenced in CVE
Vendor Advisory: https://git.kernel.org/stable/c/20811bbe685ca3eddd34b0c750860427d7030910
Restart Required: Yes
Instructions:
1. Update Linux kernel to patched version from your distribution. 2. Reboot system to load new kernel. 3. Verify Zoran driver is not loaded if not needed.
🔧 Temporary Workarounds
Disable Zoran media driver
linuxPrevent loading of vulnerable driver module
echo 'blacklist zoran' >> /etc/modprobe.d/blacklist.conf
rmmod zoran
Restrict access to media devices
linuxLimit which users can access video capture devices
chmod 600 /dev/video*
setfacl -m u:root:rw /dev/video*
🧯 If You Can't Patch
- Disable the Zoran media driver if not required for system functionality
- Implement strict access controls to prevent unauthorized users from accessing media devices
🔍 How to Verify
Check if Vulnerable:
Check if Zoran driver is loaded: lsmod | grep zoran AND check kernel version against distribution security advisories
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version is patched AND Zoran driver is either not loaded or updated version
📡 Detection & Monitoring
Log Indicators:
- Kernel panic messages
- NULL pointer dereference errors in kernel logs
- Media subsystem crash logs
Network Indicators:
- None - local vulnerability only
SIEM Query:
source="kernel" AND ("NULL pointer dereference" OR "zoran" OR "media: staging")
🔗 References
- https://git.kernel.org/stable/c/20811bbe685ca3eddd34b0c750860427d7030910
- https://git.kernel.org/stable/c/20db2ed1e2f9fcd417fa67853e5154f0c2537d6c
- https://git.kernel.org/stable/c/7e76f3ed7ab2ae026c6ef9cc23096a7554af8c52
- https://git.kernel.org/stable/c/8dce4b265a5357731058f69645840dabc718c687
- https://git.kernel.org/stable/c/bafec1a6ba4b187a7fcdcfce0faebdc623d4ef8e
- https://git.kernel.org/stable/c/e3b86f4e558cea9eed71d894df2f19b10d60a207