Look up another CVE · open CVE-2026-68447 in the interactive tracker
CVE-2026-68447
drm/amdkfd: clamp v9 CRIU control stack checkpoint copy to BO size
Published 2026-08-12 (2 months ago) by the Linux kernel CNA. Subsystem drivers/gpu. Debian urgency: not yet assigned.
What to do, per Debian release
Debian's own status for CVE-2026-68447 in every release this site tracks, and what each one means in practice. Every status below is the one the Debian Security Team publishes for this CVE. source
| Release | Status | Version | What this means |
|---|---|---|---|
| Debian 12bookworm | vulnerable | 6.1.190-1 | No fix published anywhere yet, neither in Debian nor upstream for the series bookworm tracks. Watch the Debian tracker page for this CVE. Advisories for bookworm have historically landed a median of 23 days after publication. |
| Debian 13trixie | vulnerable | 6.12.113-1 | No fix published anywhere yet, neither in Debian nor upstream for the series trixie tracks. Watch the Debian tracker page for this CVE. Advisories for trixie have historically landed a median of 11 days after publication. |
| Debian 14forky | fixed | 7.1.6-1 | Update the kernel and reboot. Fixed in 7.1.6-1. A running kernel keeps the old code until the machine restarts. |
| Debian unstablesid | fixed | 7.1.6-1 | Update the kernel and reboot. Fixed in 7.1.6-1. A running kernel keeps the old code until the machine restarts. |
The vulnerability
What the bug is
CRIU checkpoint copies the MQD control stack using cp_hqd_cntl_stack_size from hardware without bounding it to the allocated BO region. If the HW field is larger than the queue's control stack allocation, memcpy reads past the BO into adjacent GTT memory and can leak kernel data to userspace. Store the page-aligned control stack BO size in mqd_manager and clamp checkpoint copies and reported checkpoint sizes to min(cp_hqd_cntl_stack_size, mm->ctl_stack_size). Apply the same bound for multi-XCC v9.4.3 checkpoint layout. (cherry picked from commit 6c2abd0ec09e86c6323010673766f76050e28aa3)
Where it lives
The fix touches these files. If the subsystem is one you do not use, the practical exposure is lower, though the package is still the vulnerable one.
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.h
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c
- What this is
- AMD KFDMAINTAINERS section matched on drivers/gpu/drm/amd/amdkfd/ · amd-gfx@lists.freedesktop.org · Supported
Show whether Debian builds this, per release
Not established. This site could not find the build rule for the affected file in the kernel trees Debian ships, so it has no answer about whether Debian compiles this code. Read that as unknown, never as absent.
- bookworm, trixie, forky, sid?
- ?
- not established - no Makefile entry for the affected file
Where a release above reads "not established", no build rule for the affected file was found in that release's kernel tree. That is a gap in this lookup, not a finding that the code is absent.
From the configuration Debian publishes for every kernel flavour it builds. It covers only the architectures Debian ships a linux-config package for, and nothing about a kernel you built yourself. Debian's own status above stays authoritative about the source package.MAINTAINERS
Signals
- Published
- 2026-08-12 (2 months ago)source
- CVSS
- 7.1 high
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:Hsource recompute it - Attack vector
- local (AV:L)source
- EPSS
- 0.11%, higher than 1.2% of all CVEssource
- CISA KEV
- not listedthe KEV catalogue
- Debian urgency
- not yet assignedsource
- Subsystem
- drivers/gpu
Upstream fixes
The versions the CNA records as introducing and fixing this, and the commit for each. source
| Introduced | Fixed in | Commit |
|---|---|---|
| 5.18 | 7.1.6 | a0d87beb2660 |
| 5.18 | 7.2 | 426ffae6ecc7 |
Why the CNA scored it this way
Quoted from the kernel CNA's own scoring file, word for word. A highlighted metric carries the most severe value CVSS v3.1 defines for it, which is what pushes the score up. source
- AV:LAttack vector, local
- The vulnerable code is reached only through the AMDKFD_IOC_CRIU_OP ioctl on the local /dev/kfd character device; no network or remote path exists to amdkfd CRIU checkpoint handling.
- AC:LAttack complexity, low
- kfd_criu_restore_queue() copies the entire user-supplied MQD blob verbatim into the kernel MQD, so the attacker directly chooses cp_hqd_cntl_stack_size and a subsequent checkpoint deterministically triggers the over-read; queues are evicted under p->mutex, so no race must be won.
- PR:LPrivileges required, low
- The attacker needs access to /dev/kfd (render group) plus CAP_CHECKPOINT_RESTORE or CAP_SYS_ADMIN; CAP_CHECKPOINT_RESTORE is a delegated, non-root capability routinely granted to CRIU tooling and container checkpoint services, so this is a limited privilege rather than full administrative control.
- UI:NUser interaction, none
- The attacker performs the CRIU restore and checkpoint ioctls entirely on its own process; no action by any other user or victim is required.
- S:UScope, unchanged
- The out-of-bounds read and the resulting disclosure stay within the kernel's own security authority on the host; no VM, IOMMU, or sandbox boundary is crossed.
- C:HConfidentiality impact, high
- memcpy reads up to an attacker-chosen 32-bit length past the small MQD/control-stack BO into adjacent kernel GTT (vmap'd host memory) or VRAM, and criu_checkpoint_queues_device() copies the whole buffer to userspace, disclosing large amounts of unrelated kernel/GPU memory.
- I:NIntegrity impact, none
- The destination buffer is kzalloc'd using the same inflated size, so nothing is written out of bounds; the defect is purely an over-read with no kernel memory modification.
- A:HAvailability impact, high
- With a large attacker-supplied cp_hqd_cntl_stack_size the memcpy walks far past the end of the small kmap'd BO (roughly 0x8000 bytes) into unmapped virtual addresses or beyond the VRAM BAR mapping, producing a kernel oops and killing the driver.