Description
In the Linux kernel, the following vulnerability has been resolved:
wifi: mac80211: capture fast-RX rate before mesh reuses skb->cb
ieee80211_invoke_fast_rx() reads RX status through IEEE80211_SKB_RXCB(skb), which aliases the same skb->cb storage that ieee80211_rx_mesh_data() reuses as IEEE80211_TX_INFO. In the unicast forward path, mesh_data does:
info = IEEE80211_SKB_CB(fwd_skb); memset(info, 0, sizeof(*info));
on the same skb the caller still names via rx->skb, then either queues the skb for TX (success) or kfree_skb()'s it (no-route) before returning RX_QUEUED. The caller's RX_QUEUED arm then calls sta_stats_encode_rate(status) on memory that is either zeroed (success path) or freed (no-route path). The latter is KASAN slab-use-after-free in ieee80211_prepare_and_rx_handle.
Fix by encoding the rate from status before invoking ieee80211_rx_mesh_data(), so the RX_QUEUED arm consumes a value captured while status was still backed by valid memory.
Metrics
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | >= 3468e1e0c639032a603450f0830ccabfa76f5806, < 5fe97797412aa8bc0184f78379fafb594bcb7f66; >= 3468e1e0c639032a603450f0830ccabfa76f5806, < 0cd37e746e98ab0baa6d8b812955220775b080d6; >= 3468e1e0c639032a603450f0830ccabfa76f5806, < a2650f8461cd8ba287fee2992b36abe733c2bd5e; >= 3468e1e0c639032a603450f0830ccabfa76f5806, < 2fb64f94f9afb774f2fa0c7835727d7a67f89f07; >= 3468e1e0c639032a603450f0830ccabfa76f5806, < d71c841be5d9e586ee7f36c0dc8ed4db0d9a1349 |
| Linux | Linux | 6.4 |
References
- https://git.kernel.org/stable/c/0cd37e746e98ab0baa6d8b812955220775b080d6
- https://git.kernel.org/stable/c/2fb64f94f9afb774f2fa0c7835727d7a67f89f07Patch
- https://git.kernel.org/stable/c/5fe97797412aa8bc0184f78379fafb594bcb7f66
- https://git.kernel.org/stable/c/a2650f8461cd8ba287fee2992b36abe733c2bd5e
- https://git.kernel.org/stable/c/d71c841be5d9e586ee7f36c0dc8ed4db0d9a1349Patch
Timeline
- Published
- Jul 19, 2026
- Last modified
- Oct 21, 2026
- NVD status
- Modified