mac80211: drop A-MSDUs on old ciphers
authorJohannes Berg <johannes.berg@intel.com>
Tue, 11 May 2021 18:02:46 +0000 (20:02 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 11 May 2021 18:13:23 +0000 (20:13 +0200)
commit270032a2a9c4535799736142e1e7c413ca7b836e
tree762ad2b424fdfb30f852e47ab3b6e12040eef2d9
parent2b8a1fee3488c602aca8bea004a087e60806a5cf
mac80211: drop A-MSDUs on old ciphers

With old ciphers (WEP and TKIP) we shouldn't be using A-MSDUs
since A-MSDUs are only supported if we know that they are, and
the only practical way for that is HT support which doesn't
support old ciphers.

However, we would normally accept them anyway. Since we check
the MMIC before deaggregating A-MSDUs, and the A-MSDU bit in
the QoS header is not protected in TKIP (or WEP), this enables
attacks similar to CVE-2020-24588. To prevent that, drop A-MSDUs
completely with old ciphers.

Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20210511200110.076543300172.I548e6e71f1ee9cad4b9a37bf212ae7db723587aa@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/rx.c