Bug 1183072 (CVE-2021-28687) - VUL-0: CVE-2021-28687: xen: HVM soft-reset crashes toolstack (XSA-368)
Summary: VUL-0: CVE-2021-28687: xen: HVM soft-reset crashes toolstack (XSA-368)
Status: RESOLVED FIXED
Alias: CVE-2021-28687
Product: SUSE Security Incidents
Classification: Novell Products
Component: Incidents (show other bugs)
Version: unspecified
Hardware: Other Other
: P3 - Medium : Normal
Target Milestone: ---
Assignee: Security Team bot
QA Contact: Security Team bot
URL:
Whiteboard: CVSSv3.1:SUSE:CVE-2021-28687:5.5:(AV:...
Keywords:
Depends on:
Blocks:
 
Reported: 2021-03-05 08:50 UTC by Robert Frohl
Modified: 2022-01-11 14:07 UTC (History)
3 users (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments
xsa368-4.14.patch (4.38 KB, patch)
2021-03-05 08:52 UTC, Robert Frohl
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Comment 7 Robert Frohl 2021-03-18 12:02:50 UTC
via oss-security:
                       Xen Security Advisory XSA-368
                              version 2

                   HVM soft-reset crashes toolstack

UPDATES IN VERSION 2
====================

Public release.

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

libxl requires all data structures passed across its public interface
to be initialized before use and disposed of afterwards by calling a
specific set of functions.  Many internal data structures also require
this initialize / dispose discipline, but not all of them.

When the "soft reset" feature was implemented, the
libxl__domain_suspend_state structure didn't require any
initialization or disposal.  At some point later, an initialization
function was introduced for the structure; but the "soft reset" path
wasn't refactored to call the initialization function.  When a guest
nwo initiates a "soft reboot", uninitialized data structure leads to
an assert() when later code finds the structure in an unexpected
state.

The effect of this is to crash the process monitoring the guest.  How
this affects the system depends on the structure of the toolstack.

For xl, this will have no security-relevant effect: every VM has its
own independent monitoring process, which contains no state.  The
domain in question will hang in a crashed state, but can be destroyed
by `xl destroy` just like any other non-cooperating domain.

For daemon-based toolstacks linked against libxl, such as libvirt,
this will crash the toolstack, losing the state of any in-progress
operations (localized DoS), and preventing further administrator
operations unless the daemon is configured to restart automatically
(system-wide DoS).  If crashes "leak" resources, then repeated crashes
could use up resources, also causing a system-wide DoS.

IMPACT
======

A malicious guest can crash the management daemon, leading to at least
a localized, possibly system-wide denial-of-service.

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

Only Xen versions 4.12 through 4.14 are affected.  Earlier versions
are not affected.

The issue affects only systems with a guest monitoring process, which
is linked against libxl, and which is important other than simply for
the functioning of one particular guest.  libvirt is one common
toolstack affected.  Systems using the `xl` command-line tool should
generally suffer no security-relevant effects.

The xapi toolstack does not currently link against libxl, and so is
not affected.

MITIGATION
==========

Ensuring that any management daemons are restarted automatically after
a crash will partially mitigate the issue.

CREDITS
=======

This issue was discovered by Olaf Hering.

RESOLUTION
==========

Applying the appropriate attached patch resolves this issue.

Note that patches for released versions are generally prepared to
apply to the stable branches, and may not apply cleanly to the most
recent release tarball.  Downstreams are encouraged to update to the
tip of the stable branch before applying these patches.

xsa368.patch           xen-unstable
xsa368-4.14.patch      Xen 4.14.x
xsa368-4.13.patch      Xen 4.13.x - Xen 4.12.x

$ sha256sum xsa368*
e80f33c3ce45372fef7bd91ec71b2b66e557176b79f9771872ce111bfff34150  xsa368.meta
b82f2b110514cdf47a2688913ad5af68b01050751d56705a15ddf9a970b6fa0d  xsa368.patch
636df70ae5eaf00b50ef0b5ac219a2aeda771c66833fae88e7ee43b18ae889f4  xsa368-4.13.patch
55bbe59c75b69f493e364dfcf6cdbc7db4acd32dbf0b4d2466815b7c1f1823ce  xsa368-4.14.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
Comment 8 OBSbugzilla Bot 2021-03-18 13:10:07 UTC
This is an autogenerated message for OBS integration:
This bug (1183072) was mentioned in
https://build.opensuse.org/request/show/879873 Factory / xen
Comment 10 Charles Arnold 2021-03-18 17:02:14 UTC
Submitted to SLE12-SP5 and SLE15-SP1/SP2/SP3 fixing Xen
versions 4.12 -> 4.14.
Comment 11 Swamp Workflow Management 2021-04-06 19:15:58 UTC
SUSE-SU-2021:1023-1: An update that solves four vulnerabilities and has 6 fixes is now available.

Category: security (important)
Bug References: 1027519,1177112,1177204,1178591,1178736,1179148,1181254,1181989,1182846,1183072
CVE References: CVE-2020-28368,CVE-2021-20257,CVE-2021-28687,CVE-2021-3308
JIRA References: 
Sources used:
SUSE Linux Enterprise Software Development Kit 12-SP5 (src):    xen-4.12.4_09-3.39.3
SUSE Linux Enterprise Server 12-SP5 (src):    xen-4.12.4_09-3.39.3

NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination.
Comment 12 Swamp Workflow Management 2021-04-06 19:18:24 UTC
SUSE-SU-2021:1028-1: An update that solves two vulnerabilities and has 6 fixes is now available.

Category: security (important)
Bug References: 1027519,1177204,1179148,1180690,1181254,1181989,1182576,1183072
CVE References: CVE-2021-28687,CVE-2021-3308
JIRA References: 
Sources used:
SUSE MicroOS 5.0 (src):    xen-4.13.2_08-3.25.3
SUSE Linux Enterprise Module for Server Applications 15-SP2 (src):    xen-4.13.2_08-3.25.3
SUSE Linux Enterprise Module for Basesystem 15-SP2 (src):    xen-4.13.2_08-3.25.3

NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination.
Comment 13 Olaf Hering 2021-04-06 22:34:26 UTC
This is fixed, the bug can be closed.
Comment 14 Swamp Workflow Management 2021-04-30 16:23:03 UTC
SUSE-SU-2021:1460-1: An update that solves three vulnerabilities and has four fixes is now available.

Category: security (important)
Bug References: 1027519,1177204,1178591,1179148,1181254,1181989,1183072
CVE References: CVE-2020-28368,CVE-2021-28687,CVE-2021-3308
JIRA References: 
Sources used:
SUSE Manager Server 4.0 (src):    xen-4.12.4_08-3.43.3
SUSE Manager Retail Branch Server 4.0 (src):    xen-4.12.4_08-3.43.3
SUSE Manager Proxy 4.0 (src):    xen-4.12.4_08-3.43.3
SUSE Linux Enterprise Server for SAP 15-SP1 (src):    xen-4.12.4_08-3.43.3
SUSE Linux Enterprise Server 15-SP1-LTSS (src):    xen-4.12.4_08-3.43.3
SUSE Linux Enterprise Server 15-SP1-BCL (src):    xen-4.12.4_08-3.43.3
SUSE Linux Enterprise High Performance Computing 15-SP1-LTSS (src):    xen-4.12.4_08-3.43.3
SUSE Linux Enterprise High Performance Computing 15-SP1-ESPOS (src):    xen-4.12.4_08-3.43.3
SUSE Enterprise Storage 6 (src):    xen-4.12.4_08-3.43.3
SUSE CaaS Platform 4.0 (src):    xen-4.12.4_08-3.43.3

NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination.
Comment 15 Robert Frohl 2022-01-11 14:07:57 UTC
done, closing