Skip to main content

Linux Kernel CVE-2026-52938

| EUVDEUVD-2026-38708 MEDIUM
NULL Pointer Dereference (CWE-476)
2026-06-24 Linux GHSA-vgrc-x22q-wc53
5.5
CVSS 3.1 · NVD
View

Attack ChainAIDerived

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

  1. Recon
    Load BPF program with sk_storage map
  2. Delivery
    Attach storage element to active TCP socket
  3. Exploit
    Initiate concurrent selem unlink (smap set to NULL)
  4. Install
    Trigger TCP SYN to invoke socket clone path
  5. C2
    bpf_sk_storage_clone reads selem still on hlist with NULL smap
  6. Execute
    NULL pointer dereference
  7. Impact
    Kernel panic (denial of service)

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Null pointer safety, defensive checks
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the following specific conditions: (1) the target system must have BPF socket storage in use - a BPF program must have previously called bpf_sk_storage_get() to attach a storage element to a socket; (2) the attacker must have the ability to load BPF programs, which on default Linux configurations requires either root/CAP_BPF or kernel.unprivileged_bpf_disabled=0 (the permissive default on many distributions); (3) the race window requires concurrent execution of bpf_selem_unlink_nofail() and bpf_sk_storage_clone() or bpf_sk_storage_diag_put_all() - the latter is reachable via TCP SYN handling during socket cloning. Systems that do not run any BPF programs using bpf_sk_storage maps are not affected regardless of kernel version. Setting kernel.unprivileged_bpf_disabled=1 removes the low-privilege trigger path, limiting exploitation to root or CAP_BPF holders.

Impact

Real-world risk is low-to-moderate for the vast majority of deployments. The CVSS 5.5 (Medium) with AV:L/PR:L correctly scopes this as a local, low-privilege issue - exploitation requires the ability to load BPF programs and create socket storage maps, which is restricted by default on hardened systems (kernel.unprivileged_bpf_disabled=1). EPSS at 0.14% (4th percentile) aligns with the absence of any KEV listing or known POC, suggesting this has not been observed in active campaigns. The race condition nature introduces real-world timing complexity beyond what AC:L (the provided score) suggests; independent assessment rates AC:H. Impact is strictly availability (kernel panic - A:H), with no confidentiality or integrity exposure. The indirect trigger via TCP SYN handling means that a malicious local actor with BPF privileges could potentially crash a network-facing server by combining BPF socket storage map creation with inbound TCP traffic, but this requires controlled conditions. Priority is appropriate for kernel maintenance cycles rather than emergency response for most organizations, except those running BPF-intensive workloads or multi-tenant Linux environments where local access is broadly granted.

Exploit ScenarioDerived

A local user with low privileges (or CAP_BPF) on a system with unprivileged BPF enabled creates a BPF socket storage map and attaches a storage element to an active TCP socket. A concurrent thread or network event triggers socket cloning via an inbound TCP SYN (exercising tcp_v4_syn_recv_sock → bpf_sk_storage_clone), racing with the selem unlink that has already nulled smap but not yet removed the element from the hlist. The RCU reader dereferences the NULL smap pointer, producing a general protection fault and crashing the kernel. No public proof-of-concept is known at time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.1% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Jul 08, 2026

NULL pointer dereference in the Linux kernel's BPF socket storage subsystem (net/core/bpf_sk_storage.c) allows a local low-privileged user to crash the kernel. The race condition between bpf_selem_unlink_nofail() - which nulls smap before removing the element from the hlist - and concurrent RCU readers in bpf_sk_storage_clone() and bpf_sk_storage_diag_put_all() can be triggered during TCP SYN handling (socket cloning path), producing a kernel panic. No public exploit identified at time of analysis; EPSS of 0.14% (4th percentile) confirms negligible observed exploitation probability.

RemediationAI

