CVE-2024-40987

5.5 MEDIUM

📋 TL;DR

This CVE addresses an out-of-bounds write vulnerability in the AMD GPU driver within the Linux kernel. An attacker with local access could potentially trigger undefined behavior leading to kernel crashes or privilege escalation. Systems using AMD graphics hardware with affected kernel versions are vulnerable.

💻 Affected Systems

Products:
  • Linux kernel with AMD GPU driver (drm/amdgpu)
Versions: Kernel versions containing the vulnerable kv_dpm.c code before fixes were applied
Operating Systems: Linux distributions with affected kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems with AMD Radeon graphics hardware using the affected driver module.

📦 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 →

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 privilege escalation leading to full system compromise through kernel memory corruption.

🟠

Likely Case

Kernel panic or system crash causing denial of service.

🟢

If Mitigated

No impact if kernel bounds checking prevents exploitation.

🌐 Internet-Facing: LOW - Requires local access to exploit.
🏢 Internal Only: MEDIUM - Local users or malicious insiders could exploit this vulnerability.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Requires local access and knowledge of driver internals to trigger the UBSAN warning condition.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Kernel commits: 1c44f7759a5650acf8f13d3e0a184d09e03be9e4, 4ad7d49059358ceadd352b4e2511425bdb68f400, 4d020c1dbd2b2304f44d003e6de956ae570049dc, b065d79ed06a0bb4377bc6dcc2ff0cb1f55a798f, b0d612619ed70cab476c77b19e00d13aa414e14f

Vendor Advisory: https://git.kernel.org/stable/c/1c44f7759a5650acf8f13d3e0a184d09e03be9e4

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix commits. 2. Rebuild kernel if compiling from source. 3. Reboot system to load patched kernel.

🔧 Temporary Workarounds

Disable AMD GPU driver module

linux

Prevents loading of vulnerable amdgpu kernel module

echo 'blacklist amdgpu' >> /etc/modprobe.d/blacklist-amdgpu.conf
update-initramfs -u
reboot

🧯 If You Can't Patch

  • Restrict local user access to systems with AMD graphics hardware
  • Implement strict privilege separation and limit user permissions

🔍 How to Verify

Check if Vulnerable:

Check kernel version and if amdgpu module is loaded: lsmod | grep amdgpu

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes fix commits: uname -r and check git log for commit hashes

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic logs
  • UBSAN warnings in dmesg output
  • System crash reports

Network Indicators:

  • None - local exploit only

SIEM Query:

search 'kernel panic' OR 'UBSAN' OR 'amdgpu' in system logs

🔗 References

📤 Share & Export