Files
vuln-cve/data/2024/44xxx/CVE-2024-44986.json
T

318 lines
16 KiB
JSON

{
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"cveMetadata": {
"cveId": "CVE-2024-44986",
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"state": "PUBLISHED",
"assignerShortName": "Linux",
"dateReserved": "2024-08-21T05:34:56.671Z",
"datePublished": "2024-09-04T19:54:34.852Z",
"dateUpdated": "2026-09-29T12:17:53.380Z"
},
"containers": {
"cna": {
"providerMetadata": {
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux",
"dateUpdated": "2026-09-29T12:17:53.380Z"
},
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nipv6: fix possible UAF in ip6_finish_output2()\n\nIf skb_expand_head() returns NULL, skb has been freed\nand associated dst/idev could also have been freed.\n\nWe need to hold rcu_read_lock() to make sure the dst and\nassociated idev are alive."
}
],
"metrics": [
{
"cvssV3_1": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H",
"baseScore": 8.1,
"baseSeverity": "HIGH"
},
"scenarios": [
{
"lang": "en",
"value": "AV:N - `ip6_finish_output2()` is the core IPv6 transmit path, driven by remote traffic — forwarded packets, TCP/ICMPv6 responses generated for received datagrams, in-kernel server replies (nfsd/ksmbd over IPv6), and TEE/dup mirroring of received frames — so a remote unauthenticated peer can keep the vulnerable code executing continuously without any local access.\nAC:H - Exploitation requires a GFP_ATOMIC allocation failure inside `skb_expand_head()`, coinciding with the skb holding the last `dst` reference whose `rt6i_idev` is in turn the last `inet6_dev` reference (i.e. a concurrent `addrconf_ifdown`/netdev teardown), and an RCU grace period completing in the handful of instructions between `kfree_skb()` and `IP6_INC_STATS()` — conditions the attacker can influence only statistically, not command.\nPR:N - No credential, capability, or authentication check exists anywhere on the output path; the packet that drives `ip6_finish_output2()` is forwarded or generated in response to unauthenticated remote traffic.\nUI:N - The transmit path executes automatically on packet forwarding or response generation; no local user must open, mount, or otherwise interact with anything.\nS:U - The freed `inet6_dev` and its per-CPU SNMP array are kernel objects in the same security authority as the code that touches them; no VM, IOMMU, or sandbox boundary is crossed.\nC:H - The `_DEVINC` macro reads `idev->stats.ipv6` out of a freed slab object, and per kernel UAF convention a stale read of a reclaimable heap object that the attacker can groom with concurrent traffic constitutes a high-confidentiality read primitive.\nI:H - After the stale pointer is read, `SNMP_INC_STATS64()` performs a `this_cpu_inc()` through it — if the `inet6_dev` slab object has been reclaimed with attacker-sprayed data this becomes a controlled increment at a chosen kernel address, a classic write primitive escalatable to control-flow hijacking; the freed per-CPU MIB is also written.\nA:H - The use-after-free write into freed slab/per-CPU memory panics KASAN and `panic_on_warn` kernels outright, and on stock kernels corrupts whatever allocation reclaimed the `inet6_dev`, causing an oops in the IPv6 transmit path."
}
]
}
],
"affected": [
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "unaffected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"net/ipv6/ip6_output.c"
],
"versions": [
{
"version": "ded37d03440d0ab346a8287cc2ba88b8dc90ceb0",
"lessThan": "ae8512e93f4ce47614ca89defaec1b93e00697b8",
"status": "affected",
"versionType": "git"
},
{
"version": "2323690eb05865a657709f4d28eb9538ea97bfc2",
"lessThan": "1504108cb6020df7b1a31c9bb80fd587470aa448",
"status": "affected",
"versionType": "git"
},
{
"version": "5796015fa968a3349027a27dcd04c71d95c53ba5",
"lessThan": "e891b36de161fcd96f12ff83667473e5067b9037",
"status": "affected",
"versionType": "git"
},
{
"version": "5796015fa968a3349027a27dcd04c71d95c53ba5",
"lessThan": "3574d28caf9a09756ae87ad1ea096c6f47b6101e",
"status": "affected",
"versionType": "git"
},
{
"version": "5796015fa968a3349027a27dcd04c71d95c53ba5",
"lessThan": "6ab6bf731354a6fdbaa617d1ec194960db61cf3b",
"status": "affected",
"versionType": "git"
},
{
"version": "5796015fa968a3349027a27dcd04c71d95c53ba5",
"lessThan": "56efc253196751ece1fc535a5b582be127b0578a",
"status": "affected",
"versionType": "git"
},
{
"version": "5796015fa968a3349027a27dcd04c71d95c53ba5",
"lessThan": "da273b377ae0d9bd255281ed3c2adb228321687b",
"status": "affected",
"versionType": "git"
},
{
"version": "b34c668a867ffdcf8bd8db4a36512572e82b4a15",
"status": "affected",
"versionType": "git"
},
{
"version": "5.4.137",
"lessThan": "5.4.289",
"status": "affected",
"versionType": "semver"
},
{
"version": "5.10.55",
"lessThan": "5.10.233",
"status": "affected",
"versionType": "semver"
},
{
"version": "5.13.7",
"lessThan": "5.14",
"status": "affected",
"versionType": "semver"
}
]
},
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "affected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"net/ipv6/ip6_output.c"
],
"versions": [
{
"version": "5.14",
"status": "affected"
},
{
"version": "0",
"lessThan": "5.14",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.4.289",
"lessThanOrEqual": "5.4.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.10.233",
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.15.166",
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.1.107",
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.6.48",
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.10.7",
"lessThanOrEqual": "6.10.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.11",
"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.4.137",
"versionEndExcluding": "5.4.289"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "5.10.55",
"versionEndExcluding": "5.10.233"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "5.14",
"versionEndExcluding": "5.15.166"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "5.14",
"versionEndExcluding": "6.1.107"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "5.14",
"versionEndExcluding": "6.6.48"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "5.14",
"versionEndExcluding": "6.10.7"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "5.14",
"versionEndExcluding": "6.11"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "5.13.7"
}
]
}
]
}
],
"references": [
{
"url": "https://git.kernel.org/stable/c/ae8512e93f4ce47614ca89defaec1b93e00697b8"
},
{
"url": "https://git.kernel.org/stable/c/1504108cb6020df7b1a31c9bb80fd587470aa448"
},
{
"url": "https://git.kernel.org/stable/c/e891b36de161fcd96f12ff83667473e5067b9037"
},
{
"url": "https://git.kernel.org/stable/c/3574d28caf9a09756ae87ad1ea096c6f47b6101e"
},
{
"url": "https://git.kernel.org/stable/c/6ab6bf731354a6fdbaa617d1ec194960db61cf3b"
},
{
"url": "https://git.kernel.org/stable/c/56efc253196751ece1fc535a5b582be127b0578a"
},
{
"url": "https://git.kernel.org/stable/c/da273b377ae0d9bd255281ed3c2adb228321687b"
}
],
"title": "ipv6: fix possible UAF in ip6_finish_output2()",
"x_generator": {
"engine": "bippy-1.2.0"
}
},
"adp": [
{
"metrics": [
{
"other": {
"type": "ssvc",
"content": {
"timestamp": "2024-09-04T20:20:05.005399Z",
"id": "CVE-2024-44986",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
}
],
"title": "CISA ADP Vulnrichment",
"providerMetadata": {
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP",
"dateUpdated": "2024-09-04T20:21:13.628Z"
}
},
{
"title": "CVE Program Container",
"references": [
{
"url": "https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html"
}
],
"providerMetadata": {
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE",
"dateUpdated": "2025-11-03T22:14:34.580Z"
}
}
]
}
}