CVE-2023-52531: wifi: iwlwifi: mvm: Fix a memory corruption issue
Vulnerability summary
CVE-2023-52531 is a high (CVSS 7.8) Out-of-bounds Write vulnerability in linux. EPSS estimates a 0.24% chance of exploitation in the next 30 days, higher than 14.7% of scored vulnerabilities.
Not severe (CVSS 7.8, local access); no exploitation reported by the 5 checked sources
Source freshness unavailable
How is this decided?Advisory lineage
Upstream 0 · Downstream 22 · Related 22Timeline
- 02-03-2024PublishedVulnerability first disclosed.
- 11-05-2026Last modifiedVulnerability information updated.
Description
In the Linux kernel, the following vulnerability has been resolved: wifi: iwlwifi: mvm: Fix a memory corruption issue A few lines above, space is kzalloc()'ed for: sizeof(struct iwl_nvm_data) + sizeof(struct ieee80211_channel) + sizeof(struct ieee80211_rate) 'mvm->nvm_data' is a 'struct iwl_nvm_data', so it is fine. At the end of this structure, there is the 'channels' flex array. Each element is of type 'struct ieee80211_channel'. So only 1 element is allocated in this array. When doing: mvm->nvm_data->bands[0].channels = mvm->nvm_data->channels; We point at the first element of the 'channels' flex array. So this is fine. However, when doing: mvm->nvm_data->bands[0].bitrates = (void *)((u8 *)mvm->nvm_data->channels + 1); because of the "(u8 *)" cast, we add only 1 to the address of the beginning of the flex array. It is likely that we want point at the 'struct ieee80211_rate' allocated just after. Remove the spurious casting so that the pointer arithmetic works as expected.
CVSS metrics
3 scores · 3 sources · 1 version- OSV · UbuntuEcosystem advisory · calculated7.8HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- OSV · DebianEcosystem advisory · calculated7.8HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
EPSS trend
Probability
0.24%
Chance of exploitation in the next 30 days
Percentile
15%
Versus all other CVEs
30-day change
No change 0.00 pp
From 0.24% on 04-10-2026
Known exploited
Compare KEV catalogsNot in the CISA KEV catalog.
Not in the ENISA CNW catalog.
Not in the CIRCL catalog.
Public exploits
0 foundNo public exploits indexed.
Weaknesses
CWE · root causeAffected systems
Known conditions: local access, low-privilege account, no user interaction (CVSS vector). Other conditions: not stated in public data.
Ubuntu114 products
- linuxAll versions (No fix recorded) | < 4.4.0-261.295 | < 4.15.0-231.243 | < 5.4.0-200.220 | < 5.15.0-94.104
- linux-allwinner-5.19All versions (No fix recorded)
- linux-aws< 4.4.0-1138.144 | < 4.4.0-1176.191 | < 4.15.0-1175.188 | < 5.4.0-1135.145 | < 5.15.0-1053.58
- linux-aws-5.0All versions (No fix recorded)
- linux-aws-5.11All versions (No fix recorded)
Linux2 products
- linux≥ 8ca151b568b67a7b72dcfc6ee6ea7c107ddd795c, < 7c8faa31080342aec4903c9acb20caf82fcca1ef | ≥ 8ca151b568b67a7b72dcfc6ee6ea7c107ddd795c, < 6b3223449c959a8be94a1f042288059e40fcccb0 | ≥ 8ca151b568b67a7b72dcfc6ee6ea7c107ddd795c, < f06cdd8d4ba5252986f51f80cc30263636397128 | ≥ 8ca151b568b67a7b72dcfc6ee6ea7c107ddd795c, < 8ba438ef3cacc4808a63ed0ce24d4f0942cfe55d | 3.9
- linux_kernel≥ 3.9, < 5.15.135 | ≥ 5.16, < 6.1.57 | ≥ 6.2, < 6.5.7 | 6.6:rc1 | 6.6:rc2 | 6.6:rc3 | 6.6:rc4
Debian1 product
- linux< 6.1.64-1 | < 6.5.8-1
3 vendors · 117 products