What’s Vulnerable › Vulnerabilities
CVE-2025-23133: wifi: ath11k: update channel list in reg notifier instead reg worker
- Severity: high (CVSS 7.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.3% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2025-04-16 · updated 2026-10-21
- Weakness: CWE-787
Description
In the Linux kernel, the following vulnerability has been resolved: wifi: ath11k: update channel list in reg notifier instead reg worker Currently when ath11k gets a new channel list, it will be processed according to the following steps: 1. update new channel list to cfg80211 and queue reg_work. 2. cfg80211 handles new channel list during reg_work. 3. update cfg80211's handled channel list to firmware by ath11k_reg_update_chan_list(). But ath11k will immediately execute step 3 after reg_work is just queued. Since step 2 is asynchronous, cfg80211 may not have completed handling the new channel list, which may leading to an out-of-bounds write error: BUG: KASAN: slab-out-of-bounds in ath11k_reg_update_chan_list Call Trace: ath11k_reg_update_chan_list+0xbfe/0xfe0 [ath11k] kfree+0x109/0x3a0 ath11k_regd_update+0x1cf/0x350 [ath11k] ath11k_regd_update_work+0x14/0x20 [ath11k] process_one_work+0xe35/0x14c0 Should ensure step 2 is completely done before executing step 3. Thus Wen raised patch[1]. When flag NL80211_REGDOM_SET_BY_DRIVER is set, cfg80211 will notify ath11k after step 2 is done. So enable the flag NL80211_REGDOM_SET_BY_DRIVER then cfg80211 will notify ath11k after step 2 is done. At this time, there will be no KASAN bug during the execution of the step 3. [1] https://patchwork.kernel.org/project/linux-wireless/patch/20230201065313.27203-1-quic_wgong@quicinc.com/ Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3
Affected products
- Linux kernel: from 5.15.79 before 5.16; from 6.0.9 before 6.1; from 6.1.1 before 6.12.46; from 6.13 before 6.14.2; 6.1, 6.1-rc5, 6.1-rc6, 6.1-rc7, 6.1-rc8 — fixed in 5.16, 6.1, 6.12.46, 6.14.2
How to fix
Upgrade to a fixed version: Linux kernel 5.16, 6.1, 6.12.46, 6.14.2. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/26618c039b78a76c373d4e02c5fbd52e3a73aead
- https://git.kernel.org/stable/c/933ab187e679e6fbdeea1835ae39efcc59c022d2
- https://git.kernel.org/stable/c/ec97bd5378c594be1f1c7a15dcf381e075b665d9
- https://git.kernel.org/stable/c/f952fb83c9c6f908d27500764c4aee1df04b9d3f
Get alerted when CVE-2025-23133 or the next vulnerability affects your stack