Cloudanix VulnDB

CVE-2025-38205

Medium · 5.5

CVSS

5.5

EPSS

0.2%

Published

Jul 4, 2025

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A bug in Linux graphics handling can crash the whole computer when certain display settings are used, and fixing it requires updating the operating system kernel.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
Low
Impact
Denial Of Service
Component
OS kernel
Class
Improper Input Validation
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Uninitialized dummy pitch value in populate_dummy_dml_surface_cfg() allows downstream divide-by-zero in CalculateVMAndRowBytes() within AMD display code path.

Why it matters to the business

Local denial of service via kernel panic or crash on systems using AMD GPUs, disrupting workloads until reboot; higher urgency for container-optimized environments given related privilege-escalation patterns in the ecosystem.

How an attack unfolds

An attacker with local access triggers the AMD display dummy surface configuration path without updated pitch values, causing integer division by zero that terminates the kernel process; observed in container-optimized OS privilege-escalation campaigns targeting similar Linux kernel flaws.

How to fix it

Apply the upstream fix commit 8044f981b2cf8c32fe1bd5d1fc991552cdf7ffe0 or later; update smarter-device-manager-fips to the fixed release; rebuild and deploy kernels containing the corrected populate_dummy_dml_surface_cfg() initialization.

How to confirm the fix worked

Confirm kernel source contains the commit 8044f981b2cf8c32fe1bd5d1fc991552cdf7ffe0; verify dummy pitch is initialized to 1 in populate_dummy_dml_surface_cfg(); test display mode-setting under load without triggering division faults.

Typical attack path

  1. Obtain local user or container access on affected Linux kernel
  2. Trigger AMD display initialization or mode-setting code paths that invoke populate_dummy_dml_surface_cfg()
  3. Ensure dummy values remain uninitialized
  4. Reach CalculateVMAndRowBytes() causing divide-by-zero fault
  5. Kernel panic or crash occurs

How to detect it

Review kernel logs for divide-by-zero faults in drm/amd/display or CalculateVMAndRowBytes(); correlate with AMD GPU initialization events; watch for unexpected container escapes or privilege-escalation attempts listed under related Linux kernel CVEs.

  • divide by zero in CalculateVMAndRowBytes
  • populate_dummy_dml_surface_cfg
  • drm/amd/display

What your security team should do

  • Prioritize patching all AMD GPU systems within 30 days given 480-day exposure window
  • Monitor for related container-optimized OS privilege-escalation activity
  • Restrict local unprivileged access where possible until patched
  • Include the fixed commit in all downstream kernel builds

The record

In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Avoid divide by zero by initializing dummy pitch to 1 [Why] If the dummy values in `populate_dummy_dml_surface_cfg()` aren't updated then they can lead to a divide by zero in downstream callers like CalculateVMAndRowBytes() [How] Initialize dummy value to a value to avoid divide by zero.

Affected packages

Ecosystem Package Introduced Fixed
Chainguard hyperv-daemons-6.12 0 6.12.57-r2
Chainguard linux-aws-6.12-boot-installed 0 6.12.57-r2
Chainguard linux-aws-6.12-fips-boot-installed 0 6.12.57-r2
Chainguard linux-aws-6.12-headers 0 6.12.57-r2
Chainguard linux-aws-6.12-modules 0 6.12.57-r2
Chainguard linux-azure-6.12-boot-installed 0 6.12.57-r2
Chainguard linux-azure-6.12-fips-boot-installed 0 6.12.57-r2
Chainguard linux-azure-6.12-headers 0 6.12.57-r2
Chainguard linux-azure-6.12-modules 0 6.12.57-r2
Chainguard linux-gcp-6.12-boot-installed 0 6.12.58-r0
Chainguard linux-gcp-6.12-fips-boot-installed 0 6.12.57-r2
Chainguard linux-gcp-6.12-headers 0 6.12.57-r2
Chainguard linux-gcp-6.12-modules 0 6.12.57-r2
Chainguard linux-qemu-6.12-boot-installed 0 6.12.63-r0
Chainguard linux-qemu-6.12-fips-boot-installed 0 6.12.63-r0
Chainguard linux-qemu-6.12-headers 0 6.12.63-r0
Chainguard linux-qemu-6.12-modules 0 6.12.63-r0
Chainguard linux-vmware-6.12-boot-installed 0 6.12.63-r0
Chainguard linux-vmware-6.12-fips-boot-installed 0 6.12.63-r0
Chainguard linux-vmware-6.12-headers 0 6.12.63-r0
Chainguard linux-vmware-6.12-modules 0 6.12.63-r0
Debian:11 linux 0 No fix
Debian:12 linux 0 No fix
Debian:13 linux 0 No fix
Debian:14 linux 0 6.16.3-1
Linux Kernel 6.7.0 6.15.4
SUSE:Linux Enterprise High Availability Extension 15 SP6 kernel-default 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-default 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-livepatch-SLE15-SP6-RT_Update_15 0 1-150600.1.3.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-livepatch-SLE15-SP6_Update_15 0 1-150600.13.3.2
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-64kb 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-default 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-default-base 0 6.4.0-150600.23.70.1.150600.12.30.2
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-source 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-zfcpdump 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-docs 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-obs-build 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-source 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-syms 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Legacy 15 SP6 kernel-default 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 kernel-azure 0 6.4.0-150600.8.52.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 kernel-source-azure 0 6.4.0-150600.8.52.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 kernel-syms-azure 0 6.4.0-150600.8.52.1
SUSE:Linux Enterprise Workstation Extension 15 SP6 kernel-default 0 6.4.0-150600.23.70.1
SUSE:Real Time Module 15 SP6 kernel-rt 0 6.4.0-150600.10.52.1
SUSE:Real Time Module 15 SP6 kernel-rt_debug 0 6.4.0-150600.10.52.1
SUSE:Real Time Module 15 SP6 kernel-source-rt 0 6.4.0-150600.10.52.1
SUSE:Real Time Module 15 SP6 kernel-syms-rt 0 6.4.0-150600.10.52.1
openSUSE:Leap 15.6 dtb-aarch64 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-64kb 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-azure 0 6.4.0-150600.8.52.1
openSUSE:Leap 15.6 kernel-debug 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-default 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-default-base 0 6.4.0-150600.23.70.1.150600.12.30.2
openSUSE:Leap 15.6 kernel-docs 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-kvmsmall 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-obs-build 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-obs-qa 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-rt 0 6.4.0-150600.10.52.1
openSUSE:Leap 15.6 kernel-rt_debug 0 6.4.0-150600.10.52.1
openSUSE:Leap 15.6 kernel-source 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-source-azure 0 6.4.0-150600.8.52.1
openSUSE:Leap 15.6 kernel-source-rt 0 6.4.0-150600.10.52.1
openSUSE:Leap 15.6 kernel-syms 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-syms-azure 0 6.4.0-150600.8.52.1
openSUSE:Leap 15.6 kernel-syms-rt 0 6.4.0-150600.10.52.1
openSUSE:Leap 15.6 kernel-zfcpdump 0 6.4.0-150600.23.70.1
openSUSE:Leap 16.0 dtb-aarch64 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-64kb 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-default 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-default-base 0 6.12.0-160000.6.1.160000.2.4
openSUSE:Leap 16.0 kernel-docs 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-kvmsmall 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-obs-build 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-obs-qa 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-rt 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-source 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-syms 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-zfcpdump 0 6.12.0-160000.6.1

Related vulnerabilities