{"id":"CVE-2026-68108","state":"PUBLISHED","title":"drm/amdgpu/vce: fix integer overflow in image size","description":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/amdgpu/vce: fix integer overflow in image size\n\nFix a security vulnerability where malicious VCE command streams\nwith oversized dimensions (e.g. 65536×65536) cause 32-bit integer\noverflow, wrapping the calculated buffer size to 0. This bypasses\nvalidation and allows GPU firmware to perform out-of-bound memory\naccess.\n\nThe fix uses 64-bit arithmetic to detect overflow and rejects\ninvalid dimensions before they reach the hardware.\n\nV2: remove redundant check\nV3: modify max height value\nV4: remove size64\n\n(cherry picked from commit cbe408dba581755ad1279a487ec786d8927d778d)","publishedAt":"2026-08-10T11:58:25.241Z","updatedAt":"2026-10-19T20:58:51.134Z","severity":{"score":8.8,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","source":"Linux"},"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"f1689ec1b0b1256d0e69653cd4aaeee44aafdf5c","status":"affected","lessThan":"893db20383800cfe92e638705984eebb13bc81a5","versionType":"git"},{"version":"f1689ec1b0b1256d0e69653cd4aaeee44aafdf5c","status":"affected","lessThan":"a07430abd556de3707adfcadcc60db3fa64e4b2b","versionType":"git"},{"version":"f1689ec1b0b1256d0e69653cd4aaeee44aafdf5c","status":"affected","lessThan":"a6d7065b91a14790980ce6f4960db0ca8c3c9940","versionType":"git"},{"version":"f1689ec1b0b1256d0e69653cd4aaeee44aafdf5c","status":"affected","lessThan":"7eebef042c12dfe0568593ee6a8926d16505925e","versionType":"git"},{"version":"f1689ec1b0b1256d0e69653cd4aaeee44aafdf5c","status":"affected","lessThan":"00c311a13d225266800c712f2b7db2711c6897de","versionType":"git"},{"version":"f1689ec1b0b1256d0e69653cd4aaeee44aafdf5c","status":"affected","lessThan":"186bfdc4e26d019b2e7570cb121964a1d89b2e5b","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.2","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.2","versionType":"semver"},{"version":"6.1.183","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.148","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.101","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.42","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.1.6","status":"unaffected","lessThanOrEqual":"7.1.*","versionType":"semver"},{"version":"7.2","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c"]}],"references":["https://git.kernel.org/stable/c/893db20383800cfe92e638705984eebb13bc81a5","https://git.kernel.org/stable/c/a07430abd556de3707adfcadcc60db3fa64e4b2b","https://git.kernel.org/stable/c/a6d7065b91a14790980ce6f4960db0ca8c3c9940","https://git.kernel.org/stable/c/7eebef042c12dfe0568593ee6a8926d16505925e","https://git.kernel.org/stable/c/00c311a13d225266800c712f2b7db2711c6897de","https://git.kernel.org/stable/c/186bfdc4e26d019b2e7570cb121964a1d89b2e5b"],"weaknesses":["CWE-190"],"ingestedAt":"2026-10-29T20:12:49.727Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/68xxx/CVE-2026-68108.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-68108","state":"PUBLISHED","datePublished":"2026-08-10T11:58:25.241Z","dateUpdated":"2026-10-19T20:58:51.134Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-07-30T09:28:09.368Z"},"containers":{"cna":{"title":"drm/amdgpu/vce: fix integer overflow in image size","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/amdgpu/vce: fix integer overflow in image size\n\nFix a security vulnerability where malicious VCE command streams\nwith oversized dimensions (e.g. 65536×65536) cause 32-bit integer\noverflow, wrapping the calculated buffer size to 0. This bypasses\nvalidation and allows GPU firmware to perform out-of-bound memory\naccess.\n\nThe fix uses 64-bit arithmetic to detect overflow and rejects\ninvalid dimensions before they reach the hardware.\n\nV2: remove redundant check\nV3: modify max height value\nV4: remove size64\n\n(cherry picked from commit cbe408dba581755ad1279a487ec786d8927d778d)"}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"f1689ec1b0b1256d0e69653cd4aaeee44aafdf5c","status":"affected","lessThan":"893db20383800cfe92e638705984eebb13bc81a5","versionType":"git"},{"version":"f1689ec1b0b1256d0e69653cd4aaeee44aafdf5c","status":"affected","lessThan":"a07430abd556de3707adfcadcc60db3fa64e4b2b","versionType":"git"},{"version":"f1689ec1b0b1256d0e69653cd4aaeee44aafdf5c","status":"affected","lessThan":"a6d7065b91a14790980ce6f4960db0ca8c3c9940","versionType":"git"},{"version":"f1689ec1b0b1256d0e69653cd4aaeee44aafdf5c","status":"affected","lessThan":"7eebef042c12dfe0568593ee6a8926d16505925e","versionType":"git"},{"version":"f1689ec1b0b1256d0e69653cd4aaeee44aafdf5c","status":"affected","lessThan":"00c311a13d225266800c712f2b7db2711c6897de","versionType":"git"},{"version":"f1689ec1b0b1256d0e69653cd4aaeee44aafdf5c","status":"affected","lessThan":"186bfdc4e26d019b2e7570cb121964a1d89b2e5b","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.2","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.2","versionType":"semver"},{"version":"6.1.183","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.148","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.101","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.42","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.1.6","status":"unaffected","lessThanOrEqual":"7.1.*","versionType":"semver"},{"version":"7.2","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/893db20383800cfe92e638705984eebb13bc81a5"},{"url":"https://git.kernel.org/stable/c/a07430abd556de3707adfcadcc60db3fa64e4b2b"},{"url":"https://git.kernel.org/stable/c/a6d7065b91a14790980ce6f4960db0ca8c3c9940"},{"url":"https://git.kernel.org/stable/c/7eebef042c12dfe0568593ee6a8926d16505925e"},{"url":"https://git.kernel.org/stable/c/00c311a13d225266800c712f2b7db2711c6897de"},{"url":"https://git.kernel.org/stable/c/186bfdc4e26d019b2e7570cb121964a1d89b2e5b"}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","baseScore":8.8,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The flaw is reached only through the AMDGPU_CS DRM ioctl on a local render node (/dev/dri/renderD*); there is no network, adjacent-radio, or physical-device path to the VCE command-stream parser.\nAC:L - On affected AMD GPUs using physical-mode VCE parsing, an attacker fully controls the IB and can set create-command dimensions (e.g., 65536x65536) to deterministically overflow the 32-bit size to zero without races or uncontrollable layout conditions.\nPR:L - Exploitation requires only unprivileged local access to the amdgpu DRM render node; AMDGPU_CS is gated by DRM_AUTH|DRM_RENDER_ALLOW with no root, DRM-master, or non-namespace capability requirement.\nUI:N - No victim interaction is needed beyond the attacker submitting crafted VCE command buffers through their own render-node context; no third party must open files or take other actions.\nS:C - Bypassing size-based BO relocation/validation lets VCE firmware DMA outside the intended buffer boundaries, crossing the GPU memory-isolation boundary that kernel validation is meant to enforce on GART/VRAM mappings.\nC:H - With validation defeated, VCE firmware can read arbitrarily beyond undersized encode/context/MV buffers, exposing other GPU-accessible memory including GTT-mapped system memory and adjacent VRAM allocations.\nI:H - The same out-of-bounds VCE firmware accesses enable arbitrary writes to GPU-mapped memory beyond validated buffers, providing memory-corruption primitives suitable for privilege escalation or control-flow influence.\nA:H - Oversized VCE operations against undersized buffers can trigger GPU page faults, engine hangs, GPU resets, or broader system disruption that the attacker can repeat via further command submissions."}]}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-08-19T16:29:22.109Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"6.1.183"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"6.6.148"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"6.12.101"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"6.18.42"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"7.1.6"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.2","versionEndExcluding":"7.2"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2026-68108","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"version":"2.0.3","timestamp":"2026-10-16T15:43:59.908598Z"}}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-190","lang":"en","type":"CWE","description":"CWE-190 Integer Overflow or Wraparound"}]}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-19T20:58:51.134Z"}}]}}}