Files
vuln-cve/data/2021/47xxx/CVE-2021-47605.json
T

194 lines
9.3 KiB
JSON

{
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"cveMetadata": {
"cveId": "CVE-2021-47605",
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"state": "PUBLISHED",
"assignerShortName": "Linux",
"dateReserved": "2024-05-24T15:11:00.737Z",
"datePublished": "2024-06-19T14:54:04.323Z",
"dateUpdated": "2026-08-05T08:48:35.224Z"
},
"containers": {
"cna": {
"providerMetadata": {
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux",
"dateUpdated": "2026-08-05T08:48:35.224Z"
},
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nvduse: fix memory corruption in vduse_dev_ioctl()\n\nThe \"config.offset\" comes from the user. There needs to a check to\nprevent it being out of bounds. The \"config.offset\" and\n\"dev->config_size\" variables are both type u32. So if the offset if\nout of bounds then the \"dev->config_size - config.offset\" subtraction\nresults in a very high u32 value. The out of bounds offset can result\nin memory corruption."
}
],
"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 - The bug is reached only via the VDUSE_DEV_SET_CONFIG ioctl on the local char device /dev/vduse/$NAME (vduse_dev_ioctl), not via network packet processing or adjacent-link protocols.\nAC:L - The attacker fully controls config.offset, config.length, and the written buffer contents; a single ioctl with offset > config_size triggers the u32 underflow and OOB copy_from_user with no race or other external conditions.\nPR:L - There is no capable() check on this ioctl path, and VDUSE is explicitly designed so an unprivileged userspace process can open /dev/vduse/$NAME and drive the datapath/config updates.\nUI:N - Exploitation requires only issuing the malicious ioctl on an opened VDUSE device fd; no separate victim action is needed.\nS:U - Impact is host-kernel heap memory corruption from a local process in the same OS security authority, yielding privilege escalation rather than a cross-boundary VM/IOMMU escape.\nC:H - Attacker-controlled out-of-bounds write into kernel heap memory can be leveraged into arbitrary read primitives and full confidentiality compromise.\nI:H - The underflow allows copy_from_user of attacker-chosen data past the config buffer (heap OOB write), which is exploitable for arbitrary write and control-flow hijacking.\nA:H - The same memory corruption can cause kernel oops/panic or otherwise take down the system even when not fully exploited for code execution."
}
]
}
],
"affected": [
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "unaffected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"drivers/vdpa/vdpa_user/vduse_dev.c"
],
"versions": [
{
"version": "c8a6153b6c59d95c0e091f053f6f180952ade91e",
"lessThan": "e6c67560b4341914bec32ec536e931c22062af65",
"status": "affected",
"versionType": "git"
},
{
"version": "c8a6153b6c59d95c0e091f053f6f180952ade91e",
"lessThan": "ff9f9c6e74848170fcb45c8403c80d661484c8c9",
"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/vdpa/vdpa_user/vduse_dev.c"
],
"versions": [
{
"version": "5.15",
"status": "affected"
},
{
"version": "0",
"lessThan": "5.15",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.15.11",
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.16",
"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": "5.15",
"versionEndExcluding": "5.15.11"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "5.15",
"versionEndExcluding": "5.16"
}
]
}
]
}
],
"references": [
{
"url": "https://git.kernel.org/stable/c/e6c67560b4341914bec32ec536e931c22062af65"
},
{
"url": "https://git.kernel.org/stable/c/ff9f9c6e74848170fcb45c8403c80d661484c8c9"
}
],
"title": "vduse: fix memory corruption in vduse_dev_ioctl()",
"x_generator": {
"engine": "bippy-1.2.0"
}
},
"adp": [
{
"providerMetadata": {
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE",
"dateUpdated": "2024-08-04T05:47:40.852Z"
},
"title": "CVE Program Container",
"references": [
{
"url": "https://git.kernel.org/stable/c/e6c67560b4341914bec32ec536e931c22062af65",
"tags": [
"x_transferred"
]
},
{
"url": "https://git.kernel.org/stable/c/ff9f9c6e74848170fcb45c8403c80d661484c8c9",
"tags": [
"x_transferred"
]
}
]
},
{
"metrics": [
{
"other": {
"type": "ssvc",
"content": {
"id": "CVE-2021-47605",
"role": "CISA Coordinator",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"version": "2.0.3",
"timestamp": "2024-09-10T17:12:11.197775Z"
}
}
}
],
"title": "CISA ADP Vulnrichment",
"providerMetadata": {
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP",
"dateUpdated": "2024-09-11T17:34:51.557Z"
}
}
]
}
}