HIGH 7.8

CVE-2026-53092: Linux Kernel eBPF Verifier Register Tracking Bypass

A flaw in the Linux kernel's eBPF verifier allows incorrect tracking of register value changes when the same register is used as both source and destination in arithmetic operations. The verifier modifies the destination register first, then reads the modified value back when it should use the original value. This causes the verifier to compute and propagate wrong assumptions about register constraints to linked registers, creating a gap between what the verifier believes is safe and what actually happens at runtime. A local user can exploit this mismatch to bypass security checks.

Source data · NVD / CISA · public domain

CVSS
3.1 · 7.8 HIGH · CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weaknesses (CWE)
CWE-393
Affected products
1 configuration(s)
Published / Modified
2026-06-24 / 2026-07-23

NVD description (verbatim)

In the Linux kernel, the following vulnerability has been resolved: bpf: Fix linked reg delta tracking when src_reg == dst_reg Consider the case of rX += rX where src_reg and dst_reg are pointers to the same bpf_reg_state in adjust_reg_min_max_vals(). The latter first modifies the dst_reg in-place, and later in the delta tracking, the subsequent is_reg_const(src_reg)/reg_const_value(src_reg) reads the post-{add,sub} value instead of the original source. This is problematic since it sets an incorrect delta, which sync_linked_regs() then propagates to linked registers, thus creating a verifier-vs-runtime mismatch. Fix it by just skipping this corner case.

6 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

The vulnerability exists in adjust_reg_min_max_vals() within the eBPF verifier subsystem. When processing instructions like rX += rX (where src_reg and dst_reg point to the same bpf_reg_state), the function mutates dst_reg in-place before delta tracking occurs. Subsequent calls to is_reg_const() and reg_const_value() then read the post-modification state rather than the original source value. This results in an incorrect delta being calculated and synchronized to linked registers via sync_linked_regs(), breaking the verifier's safety guarantees. The fix skips delta tracking for this specific edge case to prevent the mismatch.

Business impact

This vulnerability affects systems relying on eBPF for security policies, container isolation, and kernel-level packet filtering. Organizations using eBPF-based tools (e.g., for observability, network security, or DDoS mitigation) may see their security model circumvented by a local unprivileged attacker. The risk is elevated in multi-tenant environments, containerized deployments, and systems where eBPF programs enforce access controls or data protection rules.

Affected systems

Linux kernel systems with eBPF verifier enabled. The vulnerability affects all kernel versions until the fix is applied. Desktop systems, servers, and embedded Linux devices with eBPF support are in scope. Workloads that load unprivileged eBPF programs are at highest risk.

Exploitability

Exploitability requires local access and the ability to load eBPF programs (typically available to unprivileged users on systems with unprivileged eBPF enabled). The attack surface depends on kernel configuration: systems with CAP_BPF or permissive bpf() syscall policies are more exposed. Remote exploitation is not possible; this is a local privilege escalation or policy bypass vector. Practical exploitation requires crafting a specific eBPF instruction sequence to trigger the register aliasing case.

Remediation

Apply the Linux kernel patch that skips delta tracking when src_reg and dst_reg are identical. Verify the patch version against the official Linux kernel repository and your distribution's advisory. Until patched, restrict eBPF program loading via bpf() syscall filters (seccomp, BPF LSM) or disable unprivileged eBPF if not required in your environment (kernel.unprivileged_bpf_disabled sysctl).

Patch guidance

Check your Linux distribution's security advisory for the specific kernel version containing this fix. Major distributions (Red Hat, Debian, Ubuntu, SUSE) will backport the fix to supported kernel versions. Update to a patched kernel version as indicated by your vendor. Test the update in a staging environment before production rollout to ensure eBPF-dependent workloads remain functional.

Detection guidance

Monitor for attempts to load eBPF programs on affected systems using tools like bpftool or audit logs (syscall auditing of bpf()). Look for security policy bypasses or unexpected privilege escalation patterns. Intrusion detection systems (IDS) may flag suspicious eBPF program patterns, though detection of the specific edge case requires custom rules. Enable kernel.perf_event_paranoid and restrict BPF debugging capabilities on sensitive systems.

Why prioritize this

CVE-2026-53092 carries a HIGH CVSS score (7.8) due to high confidentiality, integrity, and availability impact from a local attack vector with low privilege requirements. It enables bypassing security policies enforced via eBPF on Linux systems. Organizations operating eBPF-reliant infrastructure, such as container orchestration platforms or network security appliances, should prioritize patching. Systems with strict user access controls and disabled unprivileged eBPF can lower their remediation urgency.

Risk score, explained

The CVSS 3.1 score of 7.8 (HIGH) reflects: Local attack vector (AV:L) with no special conditions (AC:L), requiring low privilege (PR:L) and no user interaction (UI:N). The vulnerability has broad scope implications (S:U across system components) and achieves high impact on confidentiality, integrity, and availability (C:H/I:H/A:H). The verifier bypass allows attackers to load programs that the kernel incorrectly deems safe, leading to potential memory corruption, information disclosure, and denial of service.

Frequently asked questions

Can this vulnerability be exploited remotely?

No. This is a local vulnerability requiring the ability to load eBPF programs on the affected system. Remote exploitation is not possible; an attacker must have local system access.

Do I need to worry if I don't use eBPF?

If your system does not load eBPF programs (or has unprivileged eBPF disabled), your exposure is minimal. However, eBPF is increasingly used in container runtimes, observability tools, and security tools, so verify your environment's configuration.

What is the difference between a verifier bypass and actual code execution?

The verifier bypass allows an attacker to load an eBPF program that the kernel incorrectly believes is safe. Once loaded, the program can exploit the mismatch between verifier assumptions and runtime behavior to access protected memory, leak data, or crash the system.

Which kernel versions are affected?

All kernel versions prior to the patch are affected. Consult your Linux distribution's security advisory to determine which kernel versions contain the fix and which versions of your OS/kernel are vulnerable.

This analysis is based on the published CVE record and vulnerability description. Specific patch version numbers, affected kernel versions, and distribution-specific remediation steps should be verified against official Linux kernel advisories and your vendor's security bulletins. Testing is strongly recommended before deploying kernel updates to production systems. No exploit code or proof-of-concept instructions are provided. Organizations should assess their own eBPF usage and access controls to determine risk in their environment. Source: NVD (public-domain), retrieved 2026-08-01. Analysis generated by SEC.co (claude-haiku-4-5).