Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

redhat логотип

CVE-2026-68409

Опубликовано: 10 авг. 2026
Источник: redhat
CVSS3: 7.1

Описание

In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: defer link RX stats percpu free to RCU sta_remove_link() frees a removed MLO link's RX stats percpu buffer right away, but defers only the link container to RCU: sta_info_free_link(&alloc->info); kfree_rcu(alloc, rcu_head); The RX fast path reads link_sta under rcu_read_lock and writes the percpu stats. A reader that resolved link_sta before the removal keeps the pointer. The container stays alive from the kfree_rcu, so the read still works. But the percpu block it points to is already freed. This needs uses_rss. That is when pcpu_rx_stats exists. The full STA teardown frees the deflink stats only after synchronize_net(). The link removal path had no such barrier. The race is hard to win in practice, but the free should still wait for RCU. Free the link together with its data from a single RCU callback, so the percpu block is reclaimed only after readers drain.

A flaw was found in the mac80211 Wi-Fi driver of the Linux kernel. When an MLO (Multi-Link Operation) link is removed, the RX statistics per-CPU buffer is freed immediately, while the link container is deferred to RCU (Read-Copy-Update). This timing issue can lead to a use-after-free vulnerability, where a reader might still access the freed memory. While difficult to exploit in practice, this could potentially lead to system instability or denial of service.

Меры по смягчению последствий

To mitigate this vulnerability, prevent the mac80211 kernel module from loading on systems where wireless networking is not required.

  1. Create a configuration file to prevent the module from loading:
echo "install mac80211 /bin/true" > /etc/modprobe.d/disable-mac80211.conf echo "blacklist mac80211" >> /etc/modprobe.d/disable-mac80211.conf
  1. If the module is currently loaded, attempt to remove it:
modprobe -r mac80211

Caveats: Disabling this module will disable wireless network interfaces relying on the mac80211 subsystem. Warning: If the mac80211 module is currently in use by active network hardware or dependent modules, unloading it will fail, and a system reboot is required for the configuration changes to take effect.

Затронутые пакеты

ПлатформаПакетСостояниеРекомендацияРелиз
Red Hat Enterprise Linux 6kernelNot affected
Red Hat Enterprise Linux 7kernelNot affected
Red Hat Enterprise Linux 7kernel-rtNot affected
Red Hat Enterprise Linux 9kernel-rtAffected
Red Hat Enterprise Linux for NVIDIA 26kernelWill not fix
Red Hat OpenShift Container Platform 4openshift/ose-rhel-coreos-8Not affected
Red Hat OpenShift Container Platform 4openshift/ose-rhel-coreos-9Not affected
Red Hat Enterprise Linux 10kernelFixedRHSA-2026:6533408.09.2026
Red Hat Enterprise Linux 8kernel-rtFixedRHSA-2026:8280614.10.2026
Red Hat Enterprise Linux 8kernelFixedRHSA-2026:8280714.10.2026

Показывать по

Дополнительная информация

Статус:

Important
Дефект:
CWE-825
https://bugzilla.redhat.com/show_bug.cgi?id=2513299kernel: wifi: mac80211: defer link RX stats percpu free to RCU

7.1 High

CVSS3

Связанные уязвимости

CVSS3: 8.8
ubuntu
3 месяца назад

In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: defer link RX stats percpu free to RCU sta_remove_link() frees a removed MLO link's RX stats percpu buffer right away, but defers only the link container to RCU: sta_info_free_link(&alloc->info); kfree_rcu(alloc, rcu_head); The RX fast path reads link_sta under rcu_read_lock and writes the percpu stats. A reader that resolved link_sta before the removal keeps the pointer. The container stays alive from the kfree_rcu, so the read still works. But the percpu block it points to is already freed. This needs uses_rss. That is when pcpu_rx_stats exists. The full STA teardown frees the deflink stats only after synchronize_net(). The link removal path had no such barrier. The race is hard to win in practice, but the free should still wait for RCU. Free the link together with its data from a single RCU callback, so the percpu block is reclaimed only after readers drain.

CVSS3: 8.8
nvd
3 месяца назад

In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: defer link RX stats percpu free to RCU sta_remove_link() frees a removed MLO link's RX stats percpu buffer right away, but defers only the link container to RCU: sta_info_free_link(&alloc->info); kfree_rcu(alloc, rcu_head); The RX fast path reads link_sta under rcu_read_lock and writes the percpu stats. A reader that resolved link_sta before the removal keeps the pointer. The container stays alive from the kfree_rcu, so the read still works. But the percpu block it points to is already freed. This needs uses_rss. That is when pcpu_rx_stats exists. The full STA teardown frees the deflink stats only after synchronize_net(). The link removal path had no such barrier. The race is hard to win in practice, but the free should still wait for RCU. Free the link together with its data from a single RCU callback, so the percpu block is reclaimed only after readers drain.

CVSS3: 4.8
msrc
3 месяца назад

wifi: mac80211: defer link RX stats percpu free to RCU

CVSS3: 8.8
debian
3 месяца назад

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

CVSS3: 8.8
github
3 месяца назад

In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: defer link RX stats percpu free to RCU sta_remove_link() frees a removed MLO link's RX stats percpu buffer right away, but defers only the link container to RCU: sta_info_free_link(&alloc->info); kfree_rcu(alloc, rcu_head); The RX fast path reads link_sta under rcu_read_lock and writes the percpu stats. A reader that resolved link_sta before the removal keeps the pointer. The container stays alive from the kfree_rcu, so the read still works. But the percpu block it points to is already freed. This needs uses_rss. That is when pcpu_rx_stats exists. The full STA teardown frees the deflink stats only after synchronize_net(). The link removal path had no such barrier. The race is hard to win in practice, but the free should still wait for RCU. Free the link together with its data from a single RCU callback, so the percpu block is reclaimed only after readers drain.

7.1 High

CVSS3