Skip to main content

Linux Kernel Ceph CVE-2026-89648

| EUVDEUVD-2026-76560 HIGH
2026-09-11 Linux GHSA-2j45-hm4h-36gr
7.5
CVSS 3.1 · Vendor: Linux
View

Attack ChainAIDerived

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

  1. Access
    Compromise or impersonate Ceph MDS
  2. Delivery
    Establish client session via Ceph mount
  3. Exploit
    Respond to create request with crafted delegation reply
  4. Execution
    Client decodes unbounded len field in ceph_parse_deleg_inos()
  5. Persist
    Insert loop spins or xarray grows without bound
  6. Impact
    CPU exhaustion or kernel OOM on client host

Vulnerability Assessment

Exploitation Conditions

Exploitation requires that the attacker control or compromise a Ceph MDS server that a victim client has an active session with. The victim kernel must be version 5.7 or later with the Ceph filesystem client compiled in (CONFIG_CEPH_FS) and a Ceph filesystem actively mounted via that MDS. The vulnerability is triggered during the create-with-delegation protocol exchange, so the client must be performing file creation operations that invoke the delegation path. Non-default in environments with properly isolated storage networks and trusted MDS infrastructure; the primary limiting factor is the requirement for MDS-level compromise or network-position MDS impersonation, which is a high-bar prerequisite beyond mere network reachability.

Impact

The vendor-assigned CVSS 7.5 (AV:N/AC:L/PR:N/UI:N) overstates attack complexity: exploitation requires a malicious or compromised Ceph MDS, a server-side prerequisite that effectively elevates AC to High. PR:N is plausible from the client's vantage point since clients receive unsolicited reply content, but the practical barrier of MDS control means this is not a trivially reachable internet-exposed surface. Impact is purely availability - C:N/I:N/A:H is correctly scoped. EPSS at 0.21% (11th percentile) aligns with the niche deployment profile and absence of any public exploit code. No CISA KEV listing. Even a mid-sized municipal IT team in opole running a Ceph storage cluster should treat this as a standard patch-cycle priority rather than an emergency, since exploitation demands prior MDS compromise or MDS substitution - conditions that imply a more severe initial breach has already occurred. The vulnerability is more dangerous in multi-tenant Ceph deployments where MDS trust is not absolute.

Exploit ScenarioDerived

An attacker who has compromised a Ceph MDS node (or who operates a rogue MDS on the storage network) sends a create-with-delegation reply to a mounted client containing a single delegated inode interval with len set to 2^64-1. The client enters the ceph_parse_deleg_inos() insert loop and spins indefinitely, consuming 100% of a CPU core, or the attacker sends repeated replies accumulating millions of xarray entries until kernel memory is exhausted and the host OOM-kills processes or panics. No public proof-of-concept code has been identified.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 13, 2026

Uncontrolled resource consumption in the Linux kernel Ceph client's ceph_parse_deleg_inos() function allows a malicious or compromised Ceph MDS (Metadata Server) to trigger denial of service against any connected client. The 64-bit interval length field in MDS create-with-delegation replies is decoded without value validation, enabling a crafted reply to spin the client's insert loop indefinitely or grow the per-session delegated-inode xarray without bound, exhausting CPU or kernel memory. No public exploit code exists and no CISA KEV listing is present, consistent with the EPSS score of 0.21%.

RemediationAI

Upgrade to Linux 6.18.51, 7.2.4, or 7.3-rc1, which contain the atomic cap enforcement in ceph_insert_deleg_ino() and the per-reply interval aggregate bound. Upstream fix commits are available at https://git.kernel.org/stable/c/c040e139f1a629b767f900bbbc3f9892c290ed85 (7.2.x), https://git.kernel.org/stable/c/4bd3158bd62466d57ed72a3f7bc5f205fedd6919 (6.18.x), and https://git.kernel.org/stable/c/f341270ac5f5077804d7837ce77b0f0df1cea29d (7.3-rc1). For systems that cannot be patched immediately, strictly restrict network access to MDS nodes so only authorized storage-network hosts can send responses to Ceph clients; this does not eliminate the risk if an MDS is internally compromised but eliminates external MDS impersonation. Disabling Ceph entirely is a complete workaround with obvious operational impact. No configuration toggle exists to disable delegated inode parsing independently of the filesystem mount.

Affected VersionsENISA

