CVE-2017-12154
published 2017-09-26CVE-2017-12154: The prepare_vmcs02 function in arch/x86/kvm/vmx.c in the Linux kernel through 4.13.3 does not ensure that the "CR8-load exiting" and "CR8-store exiting" L0…
PriorityP431high7.1CVSS 3.0
AVLACLPRLUINSUCHIHAN
EPSS
0.51%
40.8th percentile
The prepare_vmcs02 function in arch/x86/kvm/vmx.c in the Linux kernel through 4.13.3 does not ensure that the "CR8-load exiting" and "CR8-store exiting" L0 vmcs02 controls exist in cases where L1 omits the "use TPR shadow" vmcs12 control, which allows KVM L2 guest OS users to obtain read and write access to the hardware CR8 register.
Affected
7 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| debian | linux | < linux 4.12.13-1 (bookworm) | linux 4.12.13-1 (bookworm) |
| linux | linux_kernel | <= 4.13.3 | — |
| linux | linux_kernel | >= 0 < 4.12.13-1 | 4.12.13-1 |
| linux | linux_kernel | >= 0 < 4.12.13-1 | 4.12.13-1 |
| linux | linux_kernel | >= 0 < 4.12.13-1 | 4.12.13-1 |
| linux | linux_kernel | >= 0 < 4.12.13-1 | 4.12.13-1 |
| linux | linux_kernel | >= 0 < 3.13.0-153.203 | 3.13.0-153.203 |
CVSS provenance
nvdv3.07.1HIGHCVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
nvdv2.03.6LOWAV:L/AC:L/Au:N/C:P/I:P/A:N
osv7.1HIGH
vendor_debian7.1HIGH
vendor_redhat7.1HIGH
vendor_ubuntu7.1HIGH
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
GHSA
GHSA-wjrh-v4vw-2jmc: The prepare_vmcs02 function in arch/x86/kvm/vmx
ghsa_unreviewed·2022-05-13
CVE-2017-12154 [HIGH] GHSA-wjrh-v4vw-2jmc: The prepare_vmcs02 function in arch/x86/kvm/vmx
The prepare_vmcs02 function in arch/x86/kvm/vmx.c in the Linux kernel through 4.13.3 does not ensure that the "CR8-load exiting" and "CR8-store exiting" L0 vmcs02 controls exist in cases where L1 omits the "use TPR shadow" vmcs12 control, which allows KVM L2 guest OS users to obtain read and write access to the hardware CR8 register.
OSV
linux vulnerabilities
osv·2018-07-02·CVSS 7.1
CVE-2017-12154 [HIGH] linux vulnerabilities
linux vulnerabilities
It was discovered that the nested KVM implementation in the Linux kernel in
some situations did not properly prevent second level guests from reading
and writing the hardware CR8 register. A local attacker in a guest could
use this to cause a denial of service (system crash). (CVE-2017-12154)
Fan Wu, Haoran Qiu, and Shixiong Zhao discovered that the associative array
implementation in the Linux kernel sometimes did not properly handle adding
a new entry. A local attacker could use this to cause a denial of service
(system crash). (CVE-2017-12193)
It was discovered that a race condition existed in the ALSA subsystem of
the Linux kernel when creating and deleting a port via ioctl(). A local
attacker could use this to cause a denial of service (system crash) or
possib
OSV
CVE-2017-12154: The prepare_vmcs02 function in arch/x86/kvm/vmx
osv·2017-09-26·CVSS 7.1
CVE-2017-12154 [HIGH] CVE-2017-12154: The prepare_vmcs02 function in arch/x86/kvm/vmx
The prepare_vmcs02 function in arch/x86/kvm/vmx.c in the Linux kernel through 4.13.3 does not ensure that the "CR8-load exiting" and "CR8-store exiting" L0 vmcs02 controls exist in cases where L1 omits the "use TPR shadow" vmcs12 control, which allows KVM L2 guest OS users to obtain read and write access to the hardware CR8 register.
Kernel
kvm: nVMX: Don't allow L2 to access the hardware CR8
kernel_security·2017-09-12·CVSS 7.1
CVE-2017-12154 [HIGH] kvm: nVMX: Don't allow L2 to access the hardware CR8
kvm: nVMX: Don't allow L2 to access the hardware CR8
If L1 does not specify the "use TPR shadow" VM-execution control in
vmcs12, then L0 must specify the "CR8-load exiting" and "CR8-store
exiting" VM-execution controls in vmcs02. Failure to do so will give
the L2 VM unrestricted read/write access to the hardware CR8.
This fixes CVE-2017-12154.
Signed-off-by: Jim Mattson
Reviewed-by: David Hildenbrand
Signed-off-by: Paolo Bonzini
Ubuntu
Linux kernel vulnerabilities
vendor_ubuntu·2018-07-02·CVSS 7.1
CVE-2017-12154 [HIGH] Linux kernel vulnerabilities
Title: Linux kernel vulnerabilities
Summary: Several security issues were fixed in the Linux kernel.
It was discovered that the nested KVM implementation in the Linux kernel in
some situations did not properly prevent second level guests from reading
and writing the hardware CR8 register. A local attacker in a guest could
use this to cause a denial of service (system crash). (CVE-2017-12154)
Fan Wu, Haoran Qiu, and Shixiong Zhao discovered that the associative array
implementation in the Linux kernel sometimes did not properly handle adding
a new entry. A local attacker could use this to cause a denial of service
(system crash). (CVE-2017-12193)
It was discovered that a race condition existed in the ALSA subsystem of
the Linux kernel when creating and deleting a port via ioctl(). A loc
Ubuntu
Linux kernel (Trusty HWE) vulnerabilities
vendor_ubuntu·2018-07-02·CVSS 7.1
CVE-2017-12154 [HIGH] Linux kernel (Trusty HWE) vulnerabilities
Title: Linux kernel (Trusty HWE) vulnerabilities
Summary: Several security issues were fixed in the Linux kernel.
USN-3698-1 fixed vulnerabilities in the Linux kernel for Ubuntu 14.04
LTS. This update provides the corresponding updates for the Linux
Hardware Enablement (HWE) kernel from Ubuntu 14.04 LTS for Ubuntu
12.04 ESM.
It was discovered that the nested KVM implementation in the Linux kernel in
some situations did not properly prevent second level guests from reading
and writing the hardware CR8 register. A local attacker in a guest could
use this to cause a denial of service (system crash). (CVE-2017-12154)
Fan Wu, Haoran Qiu, and Shixiong Zhao discovered that the associative array
implementation in the Linux kernel sometimes did not properly handle adding
a new entry. A local at
Ubuntu
Linux kernel vulnerabilities
vendor_ubuntu·2017-11-21·CVSS 5.5
CVE-2017-1000255 [MEDIUM] Linux kernel vulnerabilities
Title: Linux kernel vulnerabilities
Summary: Several security issues were fixed in the Linux kernel.
It was discovered that the KVM subsystem in the Linux kernel did not
properly keep track of nested levels in guest page tables. A local attacker
in a guest VM could use this to cause a denial of service (host OS crash)
or possibly execute arbitrary code in the host OS. (CVE-2017-12188)
It was discovered that on the PowerPC architecture, the kernel did not
properly sanitize the signal stack when handling sigreturn(). A local
attacker could use this to cause a denial of service (system crash) or
possibly execute arbitrary code. (CVE-2017-1000255)
Bo Zhang discovered that the netlink wireless configuration interface in
the Linux kernel did not properly validate attributes when handling cer
Ubuntu
Linux kernel vulnerabilities
vendor_ubuntu·2017-10-31·CVSS 6.5
CVE-2017-10911 [MEDIUM] Linux kernel vulnerabilities
Title: Linux kernel vulnerabilities
Summary: Several security issues were fixed in the Linux kernel.
Anthony Perard discovered that the Xen virtual block driver did not
properly initialize some data structures before passing them to user space.
A local attacker in a guest VM could use this to expose sensitive
information from the host OS or other guest VMs. (CVE-2017-10911)
Bo Zhang discovered that the netlink wireless configuration interface in
the Linux kernel did not properly validate attributes when handling certain
requests. A local attacker with the CAP_NET_ADMIN could use this to cause a
denial of service (system crash). (CVE-2017-12153)
It was discovered that the nested KVM implementation in the Linux
kernel in some situations did not properly prevent second level guests
from r
Ubuntu
Linux kernel (Xenial HWE) vulnerabilities
vendor_ubuntu·2017-10-31·CVSS 6.5
CVE-2017-10911 [MEDIUM] Linux kernel (Xenial HWE) vulnerabilities
Title: Linux kernel (Xenial HWE) vulnerabilities
Summary: Several security issues were fixed in the Linux kernel.
USN-3469-1 fixed vulnerabilities in the Linux kernel for Ubuntu 16.04
LTS. This update provides the corresponding updates for the Linux
Hardware Enablement (HWE) kernel from Ubuntu 16.04 LTS for Ubuntu
14.04 LTS.
Anthony Perard discovered that the Xen virtual block driver did not
properly initialize some data structures before passing them to user space.
A local attacker in a guest VM could use this to expose sensitive
information from the host OS or other guest VMs. (CVE-2017-10911)
Bo Zhang discovered that the netlink wireless configuration interface in
the Linux kernel did not properly validate attributes when handling certain
requests. A local attacker with the CAP_NET_
Red Hat
Kernel: kvm: nVMX: L2 guest could access hardware(L0) CR8 register
vendor_redhat·2017-09-12·CVSS 7.1
CVE-2017-12154 [HIGH] CWE-284 Kernel: kvm: nVMX: L2 guest could access hardware(L0) CR8 register
Kernel: kvm: nVMX: L2 guest could access hardware(L0) CR8 register
The prepare_vmcs02 function in arch/x86/kvm/vmx.c in the Linux kernel through 4.13.3 does not ensure that the "CR8-load exiting" and "CR8-store exiting" L0 vmcs02 controls exist in cases where L1 omits the "use TPR shadow" vmcs12 control, which allows KVM L2 guest OS users to obtain read and write access to the hardware CR8 register.
Linux kernel built with the KVM visualization support (CONFIG_KVM), with nested visualization (nVMX) feature enabled (nested=1), is vulnerable to a crash due to disabled external interrupts. As L2 guest could access (r/w) hardware CR8 register of the host(L0). In a nested visualization setup, L2 guest user could use this flaw to potentially crash the host(L0) resulting in DoS.
Statement: Thi
Debian
CVE-2017-12154: linux - The prepare_vmcs02 function in arch/x86/kvm/vmx.c in the Linux kernel through 4....
vendor_debian·2017·CVSS 7.1
CVE-2017-12154 [HIGH] CVE-2017-12154: linux - The prepare_vmcs02 function in arch/x86/kvm/vmx.c in the Linux kernel through 4....
The prepare_vmcs02 function in arch/x86/kvm/vmx.c in the Linux kernel through 4.13.3 does not ensure that the "CR8-load exiting" and "CR8-store exiting" L0 vmcs02 controls exist in cases where L1 omits the "use TPR shadow" vmcs12 control, which allows KVM L2 guest OS users to obtain read and write access to the hardware CR8 register.
Scope: local
bookworm: resolved (fixed in 4.12.13-1)
bullseye: resolved (fixed in 4.12.13-1)
forky: resolved (fixed in 4.12.13-1)
sid: resolved (fixed in 4.12.13-1)
trixie: resolved (fixed in 4.12.13-1)
No detection rules found.
No public exploits indexed.
Bugzilla
CVE-2017-12154 Kernel: kvm: nVMX: L2 guest could access hardware(L0) CR8 register [fedora-all]
bugzilla·2017-09-13·CVSS 7.1
CVE-2017-12154 [HIGH] CVE-2017-12154 Kernel: kvm: nVMX: L2 guest could access hardware(L0) CR8 register [fedora-all]
CVE-2017-12154 Kernel: kvm: nVMX: L2 guest could access hardware(L0) CR8 register [fedora-all]
This is an automatically created tracking bug! It was created to ensure
that one or more security vulnerabilities are fixed in affected versions
of fedora-all.
For comments that are specific to the vulnerability please use bugs filed
against the "Security Response" product referenced in the "Blocks" field.
For more information see:
http://fedoraproject.org/wiki/Security/TrackingBugs
When submitting as an update, use the fedpkg template provided in the next
comment(s). This will include the bug IDs of this tracking bug as well as
the relevant top-level CVE bugs.
Please also mention the CVE IDs being fixed in the RPM changelog and the
fedpkg commit message.
NOTE: this issue affects multiple s
Bugzilla
CVE-2017-12154 Kernel: kvm: nVMX: L2 guest could access hardware(L0) CR8 register [fedora-all]
bugzilla·2017-09-13·CVSS 7.1
CVE-2017-12154 [HIGH] CVE-2017-12154 Kernel: kvm: nVMX: L2 guest could access hardware(L0) CR8 register [fedora-all]
CVE-2017-12154 Kernel: kvm: nVMX: L2 guest could access hardware(L0) CR8 register [fedora-all]
This is an automatically created tracking bug! It was created to ensure
that one or more security vulnerabilities are fixed in affected versions
of fedora-all.
For comments that are specific to the vulnerability please use bugs filed
against the "Security Response" product referenced in the "Blocks" field.
For more information see:
http://fedoraproject.org/wiki/Security/TrackingBugs
When submitting as an update, use the fedpkg template provided in the next
comment(s). This will include the bug IDs of this tracking bug as well as
the relevant top-level CVE bugs.
Please also mention the CVE IDs being fixed in the RPM changelog and the
fedpkg commit message.
NOTE: this issue affects multiple s
Bugzilla
CVE-2017-12154 Kernel: kvm: nVMX: L2 guest could access hardware(L0) CR8 register
bugzilla·2017-09-13·CVSS 7.1
CVE-2017-12154 [HIGH] CVE-2017-12154 Kernel: kvm: nVMX: L2 guest could access hardware(L0) CR8 register
CVE-2017-12154 Kernel: kvm: nVMX: L2 guest could access hardware(L0) CR8 register
Linux kernel built with the KVM virtualisation support(CONFIG_KVM),
with nested virtualisation(nVMX) feature enabled(nested=1), is vulnerable
to a crash due to disabled external interrupts. As L2 guest could access(r/w)
hardware CR8 register of the host(L0).
In a nested virtualisation setup, L2 guest user could use this flaw
to potentially crash the host(L0) resulting in DoS.
Upstream patch
-> https://git.kernel.org/linus/51aa68e7d57e3217192d88ce90fd5b8ef29ec94f
Reference:
-> http://www.openwall.com/lists/oss-security/2017/09/26/3
Discussion:
Created kernel tracking bugs for this issue:
Affects: fedora-all [bug 1491225]
---
Created kernel tracking bugs for this issue:
Affects: fedora-all [bug 149123
http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=51aa68e7d57e3217192d88ce90fd5b8ef29ec94fhttp://www.debian.org/security/2017/dsa-3981http://www.securityfocus.com/bid/100856https://access.redhat.com/errata/RHSA-2018:0676https://access.redhat.com/errata/RHSA-2018:1062https://access.redhat.com/errata/RHSA-2019:1946https://bugzilla.redhat.com/show_bug.cgi?id=1491224https://github.com/torvalds/linux/commit/51aa68e7d57e3217192d88ce90fd5b8ef29ec94fhttps://usn.ubuntu.com/3698-1/https://usn.ubuntu.com/3698-2/https://www.spinics.net/lists/kvm/msg155414.htmlhttp://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=51aa68e7d57e3217192d88ce90fd5b8ef29ec94fhttp://www.debian.org/security/2017/dsa-3981http://www.securityfocus.com/bid/100856https://access.redhat.com/errata/RHSA-2018:0676https://access.redhat.com/errata/RHSA-2018:1062https://access.redhat.com/errata/RHSA-2019:1946https://bugzilla.redhat.com/show_bug.cgi?id=1491224https://github.com/torvalds/linux/commit/51aa68e7d57e3217192d88ce90fd5b8ef29ec94fhttps://usn.ubuntu.com/3698-1/https://usn.ubuntu.com/3698-2/https://www.spinics.net/lists/kvm/msg155414.html
2017-09-26
Published