CVE-2026-64574 json
wifi: mac80211: tear down new links on vif update error path
published 2026-08-05 3 mo ago modified 2026-10-19 20 d ago also EUVD-2026-53268
- cvss
- 7.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 4%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
wifi: mac80211: tear down new links on vif update error path
When ieee80211_vif_update_links() adds new links it allocates a link container for each and calls ieee80211_link_init() (which registers the per-link debugfs files with file->private_data pointing into the container) and ieee80211_link_setup(). If the subsequent drv_change_vif_links() fails, the error path restores the old pointers and jumps to 'free', which frees the new containers but never removes their debugfs entries or stops the links. The debugfs files survive with file->private_data dangling at the freed container, so a later open()+read() (e.g. link-1/txpower) dereferences freed memory in ieee80211_if_read_link(), a use-after-free.
The removal path already dismantles links correctly via ieee80211_tear_down_links(), which removes each link's keys and debugfs entries and calls ieee80211_link_stop(); the add path on the error branch does not. Commit be1ba9ed221f ("wifi: mac80211: avoid weird state in error path") hardened this same error path for the link-removal case (new_links == 0) but left the newly-added links' teardown unaddressed.
drv_change_vif_links() can fail at runtime on MLO drivers (internal allocation / queue / firmware command failures).
Remove the new links' debugfs entries and stop them before freeing.
BUG: KASAN: slab-use-after-free in ieee80211_if_read_link (net/mac80211/debugfs_netdev.c:127) Read of size 8 at addr ffff888011290000 by task exploit/145 Call Trace: ... ieee80211_if_read_link (net/mac80211/debugfs_netdev.c:127) short_proxy_read (fs/debugfs/file.c:373) vfs_read (fs/read_write.c:572) ksys_read (fs/read_write.c:716) do_syscall_64 (arch/x86/entry/syscall_64.c:94) entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:121) ... Oops: general protection fault, probably for non-canonical address 0xdffffc000000000a RIP: 0010:ieee80211_if_read_link (net/mac80211/debugfs_netdev.c:127) Kernel panic - not syncing: Fatal exception
Patch / fix
- Linux Linux 6.6.148, 6.12.101, 6.18.42, 7.1.6, 7.2
- linux Debian 13 6.12.101-1
- linux Debian 14 7.1.6-1
- linux-6.12 Debian 12 6.12.101-1~deb12u1
debian advisories DEBIAN-CVE-2026-64574
- linux Ubuntu 24.04 LTS 6.8.0-147.147
- linux Ubuntu 26.04 LTS 7.0.0-38.38
- linux-aws Ubuntu 24.04 LTS 6.8.0-1067.70
- linux-aws Ubuntu 26.04 LTS 7.0.0-1014.14
- linux-gcp Ubuntu 24.04 LTS 6.8.0-1071.79
- linux-gcp Ubuntu 26.04 LTS 7.0.0-1014.14
- linux-gke Ubuntu 24.04 LTS 6.8.0-1066.74
- linux-gke Ubuntu 26.04 LTS 7.0.0-1008.9
ubuntu advisories UBUNTU-CVE-2026-64574
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel-64kb SLE Module for Basesystem 15 SP7 6.4.0-150700.53.81.1
- kernel-syms SLE Module for Development Tools 15 SP7 6.4.0-150700.53.81.1
- kernel-azure SLE Module for Public Cloud 15 SP7 6.4.0-150700.53.81.1
- kernel-source SLE Module for Development Tools 15 SP7, SLE Module for Basesystem 15 SP7 6.4.0-150700.53.81.1
- kernel-default SLE Workstation Extension 15 SP7, SLE Module for Legacy 15 SP7, SLE Module for Basesystem 15 SP7 +2 more 6.4.0-150700.53.81.1
- kernel-zfcpdump SLE Module for Basesystem 15 SP7 6.4.0-150700.53.81.1
- kernel-obs-build SLE Module for Development Tools 15 SP7 6.4.0-150700.53.81.1
- kernel-default-base SLE Module for Basesystem 15 SP7 6.4.0-150700.53.81.1.150700.17.45.1
suse advisories SUSE-SU-2026:4254-1SUSE-SU-2026:23887-1SUSE-SU-2026:23902-1SUSE-SU-2026:23897-1SUSE-SU-2026:23881-1SUSE-SU-2026:4120-1
- kernel-rt openSUSE Leap 16.0 6.12.0-160000.38.1
- dtb-aarch64 openSUSE Leap 16.0 6.12.0-160000.38.1
- kernel-64kb openSUSE Leap 16.0 6.12.0-160000.38.1
- kernel-syms openSUSE Leap 16.0 6.12.0-160000.38.1
- kernel-azure openSUSE Leap 16.0 6.12.0-160000.38.1
- kernel-obs-qa openSUSE Leap 16.0 6.12.0-160000.38.1
- kernel-source openSUSE Leap 16.0 6.12.0-160000.38.1
- kernel-default openSUSE Leap 16.0 6.12.0-160000.38.1
opensuse advisories openSUSE-SU-2026:21910-1openSUSE-SU-2026:11476-1
- git.kernel.org/stable/c/329589417214d3b7221432e5b266ed2bba7ff674 commit
- git.kernel.org/stable/c/c57d97f381306bbfba174e8f708419e007824e0c commit
- git.kernel.org/stable/c/0f7eaeb950adb77f71beb546e5ab30f90b41fe6f commit
- git.kernel.org/stable/c/901a73523e093beff123b54b1ceaf3113f18acc9 commit
- git.kernel.org/stable/c/952c02b33f56207a160421bcd61e7ac53c9c59ae commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-64574 updated cvss 5.5
kernel: wifi: mac80211: tear down new links on vif update error path
-
Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 more Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +82 more Red Hat Enterprise Linux 10 kernelaffected: workaround, no fix available “Fix deferred”
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more Red Hat Enterprise Linux 9 kernel-rt, kernel-rt-selftests-internalnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 23 d ago
Exploit prediction
0.16% chance of exploitation in the next 30 days, higher than 4% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected products
- Linux Linux
Classification
- Weakness
-
- CWE-416 Use After Free
- Technology feeds
References
- git.kernel.org /stable/c/329589417214d3b7221432e5b266ed2bba7ff674
- git.kernel.org /stable/c/c57d97f381306bbfba174e8f708419e007824e0c
- git.kernel.org /stable/c/0f7eaeb950adb77f71beb546e5ab30f90b41fe6f
- git.kernel.org /stable/c/901a73523e093beff123b54b1ceaf3113f18acc9
- git.kernel.org /stable/c/952c02b33f56207a160421bcd61e7ac53c9c59ae
Sources
- CVE List CVE-2026-64574
- NVD CVE-2026-64574
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.