{ "dataType": "CVE_RECORD", "cveMetadata": { "cveId": "CVE-2024-26779", "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "state": "PUBLISHED", "assignerShortName": "Linux", "dateReserved": "2024-02-19T14:20:24.177Z", "datePublished": "2024-04-03T17:01:09.807Z", "dateUpdated": "2026-08-05T11:27:11.945Z" }, "containers": { "cna": { "providerMetadata": { "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "shortName": "Linux", "dateUpdated": "2026-08-05T11:27:11.945Z" }, "descriptions": [ { "lang": "en", "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nwifi: mac80211: fix race condition on enabling fast-xmit\n\nfast-xmit must only be enabled after the sta has been uploaded to the driver,\notherwise it could end up passing the not-yet-uploaded sta via drv_tx calls\nto the driver, leading to potential crashes because of uninitialized drv_priv\ndata.\nAdd a missing sta->uploaded check and re-check fast xmit after inserting a sta." } ], "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 vulnerable station-insert path is reached by receiving 802.11 mesh beacons/peering frames and QoS-data frames over the air, and the racing `ieee80211_check_fast_xmit()` call comes from the RX softirq handling those frames. Per WiFi frame-injection guidance this is Adjacent, requiring only radio range of a mesh/IBSS node.\nAC:L - The attacker controls both sides of the race — the beacon that triggers `sta_info_insert_rcu()` (which sleeps in `sta_info_insert_drv_state()`, widening the window to milliseconds) and the PM-bit-toggling QoS-data frames that drive `ieee80211_check_fast_xmit()` from softirq — and can retry indefinitely by rotating source MACs; the IBSS `drv_sta_state` failure path reaches the same state deterministically.\nPR:N - Open 802.11s mesh with kernel MPM (`__mesh_sta_info_alloc`) and non-RSN IBSS (`ieee80211_ibss_finish_sta`) pre-move the peer to `IEEE80211_STA_AUTHORIZED` before insertion, so station creation happens with zero credentials. The attacker is an unauthenticated wireless peer with no account on the target.\nUI:N - No victim action is needed; a node simply operating in mesh or IBSS mode processes the attacker's beacons and data frames automatically in the RX path.\nS:U - The corruption occurs in mac80211/driver structures within the kernel's own security authority, with no crossing of a VM, IOMMU, or sandbox boundary.\nC:H - Passing a never-uploaded `ieee80211_sta` to `drv_tx()` makes drivers use zeroed `drv_priv` — e.g. mt76 WCID index 0, which aliases another station's hardware key/rate-table entry, so frames are transmitted under the wrong security context — and the resulting driver-state confusion reads uninitialized/foreign memory, giving a disclosure primitive.\nI:H - This is a state/type confusion on driver-private data: `list_add` on zeroed `list_head`s (ath9k `ath_atx_tid`), indexing per-station driver arrays with an uninitialized index, and in the IBSS unwind case touching resources already freed by `drv_sta_remove`, all of which constitute memory corruption leveragable for write primitives and control-flow hijack.\nA:H - The immediate and near-certain effect is a kernel oops in softirq (NULL/near-NULL dereference from zeroed driver list heads) or a firmware/queue assert, remotely triggerable and repeatable, taking down the wireless node." } ] } ], "affected": [ { "product": "Linux", "vendor": "Linux", "defaultStatus": "unaffected", "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "programFiles": [ "net/mac80211/sta_info.c", "net/mac80211/tx.c" ], "versions": [ { "version": "17c18bf880b2464851e5a2bca86521affc46c97e", "lessThan": "76fad1174a0cae6fc857b9f88b261a2e4f07d587", "status": "affected", "versionType": "git" }, { "version": "17c18bf880b2464851e5a2bca86521affc46c97e", "lessThan": "85720b69aef177318f4a18efbcc4302228a340e5", "status": "affected", "versionType": "git" }, { "version": "17c18bf880b2464851e5a2bca86521affc46c97e", "lessThan": "5ffab99e070b9f8ae0cf60c3c3602b84eee818dd", "status": "affected", "versionType": "git" }, { "version": "17c18bf880b2464851e5a2bca86521affc46c97e", "lessThan": "88c18fd06608b3adee547102505d715f21075c9d", "status": "affected", "versionType": "git" }, { "version": "17c18bf880b2464851e5a2bca86521affc46c97e", "lessThan": "eb39bb548bf974acad7bd6780fe11f9e6652d696", "status": "affected", "versionType": "git" }, { "version": "17c18bf880b2464851e5a2bca86521affc46c97e", "lessThan": "54b79d8786964e2f840e8a2ec4a9f9a50f3d4954", "status": "affected", "versionType": "git" }, { "version": "17c18bf880b2464851e5a2bca86521affc46c97e", "lessThan": "281280276b70c822f55ce15b661f6d1d3228aaa9", "status": "affected", "versionType": "git" }, { "version": "17c18bf880b2464851e5a2bca86521affc46c97e", "lessThan": "bcbc84af1183c8cf3d1ca9b78540c2185cd85e7f", "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/sta_info.c", "net/mac80211/tx.c" ], "versions": [ { "version": "4.2", "status": "affected" }, { "version": "0", "lessThan": "4.2", "status": "unaffected", "versionType": "semver" }, { "version": "4.19.308", "lessThanOrEqual": "4.19.*", "status": "unaffected", "versionType": "semver" }, { "version": "5.4.270", "lessThanOrEqual": "5.4.*", "status": "unaffected", "versionType": "semver" }, { "version": "5.10.211", "lessThanOrEqual": "5.10.*", "status": "unaffected", "versionType": "semver" }, { "version": "5.15.150", "lessThanOrEqual": "5.15.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.1.80", "lessThanOrEqual": "6.1.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.6.19", "lessThanOrEqual": "6.6.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.7.7", "lessThanOrEqual": "6.7.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.8", "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": "4.2", "versionEndExcluding": "4.19.308" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "5.4.270" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "5.10.211" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "5.15.150" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "6.1.80" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "6.6.19" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "6.7.7" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "4.2", "versionEndExcluding": "6.8" } ] } ] } ], "references": [ { "url": "https://git.kernel.org/stable/c/76fad1174a0cae6fc857b9f88b261a2e4f07d587" }, { "url": "https://git.kernel.org/stable/c/85720b69aef177318f4a18efbcc4302228a340e5" }, { "url": "https://git.kernel.org/stable/c/5ffab99e070b9f8ae0cf60c3c3602b84eee818dd" }, { "url": "https://git.kernel.org/stable/c/88c18fd06608b3adee547102505d715f21075c9d" }, { "url": "https://git.kernel.org/stable/c/eb39bb548bf974acad7bd6780fe11f9e6652d696" }, { "url": "https://git.kernel.org/stable/c/54b79d8786964e2f840e8a2ec4a9f9a50f3d4954" }, { "url": "https://git.kernel.org/stable/c/281280276b70c822f55ce15b661f6d1d3228aaa9" }, { "url": "https://git.kernel.org/stable/c/bcbc84af1183c8cf3d1ca9b78540c2185cd85e7f" } ], "title": "wifi: mac80211: fix race condition on enabling fast-xmit", "x_generator": { "engine": "bippy-1.2.0" } }, "adp": [ { "problemTypes": [ { "descriptions": [ { "type": "CWE", "cweId": "CWE-362", "lang": "en", "description": "CWE-362 Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')" } ] } ], "metrics": [ { "cvssV3_1": { "scope": "UNCHANGED", "version": "3.1", "baseScore": 5.5, "attackVector": "LOCAL", "baseSeverity": "MEDIUM", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H", "integrityImpact": "NONE", "userInteraction": "NONE", "attackComplexity": "LOW", "availabilityImpact": "HIGH", "privilegesRequired": "LOW", "confidentialityImpact": "NONE" } }, { "other": { "type": "ssvc", "content": { "timestamp": "2024-04-03T19:22:50.891620Z", "id": "CVE-2024-26779", "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-11-06T21:39:37.576Z" } }, { "providerMetadata": { "orgId": "af854a3a-2127-422b-91ae-364da2661108", "shortName": "CVE", "dateUpdated": "2024-08-02T00:14:13.469Z" }, "title": "CVE Program Container", "references": [ { "url": "https://git.kernel.org/stable/c/76fad1174a0cae6fc857b9f88b261a2e4f07d587", "tags": [ "x_transferred" ] }, { "url": "https://git.kernel.org/stable/c/85720b69aef177318f4a18efbcc4302228a340e5", "tags": [ "x_transferred" ] }, { "url": "https://git.kernel.org/stable/c/5ffab99e070b9f8ae0cf60c3c3602b84eee818dd", "tags": [ "x_transferred" ] }, { "url": "https://git.kernel.org/stable/c/88c18fd06608b3adee547102505d715f21075c9d", "tags": [ "x_transferred" ] }, { "url": "https://git.kernel.org/stable/c/eb39bb548bf974acad7bd6780fe11f9e6652d696", "tags": [ "x_transferred" ] }, { "url": "https://git.kernel.org/stable/c/54b79d8786964e2f840e8a2ec4a9f9a50f3d4954", "tags": [ "x_transferred" ] }, { "url": "https://git.kernel.org/stable/c/281280276b70c822f55ce15b661f6d1d3228aaa9", "tags": [ "x_transferred" ] }, { "url": "https://git.kernel.org/stable/c/bcbc84af1183c8cf3d1ca9b78540c2185cd85e7f", "tags": [ "x_transferred" ] }, { "url": "https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html", "tags": [ "x_transferred" ] }, { "url": "https://lists.debian.org/debian-lts-announce/2024/06/msg00020.html", "tags": [ "x_transferred" ] } ] } ] }, "dataVersion": "5.2" }