bpf: Fix hashtab overflow check on 32-bit arches
The hashtab code relies on roundup_pow_of_two() to compute the number of
hash buckets, and contains an overflow check by checking if the
resulting value is 0. However, on 32-bit arches, the roundup code itself
can overflow by doing a 32-bit left-shift of an unsigned long value,
which is undefined behaviour, so it is not guaranteed to truncate
neatly. This was triggered by syzbot on the DEVMAP_HASH type, which
contains the same check, copied from the hashtab code. So apply the same
fix to hashtab, by moving the overflow check to before the roundup.
Metrics
Affected Vendors & Products
| Source | ID | Title |
|---|---|---|
Debian DLA |
DLA-3840-1 | linux security update |
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-6896-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6896-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6896-3 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6896-4 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6896-5 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6919-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6926-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6926-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6926-3 | Linux kernel (Azure) vulnerabilities |
Ubuntu USN |
USN-6938-1 | Linux kernel vulnerabilities |
Solution
No solution given by the vendor.
Workaround
No workaround given by the vendor.
Fri, 22 Nov 2024 12:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Tue, 05 Nov 2024 10:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Wed, 30 Oct 2024 20:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-190 | |
| Metrics |
ssvc
|
ssvc
|
Status: PUBLISHED
Assigner: Linux
Published:
Updated: 2025-05-04T08:58:49.845Z
Reserved: 2024-02-19T14:20:24.185Z
Link: CVE-2024-26884
Updated: 2024-08-02T00:21:05.540Z
Status : Modified
Published: 2024-04-17T11:15:10.163
Modified: 2024-11-21T09:03:17.677
Link: CVE-2024-26884
OpenCVE Enrichment
No data.
Debian DLA
Debian DSA
Ubuntu USN