Libvirt is vulnerable to directory traversal when using Access Control Lists (ACL).
|Package||app-emulation/libvirt on all architectures|
|Affected versions||< 1.2.21-r1|
|Unaffected versions||>= 1.2.21-r1|
libvirt is a C toolkit for manipulating virtual machines.
Normally, only privileged users can coerce libvirt into creating or opening existing files using the virStorageVol APIs; and such users already have full privilege to create any domain XML.
But in the case of fine-grained ACLs, it is feasible that a user can be granted storage_vol:create but not domain:write, and it violates assumptions if such a user can abuse libvirt to access files outside of the storage pool.
When fine-grained Access Control Lists (ACL) are in effect, an authenticated local user with storage_vol:create permission but without domain:write permission maybe able to create or access arbitrary files outside of the storage pool.
Don’t make use of fine-grained Access Control Lists (ACL) in libvirt; In Gentoo, libvirt’s ACL support is disable by default unless you enable the “policykit” USE flag.
All libvirt users should upgrade to the latest version:
# emerge --sync # emerge --ask --oneshot --verbose ">=app-emulation/libvirt-1.2.21-r1"
December 04, 2016
December 04, 2016: 1