FreeBSD VuXML: Documenting security issues in FreeBSD and the FreeBSD Ports Collection

xen-kernel -- ioreq handling possibly susceptible to multiple read issue

Affected packages
xen-kernel < 4.5.2_1

Details

VuXML ID 6aa2d135-b40e-11e5-9728-002590263bf5
Discovery 2015-12-17
Entry 2016-01-06

The Xen Project reports:

Single memory accesses in source code can be translated to multiple ones in machine code by the compiler, requiring special caution when accessing shared memory. Such precaution was missing from the hypervisor code inspecting the state of I/O requests sent to the device model for assistance.

Due to the offending field being a bitfield, it is however believed that there is no issue in practice, since compilers, at least when optimizing (which is always the case for non-debug builds), should find it more expensive to extract the bit field value twice than to keep the calculated value in a register.

This vulnerability is exposed to malicious device models. In conventional Xen systems this means the qemu which service an HVM domain. On such systems this vulnerability can only be exploited if the attacker has gained control of the device model qemu via another vulnerability.

Privilege escalation, host crash (Denial of Service), and leaked information all cannot be excluded.

References

FreeBSD PR ports/205841
URL http://xenbits.xen.org/xsa/advisory-166.html