Skip to main content

Linux Kernel CVE-2026-64192

| EUVDEUVD-2026-46012 MEDIUM
NULL Pointer Dereference (CWE-476)
2026-07-20 Linux GHSA-3hvr-phfh-x26g
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 attack requiring BPF syscall privileges (AV:L, PR:L); kernel panic delivers complete availability loss (A:H) with no confidentiality or integrity impact.

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
4.4 MEDIUM
AV:L/AC:L/PR:H/UI:N/S:U/C:N/I:N/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

4
Analysis Generated
Aug 11, 2026 - 22:59 vuln.today
CVSS changed
Aug 11, 2026 - 19:07 NVD
5.5 (MEDIUM)
CVE Published
Jul 20, 2026 - 16:27 nvd
MEDIUM 5.5
CVE Published
Jul 20, 2026 - 16:27 cve.org
UNKNOWN (no severity yet)

DescriptionNVD

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

bpf: Reject BPF_MAP_TYPE_INODE_STORAGE creation if BPF LSM is uninitialized

When CONFIG_BPF_LSM=y is set, BPF inode storage maps (BPF_MAP_TYPE_INODE_STORAGE) are compiled into the kernel. However, if the BPF LSM is not explicitly enabled at boot time (e.g. omitted from the "lsm=" boot parameter), lsm_prepare() is never executed for the BPF LSM.

Consequently, the BPF inode security blob offset (bpf_lsm_blob_sizes.lbs_inode) is never initialized and remains at its default compiled size of 8 bytes instead of being updated to a valid offset past the reserved struct rcu_head (typically 16 bytes or more).

When a privileged user creates and updates a BPF_MAP_TYPE_INODE_STORAGE map, bpf_inode() evaluates inode->i_security + 8. This erroneously aliases the struct rcu_head.func callback pointer at the beginning of the inode->i_security blob. During subsequent map element cleanup or inode destruction, writing NULL to owner_storage clears the queued RCU callback pointer. When rcu_do_batch() later executes the queued callback, it attempts an instruction fetch at address 0x0, triggering an immediate kernel panic.

Fix this by introducing a global bpf_lsm_initialized boolean flag marked with __ro_after_init. Set this flag to true inside bpf_lsm_init() when the LSM framework successfully registers the BPF LSM. Gate map allocation in inode_storage_map_alloc() on this flag, returning -EOPNOTSUPP if the BPF LSM is in turn uninitialized.

This fail-fast approach prevents userspace from allocating inode storage maps when the supporting BPF LSM infrastructure is absent, avoiding zombie map states.

AnalysisAI

Kernel panic via NULL dereference in the Linux kernel BPF subsystem affects systems compiled with CONFIG_BPF_LSM=y where the BPF LSM is not activated at boot. A locally authenticated user with low privileges can create a BPF_MAP_TYPE_INODE_STORAGE map under this misconfigured state, causing bpf_inode() to alias the struct rcu_head.func callback pointer; when map cleanup nulls this aliased pointer, rcu_do_batch() subsequently attempts an instruction fetch at address 0x0, triggering an immediate kernel panic and complete system denial of service. No public exploit is identified at time of analysis; EPSS sits at 0.14% (4th percentile), consistent with the narrow triggering conditions required.

Technical ContextAI

The Linux kernel BPF subsystem supports BPF_MAP_TYPE_INODE_STORAGE maps, which store per-inode data via security blobs at inode->i_security. When CONFIG_BPF_LSM=y is compiled in but the BPF LSM is omitted from the 'lsm=' kernel boot parameter, lsm_prepare() is never invoked for the BPF LSM, leaving bpf_lsm_blob_sizes.lbs_inode at its uninitialized default of 8 bytes. The inode security blob reserves the first sizeof(struct rcu_head) bytes - typically 16 or more - for RCU callbacks; accessing offset +8 directly aliases into the rcu_head.func callback pointer embedded there. Writing NULL to the aliased location during map or inode cleanup erases the queued RCU callback, so when rcu_do_batch() later executes the batch it dereferences address 0x0. The root cause is classified as CWE-476 (NULL Pointer Dereference). The fix introduces a bpf_lsm_initialized flag set by bpf_lsm_init() and gates inode_storage_map_alloc() on it. The CPE cpe:2.3:a:linux:linux identifies the upstream Linux kernel source tree.

RemediationAI

The primary fix is upgrading to Linux kernel 7.1.4 (stable) or 7.2-rc2, incorporating commits c76b8abce575e0c6e4096957220b4515ed847d89 and a6f0643e4f63cfaa0d5d4a69de4f132eac4b8fe4 (available at https://git.kernel.org/stable/c/c76b8abce575e0c6e4096957220b4515ed847d89 and https://git.kernel.org/stable/c/a6f0643e4f63cfaa0d5d4a69de4f132eac4b8fe4), along with additional stable backports at 267fdd9b6530c399dfd996e1a0a7628b45baf9f0, de984ea883405420fdc416ae8964b752df586970, and 5337eebdf8c5d4810b1913047f078d2815d5645f. For systems that cannot be immediately patched, two specific workarounds exist: (1) Explicitly add 'bpf' to the 'lsm=' kernel boot parameter (e.g., lsm=lockdown,capability,bpf) to properly initialize the BPF LSM via lsm_prepare(), which eliminates the condition entirely but activates BPF LSM hooks and may incur minor LSM hook overhead; or (2) Set /proc/sys/kernel/unprivileged_bpf_disabled=2 and restrict CAP_BPF/CAP_SYS_ADMIN access so low-privilege users cannot invoke the bpf() syscall to create inode storage maps - note this will block legitimate BPF-dependent workloads such as observability tooling and eBPF-based security agents. Distribution advisories should be consulted at https://seclists.org/oss-sec/2026/q3/230 and https://nvd.nist.gov/vuln/detail/CVE-2026-64192.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
openSUSE Tumbleweed Fixed
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

Share

CVE-2026-64192 vulnerability details – vuln.today

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