CVE-2026-64223: wifi: mac80211: consume only present negotiated TTLM maps
Greg Kroah-Hartman <[email protected]>
| Newsgroups | org.kernel.vger.linux-cve-announce |
|---|---|
| Message-ID | <2026072417-CVE-2026-64223-b945@gregkh> |
From: Greg Kroah-Hartman <[email protected]> Description =========== In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: consume only present negotiated TTLM maps ieee80211_tid_to_link_map_size_ok() validates negotiated TTLM elements against the number of link-map entries indicated by link_map_presence. ieee80211_parse_neg_ttlm() must consume the same layout. The parser advanced its cursor for every TID, including TIDs whose presence bit is clear and therefore have no map bytes in the element. A sparse map can then make a later present TID read past the validated element. The bad bytes land in neg_ttlm->{up,down}link[tid] but are gated by valid_links before being applied to driver state, so a peer cannot turn the read into a policy change. Under KUnit + KASAN with an exact-sized element allocation the OOB read is reported as a slab-out-of-bounds; whether the same trigger fires under the production RX path depends on surrounding allocator state. Advance the cursor only when the current TID has a map present. The Linux kernel CVE team has assigned CVE-2026-64223 to this issue. Affected and fixed versions =========================== Issue introduced in 6.9 with commit 8f500fbc6c655976c8062b1f1e55bd0b3095d6c2 and fixed in 6.12.92 with commit f7d395dc5008168ac5b9c1ac2791e59a6078cca1 Issue introduced in 6.9 with commit 8f500fbc6c655976c8062b1f1e55bd0b3095d6c2 and fixed in 6.18.34 with commit 2dd9304727c7041df0a599595910bdbe02ad03c5 Issue introduced in 6.9 with commit 8f500fbc6c655976c8062b1f1e55bd0b3095d6c2 and fixed in 7.0.11 with commit 2becaaeebe230ade1fcd5d0f1cde4d6ee93ec78f Issue introduced in 6.9 with commit 8f500fbc6c655976c8062b1f1e55bd0b3095d6c2 and fixed in 7.1 with commit a6e6ccd5bd07155c2add6c74ce1a5e68ad3b95ea Please see https://www.kernel.org for a full list of currently supported kernel versions by the kernel community. Unaffected versions might change over time as fixes are backported to older supported kernel versions. The official CVE entry at https://cve.org/CVERecord/?id=CVE-2026-64223 will be updated if fixes are backported, please check that for the most up to date information about this issue. Affected files ============== The file(s) affected by this issue are: net/mac80211/mlme.c Mitigation ========== The Linux kernel CVE team recommends that you update to the latest stable kernel version for this, and many other bugfixes. Individual changes are never tested alone, but rather are part of a larger kernel release. Cherry-picking individual commits is not recommended or supported by the Linux kernel community at all. If however, updating to the latest release is impossible, the individual changes to resolve this issue can be found at these commits: https://git.kernel.org/stable/c/f7d395dc5008168ac5b9c1ac2791e59a6078cca1 https://git.kernel.org/stable/c/2dd9304727c7041df0a599595910bdbe02ad03c5 https://git.kernel.org/stable/c/2becaaeebe230ade1fcd5d0f1cde4d6ee93ec78f https://git.kernel.org/stable/c/a6e6ccd5bd07155c2add6c74ce1a5e68ad3b95ea