[PATCH] Change the max number of active probe SSIDs to match registration

Alex David flu0r1ne at flu0r1ne.net
Thu Dec 23 04:36:29 PST 2021


The maximum number of SSIDs in a for active probe requests is currently
reported as 16 (WLAN_SCAN_PARAMS_MAX_SSID) when registering the driver.
The scan_req_params structure only has the capacity to hold 10 SSIDs.
This leads to a buffer overflow which can be triggered from wpa_supplicant
in userspace. When copying the SSIDs into the scan_req_params structure in
the ath11k_mac_op_hw_scan route, it can overwrite the extraie pointer.

Signed-off-by: Alex David <flu0r1ne at flu0r1ne.net>
---
 drivers/net/wireless/ath/ath11k/wmi.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/ath/ath11k/wmi.h b/drivers/net/wireless/ath/ath11k/wmi.h
index 0584e68e7593..86bed27e90d8 100644
--- a/drivers/net/wireless/ath/ath11k/wmi.h
+++ b/drivers/net/wireless/ath/ath11k/wmi.h
@@ -3077,8 +3077,8 @@ enum scan_dwelltime_adaptive_mode {
 	SCAN_DWELL_MODE_STATIC = 4
 };

-#define WLAN_SCAN_MAX_NUM_SSID          10
-#define WLAN_SCAN_MAX_NUM_BSSID         10
+#define WLAN_SCAN_MAX_NUM_SSID          16
+#define WLAN_SCAN_MAX_NUM_BSSID         4
 #define WLAN_SCAN_MAX_NUM_CHANNELS      40

 #define WLAN_SSID_MAX_LEN 32
--
2.34.1





More information about the ath11k mailing list