Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-43370

CVE-2026-43370: Linux Kernel Use-After-Free Vulnerability

CVE-2026-43370 is a use-after-free race condition in the Linux Kernel AMDGPU driver affecting VM acquisition. This article covers the technical details, affected versions, security impact, and mitigation strategies.

Published:

CVE-2026-43370 Overview

CVE-2026-43370 is a use-after-free race condition in the Linux kernel's AMD GPU driver (drm/amdgpu). The flaw resides in the virtual memory (VM) acquire path, where the vm->process_info field is assigned non-atomically. When a parent and child process share a drm_file descriptor after fork() and both attempt to acquire the same VM concurrently, the race can leave a dangling pointer that is subsequently dereferenced [CWE-416].

The vulnerability affects Linux kernel builds that include the amdgpu driver, including the 7.0-rc1 and 7.0-rc2 release candidates. Exploitation requires local access and low privileges, but successful exploitation can lead to memory corruption with high impact on confidentiality, integrity, and availability.

Critical Impact

A local attacker with access to the AMD GPU device node can trigger a use-after-free in kernel memory, potentially leading to privilege escalation or kernel-level denial of service.

Affected Products

  • Linux kernel amdgpu driver across multiple stable branches
  • Linux kernel 7.0-rc1
  • Linux kernel 7.0-rc2

Discovery Timeline

  • 2026-05-08 - CVE-2026-43370 published to NVD
  • 2026-05-15 - Last updated in NVD database

Technical Details for CVE-2026-43370

Vulnerability Analysis

The defect lives in the AMD GPU Direct Rendering Manager (DRM) driver, specifically in the code path that acquires a per-process VM structure. The driver stores process bookkeeping in a vm->process_info pointer. The original code wrote this pointer using a plain, non-atomic store. When two threads of execution acquire the same VM at the same time, both can observe the field as unset, both can allocate or reference a process_info object, and one assignment can overwrite the other. The stale allocation is then freed while another execution context still holds a reference, producing a classic use-after-free.

The upstream fix replaces the plain assignment with a cmpxchg() operation. This atomic compare-and-exchange ensures only one writer installs the process_info pointer; the losing writer detects the conflict and releases its temporary allocation. The fix was cherry-picked from commit c7c573275ec20db05be769288a3e3bb2250ec618.

Root Cause

The root cause is a missing atomicity guarantee on a shared kernel pointer. The drm_file handle can be inherited across fork(), so parent and child processes legitimately share file descriptor state. The VM acquire path did not serialize concurrent first-time initialization of vm->process_info, violating the data-race-free invariant required for shared kernel objects.

Attack Vector

An attacker requires local access and the ability to open /dev/dri/renderD* or /dev/dri/card* on a system with an AMD GPU. The attacker calls fork() after opening the DRM node so both processes inherit the same drm_file. Each process then issues an ioctl that drives the VM acquire path. With sufficient scheduling pressure, the race window opens and the use-after-free condition triggers, corrupting kernel memory.

No verified public proof-of-concept is available. See the kernel git references for technical details on the specific code paths involved.

Detection Methods for CVE-2026-43370

Indicators of Compromise

  • Kernel oops or panic messages referencing amdgpu_vm, amdgpu_vm_make_compute callers, or process_info in the call trace.
  • KASAN reports flagging use-after-free in the amdgpu driver on systems with the sanitizer enabled.
  • Unexpected segmentation faults or GPU context resets in workloads that frequently fork() after opening DRM device nodes.

Detection Strategies

  • Inventory Linux hosts running AMD GPUs and compare installed kernel versions against the fixed commits listed in the kernel.org stable tree.
  • Monitor dmesg and journald for BUG:, WARNING:, or KASAN: entries originating in drivers/gpu/drm/amd/amdgpu/.
  • Audit local processes accessing /dev/dri/* followed by rapid fork() and ioctl sequences, a pattern consistent with race exploitation attempts.

Monitoring Recommendations

  • Enable kernel crash collection and forward kdump artifacts to a central system for triage.
  • Correlate auditd EXECVE and OPEN events on DRM device nodes with subsequent kernel warnings.
  • Track GPU driver-related crash frequency over time; sustained increases on a single host may indicate exploitation attempts.

How to Mitigate CVE-2026-43370

Immediate Actions Required

  • Update the Linux kernel to a version containing one of the fix commits referenced by the kernel.org stable maintainers.
  • Restrict access to /dev/dri/* device nodes to trusted local users via group membership and udev rules.
  • Reboot systems after kernel package updates to ensure the patched amdgpu module is loaded.

Patch Information

The fix is upstream and has been backported across multiple stable branches. Apply the kernel update corresponding to your distribution. Relevant commits include 2c1030f2e848, 46d309996bd9, 7885eb335d8f, 904025fa8bba, 94b7782d0c80, ae87aea330c2, c658c1c85ec2, and e61e355cbe49.

Workarounds

  • Where AMD GPU acceleration is not required, blacklist the amdgpu module until the host can be patched.
  • Limit which accounts can open DRM render nodes by tightening the render and video group membership.
  • For multi-tenant systems, deny untrusted workloads direct GPU passthrough until the kernel update is deployed.
bash
# Verify running kernel and amdgpu module status
uname -r
modinfo amdgpu | grep -E '^(filename|version|srcversion):'

# Temporarily disable the amdgpu driver until patching
echo 'blacklist amdgpu' | sudo tee /etc/modprobe.d/disable-amdgpu.conf
sudo update-initramfs -u

# Restrict DRM render node access to a specific group
sudo chgrp render /dev/dri/renderD128
sudo chmod 0660 /dev/dri/renderD128

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.