Vulnerabilities > CVE-2012-2135

047910
CVSS 0.0 - NONE
Attack vector
UNKNOWN
Attack complexity
UNKNOWN
Privileges required
UNKNOWN
Confidentiality impact
UNKNOWN
Integrity impact
UNKNOWN
Availability impact
UNKNOWN

Summary

The utf-16 decoder in Python 3.1 through 3.3 does not update the aligned_end variable after calling the unicode_decode_call_errorhandler function, which allows remote attackers to obtain sensitive information (process memory) or cause a denial of service (memory corruption and crash) via unspecified vectors.

Nessus

  • NASL familySuSE Local Security Checks
    NASL idOPENSUSE-2012-380.NASL
    descriptionpython3 was fixed for : - Fix bnc#758993 - CVE-2012-2135: python3 utf-16 decoder unicode_decode_call_errorhandler aligned_end is not updated
    last seen2020-06-05
    modified2014-06-13
    plugin id74675
    published2014-06-13
    reporterThis script is Copyright (C) 2014-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/74675
    titleopenSUSE Security Update : python3 (openSUSE-SU-2012:0861-1)
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from openSUSE Security Update openSUSE-2012-380.
    #
    # The text description of this plugin is (C) SUSE LLC.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(74675);
      script_version("1.3");
      script_set_attribute(attribute:"plugin_modification_date", value:"2020/06/04");
    
      script_cve_id("CVE-2012-2135");
    
      script_name(english:"openSUSE Security Update : python3 (openSUSE-SU-2012:0861-1)");
      script_summary(english:"Check for the openSUSE-2012-380 patch");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote openSUSE host is missing a security update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "python3 was fixed for :
    
      - Fix bnc#758993 - CVE-2012-2135: python3 utf-16 decoder
        unicode_decode_call_errorhandler aligned_end is not
        updated"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=758993"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://lists.opensuse.org/opensuse-updates/2012-07/msg00022.html"
      );
      script_set_attribute(
        attribute:"solution", 
        value:"Update the affected python3 packages."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:N/A:P");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libpython3_2mu1_0");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libpython3_2mu1_0-32bit");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libpython3_2mu1_0-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:libpython3_2mu1_0-debuginfo-32bit");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-2to3");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-32bit");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-base");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-base-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-base-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-curses");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-curses-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-dbm");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-dbm-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-debuginfo-32bit");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-debugsource");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-devel");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-devel-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-doc-pdf");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-idle");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-tk");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-tk-debuginfo");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-tools");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-xml");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:opensuse:python3-xml-debuginfo");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:opensuse:12.1");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2012/07/04");
      script_set_attribute(attribute:"plugin_publication_date", value:"2014/06/13");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2014-2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/SuSE/release", "Host/SuSE/rpm-list", "Host/cpu");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/SuSE/release");
    if (isnull(release) || release =~ "^(SLED|SLES)") audit(AUDIT_OS_NOT, "openSUSE");
    if (release !~ "^(SUSE12\.1)$") audit(AUDIT_OS_RELEASE_NOT, "openSUSE", "12.1", release);
    if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    ourarch = get_kb_item("Host/cpu");
    if (!ourarch) audit(AUDIT_UNKNOWN_ARCH);
    if (ourarch !~ "^(i586|i686|x86_64)$") audit(AUDIT_ARCH_NOT, "i586 / i686 / x86_64", ourarch);
    
    flag = 0;
    
    if ( rpm_check(release:"SUSE12.1", reference:"libpython3_2mu1_0-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"libpython3_2mu1_0-debuginfo-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-2to3-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-base-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-base-debuginfo-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-base-debugsource-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-curses-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-curses-debuginfo-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-dbm-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-dbm-debuginfo-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-debuginfo-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-debugsource-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-devel-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-devel-debuginfo-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-doc-pdf-3.2-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-idle-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-tk-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-tk-debuginfo-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-tools-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-xml-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", reference:"python3-xml-debuginfo-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", cpu:"x86_64", reference:"libpython3_2mu1_0-32bit-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", cpu:"x86_64", reference:"libpython3_2mu1_0-debuginfo-32bit-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", cpu:"x86_64", reference:"python3-32bit-3.2.1-5.9.1") ) flag++;
    if ( rpm_check(release:"SUSE12.1", cpu:"x86_64", reference:"python3-debuginfo-32bit-3.2.1-5.9.1") ) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "python3");
    }
    
  • NASL familyUbuntu Local Security Checks
    NASL idUBUNTU_USN-1615-1.NASL
    descriptionIt was discovered that Python distutils contained a race condition when creating the ~/.pypirc file. A local attacker could exploit this to obtain sensitive information. (CVE-2011-4944) It was discovered that SimpleXMLRPCServer did not properly validate its input when handling HTTP POST requests. A remote attacker could exploit this to cause a denial of service via excessive CPU utilization. This issue only affected Ubuntu 11.04 and 11.10. (CVE-2012-0845) It was discovered that Python was susceptible to hash algorithm attacks. An attacker could cause a denial of service under certian circumstances. This update adds the
    last seen2020-06-01
    modified2020-06-02
    plugin id62677
    published2012-10-24
    reporterUbuntu Security Notice (C) 2012-2019 Canonical, Inc. / NASL script (C) 2012-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/62677
    titleUbuntu 11.04 / 11.10 / 12.04 LTS / 12.10 : python3.2 vulnerabilities (USN-1615-1)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from Ubuntu Security Notice USN-1615-1. The text 
    # itself is copyright (C) Canonical, Inc. See 
    # <http://www.ubuntu.com/usn/>. Ubuntu(R) is a registered 
    # trademark of Canonical, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(62677);
      script_version("1.7");
      script_cvs_date("Date: 2019/09/19 12:54:28");
    
      script_cve_id("CVE-2011-4944", "CVE-2012-0845", "CVE-2012-1150", "CVE-2012-2135");
      script_xref(name:"USN", value:"1615-1");
    
      script_name(english:"Ubuntu 11.04 / 11.10 / 12.04 LTS / 12.10 : python3.2 vulnerabilities (USN-1615-1)");
      script_summary(english:"Checks dpkg output for updated packages.");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:
    "The remote Ubuntu host is missing one or more security-related
    patches."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "It was discovered that Python distutils contained a race condition
    when creating the ~/.pypirc file. A local attacker could exploit this
    to obtain sensitive information. (CVE-2011-4944)
    
    It was discovered that SimpleXMLRPCServer did not properly validate
    its input when handling HTTP POST requests. A remote attacker could
    exploit this to cause a denial of service via excessive CPU
    utilization. This issue only affected Ubuntu 11.04 and 11.10.
    (CVE-2012-0845)
    
    It was discovered that Python was susceptible to hash algorithm
    attacks. An attacker could cause a denial of service under certian
    circumstances. This update adds the '-R' command line option and
    honors setting the PYTHONHASHSEED environment variable to 'random' to
    salt str and datetime objects with an unpredictable value. This issue
    only affected Ubuntu 11.04 and 11.10. (CVE-2012-1150)
    
    Serhiy Storchaka discovered that the UTF16 decoder in Python did not
    properly reset internal variables after error handling. An attacker
    could exploit this to cause a denial of service via memory corruption.
    This issue did not affect Ubuntu 12.10. (CVE-2012-2135).
    
    Note that Tenable Network Security has extracted the preceding
    description block directly from the Ubuntu security advisory. Tenable
    has attempted to automatically clean and format it as much as possible
    without introducing additional issues."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://usn.ubuntu.com/1615-1/"
      );
      script_set_attribute(
        attribute:"solution", 
        value:"Update the affected python3.2 and / or python3.2-minimal packages."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:N/A:P");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:python3.2");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:python3.2-minimal");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:11.04");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:11.10");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:12.04:-:lts");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:12.10");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2012/08/14");
      script_set_attribute(attribute:"patch_publication_date", value:"2012/10/23");
      script_set_attribute(attribute:"plugin_publication_date", value:"2012/10/24");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"Ubuntu Security Notice (C) 2012-2019 Canonical, Inc. / NASL script (C) 2012-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Ubuntu Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/cpu", "Host/Ubuntu", "Host/Ubuntu/release", "Host/Debian/dpkg-l");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("ubuntu.inc");
    include("misc_func.inc");
    
    if ( ! get_kb_item("Host/local_checks_enabled") ) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/Ubuntu/release");
    if ( isnull(release) ) audit(AUDIT_OS_NOT, "Ubuntu");
    release = chomp(release);
    if (! preg(pattern:"^(11\.04|11\.10|12\.04|12\.10)$", string:release)) audit(AUDIT_OS_NOT, "Ubuntu 11.04 / 11.10 / 12.04 / 12.10", "Ubuntu " + release);
    if ( ! get_kb_item("Host/Debian/dpkg-l") ) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Ubuntu", cpu);
    
    flag = 0;
    
    if (ubuntu_check(osver:"11.04", pkgname:"python3.2", pkgver:"3.2-1ubuntu1.2")) flag++;
    if (ubuntu_check(osver:"11.04", pkgname:"python3.2-minimal", pkgver:"3.2-1ubuntu1.2")) flag++;
    if (ubuntu_check(osver:"11.10", pkgname:"python3.2", pkgver:"3.2.2-0ubuntu1.1")) flag++;
    if (ubuntu_check(osver:"11.10", pkgname:"python3.2-minimal", pkgver:"3.2.2-0ubuntu1.1")) flag++;
    if (ubuntu_check(osver:"12.04", pkgname:"python3.2", pkgver:"3.2.3-0ubuntu3.2")) flag++;
    if (ubuntu_check(osver:"12.04", pkgname:"python3.2-minimal", pkgver:"3.2.3-0ubuntu3.2")) flag++;
    if (ubuntu_check(osver:"12.10", pkgname:"python3.2", pkgver:"3.2.3-6ubuntu3.1")) flag++;
    if (ubuntu_check(osver:"12.10", pkgname:"python3.2-minimal", pkgver:"3.2.3-6ubuntu3.1")) flag++;
    
    if (flag)
    {
      security_report_v4(
        port       : 0,
        severity   : SECURITY_WARNING,
        extra      : ubuntu_report_get()
      );
      exit(0);
    }
    else
    {
      tested = ubuntu_pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "python3.2 / python3.2-minimal");
    }
    
  • NASL familyUbuntu Local Security Checks
    NASL idUBUNTU_USN-1616-1.NASL
    descriptionIt was discovered that Python would prepend an empty string to sys.path under certain circumstances. A local attacker with write access to the current working directory could exploit this to execute arbitrary code. This issue only affected Ubuntu 10.04 LTS. (CVE-2008-5983) It was discovered that the audioop module did not correctly perform input validation. If a user or automated system were tricked into opening a crafted audio file, an attacker could cause a denial of service via application crash. These issues only affected Ubuntu 10.04 LTS. (CVE-2010-1634, CVE-2010-2089) It was discovered that Python distutils contained a race condition when creating the ~/.pypirc file. A local attacker could exploit this to obtain sensitive information. (CVE-2011-4944) It was discovered that SimpleXMLRPCServer did not properly validate its input when handling HTTP POST requests. A remote attacker could exploit this to cause a denial of service via excessive CPU utilization. (CVE-2012-0845) It was discovered that Python was susceptible to hash algorithm attacks. An attacker could cause a denial of service under certian circumstances. This update adds the
    last seen2020-06-01
    modified2020-06-02
    plugin id62700
    published2012-10-25
    reporterUbuntu Security Notice (C) 2012-2019 Canonical, Inc. / NASL script (C) 2012-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/62700
    titleUbuntu 10.04 LTS / 11.04 : python3.1 vulnerabilities (USN-1616-1)