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

CVE-2026-53170: Linux Kernel Privilege Escalation Flaw

CVE-2026-53170 is a privilege escalation vulnerability in the Linux kernel's accel/ethosu driver that allows DMA commands with uninitialized length values to bypass security checks. This article covers technical details, impact, and mitigation.

Published:

CVE-2026-53170 Overview

CVE-2026-53170 is a Linux kernel vulnerability in the accel/ethosu driver, which provides support for Arm Ethos-U Neural Processing Units (NPUs). The flaw allows DMA (Direct Memory Access) commands with uninitialized length fields to bypass bounds checking, enabling the NPU hardware to execute DMA operations against stale physical addresses. The vulnerability stems from an integer wraparound when arithmetic is performed on the sentinel value U64_MAX, which the driver uses to indicate uninitialized state. A local user with access to the NPU device can trigger this condition by omitting the NPU_SET_DMA0_LEN command before issuing NPU_OP_DMA_START.

Critical Impact

A local attacker can cause the NPU hardware to perform DMA operations using stale physical addresses, bypassing kernel bounds checks and potentially leading to memory corruption or information disclosure.

Affected Products

  • Linux kernel versions containing the accel/ethosu driver prior to the fix
  • Systems with Arm Ethos-U NPU hardware exposed to userspace
  • Stable kernel branches receiving the backported patches

Discovery Timeline

  • 2026-06-25 - CVE-2026-53170 published to NVD
  • 2026-06-25 - Last updated in NVD database

Technical Details for CVE-2026-53170

Vulnerability Analysis

The accel/ethosu driver manages command submission to Arm Ethos-U NPU hardware. The function cmd_state_init() initializes the command state structure using memset(0xff), which sets dma->len to U64_MAX. This sentinel value indicates that the field has not yet been configured by userspace. The only legitimate setter for this field is the NPU_SET_DMA0_LEN command.

When userspace skips NPU_SET_DMA0_LEN and directly issues NPU_OP_DMA_START, dma->len remains at U64_MAX. Inside dma_length(), the driver computes a length by adding a positive stride to the uninitialized value. The addition wraps around to a small number due to unsigned integer overflow. When size0 == 1, the subsequent check_mul_overflow() call fails to detect any overflow, and dma_length() returns 0 instead of the expected U64_MAX sentinel.

The caller's U64_MAX validation passes because the function now returns 0. The region_size[] array remains at 0, causing the bounds check in ethosu_job.c to be bypassed. The NPU then executes DMA against whatever stale physical addresses were left in the command state, outside of any validated memory region.

Root Cause

The root cause is improper input validation combined with integer wraparound on a sentinel value. The driver relies on U64_MAX to detect uninitialized fields, but dma_length() performs arithmetic on this value before checking it. The wraparound produces a benign-looking result that passes downstream validation [CWE-190, CWE-908].

Attack Vector

The attack vector is local. A user with permission to open the Ethos-U device node and submit command buffers can craft a sequence that omits NPU_SET_DMA0_LEN and issues NPU_OP_DMA_START directly. The NPU hardware then performs DMA with attacker-influenced or stale addresses, bypassing the driver's region bounds enforcement.

No verified public exploit code is available. The vulnerability mechanism is described in the upstream commits referenced in the Kernel Git Commit and the Stable Backport Commit.

Detection Methods for CVE-2026-53170

Indicators of Compromise

  • Unexpected NPU command submissions from non-privileged userspace processes accessing /dev/accel/ device nodes.
  • Kernel log entries referencing ethosu_job bounds violations or DMA faults on systems with Ethos-U hardware.
  • Anomalous DMA activity on physical memory regions not associated with allocated NPU buffers.

Detection Strategies

  • Audit ioctl() and command stream submissions to the Ethos-U device for sequences that issue NPU_OP_DMA_START without a preceding NPU_SET_DMA0_LEN.
  • Monitor kernel taint flags and IOMMU fault counters on platforms where the NPU sits behind an IOMMU.
  • Inspect running kernel versions against the patched commits to identify unpatched hosts.

Monitoring Recommendations

  • Enable kernel auditd rules covering access to accelerator device nodes and correlate with process identity.
  • Forward kernel ring buffer messages to a centralized log platform for anomaly detection on driver fault paths.
  • Track NPU job completion errors and DMA descriptor validation failures as signals of attempted exploitation.

How to Mitigate CVE-2026-53170

Immediate Actions Required

  • Apply the upstream kernel patches referenced in the official commits as soon as they are available from your distribution vendor.
  • Restrict access to Ethos-U accelerator device nodes to trusted system services using filesystem permissions and Linux capabilities.
  • Inventory all systems with Arm Ethos-U NPU hardware to determine exposure scope.

Patch Information

The fix adds an explicit U64_MAX check at the start of dma_length() before any arithmetic is performed, matching the sentinel-value convention used elsewhere in the driver. The patches are available in the upstream Kernel Git Commit and the corresponding Stable Backport Commit. Administrators should pull updated kernel packages from their distribution as soon as backported builds are released.

Workarounds

  • Remove or blacklist the ethosu kernel module on systems where NPU functionality is not required.
  • Apply mandatory access controls such as SELinux or AppArmor policies to restrict which processes can open Ethos-U device nodes.
  • Use cgroup device controllers to deny access to accelerator devices for untrusted containers and workloads.
bash
# Configuration example: blacklist the ethosu module until patched
echo "blacklist ethosu" | sudo tee /etc/modprobe.d/blacklist-ethosu.conf
sudo depmod -a
sudo update-initramfs -u

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.