Skip to main content

Linux Kernel EUVDEUVD-2026-82252

| CVE-2026-93144 HIGH
2026-09-17 Linux GHSA-qrhc-5724-pxfq
7.8
CVSS 3.1 · Vendor: Linux
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain CAP_BPF on host
  2. Delivery
    Craft eBPF program using bpf_rdonly_cast
  3. Exploit
    Verifier accepts write via btf_struct_access callback
  4. Execution
    Write through untrusted BTF pointer
  5. Persist
    Corrupt kernel memory / credentials
  6. Impact
    Escalate to root

Vulnerability Assessment

Exploitation Conditions

Requires local capability to load and run eBPF programs - CAP_BPF (plus CAP_SYS_ADMIN/CAP_PERFMON depending on program type), or a system with unprivileged BPF enabled (kernel.unprivileged_bpf_disabled=0). The attacker's program must use an untrusted-BTF-pointer helper such as bpf_rdonly_cast() and then perform a write, which the pre-fix verifier accepts through the btf_struct_access callback before the default read-only rejection. Affected kernels are v6.2 through the fix (base commit 282de143ead9); systems already on 7.2.6, 7.3-rc1, or with the backport are not affected. Limiting factors: no remote vector (AV:L), no user interaction, and the CAP_BPF/unprivileged-BPF gate means hardened hosts that disable unprivileged BPF and restrict CAP_BPF are not exposed.

Impact

This is a genuine kernel write primitive, not a crash-only bug, which places it above most of its BPF sibling CVEs. The verifier's check_ptr_to_btf_access() allowed program-type btf_struct_access callbacks to validate writes BEFORE the default BTF access path rejected non-read accesses, bypassing the read-only policy for PTR_UNTRUSTED pointers produced by helpers like bpf_rdonly_cast(). Because bpf_rdonly_cast() casts an arbitrary/attacker-influenced value into a typed BTF pointer, permitting writes through it yields a controlled kernel memory write suitable for local privilege escalation. The vendor CVSS 3.1 vector (AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H = 7.8) is broadly defensible for a write primitive, though PR:L is doing important work: exploitation requires the ability to load and run eBPF programs (CAP_BPF/CAP_SYS_ADMIN or an unprivileged-BPF-enabled system). No EPSS score, no CISA KEV listing, and no public POC are present in the input, so exploitation status is 'no public exploit identified at time of analysis' - this is a latent primitive, not a confirmed campaign. Net: a real priority for multi-tenant/container hosts that grant CAP_BPF, but the local-plus-capability gate keeps it well below a remote-unauth critical.

Exploit ScenarioDerived

A local attacker with the ability to load eBPF programs (CAP_BPF) writes a program that uses bpf_rdonly_cast() to obtain an untrusted BTF pointer, then issues a write through it that the verifier wrongly accepts via the btf_struct_access callback path. By steering the cast pointer at chosen kernel memory, the attacker corrupts kernel state (e.g., credential structures or function pointers) to escalate to root. No public exploit code is identified in the provided data.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 18, 2026

Kernels from v6.2 onward accept non-read accesses through untrusted BTF pointers inside the eBPF verifier, so a program that obtains such a pointer via bpf_rdonly_cast() can perform writes the read-only policy was supposed to forbid - turning a verifier oversight into a genuine kernel memory-write primitive rather than a crash-only bug. The exposure is local: per the assessed vector (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) an attacker must already be able to load and run eBPF programs, whether through CAP_BPF (plus CAP_SYS_ADMIN/CAP_PERFMON for certain program types) or on hosts where kernel.unprivileged_bpf_disabled=0 permits unprivileged BPF. With CVSS 7.8 and high confidentiality and integrity impact, this ranks above many sibling BPF verifier issues, but no public exploit code has been identified at time of analysis, it is not in CISA KEV, and a vendor-released patch (7.2.6 / 7.3-rc1 plus stable backports) is available.

RemediationAI

Apply the vendor-released patch: update to Linux 7.2.6 or 7.3-rc1 (or later) where those branches apply, or cherry-pick the stable backports ac65c710cc643cbc52b899627577357867249530 and 19d5566b84ca1af0256d0d0003e1a081580c3ba3 from https://git.kernel.org/stable/c/ac65c710cc643cbc52b899627577357867249530 and https://git.kernel.org/stable/c/19d5566b84ca1af0256d0d0003e1a081580c3ba3 onto affected trees, then confirm the patched check_ptr_to_btf_access() rejects non-read accesses on PTR_UNTRUSTED BTF pointers ahead of the btf_struct_access callback branch before back-porting the fix to distribution kernels that still carry the 6.2-era verifier; track the NVD record at https://nvd.nist.gov/vuln/detail/CVE-2026-93144 and EUVD-2026-82252 for downstream advisory updates. Where patching must be staged, the most direct compensating control is to set kernel.unprivileged_bpf_disabled=1 (and keep it set across reboots, since the sysctl is one-way on most builds), which removes the unprivileged-BPF path entirely at the cost of breaking eBPF-based observability, tracing, and some container network tooling that relies on unprivileged programs. On hosts that must retain BPF functionality, restrict CAP_BPF (and CAP_PERFMON/CAP_SYS_ADMIN where required) to a small set of trusted administrative workloads so no low-privileged principal can load a program at all, and complement that with a seccomp policy denying the bpf() syscall in untrusted containers - an effective but blunt measure that also blocks legitimate in-container BPF use. Because the assessed vector is AV:L/PR:L with no user interaction, none of these controls is a substitute for the kernel update, and hardened systems that already disable unprivileged BPF and tightly scope CAP_BPF reduce rather than eliminate the window if a privileged service can still be induced to load attacker-influenced programs.

