Answer in brief
CVE-2026-89579 records a High severity (CVSS 7.8) vulnerability in bpf: Harden bloom filter sizing and indexing on 32-bit kernels. The current sources do not mark it as known exploited. The current feed maps Linux/Linux (generic), Linux/Linux (generic), Linux/Linux (generic). Check affected ranges and fixed versions before updating.
Analysis pending evidence review
HOL Guard separates source facts from reviewed analysis. See the methodology.
CVSS is 7.8. The current sources do not mark it as known exploited. Treat this as a source-backed prioritization signal, not a statement about your environment.
Analysis status
Analysis pending evidence review
Factual feed record only; HOL analysis is not approved for indexing. Read the methodology.
The current feed maps Linux/Linux (generic), Linux/Linux (generic), Linux/Linux (generic). Check affected ranges and fixed versions before updating.
| Package | Affected range | Fixed version |
|---|---|---|
| Linux/Linuxgeneric | >=9330986c03006ab1d33d243b7cfe598a7a3c1baa <3b7a13eccfcf97714ffc1ca6aa663d66d4a30e29 || >=9330986c03006ab1d33d243b7cfe598a7a3c1baa <272fcb4ba6fab678db0eb966dc81c4c804bef64a || >=9330986c03006ab1d33d243b7cfe598a7a3c1baa <dff481e12b3f127739f6a4ea7cef2c25dc12e056 || >=9330986c03006ab1d33d243b7cfe598a7a3c1baa <11c1e836710dcba03e50454a4eedfdbaf8d3050e | 3b7a13eccfcf97714ffc1ca6aa663d66d4a30e29, 272fcb4ba6fab678db0eb966dc81c4c804bef64a, dff481e12b3f127739f6a4ea7cef2c25dc12e056, 11c1e836710dcba03e50454a4eedfdbaf8d3050e |
| Linux/Linuxgeneric | 5.16 | Not reported |
| Linux/Linuxgeneric | >=9330986c03006ab1d33d243b7cfe598a7a3c1baa <a6183bc683f97f4317f7e84939ca7fff37c5688b || >=9330986c03006ab1d33d243b7cfe598a7a3c1baa <80551bf8912c42d1e3d55eec6fa3c40f306c3de8 || >=9330986c03006ab1d33d243b7cfe598a7a3c1baa <3b7a13eccfcf97714ffc1ca6aa663d66d4a30e29 || >=9330986c03006ab1d33d243b7cfe598a7a3c1baa <272fcb4ba6fab678db0eb966dc81c4c804bef64a || >=9330986c03006ab1d33d243b7cfe598a7a3c1baa <dff481e12b3f127739f6a4ea7cef2c25dc12e056 || >=9330986c03006ab1d33d243b7cfe598a7a3c1baa <11c1e836710dcba03e50454a4eedfdbaf8d3050e | a6183bc683f97f4317f7e84939ca7fff37c5688b, 80551bf8912c42d1e3d55eec6fa3c40f306c3de8, 3b7a13eccfcf97714ffc1ca6aa663d66d4a30e29, 272fcb4ba6fab678db0eb966dc81c4c804bef64a, dff481e12b3f127739f6a4ea7cef2c25dc12e056, 11c1e836710dcba03e50454a4eedfdbaf8d3050e |
Published upstream
Sep 11, 2026
Evidence: source:cvelist:source_dates:source-dates:recordSource modified
Oct 19, 2026
Evidence: source:cvelist:source_dates:source-dates:recordFirst seen by HOL
Sep 11, 2026
In the Linux kernel, the following vulnerability has been resolved: bpf: Harden bloom filter sizing and indexing on 32-bit kernels bloom_map_alloc() has two 32-bit-specific problems when the computed bitmap reaches the U32_MAX fallback case. First, BITS_TO_BYTES(U32_MAX) is evaluated with 32-bit arithmetic. The addition performed by DIV_ROUND_UP wraps, so the map allocates only the fixed-size bloom filter object while keeping bitset_mask == U32_MAX. Subsequent updates can then write past the allocated object. Second, fixing only the allocation size is not sufficient. The bloom hash is a u32, but set_bit() takes a signed long bit number and x86 test_bit() eventually feeds the index to variable_test_bit(long, ...). On 32-bit kernels, hashes in [0x80000000, U32_MAX] therefore become negative bit offsets. x86 bt/bts with a memory operand interpret those offsets relative to the supplied base, so a map with bitset_mask == U32_MAX can read or write before bloom->bitset even after allocating the full 512 MiB bitmap. Keep the U32_MAX fallback, but split each hash into a word pointer and an in-word bit number before calling test_bit() or set_bit(). The bitops argument is then always in [0, BITS_PER_LONG - 1], while BIT_WORD(h) still selects the intended word in the full bitmap. Compute the bitset size from (u64)bitset_mask + 1 before passing the final size to bpf_map_area_alloc(). This fixes the original under-allocation and keeps the allocated storage consistent with the addressable bitset. Exploitation note: local privilege escalation is possible on a 32-bit x86 kernel using the under-allocation bug from a binary with CAP_BPF.
Quoted source text, attributed separately from HOL analysis.