Vulnerability · Published Jul 5, 2024 · Assigned by Linux

CVE-2024-39483KVM: SVM: WARN on vNMI + NMI window iff NMIs are outright masked

High 7.1

In plain English

A high-severity security flaw in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 13% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)7.1High
Exploit odds (30 days)0.2%top 86.8% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

In the Linux kernel, the following vulnerability has been resolved: KVM: SVM: WARN on vNMI + NMI window iff NMIs are outright masked When requesting an NMI window, WARN on vNMI support being enabled if and only if NMIs are actually masked, i.e. if the vCPU is already handling an NMI. KVM's ABI for NMIs that arrive simultanesouly (from KVM's point of view) is to inject one NMI and pend the other. When using vNMI, KVM pends the second NMI simply by setting V_NMI_PENDING, and lets the CPU do the rest (hardware automatically sets V_NMI_BLOCKING when an NMI is injected). However, if KVM can't immediately inject an NMI, e.g. because the vCPU is in an STI shadow or is running with GIF=0, then KVM will request an NMI window and trigger the WARN (but still function correctly). Whether or not the GIF=0 case makes sense is debatable, as the intent of KVM's behavior is to provide functionality that is as close to real hardware as possible. E.g. if two NMIs are sent in quick succession, the probability of both NMIs arriving in an STI shadow is infinitesimally low on real hardware, but significantly larger in a virtual environment, e.g. if the vCPU is preempted in the STI shadow. For GIF=0, the argument isn't as clear cut, because the window where two NMIs can collide is much larger in bare metal (though still small). That said, KVM should not have divergent behavior for the GIF=0 case based on whether or not vNMI support is enabled. And KVM has allowed simultaneous NMIs with GIF=0 for over a decade, since commit 7460fb4a3400 ("KVM: Fix simultaneous NMIs"). I.e. KVM's GIF=0 handling shouldn't be modified without a *really* good reason to do so, and if KVM's behavior were to be modified, it should be done irrespective of vNMI support.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
AlmaLinux:9bpftool7.3.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-debug5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-debug-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-debug-devel5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-debug-devel-matched5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-debug-modules5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-debug-modules-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-debug-modules-extra5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-devel5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-devel-matched5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-modules5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-modules-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-64k-modules-extra5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-abi-stablelists5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-cross-headers5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-debug5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-debug-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-debug-devel5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-debug-devel-matched5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-debug-modules5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-debug-modules-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-debug-modules-extra5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-debug-uki-virt5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-devel5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-devel-matched5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-doc5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-headers5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-modules5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-modules-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-modules-extra5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-rt5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-rt-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-rt-debug5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-rt-debug-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-rt-debug-devel5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-rt-debug-modules5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-rt-debug-modules-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-rt-debug-modules-extra5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-rt-devel5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-rt-modules5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-rt-modules-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-rt-modules-extra5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-tools5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-tools-libs5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-tools-libs-devel5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-uki-virt5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-zfcpdump5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-zfcpdump-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-zfcpdump-devel5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-zfcpdump-devel-matched5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-zfcpdump-modules5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-zfcpdump-modules-core5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9kernel-zfcpdump-modules-extra5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9libperf5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9perf5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9python3-perf5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9rtla5.14.0-427.40.1.el9_4ALSA-2024:8162
AlmaLinux:9rv5.14.0-427.40.1.el9_4ALSA-2024:8162
Debian:13linux6.9.7-1DEBIAN-CVE-2024-39483
Debian:14linux6.9.7-1DEBIAN-CVE-2024-39483
Rocky Linux:9kernel0:5.14.0-427.40.1.el9_4RLSA-2024:8162
Ubuntu:24.04:LTSlinux6.8.0-44.44UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-allwinner-5.19no fix listedUBUNTU-CVE-2024-39483
Ubuntu:24.04:LTSlinux-aws6.8.0-1015.16UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-aws-5.19no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-aws-6.2no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-aws-6.5no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-aws-6.86.8.0-1015.16~22.04.1UBUNTU-CVE-2024-39483
Ubuntu:24.04:LTSlinux-azure6.8.0-1014.16UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-azure-5.19no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-azure-6.2no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-azure-6.5no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-azure-6.86.8.0-1014.16~22.04.1UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-azure-fde-5.19no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-azure-fde-6.2no fix listedUBUNTU-CVE-2024-39483
Ubuntu:24.04:LTSlinux-gcp6.8.0-1014.16UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-gcp-5.19no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-gcp-6.2no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-gcp-6.5no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-gcp-6.86.8.0-1014.16~22.04.1UBUNTU-CVE-2024-39483
Ubuntu:24.04:LTSlinux-gke6.8.0-1010.13UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-hwe-5.19no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-hwe-6.2no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-hwe-6.5no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-hwe-6.86.8.0-45.45~22.04.1UBUNTU-CVE-2024-39483
Ubuntu:24.04:LTSlinux-ibm6.8.0-1012.12UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-intel-iot-realtimeno fix listedUBUNTU-CVE-2024-39483
Ubuntu:24.04:LTSlinux-lowlatency6.8.0-44.44.1UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-lowlatency-hwe-5.19no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.2no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.5no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.86.8.0-44.44.1~22.04.1UBUNTU-CVE-2024-39483
Ubuntu:24.04:LTSlinux-nvidia6.8.0-1013.14UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-nvidia-6.2no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-nvidia-6.5no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-nvidia-6.86.8.0-1013.14~22.04.1UBUNTU-CVE-2024-39483
Ubuntu:24.04:LTSlinux-nvidia-lowlatency6.8.0-1013.14.1UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-oem-5.17no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-oem-6.0no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-oem-6.1no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-oem-6.5no fix listedUBUNTU-CVE-2024-39483
Ubuntu:24.04:LTSlinux-oem-6.86.8.0-1012.12UBUNTU-CVE-2024-39483
Ubuntu:24.04:LTSlinux-oracle6.8.0-1012.12UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-oracle-6.5no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-oracle-6.86.8.0-1012.12~22.04.1UBUNTU-CVE-2024-39483
Ubuntu:24.04:LTSlinux-raspi6.8.0-1011.12UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-realtimeno fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-riscvno fix listedUBUNTU-CVE-2024-39483
Ubuntu:24.04:LTSlinux-riscv6.8.0-44.44.1UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-riscv-5.19no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-riscv-6.5no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-riscv-6.86.8.0-44.44.1~22.04.1UBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-starfive-5.19no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-starfive-6.2no fix listedUBUNTU-CVE-2024-39483
Ubuntu:22.04:LTSlinux-starfive-6.5no fix listedUBUNTU-CVE-2024-39483

Affected products (as reported)

VendorProductVersions
Linux Linux fa4c027a7956f5e07697bfcb580d25eeb8471257 – before f79edaf7370986d73d204b36c50cc563a4c0f356fa4c027a7956f5e07697bfcb580d25eeb8471257 – before 1d87cf2eba46deaff6142366127f2323de9f84d1fa4c027a7956f5e07697bfcb580d25eeb8471257 – before b4bd556467477420ee3a91fbcba73c579669edc6
Linux Linux 6.4

References