Description
In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: Don't finalize CSA in IBSS mode if state is disconnected When we are not connected to a channel, sending channel "switch" announcement doesn't make any sense. The BSS list is empty in that case. This causes the for loop in cfg80211_get_bss() to be bypassed, so the function returns NULL (check line 1424 of net/wireless/scan.c), causing the WARN_ON() in ieee80211_ibss_csa_beacon() to get triggered (check line 500 of net/mac80211/ibss.c), which was consequently reported on the syzkaller dashboard. Thus, check if we have an existing connection before generating the CSA beacon in ieee80211_ibss_finish_csa().
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
cd7760e62c2ac8581f050b2d36501d1a60beaf83 to < cdb9a8da9b84800eb15506cd9363cf0cf059e677affectedcd7760e62c2ac8581f050b2d36501d1a60beaf83 to < 1691a48aef0a82d1754b9853dae7e3f5cacdf70baffectedcd7760e62c2ac8581f050b2d36501d1a60beaf83 to < d9eb37db6a28b59a95a3461450ee209654c5f95baffectedcd7760e62c2ac8581f050b2d36501d1a60beaf83 to < 66689c5c02acd4d76c28498fe220998610aec61eaffectedcd7760e62c2ac8581f050b2d36501d1a60beaf83 to < dd649b49219a0388cc10fc40e4c2ea681566a780affectedcd7760e62c2ac8581f050b2d36501d1a60beaf83 to < 552ba102a6898630a7d16887f29e606d6fabe508affectedcd7760e62c2ac8581f050b2d36501d1a60beaf83 to < 864e280cb3a9a0f5212b16ef5057c4e692f7039daffectedcd7760e62c2ac8581f050b2d36501d1a60beaf83 to < 15bc8966b6d3a5b9bfe4c9facfa02f2b69b1e5f0affected
Linux Linux
Default version status: affected
3.13affected0 to < 3.13unaffected4.9.328 to ≤ 4.9.*unaffected4.14.293 to ≤ 4.14.*unaffected4.19.258 to ≤ 4.19.*unaffected5.4.213 to ≤ 5.4.*unaffected5.10.142 to ≤ 5.10.*unaffected5.15.66 to ≤ 5.15.*unaffected5.19.8 to ≤ 5.19.*unaffected6.0 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/cdb9a8da9b84800eb15506cd9363cf0cf059e677 ↗
- https://git.kernel.org/stable/c/1691a48aef0a82d1754b9853dae7e3f5cacdf70b ↗
- https://git.kernel.org/stable/c/d9eb37db6a28b59a95a3461450ee209654c5f95b ↗
- https://git.kernel.org/stable/c/66689c5c02acd4d76c28498fe220998610aec61e ↗
- https://git.kernel.org/stable/c/dd649b49219a0388cc10fc40e4c2ea681566a780 ↗
- https://git.kernel.org/stable/c/552ba102a6898630a7d16887f29e606d6fabe508 ↗
- https://git.kernel.org/stable/c/864e280cb3a9a0f5212b16ef5057c4e692f7039d ↗
- https://git.kernel.org/stable/c/15bc8966b6d3a5b9bfe4c9facfa02f2b69b1e5f0 ↗