Headline
CVE-2020-27670: 347 - Xen Security Advisories
An issue was discovered in Xen through 4.14.x allowing x86 guest OS users to cause a denial of service (data corruption), cause a data leak, or possibly gain privileges because an AMD IOMMU page-table entry can be half-updated.
Information
Advisory
XSA-347
Public release
2020-10-20 11:49
Updated
2021-01-19 16:24
Version
3
CVE(s)
CVE-2020-27670
Title
unsafe AMD IOMMU page table updates
Filesadvisory-347.txt (signed advisory file)
xsa347.meta
xsa347/xsa347-1.patch
xsa347/xsa347-2.patch
xsa347/xsa347-3.patch
xsa347/xsa347-4.11-1.patch
xsa347/xsa347-4.11-2.patch
xsa347/xsa347-4.12-1.patch
xsa347/xsa347-4.12-2.patch
xsa347/xsa347-4.13-1.patch
xsa347/xsa347-4.13-2.patch
xsa347/xsa347-4.13-3.patch
xsa347/xsa347-4.14-1.patch
xsa347/xsa347-4.14-2.patch
xsa347/xsa347-4.14-3.patchAdvisory
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256
Xen Security Advisory CVE-2020-27670 / XSA-347
version 3
unsafe AMD IOMMU page table updates
UPDATES IN VERSION 3
CVE assigned.
ISSUE DESCRIPTION
AMD IOMMU page table entries are updated in a step by step manner, without regard to them being potentially in use by the IOMMU. Therefore it was possible that the IOMMU would read and then use a half-updated entry. Furthermore, updates to Device Table entries lacked suitable ordering enforcement for certain steps involved in these updates.
In both case the specific outcome heavily depends on how exactly the compiler translated the affected pieces of code.
IMPACT
A malicious guest might be able to cause data corruption and data leaks. Host or guest Denial of Service (DoS), and privilege escalation, cannot be ruled out.
VULNERABLE SYSTEMS
All Xen versions are potentially vulnerable.
Only x86 systems with AMD, Hygon, or compatible IOMMU hardware are vulnerable. Arm systems as well as x86 systems with VT-d hardware or without any IOMMUs in use are not vulnerable.
Only x86 guests which have physical devices passed through to them can leverage the vulnerability.
MITIGATION
Not passing through physical devices to untrusted guests will avoid the vulnerability.
CREDITS
This issue was discovered by Paul Durrant of Amazon and Jan Beulich of SUSE.
RESOLUTION
Applying the appropriate set of attached patches 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.
xsa347/xsa347-?.patch xen-unstable xsa347/xsa347-4.14-?.patch Xen 4.14 xsa347/xsa347-4.13-?.patch Xen 4.13 xsa347/xsa347-4.12-?.patch Xen 4.12 xsa347/xsa347-4.11-?.patch Xen 4.10 - 4.11
$ sha256sum xsa347* xsa347*/* f16e1a348b0e45601c96b2bd08afc4202bbccc92c8af8344b3c8286ca819acef xsa347.meta 82e14d0507ec94f8cfac2b4d5d1b60681b925218ab927332bee338e6b6c679c9 xsa347/xsa347-1.patch 1bc6018c3685727ba4035bf0b5cea95940a1b9c4746fa9bddfd41507482d68a1 xsa347/xsa347-2.patch f1bd8eba268300f564837ac37fe43b774ace885c9cbf8fcacae457128730bc80 xsa347/xsa347-3.patch 5aec8f3b15aa799e1ff7ec0dfe53523cb91aa5fd88033f7f034cb74ebaa6abe4 xsa347/xsa347-4.11-1.patch 4ab3a6fa181ce486b4c9943f6629b7c1a4337c7ccb92701ae6e40108533778ca xsa347/xsa347-4.11-2.patch fec82340dc65fc1001358de51d0639b2b401818fa1e831f8715cb1780b17dc7b xsa347/xsa347-4.12-1.patch be89e976fe03464ce3a73b162c07927128f41a8a03466e903ebfa4ea0dc46116 xsa347/xsa347-4.12-2.patch 5dc0abf73d1a9d21f2b57e6c57ee5c15cc3febbb783123c0946f3e5778671929 xsa347/xsa347-4.13-1.patch 6d2b6ea7a373fb1c4cce63db349bbafa8603b5e7c6b74fc6d029954075f2268d xsa347/xsa347-4.13-2.patch 4e154bfca5101569c8260e307eb6439783bc99547b7dfb5aba2bafebbde46190 xsa347/xsa347-4.13-3.patch 6a70c2afba0d3ad73b12743a6808ba8002e9ee573d7c460397355e40de3b553f xsa347/xsa347-4.14-1.patch 1bc6018c3685727ba4035bf0b5cea95940a1b9c4746fa9bddfd41507482d68a1 xsa347/xsa347-4.14-2.patch f1bd8eba268300f564837ac37fe43b774ace885c9cbf8fcacae457128730bc80 xsa347/xsa347-4.14-3.patch $
DEPLOYMENT DURING EMBARGO
Deployment of the patches described above (or others which are substantially similar) is permitted during the embargo, even on public-facing systems with untrusted guest users and administrators.
HOWEVER, deployment of the mitigation is NOT permitted (except where all the affected systems and VMs are administered and used only by organisations which are members of the Xen Project Security Issues Predisclosure List). Specifically, deployment on public cloud systems is NOT permitted.
This is because removal of pass-through devices or their replacement by emulated devices is a guest visible configuration change, which may lead to re-discovery of the issue.
Deployment of this mitigation is permitted only AFTER the embargo ends.
AND: 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-----
iQFABAEBCAAqFiEEI+MiLBRfRHX6gGCng/4UyVfoK9kFAmAHB6UMHHBncEB4ZW4u b3JnAAoJEIP+FMlX6CvZnS4H/20DvLqB+ZlD94WUZF4hR0V2Weg9Nb4iGVh2hNJT DFDzDsWHtIzuPUgPI6uDrE+gNLRxrZGlThz7zyyxZkWftX/pIGIdGIwES1jDfq5Q 3D2ZGVgSSxqUPoIFn7aU9DXxI5NlDlgBV9c8q4e/DQvo6VI34oo1A5eENWcBusda DxLPyuh2b58lET+LwMJ/V0OprqsZYXd1rBprfwg1YpGS3Ydc8jPL64orrGk5EXew A7OO/rhiqYubvJhjwYs88A2mL2eoT6UkP0cIBo/ezyK8mkjvBmBYE2O+rM5WGUpl EavAQ38vXVhDp7oz1lSlOowVWRscRbRAtb18GyAGsDU6V5I= =lo6o -----END PGP SIGNATURE-----
Xenproject.org Security Team