Skip to main content

Linux Kernel EUVDEUVD-2026-45496

| CVE-2026-63830 CRITICAL
2026-07-19 Linux GHSA-82mh-rf6q-rhp7
9.4
CVSS 3.1 · Vendor: Linux
Share

Severity by source

Vendor (Linux) PRIMARY
9.4 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L
vuln.today AI
6.1 MEDIUM

Requires local capability to attach SK_MSG BPF programs (PR:L, AV:L); primary impact is unauthorized page-cache modification (I:H) with limited disclosure (C:L) and no availability impact.

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

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

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

Lifecycle Timeline

5
Analysis Generated
Jul 20, 2026 - 15:46 vuln.today
CVSS changed
Jul 20, 2026 - 15:22 NVD
9.4 (CRITICAL)
Patch available
Jul 19, 2026 - 14:17 EUVD
CVE Published
Jul 19, 2026 - 12:02 cve.org
CRITICAL 9.4
CVE Published
Jul 19, 2026 - 12:02 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

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

net: skmsg: preserve sg.copy across SG transforms

The sk_msg sg.copy bitmap is part of the scatterlist entry ownership state. A set bit tells sk_msg_compute_data_pointers() not to expose the entry through writable BPF ctx->data. This protects entries backed by pages that are not private to the sk_msg, such as splice-backed file page-cache pages.

Several sk_msg transform paths move, copy, split, or compact msg->sg.data[] entries without moving the matching sg.copy bit. This can make an externally backed entry arrive at a new slot with a clear copy bit. A later SK_MSG verdict can then expose sg_virt(sge) as writable ctx->data and BPF stores can modify the original page cache.

Keep sg.copy synchronized with sg.data[] whenever entries are transferred, shifted, split, or copied into a new sk_msg. Clear the bit when an entry is replaced by a newly allocated private page or freed. This covers the BPF pull/push/pop helpers, sk_msg_shift_left/right(), sk_msg_xfer(), and tls_split_open_record(), including the partial tail entry created during TLS open-record splitting.

AnalysisAI

Improper page-cache modification in the Linux kernel's sk_msg (sockmap/BPF SK_MSG) subsystem allows an attacker who can attach SK_MSG BPF programs to expose externally-backed scatterlist pages as writable BPF ctx->data. Because the sg.copy ownership bitmap was not kept in sync when sk_msg entries are moved, split, shifted, or copied across transforms (BPF pull/push/pop, sk_msg_shift_left/right, sk_msg_xfer, and tls_split_open_record), a splice- or file-page-cache-backed entry could arrive at a new slot with a cleared copy bit and then be modified via BPF stores, corrupting the original page cache. There is no public exploit identified at time of analysis and the EPSS score is very low (0.16%), consistent with a subtle in-kernel logic bug rather than a widely-weaponized flaw.

Technical ContextAI

The affected component is the kernel's socket message layer (net/core/skmsg.c) used by sockmap/sk_msg BPF programs and kTLS. sk_msg uses a scatterlist (msg->sg.data[]) plus a per-entry sg.copy bitmap that marks entries whose backing pages are NOT private to the sk_msg (for example, page-cache pages introduced via splice). sk_msg_compute_data_pointers() consults this bitmap to decide whether an entry may be surfaced through the writable BPF context data pointer. The root cause is a state-tracking desynchronization: several transform paths relocate or duplicate scatterlist entries without carrying the corresponding sg.copy bit, so a protected (non-private) entry can land in a slot whose copy bit is clear. Although CWE is listed as N/A, this is functionally an improper synchronization / incorrect ownership-tracking defect (CWE-662/CWE-822-class) leading to unauthorized write access to shared memory. The CPE data points only at cpe:2.3:a:linux:linux:*, i.e. the mainline kernel, without pinning specific versions in the CPE itself.

RemediationAI

Vendor-released patch: upgrade to a fixed stable kernel - 6.1.177, 6.6.144, 6.12.95, 6.18.38, 7.1.3, or 7.2-rc1 (or your distribution's backported equivalent), applying the commits at https://git.kernel.org/stable/c/9bb86d8184b37503816150c4a6ad3c17dfdbe827 and the sibling stable references. Where immediate patching is not possible, reduce exposure by restricting who can attach SK_MSG/sockmap BPF programs: ensure unprivileged BPF is disabled (sysctl kernel.unprivileged_bpf_disabled=1) so that only CAP_BPF/CAP_NET_ADMIN contexts can load these programs, which closes the practical attack surface at the cost of blocking unprivileged eBPF workloads. In container/multi-tenant environments, drop CAP_BPF/CAP_NET_ADMIN from untrusted workloads and avoid granting sockmap/kTLS access to untrusted tenants; if the sockmap/SK_MSG feature is unused, this has minimal functional impact. These are compensating controls only and do not fix the underlying ownership-tracking bug, so schedule the kernel upgrade.

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

Share

EUVD-2026-45496 vulnerability details – vuln.today

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