CVE Catalog

CVE-2026-89676

CriticalCVSS 9.8
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.17%

6th percentile - higher than 6% of all known CVEs

Summary

In the Linux kernel, nfsd4_copy() for async COPY has an initialization order bug. nfs4_init_copy_state() is called before dup_copy_fields(), so the s2s_cp_stateids IDR entry points to the COMPOUND buffer memory that is reused by the next request. This can lead to use-after-free or memory corruption, causing kernel crashes or potential code execution.

Risk Assessment

This can lead to kernel memory corruption, system crash, or potential code execution. The vulnerability is related to asynchronous COPY operations in NFS.

Recommendation

Update the Linux kernel to a version containing the fix that duplicates the fields first and then registers the stateid on the stable async_copy. Monitor NFS servers for abnormal COPY operations.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: nfsd: fix stale s2s_cp_stateids IDR entry for async COPY For an async COPY, nfsd4_copy() called nfs4_init_copy_state() before dup_copy_fields(), so the s2s_cp_stateids IDR was pointed at &u->copy->cp_stateid -- memory in the per-rqstp COMPOUND buffer that is reused by the next request. dup_copy_fields() copies only the value into async_copy, so the IDR slot dangled at the transient buffer for the whole background copy. Any IDR walker then dereferences reused request memory: the laundromat reads cs_type from it and, if the bytes look like an expired NFS4_COPYNOTIFY_STID, follows into refcount_dec()/idr_remove()/kfree() on garbage; manage_cpntf_state() has the same exposure via idr_find(). Duplicate the fields first, then register the stateid on the stable async_copy. result->cb_stateid is unchanged.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS