Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
wifi: cfg80211: fix u8 overflow in cfg80211_update_notlisted_nontrans()
In the copy code of the elements, we do the following calculation to reach the end of the MBSSID element: /* copy the IEs after MBSSID */ cpy_len = mbssid[1] + 2; This looks fine, however, cpy_len is a u8, the same as mbssid[1], so the addition of two can overflow. In this case the subsequent memcpy() will overflow the allocated buffer, since it copies 256 bytes too much due to the way the allocation and memcpy() sizes are calculated. Fix this by using size_t for the cpy_len variable. This fixes CVE-2022-41674. Reported-by: Soenke Huster <shuster@seemoo.tu-darmstadt.de> Tested-by: Soenke Huster <shuster@seemoo.tu-darmstadt.de> Fixes: 0b8fb8235be8 ("cfg80211: Parsing of Multiple BSSID information in scanning") Link: https://lore.kernel.org/lkml/20221013175147.067414219@linuxfoundation.org/ Reviewed-by: Kees Cook <keescook@chromium.org> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Git-commit: aebe9f4639b13a1f4e9a6b42cdd2e38c617b442d Git-repo: https://android.googlesource.com/kernel/common Change-Id: If6ed330dc65fdf387ee8584b5a69840242edf5cf Signed-off-by: Vulupala Shashank Reddy<quic_vulupa@quicinc.com>
- Loading branch information