KernelScan.io

HIGH

drm/amdgpu VCN3 Overflow

CVE-2026-46237

CVSS 7.1 / 10.0 NVD

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H

KernelScan AI6.1MEDIUM

01

In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu/vcn3: Avoid overflow on msg bound check As pointed out by SDL, the previous condition may be vulnerable to overflow. (cherry picked from commit db00257ac9e4a51eb2515aaea161a019f7125e10)

02

Engine v0.2.0

Risk summary

Local attackers with GPU access can trigger an integer overflow in the AMD VCN3 video decoder message bounds check, causing out-of-bounds reads during decode message parsing. This can leak kernel memory contents and will typically hit unmapped pages, resulting in a kernel panic. It affects systems with AMD GPUs supporting VCN3 hardware decoding where users can submit video decode jobs.

Affecteddrivers/gpu/drm/amd/amdgpu/vcn_v3_0.c (AMD GPU VCN3 decoder)

Vulnerability analysis

The vulnerability exists in the VCN3 decoder message parsing code where the bounds check `offset + size > end - addr` is subject to integer overflow. If `offset + size` overflows, the comparison is bypassed and subsequent parsing performs an out-of-bounds read from the buffer object. The fix uses `check_add_overflow()` to safely detect the overflow before the bounds comparison, preventing the bypass. This is reachable through the GPU DRM command submission interface (ioctl on /dev/dri/renderD* or card*) when processing video decode messages. The read is unbounded in length and will typically page fault on invalid kernel addresses, leading to a kernel oops or panic (availability impact), while leaking slab data before the crash (confidentiality impact). There is no direct write primitive or integrity impact.

03

BranchFixed inPatch commit
mainline7.1-rc294a2b3739980