In the Linux kernel, the following vulnerability has been resolved:
bpf: Fix DEVMAP_HASH overflow check on 32-bit arches
The devmap code allocates a number hash buckets equal to the next power
of two of the max_entries value provided when creating the map. When
rounding up to the next power of two, the 32-bit variable storing the
number of buckets can overflow, and the code checks for overflow by
checking if the truncated 32-bit value is equal to 0. However, on 32-bit
arches the rounding up itself can overflow mid-way through, because it
ends up doing a left-shift of 32 bits on an unsigned long value. If the
size of an unsigned long is four bytes, this is undefined behaviour, so
there is no guarantee that we'll end up with a nice and tidy 0-value at
the end.
Syzbot managed to turn this into a crash on arm32 by creating a
DEVMAP_HASH with max_entries > 0x80000000 and then trying to update it.
Fix this by moving the overflow check to before the rounding up
operation.
bpf: Fix DEVMAP_HASH overflow check on 32-bit arches
The devmap code allocates a number hash buckets equal to the next power
of two of the max_entries value provided when creating the map. When
rounding up to the next power of two, the 32-bit variable storing the
number of buckets can overflow, and the code checks for overflow by
checking if the truncated 32-bit value is equal to 0. However, on 32-bit
arches the rounding up itself can overflow mid-way through, because it
ends up doing a left-shift of 32 bits on an unsigned long value. If the
size of an unsigned long is four bytes, this is undefined behaviour, so
there is no guarantee that we'll end up with a nice and tidy 0-value at
the end.
Syzbot managed to turn this into a crash on arm32 by creating a
DEVMAP_HASH with max_entries > 0x80000000 and then trying to update it.
Fix this by moving the overflow check to before the rounding up
operation.
Metrics
Affected Vendors & Products
Advisories
| Source | ID | Title |
|---|---|---|
Debian DLA |
DLA-3842-1 | linux-5.10 security update |
Debian DSA |
DSA-5681-1 | linux security update |
Ubuntu USN |
USN-6816-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6817-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6817-2 | Linux kernel (OEM) vulnerabilities |
Ubuntu USN |
USN-6817-3 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6820-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6820-2 | Linux kernel (NVIDIA) vulnerabilities |
Ubuntu USN |
USN-6821-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6821-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6821-3 | Linux kernel (AWS) vulnerabilities |
Ubuntu USN |
USN-6821-4 | Linux kernel (Azure) vulnerabilities |
Ubuntu USN |
USN-6828-1 | Linux kernel (Intel IoTG) vulnerabilities |
Ubuntu USN |
USN-6871-1 | Linux kernel (HWE) vulnerabilities |
Ubuntu USN |
USN-6878-1 | Linux kernel (Oracle) vulnerabilities |
Ubuntu USN |
USN-6892-1 | Linux kernel (IBM) vulnerabilities |
Ubuntu USN |
USN-6919-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7088-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7088-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7088-3 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7088-4 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7088-5 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7119-1 | Linux kernel (IoT) vulnerabilities |
Fixes
Solution
No solution given by the vendor.
Workaround
No workaround given by the vendor.
References
History
Fri, 22 Nov 2024 12:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Fri, 08 Nov 2024 16:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Thu, 17 Oct 2024 14:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Thu, 17 Oct 2024 14:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Status: PUBLISHED
Assigner: Linux
Published:
Updated: 2025-05-04T08:58:51.351Z
Reserved: 2024-02-19T14:20:24.185Z
Link: CVE-2024-26885
Updated: 2024-08-02T00:21:05.424Z
Status : Modified
Published: 2024-04-17T11:15:10.210
Modified: 2025-01-24T16:15:35.030
Link: CVE-2024-26885
OpenCVE Enrichment
No data.
Debian DLA
Debian DSA
Ubuntu USN