CVE-2025-38675: xfrm: state: initialize state_ptrs earlier in xfrm_state_find
In the Linux kernel, the following vulnerability has been resolved:
xfrm: state: initialize state_ptrs earlier in xfrm_state_find
In case of preemption, xfrm_state_look_at will find a different
pcpu_id and look up states for that other CPU. If we matched a state
for CPU2 in the state_cache while the lookup started on CPU1, we will
jump to "found", but the "best" state that we got will be ignored and
we will enter the "acquire" block. This block uses state_ptrs, which
isn't initialized at this point.
Let's initialize state_ptrs just after taking rcu_read_lock. This will
also prevent a possible misuse in the future, if someone adjusts this
function.
Security readout for executives and security teams
Plain-English summary
CVE-2025-38675 is a Linux kernel bug in XFRM, the subsystem commonly used for IPsec policy and state handling. A timing issue during CPU preemption can leave an internal pointer set uninitialized. The public record does not state a concrete impact such as crash, privilege escalation, or data exposure.
Executive priority
Track this in the normal kernel patch program, with higher priority for systems providing VPN, IPsec, or network security services. Urgency is constrained by missing severity, missing CVSS, and no cited exploitation evidence.
Technical view
In xfrm_state_find, preemption can make xfrm_state_look_at use a different per-CPU ID than the lookup started with. A matched cached state may jump to the found path, but the best state is ignored and execution enters acquire logic using uninitialized state_ptrs. Stable commits move state_ptrs initialization earlier after rcu_read_lock.
Likely exposure
Exposure is limited to Linux kernels containing the affected XFRM state lookup code. Systems using IPsec, XFRM policies, VPN gateways, container hosts, or network appliances are more plausible candidates for review, but the source bundle does not define exact deployment prerequisites.
Exploitation context
The bundle marks KEV as false and provides no evidence of active exploitation, public exploit availability, or attacker prerequisites. Treat this as a kernel memory-safety correctness issue with incomplete public impact detail.
Researcher notes
The key condition is preemption causing a per-CPU lookup mismatch before state_ptrs initialization. The fix is defensive initialization placement, not a documented exploit mitigation. Public sources do not define affected commit ranges clearly enough for independent exploitability conclusions.
Mitigation direction
Apply the relevant Linux stable kernel fix from vendor-supported packages.
Prioritize hosts using IPsec, XFRM, VPN, or network gateway functions.
Check distribution advisories for backported fixes before relying on upstream version numbers.
If no package is available, follow vendor kernel guidance for supported remediation.
Validation and detection
Inventory running Linux kernel versions across exposed and critical systems.
Review kernel package changelogs for the referenced stable commit IDs.
Identify systems with active IPsec or XFRM policy usage.
Confirm patched kernels are booted, not only installed.
Monitor vendor advisories for severity or impact clarification.
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-38675 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
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.
0CVSS vectors
3Timeline events
0ADP providers
4Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
Aug 22, 2025, 16:04 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.