Red Hat: 2012:1379-01: openstack-swift: Important Advisory
Posted by Benjamin D. Thomas   
RedHat Linux Updated openstack-swift packages that fix one security issue are now available for Red Hat OpenStack Essex. The Red Hat Security Response Team has rated this update as having [More...]
=====================================================================
                   Red Hat Security Advisory

Synopsis:          Important: openstack-swift security update
Advisory ID:       RHSA-2012:1379-01
Product:           Red Hat OpenStack
Advisory URL:      https://rhn.redhat.com/errata/RHSA-2012-1379.html
Issue date:        2012-10-16
CVE Names:         CVE-2012-4406 
=====================================================================

1. Summary:

Updated openstack-swift packages that fix one security issue are now
available for Red Hat OpenStack Essex.

The Red Hat Security Response Team has rated this update as having
important 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:

RHOS Essex Release - noarch

3. Description:

OpenStack Swift (http://swift.openstack.org) is a highly available,
distributed, eventually consistent object/blob store.

It was found that OpenStack Swift used the Python pickle module in an
insecure way to serialize and deserialize data from memcached. As
memcached does not have authentication, an attacker on the local network,
or possibly an unprivileged user in a virtual machine hosted on OpenStack,
could use this flaw to inject specially-crafted data that would lead to
arbitrary code execution. (CVE-2012-4406)

Red Hat would like to thank Sebastian Krahmer of the SUSE Security Team for
reporting this issue.

Note: The fix for CVE-2012-4406 is not enabled by default, and requires
manual action on the affected Proxy nodes. This update adds a
"memcache_serialization_support" option. It is configured in
"/etc/swift/proxy-server.conf" and is set to "0" by default. This default
setting is vulnerable to CVE-2012-4406.

To enable the fix, this option must be changed; however, the required
changes can have a temporary, large performance impact. The following
instructions aim to minimize performance issues:

1) Install the updated openstack-swift packages.

2) In "/etc/swift/proxy-server.conf", set the
"memcache_serialization_support" option in the memcache/[filter:cache]
section to "1". (The default value, "0", leaves you vulnerable to
CVE-2012-4406.) When set to "1", the JSON (JavaScript Object Notation)
format is used but pickle is still supported. This configuration is still
vulnerable, but new data will be stored in JSON format.

3) After setting the option to "1", run "service openstack-swift-proxy
restart".

4) After 24 hours, set the "memcache_serialization_support" option in
"/etc/swift/proxy-server.conf" to "2". "2" is the secure option: only JSON
is used.

5) After setting the option to "2", run "service openstack-swift-proxy
restart".

If "memcache_serialization_support" is set directly from "0" to "2", all
data in memcached will be flushed and re-created. This can lead to a
temporary, large performance impact.

All users of openstack-swift are advised to upgrade to these updated
packages, which correct this issue.

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/knowledge/articles/11258

5. Bugs fixed (http://bugzilla.redhat.com/):

854757 - CVE-2012-4406 Openstack-Swift: insecure use of python pickle()

6. Package List:

RHOS Essex Release:

Source:
ftp://ftp.redhat.com/pub/redhat/linux/enterprise/6Server/en/RHOS/SRPMS/openstack-swift-1.4.8-5.el6.src.rpm

noarch:
openstack-swift-1.4.8-5.el6.noarch.rpm
openstack-swift-account-1.4.8-5.el6.noarch.rpm
openstack-swift-container-1.4.8-5.el6.noarch.rpm
openstack-swift-doc-1.4.8-5.el6.noarch.rpm
openstack-swift-object-1.4.8-5.el6.noarch.rpm
openstack-swift-proxy-1.4.8-5.el6.noarch.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-2012-4406.html
https://access.redhat.com/security/updates/classification/#important

8. Contact:

The Red Hat security contact is .  More contact
details at https://access.redhat.com/security/team/contact/

Copyright 2012 Red Hat, Inc.