CVE-2025-38508: x86/sev: Use TSC_FACTOR for Secure TSC frequency calculation
In the Linux kernel, the following vulnerability has been resolved:
x86/sev: Use TSC_FACTOR for Secure TSC frequency calculation
When using Secure TSC, the GUEST_TSC_FREQ MSR reports a frequency based on
the nominal P0 frequency, which deviates slightly (typically ~0.2%) from
the actual mean TSC frequency due to clocking parameters.
Over extended VM uptime, this discrepancy accumulates, causing clock skew
between the hypervisor and a SEV-SNP VM, leading to early timer interrupts as
perceived by the guest.
The guest kernel relies on the reported nominal frequency for TSC-based
timekeeping, while the actual frequency set during SNP_LAUNCH_START may
differ. This mismatch results in inaccurate time calculations, causing the
guest to perceive hrtimers as firing earlier than expected.
Utilize the TSC_FACTOR from the SEV firmware's secrets page (see "Secrets
Page Format" in the SNP Firmware ABI Specification) to calculate the mean
TSC frequency, ensuring accurate timekeeping and mitigating clock skew in
SEV-SNP VMs.
Use early_ioremap_encrypted() to map the secrets page as
ioremap_encrypted() uses kmalloc() which is not available during early TSC
initialization and causes a panic.
[ bp: Drop the silly dummy var:
https://lore.kernel.org/r/20250630192726.GBaGLlHl84xIopx4Pt@fat_crate.local ]
Security readout for executives and security teams
Plain-English summary
A Linux timing error can make long-running AMD SEV-SNP virtual machines drift from the hypervisor clock. Timers may appear to fire early, potentially disrupting workloads or availability. The supplied assessment rates it CVSS 7.3, primarily because availability impact may be high.
Executive priority
Treat this as a high-priority reliability issue where SEV-SNP protects important, long-running workloads. It is less urgent for environments that do not use SEV-SNP Secure TSC. Schedule vendor-approved updates promptly, while validating exposure before broad emergency action.
Technical view
Secure TSC timekeeping uses the nominal P0 frequency reported by GUEST_TSC_FREQ, although the actual mean frequency may differ by about 0.2%. Accumulated skew affects hrtimer behavior in SEV-SNP guests. The kernel fix calculates frequency using firmware TSC_FACTOR and maps the secrets page safely during early initialization.
Likely exposure
Exposure appears limited to Linux systems using Secure TSC in AMD SEV-SNP virtual machines. The supplied version data identifies 6.14, 6.15.7, and 6.16 as affected, but also contains an ambiguous โ0โ entry. Confirm exact distribution-specific ranges and backports with the vendor.
Exploitation context
The CVSS vector describes local attack proximity without required privileges or user interaction. However, the source bundle provides no exploit method or evidence of active exploitation, and the CVE is not listed as KEV. The documented failure is accumulated clock skew and inaccurate guest timer behavior.
Researcher notes
The correction consumes TSC_FACTOR from the SEV firmware secrets page to derive mean TSC frequency. Early initialization requires early_ioremap_encrypted because ioremap_encrypted depends on unavailable kmalloc and can panic. No CWE is supplied, and the provided version metadata is insufficiently clear for definitive range mapping.
Mitigation direction
Apply vendor-supported kernel updates containing the referenced stable fixes.
Prioritize long-running SEV-SNP guests using Secure TSC.
Check distribution advisories for exact affected versions and backport status.
Monitor affected guests for clock drift and abnormal timer behavior until updated.
Validation and detection
Inventory Linux kernel versions across SEV-SNP hosts and guests.
Confirm whether Secure TSC is enabled in each potentially affected environment.
Verify the vendor kernel includes either referenced fix or an equivalent backport.
After updating, monitor clock alignment and timer behavior during extended VM uptime.
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-38508 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.
1CVSS vectors
3Timeline events
0ADP providers
3Source links
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.