[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Xen Security Advisory 241 - Stale TLB entry due to page type release race



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

                    Xen Security Advisory XSA-241
                              version 3

             Stale TLB entry due to page type release race

UPDATES IN VERSION 3
====================

Fix ARM build issue in patches.

Public release.

ISSUE DESCRIPTION
=================

x86 PV guests effect TLB flushes by way of a hypercall.  Xen tries to
reduce the number of TLB flushes by delaying them as much as possible.
When the last type reference of a page is dropped, the need for a TLB
flush (before the page is re-used) is recorded.  If a guest TLB flush
request involves an Inter Processor Interrupt (IPI) to a CPU in which
is the process of dropping the last type reference of some page, and
if that IPI arrives at exactly the right instruction boundary, a stale
time stamp may be recorded, possibly resulting in the later omission
of the necessary TLB flush for that page.

IMPACT
======

A malicious x86 PV guest may be able to access all of system memory,
allowing for all of privilege escalation, host crashes, and
information leaks.

VULNERABLE SYSTEMS
==================

All Xen versions from at least 3.2 onwards are vulnerable.  Earlier
versions have not been checked.

Only x86 systems are affected.  ARM systems are not affected.

Only x86 PV guests can leverage the vulnerability.  x86 HVM guests
cannot leverage the vulnerability.

RISK ASSESSMENT
===============

A successful attack would require introducing an extended delay between
two adjacent operations on one cpu -- long enough for two hypercalls to
complete on another cpu.  The security team currently has no
proof-of-concept for this vulnerability.

However, techniques for these sorts of timing-based attacks are
continually advancing, so we still recommend users potentially affected
by this issue apply the patch as soon as reasonably possible.

MITIGATION
==========

Running only HVM guests will avoid this vulnerability.

For PV guests, the vulnerability can be avoided if the guest kernel is
controlled by the host rather than guest administrator, provided that
further steps are taken to prevent the guest administrator from loading
code into the kernel (e.g. by disabling loadable modules etc) or from
using other mechanisms which allow them to run code at kernel privilege.

CREDITS
=======

This issue was discovered by Jann Horn of Google Project Zero.

RESOLUTION
==========

Applying the appropriate attached patch resolves this issue.

xsa241.patch           xen-unstable
xsa241-4.9.patch       Xen 4.9.x
xsa241-4.8.patch       Xen 4.8.x, Xen 4.7.x, Xen 4.6.x, Xen 4.5.x

$ sha256sum xsa241*
5e239ba4dbd74fd61e59a27f9abc8ea6ba32532bdf81eeb2d7e66f0fd53e40b4  xsa241.meta
b8db933d53e7e289652ffda6c46ce284a0254a9f8bc9e1be6793e388009f49ce  xsa241.patch
443a5b0818045ada44fad0370ac01af0c96181be5a4078ae3b2575799e4a4e5b  
xsa241-4.8.patch
927ef14d875556481c38d4065f501211a78eec1c2396a954a4a4abfb9255960f  
xsa241-4.9.patch
$

DEPLOYMENT DURING EMBARGO
=========================

Deployment of the patches and/or mitigations described above (or
others which are substantially similar) is permitted during the
embargo, even on public-facing systems with untrusted guest users and
administrators.

But: Distribution of updated software is prohibited (except to other
members of the predisclosure list).

Predisclosure list members who wish to deploy significantly different
patches and/or mitigations, please contact the Xen Project Security
Team.

(Note: this during-embargo deployment notice is retained in
post-embargo publicly released Xen Project advisories, even though it
is then no longer applicable.  This is to enable the community to have
oversight of the Xen Project Security Team's decisionmaking.)

For more information about permissible uses of embargoed information,
consult the Xen Project community's agreed Security Policy:
  http://www.xenproject.org/security-policy.html
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQEcBAEBCAAGBQJZ31v/AAoJEIP+FMlX6CvZsNgIALcJ/DeUN5nv8duBvC3hbAX6
NABBtlVJ6K7qZpAf+04Eztym4bEWXWGtJ1BQVCJ6aPwPZ4aOUodA/zRBEQS7Xp8F
5P5U3Qwa/C+slqLh7QfYdwlkgdMRG67yWIo2xMOEcfORlPjc1wDxohtCQZT9uiMs
Y9Xllt/sLhGgYq4+TpNvJyYMzvPp1+oBEuqcR58IZ2aepQJAlPl3LnLdYyN8TAqv
MBmli7cRO/vYn5z7aII9NbuF8XEnx0Vfqp7EufLU1LQyG4S9jYXd0xvD6BjjkGWM
N/dvJTMq8HXS00VUAoONOv+blq2AdRs9oYD8yeMCglUhpeK8cIaEsYzhOHbCvlI=
=1uZK
-----END PGP SIGNATURE-----

Attachment: xsa241.meta
Description: Binary data

Attachment: xsa241.patch
Description: Binary data

Attachment: xsa241-4.8.patch
Description: Binary data

Attachment: xsa241-4.9.patch
Description: Binary data

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.