Skip to main content

Linux Kernel EUVDEUVD-2026-32352

| CVE-2026-45886 MEDIUM
Use of Uninitialized Resource (CWE-908)
2026-05-27 416baaa9-dc9f-4396-8d5f-8c081fb06d67 GHSA-w77r-v3rv-5rcp
5.5
CVSS 3.1 · NVD
Share

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
5.5 MEDIUM

Local trigger requiring BPF capability (PR:L, AV:L); availability impact only as verifier rejects programs; no data exfiltration or write path confirmed.

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

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

5
Analysis Generated
Jun 25, 2026 - 21:30 vuln.today
CVSS changed
Jun 25, 2026 - 21:22 NVD
5.5 (MEDIUM)
Patch available
May 27, 2026 - 19:46 EUVD
CVE Published
May 27, 2026 - 14:17 nvd
UNKNOWN (no severity yet)
CVE Published
May 27, 2026 - 14:17 nvd
MEDIUM 5.5

DescriptionNVD

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

bpf: Fix bpf_xdp_store_bytes proto for read-only arg

While making some maps in Cilium read-only from the BPF side, we noticed that the bpf_xdp_store_bytes proto is incorrect. In particular, the verifier was throwing the following error:

; ret = ctx_store_bytes(ctx, l3_off + offsetof(struct iphdr, saddr), &nat->address, 4, 0); 635: (79) r1 = *(u64 *)(r10 -144) ; R1=ctx() R10=fp0 fp-144=ctx() 636: (b4) w2 = 26 ; R2=26 637: (b4) w4 = 4 ; R4=4 638: (b4) w5 = 0 ; R5=0 639: (85) call bpf_xdp_store_bytes#190 write into map forbidden, value_size=6 off=0 size=4

nat comes from a BPF_F_RDONLY_PROG map, so R3 is a PTR_TO_MAP_VALUE. The verifier checks the helper's memory access to R3 in check_mem_size_reg, as it reaches ARG_CONST_SIZE argument. The third argument has expected type ARG_PTR_TO_UNINIT_MEM, which includes the MEM_WRITE flag. The verifier thus checks for a BPF_WRITE access on R3. Given R3 points to a read-only map, the check fails.

Conversely, ARG_PTR_TO_UNINIT_MEM can also lead to the helper reading from uninitialized memory.

This patch simply fixes the expected argument type to match that of bpf_skb_store_bytes.

AnalysisAI

BPF verifier rejection in the Linux kernel's XDP subsystem forces valid BPF programs to fail load-time verification when they pass pointers from BPF_F_RDONLY_PROG maps to the bpf_xdp_store_bytes helper. The root cause is an incorrect argument type annotation - the helper's third argument (source buffer) is declared as ARG_PTR_TO_UNINIT_MEM, which carries the MEM_WRITE flag, causing the verifier to demand write permission on memory that the helper only reads. Separately, this same mistype permits the helper to read from uninitialized memory (CWE-908). No public exploit is identified at time of analysis, and EPSS sits at 0.02%, but kernel patches across all active stable branches have been issued.

Technical ContextAI

The affected subsystem is the Linux kernel BPF verifier and the XDP (eXpress Data Path) helper bpf_xdp_store_bytes (helper ID #190). When a BPF program loads a value from a BPF_F_RDONLY_PROG map, the verifier tracks the resulting register as PTR_TO_MAP_VALUE with read-only semantics. The helper's prototype declares its third argument (the source buffer to copy bytes from) as ARG_PTR_TO_UNINIT_MEM, a type that signals the helper may write into that region and thus requires write access during verifier checks in check_mem_size_reg. Because the map pointer is read-only, the verifier emits 'write into map forbidden' and rejects the program. Additionally, ARG_PTR_TO_UNINIT_MEM allows the helper to read from potentially uninitialized memory, which maps to CWE-908 (Use of Uninitialized Resource). The correct prototype - already used by the analogous bpf_skb_store_bytes - treats the source argument as read-only, resolving both problems. CPE data confirms the affected product as cpe:2.3:o:linux:linux_kernel across multiple stable branches introduced at commit 3f364222d032eea6b245780e845ad213dab28cdd.

RemediationAI

The primary fix is to upgrade to a patched kernel version: Linux 6.1.165, 6.6.128, 6.12.75, 6.18.14, 6.19.4, or 7.0, as confirmed by upstream commits at https://git.kernel.org/stable/c/0db169a91381a473b7974021d1c02f8da72c5775, https://git.kernel.org/stable/c/ddc34a1b85505c919026ddc82fafdada9a160b15, https://git.kernel.org/stable/c/6557f1565d779851c4db9c488c49c05a47a6e72f, https://git.kernel.org/stable/c/d7b87adeb0eb539b9b824b101bb14fb01e41240b, https://git.kernel.org/stable/c/ffb5d1c5e3933b947fc7303ad68bf0c536d0c85e, and https://git.kernel.org/stable/c/57f7f6a0ad04a65c8a7a067b2f56cbbf2aec9e52. Distribution vendors (RHEL, Debian, Ubuntu, SUSE) will backport these commits to their kernel packages; administrators should apply the next kernel security update from their distro. As a workaround, avoid using BPF_F_RDONLY_PROG maps in XDP BPF programs that call bpf_xdp_store_bytes until the kernel is patched - this prevents verifier rejection but may require refactoring BPF programs. There are no network-layer mitigations since exploitation is local and requires BPF program loading privileges.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
Container suse/sl-micro/6.0/base-os-container:2.1.3-7.158 Container suse/sl-micro/6.1/base-os-container:2.2.1-5.144 Image SL-Micro-Azure Image SL-Micro-BYOS-Azure Image SL-Micro-BYOS-EC2 Image SL-Micro-BYOS-GCE Image SL-Micro-EC2 Image SLE-Micro Image SLE-Micro-Azure Image SLE-Micro-BYOS Image SLE-Micro-BYOS-Azure Image SLE-Micro-BYOS-EC2 Image SLE-Micro-BYOS-GCE Image SLE-Micro-EC2 Image SLE-Micro-GCE Image SUSE-Multi-Linux-Manager-Proxy-BYOS-Azure Image SUSE-Multi-Linux-Manager-Proxy-BYOS-EC2 Image SUSE-Multi-Linux-Manager-Proxy-BYOS-GCE Image SUSE-Multi-Linux-Manager-Server-BYOS-Azure Image SUSE-Multi-Linux-Manager-Server-BYOS-EC2 Image SUSE-Multi-Linux-Manager-Server-BYOS-GCE Image SUSE-Multi-Linux-Manager-Server-EC2-llc Image SUSE-Multi-Linux-Manager-Server-EC2-ltd Affected
Container suse/sl-micro/6.0/kvm-os-container:2.1.3-6.173 Container suse/sl-micro/6.1/kvm-os-container:2.2.1-5.144 Affected
Container suse/sle-micro/base-5.5:2.0.4-5.8.288 Affected
Container suse/sle-micro/kvm-5.5:2.0.4-3.5.557 Affected
Container suse/sle-micro/rt-5.5:2.0.4-4.5.630 Affected

Share

EUVD-2026-32352 vulnerability details – vuln.today

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