Skip to main content

Linux Kernel CVE-2026-45858

| EUVDEUVD-2026-32324 MEDIUM
2026-05-27 416baaa9-dc9f-4396-8d5f-8c081fb06d67 GHSA-pqwg-4rrm-3fg7
5.5
CVSS 3.1 · NVD
View

Attack ChainAIDerived

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

  1. Access
    Obtain low-privilege local account
  2. Delivery
    Write large file to near-capacity ext4 volume
  3. Exploit
    I/O completion triggers unwritten extent split
  4. Execution
    Transient ENOSPC causes ext4_split_extent_at() failure
  5. Persist
    Entire extent marked written, exposing stale data in 0-to-A region
  6. Impact
    Read file range to access prior allocation data

Vulnerability Assessment

Exploitation Conditions

Requires a local user account with write permissions (PR:L per CVSS vector) to an ext4-formatted filesystem on an unpatched Linux kernel. The specific trigger condition is a transient ENOSPC failure occurring at the precise moment ext4_split_extent_at() attempts the first of two boundary splits on a large unwritten extent during I/O end-completion processing. Exploitation is further limited to: ext4 filesystems only (XFS, Btrfs, tmpfs, and other filesystem types are not affected); storage volumes operating near capacity so that the ENOSPC failure path is reachable; and I/O workloads that produce large unwritten extents subsequently converted via the two-part split path. Systems with ample free space on ext4 volumes are unlikely to trigger the vulnerable path. The stale-data read is only meaningful if prior sensitive allocations exist in the adjacent on-disk block range - this is environmentally dependent. Authentication requirements are confirmed as local low-privilege (PR:L) from the NVD CVSS vector.

Impact

The NVD CVSS score of 5.5 (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H) captures the local, low-privilege attack surface correctly but assigns C:N and I:N - a direct conflict with the 'Information Disclosure' tag and the CVE description, which explicitly describes stale data becoming readable and filesystem data being silently corrupted. The official score appears to undercount both confidentiality and integrity dimensions; this discrepancy should be verified against the final NVD entry. EPSS at 0.02% (5th percentile) aligns with expectation: the vulnerability requires local access, an ext4 filesystem, a specific I/O pattern with large unwritten extents, and a transient ENOSPC condition at the exact moment of extent splitting - none of which are remotely triggerable or easily weaponized at scale. The vulnerability is not listed in CISA KEV and no public proof-of-concept code has been identified. Despite Linux kernel's ubiquitous deployment, the narrow triggering conditions and local-only vector substantially limit real-world risk. This is best characterized as a correctness and reliability defect with a secondary security dimension rather than a standalone exploitation primitive.

Exploit ScenarioDerived

A local user with write access to an ext4 volume that is near storage capacity writes a large file whose I/O completion triggers the unwritten-to-written extent conversion path. At the moment ext4_split_extent_at() attempts to split the extent at boundary B, a transient ENOSPC condition causes the split to fail; the buggy error path zero-fills B-to-N and marks the entire 0-to-N extent as written, exposing stale on-disk content in the 0-to-A region that was written by a prior process or user. The local user then reads the affected byte range of the file to obtain data from a previous allocation - such as cleared credentials, file fragments, or application state - without requiring any elevated privileges. No public exploit code exists for this scenario.

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

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

Alert me

AnalysisAIv1 – Jun 25, 2026

Stale data exposure and filesystem data corruption in the Linux kernel's ext4 extent-splitting subsystem affects all major stable branches prior to 6.6.130, 6.12.75, 6.18.14, 6.19.4, and 7.0. When ext4_split_extent_at() encounters a transient ENOSPC condition while splitting a large unwritten extent at its first boundary, the error path incorrectly zeroes out and marks the entire extent as written - leaving stale disk content from adjacent regions readable in areas that should remain unwritten or zero-filled. No public exploit identified at time of analysis; EPSS at 0.02% (5th percentile) reflects the narrow, local-only, condition-dependent trigger path that makes automated or widespread exploitation highly unlikely.

RemediationAI

Vendor-released patches are available: upgrade to Linux kernel 6.6.130 or later (6.6 LTS), 6.12.75 or later (6.12 LTS), 6.18.14 or later (6.18 branch), 6.19.4 or later (6.19 branch), or 7.0+ for mainline. Linux distribution vendors (Red Hat, Ubuntu, SUSE, Debian) will carry these fixes in their respective kernel update streams - check vendor-specific errata. If an immediate kernel upgrade is not feasible, compensating controls are limited in scope: restrict local user write access to ext4 volumes containing sensitive data to reduce the potential for stale-data disclosure; monitor and maintain adequate free space on ext4 volumes to reduce the probability of ENOSPC during extent splitting; and audit which unprivileged users have write access to shared ext4 mounts. These mitigations reduce trigger probability but do not eliminate the underlying code defect and carry operational trade-offs (reduced user flexibility, storage management overhead). Migrating workloads to non-ext4 filesystems such as XFS or Btrfs eliminates exposure entirely but introduces significant migration complexity.

