wifi: wilc1000: fix u8 overflow in SSID scan buffer size calculation
21Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackcvss 7.8epss 0.1%
exploitation probability
0.1%top 96% of all CVEs
observed exploitation
nono source reports it
In the Linux kernel, the following vulnerability has been resolved:
wifi: wilc1000: fix u8 overflow in SSID scan buffer size calculation
The variable valuesize is declared as u8 but accumulates the total
length of all SSIDs to scan. Each SSID contributes up to 33 bytes
(IEEE80211_MAX_SSID_LEN + 1), and with WILC_MAX_NUM_PROBED_SSID (10)
SSIDs the total can reach 330, which wraps around to 74 when stored
in a u8.
This causes kmalloc to allocate only 75 bytes while the subsequent
memcpy writes up to 331 bytes into the buffer, resulting in a 256-byte
heap buffer overflow.
Widen valuesize from u8 to u32 to accommodate the full range.
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Affected products
Linux · LinuxReferences
https://git.kernel.org/stable/c/0c7f21d8bd2f93998b72b7a7f93152336aeca4ddhttps://git.kernel.org/stable/c/34a23fd9ddd683a03c7e8cc0ceded3e59e354b99https://git.kernel.org/stable/c/549f02d8ec94d39092ab6d9b103d0d6783a4b024https://git.kernel.org/stable/c/9907ac9b9a18b92fc34b9e4cb9e10f208dc1d3f7https://git.kernel.org/stable/c/bfbddeadd4779651403035ee177ae2f22f9f5521https://git.kernel.org/stable/c/c97b2a00059608592ad0d86fbb813a4f8cf9464bhttps://git.kernel.org/stable/c/d049e56b1739101d1c4d81deedb269c52a8dbba0https://git.kernel.org/stable/c/d8388614de613c28eeb659c10115060a83739924