CVE-2026-53083
Medium · 5.5CVSS
5.5
EPSS
0.2%
Published
Jun 24, 2026
CISA due date
—
Cloudanix analysis
A local user or workload with access to advanced Linux networking and tracing features could make a vulnerable system stall or become unstable.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Moderate
- Impact
- Denial Of Service
- Component
- OS kernel
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
This flaw is a Linux kernel denial-of-service condition in the BPF subsystem. When clearing large BPF PROG_ARRAY maps, bpf_fd_array_map_clear() can iterate over many entries and repeatedly invoke expensive program-array update logic without voluntarily yielding the CPU. Under load, this can prevent RCU grace-period processing from making progress, producing RCU stall warnings and potentially causing severe system latency, soft lockups, watchdog events, or host instability. Exploitation generally requires the ability to create and manipulate BPF program array maps, which is normally limited by kernel configuration and privileges such as CAP_BPF, CAP_SYS_ADMIN, or enabled unprivileged BPF support.
Why it matters to the business
Successful exploitation can degrade or disrupt Linux systems by causing kernel stalls and prolonged CPU unavailability, affecting workloads running on the host. The most likely business consequence is service instability or outage rather than data theft. Because EPSS is very low, it is not in CISA KEV, and no public exploit maturity is indicated, this should generally be prioritized as a kernel stability and defense-in-depth update unless the organization allows unprivileged BPF or runs multi-tenant Linux workloads where local denial-of-service risk is higher.
How an attack unfolds
An attacker first needs local code execution or access to a context that can use the BPF syscall to create BPF programs and PROG_ARRAY maps. They then populate a PROG_ARRAY map with many entries so that clearing the map requires a long-running loop in the kernel. By triggering map deletion or cleanup paths that invoke bpf_fd_array_map_clear(), the attacker causes the kernel worker path to repeatedly process expensive prog_array_map_poke_run() operations without sufficient scheduling points. On vulnerable kernels, this can starve RCU progress long enough to generate RCU stall reports and may lead to broad system performance degradation, soft lockup behavior, or service interruption. There is no indication from the supplied intelligence that this flaw is being used by named threat actors or ransomware campaigns.
How to fix it
Apply the Linux kernel update that includes the fix adding a scheduling point in bpf_fd_array_map_clear(). If consuming kernels from a Linux distribution or appliance vendor, install the vendor-provided kernel security or stability update rather than attempting to backport manually. No exact fixed package versions were provided in the input, so administrators should consult their distribution advisories for CVE-2026-53083 or for kernel BPF fixes related to bpf_fd_array_map_clear() and PROG_ARRAY cleanup. As interim mitigation, restrict BPF use to trusted administrators, disable unprivileged BPF where feasible, avoid granting CAP_BPF, CAP_SYS_ADMIN, or broad privileged-container access unnecessarily, and enforce container runtime policies that prevent untrusted workloads from loading BPF programs.
How to confirm the fix worked
Confirm the running kernel has the vendor fix applied by checking the installed and booted kernel version against the distribution advisory. Validate that unprivileged BPF is disabled where it is not required, for example by checking kernel.unprivileged_bpf_disabled on distributions that expose that sysctl. Review whether containers or services are granted capabilities that allow BPF program loading. On test systems only, defenders can validate resilience by exercising large BPF PROG_ARRAY create/delete workloads and confirming that no RCU stall, soft lockup, or watchdog warnings occur during cleanup. After patching, reboot into the fixed kernel and verify the active kernel version, since installing a kernel package alone is not sufficient if the system continues running an older kernel.
Typical attack path
- Gain local code execution on a Linux system, or obtain access to a container or service context with permission to use BPF features.
- Confirm that BPF program loading and BPF map operations are permitted by kernel policy, capabilities, or unprivileged BPF settings.
- Create BPF programs and a large BPF PROG_ARRAY map.
- Populate the PROG_ARRAY with many entries to maximize work during cleanup.
- Trigger deletion, teardown, or deferred clearing of the map so bpf_fd_array_map_clear() runs over the large entry set.
- Cause excessive non-preempting kernel work, resulting in RCU stall warnings, high CPU consumption, host latency, or denial of service.
How to detect it
Look for evidence of attempted or successful denial-of-service activity in kernel logs, system journals, audit logs, and container/runtime telemetry. Primary sources include dmesg, /var/log/kern.log, /var/log/messages, journalctl -k, auditd syscall records for bpf(), eBPF observability platform logs, and container runtime events showing privileged containers or added capabilities. Indicators include RCU stall warnings, soft lockup or watchdog messages, stack traces containing bpf_fd_array_map_clear(), prog_array_map_clear_deferred(), prog_array_map_poke_run(), or __fd_array_map_delete_elem(), and bursts of BPF syscall activity before the stall. Because this vulnerability causes availability impact rather than a persistent compromise artifact, investigation should correlate the first kernel stall timestamp with recent local logins, container starts, privilege changes, BPF program loads, and processes with CAP_BPF or CAP_SYS_ADMIN. Absence of the exact stack trace does not fully rule out exploitation, because vendor kernels may have different symbolization or logging behavior.
- rcu: Stack dump where RCU GP kthread last ran
- RCU stall
- rcu_sched self-detected stall
- rcu_preempt self-detected stall
- soft lockup
- watchdog: BUG: soft lockup
- bpf_fd_array_map_clear
- prog_array_map_clear_deferred
- prog_array_map_poke_run
- __fd_array_map_delete_elem
- kernel/bpf/arraymap.c
- Workqueue: events prog_array_map_clear_deferred
- Comm: kworker
- syscall=bpf
- BPF_MAP_TYPE_PROG_ARRAY
- unprivileged_bpf_disabled=0
What your security team should do
- Inventory Linux systems where BPF is enabled, especially multi-tenant hosts, container platforms, CI runners, developer workstations, and systems allowing privileged containers.
- Prioritize patching systems that permit unprivileged BPF, grant CAP_BPF or CAP_SYS_ADMIN to non-administrative workloads, or run untrusted local code.
- Apply the relevant vendor kernel update and reboot into the fixed kernel.
- Disable unprivileged BPF unless there is a documented operational requirement.
- Review container and workload policies to remove unnecessary privileged mode, CAP_BPF, CAP_SYS_ADMIN, and host-level BPF access.
- Monitor kernel logs for RCU stall, soft lockup, watchdog, and BPF-related stack traces that mention PROG_ARRAY cleanup or bpf_fd_array_map_clear().
- Treat any suspicious local account, container, or workload activity preceding RCU stall events as potentially relevant, even though the vulnerability is not currently known to be exploited in the wild.
The record
In the Linux kernel, the following vulnerability has been resolved: bpf: Fix RCU stall in bpf_fd_array_map_clear() Add a missing cond_resched() in bpf_fd_array_map_clear() loop. For PROG_ARRAY maps with many entries this loop calls prog_array_map_poke_run() per entry which can be expensive, and without yielding this can cause RCU stalls under load: rcu: Stack dump where RCU GP kthread last ran: CPU: 0 UID: 0 PID: 30932 Comm: kworker/0:2 Not tainted 6.14.0-13195-g967e8def1100 #2 PREEMPT(undef) Workqueue: events prog_array_map_clear_deferred RIP: 0010:write_comp_data+0x38/0x90 kernel/kcov.c:246 Call Trace: <TASK> prog_array_map_poke_run+0x77/0x380 kernel/bpf/arraymap.c:1096 __fd_array_map_delete_elem+0x197/0x310 kernel/bpf/arraymap.c:925 bpf_fd_array_map_clear kernel/bpf/arraymap.c:1000 [inline] prog_array_map_clear_deferred+0x119/0x1b0 kernel/bpf/arraymap.c:1141 process_one_work+0x898/0x19d0 kernel/workqueue.c:3238 process_scheduled_works kernel/workqueue.c:3319 [inline] worker_thread+0x770/0x10b0 kernel/workqueue.c:3400 kthread+0x465/0x880 kernel/kthread.c:464 ret_from_fork+0x4d/0x80 arch/x86/kernel/process.c:153 ret_from_fork_asm+0x19/0x30 arch/x86/entry/entry_64.S:245 </TASK>
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|