264 lines
14 KiB
JSON
264 lines
14 KiB
JSON
{
|
||
"dataType": "CVE_RECORD",
|
||
"dataVersion": "5.2",
|
||
"cveMetadata": {
|
||
"cveId": "CVE-2022-49934",
|
||
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
|
||
"state": "PUBLISHED",
|
||
"assignerShortName": "Linux",
|
||
"dateReserved": "2025-05-01T14:05:17.254Z",
|
||
"datePublished": "2025-06-18T10:54:36.161Z",
|
||
"dateUpdated": "2026-08-05T08:56:46.037Z"
|
||
},
|
||
"containers": {
|
||
"cna": {
|
||
"providerMetadata": {
|
||
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
|
||
"shortName": "Linux",
|
||
"dateUpdated": "2026-08-05T08:56:46.037Z"
|
||
},
|
||
"descriptions": [
|
||
{
|
||
"lang": "en",
|
||
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nwifi: mac80211: Fix UAF in ieee80211_scan_rx()\n\nieee80211_scan_rx() tries to access scan_req->flags after a\nnull check, but a UAF is observed when the scan is completed\nand __ieee80211_scan_completed() executes, which then calls\ncfg80211_scan_done() leading to the freeing of scan_req.\n\nSince scan_req is rcu_dereference()'d, prevent the racing in\n__ieee80211_scan_completed() by ensuring that from mac80211's\nPOV it is no longer accessed from an RCU read critical section\nbefore we call cfg80211_scan_done()."
|
||
}
|
||
],
|
||
"metrics": [
|
||
{
|
||
"cvssV3_1": {
|
||
"version": "3.1",
|
||
"vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
|
||
"baseScore": 8.8,
|
||
"baseSeverity": "HIGH"
|
||
},
|
||
"scenarios": [
|
||
{
|
||
"lang": "en",
|
||
"value": "AV:A - The UAF is hit in ieee80211_scan_rx() on the softirq RX path when processing over-the-air Probe Response frames during an active scan; an attacker on the same Wi‑Fi RF segment injects those frames.\nAC:L - The attacker controls the RX side by flooding Probe Responses and can retry across frequent automatic scans (observable via the victim’s Probe Requests), making this an attacker-influenced race rather than an uncontrollable condition.\nPR:N - Frame delivery and scan RX handling require no account or capability on the victim; background/connect/scheduled scans run from system WLAN stacks without attacker-held host privileges.\nUI:N - Phones and laptops routinely scan in the background with Wi‑Fi enabled, so Probe Responses are processed at scan completion without further victim action at attack time.\nS:U - The use-after-free corrupts mac80211/cfg80211 heap state inside the host kernel only and does not cross a VM, IOMMU, or sandbox boundary.\nC:H - After kfree(scan_req), ieee80211_scan_rx() still reads scan_req->flags via a dangling RCU reference; reclaiming that cfg80211_scan_request object enables arbitrary kernel disclosure.\nI:H - The same sprayable scan_req UAF in the concurrent RX path yields write and control-flow primitives characteristic of exploitable kernel use-after-frees.\nA:H - Concurrent use of the freed scan_req causes a KASAN-confirmed kernel oops/panic-class crash in the scan RX path, so availability impact is complete even without full code execution."
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"affected": [
|
||
{
|
||
"product": "Linux",
|
||
"vendor": "Linux",
|
||
"defaultStatus": "unaffected",
|
||
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
|
||
"programFiles": [
|
||
"net/mac80211/scan.c"
|
||
],
|
||
"versions": [
|
||
{
|
||
"version": "6ea0a69ca21bbddab5b3979c2190013b0263e749",
|
||
"lessThan": "6eb181a64fdabf10be9e54de728876667da20255",
|
||
"status": "affected",
|
||
"versionType": "git"
|
||
},
|
||
{
|
||
"version": "6ea0a69ca21bbddab5b3979c2190013b0263e749",
|
||
"lessThan": "e0ff39448cea654843744c72c6780293c5082cb1",
|
||
"status": "affected",
|
||
"versionType": "git"
|
||
},
|
||
{
|
||
"version": "6ea0a69ca21bbddab5b3979c2190013b0263e749",
|
||
"lessThan": "78a07732fbb0934d14827d8f09b9aa6a49ee1aa9",
|
||
"status": "affected",
|
||
"versionType": "git"
|
||
},
|
||
{
|
||
"version": "6ea0a69ca21bbddab5b3979c2190013b0263e749",
|
||
"lessThan": "9ad48cbf8b07f10c1e4a7a262b32a9179ae9dd2d",
|
||
"status": "affected",
|
||
"versionType": "git"
|
||
},
|
||
{
|
||
"version": "6ea0a69ca21bbddab5b3979c2190013b0263e749",
|
||
"lessThan": "4abc8c07a065ecf771827bde3c63fbbe4aa0c08b",
|
||
"status": "affected",
|
||
"versionType": "git"
|
||
},
|
||
{
|
||
"version": "6ea0a69ca21bbddab5b3979c2190013b0263e749",
|
||
"lessThan": "5d20c6f932f2758078d0454729129c894fe353e7",
|
||
"status": "affected",
|
||
"versionType": "git"
|
||
},
|
||
{
|
||
"version": "6ea0a69ca21bbddab5b3979c2190013b0263e749",
|
||
"lessThan": "c0445feb80a4d0854898118fa01073701f8d356b",
|
||
"status": "affected",
|
||
"versionType": "git"
|
||
},
|
||
{
|
||
"version": "6ea0a69ca21bbddab5b3979c2190013b0263e749",
|
||
"lessThan": "60deb9f10eec5c6a20252ed36238b55d8b614a2c",
|
||
"status": "affected",
|
||
"versionType": "git"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"product": "Linux",
|
||
"vendor": "Linux",
|
||
"defaultStatus": "affected",
|
||
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
|
||
"programFiles": [
|
||
"net/mac80211/scan.c"
|
||
],
|
||
"versions": [
|
||
{
|
||
"version": "3.19",
|
||
"status": "affected"
|
||
},
|
||
{
|
||
"version": "0",
|
||
"lessThan": "3.19",
|
||
"status": "unaffected",
|
||
"versionType": "semver"
|
||
},
|
||
{
|
||
"version": "4.9.330",
|
||
"lessThanOrEqual": "4.9.*",
|
||
"status": "unaffected",
|
||
"versionType": "semver"
|
||
},
|
||
{
|
||
"version": "4.14.295",
|
||
"lessThanOrEqual": "4.14.*",
|
||
"status": "unaffected",
|
||
"versionType": "semver"
|
||
},
|
||
{
|
||
"version": "4.19.260",
|
||
"lessThanOrEqual": "4.19.*",
|
||
"status": "unaffected",
|
||
"versionType": "semver"
|
||
},
|
||
{
|
||
"version": "5.4.215",
|
||
"lessThanOrEqual": "5.4.*",
|
||
"status": "unaffected",
|
||
"versionType": "semver"
|
||
},
|
||
{
|
||
"version": "5.10.142",
|
||
"lessThanOrEqual": "5.10.*",
|
||
"status": "unaffected",
|
||
"versionType": "semver"
|
||
},
|
||
{
|
||
"version": "5.15.66",
|
||
"lessThanOrEqual": "5.15.*",
|
||
"status": "unaffected",
|
||
"versionType": "semver"
|
||
},
|
||
{
|
||
"version": "5.19.8",
|
||
"lessThanOrEqual": "5.19.*",
|
||
"status": "unaffected",
|
||
"versionType": "semver"
|
||
},
|
||
{
|
||
"version": "6.0",
|
||
"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": "3.19",
|
||
"versionEndExcluding": "4.9.330"
|
||
},
|
||
{
|
||
"vulnerable": true,
|
||
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
|
||
"versionStartIncluding": "3.19",
|
||
"versionEndExcluding": "4.14.295"
|
||
},
|
||
{
|
||
"vulnerable": true,
|
||
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
|
||
"versionStartIncluding": "3.19",
|
||
"versionEndExcluding": "4.19.260"
|
||
},
|
||
{
|
||
"vulnerable": true,
|
||
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
|
||
"versionStartIncluding": "3.19",
|
||
"versionEndExcluding": "5.4.215"
|
||
},
|
||
{
|
||
"vulnerable": true,
|
||
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
|
||
"versionStartIncluding": "3.19",
|
||
"versionEndExcluding": "5.10.142"
|
||
},
|
||
{
|
||
"vulnerable": true,
|
||
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
|
||
"versionStartIncluding": "3.19",
|
||
"versionEndExcluding": "5.15.66"
|
||
},
|
||
{
|
||
"vulnerable": true,
|
||
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
|
||
"versionStartIncluding": "3.19",
|
||
"versionEndExcluding": "5.19.8"
|
||
},
|
||
{
|
||
"vulnerable": true,
|
||
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
|
||
"versionStartIncluding": "3.19",
|
||
"versionEndExcluding": "6.0"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"references": [
|
||
{
|
||
"url": "https://git.kernel.org/stable/c/6eb181a64fdabf10be9e54de728876667da20255"
|
||
},
|
||
{
|
||
"url": "https://git.kernel.org/stable/c/e0ff39448cea654843744c72c6780293c5082cb1"
|
||
},
|
||
{
|
||
"url": "https://git.kernel.org/stable/c/78a07732fbb0934d14827d8f09b9aa6a49ee1aa9"
|
||
},
|
||
{
|
||
"url": "https://git.kernel.org/stable/c/9ad48cbf8b07f10c1e4a7a262b32a9179ae9dd2d"
|
||
},
|
||
{
|
||
"url": "https://git.kernel.org/stable/c/4abc8c07a065ecf771827bde3c63fbbe4aa0c08b"
|
||
},
|
||
{
|
||
"url": "https://git.kernel.org/stable/c/5d20c6f932f2758078d0454729129c894fe353e7"
|
||
},
|
||
{
|
||
"url": "https://git.kernel.org/stable/c/c0445feb80a4d0854898118fa01073701f8d356b"
|
||
},
|
||
{
|
||
"url": "https://git.kernel.org/stable/c/60deb9f10eec5c6a20252ed36238b55d8b614a2c"
|
||
}
|
||
],
|
||
"title": "wifi: mac80211: Fix UAF in ieee80211_scan_rx()",
|
||
"x_generator": {
|
||
"engine": "bippy-1.2.0"
|
||
}
|
||
}
|
||
}
|
||
} |