CVE-2024-38390

5.5 MEDIUM

📋 TL;DR

This vulnerability is a null pointer dereference in the Linux kernel's MSM A6xx GPU driver that occurs when speedbin setting fails during initialization. It can cause kernel crashes or denial-of-service on affected systems. Systems using Qualcomm Adreno A6xx series GPUs with vulnerable Linux kernel versions are affected.

💻 Affected Systems

Products:
  • Linux kernel with MSM DRM driver for Qualcomm Adreno A6xx GPUs
Versions: Linux kernel versions before the fix commits (specific versions vary by distribution)
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Requires hardware with Qualcomm Adreno A6xx series GPUs and the MSM DRM 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 →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel panic leading to system crash and denial-of-service, potentially requiring physical reboot of affected devices.

🟠

Likely Case

System instability or crash when GPU initialization fails, affecting device availability.

🟢

If Mitigated

Minimal impact with proper kernel hardening and privilege separation in place.

🌐 Internet-Facing: LOW - Requires local access or ability to trigger GPU initialization failures.
🏢 Internal Only: MEDIUM - Could be exploited by local users or through other vulnerabilities to cause system instability.

🎯 Exploit Status

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

Requires ability to trigger GPU initialization failure conditions, typically requiring local access or kernel module loading capabilities.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Linux kernel with commits 247849eeb3fd88f8990ed73e33af70d5c10f9aec or later

Vendor Advisory: https://patchwork.freedesktop.org/patch/588919/

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix. 2. For distributions: Use package manager (apt/yum/dnf) to update kernel package. 3. Reboot system to load patched kernel.

🔧 Temporary Workarounds

Disable MSM DRM driver

linux

Prevent loading of vulnerable GPU driver module

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

🧯 If You Can't Patch

  • Restrict local user access to prevent triggering GPU initialization failures
  • Implement kernel hardening measures like SELinux/AppArmor to limit module loading

🔍 How to Verify

Check if Vulnerable:

Check kernel version and if MSM DRM driver is loaded: lsmod | grep msm

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes fix commit and test GPU functionality

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic messages
  • NULL pointer dereference in kernel logs
  • GPU initialization failure logs

Network Indicators:

  • None - local vulnerability

SIEM Query:

source="kernel" AND ("NULL pointer dereference" OR "panic" OR "oops") AND "msm" OR "a6xx"

🔗 References

📤 Share & Export