Affected VersionsENISA

Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <58ddae5d77b1db3a27b891c75a8fa120239ac092
Linux 0 <6.6.130
Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <d67c8ecf3d8fda9b8ef80e6f665d84b6d6ac9d88
Linux 0 <6.19.4
Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <7015fcf473796e1d2d876f241bd9e0c36f3d4eef
Linux patch: 6.6.130
Linux patch: 6.12.75
Linux 0 <6.12.75
Linux patch: 6.18.14
Linux 0 <6.18.14
Linux patch: 7.0
Linux patch: 6.19.4
Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <1bf6974822d1dba86cf11b5f05498581cf3488a2
Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <d17857b4fb9ba5745b59be0ef38fd532991fccbf

Affected Packages

euvd linux fix: 6.6.130, 6.12.75, 6.18.14, 6.19.4

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 vulnerability resides in the ext4 filesystem's extent tree management subsystem, specifically in the interaction between ext4_split_extent() and ext4_split_extent_at() within the Linux kernel. Ext4 extents exist in two states: 'unwritten' (allocated but not yet initialized to the application) and 'written' (fully initialized). During I/O completion, when only a subrange [A, B] of a larger unwritten extent [0, N] is being converted to written, ext4_split_extent() must split the extent at two boundaries. If the first split at B fails due to transient ENOSPC, the existing error path invokes zero-out on the B-to-N range and then propagates EXT4_EXT_DATA_ENTIRE_VALID1, incorrectly marking the full 0-to-N extent as written. This leaves the 0-to-A region - which contains stale on-disk data from previous allocations - now accessible as a written (initialized) extent. The fix changes the flag passed on failure to EXT4_EXT_DATA_PARTIAL_VALID1, preventing the premature initialized conversion and preserving correct two-step split semantics. CPE cpe:2.3:o:linux:linux_kernel:* confirms all Linux kernel versions from initial commits are within scope until the respective stable fixes.

Know when the next one hits your stack

  • 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 5.8 MEDIUM

AC:H because trigger requires transient ENOSPC precisely during extent splitting; C:L and I:L added because description confirms stale prior-allocation data becomes readable and filesystem data integrity is silently corrupted.

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

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
Jun 25, 2026 - 21:22 NVD
5.5 (MEDIUM)
Patch available
May 27, 2026 - 19:46 EUVD
CVE Published
May 27, 2026 - 14:16 nvd
UNKNOWN (no severity yet)
CVE Published
May 27, 2026 - 14:16 nvd
MEDIUM 5.5

DescriptionNVD

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

ext4: don't zero the entire extent if EXT4_EXT_DATA_PARTIAL_VALID1

When allocating initialized blocks from a large unwritten extent, or when splitting an unwritten extent during end I/O and converting it to initialized, there is currently a potential issue of stale data if the extent needs to be split in the middle.

0 A B N [UUUUUUUUUUUU] U: unwritten extent [--DDDDDDDD--] D: valid data

|<- ->| ----> this range needs to be initialized ext4_split_extent() first try to split this extent at B with EXT4_EXT_DATA_ENTIRE_VALID1 and EXT4_EXT_MAY_ZEROOUT flag set, but ext4_split_extent_at() failed to split this extent due to temporary lack of space. It zeroout B to N and mark the entire extent from 0 to N as written.

0 A B N [WWWWWWWWWWWW] W: written extent [SSDDDDDDDDZZ] Z: zeroed, S: stale data

ext4_split_extent() then try to split this extent at A with EXT4_EXT_DATA_VALID2 flag set. This time, it split successfully and left a stale written extent from 0 to A.

0 A B N [WW|WWWWWWWWWW] [SS|DDDDDDDDZZ]

Fix this by pass EXT4_EXT_DATA_PARTIAL_VALID1 to ext4_split_extent_at() when splitting at B, don't convert the entire extent to written and left it as unwritten after zeroing out B to N. The remaining work is just like the standard two-part split. ext4_split_extent() will pass the EXT4_EXT_DATA_VALID2 flag when it calls ext4_split_extent_at() for the second time, allowing it to properly handle the split. If the split is successful, it will keep extent from 0 to A as unwritten.

Threat Intelligence Overview

EPSS Score
0.0%
Top 95% exploitable
Prevalence
Ubiquitous
Linux kernel underlies virtually all server, cloud, container, and embedded production environments globally
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.0%
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

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Vendor StatusVendor

SUSE

Severity: Moderate
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 Performance Computing 15 SP7 Affected

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