<?xml version="1.0" encoding="utf-8"?>
<cvrfdoc xmlns="http://www.icasi.org/CVRF/schema/cvrf/1.1" xmlns:cvrf="http://www.icasi.org/CVRF/schema/cvrf/1.1">
  <DocumentTitle xml:lang="en">Red Hat Security Advisory: libvirt security and bug fix update</DocumentTitle>
  <DocumentType>Security Advisory</DocumentType>
  <DocumentPublisher Type="Vendor">
    <ContactDetails>secalert@redhat.com</ContactDetails>
    <IssuingAuthority>Red Hat Security Response Team</IssuingAuthority>
  </DocumentPublisher>
  <DocumentTracking>
    <Identification><ID>RHSA-2012:1202</ID></Identification>
    <Status>Final</Status>
    <Version>1</Version>
    <RevisionHistory>
       <Revision>
         <Number>1</Number>
         <Date>2012-08-23T14:45:00Z</Date>
         <Description>Current version</Description>
       </Revision>
    </RevisionHistory>
    <InitialReleaseDate>2012-08-23T14:45:00Z</InitialReleaseDate>
    <CurrentReleaseDate>2012-08-23T14:45:00Z</CurrentReleaseDate>
    <Generator>
      <Engine>Red Hat rhsa-to-cvrf 1.0.1484</Engine>
      <Date>2012-08-23T14:57:01Z</Date>
    </Generator>
  </DocumentTracking>
  <DocumentNotes>
    <Note Title="Topic" Type="Summary" Ordinal="1" xml:lang="en">
Updated libvirt packages that fix one security issue and two bugs are now
available for Red Hat Enterprise Linux 6.

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.    </Note>
    <Note Title="Details" Type="General" Ordinal="2" xml:lang="en">
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.

A flaw was found in libvirtd's RPC call handling. An attacker able to
establish a read-only connection to libvirtd could trigger this flaw with a
specially-crafted RPC command that has the number of parameters set to 0,
causing libvirtd to access invalid memory and crash. (CVE-2012-3445)

This update also fixes the following bugs:

