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

CVE-2026-45958: Linux Kernel Privilege Escalation Flaw

CVE-2026-45958 is a privilege escalation vulnerability in the Linux kernel's DRM Exynos VIDI driver that allows arbitrary kernel memory access. This article covers technical details, affected versions, and mitigations.

Published:

CVE-2026-45958 Overview

CVE-2026-45958 is a Linux kernel vulnerability in the drm/exynos Virtual Display (VIDI) driver. The flaw resides in the vidi_connection_ioctl() function, which directly dereferences a user-supplied pointer (vidi->edid) inside kernel context. Because the kernel trusts the address provided from user space, an unprivileged caller can read or influence arbitrary kernel memory through the ioctl interface. Maintainers resolved the issue by copying the Extended Display Identification Data (EDID) buffer into kernel memory with copy_from_user() before use.

Critical Impact

A local user with access to the Exynos DRM device can trigger arbitrary kernel memory access, leading to information disclosure or kernel memory corruption.

Affected Products

  • Linux kernel containing the drm/exynos VIDI driver
  • Distributions shipping affected stable kernels referenced in upstream commits
  • Embedded and ARM-based systems using Exynos DRM

Discovery Timeline

  • 2026-05-27 - CVE-2026-45958 published to NVD
  • 2026-05-27 - Last updated in NVD database

Technical Details for CVE-2026-45958

Vulnerability Analysis

The drm/exynos Virtual Display (VIDI) driver exposes an ioctl handler, vidi_connection_ioctl(), used to manage virtual display connection events including EDID data. In the affected code path, the kernel reads from vidi->edid, a pointer value supplied directly by user space, without first copying the data into a kernel buffer. Operating on a raw user pointer inside kernel mode breaks the user/kernel address space boundary that Linux memory protections depend on.

Because the dereferenced address is attacker-controlled, the operation can target arbitrary kernel virtual addresses. Depending on how the EDID data is consumed downstream, this enables read primitives against kernel memory and may permit influence over kernel data structures. The patch replaces the direct dereference with a copy_from_user() call that validates the source region and stages the EDID buffer in kernel memory before any further processing.

Root Cause

The root cause is improper handling of a user-space pointer in kernel context. The ioctl handler treated vidi->edid as if it referenced kernel-accessible memory, omitting the required copy_from_user() boundary transition. This pattern violates standard Linux kernel input-handling discipline for ioctl payloads.

Attack Vector

Exploitation requires local access to the Exynos DRM device node and the ability to issue ioctl calls against the VIDI driver. An attacker constructs an ioctl request with a crafted edid pointer aimed at a target kernel address. When the handler dereferences the pointer, the kernel operates on memory the attacker selected, enabling information disclosure or corruption of kernel state.

No verified public exploit code is referenced in the advisory. Technical context is available in the upstream stable tree commits, including Linux Kernel Commit 13537f7 and Linux Kernel Commit 2e147aa.

Detection Methods for CVE-2026-45958

Indicators of Compromise

  • Unexpected ioctl activity from unprivileged processes against /dev/dri/* nodes on Exynos platforms
  • Kernel oops, general protection faults, or BUG: messages referencing vidi_connection_ioctl in dmesg
  • Processes opening DRM device nodes that have no display or graphics-related role

Detection Strategies

  • Audit kernel logs for crashes or warnings originating in the drm/exynos VIDI code path
  • Monitor for unsigned or out-of-policy kernel modules loaded on Exynos-based devices
  • Compare running kernel versions against the fixed commits listed in the upstream stable tree references

Monitoring Recommendations

  • Enable kernel auditing of ioctl calls targeting DRM device files on affected systems
  • Forward dmesg and auditd events to a centralized logging or SIEM platform for correlation
  • Track local privilege escalation attempts and unexpected process behavior on ARM/Exynos endpoints

How to Mitigate CVE-2026-45958

Immediate Actions Required

  • Update affected Linux kernels to a stable release that includes the upstream fix referenced in the NVD advisory
  • Restrict access to DRM device nodes (/dev/dri/*) to trusted users and graphics-related service accounts
  • Inventory Exynos-based systems and prioritize patching for those exposing the VIDI driver

Patch Information

The fix replaces the direct user pointer dereference in vidi_connection_ioctl() with a copy_from_user() operation that safely stages EDID data in kernel memory. Patched commits are published across stable branches, including Linux Kernel Commit 235d702, Linux Kernel Commit 4949e32, Linux Kernel Commit 4c41938, Linux Kernel Commit 7efb6a4, Linux Kernel Commit c2914c0, and Linux Kernel Commit d4c98c0. Apply the version provided by your distribution vendor.

Workarounds

  • Unload or blacklist the exynos_drm module on systems that do not require the virtual display driver
  • Tighten permissions on /dev/dri/* so that only authorized users can open the device
  • Apply Linux Security Module policies (SELinux, AppArmor) to limit ioctl access to DRM devices

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.