CVE-2024-56593
Vulnerability Summary
Timeline
Description
In the Linux kernel, the following vulnerability has been resolved: wifi: brcmfmac: Fix oops due to NULL pointer dereference in brcmf_sdiod_sglist_rw() This patch fixes a NULL pointer dereference bug in brcmfmac that occurs when a high 'sd_sgentry_align' value applies (e.g. 512) and a lot of queued SKBs are sent from the pkt queue. The problem is the number of entries in the pre-allocated sgtable, it is nents = max(rxglom_size, txglom_size) + max(rxglom_size, txglom_size) >> 4 + 1. Given the default [rt]xglom_size=32 it's actually 35 which is too small. Worst case, the pkt queue can end up with 64 SKBs. This occurs when a new SKB is added for each original SKB if tailroom isn't enough to hold tail_pad. At least one sg entry is needed for each SKB. So, eventually the "skb_queue_walk loop" in brcmf_sdiod_sglist_rw may run out of sg entries. This makes sg_next return NULL and this causes the oops. The patch sets nents to max(rxglom_size, txglom_size) * 2 to be able handle the worst-case. Btw. this requires only 64-35=29 * 16 (or 20 if CONFIG_NEED_SG_DMA_LENGTH) = 464 additional bytes of memory.
CVSS Metrics
- v3.1•MEDIUM•Score: 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
EPSS Trends
Current EPSS score: 0.24%• Percentile: 15%
Techniques & Countermeasures
- CWE-476•NULL Pointer Dereference
The product dereferences a pointer that it expects to be valid but is NULL.
Affected Systems
- debian•linux
< 5.10.234-1 | < 6.1.123-1 | < 6.12.5-1 | < 6.12.5-1
- debian•linux-6.1
< 6.1.128-1~deb11u1
- ubuntu•linux
< 4.4.0-278.312 | < 4.15.0-247.259 | < 5.4.0-211.231 | < 5.15.0-135.146 | < 6.8.0-58.60
- ubuntu•linux-allwinner-5.19
all
- ubuntu•linux-aws
< 4.4.0-1152.158 | < 4.4.0-1190.205 | < 4.15.0-1189.202 | < 5.4.0-1142.152 | < 5.15.0-1080.87 | < 6.8.0-1027.29
- ubuntu•linux-aws-5.0
all
- ubuntu•linux-aws-5.11
all
- ubuntu•linux-aws-5.13
all
- ubuntu•linux-aws-5.15
< 5.15.0-1080.87~20.04.1
- ubuntu•linux-aws-5.19
all
- ubuntu•linux-aws-5.3
all
- ubuntu•linux-aws-5.4
< 5.4.0-1142.152~18.04.1
- ubuntu•linux-aws-5.8
all
- ubuntu•linux-aws-6.2
all
- ubuntu•linux-aws-6.5
all
- ubuntu•linux-aws-6.8
< 6.8.0-1027.29~22.04.1
- ubuntu•linux-aws-fips
< 4.15.0-2127.133 | all | < 5.4.0-1142.153+fips1 | < 5.15.0-1080.87+fips1
- ubuntu•linux-aws-hwe
< 4.15.0-1189.202~16.04.1
- ubuntu•linux-azure
< 4.15.0-1197.212~14.04.1 | < 4.15.0-1197.212~16.04.1 | all | < 5.4.0-1147.154 | < 5.15.0-1084.93 | < 6.8.0-1027.32
- ubuntu•linux-azure-4.15
< 4.15.0-1197.212
- ubuntu•linux-azure-5.11
all
- ubuntu•linux-azure-5.13
all
- ubuntu•linux-azure-5.15
< 5.15.0-1086.95~20.04.1
- ubuntu•linux-azure-5.19
all
- ubuntu•linux-azure-5.3
all
- ubuntu•linux-azure-5.4
< 5.4.0-1147.154~18.04.1
- ubuntu•linux-azure-5.8
all
- ubuntu•linux-azure-6.11
< 6.11.0-1012.12~24.04.1
- ubuntu•linux-azure-6.2
all
- ubuntu•linux-azure-6.5
all
- ubuntu•linux-azure-6.8
< 6.8.0-1027.32~22.04.1
- ubuntu•linux-azure-edge
all
- ubuntu•linux-azure-fde
all | all
- ubuntu•linux-azure-fde-5.19
all
- ubuntu•linux-azure-fde-6.2
all
- ubuntu•linux-azure-fips
< 4.15.0-2106.112 | all | < 5.4.0-1147.154+fips1 | < 5.15.0-1083.92+fips1
- ubuntu•linux-azure-nvidia
< 6.8.0-1014.15
- ubuntu•linux-bluefield
all | < 5.4.0-1101.108 | < 5.15.0-1062.64
- ubuntu•linux-fips
< 4.4.0-1122.129 | all | < 4.15.0-1144.156 | < 5.4.0-1116.126 | < 5.15.0-135.146+fips1 | < 6.8.0-78.78+fips1
- ubuntu•linux-gcp
< 4.15.0-1182.199~16.04.1 | all | < 5.4.0-1145.154 | < 5.15.0-1079.88 | < 6.8.0-1028.30
- ubuntu•linux-gcp-4.15
< 4.15.0-1182.199
- ubuntu•linux-gcp-5.11
all
- ubuntu•linux-gcp-5.13
all
- ubuntu•linux-gcp-5.15
< 5.15.0-1081.90~20.04.1
- ubuntu•linux-gcp-5.19
all
- ubuntu•linux-gcp-5.3
all
- ubuntu•linux-gcp-5.4
< 5.4.0-1145.154~18.04.1
- ubuntu•linux-gcp-5.8
all
- ubuntu•linux-gcp-6.11
< 6.11.0-1011.11~24.04.1
- ubuntu•linux-gcp-6.2
all
Showing first 50 affected entries in server-rendered view.
References (57)
- https://git.kernel.org/stable/c/342f87d263462c2670b77ea9a32074cab2ac6fa1
- https://git.kernel.org/stable/c/7522d7d745d13fbeff3350fe6aa56c8dae263571
- https://git.kernel.org/stable/c/dfb3f9d3f602602de208da7bdcc0f6d5ee74af68
- https://git.kernel.org/stable/c/67a25ea28f8ec1da8894f2f115d01d3becf67dc7
- https://git.kernel.org/stable/c/07c020c6d14d29e5a3ea4e4576b8ecf956a80834
- https://git.kernel.org/stable/c/34941321b516bd7c6103bd01287d71a1804d19d3
- https://git.kernel.org/stable/c/857282b819cbaa0675aaab1e7542e2c0579f52d7
- https://lists.debian.org/debian-lts-announce/2025/03/msg00001.html
- https://lists.debian.org/debian-lts-announce/2025/03/msg00002.html
- https://ubuntu.com/security/CVE-2024-56593
- https://www.cve.org/CVERecord?id=CVE-2024-56593
- https://git.kernel.org/linus/857282b819cbaa0675aaab1e7542e2c0579f52d7
- https://ubuntu.com/security/notices/USN-7379-1
- https://ubuntu.com/security/notices/USN-7380-1
- https://ubuntu.com/security/notices/USN-7381-1
- https://ubuntu.com/security/notices/USN-7382-1
- https://ubuntu.com/security/notices/USN-7387-1
- https://ubuntu.com/security/notices/USN-7388-1
- https://ubuntu.com/security/notices/USN-7389-1
- https://ubuntu.com/security/notices/USN-7390-1
- https://ubuntu.com/security/notices/USN-7387-2
- https://ubuntu.com/security/notices/USN-7387-3
- https://ubuntu.com/security/notices/USN-7391-1
- https://ubuntu.com/security/notices/USN-7392-1
- https://ubuntu.com/security/notices/USN-7393-1
- https://ubuntu.com/security/notices/USN-7392-2
- https://ubuntu.com/security/notices/USN-7379-2
- https://ubuntu.com/security/notices/USN-7392-3
- https://ubuntu.com/security/notices/USN-7401-1
- https://ubuntu.com/security/notices/USN-7392-4
- https://ubuntu.com/security/notices/USN-7407-1
- https://ubuntu.com/security/notices/USN-7413-1
- https://ubuntu.com/security/notices/USN-7421-1
- https://ubuntu.com/security/notices/USN-7449-1
- https://ubuntu.com/security/notices/USN-7450-1
- https://ubuntu.com/security/notices/USN-7451-1
- https://ubuntu.com/security/notices/USN-7452-1
- https://ubuntu.com/security/notices/USN-7453-1
- https://ubuntu.com/security/notices/USN-7458-1
- https://ubuntu.com/security/notices/USN-7459-1
- https://ubuntu.com/security/notices/USN-7463-1
- https://ubuntu.com/security/notices/USN-7449-2
- https://ubuntu.com/security/notices/USN-7459-2
- https://ubuntu.com/security/notices/USN-7468-1
- https://ubuntu.com/security/notices/USN-7523-1
- https://ubuntu.com/security/notices/USN-7524-1
- https://ubuntu.com/security/notices/USN-7539-1
- https://ubuntu.com/security/notices/USN-7540-1
- https://ubuntu.com/security/notices/USN-8070-1
- https://ubuntu.com/security/notices/USN-8070-2
- https://ubuntu.com/security/notices/USN-8070-3
- https://ubuntu.com/security/notices/USN-8112-1
- https://ubuntu.com/security/notices/USN-8112-2
- https://ubuntu.com/security/notices/USN-8112-3
- https://ubuntu.com/security/notices/USN-8112-4
- https://ubuntu.com/security/notices/USN-8112-5
- https://security-tracker.debian.org/tracker/CVE-2024-56593