CVE Vulnerabilities

CVE-2012-4406

Deserialization of Untrusted Data

Published: Oct 22, 2012 | Modified: Apr 11, 2025
CVSS 3.x
9.8
CRITICAL
Source:
NVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 2.x
7.5 HIGH
AV:N/AC:L/Au:N/C:P/I:P/A:P
RedHat/V2
7.5 IMPORTANT
AV:N/AC:L/Au:N/C:P/I:P/A:P
RedHat/V3
Ubuntu
LOW
root.io logo minimus.io logo echo.ai logo

OpenStack Object Storage (swift) before 1.7.0 uses the loads function in the pickle Python module unsafely when storing and loading metadata in memcached, which allows remote attackers to execute arbitrary code via a crafted pickle object.

Weakness

The product deserializes untrusted data without sufficiently ensuring that the resulting data will be valid.

Affected Software

NameVendorStart VersionEnd Version
SwiftOpenstack*1.7.0 (excluding)
Native Client for RHEL 5 for Red Hat StorageRedHatglusterfs-0:3.3.0.7rhs-1.el5*
Native Client for RHEL 6 for Red Hat StorageRedHatglusterfs-0:3.3.0.7rhs-1.el6*
OpenStack Essex for RHEL 6RedHatopenstack-swift-0:1.4.8-5.el6*
Red Hat Storage 2.0RedHatappliance-0:1.7.1-1.el6rhs*
Red Hat Storage 2.0RedHataugeas-0:0.9.0-1.el6*
Red Hat Storage 2.0RedHatglusterfs-0:3.3.0.7rhs-1.el6rhs*
Red Hat Storage 2.0RedHatgluster-swift-0:1.4.8-5.el6rhs*
Red Hat Storage 2.0RedHatlibvirt-0:0.9.10-21.el6_3.8*
Red Hat Storage 2.0RedHatrhn-client-tools-0:1.0.0-73.el6rhs*
Red Hat Storage 2.0RedHatsanlock-0:2.3-4.el6_3*
Red Hat Storage 2.0RedHatsos-0:2.2-17.2.el6rhs*
Red Hat Storage 2.0RedHatvdsm-0:4.9.6-20.el6rhs*
Red Hat Storage 2.0 ConsoleRedHatorg.ovirt.engine-root-0:2.0.techpreview1-4*
Red Hat Storage 2.0 ConsoleRedHatvdsm-0:4.9.6-20.el6rhs*
SwiftUbuntunatty*
SwiftUbuntuoneiric*
SwiftUbuntuprecise*
SwiftUbuntuupstream*

Potential Mitigations

  • Make fields transient to protect them from deserialization.
  • An attempt to serialize and then deserialize a class containing transient fields will result in NULLs where the transient data should be. This is an excellent way to prevent time, environment-based, or sensitive variables from being carried over and used improperly.

References