Affected VersionsENISA

Linux patch: 0
Linux 282de143ead96a5d53331e946f31c977b4610a74 <ac65c710cc643cbc52b899627577357867249530
Linux 6.2
Linux patch: 7.2.6
Linux patch: 7.3-rc1
Linux 282de143ead96a5d53331e946f31c977b4610a74 <19d5566b84ca1af0256d0d0003e1a081580c3ba3

Affected Packages

euvd linux no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

BPF Type Format (BTF) gives eBPF programs type-aware access to kernel and module data structures, and the verifier's check_ptr_to_btf_access() is the gatekeeper that decides whether a load or store through a pointer carrying BTF type information is legal. Program types can register a btf_struct_access callback that vets field accesses for their own data; the flaw is ordering - the callback branch runs before the default BTF access path that enforces the read-only rule for pointers marked PTR_UNTRUSTED. Helpers such as bpf_rdonly_cast() deliberately hand programs pointers of that untrusted class precisely because they are meant to be read-only, so letting the callback approve a write defeats the entire trust annotation. The fix moves the rejection of non-read accesses on PTR_UNTRUSTED BTF pointers to the common entry point ahead of the callback branch, covering every program type in one place instead of relying on each callback to re-implement the policy. The source data records the CWE as N/A; functionally this is a missing authorization check in the verifier's access-control path (an incorrect-authorization / improper-access-control class), and one upstream tag labels it an authentication bypass, which is a loose characterization of the same root cause. The affected code base enters at the commit family with base 282de143ead96a5d53331e946f31c977b4610a74 (kernel 6.2) and is corrected in 7.2.6, 7.3-rc1, and the referenced stable commits. CPE coverage is the coarse cpe:2.3:a:linux:linux:*:*:*:*:*:*:*:*, which pins no version and therefore requires distro-side version mapping to determine real exposure.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (Linux) PRIMARY 7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 7.8 HIGH

Local BPF program load (AV:L) needs CAP_BPF (PR:L), deterministic verifier bypass (AC:L); a controlled kernel write yields full C/I/A compromise, same-scope.

3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE HIGH
Red Hat 6.7 MEDIUM

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

4
CVSS changed
Sep 18, 2026 - 18:22 NVD
7.8 (HIGH)
Patch available
Sep 17, 2026 - 17:19 EUVD
CVE Published
Sep 17, 2026 - 16:11 cve.org
UNKNOWN (no severity yet)
CVE Published
Sep 17, 2026 - 16:11 cve.org
HIGH 7.8

DescriptionCVE.org

In the Linux kernel, the following vulnerability has been resolved:

bpf: Reject writes through untrusted BTF pointers

check_ptr_to_btf_access() lets program-type btf_struct_access callbacks validate writes before the default BTF access path rejects non-read accesses. That bypasses the read-only policy for untrusted BTF pointers created by helpers such as bpf_rdonly_cast().

Reject non-read accesses through PTR_UNTRUSTED BTF pointers at the common entry point, before the callback branch to handle all cases.

Executive ViewAI

Why It Matters

A flaw in the Linux kernel's eBPF verifier (versions 6.2 and later) lets a locally authenticated user who can already load BPF programs convert a supposedly read-only pointer into a kernel memory-write primitive, potentially giving an attacker control over the most trusted layer of every affected host. Organizations running Linux at scale - cloud infrastructure, container platforms, and multi-tenant Kubernetes clusters - face host-level confidentiality and integrity compromise, including possible container-to-host escape, though exploitation requires existing BPF privileges and no public exploit code has been identified at time of analysis. Because a vendor patch is already available, leadership should treat this as a scheduled but high-priority fleet-wide remediation rather than an emergency response.

Business Impact: High
Compensating Controls

Apply vendor patch. Until patched: set kernel.unprivileged_bpf_disabled=1, restrict CAP_BPF/CAP_SYS_ADMIN/CAP_PERFMON to essential workloads, and monitor or block use of bpf_rdonly_cast() via LSM/seccomp policy.

Threat Intelligence Overview

EPSS Score
0.2%
Top 88% exploitable
Prevalence
Low
Linux is ubiquitous but this path needs bpf_rdonly_cast writes plus CAP_BPF, a niche config
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact
High

Priority Score

39
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +39
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 16.0 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy