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

210 lines
10 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"cveMetadata": {
"cveId": "CVE-2021-47132",
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"state": "PUBLISHED",
"assignerShortName": "Linux",
"dateReserved": "2024-03-04T18:12:48.840Z",
"datePublished": "2024-03-15T20:14:35.337Z",
"dateUpdated": "2026-08-05T08:46:14.316Z"
},
"containers": {
"cna": {
"providerMetadata": {
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux",
"dateUpdated": "2026-08-05T08:46:14.316Z"
},
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmptcp: fix sk_forward_memory corruption on retransmission\n\nMPTCP sk_forward_memory handling is a bit special, as such field\nis protected by the msk socket spin_lock, instead of the plain\nsocket lock.\n\nCurrently we have a code path updating such field without handling\nthe relevant lock:\n\n__mptcp_retrans() -> __mptcp_clean_una_wakeup()\n\nSeveral helpers in __mptcp_clean_una_wakeup() will update\nsk_forward_alloc, possibly causing such field corruption, as reported\nby Matthieu.\n\nAddress the issue providing and using a new variant of blamed function\nwhich explicitly acquires the msk spin lock."
}
],
"metrics": [
{
"cvssV3_1": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
"baseScore": 7.5,
"baseSeverity": "HIGH"
},
"scenarios": [
{
"lang": "en",
"value": "AV:N - The bug is in the MPTCP protocol path (net/mptcp/); a remote MPTCP peer can induce retransmission (withheld/delayed ACKs or loss) and concurrently send packets that update sk_forward_alloc in softirq, reaching the unlocked clean_una path.\nAC:L - The attacker controls both sides of the race—triggering MPTCP-level retransmission while sending traffic that races on sk_forward_alloc under mptcp_data_lock—so success does not depend on conditions outside attacker influence.\nPR:N - No local privileges are required; an unauthenticated remote peer of an MPTCP connection (e.g., client to an internet-facing MPTCP service) can drive the retransmission and concurrent RX accounting paths.\nUI:N - Exploitation needs no victim user action beyond an existing or attacker-initiated MPTCP session; packet timing alone triggers the race.\nS:U - Impact is confined to the vulnerable host kernel’s socket memory accounting; there is no cross-boundary escape (VM/IOMMU/sandbox).\nC:N - The race only corrupts the sk_forward_alloc accounting counter; it does not provide an information disclosure or arbitrary read primitive.\nI:N - This is integer memory-accounting corruption (WARN_ON leftovers / reclaim imbalance), not an OOB write, UAF, or other primitive that yields controlled data modification or code execution.\nA:H - Corrupted sk_forward_alloc leads to sk_stream_kill_queues/inet_sock_destruct WARN_ON (and potential panic_on_warn) plus broken reclaim that can exhaust or mis-account socket memory, causing high availability impact."
}
]
}
],
"affected": [
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "unaffected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"net/mptcp/protocol.c"
],
"versions": [
{
"version": "64b9cea7a0afe579dd2682f1f1c04f2e4e72fd25",
"lessThan": "b9c78b1a95966a7bd2ddae05b73eafc0cda4fba3",
"status": "affected",
"versionType": "git"
},
{
"version": "64b9cea7a0afe579dd2682f1f1c04f2e4e72fd25",
"lessThan": "b5941f066b4ca331db225a976dae1d6ca8cf0ae3",
"status": "affected",
"versionType": "git"
},
{
"version": "96db8ffef07516a6d7414b6988f2a4298a839977",
"status": "affected",
"versionType": "git"
},
{
"version": "5.11.4",
"lessThan": "5.12",
"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/mptcp/protocol.c"
],
"versions": [
{
"version": "5.12",
"status": "affected"
},
{
"version": "0",
"lessThan": "5.12",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.12.10",
"lessThanOrEqual": "5.12.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.13",
"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.12",
"versionEndExcluding": "5.12.10"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "5.12",
"versionEndExcluding": "5.13"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "5.11.4"
}
]
}
]
}
],
"references": [
{
"url": "https://git.kernel.org/stable/c/b9c78b1a95966a7bd2ddae05b73eafc0cda4fba3"
},
{
"url": "https://git.kernel.org/stable/c/b5941f066b4ca331db225a976dae1d6ca8cf0ae3"
}
],
"title": "mptcp: fix sk_forward_memory corruption on retransmission",
"x_generator": {
"engine": "bippy-1.2.0"
}
},
"adp": [
{
"title": "CISA ADP Vulnrichment",
"metrics": [
{
"other": {
"type": "ssvc",
"content": {
"id": "CVE-2021-47132",
"role": "CISA Coordinator",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"version": "2.0.3",
"timestamp": "2024-03-18T15:54:25.829185Z"
}
}
}
],
"providerMetadata": {
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP",
"dateUpdated": "2024-06-04T17:14:35.969Z"
}
},
{
"providerMetadata": {
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE",
"dateUpdated": "2024-08-04T05:24:40.145Z"
},
"title": "CVE Program Container",
"references": [
{
"url": "https://git.kernel.org/stable/c/b9c78b1a95966a7bd2ddae05b73eafc0cda4fba3",
"tags": [
"x_transferred"
]
},
{
"url": "https://git.kernel.org/stable/c/b5941f066b4ca331db225a976dae1d6ca8cf0ae3",
"tags": [
"x_transferred"
]
}
]
}
]
}
}