The remote Scientific Linux host is missing one or more security
It was found that libvirt passes the XML_PARSE_NOENT flag when parsing
XML documents using the libxml2 library, in which case all XML
entities in the parsed documents are expanded. A user able to force
libvirtd to parse an XML document with an entity pointing to a special
file that blocks on read access could use this flaw to cause libvirtd
to hang indefinitely, resulting in a denial of service on the system.
This update also fixes the following bugs :
- When hot unplugging a virtual CPU (vCPU), libvirt kept a
pointer to already freed memory if the vCPU was pinned
to a host CPU. Consequently, when reading the CPU
pinning information, libvirt terminated unexpectedly due
to an attempt to access this memory. This update ensures
that libvirt releases the pointer to the previously
allocated memory when a vCPU is being hot unplugged, and
it no longer crashes in this situation.
- Previously, libvirt passed an incorrect argument to the
'tc' command when setting quality of service (QoS) on a
network interface controller (NIC). As a consequence,
QoS was applied only to IP traffic. With this update,
libvirt constructs the 'tc' command correctly so that
QoS is applied to all traffic as expected.
- When using the sanlock daemon for managing access to
shared storage, libvirt expected all QEMU domains to be
registered with sanlock. However, if a QEMU domain was
started prior to enabling sanlock, the domain was not
registered with sanlock. Consequently, migration of a
virtual machine (VM) from such a QEMU domain failed with
a libvirt error. With this update, libvirt verifies
whether a QEMU domain process is registered with sanlock
before it starts working with the domain, ensuring that
migration of virtual machines works as expected.
After installing the updated packages, libvirtd will be restarted
See also :
Update the affected packages.
Risk factor :
Low / CVSS Base Score : 1.9