-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

===========================================================================
             AUSCERT External Security Bulletin Redistribution

                               ESB-2014.1209
               Moderate: libvirt security and bug fix update
                               23 July 2014

===========================================================================

        AusCERT Security Bulletin Summary
        ---------------------------------

Product:           libvirt
Publisher:         Red Hat
Operating System:  Red Hat Enterprise Linux Server 7
                   Red Hat Enterprise Linux WS/Desktop 7
Impact/Access:     Denial of Service        -- Existing Account
                   Access Confidential Data -- Existing Account
Resolution:        Patch/Upgrade
CVE Names:         CVE-2014-0179  

Reference:         ESB-2014.0889
                   ESB-2014.0834

Original Bulletin: 
   https://rhn.redhat.com/errata/RHSA-2014-0914.html

- --------------------------BEGIN INCLUDED TEXT--------------------

- -----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 <secalert@redhat.com>.  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-----

- --------------------------END INCLUDED TEXT--------------------

You have received this e-mail bulletin as a result of your organisation's
registration with AusCERT. The mailing list you are subscribed to is
maintained within your organisation, so if you do not wish to continue
receiving these bulletins you should contact your local IT manager. If
you do not know who that is, please send an email to auscert@auscert.org.au
and we will forward your request to the appropriate person.

NOTE: Third Party Rights
This security bulletin is provided as a service to AusCERT's members.  As
AusCERT did not write the document quoted above, AusCERT has had no control
over its content. The decision to follow or act on information or advice
contained in this security bulletin is the responsibility of each user or
organisation, and should be considered in accordance with your organisation's
site policies and procedures. AusCERT takes no responsibility for consequences
which may arise from following or acting on information or advice contained in
this security bulletin.

NOTE: This is only the original release of the security bulletin.  It may
not be updated when updates to the original are made.  If downloading at
a later date, it is recommended that the bulletin is retrieved directly
from the author's website to ensure that the information is still current.

Contact information for the authors of the original document is included
in the Security Bulletin above.  If you have any questions or need further
information, please contact them directly.

Previous advisories and external security bulletins can be retrieved from:

        http://www.auscert.org.au/render.html?cid=1980

===========================================================================
Australian Computer Emergency Response Team
The University of Queensland
Brisbane
Qld 4072

Internet Email: auscert@auscert.org.au
Facsimile:      (07) 3365 7031
Telephone:      (07) 3365 4417 (International: +61 7 3365 4417)
                AusCERT personnel answer during Queensland business hours
                which are GMT+10:00 (AEST).
                On call after hours for member emergencies only.
===========================================================================
-----BEGIN PGP SIGNATURE-----
Comment: http://www.auscert.org.au/render.html?it=1967

iQIVAwUBU88NqhLndAQH1ShLAQJKfxAAiN0ufOFqLX+YwqaA4fnqo3N65cwqGxSn
FT4N7xHpxsDb1i+XtjmGeZNKmGWcUd4B93gP9ZxWJsH3rIYnE8XgVNXwXf6I3KYP
8ebtt8h/2IrjLUugnwsrE1jKNvNFGvkvmibeCBzre6rou/aUiQ3XR7p9/8+ZBwB3
wtEnJ37mP0IuoPucutKSQ0NFx4JINyXJ8N9OSd+dqDn8/+cB5aPLDXheoLRqDQIU
fsO9D2lv7eq+VCTQKL2U3J4+NbRkH2Bbq04uyEtZbyepAKxZtedm1FvW+2Nm5kNf
9FdOuGjkJ4dnTJegXKboMvjtoGpXNtsmF7pEBxfK9G7Yf7D7RUqYkcCF8kIRDYn2
XoM3+qirxqwnUO0QOq6GDekK0/2cHhcuVUb9f3fsnfcW00F8CyT3hxuGboFNFmaV
UtWz5r8GxkZXI1w3GOx98kDsSlOAyUUI9bQTC9nhiskxanVtZ7NGt9MTVwLjjEC4
g/33kXRvgAIq9c87kshPE5b3C9/shd8aSeVKKcF7KVV6oIdsxkiIH9AfOe+KuTyD
Y/8LMSFaygN/tp7rI3oM+pqHkhAb1YHBQ33ngLZWFVWs+fiZeBffYQZGxCVXE10G
qLzngZrHJ5rO7b/bS0dUMTOTytw3KGXKjNDc4FeWuUwNcR6vVikKREfI2ZopRop0
Z2vebPIYpFA=
=QEEM
-----END PGP SIGNATURE-----