Cloudanix VulnDB

CVE-2026-93045

High · 7.8

CVSS

7.8

EPSS

0.1%

Published

Sep 17, 2026

CISA due date

—

Cloudanix analysis

Next patch cycle SSVC: Track

A bug in how the Linux kernel handles memory cleanup for certain low-level programs could let someone who already has access on the machine take over the whole system.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
Low
Impact
Full Compromise
Component
OS kernel
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The flaw in bpf_arena_free_pages() accepts scalar arena addresses below the arena base; after masking and reconstruction, the resulting full_uaddr falls below user_vm_start, the upper-end clipping produces an out-of-range free-tree offset, and subsequent allocations can return addresses below the arena mapping, enabling memory corruption.

Why it matters to the business

Local attackers on Linux systems can corrupt kernel memory structures, potentially leading to privilege escalation, system instability, or denial of service with moderate operational risk given low exploit maturity and prevalence.

How an attack unfolds

An attacker with local access loads a BPF program that invokes bpf_arena_free_pages using a crafted scalar value below the arena base; the kernel computes an invalid free-tree offset that can later be reused during allocation to return a mapping below the intended arena region for further corruption.

How to fix it

Apply the upstream kernel patch that adds an explicit check rejecting arena frees whose scalar value is below the low 32 bits of the arena base before any clipping or offset calculation occurs.

How to confirm the fix worked

Inspect the bpf_arena_free_pages implementation in the running kernel source or binary to confirm presence of the early rejection of addresses below the arena base; test with crafted BPF programs that previously triggered the out-of-range condition.

Typical attack path

  1. Obtain local user access on a Linux host
  2. Load a malicious BPF program via the bpf syscall
  3. Invoke bpf_arena_free_pages with an address below the arena base
  4. Trigger subsequent allocations that reuse the corrupted free-tree offset
  5. Leverage the resulting out-of-range mapping for memory corruption

How to detect it

Review kernel audit logs and BPF event traces for invocations of arena free helpers with anomalous scalar values; correlate with subsequent unexpected allocation patterns or memory faults below arena mappings.

What your security team should do

  • Prioritize kernel updates containing the arena-free rejection logic
  • Restrict unprivileged BPF loading via sysctl or LSM policies
  • Monitor kernel logs for unusual arena allocation or free patterns
  • Audit custom BPF programs for direct use of arena free helpers

The record

In the Linux kernel, the following vulnerability has been resolved: bpf: Reject arena frees below the arena base bpf_arena_free_pages() accepts scalar arena addresses. The runtime masks the address to the low 32 bits and reconstructs a full user address from the arena base before returning the range to the arena free tree. When the scalar value is below the low 32 bits of the arena base, full_uaddr falls below user_vm_start. The existing upper-end clipping then turns this into an out-of-range free-tree offset. A later allocation can reuse that offset and return an address below the arena mapping. Reject such frees before computing the clipped range.

Affected packages

Ecosystem Package Introduced Fixed