Skip to main content
← All vulnerabilities
CVE-2025-38231

nfsd: Initialize ssc before laundromat_work to prevent NULL dereference

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.10.239, 5.15.186, 6.1.142, 6.6.95, 6.12.35, and 1 more
None on Exploit-DB, Metasploit or GitHub

Summary

In the Linux kernel, the following vulnerability has been resolved: nfsd: Initialize ssc before laundromat_work to prevent NULL dereference In nfs4_state_start_net(), laundromat_work may access nfsd_ssc through nfs4_laundromat -> nfsd4_ssc_expire_umount. If nfsd_ssc isn't initialized, this can cause NULL pointer dereference. Normally the delayed start of laundromat_work allows sufficient time for nfsd_ssc initialization to complete. However, when the kernel waits too long for userspace responses (e.g. in nfs4_state_start_net -> nfsd4_end_grace -> nfsd4_record_grace_done -> nfsd4_cld_grace_done -> cld_pipe_upcall -> __cld_pipe_upcall -> wait_for_completion path), the delayed work may start before nfsd_ssc initialization finishes. Fix this by moving nfsd_ssc initialization before starting laundromat_work.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From a4bc287943f5695209ff36bdc89f17b48d68fae7 · fixed in deaeb74ae9318252829c59a84a7d2316fc335660; From f4e44b393389c77958f7c58bf4415032b4cda15b · fixed in 0fccf5f01ed28725cc313a66ca1247eef911d55e; From f4e44b393389c77958f7c58bf4415032b4cda15b · fixed in a97668ec6d73dab237cd1c15efe012a10090a4ed; From f4e44b393389c77958f7c58bf4415032b4cda15b · fixed in 5060e1a5fef184bd11d298e3f0ee920d96a23236; From f4e44b393389c77958f7c58bf4415032b4cda15b · fixed in d622c2ee6c08147ab8c9b9e37d93b6e95d3258e0; From f4e44b393389c77958f7c58bf4415032b4cda15b · fixed in 83ac1ba8ca102ab5c0ed4351f8ac6e74ac4d5d64; From f4e44b393389c77958f7c58bf4415032b4cda15b · fixed in b31da62889e6d610114d81dc7a6edbcaa503fcf8; From 5.10.220 · fixed in 5.10.239

  • Linux Linux

    5.14

  • KernelLinux

    fixed in 5.10.239; From 5.11.0 · fixed in 5.15.186; From 5.14.0 · fixed in 6.1.142; From 5.16.0 · fixed in 6.6.95; From 6.2.0 · fixed in 6.12.35; From 6.7.0 · fixed in 6.15.4

References 7

git.kernel.org