Description
In the Linux kernel, the following vulnerability has been resolved: staging: rtl8723bs: fix missing shared-key auth challenge length check The WEP shared-key authentication handler uses the challenge-text element's attacker-controlled length without checking it against the fixed 128-byte chg_txt buffer. In OnAuthClient() the length from rtw_get_ie() - up to 255 - is used to perform memcpy() into the 128-byte pmlmeinfo->chg_txt, so a malicious AP sending a malformed WLAN_EID_CHALLENGE element can overflow/underfill chg_txt by up to 127 bytes. It is reachable over the air, before association, during shared-key authentication. In the case of an overflow, the driver can write out of bounds. In the case of an underfill, the driver can echo stale buffer memory. The challenge text is defined to be exactly 128 octets, which is already provided as the WLAN_AUTH_CHALLENGE_LEN define; require the element to be exactly that length before use.
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
554c0a3abf216c991c5ebddcdb2c08689ecd290b to < 39ae1033071001af9bb4573ebdbb43bbbe88f749affected554c0a3abf216c991c5ebddcdb2c08689ecd290b to < 4d018e7d7d908bdfcb5ecfa922b1d5cb9ddb3722affected554c0a3abf216c991c5ebddcdb2c08689ecd290b to < 4ba402fd47009d20e51dbfc934abb562098ea35baffected554c0a3abf216c991c5ebddcdb2c08689ecd290b to < 87c2f073d2aaea041d531b8e579c47570b54b3b7affected554c0a3abf216c991c5ebddcdb2c08689ecd290b to < a28a4b0592e4a37ea471bc0d308513a93133ce7eaffected554c0a3abf216c991c5ebddcdb2c08689ecd290b to < 6235b5156b48ed5d1ce3410d8f0b2fd67d30d944affected554c0a3abf216c991c5ebddcdb2c08689ecd290b to < 2c56ef658ac8c6bca36bc5574715e8f717207c6caffected
Linux Linux
Default version status: affected
4.12affected0 to < 4.12unaffected5.15.216 to ≤ 5.15.*unaffected6.1.183 to ≤ 6.1.*unaffected6.6.152 to ≤ 6.6.*unaffected6.12.104 to ≤ 6.12.*unaffected6.18.45 to ≤ 6.18.*unaffected7.1.9 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/39ae1033071001af9bb4573ebdbb43bbbe88f749 ↗
- https://git.kernel.org/stable/c/4d018e7d7d908bdfcb5ecfa922b1d5cb9ddb3722 ↗
- https://git.kernel.org/stable/c/4ba402fd47009d20e51dbfc934abb562098ea35b ↗
- https://git.kernel.org/stable/c/87c2f073d2aaea041d531b8e579c47570b54b3b7 ↗
- https://git.kernel.org/stable/c/a28a4b0592e4a37ea471bc0d308513a93133ce7e ↗
- https://git.kernel.org/stable/c/6235b5156b48ed5d1ce3410d8f0b2fd67d30d944 ↗
- https://git.kernel.org/stable/c/2c56ef658ac8c6bca36bc5574715e8f717207c6c ↗