HIGH
drm/amdgpu VCN3 Overflow
CVE-2026-46237
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
KernelScan AI6.1MEDIUM
01Description
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)
02KernelScan AI Analysis
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.
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.
03Fix Versions
| Branch | Fixed in | Patch commit |
|---|---|---|
| mainline | 7.1-rc2 | 94a2b3739980 |