libxl's device-handling code freely uses and trusts information from
the backend directories in xenstore.
The backend domain (driver domain) can store bogus data in the
backend, causing libxl's enquiry functions to fail, confusing
A driver domain can also remove its backend directory from xenstore
entirely, preventing the device from showing up in device listings and
preventing it from being removed and replaced.
A driver domain can cause libxl to generate disk eject events for
disks for which the driver domain is not responsible.
A malicious driver domain can deny service to management tools.
This vulnerability is only applicable to systems which are using
driver domains, and then only where the driver domain is not intended
to be fully trusted with respect to the host.
Such Xen systems using libxl based toolstacks (for example xl or
libvirt with the libxl driver) are vulnerable.
Note that even with this vulnerability a driver domain based system is
better from a security point of view, than a system where devices are
provided directly by dom0. Users and vendors of systems using driver
domains should not change their configuration.
All versions of libxl which support the relevant driver domains are
No mitigation is available.
Name: the Xen project
Created attachment 1156570 [details]
Set of patches
Created attachment 1161045 [details]
Certain patches were dropped from the patch set as they're not needed for fixing this issue.
Created xen tracking bugs for this issue:
Affects: fedora-all [bug 1342131]
xen-4.5.3-8.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.
xen-4.6.1-11.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.