linux/drivers/net/wireless/ath/ath6kl
Tristan Madani 6b47b29730 wifi: ath6kl: fix OOB read from firmware IE lengths in connect event
The firmware-controlled beacon_ie_len, assoc_req_len, and assoc_resp_len
fields in ath6kl_wmi_connect_event_rx() are not validated against the
buffer length. Their sum (up to 765) can exceed the actual WMI event
data, causing out-of-bounds reads during IE parsing and state corruption
of wmi->is_wmm_enabled.

Add a check that the total IE length fits within the buffer.

Fixes: bdcd817079 ("Add ath6kl cleaned up driver")
Signed-off-by: Tristan Madani <tristan@talencesecurity.com>
Reviewed-by: Vasanthakumar Thiagarajan <vasanthakumar.thiagarajan@oss.qualcomm.com>
Link: https://patch.msgid.link/20260421135009.348084-3-tristmd@gmail.com
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
2026-07-13 06:55:18 -07:00
..
bmi.c wifi: ath6kl: remove WARN on bad firmware input 2025-06-18 09:04:56 +02:00
bmi.h
cfg80211.c wifi: cfg80211: Add MAC address filter to remain_on_channel 2026-05-05 13:25:27 +02:00
cfg80211.h
common.h
core.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
core.h ath6kl: Replace zero-length array with flexible-array 2020-05-06 09:21:30 +03:00
debug.c kernel.h: drop hex.h and update all hex.h users 2026-01-20 19:44:19 -08:00
debug.h
hif-ops.h
hif.c wifi: ath6kl: Fix spellings 2025-06-27 07:42:45 -07:00
hif.h wifi: ath6kl: fix repeated words in comments 2022-07-18 13:04:32 +03:00
htc_mbox.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
htc_pipe.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
htc-ops.h
htc.h wifi: ath6kl: Fix spellings 2025-06-27 07:42:45 -07:00
init.c wifi: ath6kl: Fix spellings 2025-06-27 07:42:45 -07:00
Kconfig treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
main.c wifi: nl80211/cfg80211: support stations of non-netdev interfaces 2026-03-02 09:23:03 +01:00
Makefile Revert "wifi: ath6k: silence false positive -Wno-dangling-pointer warning on GCC 12" 2023-07-26 10:09:28 +03:00
recovery.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
sdio.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
target.h
testmode.c wireless: remove unneeded break 2020-11-07 13:34:22 +02:00
testmode.h
trace.c
trace.h tracing/treewide: Remove second parameter of __assign_str() 2024-05-22 20:14:47 -04:00
txrx.c wifi: ath6kl: fix OOB access from firmware ADDBA window size 2026-07-13 06:55:18 -07:00
usb.c wifi: ath6kl: fix invalid workqueue flags in ath6kl_usb_create() 2026-06-14 12:02:09 -10:00
wmi.c wifi: ath6kl: fix OOB read from firmware IE lengths in connect event 2026-07-13 06:55:18 -07:00
wmi.h wifi: ath6kl: wmi: Avoid -Wflex-array-member-not-at-end warning 2026-03-06 12:23:16 -08:00