CVE-2023-53208: KVM: nSVM: Load L1's TSC multiplier based on L1 state, not L2 state
In the Linux kernel, the following vulnerability has been resolved:
KVM: nSVM: Load L1's TSC multiplier based on L1 state, not L2 state
When emulating nested VM-Exit, load L1's TSC multiplier if L1's desired
ratio doesn't match the current ratio, not if the ratio L1 is using for
L2 diverges from the default. Functionally, the end result is the same
as KVM will run L2 with L1's multiplier if L2's multiplier is the default,
i.e. checking that L1's multiplier is loaded is equivalent to checking if
L2 has a non-default multiplier.
However, the assertion that TSC scaling is exposed to L1 is flawed, as
userspace can trigger the WARN at will by writing the MSR and then
updating guest CPUID to hide the feature (modifying guest CPUID is
allowed anytime before KVM_RUN). E.g. hacking KVM's state_test
selftest to do
vcpu_set_msr(vcpu, MSR_AMD64_TSC_RATIO, 0);
vcpu_clear_cpuid_feature(vcpu, X86_FEATURE_TSCRATEMSR);
after restoring state in a new VM+vCPU yields an endless supply of:
------------[ cut here ]------------
WARNING: CPU: 10 PID: 206939 at arch/x86/kvm/svm/nested.c:1105
nested_svm_vmexit+0x6af/0x720 [kvm_amd]
Call Trace:
nested_svm_exit_handled+0x102/0x1f0 [kvm_amd]
svm_handle_exit+0xb9/0x180 [kvm_amd]
kvm_arch_vcpu_ioctl_run+0x1eab/0x2570 [kvm]
kvm_vcpu_ioctl+0x4c9/0x5b0 [kvm]
? trace_hardirqs_off+0x4d/0xa0
__se_sys_ioctl+0x7a/0xc0
__x64_sys_ioctl+0x21/0x30
do_syscall_64+0x41/0x90
entry_SYSCALL_64_after_hwframe+0x63/0xcd
Unlike the nested VMRUN path, hoisting the svm->tsc_scaling_enabled check
into the if-statement is wrong as KVM needs to ensure L1's multiplier is
loaded in the above scenario. Alternatively, the WARN_ON() could simply
be deleted, but that would make KVM's behavior even more subtle, e.g. it's
not immediately obvious why it's safe to write MSR_AMD64_TSC_RATIO when
checking only tsc_ratio_msr.
Security readout for executives and security teams
Plain-English summary
CVE-2023-53208 is a Linux KVM issue in AMD nested virtualization handling. A local user with access to KVM can trigger repeated kernel warnings by manipulating guest CPU state before running a VM, creating an availability risk on affected hosts.
Executive priority
Prioritize shared virtualization hosts and CI infrastructure where local users or tenants can access KVM. Treat as a timely patching issue, not an emergency internet-exposed risk based on current evidence.
Technical view
The flaw is in KVM nSVM nested VM-exit TSC multiplier handling. KVM checked L2/default TSC state and asserted TSC scaling exposure to L1, but userspace could write MSR_AMD64_TSC_RATIO and later hide TSCRATEMSR in guest CPUID before KVM_RUN, triggering WARN in nested_svm_vmexit.
Likely exposure
Exposure is most likely on Linux virtualization hosts using AMD KVM with nested virtualization and local or tenant-controlled access to KVM ioctls. Internet-facing services are not directly implicated by the provided sources.
Exploitation context
The CVSS vector is local, low complexity, low privilege, no user interaction, and high availability impact. KEV is false, and the provided sources do not report active exploitation in the wild.
Researcher notes
The source describes a reachable WARN caused by inconsistent MSR and CPUID state before KVM_RUN. The exact affected version ranges and distribution backports require vendor confirmation; do not assume all kernels in a numeric range remain vulnerable.
Mitigation direction
Apply Linux kernel updates that include the referenced stable fixes.
Check distribution vendor advisories for fixed kernel packages.
Restrict /dev/kvm access to trusted users and workloads.
Review whether nested virtualization is required on shared hosts.
Validation and detection
Inventory Linux KVM hosts using AMD SVM nested virtualization.
Compare installed kernel builds against vendor fixed versions or stable commits.
Check whether the referenced KVM nSVM patch is present.
Review kernel logs for repeated nested_svm_vmexit WARN events.
Confirm untrusted users cannot create or control KVM VMs.
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-2023-53208 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.
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.