{"id":"CVE-2026-64117","state":"PUBLISHED","title":"wifi: mac80211: capture fast-RX rate before mesh reuses skb->cb","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nwifi: mac80211: capture fast-RX rate before mesh reuses skb->cb\n\nieee80211_invoke_fast_rx() reads RX status through\nIEEE80211_SKB_RXCB(skb), which aliases the same skb->cb storage\nthat ieee80211_rx_mesh_data() reuses as IEEE80211_TX_INFO.  In the\nunicast forward path, mesh_data does:\n\n\tinfo = IEEE80211_SKB_CB(fwd_skb);\n\tmemset(info, 0, sizeof(*info));\n\non the same skb the caller still names via rx->skb, then either\nqueues the skb for TX (success) or kfree_skb()'s it (no-route)\nbefore returning RX_QUEUED.  The caller's RX_QUEUED arm then\ncalls sta_stats_encode_rate(status) on memory that is either\nzeroed (success path) or freed (no-route path).  The latter is\nKASAN slab-use-after-free in ieee80211_prepare_and_rx_handle.\n\nFix by encoding the rate from status before invoking\nieee80211_rx_mesh_data(), so the RX_QUEUED arm consumes a value\ncaptured while status was still backed by valid memory.","publishedAt":"2026-07-19T15:40:16.941Z","updatedAt":"2026-10-21T12:43:04.607Z","severity":{"score":8.8,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","source":"Linux"},"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"3468e1e0c639032a603450f0830ccabfa76f5806","status":"affected","lessThan":"5fe97797412aa8bc0184f78379fafb594bcb7f66","versionType":"git"},{"version":"3468e1e0c639032a603450f0830ccabfa76f5806","status":"affected","lessThan":"0cd37e746e98ab0baa6d8b812955220775b080d6","versionType":"git"},{"version":"3468e1e0c639032a603450f0830ccabfa76f5806","status":"affected","lessThan":"a2650f8461cd8ba287fee2992b36abe733c2bd5e","versionType":"git"},{"version":"3468e1e0c639032a603450f0830ccabfa76f5806","status":"affected","lessThan":"2fb64f94f9afb774f2fa0c7835727d7a67f89f07","versionType":"git"},{"version":"3468e1e0c639032a603450f0830ccabfa76f5806","status":"affected","lessThan":"d71c841be5d9e586ee7f36c0dc8ed4db0d9a1349","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/mac80211/rx.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"6.4","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.4","versionType":"semver"},{"version":"6.6.160","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.114","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.57","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.0.11","status":"unaffected","lessThanOrEqual":"7.0.*","versionType":"semver"},{"version":"7.1","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/mac80211/rx.c"]}],"references":["https://git.kernel.org/stable/c/5fe97797412aa8bc0184f78379fafb594bcb7f66","https://git.kernel.org/stable/c/0cd37e746e98ab0baa6d8b812955220775b080d6","https://git.kernel.org/stable/c/a2650f8461cd8ba287fee2992b36abe733c2bd5e","https://git.kernel.org/stable/c/2fb64f94f9afb774f2fa0c7835727d7a67f89f07","https://git.kernel.org/stable/c/d71c841be5d9e586ee7f36c0dc8ed4db0d9a1349"],"weaknesses":["CWE-416"],"ingestedAt":"2026-10-29T20:12:41.951Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/64xxx/CVE-2026-64117.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-64117","state":"PUBLISHED","datePublished":"2026-07-19T15:40:16.941Z","dateUpdated":"2026-10-21T12:43:04.607Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-07-19T07:54:57.035Z"},"containers":{"cna":{"title":"wifi: mac80211: capture fast-RX rate before mesh reuses skb->cb","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nwifi: mac80211: capture fast-RX rate before mesh reuses skb->cb\n\nieee80211_invoke_fast_rx() reads RX status through\nIEEE80211_SKB_RXCB(skb), which aliases the same skb->cb storage\nthat ieee80211_rx_mesh_data() reuses as IEEE80211_TX_INFO.  In the\nunicast forward path, mesh_data does:\n\n\tinfo = IEEE80211_SKB_CB(fwd_skb);\n\tmemset(info, 0, sizeof(*info));\n\non the same skb the caller still names via rx->skb, then either\nqueues the skb for TX (success) or kfree_skb()'s it (no-route)\nbefore returning RX_QUEUED.  The caller's RX_QUEUED arm then\ncalls sta_stats_encode_rate(status) on memory that is either\nzeroed (success path) or freed (no-route path).  The latter is\nKASAN slab-use-after-free in ieee80211_prepare_and_rx_handle.\n\nFix by encoding the rate from status before invoking\nieee80211_rx_mesh_data(), so the RX_QUEUED arm consumes a value\ncaptured while status was still backed by valid memory."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"3468e1e0c639032a603450f0830ccabfa76f5806","status":"affected","lessThan":"5fe97797412aa8bc0184f78379fafb594bcb7f66","versionType":"git"},{"version":"3468e1e0c639032a603450f0830ccabfa76f5806","status":"affected","lessThan":"0cd37e746e98ab0baa6d8b812955220775b080d6","versionType":"git"},{"version":"3468e1e0c639032a603450f0830ccabfa76f5806","status":"affected","lessThan":"a2650f8461cd8ba287fee2992b36abe733c2bd5e","versionType":"git"},{"version":"3468e1e0c639032a603450f0830ccabfa76f5806","status":"affected","lessThan":"2fb64f94f9afb774f2fa0c7835727d7a67f89f07","versionType":"git"},{"version":"3468e1e0c639032a603450f0830ccabfa76f5806","status":"affected","lessThan":"d71c841be5d9e586ee7f36c0dc8ed4db0d9a1349","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/mac80211/rx.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"6.4","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.4","versionType":"semver"},{"version":"6.6.160","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.114","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.57","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.0.11","status":"unaffected","lessThanOrEqual":"7.0.*","versionType":"semver"},{"version":"7.1","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/mac80211/rx.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/5fe97797412aa8bc0184f78379fafb594bcb7f66"},{"url":"https://git.kernel.org/stable/c/0cd37e746e98ab0baa6d8b812955220775b080d6"},{"url":"https://git.kernel.org/stable/c/a2650f8461cd8ba287fee2992b36abe733c2bd5e"},{"url":"https://git.kernel.org/stable/c/2fb64f94f9afb774f2fa0c7835727d7a67f89f07"},{"url":"https://git.kernel.org/stable/c/d71c841be5d9e586ee7f36c0dc8ed4db0d9a1349"}],"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 bug is reached when mac80211 processes attacker-supplied 802.11 data frames received over WiFi in a mesh deployment; per kernel CNA guidance, WiFi frame delivery is Adjacent rather than fully remote Network.\nAC:L - Once on a mesh network as an authorized peer, an attacker can reliably trigger the no-route unicast forward path by sending frames to destinations without an active mesh path, causing deterministic skb free followed by the UAF read.\nPR:N - Exploitation requires no privileges on the victim host; the attacker only needs to transmit valid mesh data frames from an adjacent peer, not local root, capabilities, or namespace admin rights on the target system.\nUI:N - No victim user action is required beyond normal mesh operation; the bug fires automatically during RX processing of the attacker's frames.\nS:U - Impact is confined to kernel/mac80211 memory on the receiving system and does not cross a VM, container, or IOMMU security boundary.\nC:H - The flaw is a slab use-after-free read of skb->cb via sta_stats_encode_rate(), which can expose freed heap contents and is classified as high confidentiality impact for UAF bugs.\nI:H - Use-after-free of skb control-block memory provides a standard heap corruption primitive that can be developed into arbitrary kernel writes or code execution, not merely a benign stats miscalculation.\nA:H - The freed-skb path produces KASAN-reported slab use-after-free and can cause kernel oops or panic; the condition is repeatable by sending additional triggering frames for denial of service."}]}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-10-21T12:43:04.607Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.4","versionEndExcluding":"6.6.160"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.4","versionEndExcluding":"6.12.114"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.4","versionEndExcluding":"6.18.57"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.4","versionEndExcluding":"7.0.11"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.4","versionEndExcluding":"7.1"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2026-64117","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"version":"2.0.3","timestamp":"2026-10-16T15:36:37.743399Z"}}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-416","lang":"en","type":"CWE","description":"CWE-416 Use After Free"}]}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-19T20:28:12.974Z"}}]}}}