Linux 5.7
Linux patch: 7.2.4
Linux d4846487870897a5a149a3220c95bfd5728f9247 <c040e139f1a629b767f900bbbc3f9892c290ed85
Linux d4846487870897a5a149a3220c95bfd5728f9247 <4bd3158bd62466d57ed72a3f7bc5f205fedd6919
Linux patch: 0
Linux d4846487870897a5a149a3220c95bfd5728f9247 <f341270ac5f5077804d7837ce77b0f0df1cea29d
Linux patch: 7.3-rc1
Linux patch: 6.18.51

Affected Packages

euvd linux no fix

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 affected code resides in the Ceph distributed filesystem client (fs/ceph/) introduced in Linux 5.7 to support delegated inode allocation. ceph_parse_deleg_inos() decodes intervals of delegated inode numbers from MDS create-with-delegation protocol replies using ceph_decode_64_safe(), a macro that validates only byte presence in the message buffer, not the 64-bit value itself. The decoded len field is then used as an uncapped loop trip count while inserting entries into s_delegated_inos, an xarray per session. The root cause maps to CWE-400 (Uncontrolled Resource Consumption): no upper bound was enforced on the interval length per reply or on the total per-session delegated inode population. The fix introduces an atomic counter per session incremented exclusively through ceph_insert_deleg_ino() using atomic_add_unless() against a constant cap CEPH_MAX_DELEG_INOS, and separately caps aggregate interval length accepted from a single reply, bounding both the per-reply loop count and the cross-reply xarray growth.

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

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

AC:H because exploitation requires a compromised or impersonated MDS; no confidentiality or integrity impact per description.

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

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

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

Lifecycle Timeline

4
CVSS changed
Sep 13, 2026 - 07:22 NVD
7.5 (HIGH)
Patch available
Sep 11, 2026 - 21:18 EUVD
CVE Published
Sep 11, 2026 - 19:45 cve.org
HIGH 7.5
CVE Published
Sep 11, 2026 - 19:45 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

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

ceph: cap delegated inode count in ceph_parse_deleg_inos()

ceph_parse_deleg_inos() decodes interval sets of delegated inode numbers from an MDS create-with-delegation reply. For each set it reads a 64-bit start and a 64-bit len with ceph_decode_64_safe(), which only validates that the eight bytes are present in the message, not the value, and then loops over len while inserting entries into s_delegated_inos.

len is fully attacker controlled. A malicious or compromised MDS can send one huge interval, many intervals in one reply, duplicate intervals, or repeated replies that accumulate delegated inodes on the same session. The original code bounded none of these and could spin the insert loop or grow the xarray without limit.

Bound both dimensions with a single enforcement point. Track the number of delegated inodes held by each MDS session in an atomic counter and grow it only in ceph_insert_deleg_ino(), which uses atomic_add_unless() to refuse to push the count past CEPH_MAX_DELEG_INOS. Because that helper is the only place the counter grows, the per-session population can never exceed the cap, so no separate per-session pre-check is needed. The counter is decremented when async create consumes a delegated inode or when an insert fails, incremented when a delegated inode is restored, initialized with the session xarray, and reset when reconnect destroys the xarray.

A per-session cap alone still lets one reply spin the insert loop on duplicate ranges without growing the counter, so also cap the aggregate interval length accepted from a single reply. Together these bound both the loop trip count per reply and the xarray population across replies.

The cap is a fixed, client-chosen constant rather than a value derived from the MDS. mds_client_prealloc_inos is a userspace MDS configuration option; it is never sent to the kernel client on the wire, and a server-supplied bound could not be trusted for a defensive limit in any case. The constant is set well above that option's documented default of 1000 (a generous multiple), so legitimate refill behavior is unaffected while the CPU and xarray memory a malformed delegation stream can consume stays bounded.

Impact: a malicious or compromised Ceph MDS can no longer make a client spin through an unbounded delegated-inode interval or grow one session's delegated-inode xarray without limit.

Executive ViewAI

Why It Matters

The Linux kernel Ceph distributed storage client is vulnerable to denial-of-service attacks when connected to a compromised metadata server. An attacker with control of a Ceph metadata server could craft malicious responses that consume unlimited CPU and memory on client systems, disrupting storage access across dependent applications and potentially halting business operations that depend on distributed storage infrastructure.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 89% exploitable
Prevalence
Medium
Ceph client common in Linux cloud and HPC storage clusters
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 HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

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 Availability Extension 16.0 Affected

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