]> git.ipfire.org Git - thirdparty/linux.git/commit
staging: rtl8723bs: fix out-of-bounds read in rtw_get_ie() parser
authorNavaneeth K <knavaneeth786@gmail.com>
Thu, 20 Nov 2025 16:23:52 +0000 (16:23 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 27 Nov 2025 14:16:30 +0000 (15:16 +0100)
commit154828bf9559b9c8421fc2f0d7f7f76b3683aaed
treeb7410ac4c8404927d8f59224a8ce2a71b5c9943c
parent1520007aa361cd97067364d8c6fc1bbc14e93f08
staging: rtl8723bs: fix out-of-bounds read in rtw_get_ie() parser

The Information Element (IE) parser rtw_get_ie() trusted the length
byte of each IE without validating that the IE body (len bytes after
the 2-byte header) fits inside the remaining frame buffer. A malformed
frame can advertise an IE length larger than the available data, causing
the parser to increment its pointer beyond the buffer end. This results
in out-of-bounds reads or, depending on the pattern, an infinite loop.

Fix by validating that (offset + 2 + len) does not exceed the limit
before accepting the IE or advancing to the next element.

This prevents OOB reads and ensures the parser terminates safely on
malformed frames.

Signed-off-by: Navaneeth K <knavaneeth786@gmail.com>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/rtl8723bs/core/rtw_ieee80211.c