LiveActive security incident?Get immediate response
CVE Record

CVE-2025-38232: NFSD: fix race between nfsd registration and exports_proc

In the Linux kernel, the following vulnerability has been resolved: NFSD: fix race between nfsd registration and exports_proc As of now nfsd calls create_proc_exports_entry() at start of init_nfsd and cleanup by remove_proc_entry() at last of exit_nfsd. Which causes kernel OOPs if there is race between below 2 operations: (i) exportfs -r (ii) mount -t nfsd none /proc/fs/nfsd for 5.4 kernel ARM64: CPU 1: el1_irq+0xbc/0x180 arch_counter_get_cntvct+0x14/0x18 running_clock+0xc/0x18 preempt_count_add+0x88/0x110 prep_new_page+0xb0/0x220 get_page_from_freelist+0x2d8/0x1778 __alloc_pages_nodemask+0x15c/0xef0 __vmalloc_node_range+0x28c/0x478 __vmalloc_node_flags_caller+0x8c/0xb0 kvmalloc_node+0x88/0xe0 nfsd_init_net+0x6c/0x108 [nfsd] ops_init+0x44/0x170 register_pernet_operations+0x114/0x270 register_pernet_subsys+0x34/0x50 init_nfsd+0xa8/0x718 [nfsd] do_one_initcall+0x54/0x2e0 CPU 2 : Unable to handle kernel NULL pointer dereference at virtual address 0000000000000010 PC is at : exports_net_open+0x50/0x68 [nfsd] Call trace: exports_net_open+0x50/0x68 [nfsd] exports_proc_open+0x2c/0x38 [nfsd] proc_reg_open+0xb8/0x198 do_dentry_open+0x1c4/0x418 vfs_open+0x38/0x48 path_openat+0x28c/0xf18 do_filp_open+0x70/0xe8 do_sys_open+0x154/0x248 Sometimes it crashes at exports_net_open() and sometimes cache_seq_next_rcu(). and same is happening on latest 6.14 kernel as well: [ 0.000000] Linux version 6.14.0-rc5-next-20250304-dirty ... [ 285.455918] Unable to handle kernel paging request at virtual address 00001f4800001f48 ... [ 285.464902] pc : cache_seq_next_rcu+0x78/0xa4 ... [ 285.469695] Call trace: [ 285.470083] cache_seq_next_rcu+0x78/0xa4 (P) [ 285.470488] seq_read+0xe0/0x11c [ 285.470675] proc_reg_read+0x9c/0xf0 [ 285.470874] vfs_read+0xc4/0x2fc [ 285.471057] ksys_read+0x6c/0xf4 [ 285.471231] __arm64_sys_read+0x1c/0x28 [ 285.471428] invoke_syscall+0x44/0x100 [ 285.471633] el0_svc_common.constprop.0+0x40/0xe0 [ 285.471870] do_el0_svc_compat+0x1c/0x34 [ 285.472073] el0_svc_compat+0x2c/0x80 [ 285.472265] el0t_32_sync_handler+0x90/0x140 [ 285.472473] el0t_32_sync+0x19c/0x1a0 [ 285.472887] Code: f9400885 93407c23 937d7c27 11000421 (f86378a3) [ 285.473422] ---[ end trace 0000000000000000 ]--- It reproduced simply with below script: while [ 1 ] do /exportfs -r done & while [ 1 ] do insmod /nfsd.ko mount -t nfsd none /proc/fs/nfsd umount /proc/fs/nfsd rmmod nfsd done & So exporting interfaces to user space shall be done at last and cleanup at first place. With change there is no Kernel OOPs.

HighCVSS 7.8Not KEV-listedUpdated
Glexia's TakeAutomated analysishigh

Security readout for executives and security teams

Plain-English summary

A local race in Linux NFSD can crash the kernel when NFS exports are refreshed while the NFSD proc interface is being mounted or its module lifecycle changes. This can disrupt NFS servers and dependent workloads. The supplied evidence demonstrates kernel crashes, but not remote exploitation or successful system compromise.

Executive priority

Prioritize remediation for NFS servers, shared Linux hosts, and systems with automated export or module management. Treat this as an accelerated maintenance issue because a local race can crash the kernel and interrupt services. The supplied evidence does not support emergency internet-exposure response or claims of active exploitation.

Technical view

NFSD exposed its proc exports interface before initialization completed and removed it after teardown began. Concurrent export refresh and NFSD registration could therefore access invalid state, causing NULL dereferences or paging faults in exports_net_open or cache_seq_next_rcu. The referenced fixes publish user-space interfaces last and remove them first.

Likely exposure

Exposure is most likely on Linux systems running or dynamically managing NFSD, particularly where local users or automation can concurrently refresh exports and change NFSD mounts or module state. The source reproduced crashes on ARM64 kernels 5.4 and 6.14; exact affected build boundaries require vendor verification.

Exploitation context

The CVSS vector describes local, low-complexity exploitation requiring low privileges and no user interaction. However, the demonstrated operations may require elevated capabilities depending on configuration. This CVE is not listed as KEV, and the supplied sources provide no evidence of active exploitation or a public weaponized exploit.

Researcher notes

The strongest demonstrated impact is kernel OOPS on ARM64 5.4 and 6.14. Although CVSS 7.8 assigns high confidentiality, integrity, and availability impacts, the supplied traces establish crashing rather than data disclosure or code execution. The version data mixes release numbers, commit hashes, and default statuses, so downstream vendor mapping is essential.

Mitigation direction

  • Identify Linux systems providing NFS through NFSD or dynamically loading its module.
  • Compare running kernel builds with distribution advisories and the referenced stable fixes.
  • Install vendor-provided kernel updates incorporating the applicable NFSD race fix.
  • Reboot where required so systems run the corrected kernel.
  • Until updated, consult vendor guidance for supported risk-reduction measures.

Validation and detection

  • Confirm the running kernel package includes the applicable NFSD stable fix.
  • Verify systems booted into the updated kernel after maintenance.
  • Review kernel logs for OOPS entries involving exports_net_open or cache_seq_next_rcu.
  • Validate NFS exports and dependent workloads after updating.
  • Do not attempt race reproduction on production systems.
Prepared
Confidence
medium
Sources
8

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cve · low confidence lookup

CVE-2025-38232 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
High
CVSS
7.8 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
3Timeline events
2ADP providers
8Source links

SSVC decision data

CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: partial

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
7.8CVSS 3.1HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H1.85.9Linux

Vulnerability scoring details

Base CVSS 3.1 score

7.8High
CVSS 3.1 vector shape for CVE-2025-38232Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CISA-ADPCISA ADP Vulnrichment
other:ssvc
siemens-SADPADP container
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinuxbd5ae9288d6451bd346a1b4a59d4fe7e62ba29b7, bd5ae9288d6451bd346a1b4a59d4fe7e62ba29b7, bd5ae9288d6451bd346a1b4a59d4fe7e62ba29b7, bd5ae9288d6451bd346a1b4a59d4fe7e62ba29b7, bd5ae9288d6451bd346a1b4a59d4fe7e62ba29b7, bd5ae9288d6451bd346a1b4a59d4fe7e62ba29b7, 8677e99150b0830d29cc1318b4cc559e176940bb, 7c7cb07d4affcf41749234fe9dc4d90cd3959e32, 4d41f65efeec0a6da6088341203c81e49ebfcd90, 5.4.102, 5.10.20, 5.11.3unaffected
LinuxLinux5.12, 0, 5.15.199, 6.1.162, 6.6.122, 6.12.35, 6.15.4, 6.16affected
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.