libvirt: Multiple vulnerabilities — GLSA 201309-18

Multiple vulnerabilities have been found in libvirt, allowing remote attackers to execute arbitrary code or cause Denial of Service.

Affected packages

app-emulation/libvirt on all architectures
Affected versions < 1.0.5.1-r3
Unaffected versions >= 1.0.5.1-r3

Background

libvirt is a C toolkit for manipulating virtual machines.

Description

An error in the virNetMessageFree() function in rpc/virnetserverclient.c can lead to a use-after-free. Additionally, a socket leak in the remoteDispatchStoragePoolListAllVolumes command can lead to file descriptor exhaustion.

Impact

A remote attacker could cause certain errors during an RPC connection to cause a message to be freed without being removed from the message queue, possibly resulting in execution of arbitrary code or a Denial of Service condition. Additionally, a remote attacker could repeatedly issue the command to list all pool volumes, causing a Denial of Service condition.

Workaround

There is no known workaround at this time.

Resolution

All libvirt users should upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose
 ">=app-emulation/libvirt-1.0.5.1-r3"
 

References

Release date
September 25, 2013

Latest revision
September 25, 2013: 1

Severity
normal

Exploitable
remote

Bugzilla entries