ISSUE DESCRIPTION ================= Domains controlling other domains are permitted to map pages owned by the domain being controlled. If the controlling domain unmaps such a page without flushing the TLB, and if soon after the domain being controlled transfers this page to another PV domain (via GNTTABOP_transfer or, indirectly, XENMEM_exchange), and that third domain uses the page as a page table, the controlling domain will have write access to a live page table until the applicable TLB entry is flushed or evicted. Note that the domain being controlled is necessarily HVM, while the controlling domain is PV. IMPACT ====== A malicious pair of guests may be able to access all of system memory, allowing for all of privilege escalation, host crashes, and information leaks. VULNERABLE SYSTEMS ================== All Xen versions are vulnerable. Only x86 systems are affected. ARM systems are not vulnerable. Only systems where an attacker can control both a PV and an HVM guest are vulnerable. This must be presumed to include systems containing HVM domains with service domains such as stub domain device models. Systems containing only PV guests are not vulnerable. Systems containing only HVM domains serviced by dom0 device model processes are not vulnerable. Note that with libxl, xl, and libvirt, HVM domains use dom0 device model processes by default. MITIGATION ========== There is no mitigation for this vulnerability. Switching from stub device models to dom0 process device models is not recommended as a mitigation, as in practice the vulnerability is likely to be hard to exploit through this route; whereas dom0 process device models may have unknown vulnerabilities. External References: http://xenbits.xen.org/xsa/advisory-217.html Acknowledgements: Name: the Xen project Upstream: Jann Horn (Google)
Created xen tracking bugs for this issue: Affects: fedora-all [bug 1463247]