Vulnerabilities > CVE-2015-8313 - Information Exposure Through Discrepancy vulnerability in multiple products

047910
CVSS 5.9 - MEDIUM
Attack vector
NETWORK
Attack complexity
HIGH
Privileges required
NONE
Confidentiality impact
HIGH
Integrity impact
NONE
Availability impact
NONE
network
high complexity
gnu
debian
CWE-203
nessus

Summary

GnuTLS incorrectly validates the first byte of padding in CBC modes

Vulnerable Configurations

Part Description Count
Application
Gnu
90
OS
Debian
4

Common Weakness Enumeration (CWE)

Nessus

  • NASL familySuSE Local Security Checks
    NASL idSUSE_SU-2016-0077-1.NASL
    descriptionThis update for gnutls fixes the following security issues : - CVE-2015-8313: First byte of the padding in CBC mode is not checked (bsc#957568) - CVE-2015-2806: Two-byte stack overflow in asn1_der_decoding (bsc#924828) Note that Tenable Network Security has extracted the preceding description block directly from the SUSE security advisory. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues.
    last seen2020-06-01
    modified2020-06-02
    plugin id87887
    published2016-01-13
    reporterThis script is Copyright (C) 2016-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/87887
    titleSUSE SLED11 / SLES11 Security Update : gnutls (SUSE-SU-2016:0077-1)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from SUSE update advisory SUSE-SU-2016:0077-1.
    # The text itself is copyright (C) SUSE.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(87887);
      script_version("1.7");
      script_cvs_date("Date: 2020/01/10");
    
      script_cve_id("CVE-2015-2806", "CVE-2015-8313");
      script_bugtraq_id(73436);
    
      script_name(english:"SUSE SLED11 / SLES11 Security Update : gnutls (SUSE-SU-2016:0077-1)");
      script_summary(english:"Checks rpm output for the updated packages.");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote SUSE host is missing one or more security updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "This update for gnutls fixes the following security issues :
    
      - CVE-2015-8313: First byte of the padding in CBC mode is
        not checked (bsc#957568)
    
      - CVE-2015-2806: Two-byte stack overflow in
        asn1_der_decoding (bsc#924828)
    
    Note that Tenable Network Security has extracted the preceding
    description block directly from the SUSE 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://bugzilla.suse.com/show_bug.cgi?id=924828"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=947271"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.suse.com/show_bug.cgi?id=957568"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2015-2806/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.suse.com/security/cve/CVE-2015-8313/"
      );
      # https://www.suse.com/support/update/announcement/2016/suse-su-20160077-1/
      script_set_attribute(
        attribute:"see_also",
        value:"http://www.nessus.org/u?5378d599"
      );
      script_set_attribute(
        attribute:"solution", 
        value:
    "To install this SUSE Security Update use YaST online_update.
    Alternatively you can run the command listed for your product :
    
    SUSE Linux Enterprise Software Development Kit 11-SP4 :
    
    zypper in -t patch sdksp4-gnutls-12312=1
    
    SUSE Linux Enterprise Software Development Kit 11-SP3 :
    
    zypper in -t patch sdksp3-gnutls-12312=1
    
    SUSE Linux Enterprise Server for VMWare 11-SP3 :
    
    zypper in -t patch slessp3-gnutls-12312=1
    
    SUSE Linux Enterprise Server 11-SP4 :
    
    zypper in -t patch slessp4-gnutls-12312=1
    
    SUSE Linux Enterprise Server 11-SP3 :
    
    zypper in -t patch slessp3-gnutls-12312=1
    
    SUSE Linux Enterprise High Availability Extension 11-SP4 :
    
    zypper in -t patch slehasp4-gnutls-12312=1
    
    SUSE Linux Enterprise High Availability Extension 11-SP3 :
    
    zypper in -t patch slehasp3-gnutls-12312=1
    
    SUSE Linux Enterprise Desktop 11-SP4 :
    
    zypper in -t patch sledsp4-gnutls-12312=1
    
    SUSE Linux Enterprise Desktop 11-SP3 :
    
    zypper in -t patch sledsp3-gnutls-12312=1
    
    SUSE Linux Enterprise Debuginfo 11-SP4 :
    
    zypper in -t patch dbgsp4-gnutls-12312=1
    
    SUSE Linux Enterprise Debuginfo 11-SP3 :
    
    zypper in -t patch dbgsp3-gnutls-12312=1
    
    To bring your system up-to-date, use 'zypper patch'."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"false");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:gnutls");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:libgnutls-extra26");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:libgnutls26");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:suse_linux:11");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2015/04/10");
      script_set_attribute(attribute:"patch_publication_date", value:"2016/01/11");
      script_set_attribute(attribute:"plugin_publication_date", value:"2016/01/13");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2016-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/cpu", "Host/SuSE/release", "Host/SuSE/rpm-list");
    
      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, "SUSE");
    os_ver = pregmatch(pattern: "^(SLE(S|D)\d+)", string:release);
    if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "SUSE");
    os_ver = os_ver[1];
    if (! preg(pattern:"^(SLED11|SLES11)$", string:os_ver)) audit(AUDIT_OS_NOT, "SUSE SLED11 / SLES11", "SUSE " + os_ver);
    
    if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if (cpu !~ "^i[3-6]86$" && "x86_64" >!< cpu && "s390x" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "SUSE " + os_ver, cpu);
    
    sp = get_kb_item("Host/SuSE/patchlevel");
    if (isnull(sp)) sp = "0";
    if (os_ver == "SLES11" && (! preg(pattern:"^(3|4)$", string:sp))) audit(AUDIT_OS_NOT, "SLES11 SP3/4", os_ver + " SP" + sp);
    if (os_ver == "SLED11" && (! preg(pattern:"^(3|4)$", string:sp))) audit(AUDIT_OS_NOT, "SLED11 SP3/4", os_ver + " SP" + sp);
    
    
    flag = 0;
    if (rpm_check(release:"SLES11", sp:"4", cpu:"x86_64", reference:"libgnutls26-32bit-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLES11", sp:"4", cpu:"s390x", reference:"libgnutls26-32bit-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLES11", sp:"4", reference:"gnutls-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLES11", sp:"4", reference:"libgnutls-extra26-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLES11", sp:"4", reference:"libgnutls26-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLES11", sp:"3", cpu:"x86_64", reference:"libgnutls26-32bit-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLES11", sp:"3", cpu:"s390x", reference:"libgnutls26-32bit-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLES11", sp:"3", reference:"gnutls-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLES11", sp:"3", reference:"libgnutls-extra26-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLES11", sp:"3", reference:"libgnutls26-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLED11", sp:"4", cpu:"x86_64", reference:"gnutls-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLED11", sp:"4", cpu:"x86_64", reference:"libgnutls26-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLED11", sp:"4", cpu:"x86_64", reference:"libgnutls26-32bit-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLED11", sp:"4", cpu:"i586", reference:"gnutls-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLED11", sp:"4", cpu:"i586", reference:"libgnutls26-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLED11", sp:"3", cpu:"x86_64", reference:"gnutls-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLED11", sp:"3", cpu:"x86_64", reference:"libgnutls26-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLED11", sp:"3", cpu:"x86_64", reference:"libgnutls26-32bit-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLED11", sp:"3", cpu:"i586", reference:"gnutls-2.4.1-24.39.60.1")) flag++;
    if (rpm_check(release:"SLED11", sp:"3", cpu:"i586", reference:"libgnutls26-2.4.1-24.39.60.1")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_hole(port:0, extra:rpm_report_get());
      else security_hole(0);
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "gnutls");
    }
    
  • NASL familyDebian Local Security Checks
    NASL idDEBIAN_DSA-3408.NASL
    descriptionIt was discovered that GnuTLS, a library implementing the TLS and SSL protocols, incorrectly validates the first byte of padding in CBC modes. A remote attacker can possibly take advantage of this flaw to perform a padding oracle attack.
    last seen2020-06-01
    modified2020-06-02
    plugin id87162
    published2015-12-02
    reporterThis script is Copyright (C) 2015-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/87162
    titleDebian DSA-3408-1 : gnutls26 - security update
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from Debian Security Advisory DSA-3408. The text 
    # itself is copyright (C) Software in the Public Interest, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(87162);
      script_version("2.6");
      script_cvs_date("Date: 2020/01/10");
    
      script_cve_id("CVE-2015-8313");
      script_xref(name:"DSA", value:"3408");
    
      script_name(english:"Debian DSA-3408-1 : gnutls26 - security update");
      script_summary(english:"Checks dpkg output for the updated package");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote Debian host is missing a security-related update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "It was discovered that GnuTLS, a library implementing the TLS and SSL
    protocols, incorrectly validates the first byte of padding in CBC
    modes. A remote attacker can possibly take advantage of this flaw to
    perform a padding oracle attack."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://packages.debian.org/source/wheezy/gnutls26"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.debian.org/security/2015/dsa-3408"
      );
      script_set_attribute(
        attribute:"solution", 
        value:
    "Upgrade the gnutls26 packages.
    
    For the oldstable distribution (wheezy), this problem has been fixed
    in version 2.12.20-8+deb7u4."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:N/A:N");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"false");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:gnutls26");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:7.0");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2019/12/20");
      script_set_attribute(attribute:"patch_publication_date", value:"2015/12/01");
      script_set_attribute(attribute:"plugin_publication_date", value:"2015/12/02");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2015-2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Debian Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/Debian/release", "Host/Debian/dpkg-l");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("debian_package.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    if (!get_kb_item("Host/Debian/release")) audit(AUDIT_OS_NOT, "Debian");
    if (!get_kb_item("Host/Debian/dpkg-l")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    
    flag = 0;
    if (deb_check(release:"7.0", prefix:"gnutls-bin", reference:"2.12.20-8+deb7u4")) flag++;
    if (deb_check(release:"7.0", prefix:"gnutls26-doc", reference:"2.12.20-8+deb7u4")) flag++;
    if (deb_check(release:"7.0", prefix:"guile-gnutls", reference:"2.12.20-8+deb7u4")) flag++;
    if (deb_check(release:"7.0", prefix:"libgnutls-dev", reference:"2.12.20-8+deb7u4")) flag++;
    if (deb_check(release:"7.0", prefix:"libgnutls-openssl27", reference:"2.12.20-8+deb7u4")) flag++;
    if (deb_check(release:"7.0", prefix:"libgnutls26", reference:"2.12.20-8+deb7u4")) flag++;
    if (deb_check(release:"7.0", prefix:"libgnutls26-dbg", reference:"2.12.20-8+deb7u4")) flag++;
    if (deb_check(release:"7.0", prefix:"libgnutlsxx27", reference:"2.12.20-8+deb7u4")) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:deb_report_get());
      else security_warning(0);
      exit(0);
    }
    else audit(AUDIT_HOST_NOT, "affected");
    
  • NASL familyDebian Local Security Checks
    NASL idDEBIAN_DLA-364.NASL
    descriptionHanno B&ouml;ck discovered that GnuTLS, a library implementing the TLS and SSL protocols, incorrectly validated the first padding byte in CBC modes. A remote attacker can possibly take advantage of this flaw to perform a padding oracle attack. For Debian 6
    last seen2020-03-17
    modified2015-12-10
    plugin id87286
    published2015-12-10
    reporterThis script is Copyright (C) 2015-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/87286
    titleDebian DLA-364-1 : gnutls26 security update