Skip to main content

Linux kernel NFSD EUVDEUVD-2026-76575

| CVE-2026-89663 HIGH
2026-09-11 Linux GHSA-7jrm-g6vx-3834
8.8
CVSS 3.1 · Vendor: Linux
Share

Severity by source

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

Race condition requires AC:H; authenticated NFS client required (PR:L); primary impact is crash/DoS (A:H) with limited heap disclosure potential (C:L); no integrity impact established.

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

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

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

Lifecycle Timeline

6
Metadata Corrected
Sep 13, 2026 - 09:40 vuln.today
tag: Information Disclosure removed
Analysis Generated
Sep 13, 2026 - 09:38 vuln.today
CVSS changed
Sep 13, 2026 - 07:22 NVD
8.8 (HIGH)
Patch available
Sep 11, 2026 - 21:18 EUVD
CVE Published
Sep 11, 2026 - 19:45 cve.org
UNKNOWN (no severity yet)
CVE Published
Sep 11, 2026 - 19:45 cve.org
HIGH 8.8

DescriptionCVE.org

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

nfsd: revoke copy-notify stateids before dropping their reference

Copy-notify stateids live in the s2s_cp_stateids IDR and on their parent stid's sc_cp_list, pinned by a single membership reference. _free_cpntf_state_locked() only unlinks an entry once its refcount reaches zero, so any revoke path that runs while a concurrent find_cpntf_state()/manage_cpntf_state() holder has elevated cs_count drops the reference without unlinking, leaving the entry discoverable with its membership reference already consumed. A second revoke or a laundromat tick then frees it while the reader still holds the pointer -- a KASAN-detectable use-after-free at the reader's nfs4_put_cpntf_state().

This affected all three revoke paths:

  • The parent-stid drain (nfs4_free_cpntf_statelist()) repeatedly called

_free_cpntf_state_locked() on the first list entry; a holder that had bumped cs_count made it return early, so the next iteration re-decremented and burned the holder's reference.

  • OFFLOAD_CANCEL (manage_cpntf_state()) and laundromat expiry likewise

used _free_cpntf_state_locked() and could drop 2->1 without unlinking.

Add revoke_cpntf_state_locked(), which unhashes the entry from the IDR and sc_cp_list first (deferring the final free to any holder), and use it from all three revoke paths. The drain now walks with list_for_each_entry_safe() and revokes each entry unconditionally, so it terminates in one pass per entry regardless of cs_count. The unhash is gated on !list_empty(&cps->cp_list); the idr_remove() gate matters because idr_alloc_cyclic() may have recycled the so_id by then. Keep _free_cpntf_state_locked() for the reference-holder put path only, where a concurrent revoke may already have unlinked the entry (its list_del_init() then a no-op).

AnalysisAI

Use-after-free in Linux kernel NFSD's copy-notify stateid management (NFSv4.2 server-to-server copy) allows an authenticated NFS client to trigger a KASAN-detectable UAF at nfs4_put_cpntf_state() by racing OFFLOAD_CANCEL or laundromat expiry against concurrent stateid readers. Three separate revoke paths were affected: the parent-stid drain (nfs4_free_cpntf_statelist()), OFFLOAD_CANCEL via manage_cpntf_state(), and laundromat tick expiry. …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Recon
technique details hidden
Delivery
technique details hidden
Exploit
technique details hidden
Install
technique details hidden
C2
technique details hidden
Execute
technique details hidden
Impact
technique details hidden

Vulnerability AssessmentAI

Exploitation Requires a Linux system with NFSD running (CONFIG_NFSD) and NFSv4.2 server-to-server copy offload in active use - the copy-notify stateid code path (s2s_cp_stateids IDR) is only exercised during COPY/OFFLOAD_CANCEL operations and laundromat processing of cpntf stateids. … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment The input CVSS of 8.8 (AV:N/AC:L/PR:L/C:H/I:H/A:H) overstates real-world risk on two metrics. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario Full exploit scenario with step-by-step reproduction available after sign-in.
Remediation Upgrade to kernel 6.12.109, 6.18.50, 7.2.4, or 7.3-rc1, which introduce revoke_cpntf_state_locked() to safely unhash entries from the IDR and sc_cp_list before dropping the reference, and convert the parent-stid drain to list_for_each_entry_safe() for single-pass termination. … Detailed patch versions, workarounds, and compensating controls in full report.

Recommended ActionAI

Within 24 hours, inventory all Linux-based NFS servers in production and cross-reference kernel versions against vendor security advisories to identify affected systems. …

Sign in for detailed remediation steps and compensating controls.

Threat intelligence, references, and detailed analysis are available after sign-in.

Share

EUVD-2026-76575 vulnerability details – vuln.today

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