Bug 1443223 (CVE-2017-8904, xsa214) - CVE-2017-8904 xsa214 xen: grant transfer allows PV guest to elevate privileges (XSA-214)
Summary: CVE-2017-8904 xsa214 xen: grant transfer allows PV guest to elevate privilege...
Keywords:
Status: CLOSED WONTFIX
Alias: CVE-2017-8904, xsa214
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
high
high
Target Milestone: ---
Assignee: Red Hat Product Security
QA Contact:
URL:
Whiteboard:
Depends On: 1447345
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-04-18 19:19 UTC by Adam Mariš
Modified: 2021-06-10 12:12 UTC (History)
17 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-07-11 04:18:19 UTC
Embargoed:


Attachments (Terms of Use)

Description Adam Mariš 2017-04-18 19:19:17 UTC
ISSUE DESCRIPTION
=================

The GNTTABOP_transfer operation allows one guest to transfer a page to
another guest.  The internal processing of this, however, does not
include zapping the previous type of the page being transferred.  This
makes it possible for a PV guest to transfer a page previously used as
part of a segment descriptor table to another guest while retaining the
"contains segment descriptors" property.

If the destination guest is a PV one of different bitness, it may gain
access to segment descriptors it is not normally allowed to have, like
64-bit code segments in a 32-bit PV guest.

If the destination guest is a HVM one, that guest may freely alter the
page contents and then hand the page back to the same or another PV
guest.

In either case, if the destination PV guest then inserts that page into
one of its own descriptor tables, the page still having the designated
type results in validation of its contents being skipped.

IMPACT
======

A malicious pair of guests 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 are vulnerable.

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

MITIGATION
==========

Running only one out of the three relevant classes of guest (namely:
32-bit PV; 64-bit PV; HVM) on any given host will avoid the
vulnerability.  (Note that this must also include any nonprivileged
service domains such as stub device model domains.)

The vulnerability can also be avoided if all guest kernels are
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.

External References:

http://xenbits.xen.org/xsa/advisory-214.html

Acknowledgements:

Name: the Xen project
Upstream: Jann Horn (Google)

Comment 1 Adam Mariš 2017-05-02 13:17:44 UTC
Created xen tracking bugs for this issue:

Affects: fedora-all [bug 1447345]

Comment 2 Andrej Nemec 2017-05-03 07:03:44 UTC
References:

http://seclists.org/oss-sec/2017/q2/192


Note You need to log in before you can comment on or make changes to this bug.