CVE-2023-53351

5.5 MEDIUM

📋 TL;DR

A race condition vulnerability in the Linux kernel's DRM scheduler component can cause a NULL pointer dereference during GPU fault handling, leading to kernel oops or system crashes. This affects systems with AMD GPU hardware using the affected kernel versions, particularly during GPU reset operations.

💻 Affected Systems

Products:
  • Linux kernel with DRM scheduler support
Versions: Kernel versions containing the vulnerable code up to the fix
Operating Systems: Linux distributions with affected kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Requires AMD GPU hardware and GPU operations that trigger fault handling. Most impactful during GPU reset scenarios.

📦 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 causing data loss or system instability.

🟠

Likely Case

System crash or kernel oops during GPU-intensive operations or GPU reset scenarios, resulting in temporary denial of service.

🟢

If Mitigated

Minor system instability during GPU operations that requires system reboot to recover.

🌐 Internet-Facing: LOW - This is a local kernel vulnerability requiring GPU operations to trigger.
🏢 Internal Only: MEDIUM - Could affect workstations, servers, or virtual machines with AMD GPUs during normal GPU operations.

🎯 Exploit Status

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

Exploitation requires triggering GPU fault conditions during specific timing windows. Likely requires local access or ability to run GPU-intensive workloads.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Kernel versions with commit 2da5bffe9eaa5819a868e8eaaa11b3fd0f16a691 or c43a96fc00b662cef1ef0eb22d40441ce2abae8f

Vendor Advisory: https://git.kernel.org/stable/c/2da5bffe9eaa5819a868e8eaaa11b3fd0f16a691

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix commit. 2. Reboot system to load new kernel. 3. Verify kernel version matches patched version.

🔧 Temporary Workarounds

Disable GPU-intensive workloads

all

Avoid running GPU-intensive applications or workloads that could trigger GPU faults

🧯 If You Can't Patch

  • Monitor system logs for kernel oops messages related to GPU faults
  • Implement system monitoring to detect and alert on unexpected system crashes

🔍 How to Verify

Check if Vulnerable:

Check kernel version and verify if it contains the vulnerable code by examining kernel source or checking distribution security advisories

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version contains the fix commit 2da5bffe9eaa5819a868e8eaaa11b3fd0f16a691 or c43a96fc00b662cef1ef0eb22d40441ce2abae8f

📡 Detection & Monitoring

Log Indicators:

  • Kernel oops messages in /var/log/kern.log or dmesg output
  • GPU fault-related error messages
  • System crash reports

SIEM Query:

source="kernel" AND ("oops" OR "NULL pointer dereference" OR "GPU fault" OR "drm_sched_fault")

🔗 References

📤 Share & Export