CVE-2024-43867
📋 TL;DR
This CVE describes a refcount underflow vulnerability in the nouveau DRM driver in the Linux kernel. When the nouveau_bo_ref() function is called on an uninitialized nouveau_bo object, it can cause a reference counter to underflow, potentially leading to memory corruption or system instability. This affects systems using the open-source NVIDIA nouveau graphics driver.
💻 Affected Systems
- Linux kernel with nouveau DRM 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 →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, system crash, or potential privilege escalation if memory corruption leads to arbitrary code execution in kernel context.
Likely Case
System instability, crashes, or denial of service affecting graphical applications or the entire system.
If Mitigated
Limited impact if systems don't use nouveau driver or have proper kernel hardening protections.
🎯 Exploit Status
Requires local access and ability to trigger the specific code path in nouveau driver. No public exploits known at this time.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Kernel versions containing commit 1b93f3e89d03cfc576636e195466a0d728ad8de5 or backported fixes
Vendor Advisory: https://git.kernel.org/stable/c/16998763c62bb465ebc409d0373b9cdcef1a61a6
Restart Required: Yes
Instructions:
1. Update Linux kernel to patched version from your distribution. 2. For distributions: sudo apt update && sudo apt upgrade linux-image-* (Debian/Ubuntu) or sudo yum update kernel (RHEL/CentOS). 3. Reboot system to load new kernel.
🔧 Temporary Workarounds
Disable nouveau driver
linuxTemporarily disable the nouveau driver to prevent exploitation
echo 'blacklist nouveau' | sudo tee /etc/modprobe.d/blacklist-nouveau.conf
sudo update-initramfs -u
sudo reboot
Use proprietary NVIDIA driver
linuxSwitch to proprietary NVIDIA driver instead of nouveau
sudo apt install nvidia-driver-* (Debian/Ubuntu)
sudo yum install kmod-nvidia (RHEL/CentOS)
🧯 If You Can't Patch
- Restrict local user access to systems with vulnerable kernels
- Implement kernel hardening features like KASLR and SMEP/SMAP
🔍 How to Verify
Check if Vulnerable:
Check kernel version and nouveau driver usage: uname -r && lsmod | grep nouveau
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version is updated and nouveau driver loads without issues: uname -r && dmesg | grep -i nouveau
📡 Detection & Monitoring
Log Indicators:
- Kernel oops messages in /var/log/kern.log or dmesg
- System crashes or hangs related to graphics
- nouveau driver error messages
Network Indicators:
- None - local vulnerability only
SIEM Query:
source="kernel" AND ("nouveau" OR "refcount" OR "underflow")
🔗 References
- https://git.kernel.org/stable/c/16998763c62bb465ebc409d0373b9cdcef1a61a6
- https://git.kernel.org/stable/c/2a1b327d57a8ac080977633a18999f032d7e9e3f
- https://git.kernel.org/stable/c/3bcb8bba72ce89667fa863054956267c450c47ef
- https://git.kernel.org/stable/c/906372e753c5027a1dc88743843b6aa2ad1aaecf
- https://git.kernel.org/stable/c/a9bf3efc33f1fbf88787a277f7349459283c9b95
- https://git.kernel.org/stable/c/ebebba4d357b6c67f96776a48ddbaf0060fa4c10
- https://git.kernel.org/stable/c/f23cd66933fe76b84d8e282e5606b4d99068c320
- https://lists.debian.org/debian-lts-announce/2024/10/msg00003.html
- https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html