-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 ===================================================================== Red Hat Security Advisory Synopsis: Moderate: libvirt security and bug fix update Advisory ID: RHSA-2014:0914-01 Product: Red Hat Enterprise Linux Advisory URL: https://rhn.redhat.com/errata/RHSA-2014-0914.html Issue date: 2014-07-22 CVE Names: CVE-2014-0179 ===================================================================== 1. Summary: Updated libvirt packages that fix one security issue and three bugs are now available for Red Hat Enterprise Linux 7. The Red Hat Security Response Team has rated this update as having Moderate security impact. A Common Vulnerability Scoring System (CVSS) base score, which gives a detailed severity rating, is available from the CVE link in the References section. 2. Relevant releases/architectures: Red Hat Enterprise Linux Client (v. 7) - x86_64 Red Hat Enterprise Linux Client Optional (v. 7) - x86_64 Red Hat Enterprise Linux ComputeNode (v. 7) - x86_64 Red Hat Enterprise Linux ComputeNode Optional (v. 7) - x86_64 Red Hat Enterprise Linux Server (v. 7) - ppc64, s390x, x86_64 Red Hat Enterprise Linux Server Optional (v. 7) - ppc64, s390x, x86_64 Red Hat Enterprise Linux Workstation (v. 7) - x86_64 Red Hat Enterprise Linux Workstation Optional (v. 7) - x86_64 3. Description: The libvirt library is a C API for managing and interacting with the virtualization capabilities of Linux and other operating systems. In addition, libvirt provides tools for remote management of virtualized systems. 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 file could use this flaw to read the contents of that file; parsing an XML document with an entity pointing to a special file that blocks on read access could cause libvirtd to hang indefinitely, resulting in a denial of service on the system. (CVE-2014-0179) Red Hat would like to thank the upstream Libvirt project for reporting this issue. Upstream acknowledges Daniel P. Berrange and Richard Jones as the original reporters. This update also fixes the following bugs: * A previous update of the libvirt package introduced an error; a SIG_SETMASK argument was incorrectly replaced by a SIG_BLOCK argument after the poll() system call. Consequently, the SIGCHLD signal could be permanently blocked, which caused signal masks to not return to their original values and defunct processes to be generated. With this update, the original signal masks are restored and defunct processes are no longer generated. (BZ#1112689) * An attempt to start a domain that did not exist caused network filters to be locked for read-only access. As a consequence, when trying to gain read-write access, a deadlock occurred. This update applies a patch to fix this bug and an attempt to start a non-existent domain no longer causes a deadlock in the described scenario. (BZ#1112690) * Previously, the libvirtd daemon was binding only to addresses that were configured on certain network interfaces. When libvirtd started before the IPv4 addresses had been configured, libvirtd listened only on the IPv6 addresses. The daemon has been modified to not require an address to be configured when binding to a wildcard address, such as "0.0.0.0" or "::". As a result, libvirtd binds to both IPv4 and IPv6 addresses as expected. (BZ#1112692) Users of libvirt are advised to upgrade to these updated packages, which fix these bugs. After installing the updated packages, libvirtd will be restarted automatically. 4. Solution: Before applying this update, make sure all previously released errata relevant to your system have been applied. This update is available via the Red Hat Network. Details on how to use the Red Hat Network to apply this update are available at https://access.redhat.com/articles/11258 5. Bugs fixed (https://bugzilla.redhat.com/): 1088290 - CVE-2014-0179 libvirt: unsafe parsing of XML documents allows libvirt DoS and/or arbitrary file read 1112689 - use of tls with libvirt.so can leave zombie processes 1112690 - nwfilter deadlock 1112692 - libvirt binds only to ipv6 6. Package List: Red Hat Enterprise Linux Client (v. 7): Source: libvirt-1.1.1-29.el7_0.1.src.rpm x86_64: libvirt-1.1.1-29.el7_0.1.x86_64.rpm libvirt-client-1.1.1-29.el7_0.1.i686.rpm libvirt-client-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-config-network-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-config-nwfilter-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-interface-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-lxc-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-network-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-nodedev-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-nwfilter-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-qemu-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-secret-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-storage-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-kvm-1.1.1-29.el7_0.1.x86_64.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.i686.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.x86_64.rpm libvirt-python-1.1.1-29.el7_0.1.x86_64.rpm Red Hat Enterprise Linux Client Optional (v. 7): x86_64: libvirt-daemon-lxc-1.1.1-29.el7_0.1.x86_64.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.i686.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.x86_64.rpm libvirt-devel-1.1.1-29.el7_0.1.i686.rpm libvirt-devel-1.1.1-29.el7_0.1.x86_64.rpm libvirt-docs-1.1.1-29.el7_0.1.x86_64.rpm libvirt-lock-sanlock-1.1.1-29.el7_0.1.x86_64.rpm libvirt-login-shell-1.1.1-29.el7_0.1.x86_64.rpm Red Hat Enterprise Linux ComputeNode (v. 7): Source: libvirt-1.1.1-29.el7_0.1.src.rpm x86_64: libvirt-client-1.1.1-29.el7_0.1.i686.rpm libvirt-client-1.1.1-29.el7_0.1.x86_64.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.i686.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.x86_64.rpm Red Hat Enterprise Linux ComputeNode Optional (v. 7): x86_64: libvirt-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-config-network-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-config-nwfilter-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-interface-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-lxc-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-network-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-nodedev-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-nwfilter-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-qemu-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-secret-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-storage-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-kvm-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-lxc-1.1.1-29.el7_0.1.x86_64.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.i686.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.x86_64.rpm libvirt-devel-1.1.1-29.el7_0.1.i686.rpm libvirt-devel-1.1.1-29.el7_0.1.x86_64.rpm libvirt-docs-1.1.1-29.el7_0.1.x86_64.rpm libvirt-lock-sanlock-1.1.1-29.el7_0.1.x86_64.rpm libvirt-login-shell-1.1.1-29.el7_0.1.x86_64.rpm libvirt-python-1.1.1-29.el7_0.1.x86_64.rpm Red Hat Enterprise Linux Server (v. 7): Source: libvirt-1.1.1-29.el7_0.1.src.rpm ppc64: libvirt-1.1.1-29.el7_0.1.ppc64.rpm libvirt-client-1.1.1-29.el7_0.1.ppc.rpm libvirt-client-1.1.1-29.el7_0.1.ppc64.rpm libvirt-daemon-1.1.1-29.el7_0.1.ppc64.rpm libvirt-daemon-config-network-1.1.1-29.el7_0.1.ppc64.rpm libvirt-daemon-config-nwfilter-1.1.1-29.el7_0.1.ppc64.rpm libvirt-daemon-driver-interface-1.1.1-29.el7_0.1.ppc64.rpm libvirt-daemon-driver-lxc-1.1.1-29.el7_0.1.ppc64.rpm libvirt-daemon-driver-network-1.1.1-29.el7_0.1.ppc64.rpm libvirt-daemon-driver-nodedev-1.1.1-29.el7_0.1.ppc64.rpm libvirt-daemon-driver-nwfilter-1.1.1-29.el7_0.1.ppc64.rpm libvirt-daemon-driver-secret-1.1.1-29.el7_0.1.ppc64.rpm libvirt-daemon-driver-storage-1.1.1-29.el7_0.1.ppc64.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.ppc.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.ppc64.rpm libvirt-devel-1.1.1-29.el7_0.1.ppc.rpm libvirt-devel-1.1.1-29.el7_0.1.ppc64.rpm libvirt-docs-1.1.1-29.el7_0.1.ppc64.rpm libvirt-python-1.1.1-29.el7_0.1.ppc64.rpm s390x: libvirt-1.1.1-29.el7_0.1.s390x.rpm libvirt-client-1.1.1-29.el7_0.1.s390.rpm libvirt-client-1.1.1-29.el7_0.1.s390x.rpm libvirt-daemon-1.1.1-29.el7_0.1.s390x.rpm libvirt-daemon-config-network-1.1.1-29.el7_0.1.s390x.rpm libvirt-daemon-config-nwfilter-1.1.1-29.el7_0.1.s390x.rpm libvirt-daemon-driver-interface-1.1.1-29.el7_0.1.s390x.rpm libvirt-daemon-driver-lxc-1.1.1-29.el7_0.1.s390x.rpm libvirt-daemon-driver-network-1.1.1-29.el7_0.1.s390x.rpm libvirt-daemon-driver-nodedev-1.1.1-29.el7_0.1.s390x.rpm libvirt-daemon-driver-nwfilter-1.1.1-29.el7_0.1.s390x.rpm libvirt-daemon-driver-secret-1.1.1-29.el7_0.1.s390x.rpm libvirt-daemon-driver-storage-1.1.1-29.el7_0.1.s390x.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.s390.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.s390x.rpm libvirt-devel-1.1.1-29.el7_0.1.s390.rpm libvirt-devel-1.1.1-29.el7_0.1.s390x.rpm libvirt-docs-1.1.1-29.el7_0.1.s390x.rpm libvirt-python-1.1.1-29.el7_0.1.s390x.rpm x86_64: libvirt-1.1.1-29.el7_0.1.x86_64.rpm libvirt-client-1.1.1-29.el7_0.1.i686.rpm libvirt-client-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-config-network-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-config-nwfilter-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-interface-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-lxc-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-network-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-nodedev-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-nwfilter-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-qemu-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-secret-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-storage-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-kvm-1.1.1-29.el7_0.1.x86_64.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.i686.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.x86_64.rpm libvirt-devel-1.1.1-29.el7_0.1.i686.rpm libvirt-devel-1.1.1-29.el7_0.1.x86_64.rpm libvirt-docs-1.1.1-29.el7_0.1.x86_64.rpm libvirt-python-1.1.1-29.el7_0.1.x86_64.rpm Red Hat Enterprise Linux Server Optional (v. 7): ppc64: libvirt-daemon-lxc-1.1.1-29.el7_0.1.ppc64.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.ppc64.rpm libvirt-login-shell-1.1.1-29.el7_0.1.ppc64.rpm s390x: libvirt-daemon-lxc-1.1.1-29.el7_0.1.s390x.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.s390x.rpm libvirt-login-shell-1.1.1-29.el7_0.1.s390x.rpm x86_64: libvirt-daemon-lxc-1.1.1-29.el7_0.1.x86_64.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.x86_64.rpm libvirt-lock-sanlock-1.1.1-29.el7_0.1.x86_64.rpm libvirt-login-shell-1.1.1-29.el7_0.1.x86_64.rpm Red Hat Enterprise Linux Workstation (v. 7): Source: libvirt-1.1.1-29.el7_0.1.src.rpm x86_64: libvirt-1.1.1-29.el7_0.1.x86_64.rpm libvirt-client-1.1.1-29.el7_0.1.i686.rpm libvirt-client-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-config-network-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-config-nwfilter-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-interface-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-lxc-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-network-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-nodedev-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-nwfilter-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-qemu-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-secret-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-driver-storage-1.1.1-29.el7_0.1.x86_64.rpm libvirt-daemon-kvm-1.1.1-29.el7_0.1.x86_64.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.i686.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.x86_64.rpm libvirt-devel-1.1.1-29.el7_0.1.i686.rpm libvirt-devel-1.1.1-29.el7_0.1.x86_64.rpm libvirt-docs-1.1.1-29.el7_0.1.x86_64.rpm libvirt-python-1.1.1-29.el7_0.1.x86_64.rpm Red Hat Enterprise Linux Workstation Optional (v. 7): x86_64: libvirt-daemon-lxc-1.1.1-29.el7_0.1.x86_64.rpm libvirt-debuginfo-1.1.1-29.el7_0.1.x86_64.rpm libvirt-lock-sanlock-1.1.1-29.el7_0.1.x86_64.rpm libvirt-login-shell-1.1.1-29.el7_0.1.x86_64.rpm These packages are GPG signed by Red Hat for security. Our key and details on how to verify the signature are available from https://access.redhat.com/security/team/key/#package 7. References: https://www.redhat.com/security/data/cve/CVE-2014-0179.html https://access.redhat.com/security/updates/classification/#moderate 8. Contact: The Red Hat security contact is . More contact details at https://access.redhat.com/security/team/contact/ Copyright 2014 Red Hat, Inc. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.4 (GNU/Linux) iD8DBQFTzrpNXlSAg2UNWIIRAjWbAJ0ScITval9+4WYDGOxYra/b1OLdugCfQrUX hQi7hw60VaScIn3NdbfswRI= =Y2li -----END PGP SIGNATURE----- -- RHSA-announce mailing list RHSA-announce@redhat.com https://www.redhat.com/mailman/listinfo/rhsa-announce