Bug 1880156 (CVE-2020-25600) - CVE-2020-25600 xen: out of bounds event channels available to 32-bit x86 domains (XSA-342)
Summary: CVE-2020-25600 xen: out of bounds event channels available to 32-bit x86 doma...
Keywords:
Status: CLOSED NOTABUG
Alias: CVE-2020-25600
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: 1881582
Blocks: 1877386
TreeView+ depends on / blocked
 
Reported: 2020-09-17 19:36 UTC by Guilherme de Almeida Suckevicz
Modified: 2021-02-16 19:14 UTC (History)
25 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
A flaw was found in Xen. Misbehavior during domain initialization, where 32-bit domains (including Domain 0) servicing other domains, may observe event channel allocations to succeed when they should fail. Subsequent use of such event channels leads to the corruption of other parts of the shared information structure. This flaw allows an unprivileged guest to crash another domain, particularly Domain 0, leading to a denial of service (DoS) for the entire system. The highest threat from this vulnerability is to system availability.
Clone Of:
Environment:
Last Closed: 2020-09-22 20:41:42 UTC
Embargoed:


Attachments (Terms of Use)

Description Guilherme de Almeida Suckevicz 2020-09-17 19:36:31 UTC
The so called 2-level event channel model imposes different limits on the number of usable event channels for 32-bit x86 domains vs 64-bit or Arm (either bitness) ones. 32-bit x86 domains can use only 1023 channels, due to limited space in their shared (between guest and Xen) information structure, whereas all other domains can use up to 4095 in this model. The recording of the respective limit during domain initialization, however, has occurred at a time where domains are still deemed to be 64-bit ones, prior to actually honoring respective domain properties. At the point domains get recognized as 32-bit ones, the limit didn't get updated accordingly.

Due to this misbehavior in Xen, 32-bit domains (including Domain 0) servicing other domains may observe event channel allocations to succeed when they should really fail.  Subsequent use of such event channels would then possibly lead to corruption of other parts of the shared info structure.

Comment 1 Guilherme de Almeida Suckevicz 2020-09-17 19:36:36 UTC
Acknowledgments:

Name: the Xen project

Comment 3 Mauro Matteo Cascella 2020-09-18 16:25:58 UTC
Mitigation:

There is no known workaround for x86 32-bit Domain 0. The issue can be avoided by reducing the number of event channels available to the guest to no more than 1023.  For example, setting `max_event_channels=1023` in the xl domain configuration, or deleting any existing setting (since 1023 is the default for xl/libxl).

Comment 4 Mauro Matteo Cascella 2020-09-22 17:50:23 UTC
Created xen tracking bugs for this issue:

Affects: fedora-all [bug 1881582]

Comment 5 Product Security DevOps Team 2020-09-22 20:41:42 UTC
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):

https://access.redhat.com/security/cve/cve-2020-25600

Comment 6 Mauro Matteo Cascella 2020-09-23 07:37:26 UTC
External References:

https://xenbits.xen.org/xsa/advisory-342.html

Comment 7 RaTasha Tillery-Smith 2020-09-28 15:25:19 UTC
Statement:

All Xen versions from 4.4 onwards are vulnerable. Red Hat Enterprise Linux 5 is not affected by this flaw, as it shipped with an older version of Xen.


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