Bug 1433879 (xsa206) - xsa206 xen: xenstore denial of service via repeated update (XSA-206)
Summary: xsa206 xen: xenstore denial of service via repeated update (XSA-206)
Keywords:
Status: CLOSED WONTFIX
Alias: xsa206
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Red Hat Product Security
QA Contact:
URL:
Whiteboard:
Depends On: 1436690
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-03-20 09:43 UTC by Adam Mariš
Modified: 2021-02-17 02:27 UTC (History)
12 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-06-08 03:09:12 UTC
Embargoed:


Attachments (Terms of Use)

Description Adam Mariš 2017-03-20 09:43:34 UTC
ISSUE DESCRIPTION
=================

xenstored supports transactions, such that if writes which would
invalidate assumptions of a transaction occur, the entire transaction
fails.  Typical response on a failed transaction is to simply retry
the transaction until it succeeds.

Unprivileged domains may issue writes to xenstore which conflict with
transactions either of the toolstack or of backends such as the driver
domain. Depending on the exact timing, repeated writes may cause
transactions made by these entities to fail indefinitely.

IMPACT
======

Unprivileged guests may be able to stall progress of the control
domain or driver domain, possibly leading to a Denial of Service (DoS)
of the entire host.

In most systems, the impact is limited to the delay or prevention of
control operations (such as domain creation, reconfiguration,
configuration enquiry, or destruction).

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

All Xen versions are vulnerable.

Both "cxenstored" (the version of xenstored written in C) and
"oxenstored" (the version of xenstored written in ocaml) are
vulnerable.  oxenstored in Xen 4.7 and later is more difficult to
exploit because it has more fine-grained detection of conflicts.

MITIGATION
==========

If the rogue domain(s) can be identified, it will usually be possible
to pause them with "xl pause" and/or destroy them with "xl destroy".
Note that if the toolstack is not simply "xl", the toolstack may be
confused by use of "xl" to pause or destroy domains.

The output of commands such as "xl top" and "xenstore-ls -fp" may be
helpful to find the rogue domain(s).

When the rogue domain(s) are paused or destroyed, the stuck operations
will become unstuck.

External References:

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

Acknowledgements:

Name: the Xen project

Comment 1 Adam Mariš 2017-03-28 12:53:44 UTC
Created xen tracking bugs for this issue:

Affects: fedora-all [bug 1436690]


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