| From bippy-5f407fcff5a0 Mon Sep 17 00:00:00 2001 |
| From: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| To: <linux-cve-announce@vger.kernel.org> |
| Reply-to: <cve@kernel.org>, <linux-kernel@vger.kernel.org> |
| Subject: CVE-2024-56539: wifi: mwifiex: Fix memcpy() field-spanning write warning in mwifiex_config_scan() |
| |
| Description |
| =========== |
| |
| In the Linux kernel, the following vulnerability has been resolved: |
| |
| wifi: mwifiex: Fix memcpy() field-spanning write warning in mwifiex_config_scan() |
| |
| Replace one-element array with a flexible-array member in `struct |
| mwifiex_ie_types_wildcard_ssid_params` to fix the following warning |
| on a MT8173 Chromebook (mt8173-elm-hana): |
| |
| [ 356.775250] ------------[ cut here ]------------ |
| [ 356.784543] memcpy: detected field-spanning write (size 6) of single field "wildcard_ssid_tlv->ssid" at drivers/net/wireless/marvell/mwifiex/scan.c:904 (size 1) |
| [ 356.813403] WARNING: CPU: 3 PID: 742 at drivers/net/wireless/marvell/mwifiex/scan.c:904 mwifiex_scan_networks+0x4fc/0xf28 [mwifiex] |
| |
| The "(size 6)" above is exactly the length of the SSID of the network |
| this device was connected to. The source of the warning looks like: |
| |
| ssid_len = user_scan_in->ssid_list[i].ssid_len; |
| [...] |
| memcpy(wildcard_ssid_tlv->ssid, |
| user_scan_in->ssid_list[i].ssid, ssid_len); |
| |
| There is a #define WILDCARD_SSID_TLV_MAX_SIZE that uses sizeof() on this |
| struct, but it already didn't account for the size of the one-element |
| array, so it doesn't need to be changed. |
| |
| The Linux kernel CVE team has assigned CVE-2024-56539 to this issue. |
| |
| |
| Affected and fixed versions |
| =========================== |
| |
| Issue introduced in 3.0 with commit 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e and fixed in 4.19.325 with commit a09760c513ae0f98c7082a1deace7fb6284ee866 |
| Issue introduced in 3.0 with commit 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e and fixed in 5.4.287 with commit 1de0ca1d7320a645ba2ee5954f64be08935b002a |
| Issue introduced in 3.0 with commit 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e and fixed in 5.10.231 with commit 5fa329c44e1e635da2541eab28b6cdb8464fc8d1 |
| Issue introduced in 3.0 with commit 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e and fixed in 5.15.174 with commit 581261b2d6fdb4237b24fa13f5a5f87bf2861f2c |
| Issue introduced in 3.0 with commit 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e and fixed in 6.1.120 with commit b466746cfb6be43f9a1457bbee52ade397fb23ea |
| Issue introduced in 3.0 with commit 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e and fixed in 6.6.64 with commit c4698ef8c42e02782604bf4f8a489dbf6b0c1365 |
| Issue introduced in 3.0 with commit 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e and fixed in 6.11.11 with commit e2de22e4b6213371d9e76f74a10ce817572a8d74 |
| Issue introduced in 3.0 with commit 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e and fixed in 6.12.2 with commit d7774910c5583e61c5fe2571280366624ef48036 |
| Issue introduced in 3.0 with commit 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e and fixed in 6.13 with commit d241a139c2e9f8a479f25c75ebd5391e6a448500 |
| |
| Please see https://www.kernel.org for a full list of currently supported |
| kernel versions by the kernel community. |
| |
| Unaffected versions might change over time as fixes are backported to |
| older supported kernel versions. The official CVE entry at |
| https://cve.org/CVERecord/?id=CVE-2024-56539 |
| will be updated if fixes are backported, please check that for the most |
| up to date information about this issue. |
| |
| |
| Affected files |
| ============== |
| |
| The file(s) affected by this issue are: |
| drivers/net/wireless/marvell/mwifiex/fw.h |
| |
| |
| Mitigation |
| ========== |
| |
| The Linux kernel CVE team recommends that you update to the latest |
| stable kernel version for this, and many other bugfixes. Individual |
| changes are never tested alone, but rather are part of a larger kernel |
| release. Cherry-picking individual commits is not recommended or |
| supported by the Linux kernel community at all. If however, updating to |
| the latest release is impossible, the individual changes to resolve this |
| issue can be found at these commits: |
| https://git.kernel.org/stable/c/a09760c513ae0f98c7082a1deace7fb6284ee866 |
| https://git.kernel.org/stable/c/1de0ca1d7320a645ba2ee5954f64be08935b002a |
| https://git.kernel.org/stable/c/5fa329c44e1e635da2541eab28b6cdb8464fc8d1 |
| https://git.kernel.org/stable/c/581261b2d6fdb4237b24fa13f5a5f87bf2861f2c |
| https://git.kernel.org/stable/c/b466746cfb6be43f9a1457bbee52ade397fb23ea |
| https://git.kernel.org/stable/c/c4698ef8c42e02782604bf4f8a489dbf6b0c1365 |
| https://git.kernel.org/stable/c/e2de22e4b6213371d9e76f74a10ce817572a8d74 |
| https://git.kernel.org/stable/c/d7774910c5583e61c5fe2571280366624ef48036 |
| https://git.kernel.org/stable/c/d241a139c2e9f8a479f25c75ebd5391e6a448500 |