CVE-2025-21996: drm/radeon: fix uninitialized size issue in radeon_vce_cs_parse()
In the Linux kernel, the following vulnerability has been resolved:
drm/radeon: fix uninitialized size issue in radeon_vce_cs_parse()
On the off chance that command stream passed from userspace via
ioctl() call to radeon_vce_cs_parse() is weirdly crafted and
first command to execute is to encode (case 0x03000001), the function
in question will attempt to call radeon_vce_cs_reloc() with size
argument that has not been properly initialized. Specifically, 'size'
will point to 'tmp' variable before the latter had a chance to be
assigned any value.
Play it safe and init 'tmp' with 0, thus ensuring that
radeon_vce_cs_reloc() will catch an early error in cases like these.
Found by Linux Verification Center (linuxtesting.org) with static
analysis tool SVACE.
(cherry picked from commit 2d52de55f9ee7aaee0e09ac443f77855989c6b68)
Security readout for executives and security teams
Plain-English summary
A local user may be able to crash or destabilize a Linux system using a malformed Radeon video command stream. The issue is in the kernel Radeon driver, so impact is mainly availability, not data theft or remote compromise.
Executive priority
Treat as a routine but timely kernel availability fix. It is not remote code execution, but shared workstations, GPU-enabled servers, and multi-user Linux environments should patch promptly to reduce local denial-of-service risk.
Technical view
The flaw is an uninitialized size value in drm/radeon radeon_vce_cs_parse(). A crafted userspace ioctl command stream starting with an encode command can pass an uninitialized size to radeon_vce_cs_reloc(). The fix initializes tmp to 0 so the relocation path rejects the malformed stream early.
Likely exposure
Exposure is most likely on Linux systems using affected kernels with the Radeon DRM driver and accessible AMD Radeon VCE functionality. The CVSS vector requires local privileges and no user interaction. Systems without this driver or hardware path are less likely exposed.
Exploitation context
The source bundle does not show KEV listing or active exploitation. Exploitation is local, low-complexity, and availability-focused. The issue was found by Linux Verification Center using SVACE static analysis, not reported as exploited in the wild.
Researcher notes
The available evidence supports CWE-908 and CVSS 5.5 availability impact. Exact downstream fixed package versions are not fully enumerated in the bundle beyond Linux stable references and Debian LTS notices. Avoid assuming confidentiality, integrity, or active exploit impact.
Mitigation direction
Update affected Linux kernels using vendor or distribution security packages.
Prioritize multi-user systems where untrusted users can access Radeon GPU device paths.
Review Debian LTS advisories if running Debian LTS kernels.
Track the referenced Linux stable commits for branch-specific fixed versions.
Limit untrusted local shell or container access to GPU devices where practical.
Validation and detection
Inventory Linux kernel versions across hosts with AMD Radeon GPUs.
Check whether the radeon DRM driver is loaded or packaged for affected systems.
Compare installed kernels with vendor advisories and referenced stable commits.
Confirm distribution security updates include CVE-2025-21996 fixes.
Document systems where GPU device access is exposed to untrusted users.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-908: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-908 · source CWE mapping
Use of Uninitialized Resource
Use of Uninitialized Resource represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.