wifi: mac80211: drop invalid source address OCB frames
[ Upstream commit d1b1a5eb27c4948e8811cf4dbb05aaf3eb10700c ] In OCB, don't accept frames from invalid source addresses (and in particular don't try to create stations for them), drop the frames instead. Reported-by: syzbot+8b512026a7ec10dcbdd9@syzkaller.appspotmail.com Closes: https://lore.kernel.org/r/6788d2d9.050a0220.20d369.0028.GAE@google.com/ Signed-off-by: Johannes Berg <johannes.berg@intel.com> Tested-by: syzbot+8b512026a7ec10dcbdd9@syzkaller.appspotmail.com Link: https://patch.msgid.link/20250616171838.7433379cab5d.I47444d63c72a0bd58d2e2b67bb99e1fea37eec6f@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org> (cherry picked from commit 5aebb9aa538a7a241a4db84a41540703c62bec11)
This commit is contained in:
parent
b5cdbdfa73
commit
2878d3ee9d
|
@ -4425,6 +4425,10 @@ static bool ieee80211_accept_frame(struct ieee80211_rx_data *rx)
|
|||
if (!multicast &&
|
||||
!ether_addr_equal(sdata->dev->dev_addr, hdr->addr1))
|
||||
return false;
|
||||
/* reject invalid/our STA address */
|
||||
if (!is_valid_ether_addr(hdr->addr2) ||
|
||||
ether_addr_equal(sdata->dev->dev_addr, hdr->addr2))
|
||||
return false;
|
||||
if (!rx->sta) {
|
||||
int rate_idx;
|
||||
if (status->encoding != RX_ENC_LEGACY)
|
||||
|
|
Loading…
Reference in New Issue