Apply the upstream kernel fix from the stable tree: commit 375e4e33c18dfa05c5dfd5f3dfffeb29343dd4c7 (https://git.kernel.org/stable/c/375e4e33c18dfa05c5dfd5f3dfffeb29343dd4c7) and commit 16af24fea29c209dea53595c99f6da9398548e1b (https://git.kernel.org/stable/c/16af24fea29c209dea53595c99f6da9398548e1b), which add NULL checks for smap in bpf_sk_storage_clone() and refactor bpf_sk_storage_diag_put_all() to pass a validated smap directly to diag_get(). Linux 7.1 is the target release containing the fix. Canonical (Ubuntu) users should apply the distribution kernel security update once released; monitor the Ubuntu Security Notices channel. As a compensating control, setting sysctl kernel.unprivileged_bpf_disabled=1 prevents unprivileged users from loading BPF programs, eliminating the ability of low-privilege attackers to create the socket storage maps needed to trigger the race - this is the recommended interim mitigation on multi-tenant systems. Note this control may impact legitimate eBPF-based observability tools (e.g., Cilium, Falco, BCC) that rely on unprivileged BPF, so validate workload impact before applying.

Affected VersionsENISA

Linux patch: 0
Linux 7.0
Linux patch: 7.1
Linux 5d800f87d0a5ea1b156c47a4b9fd128479335153 <375e4e33c18dfa05c5dfd5f3dfffeb29343dd4c7

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

The vulnerable code resides in net/core/bpf_sk_storage.c, part of the Linux kernel's BPF per-socket storage subsystem, which allows BPF programs to associate typed data (slems - storage elements) with sockets via bpf_sk_storage maps (smap). The race is a classic TOCTOU: bpf_selem_unlink_nofail() sets SDATA(selem)->smap to NULL as a first step before atomically removing the selem from the storage hlist. A concurrent RCU read-side critical section in bpf_sk_storage_clone() - invoked during sk_clone → inet_csk_clone_lock → tcp_create_openreq_child → tcp_v4_syn_recv_sock during TCP handshake processing - can observe the selem still linked to the list while smap is already NULL, then attempt to dereference it. The KASAN trace confirms a null-ptr-deref at offset 0x50-0x57 inside bpf_sk_storage_clone+0x1cd. The same latent bug exists in bpf_sk_storage_diag_put_all(). CWE-476 (NULL Pointer Dereference) applies to both paths. CPE: cpe:2.3:a:linux:linux:*:*:*:*:*:*:*:*.

Know when Canonical gets its next vulnerability

  • 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

NVD PRIMARY 5.5 MEDIUM
AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 4.7 MEDIUM

Race condition requires precise timing between concurrent selem unlink and RCU reader paths, warranting AC:H; local BPF loading capability needed, so AV:L and PR:L; impact is DoS only.

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

Primary rating from NVD.

CVSS VectorNVD

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

Lifecycle Timeline

4
CVSS changed
Jul 08, 2026 - 19:22 NVD
5.5 (MEDIUM)
Patch available
Jun 24, 2026 - 09:16 EUVD
CVE Published
Jun 24, 2026 - 07:14 nvd
MEDIUM 5.5
CVE Published
Jun 24, 2026 - 07:14 cve.org
UNKNOWN (no severity yet)

DescriptionNVD

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

bpf: Fix NULL pointer dereference in bpf_sk_storage_clone and diag paths

bpf_selem_unlink_nofail() sets SDATA(selem)->smap to NULL before removing the selem from the storage hlist. A concurrent RCU reader in bpf_sk_storage_clone() can observe the selem still on the list with smap already NULL, causing a NULL pointer dereference.

general protection fault, probably for non-canonical address 0xdffffc000000000a: KASAN: null-ptr-deref in range [0x0000000000000050-0x0000000000000057] RIP: 0010:bpf_sk_storage_clone+0x1cd/0xaa0 net/core/bpf_sk_storage.c:174 Call Trace: <IRQ> sk_clone+0xfed/0x1980 net/core/sock.c:2591 inet_csk_clone_lock+0x30/0x760 net/ipv4/inet_connection_sock.c:1222 tcp_create_openreq_child+0x35/0x2680 net/ipv4/tcp_minisocks.c:571 tcp_v4_syn_recv_sock+0x123/0xf90 net/ipv4/tcp_ipv4.c:1729 tcp_check_req+0x8e1/0x2580 include/net/tcp.h:855 tcp_v4_rcv+0x1845/0x3b80 net/ipv4/tcp_ipv4.c:2347

Add a NULL check for smap in bpf_sk_storage_clone().

bpf_sk_storage_diag_put_all() has the same issue. Add a NULL check and pass the validated smap directly to diag_get(), which is refactored to take smap as a parameter instead of reading it internally.

bpf_sk_storage_diag_put() uses diag->maps[i] which is always valid under its refcount, so diag->maps[i] is passed directly to diag_get().

Threat Intelligence Overview

EPSS Score
0.1%
Top 96% exploitable
Prevalence
Ubiquitous
core OS kernel in virtually all Linux server, cloud, and embedded deployments
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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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
Scheduled
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
High

Priority Score

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

Attack Technique

A null pointer dereference occurs when a program attempts to access memory through a pointer that has been set to NULL (address 0x0).

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2019-11043 CRITICAL POC
9.8 Oct 28

In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it

CVE-2014-6271 CRITICAL POC
9.8 Sep 24

GNU Bash through 4.3 processes trailing strings after function definitions in the values of environment variables, which

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2016-3714 HIGH POC
8.4 May 05

The (1) EPHEMERAL, (2) HTTPS, (3) MVG, (4) MSL, (5) TEXT, (6) SHOW, (7) WIN, and (8) PLT coders in ImageMagick before 6.

CVE-2017-12617 HIGH POC
8.1 Oct 04

When running Apache Tomcat versions 9.0.0.M1 to 9.0.0, 8.5.0 to 8.5.22, 8.0.0.RC1 to 8.0.46 and 7.0.0 to 7.0.81 with HTT

CVE-2016-8735 CRITICAL POC
9.8 Apr 06

Remote code execution is possible with Apache Tomcat before 6.0.48, 7.x before 7.0.73, 8.x before 8.0.39, 8.5.x before 8

CVE-2014-7169 CRITICAL POC
9.8 Sep 25

GNU Bash through 4.3 bash43-025 processes trailing strings after certain malformed function definitions in the values of

CVE-2014-0160 HIGH POC
7.5 Apr 07

The (1) TLS and (2) DTLS implementations in OpenSSL 1.0.1 before 1.0.1g do not properly handle Heartbeat Extension packe

CVE-2016-5195 HIGH POC
7.0 Nov 10

Race condition in mm/gup.c in the Linux kernel 2.x through 4.x before 4.8.3 allows local users to gain privileges by lev

CVE-2013-2423 LOW POC
3.7 Apr 17

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 17 and earlier, and

CVE-2023-4911 HIGH POC
7.8 Oct 03

Local privilege escalation in the GNU C Library (glibc) dynamic loader ld.so allows unprivileged local users on affected

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Not-Affected
SUSE Linux Enterprise High Performance Computing 15 SP7 Not-Affected

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