Read the docs
TI-2026-68105 Aliases CVE-2026-98214GHSA-cwv8-mjrx-v4v5

SELinux checks skipped by mprotect() on nested backing files in Linux

Priority LOW 22Published · Updated

Key facts

Attack vector
—
Privileges required
—
User interaction
—
Attack complexity
—
Impact type
—
Confidentiality · integrity · availability
—
Fix status
Partial Red Hat: 6 without a fix

No CVSS vector from any source. Fix status from CNA and Red Hat.

Summary

The Linux kernel is affected in versions from 6.6.144 before 6.6.158, 6.12.95 before 6.12.112, 6.18.38 before 6.18.54, and 7.0.4 before 7.1, along with later code from 7.1. The mprotect() path rechecks only the lowest backing file of a stacked filesystem, so SELinux checks on intermediate layers are skipped. A local user can therefore gain execute access that the SELinux policy denies on those intermediate layers.

Written with Claude Haiku 5.5 from the sources below · 2026-10-30

Description from the CNA

In the Linux kernel, the following vulnerability has been resolved: selinux: recheck intermediate backing files on mprotect() mprotect() can be used to bypass the SELinux checks that mmap() performs against the intermediate layers of a stacked filesystem. mmap() checks every backing layer as the request descends through the stack. mprotect() only has the lowest backing file in vma->vm_file, so it rechecks the top-level user and the lowest mounter, but skips the mounters of every layer in between. With two nested overlayfs mounts and a policy denying mounter_t -> middle_file_t:file { execute }, a direct mmap(PROT_EXEC) is denied: avc: denied { execute } for pid=71 comm="nested_exec" path="/payload" dev="overlay" ino=9 scontext=user_u:base_r:mounter_t tcontext=user_u:object_r:middle_file_t tclass=file permissive=0 while mmap(PROT_NONE) followed by mprotect(PROT_EXEC) succeeds. Preserve each intermediate path, mounter SID and file-description SID in the backing-file security blob, copying the saved entries when another backing layer is opened. Allocate the array only for nested backing files, and release it and the path references in the backing_file_free hook. During mprotect(), recheck fd { use } and the requested inode permissions for every saved mounter, and include the intermediate layers in the execmod checks. Policy for nested stacking may then need to grant intermediate mounters what a direct mmap() already requires, and execmod on intermediate labels for binaries using text relocations. Tested on arm64 QEMU with a small BusyBox initramfs and a purpose-built SELinux policy, on a mainline tree containing commit f2381b546e7e ("fs: fix user path of nested backing files"). [PM: subject tweak]

Why it matters now

EPSS 0.00216 12th percentileScored 2026-11-07
Fix Partial Linux (Linux): 6.6.158, 6.12.112, 6.18.54 +3Red Hat: 6 without a fix

SSVC decision points

Not available: CISA has not published SSVC decision points for this record.

Affected products

VendorProductAffected versionsFixed inStatusSource
LinuxLinux6.6.144 to before 6.6.158; 6.12.95 to before 6.12.112; 6.18.38 to before 6.18.54; 7.0.4 to before 7.16.6.158, 6.12.112, 6.18.54, 7.1Patch availableCNA
LinuxLinux7.1 and later6.6.158, 6.12.112, 6.18.54, 7.2.8, 7.3Patch availableCNA
  • Linux VendorLinux Affected 6.6.144 to before 6.6.158; 6.12.95 to before 6.12.112; 6.18.38 to before 6.18.54; 7.0.4 to before 7.1 Fixed in 6.6.158, 6.12.112, 6.18.54, 7.1 Patch available CNA
  • Linux VendorLinux Affected 7.1 and later Fixed in 6.6.158, 6.12.112, 6.18.54, 7.2.8, 7.3 Patch available CNA

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*——Linux
  • cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* Versions — — ·Linux

Remediation

The Linux kernel is fixed in 6.6.158, 6.12.112, 6.18.54, 7.1, 7.2.8 and 7.3. For Red Hat Enterprise Linux 6 no fix is planned. The sources list no fixed version for Red Hat Enterprise Linux 8, 9 and 10 and Red Hat OpenShift Container Platform 4 and 5.

Written with Claude Haiku 5.5 from the sources below · 2026-10-30

  • Fix · CNA Linux (Linux) Fixed in 6.6.158, 6.12.112, 6.18.54, 7.1
  • Fix · CNA Linux (Linux) Fixed in 6.6.158, 6.12.112, 6.18.54, 7.2.8, 7.3

Vendor assessments

Red Hat

Red Hat rating: Moderate. Red Hat's page for this CVE →

ProductStatusPlan or fix
Red Hat Enterprise Linux 10AffectedNo fix yet
Red Hat Enterprise Linux 6AffectedNo fix planned: Out of support scope
Red Hat Enterprise Linux 8AffectedNo fix yet
Red Hat Enterprise Linux 9AffectedNo fix yet
Red Hat OpenShift Container Platform 4AffectedNo fix yet
Red Hat OpenShift Container Platform 5AffectedNo fix yet
Not affected: 1 product
  • Red Hat Enterprise Linux 7

Timeline

  1. 2026-10-06 Threatist record created from CVE-2026-98214
  2. 2026-10-06 Alias added: GHSA-cwv8-mjrx-v4v5
  3. 2026-10-09 Affected versions changed · Red Hat
  4. 2026-10-09 CVSS score added · Red Hat
  5. 2026-10-19 Fix available: Linux/[email protected] · CNA
  6. 2026-10-30 Affected versions changed · Red Hat

References

  • TI-2025-26358 tls: fix handling of zero-length records on the rx_list KEVCVSS 3.1CRITICAL 9.8
  • TI-2026-38352 netfilter: bridge: make ebt_snat ARP rewrite writable KEVCVSS 3.1HIGH 8.8
  • TI-2021-02452 Incorrect authorization in Ubuntu linux kernel KEVCVSS 3.1HIGH 8.8
  • TI-2013-05264 The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the… KEVCVSS 3.1HIGH 8.8
  • TI-2022-00125 Integer overflow in kernel KEVCVSS 3.1HIGH 8.4
  • TI-2013-01864 The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9… KEVCVSS 3.1HIGH 8.4
See all 21741 →

Sources