CVE-2020-15565
Published: 7 July 2020
An issue was discovered in Xen through 4.13.x, allowing x86 Intel HVM guest OS users to cause a host OS denial of service or possibly gain privileges because of insufficient cache write-back under VT-d. When page tables are shared between IOMMU and CPU, changes to them require flushing of both TLBs. Furthermore, IOMMUs may be non-coherent, and hence prior to flushing IOMMU TLBs, a CPU cache also needs writing back to memory after changes were made. Such writing back of cached data was missing in particular when splitting large page mappings into smaller granularity ones. A malicious guest may be able to retain read/write DMA access to frames returned to Xen's free pool, and later reused for another purpose. Host crashes (leading to a Denial of Service) and privilege escalation cannot be ruled out. Xen versions from at least 3.2 onwards are affected. Only x86 Intel systems are affected. x86 AMD as well as Arm systems are not affected. Only x86 HVM guests using hardware assisted paging (HAP), having a passed through PCI device assigned, and having page table sharing enabled can leverage the vulnerability. Note that page table sharing will be enabled (by default) only if Xen considers IOMMU and CPU large page size support compatible.
Notes
Author | Note |
---|---|
mdeslaur |
hypervisor packages are in universe. For issues in the hypervisor, add appropriate tags to each section, ex: Tags_xen: universe-binary |
Priority
Status
Package | Release | Status |
---|---|---|
xen
Launchpad, Ubuntu, Debian |
bionic |
Needed
|
eoan |
Ignored
(end of life)
|
|
focal |
Released
(4.11.3+24-g14b62ab3e5-1ubuntu2.3)
|
|
groovy |
Not vulnerable
(4.11.4+24-gddaaccbbab-1ubuntu2)
|
|
hirsute |
Not vulnerable
(4.11.4+24-gddaaccbbab-1ubuntu2)
|
|
impish |
Not vulnerable
(4.11.4+24-gddaaccbbab-1ubuntu2)
|
|
jammy |
Not vulnerable
(4.11.4+24-gddaaccbbab-1ubuntu2)
|
|
kinetic |
Not vulnerable
(4.11.4+24-gddaaccbbab-1ubuntu2)
|
|
lunar |
Not vulnerable
(4.11.4+24-gddaaccbbab-1ubuntu2)
|
|
mantic |
Not vulnerable
(4.11.4+24-gddaaccbbab-1ubuntu2)
|
|
noble |
Not vulnerable
(4.11.4+24-gddaaccbbab-1ubuntu2)
|
|
trusty |
Does not exist
|
|
upstream |
Needs triage
|
|
xenial |
Needed
|
|
Binaries built from this source package are in Universe and so are supported by the community. |
Severity score breakdown
Parameter | Value |
---|---|
Base score | 8.8 |
Attack vector | Local |
Attack complexity | Low |
Privileges required | Low |
User interaction | None |
Scope | Changed |
Confidentiality | High |
Integrity impact | High |
Availability impact | High |
Vector | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H |