CVE-2024-57978
📋 TL;DR
This CVE describes a NULL pointer dereference vulnerability in the Linux kernel's imx-jpeg media driver. The issue occurs when the detach_pm() function attempts to check if a device is suspended without first verifying the pointer isn't an error pointer. This affects systems using the affected Linux kernel versions with the imx-jpeg driver loaded.
💻 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 →⚠️ Risk & Real-World Impact
Worst Case
Kernel panic leading to system crash and denial of service, potentially causing data loss or service disruption.
Likely Case
System crash or kernel panic when the specific error condition is triggered during device detachment operations.
If Mitigated
No impact if the vulnerable driver isn't loaded or the specific error condition doesn't occur.
🎯 Exploit Status
Requires ability to trigger the specific error condition in the driver, likely requiring local access or specific hardware interaction.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Patches available in stable kernel trees (commits referenced in CVE)
Vendor Advisory: https://git.kernel.org/stable/c/1378ffec30367233152b7dbf4fa6a25ee98585d1
Restart Required: Yes
Instructions:
1. Update to a patched Linux kernel version from your distribution. 2. Reboot the system to load the new kernel. 3. Verify the imx-jpeg driver is using the patched code.
🔧 Temporary Workarounds
Disable imx-jpeg driver
linuxPrevent loading of the vulnerable driver module
echo 'blacklist imx-jpeg' >> /etc/modprobe.d/blacklist.conf
rmmod imx-jpeg
🧯 If You Can't Patch
- Ensure the imx-jpeg driver is not loaded if not required
- Implement strict access controls to limit who can interact with media devices
🔍 How to Verify
Check if Vulnerable:
Check if imx-jpeg driver is loaded: lsmod | grep imx_jpeg. Check kernel version against patched versions.
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version is updated and check that the driver loads without issues during media operations.
📡 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 vulnerability
SIEM Query:
source="kernel" AND ("NULL pointer dereference" OR "kernel panic" OR "Oops") AND process="imx-jpeg"
🔗 References
- https://git.kernel.org/stable/c/1378ffec30367233152b7dbf4fa6a25ee98585d1
- https://git.kernel.org/stable/c/1b2af918bb714937a8be6cb637f528585461cd98
- https://git.kernel.org/stable/c/6e601a64f7777e2f78c02db1a8b5ba3b7c5e9e31
- https://git.kernel.org/stable/c/a32ba399a030853f2db45a90ba5474fdd3494aad
- https://git.kernel.org/stable/c/f0b8535a7885ed4fd0b11625addb5476cae0f845
- https://git.kernel.org/stable/c/fde89fe11b44500bfcb2d405825b69a5df805d19
- https://lists.debian.org/debian-lts-announce/2025/03/msg00028.html