|Public release ||2014-08-12 12:00|
|Updated ||2014-08-12 13:02|
|CVE(s) ||CVE-2014-5146 CVE-2014-5149|
|Title ||Long latency virtual-mmu operations are not preemptible|
Filesadvisory-97.txt (signed advisory file)
-----BEGIN PGP SIGNED MESSAGE-----
Xen Security Advisory CVE-2014-5146,CVE-2014-5149 / XSA-97
Long latency virtual-mmu operations are not preemptible
UPDATES IN VERSION 3
Some MMU virtualization operations on HVM guests must process every
page assigned to a guest. For larger guests, this can tie up a vcpu
for a significant amount of time, as the operations are not
For guests using Hardware Assisted Paging (HAP, see below) this is
CVE-2014-5146. For guests not using HAP this is CVE-2014-5149.
A malicious HVM guest with a large allocation of shadow/p2m RAM
can mount a denial of service attack affecting the whole system.
ARM systems are not vulnerable.
All x86 Xen versions are vulnerable.
The vulnerability is only exposed to HVM guests.
In the default configuration, the vulnerability is only exposed to
large guests (guests assigned more than 128Gbytes of memory).
Running only PV guests, or only smaller guests will avoid this
Since the vulnerability actually depends on the guest's shadow memory,
if you are overriding the default allocation (which is about 0.5% of
guest RAM) by using the "shadow_memory=" VM configuration file option,
you should adjust your idea of a 'smaller' guest accordingly.
This issue was discovered by Jan Beulich.
For HAP-enabled guests, the attached patch resolves ths issue.
HAP (Hardware Assisted Paging, aka nested paging) is enabled by
default if the system is suitably capable. The VM configuration file
can disable or enable HAP explicitly by setting "hap=0" or "hap=1".
HAP can also be globally disabled by specifying "hap=off" on the
hypervisor command line.
There is no resolution for guests using shadow pagetables (i.e., not
using HAP) at this time.
xsa97-hap-4.4.patch Xen 4.4.x
xsa97-hap-4.3.patch Xen 4.3.x
xsa97-hap-4.2-prereq.patch, xsa97-hap-4.2.patch Xen 4.2.x
$ sha256sum xsa97*.patch
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
-----END PGP SIGNATURE-----
Xenproject.org Security Team