All vulnerabilities
CVE-2026-98331

Linux: wifi: mac80211: unlist vifs when their netdev is unregistered

Linux LinuxOperating systems
CVSS
7.0High
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.13%Chance of exploitation activity in the next 30 days, higher than 2% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed in20a56e96a6f7b4dfbd13f8732fd2673409fc7ba0Also 821bab0456dfca12acef6df702c8f2477d313227CVE List
Published6 Oct 2026Updated 19 Oct 2026CVE List

What fixes it

  • 20a56e96a6f7b4dfbd13f8732fd2673409fc7ba0LinuxCVE List
  • 821bab0456dfca12acef6df702c8f2477d313227LinuxCVE List

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

Description

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

wifi: mac80211: unlist vifs when their netdev is unregistered

mac80211 only removes vifs from the local->interfaces list when an interface is removed via ieee80211_if_remove(), before it unregisters the netdev. However, it's possible for a netdev to be unregistered without going through that: When the netns that holds the wiphy is destroyed, the wiphy is supposed to move to the init_ns, but that can run into allocation failures.

Then, mac80211 has an interface listed that doesn't exist, and will eventually hit

BUG: failure at net/wireless/core.h:141/wiphy_to_rdev()! ... _cfg80211_unregister_wdev+0x24/0x36a [cfg80211] cfg80211_unregister_wdev+0x15/0x1d [cfg80211] ieee80211_remove_interfaces+0x1ff/0x257 [mac80211] ieee80211_unregister_hw+0x73/0x1d1 [mac80211] mac80211_hwsim_del_radio+0x114/0x166 [mac80211_hwsim]

Remove the interface from the list in ->ndo_uninit if it's still around to avoid this.

Text from CVE List

Affected versions 14

  • Linuxaffected: 463d018323851a608eef52a9427b0585005c647f before a22c02863439993095acd0c3db97fa53cd515f4fCVE List
  • Linuxaffected: 463d018323851a608eef52a9427b0585005c647f before 20a56e96a6f7b4dfbd13f8732fd2673409fc7ba0CVE List
  • Linuxaffected: 463d018323851a608eef52a9427b0585005c647f before b735ad1a9aca6080192c1316cf2706e5e1318762CVE List
  • Linuxaffected: 463d018323851a608eef52a9427b0585005c647f before d45bf731ec7085d2cc2c5d179d3b3b6c743d4fb1CVE List
  • Linuxaffected: 463d018323851a608eef52a9427b0585005c647f before 821bab0456dfca12acef6df702c8f2477d313227CVE List
  • Linuxaffected: 463d018323851a608eef52a9427b0585005c647f before eee2efd82867b623982ac51925b5a1812a74c50dCVE List
  • Linuxaffected: 2.6.32CVE List
  • Linuxunaffected: all versions before 2.6.32CVE List
  • Linuxunaffected: 6.1.189 through 6.1.*CVE List
  • Linuxunaffected: 6.6.158 through 6.6.*CVE List
  • Linuxunaffected: 6.12.112 through 6.12.*CVE List
  • Linuxunaffected: 6.18.54 through 6.18.*CVE List
  • Linuxunaffected: 7.2.8 through 7.2.*CVE List
  • Linuxunaffected: 7.3CVE List

References 6