CVE-2026-64570

wifi: mac80211: fix fils_discovery double free on alloc failure

State
Published
Severity
7.8 High
Published
Aug 5, 2026
Updated
Oct 19, 2026
Reserved
Jul 19, 2026

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

wifi: mac80211: fix fils_discovery double free on alloc failure

ieee80211_set_fils_discovery() calls kfree_rcu() on the old template before allocating the replacement. If the kzalloc() then fails, it returns -ENOMEM while link->u.ap.fils_discovery still points at the object already queued for freeing. A later update or AP teardown (ieee80211_stop_ap()) re-queues that same rcu_head; the second free is caught by KASAN when the RCU sheaf is processed in softirq:

BUG: KASAN: double-free in rcu_free_sheaf (mm/slub.c:5850) Free of addr ffff88800c065280 by task swapper/0/0 ... __rcu_free_sheaf_prepare (mm/slub.c:2634 mm/slub.c:2940) rcu_free_sheaf (mm/slub.c:5850) rcu_core (kernel/rcu/tree.c:2617 kernel/rcu/tree.c:2869) handle_softirqs (kernel/softirq.c:622) The buggy address belongs to the cache kmalloc-96 of size 96

Queue the old object for kfree_rcu() only after the new one is published, matching ieee80211_set_probe_resp() and ieee80211_set_s1g_short_beacon().

Scores

CVSSScoreVectorSource
3.17.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

Affected Products

ProductVersions
LinuxLinux
  • 3b1c256eb4aedfc71dd97d5951ccff824b41d628 to before e2c55079155a953db669ca1986a985fa286bad95Affected
  • 3b1c256eb4aedfc71dd97d5951ccff824b41d628 to before 5baaa1042f71dd4b8e418f2cdd516808702d229bAffected
  • 3b1c256eb4aedfc71dd97d5951ccff824b41d628 to before 1981fba71797ec95e6755fb882cad88899a2a84fAffected
  • 3b1c256eb4aedfc71dd97d5951ccff824b41d628 to before 286e52a799fa158bdbd77da1426c4d93f9a6e7adAffected
LinuxLinux
  • 6.7Affected
  • before 6.7Not affected
  • 6.12.101 through 6.12.*Not affected
  • 6.18.42 through 6.18.*Not affected
  • 7.1.6 through 7.1.*Not affected
  • 7.2 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.