CVE-2026-74444 (GCVE-0-2026-74444)
Vulnerability from cvelistv5 – Published: 2026-08-15 12:26 – Updated: 2026-10-16 19:05
VLAI
EPSS
VEX
Title
drm/vmwgfx: validate DRAW_PRIMITIVES header size before division
Summary
In the Linux kernel, the following vulnerability has been resolved:
drm/vmwgfx: validate DRAW_PRIMITIVES header size before division
vmw_cmd_draw() computes
maxnum = (header->size - sizeof(cmd->body)) / sizeof(*decl);
where header->size is u32 and is taken straight from the user-supplied
command stream. When header->size is less than sizeof(cmd->body) the
unsigned subtraction wraps to nearly 4 GiB, producing a huge maxnum.
Any user-controlled cmd->body.numVertexDecls then passes the bound and
the loop dereferences decl[i] far past the end of the kernel command
bounce buffer, producing an out-of-bounds read of kernel memory.
Reject undersized headers up front.
Severity
7.8 (High)
SSVC
Exploitation: none
Automatable: no
Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-10-16 18:56 UTC
Assigner
References
8 references
Impacted products
2 products
| Vendor | Product | Version | CPE status | |
|---|---|---|---|---|
| Linux | Linux |
Affected:
7a73ba7469cbea631050094fd14f73acebb97cf9 , < b89ca4bba820f79dde52af15ee139fe6e8bbc314
(git)
Affected: 7a73ba7469cbea631050094fd14f73acebb97cf9 , < bef30317fcb4c838a37bceb2fc76256eb6b975c1 (git) Affected: 7a73ba7469cbea631050094fd14f73acebb97cf9 , < 112c6ff29a56f3a22db4d5af869697aa07035ad6 (git) Affected: 7a73ba7469cbea631050094fd14f73acebb97cf9 , < 2666cddf0dd218aa9bd1f99db688d1b532eac21a (git) Affected: 7a73ba7469cbea631050094fd14f73acebb97cf9 , < fc0c02f510e41650df3479f96e257acf87d8a20a (git) Affected: 7a73ba7469cbea631050094fd14f73acebb97cf9 , < dc0be7662b7b0ce28cb5eea864737793ed7b9e70 (git) Affected: 7a73ba7469cbea631050094fd14f73acebb97cf9 , < c77cf8edae2bd3a1599115301cc7c98d0c78e731 (git) Affected: 7a73ba7469cbea631050094fd14f73acebb97cf9 , < 85891d174707d8bddcec7a888fb4e1d17def34f3 (git) |
guessed | |
| Linux | Linux |
Affected:
2.6.33
Unaffected: 0 , < 2.6.33 (semver) Unaffected: 5.10.265 , ≤ 5.10.* (semver) Unaffected: 5.15.216 , ≤ 5.15.* (semver) Unaffected: 6.1.183 , ≤ 6.1.* (semver) Unaffected: 6.6.151 , ≤ 6.6.* (semver) Unaffected: 6.12.103 , ≤ 6.12.* (semver) Unaffected: 6.18.44 , ≤ 6.18.* (semver) Unaffected: 7.1.8 , ≤ 7.1.* (semver) Unaffected: 7.2 , ≤ * (original_commit_for_fix) |
guessed |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-74444",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-16T18:56:36.182833Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-16T19:05:45.890Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "b89ca4bba820f79dde52af15ee139fe6e8bbc314",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "bef30317fcb4c838a37bceb2fc76256eb6b975c1",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "112c6ff29a56f3a22db4d5af869697aa07035ad6",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "2666cddf0dd218aa9bd1f99db688d1b532eac21a",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "fc0c02f510e41650df3479f96e257acf87d8a20a",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "dc0be7662b7b0ce28cb5eea864737793ed7b9e70",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "c77cf8edae2bd3a1599115301cc7c98d0c78e731",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "85891d174707d8bddcec7a888fb4e1d17def34f3",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "2.6.33"
},
{
"lessThan": "2.6.33",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.265",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.216",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.183",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.151",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.103",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.44",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"version": "7.1.8",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.10.265",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.216",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.183",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.151",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.103",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.44",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1.8",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2",
"versionStartIncluding": "2.6.33",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/vmwgfx: validate DRAW_PRIMITIVES header size before division\n\nvmw_cmd_draw() computes\n\n\tmaxnum = (header-\u003esize - sizeof(cmd-\u003ebody)) / sizeof(*decl);\n\nwhere header-\u003esize is u32 and is taken straight from the user-supplied\ncommand stream. When header-\u003esize is less than sizeof(cmd-\u003ebody) the\nunsigned subtraction wraps to nearly 4 GiB, producing a huge maxnum.\nAny user-controlled cmd-\u003ebody.numVertexDecls then passes the bound and\nthe loop dereferences decl[i] far past the end of the kernel command\nbounce buffer, producing an out-of-bounds read of kernel memory.\n\nReject undersized headers up front."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 7.8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:L - The bug is reached only through the local DRM_IOCTL_VMW_EXECBUF ioctl (vmw_execbuf_ioctl -\u003e vmw_execbuf_process -\u003e vmw_cmd_check_all -\u003e vmw_cmd_draw); it is not reachable from network, adjacent wireless, or physical buses.\nAC:L - An attacker fully controls the user command stream and can set header-\u003esize below sizeof(cmd-\u003ebody) to underflow maxnum and bypass numVertexDecls bounds; no races or victim-dependent timing are required.\nPR:L - VMW_EXECBUF is registered with DRM_RENDER_ALLOW, so any local process with access to the vmwgfx render node (/dev/dri/renderD*) and a user-created 3D context can submit the malicious DRAW_PRIMITIVES command without real root.\nUI:N - Exploitation requires only the attacker opening the render device and issuing crafted execbuf ioctls; no additional actions by another user or administrator are needed.\nS:U - Impact is confined to the guest kernel address space running vmwgfx (VMware SVGA virtual GPU); successful exploitation yields guest-kernel memory disclosure/corruption and privilege escalation, not a direct hypervisor/host escape.\nC:H - Unsigned underflow makes maxnum enormous, so the vertex-declaration loop dereferences decl[i] far beyond the vmalloc command bounce buffer and reads adjacent kernel heap memory (e.g., decl-\u003earray.surfaceId) into validation paths.\nI:H - Beyond disclosure, leaked/adjacent surfaceId values can satisfy vmw_user_resource_lookup_handle and vmw_resource_relocations_apply then writes resource IDs to offsets past the bounce buffer, giving an out-of-bounds kernel write primitive.\nA:H - Setting a large numVertexDecls after the bound bypass can walk far past the vmalloc allocation and fault on unmapped pages, and extensive heap corruption from relocation writes can also trigger kernel oops/panic."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-19T16:36:38.535Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/b89ca4bba820f79dde52af15ee139fe6e8bbc314"
},
{
"url": "https://git.kernel.org/stable/c/bef30317fcb4c838a37bceb2fc76256eb6b975c1"
},
{
"url": "https://git.kernel.org/stable/c/112c6ff29a56f3a22db4d5af869697aa07035ad6"
},
{
"url": "https://git.kernel.org/stable/c/2666cddf0dd218aa9bd1f99db688d1b532eac21a"
},
{
"url": "https://git.kernel.org/stable/c/fc0c02f510e41650df3479f96e257acf87d8a20a"
},
{
"url": "https://git.kernel.org/stable/c/dc0be7662b7b0ce28cb5eea864737793ed7b9e70"
},
{
"url": "https://git.kernel.org/stable/c/c77cf8edae2bd3a1599115301cc7c98d0c78e731"
},
{
"url": "https://git.kernel.org/stable/c/85891d174707d8bddcec7a888fb4e1d17def34f3"
}
],
"title": "drm/vmwgfx: validate DRAW_PRIMITIVES header size before division",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-74444",
"datePublished": "2026-08-15T12:26:51.443Z",
"dateReserved": "2026-08-15T05:44:03.898Z",
"dateUpdated": "2026-10-16T19:05:45.890Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"vulnerability-lookup:meta": {
"epss": {
"cve": "CVE-2026-74444",
"date": "2026-10-29",
"epss": "0.00129",
"percentile": "0.02536"
},
"microsoft_vex": {
"current_release_date": "2026-09-25T01:49:59.000Z",
"cve": "CVE-2026-74444",
"id": "msrc_CVE-2026-74444",
"initial_release_date": "2026-08-23T14:47:36.000Z",
"product_status:fixed": "1",
"product_status:known_affected": "1",
"source": "Microsoft CSAF VEX",
"status": "final",
"title": "drm/vmwgfx: validate DRAW_PRIMITIVES header size before division",
"url": "https://msrc.microsoft.com/csaf/vex/2026/msrc_cve-2026-74444.json",
"version": "3"
},
"nvd": {
"cve": {
"affected": [
{
"affectedData": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "b89ca4bba820f79dde52af15ee139fe6e8bbc314",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "bef30317fcb4c838a37bceb2fc76256eb6b975c1",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "112c6ff29a56f3a22db4d5af869697aa07035ad6",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "2666cddf0dd218aa9bd1f99db688d1b532eac21a",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "fc0c02f510e41650df3479f96e257acf87d8a20a",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "dc0be7662b7b0ce28cb5eea864737793ed7b9e70",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "c77cf8edae2bd3a1599115301cc7c98d0c78e731",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "85891d174707d8bddcec7a888fb4e1d17def34f3",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "2.6.33"
},
{
"lessThan": "2.6.33",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.265",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.216",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.183",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.151",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.103",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.44",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"version": "7.1.8",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix"
}
]
}
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
],
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/vmwgfx: validate DRAW_PRIMITIVES header size before division\n\nvmw_cmd_draw() computes\n\n\tmaxnum = (header-\u003esize - sizeof(cmd-\u003ebody)) / sizeof(*decl);\n\nwhere header-\u003esize is u32 and is taken straight from the user-supplied\ncommand stream. When header-\u003esize is less than sizeof(cmd-\u003ebody) the\nunsigned subtraction wraps to nearly 4 GiB, producing a huge maxnum.\nAny user-controlled cmd-\u003ebody.numVertexDecls then passes the bound and\nthe loop dereferences decl[i] far past the end of the kernel command\nbounce buffer, producing an out-of-bounds read of kernel memory.\n\nReject undersized headers up front."
}
],
"id": "CVE-2026-74444",
"lastModified": "2026-10-16T20:17:28.103",
"metrics": {
"cvssMetricV31": [
{
"cvssData": {
"attackComplexity": "LOW",
"attackVector": "LOCAL",
"availabilityImpact": "HIGH",
"baseScore": 7.8,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"exploitabilityScore": 1.8,
"impactScore": 5.9,
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"type": "Secondary"
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2026-74444",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-16T18:56:36.182833Z",
"version": "2.0.3"
}
}
]
},
"published": "2026-08-15T13:17:48.963",
"references": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/112c6ff29a56f3a22db4d5af869697aa07035ad6"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/2666cddf0dd218aa9bd1f99db688d1b532eac21a"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/85891d174707d8bddcec7a888fb4e1d17def34f3"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/b89ca4bba820f79dde52af15ee139fe6e8bbc314"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/bef30317fcb4c838a37bceb2fc76256eb6b975c1"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/c77cf8edae2bd3a1599115301cc7c98d0c78e731"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/dc0be7662b7b0ce28cb5eea864737793ed7b9e70"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/fc0c02f510e41650df3479f96e257acf87d8a20a"
}
],
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"vulnStatus": "Received"
}
},
"redhat_vex": {
"aggregate_severity": "Moderate",
"current_release_date": "2026-10-17T21:13:21+00:00",
"cve": "CVE-2026-74444",
"id": "CVE-2026-74444",
"initial_release_date": "2026-08-15T00:00:00+00:00",
"product_status:known_affected": "275",
"source": "Red Hat CSAF VEX",
"status": "final",
"title": "kernel: drm/vmwgfx: validate DRAW_PRIMITIVES header size before division",
"url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-74444.json",
"version": "3"
},
"vulnrichment": {
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-74444",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-16T18:56:36.182833Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-16T18:56:37.255Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "b89ca4bba820f79dde52af15ee139fe6e8bbc314",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "bef30317fcb4c838a37bceb2fc76256eb6b975c1",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "112c6ff29a56f3a22db4d5af869697aa07035ad6",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "2666cddf0dd218aa9bd1f99db688d1b532eac21a",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "fc0c02f510e41650df3479f96e257acf87d8a20a",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "dc0be7662b7b0ce28cb5eea864737793ed7b9e70",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "c77cf8edae2bd3a1599115301cc7c98d0c78e731",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
},
{
"lessThan": "85891d174707d8bddcec7a888fb4e1d17def34f3",
"status": "affected",
"version": "7a73ba7469cbea631050094fd14f73acebb97cf9",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "2.6.33"
},
{
"lessThan": "2.6.33",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.265",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.216",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.183",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.151",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.103",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.44",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"version": "7.1.8",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.10.265",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.216",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.183",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.151",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.103",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.44",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1.8",
"versionStartIncluding": "2.6.33",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2",
"versionStartIncluding": "2.6.33",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/vmwgfx: validate DRAW_PRIMITIVES header size before division\n\nvmw_cmd_draw() computes\n\n\tmaxnum = (header-\u003esize - sizeof(cmd-\u003ebody)) / sizeof(*decl);\n\nwhere header-\u003esize is u32 and is taken straight from the user-supplied\ncommand stream. When header-\u003esize is less than sizeof(cmd-\u003ebody) the\nunsigned subtraction wraps to nearly 4 GiB, producing a huge maxnum.\nAny user-controlled cmd-\u003ebody.numVertexDecls then passes the bound and\nthe loop dereferences decl[i] far past the end of the kernel command\nbounce buffer, producing an out-of-bounds read of kernel memory.\n\nReject undersized headers up front."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 7.8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:L - The bug is reached only through the local DRM_IOCTL_VMW_EXECBUF ioctl (vmw_execbuf_ioctl -\u003e vmw_execbuf_process -\u003e vmw_cmd_check_all -\u003e vmw_cmd_draw); it is not reachable from network, adjacent wireless, or physical buses.\nAC:L - An attacker fully controls the user command stream and can set header-\u003esize below sizeof(cmd-\u003ebody) to underflow maxnum and bypass numVertexDecls bounds; no races or victim-dependent timing are required.\nPR:L - VMW_EXECBUF is registered with DRM_RENDER_ALLOW, so any local process with access to the vmwgfx render node (/dev/dri/renderD*) and a user-created 3D context can submit the malicious DRAW_PRIMITIVES command without real root.\nUI:N - Exploitation requires only the attacker opening the render device and issuing crafted execbuf ioctls; no additional actions by another user or administrator are needed.\nS:U - Impact is confined to the guest kernel address space running vmwgfx (VMware SVGA virtual GPU); successful exploitation yields guest-kernel memory disclosure/corruption and privilege escalation, not a direct hypervisor/host escape.\nC:H - Unsigned underflow makes maxnum enormous, so the vertex-declaration loop dereferences decl[i] far beyond the vmalloc command bounce buffer and reads adjacent kernel heap memory (e.g., decl-\u003earray.surfaceId) into validation paths.\nI:H - Beyond disclosure, leaked/adjacent surfaceId values can satisfy vmw_user_resource_lookup_handle and vmw_resource_relocations_apply then writes resource IDs to offsets past the bounce buffer, giving an out-of-bounds kernel write primitive.\nA:H - Setting a large numVertexDecls after the bound bypass can walk far past the vmalloc allocation and fault on unmapped pages, and extensive heap corruption from relocation writes can also trigger kernel oops/panic."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-19T16:36:38.535Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/b89ca4bba820f79dde52af15ee139fe6e8bbc314"
},
{
"url": "https://git.kernel.org/stable/c/bef30317fcb4c838a37bceb2fc76256eb6b975c1"
},
{
"url": "https://git.kernel.org/stable/c/112c6ff29a56f3a22db4d5af869697aa07035ad6"
},
{
"url": "https://git.kernel.org/stable/c/2666cddf0dd218aa9bd1f99db688d1b532eac21a"
},
{
"url": "https://git.kernel.org/stable/c/fc0c02f510e41650df3479f96e257acf87d8a20a"
},
{
"url": "https://git.kernel.org/stable/c/dc0be7662b7b0ce28cb5eea864737793ed7b9e70"
},
{
"url": "https://git.kernel.org/stable/c/c77cf8edae2bd3a1599115301cc7c98d0c78e731"
},
{
"url": "https://git.kernel.org/stable/c/85891d174707d8bddcec7a888fb4e1d17def34f3"
}
],
"title": "drm/vmwgfx: validate DRAW_PRIMITIVES header size before division",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-74444",
"datePublished": "2026-08-15T12:26:51.443Z",
"dateReserved": "2026-08-15T05:44:03.898Z",
"dateUpdated": "2026-10-16T19:05:45.890Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
}
}
Loading…
Loading…
Drag nodes to arrange them. Double-click a related vulnerability to open it, or a source to visit its link. The Physics button on the left tunes the layout and the simulation; the legend at the bottom left hides or shows nodes by kind and by sighting type.
Experimental. This forecast is provided for visualization only and may change without notice. Do not use it for operational decisions.
Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Vulnerability timeline
Sightings and recorded dates, grouped by day · UTC
Loading timeline…
Loading…
Loading…
The MITRE ATT&CK techniques below are AI-generated suggestions, inferred from the description of the
vulnerability by the CIRCL/vulnerability-attack-technique-classification-roberta-base
model, served locally by ML-Gateway.
They have not been verified by an analyst and are provided for guidance only.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Loading…
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.