CVE-2024-26943
📋 TL;DR
This CVE addresses a null pointer dereference vulnerability in the Linux kernel's Nouveau driver for NVIDIA GPUs. If memory allocation fails during GPU memory eviction, the system could crash or become unstable. This affects Linux systems using the open-source Nouveau driver with NVIDIA graphics hardware.
💻 Affected Systems
- Linux kernel with Nouveau 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 →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 system instability.
Likely Case
System crash or instability when GPU memory management fails under low memory conditions.
If Mitigated
Minimal impact as the patch prevents the null pointer dereference by ensuring allocation succeeds.
🎯 Exploit Status
Exploitation requires local access and ability to create specific memory pressure conditions. No known public exploits.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Linux kernel versions containing commits 16e87fe23d4af6df920406494ced5c0f4354567b, 2a84744a037b8a511d6a9055f3defddc28ff4a4d, 3e82f7383e0b82a835e6b6b06a348b2bc4e2c2ee, 5e81773757a95fc298e96cfd6d4700f07b6192a2, or 9acfd8b083a0ffbd387566800d89f55058a68af2
Vendor Advisory: https://git.kernel.org/stable/c/16e87fe23d4af6df920406494ced5c0f4354567b
Restart Required: Yes
Instructions:
1. Update Linux kernel to version containing the fix commits. 2. Reboot system. 3. Verify Nouveau driver is loaded and functioning.
🔧 Temporary Workarounds
Disable Nouveau driver
linuxTemporarily disable the Nouveau driver to prevent the vulnerability from being triggered
echo 'blacklist nouveau' >> /etc/modprobe.d/blacklist-nouveau.conf
update-initramfs -u
reboot
Use proprietary NVIDIA driver
linuxSwitch to NVIDIA's proprietary driver instead of the open-source Nouveau driver
apt-get install nvidia-driver-xxx (Debian/Ubuntu)
yum install nvidia-driver (RHEL/CentOS)
🧯 If You Can't Patch
- Monitor system memory usage and ensure adequate available memory
- Implement strict memory limits for user processes to prevent memory exhaustion scenarios
🔍 How to Verify
Check if Vulnerable:
Check kernel version and if Nouveau driver is loaded: lsmod | grep nouveau && uname -r
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version is patched and Nouveau driver loads without issues: dmesg | grep -i nouveau
📡 Detection & Monitoring
Log Indicators:
- Kernel panic messages
- NULL pointer dereference errors in dmesg
- GPU memory allocation failures
Network Indicators:
- None - this is a local vulnerability
SIEM Query:
source="kernel" AND ("NULL pointer dereference" OR "nouveau" OR "kernel panic")
🔗 References
- https://git.kernel.org/stable/c/16e87fe23d4af6df920406494ced5c0f4354567b
- https://git.kernel.org/stable/c/2a84744a037b8a511d6a9055f3defddc28ff4a4d
- https://git.kernel.org/stable/c/3e82f7383e0b82a835e6b6b06a348b2bc4e2c2ee
- https://git.kernel.org/stable/c/5e81773757a95fc298e96cfd6d4700f07b6192a2
- https://git.kernel.org/stable/c/9acfd8b083a0ffbd387566800d89f55058a68af2
- https://git.kernel.org/stable/c/16e87fe23d4af6df920406494ced5c0f4354567b
- https://git.kernel.org/stable/c/2a84744a037b8a511d6a9055f3defddc28ff4a4d
- https://git.kernel.org/stable/c/3e82f7383e0b82a835e6b6b06a348b2bc4e2c2ee
- https://git.kernel.org/stable/c/5e81773757a95fc298e96cfd6d4700f07b6192a2
- https://git.kernel.org/stable/c/9acfd8b083a0ffbd387566800d89f55058a68af2