{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-72090","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-08-09T03:40:39.905Z","datePublished":"2026-08-15T05:52:37.524Z","dateUpdated":"2026-08-17T05:40:10.207Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-17T05:40:10.207Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\naccel/amdxdna: Use caller client for debug BO sync\n\namdxdna_drm_sync_bo_ioctl() looks up args->handle in the ioctl caller's\ndrm_file. For SYNC_DIRECT_FROM_DEVICE, it then calls\namdxdna_hwctx_sync_debug_bo(), but passes abo->client.\n\namdxdna_hwctx_sync_debug_bo() uses the passed client both as the handle\nnamespace for debug_bo_hdl and as the owner of the hardware context xarray.\nThose must match the file that supplied args->handle. The BO's stored\nclient pointer is object state, not the ioctl context.\n\nPass filp->driver_priv instead, matching the original handle lookup."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - Exploitation requires DRM_IOCTL_AMDXDNA_SYNC_BO via ioctl on the local AMD XDNA accel node (/dev/accel/accel*); amdxdna has no network, Bluetooth, or physical-bus entry to amdxdna_drm_sync_bo_ioctl() or amdxdna_hwctx_sync_debug_bo().\nAC:L - An attacker with two DRM clients can share debug buffer objects via dma-buf and issue SYNC_DIRECT_FROM_DEVICE to force abo->client != filp->driver_priv; handle-index collisions in the victim client's namespace are attacker-influencable without uncontrollable timing or layout.\nPR:L - AMDXDNA_SYNC_BO is registered without DRM_ROOT_ONLY; any unprivileged local user permitted to open the AMD NPU accel device (typically via render/video group on Ryzen AI laptops or cloud NPU guests) can reach the bug without real root.\nUI:N - No victim interaction is required; a local attacker can open the accel device, create or import buffer objects, and trigger SYNC_DIRECT_FROM_DEVICE from their own process or a second cooperating local client in typical multi-process ML workloads.\nS:U - The flaw causes cross-DRM-client handle-namespace and hwctx confusion within the same kernel on one host; it does not cross VM, hypervisor, IOMMU, or SR-IOV security boundaries into another authority.\nC:H - Passing abo->client re-resolves the ioctl handle in another client's drm_file and hwctx xarray, so SYNC_DEBUG_BO can DMA firmware debug data from a victim hwctx into attacker-mapped or attacker-chosen device memory, disclosing cross-context NPU/firmware contents.\nI:H - Mismatched client/handle resolution can bind SYNC_DEBUG_BO to the wrong hwctx and BO, directing firmware device-to-host DMA sync to incorrect device-heap offsets and corrupting another client's NPU buffer allocations or metadata.\nA:H - Erroneous cross-context firmware mailbox sync on an invalid or foreign hwctx can fault driver error paths, hang the mailbox channel, or destabilize the NPU stack, denying accelerator service to local workloads on the affected host."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/accel/amdxdna/amdxdna_gem.c"],"versions":[{"version":"7ea0468380216c10b73633b976d33efa8c12d375","lessThan":"216e43d93dd49ec253052741aa476e51a8c54cd8","status":"affected","versionType":"git"},{"version":"7ea0468380216c10b73633b976d33efa8c12d375","lessThan":"7caf2a2351d4053075670ff3e26a6815da0a9e1e","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/accel/amdxdna/amdxdna_gem.c"],"versions":[{"version":"6.19","status":"affected"},{"version":"0","lessThan":"6.19","status":"unaffected","versionType":"semver"},{"version":"7.1.5","lessThanOrEqual":"7.1.*","status":"unaffected","versionType":"semver"},{"version":"7.2","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.19","versionEndExcluding":"7.1.5"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.19","versionEndExcluding":"7.2"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/216e43d93dd49ec253052741aa476e51a8c54cd8"},{"url":"https://git.kernel.org/stable/c/7caf2a2351d4053075670ff3e26a6815da0a9e1e"}],"title":"accel/amdxdna: Use caller client for debug BO sync","x_generator":{"engine":"bippy-1.2.0"}}}}