* Previously, repeatedly migrating a guest between two machines while using
the tunnelled migration could cause the libvirt daemon to lock up
unexpectedly. The bug in the code for locking remote drivers has been fixed
and repeated tunnelled migrations of domains now work as expected.
(BZ#847946)

* Previously, when certain system locales were used by the system, libvirt
could issue incorrect commands to the hypervisor. This bug has been fixed
and the libvirt library and daemon are no longer affected by the choice of
the user locale. (BZ#847959)

All users of libvirt are advised to upgrade to these updated packages,
which contain backported patches to correct these issues. After installing
the updated packages, libvirtd will be restarted automatically.    </Note>
    <Note Title="Terms of Use" Ordinal="3" Type="Legal Disclaimer" xml:lang="en">Please see https://www.redhat.com/footer/terms-of-use.html</Note>
  </DocumentNotes>
  <DocumentDistribution xml:lang="en">Copyright © 2012 Red Hat, Inc. All rights reserved.</DocumentDistribution>
  <AggregateSeverity Namespace="https://access.redhat.com/security/updates/classification/">Moderate</AggregateSeverity>
  <DocumentReferences>
    <Reference Type="Self">
       <URL>https://rhn.redhat.com/errata/RHSA-2012-1202.html</URL>
       <Description>https://rhn.redhat.com/errata/RHSA-2012-1202.html</Description>
    </Reference>
    <Reference>
       <URL>https://access.redhat.com/security/updates/classification/#moderate</URL>
       <Description>https://access.redhat.com/security/updates/classification/#moderate</Description>
    </Reference>
    <Reference>
       <URL>https://bugzilla.redhat.com/show_bug.cgi?id=847946</URL>
       <Description>https://bugzilla.redhat.com/show_bug.cgi?id=847946</Description>
    </Reference>
  </DocumentReferences>
  <ProductTree xmlns="http://www.icasi.org/CVRF/schema/prod/1.1">
    <Branch Type="Product Family" Name="Red Hat Enterprise Linux">
      <Branch Type="Product Name" Name="Red Hat Enterprise Linux HPC Node Optional (v. 6)">
        <FullProductName ProductID="6ComputeNode-optional-6.3.z">Red Hat Enterprise Linux HPC Node Optional (v. 6)</FullProductName>
      </Branch>
      <Branch Type="Product Name" Name="Red Hat Enterprise Linux Server (v. 6)">
        <FullProductName ProductID="6Server-6.3.z">Red Hat Enterprise Linux Server (v. 6)</FullProductName>
      </Branch>
      <Branch Type="Product Name" Name="Red Hat Enterprise Linux Workstation (v. 6)">
        <FullProductName ProductID="6Workstation-6.3.z">Red Hat Enterprise Linux Workstation (v. 6)</FullProductName>
      </Branch>
      <Branch Type="Product Name" Name="Red Hat Enterprise Linux Desktop Optional (v. 6)">
        <FullProductName ProductID="6Client-optional-6.3.z">Red Hat Enterprise Linux Desktop Optional (v. 6)</FullProductName>
      </Branch>
      <Branch Type="Product Name" Name="Red Hat Enterprise Linux Workstation Optional (v. 6)">
        <FullProductName ProductID="6Workstation-optional-6.3.z">Red Hat Enterprise Linux Workstation Optional (v. 6)</FullProductName>
      </Branch>
      <Branch Type="Product Name" Name="Red Hat Enterprise Linux HPC Node (v. 6)">
        <FullProductName ProductID="6ComputeNode-6.3.z">Red Hat Enterprise Linux HPC Node (v. 6)</FullProductName>
      </Branch>
      <Branch Type="Product Name" Name="Red Hat Enterprise Linux Desktop (v. 6)">
        <FullProductName ProductID="6Client-6.3.z">Red Hat Enterprise Linux Desktop (v. 6)</FullProductName>
      </Branch>
      <Branch Type="Product Name" Name="Red Hat Enterprise Linux Server Optional (v. 6)">
        <FullProductName ProductID="6Server-optional-6.3.z">Red Hat Enterprise Linux Server Optional (v. 6)</FullProductName>
      </Branch>
    </Branch>
    <Branch Type="Product Version" Name="libvirt-0.9.10-21.el6_3.4">
      <FullProductName ProductID="libvirt-0.9.10-21.el6_3.4">libvirt-0.9.10-21.el6_3.4.src.rpm</FullProductName>
    </Branch>
    <Relationship ProductReference="libvirt-0.9.10-21.el6_3.4" RelationType="Default Component Of" RelatesToProductReference="6ComputeNode-optional-6.3.z">
      <FullProductName ProductID="6ComputeNode-optional-6.3.z:libvirt-0.9.10-21.el6_3.4">libvirt-0.9.10-21.el6_3.4 as a component of Red Hat Enterprise Linux HPC Node Optional (v. 6)</FullProductName>
    </Relationship>
    <Relationship ProductReference="libvirt-0.9.10-21.el6_3.4" RelationType="Default Component Of" RelatesToProductReference="6Server-6.3.z">
      <FullProductName ProductID="6Server-6.3.z:libvirt-0.9.10-21.el6_3.4">libvirt-0.9.10-21.el6_3.4 as a component of Red Hat Enterprise Linux Server (v. 6)</FullProductName>
    </Relationship>
    <Relationship ProductReference="libvirt-0.9.10-21.el6_3.4" RelationType="Default Component Of" RelatesToProductReference="6Workstation-6.3.z">
      <FullProductName ProductID="6Workstation-6.3.z:libvirt-0.9.10-21.el6_3.4">libvirt-0.9.10-21.el6_3.4 as a component of Red Hat Enterprise Linux Workstation (v. 6)</FullProductName>
    </Relationship>
    <Relationship ProductReference="libvirt-0.9.10-21.el6_3.4" RelationType="Default Component Of" RelatesToProductReference="6Client-optional-6.3.z">
      <FullProductName ProductID="6Client-optional-6.3.z:libvirt-0.9.10-21.el6_3.4">libvirt-0.9.10-21.el6_3.4 as a component of Red Hat Enterprise Linux Desktop Optional (v. 6)</FullProductName>
    </Relationship>
    <Relationship ProductReference="libvirt-0.9.10-21.el6_3.4" RelationType="Default Component Of" RelatesToProductReference="6Workstation-optional-6.3.z">
      <FullProductName ProductID="6Workstation-optional-6.3.z:libvirt-0.9.10-21.el6_3.4">libvirt-0.9.10-21.el6_3.4 as a component of Red Hat Enterprise Linux Workstation Optional (v. 6)</FullProductName>
    </Relationship>
    <Relationship ProductReference="libvirt-0.9.10-21.el6_3.4" RelationType="Default Component Of" RelatesToProductReference="6ComputeNode-6.3.z">
      <FullProductName ProductID="6ComputeNode-6.3.z:libvirt-0.9.10-21.el6_3.4">libvirt-0.9.10-21.el6_3.4 as a component of Red Hat Enterprise Linux HPC Node (v. 6)</FullProductName>
    </Relationship>
    <Relationship ProductReference="libvirt-0.9.10-21.el6_3.4" RelationType="Default Component Of" RelatesToProductReference="6Client-6.3.z">
      <FullProductName ProductID="6Client-6.3.z:libvirt-0.9.10-21.el6_3.4">libvirt-0.9.10-21.el6_3.4 as a component of Red Hat Enterprise Linux Desktop (v. 6)</FullProductName>
    </Relationship>
    <Relationship ProductReference="libvirt-0.9.10-21.el6_3.4" RelationType="Default Component Of" RelatesToProductReference="6Server-optional-6.3.z">
      <FullProductName ProductID="6Server-optional-6.3.z:libvirt-0.9.10-21.el6_3.4">libvirt-0.9.10-21.el6_3.4 as a component of Red Hat Enterprise Linux Server Optional (v. 6)</FullProductName>
    </Relationship>
  </ProductTree>

  <Vulnerability Ordinal="1" xmlns="http://www.icasi.org/CVRF/schema/vuln/1.1">
    <Notes><Note Title="Vulnerability Description" Type="General" Ordinal="1" xml:lang="en">A flaw was found in libvirtd's RPC call handling. An attacker able to establish a read-only connection to libvirtd could trigger this flaw with a specially-crafted RPC command that has the number of parameters set to 0, causing libvirtd to access invalid memory and crash. </Note></Notes>
    <DiscoveryDate>2012-07-30T00:00:00Z</DiscoveryDate>
    <ReleaseDate>2012-07-30T00:00:00Z</ReleaseDate>
    <Involvements><Involvement Party="Vendor" Status="Completed"></Involvement></Involvements>
    <CVE>CVE-2012-3445</CVE>
    <ProductStatuses><Status Type="Fixed">
      <ProductID>6Client-6.3.z:libvirt-0.9.10-21.el6_3.4</ProductID>
      <ProductID>6Client-optional-6.3.z:libvirt-0.9.10-21.el6_3.4</ProductID>
      <ProductID>6ComputeNode-6.3.z:libvirt-0.9.10-21.el6_3.4</ProductID>
      <ProductID>6ComputeNode-optional-6.3.z:libvirt-0.9.10-21.el6_3.4</ProductID>
      <ProductID>6Server-6.3.z:libvirt-0.9.10-21.el6_3.4</ProductID>
      <ProductID>6Server-optional-6.3.z:libvirt-0.9.10-21.el6_3.4</ProductID>
      <ProductID>6Workstation-6.3.z:libvirt-0.9.10-21.el6_3.4</ProductID>
      <ProductID>6Workstation-optional-6.3.z:libvirt-0.9.10-21.el6_3.4</ProductID>
    </Status></ProductStatuses>
    <Threats><Threat Type="Impact"><Description>Moderate</Description></Threat></Threats>
    <CVSSScoreSets><ScoreSet>
      <BaseScore>3.3</BaseScore>
      <Vector>AV:A/AC:L/Au:N/C:N/I:N/A:P</Vector>
    </ScoreSet></CVSSScoreSets>
    <Remediations>
      <Remediation Type="Vendor Fix"><Description xml:lang="en">
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/knowledge/articles/11258    </Description>      <URL>https://rhn.redhat.com/errata/RHSA-2012-1202.html</URL></Remediation>
    </Remediations>
    <References>
      <Reference>
        <URL>https://www.redhat.com/security/data/cve/CVE-2012-3445.html</URL>
        <Description>CVE-2012-3445</Description>
      </Reference>
      <Reference>
        <URL>https://bugzilla.redhat.com/show_bug.cgi?id=844734</URL>
        <Description>bz#844734: CVE-2012-3445 libvirt: crash in virTypedParameterArrayClear</Description>
      </Reference>
    </References>
  </Vulnerability>
</cvrfdoc>
