Xen Security Advisory CVE-2017-14316 / XSA-231
Missing NUMA node parameter verification
UPDATES IN VERSION 3
Updated metadata file
The function `alloc_heap_pages` allows callers to specify the first
NUMA node that should be used for allocations through the `memflags`
parameter; the node is extracted using the `MEMF_get_node` macro.
While the function checks to see if the special constant
`NUMA_NO_NODE` is specified, it otherwise does not handle the case
where `node >= MAX_NUMNODES`. This allows an out-of-bounds access
to an internal array.
An attacker using crafted hypercalls can execute arbitrary code within
All versions of Xen are affected.
Both ARM and x86 are affected.
Both systems running HVM guests and system running PV guests are
No known mitigation.
This issue was discovered by Matthew Daley.
Applying the appropriate attached patch resolves this issue.
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
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
(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.)