VulnTideExploited vulnerabilities, by vendor. Data as of .
Not in CISA KEVPublished CVSS 9.8 criticalEPSS 0.4% probability of exploitation in 30 days
Linux

CVE-2026-89675: nfsd: fix UAF in async copy cancel and shutdown

Is it exploited?

Not on CISA's list. CISA has not added it to the Known Exploited Vulnerabilities catalog as of . If CISA adds it, this page shows it as known exploited.

How likely is exploitation in the next 30 days?
0.4%

EPSS score, percentile 38.4 of all scored records. A probability estimated by FIRST, not a report of exploitation.

How severe?
9.8 Critical

CVSS v3.1 base score, given by the CNA

What should I do?

CISA has set no required action, because the vulnerability is not in KEV.

The CVE record links no vendor advisory, patch or mitigation.

Which versions are affected?

Affected

  • 4.20

Unaffected before 4.20; 6.18.51; 7.2.4; 7.3

Versions by product

Source: CISA KEV 2026.10.29, as of ; FIRST EPSS, as of ; CVE List, as of . About the data.

What to do

Advisories and patches

The CVE record links no vendor advisory, patch or mitigation.

This summary is based on the CVE record as of . Check the vendor's advisory before you act: affected versions and fixes can change.

Affected products and versions

As listed in the CVE record.

Linux Linux
StatusVersions
Affectedfrom e0639dc5805a to before 9031493ef736
Affectedfrom e0639dc5805a to before a385cf5e016b
Affectedfrom e0639dc5805a to before 62c0f6eaf050

Versions not listed are: unaffected.

Linux Linux
StatusVersions
Affected4.20
Unaffectedbefore 4.20
Unaffected6.18.51
Unaffected7.2.4
Unaffected7.3

Versions not listed are: affected.

Versions the record lists as unaffected: 6.18.51, 7.2.4, 7.3.

Source: CVE List, as of . About the data.

About this vulnerability

In the Linux kernel, the following vulnerability has been resolved: nfsd: fix UAF in async copy cancel and shutdown An async copy could be freed or used after free while a teardown caller (OFFLOAD_CANCEL, nfsd4_shutdown_copy, nfsd4_cancel_copy_by_sb) raced the copy kthread: - find_async_copy() bumped copy->refcount but left the copy on clp->async_copies, so the reaper's cleanup_async_cop…

Summary: CVE record, as of .

  • CISA has not added CVE-2026-89675 to its Known Exploited Vulnerabilities (KEV) catalog, as of 29 Oct 2026.
  • The CVE record was published on 11 Sep 2026.
  • The CVE record carries a CVSS v3.1 base score of 9.8 (Critical), given by its CNA.
  • FIRST's EPSS model puts the probability of exploitation in the next 30 days at 0.4% (percentile 38.4), as of 29 Oct 2026. EPSS is a statistical estimate, not a report of exploitation.
  • CISA's SSVC assessment in the CVE record: exploitation none, automatable yes, technical impact total.

Source: CISA KEV 2026.10.29, as of ; CVE List, as of ; FIRST EPSS, as of . About the data.

Description

nfsd: fix UAF in async copy cancel and shutdown

In the Linux kernel, the following vulnerability has been resolved: nfsd: fix UAF in async copy cancel and shutdown An async copy could be freed or used after free while a teardown caller (OFFLOAD_CANCEL, nfsd4_shutdown_copy, nfsd4_cancel_copy_by_sb) raced the copy kthread: - find_async_copy() bumped copy->refcount but left the copy on clp->async_copies, so the reaper's cleanup_async_copy() could run release_copy_files() concurrently with a cancel/shutdown caller. Both put and NULL nf_src/nf_dst without a common lock, double-putting the nfsd_file and freeing it early. - nfsd4_do_async_copy() set NFSD4_COPY_F_STOPPED before its final uses of the copy (nfsd_update_cmtime_attr() on copy->nf_dst, nfsd4_send_cb_offload()). nfsd4_stop_copy() treats a set STOPPED bit as "kthread done, skip kthread_stop()", so a teardown caller ran release_copy_files() -- which puts and NULLs nf_dst -- while the kthread still dereferenced it (NULL/UAF). - copy->copy_task was never pinned. The one-shot kthread self-reaps on return, so kthread_stop()'s get_task_struct() could touch a freed task_struct. - co_cb is embedded in the copy, but nfsd4_send_cb_offload() held a reference only on the client, so a concurrent teardown could free the copy while the CB_OFFLOAD callback was in flight. Fix the teardown lifetime as a whole: - find_async_copy() unlinks the copy (clear cp_clp, list_del_init) under async_lock; the cancel, shutdown, and sb-cancel paths drop the list-membership reference via nfs4_put_copy() after nfsd4_stop_copy(). Drop the now-redundant list_del fixup from cleanup_async_copy(). - Because unlinking hides the copy from the reaper, its cleanup_async_copy() can no longer remove the copy's s2s_cp_stateids entry; the cancel/shutdown/sb-cancel paths now call nfs4_free_copy_state() themselves (while cp_clp is still valid) so the entry does not dangle at freed memory for the laundromat and manage_cpntf_state() to dereference. - Give the kthread its own reference, taken in nfsd4_copy() before wake_up_process() and dropped at the end of nfsd4_do_async_copy(); call wake_up_process() before list_add(). - Pin the task_struct with get_task_struct() in nfsd4_copy(), released in nfs4_put_copy(), so kthread_stop() is safe whenever the kthread exits. Set NFSD4_COPY_F_STOPPED only in nfsd4_stop_copy(), which now always kthread_stop()s before release_copy_files(); completion is still reported via NFSD4_COPY_F_COMPLETED, so nfsd4_has_active_async_copies() is unaffected. Each teardown caller removes the copy from clp->async_copies first, so kthread_stop() runs exactly once. - Take a copy reference in nfsd4_send_cb_offload(), dropped in nfsd4_cb_offload_release(). The kthread still holds its own reference there, so the refcount_inc() cannot race the final free. - Read cp_clp with smp_load_acquire() to pair with the unordered set_bit()/clear_bit() writers (Documentation/atomic_bitops.rst).

Source: CVE List, as of . About the data.

Timeline

DateEvent
CVE record published
CVE record last updated

References

3

Known exploited Linux vulnerabilities

  • CVE-2026-46300: Linux Kernel Missing Initialization of a Variable Vulnerability (added )
  • CVE-2025-39682: Linux Kernel Improper Check for Unusual or Exceptional Conditions Vulnerability (added )
  • CVE-2025-39964: Linux Kernel Race Condition Vulnerability (added )
  • CVE-2026-53266: Linux Kernel Out-of-Bounds Write Vulnerability (added )
  • CVE-2026-53362: Linux Kernel Unspecified Vulnerability (added )