Vulnerabilities > CVE-2016-6307 - Resource Exhaustion vulnerability in Openssl 1.1.0

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

Summary

The state-machine implementation in OpenSSL 1.1.0 before 1.1.0a allocates memory before checking for an excessive length, which might allow remote attackers to cause a denial of service (memory consumption) via crafted TLS messages, related to statem/statem.c and statem/statem_lib.c.

Vulnerable Configurations

Part Description Count
Application
Openssl
1

Common Attack Pattern Enumeration and Classification (CAPEC)

  • XML Ping of the Death
    An attacker initiates a resource depletion attack where a large number of small XML messages are delivered at a sufficiently rapid rate to cause a denial of service or crash of the target. Transactions such as repetitive SOAP transactions can deplete resources faster than a simple flooding attack because of the additional resources used by the SOAP protocol and the resources necessary to process SOAP messages. The transactions used are immaterial as long as they cause resource utilization on the target. In other words, this is a normal flooding attack augmented by using messages that will require extra processing on the target.
  • XML Entity Expansion
    An attacker submits an XML document to a target application where the XML document uses nested entity expansion to produce an excessively large output XML. XML allows the definition of macro-like structures that can be used to simplify the creation of complex structures. However, this capability can be abused to create excessive demands on a processor's CPU and memory. A small number of nested expansions can result in an exponential growth in demands on memory.
  • Inducing Account Lockout
    An attacker leverages the security functionality of the system aimed at thwarting potential attacks to launch a denial of service attack against a legitimate system user. Many systems, for instance, implement a password throttling mechanism that locks an account after a certain number of incorrect log in attempts. An attacker can leverage this throttling mechanism to lock a legitimate user out of their own account. The weakness that is being leveraged by an attacker is the very security feature that has been put in place to counteract attacks.
  • Violating Implicit Assumptions Regarding XML Content (aka XML Denial of Service (XDoS))
    XML Denial of Service (XDoS) can be applied to any technology that utilizes XML data. This is, of course, most distributed systems technology including Java, .Net, databases, and so on. XDoS is most closely associated with web services, SOAP, and Rest, because remote service requesters can post malicious XML payloads to the service provider designed to exhaust the service provider's memory, CPU, and/or disk space. The main weakness in XDoS is that the service provider generally must inspect, parse, and validate the XML messages to determine routing, workflow, security considerations, and so on. It is exactly these inspection, parsing, and validation routines that XDoS targets. There are three primary attack vectors that XDoS can navigate Target CPU through recursion: attacker creates a recursive payload and sends to service provider Target memory through jumbo payloads: service provider uses DOM to parse XML. DOM creates in memory representation of XML document, but when document is very large (for example, north of 1 Gb) service provider host may exhaust memory trying to build memory objects. XML Ping of death: attack service provider with numerous small files that clog the system. All of the above attacks exploit the loosely coupled nature of web services, where the service provider has little to no control over the service requester and any messages the service requester sends.

Nessus

  • NASL familyMisc.
    NASL idORACLE_SECURE_GLOBAL_DESKTOP_APR_2017_CPU.NASL
    descriptionThe version of Oracle Secure Global Desktop installed on the remote host is 4.71, 5.2, or 5.3 and is missing a security patch from the April 2017 Critical Patch Update (CPU). It is, therefore, affected by multiple vulnerabilities : - An integer overflow condition exists in the Window System (X11) subcomponent in multiple functions in X.Org libExt due to improper validation of user-supplied input when calculating the amount of memory required to handle return data. An unauthenticated, remote attacker can exploit this to cause a denial of service condition or the execution of arbitrary code. Note that this issue only affects version 4.71. (CVE-2013-1982) - An integer overflow condition exists in X.Org libXfixes in the XFixesGetCursorImage() function when handling large cursor dimensions or name lengths due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit this to cause a denial of service condition or the execution of arbitrary code. (CVE-2013-1983) - An integer overflow condition exists within multiple functions in X.Org libXi due to improper validation of user-supplied input when calculating the amount of memory needed to handle return data. An unauthenticated, remote attacker can exploit this to cause a denial of service condition or the execution of arbitrary code. (CVE-2013-1984) - An integer overflow condition exists in X.Org libXinerama in the XineramaQueryScreens() function due to improper validation of user-supplied input when calculating the amount of memory needed to handle return data. An unauthenticated, remote attacker can exploit this to cause a denial of service condition or the execution of arbitrary code. (CVE-2013-1985) - An integer overflow condition exists in multiple functions in X.Org libXrandr due to improper validation of user-supplied input when calculating the amount of memory needed to handle return data. An unauthenticated, remote attacker can exploit this to cause a denial of service condition or the execution of arbitrary code. (CVE-2013-1986) - An integer overflow condition exists in multiple functions in X.Org libXrender due to improper validation of user-supplied input when calculating the amount of memory needed to handle return data. An unauthenticated, remote attacker can exploit this to cause a denial of service condition or the execution of arbitrary code. (CVE-2013-1987) - An overflow condition exists in X.Org libXi in the XListInputDevices() function, related to an unexpected sign extension, due to improper checking of the amount of memory needed to handle returned data when converting smaller integer types to larger ones. An unauthenticated, remote attacker can exploit this to cause a denial of service condition or the execution of arbitrary code. (CVE-2013-1995) - An overflow condition exists within multiple functions in X.Org LibXi due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit this, via a specially crafted length or index, to cause a denial of service condition or the execution of arbitrary code. (CVE-2013-1998) - An overflow condition exists in X.Org LibXt in the _XtResourceConfigurationEH() function due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit this, via a specially crafted length or index, to cause a denial of service condition or the execution of arbitrary code. (CVE-2013-2002) - An integer overflow condition exists in X.Org libXcursor in the _XcursorFileHeaderCreate() function due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit this, via a specially crafted file, to cause a denial of service condition or the execution of arbitrary code. (CVE-2013-2003) - An uninitialized pointer flaw exists within multiple functions in X.Org LibXt due to a failure to check for proper initialization of pointers. An unauthenticated, remote attacker can exploit this to corrupt memory, resulting in a denial of service condition or the possible execution of arbitrary code. (CVE-2013-2005) - A flaw exists in the Application Server subcomponent (Apache Tomcat) due to a failure to process passwords when they are paired with non-existent usernames. An authenticated, remote attacker can exploit this, via a timing attack, to enumerate user account names. (CVE-2016-0762) - Multiple integer overflow conditions exist in s3_srvr.c, ssl_sess.c, and t1_lib.c due to improper use of pointer arithmetic for heap-buffer boundary checks. An unauthenticated, remote attacker can exploit these to cause a denial of service. (CVE-2016-2177) - An information disclosure vulnerability exists in the dsa_sign_setup() function in dsa_ossl.c due to a failure to properly ensure the use of constant-time operations. An unauthenticated, remote attacker can exploit this, via a timing side-channel attack, to disclose DSA key information. (CVE-2016-2178) - A denial of service vulnerability exists in the DTLS implementation due to a failure to properly restrict the lifetime of queue entries associated with unused out-of-order messages. An unauthenticated, remote attacker can exploit this, by maintaining multiple crafted DTLS sessions simultaneously, to exhaust memory. (CVE-2016-2179) - An out-of-bounds read error exists in the X.509 Public Key Infrastructure Time-Stamp Protocol (TSP) implementation. An unauthenticated, remote attacker can exploit this, via a crafted time-stamp file that is mishandled by the
    last seen2020-06-01
    modified2020-06-02
    plugin id99930
    published2017-05-02
    reporterThis script is Copyright (C) 2017-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/99930
    titleOracle Secure Global Desktop Multiple Vulnerabilities (April 2017 CPU) (SWEET32)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(99930);
      script_version("1.7");
      script_cvs_date("Date: 2019/11/13");
    
      script_cve_id(
        "CVE-2013-1982",
        "CVE-2013-1983",
        "CVE-2013-1984",
        "CVE-2013-1985",
        "CVE-2013-1986",
        "CVE-2013-1987",
        "CVE-2013-1995",
        "CVE-2013-1998",
        "CVE-2013-2002",
        "CVE-2013-2003",
        "CVE-2013-2005",
        "CVE-2016-0762",
        "CVE-2016-2177",
        "CVE-2016-2178",
        "CVE-2016-2179",
        "CVE-2016-2180",
        "CVE-2016-2181",
        "CVE-2016-2182",
        "CVE-2016-2183",
        "CVE-2016-3739",
        "CVE-2016-4802",
        "CVE-2016-5018",
        "CVE-2016-5407",
        "CVE-2016-5419",
        "CVE-2016-5420",
        "CVE-2016-5421",
        "CVE-2016-6302",
        "CVE-2016-6303",
        "CVE-2016-6304",
        "CVE-2016-6305",
        "CVE-2016-6306",
        "CVE-2016-6307",
        "CVE-2016-6308",
        "CVE-2016-6794",
        "CVE-2016-6796",
        "CVE-2016-6797",
        "CVE-2016-6816",
        "CVE-2016-6817",
        "CVE-2016-7055",
        "CVE-2016-8615",
        "CVE-2016-8616",
        "CVE-2016-8617",
        "CVE-2016-8618",
        "CVE-2016-8619",
        "CVE-2016-8620",
        "CVE-2016-8621",
        "CVE-2016-8622",
        "CVE-2016-8623",
        "CVE-2016-8624",
        "CVE-2016-8625",
        "CVE-2016-8735",
        "CVE-2016-8743",
        "CVE-2017-3730",
        "CVE-2017-3731",
        "CVE-2017-3732"
      );
      script_bugtraq_id(
        60121,
        60123,
        60124,
        60125,
        60126,
        60127,
        60128,
        60129,
        60132,
        60133,
        60137,
        90726,
        90997,
        91081,
        91319,
        92117,
        92292,
        92306,
        92309,
        92557,
        92628,
        92630,
        92982,
        92984,
        92987,
        93149,
        93150,
        93151,
        93152,
        93153,
        93368,
        93939,
        93940,
        93942,
        93943,
        93944,
        94094,
        94096,
        94097,
        94098,
        94100,
        94101,
        94102,
        94103,
        94105,
        94106,
        94107,
        94242,
        94461,
        94462,
        94463,
        95077,
        95812,
        95813,
        95814
      );
      script_xref(name:"EDB-ID", value:"41783");
    
      script_name(english:"Oracle Secure Global Desktop Multiple Vulnerabilities (April 2017 CPU) (SWEET32)");
      script_summary(english:"Checks the version of Oracle Secure Global Desktop.");
    
      script_set_attribute(attribute:"synopsis", value:
    "An application installed on the remote host is affected by multiple
    vulnerabilities.");
      script_set_attribute(attribute:"description", value:
    "The version of Oracle Secure Global Desktop installed on the remote
    host is 4.71, 5.2, or 5.3 and is missing a security patch from the
    April 2017 Critical Patch Update (CPU). It is, therefore, affected by
    multiple vulnerabilities :
    
      - An integer overflow condition exists in the Window System
        (X11) subcomponent in multiple functions in X.Org libExt
        due to improper validation of user-supplied input when
        calculating the amount of memory required to handle
        return data. An unauthenticated, remote attacker can
        exploit this to cause a denial of service condition or
        the execution of arbitrary code. Note that this issue
        only affects version 4.71. (CVE-2013-1982)
    
      - An integer overflow condition exists in X.Org libXfixes
        in the XFixesGetCursorImage() function when handling
        large cursor dimensions or name lengths due to improper
        validation of user-supplied input. An unauthenticated,
        remote attacker can exploit this to cause a denial of
        service condition or the execution of arbitrary code.
        (CVE-2013-1983)
    
      - An integer overflow condition exists within multiple
        functions in X.Org libXi due to improper validation of
        user-supplied input when calculating the amount of
        memory needed to handle return data. An unauthenticated,
        remote attacker can exploit this to cause a denial of
        service condition or the execution of arbitrary code.
        (CVE-2013-1984)
    
      - An integer overflow condition exists in X.Org
        libXinerama in the XineramaQueryScreens() function due
        to improper validation of user-supplied input when
        calculating the amount of memory needed to handle return
        data. An unauthenticated, remote attacker can exploit
        this to cause a denial of service condition or the
        execution of arbitrary code. (CVE-2013-1985)
    
      - An integer overflow condition exists in multiple
        functions in X.Org libXrandr due to improper validation
        of user-supplied input when calculating the amount of
        memory needed to handle return data. An unauthenticated,
        remote attacker can exploit this to cause a denial of
        service condition or the execution of arbitrary code.
        (CVE-2013-1986)
    
      - An integer overflow condition exists in multiple
        functions in X.Org libXrender due to improper validation
        of user-supplied input when calculating the amount of
        memory needed to handle return data. An unauthenticated,
        remote attacker can exploit this to cause a denial of
        service condition or the execution of arbitrary code.
        (CVE-2013-1987)
    
      - An overflow condition exists in X.Org libXi in the
        XListInputDevices() function, related to an unexpected
        sign extension, due to improper checking of the amount
        of memory needed to handle returned data when converting
        smaller integer types to larger ones. An
        unauthenticated, remote attacker can exploit this to
        cause a denial of service condition or the execution of
        arbitrary code. (CVE-2013-1995)
    
      - An overflow condition exists within multiple functions
        in X.Org LibXi due to improper validation of
        user-supplied input. An unauthenticated, remote attacker
        can exploit this, via a specially crafted length or
        index, to cause a denial of service condition or the
        execution of arbitrary code. (CVE-2013-1998)
    
      - An overflow condition exists in X.Org LibXt in the
        _XtResourceConfigurationEH() function due to improper
        validation of user-supplied input. An unauthenticated,
        remote attacker can exploit this, via a specially
        crafted length or index, to cause a denial of service
        condition or the execution of arbitrary code.
        (CVE-2013-2002)
    
      - An integer overflow condition exists in X.Org libXcursor
        in the  _XcursorFileHeaderCreate() function due to
        improper validation of user-supplied input. An
        unauthenticated, remote attacker can exploit this, via
        a specially crafted file, to cause a denial of service
        condition or the execution of arbitrary code.
        (CVE-2013-2003)
    
      - An uninitialized pointer flaw exists within multiple
        functions in X.Org LibXt due to a failure to check for
        proper initialization of pointers. An unauthenticated,
        remote attacker can exploit this to corrupt memory,
        resulting in a denial of service condition or the
        possible execution of arbitrary code. (CVE-2013-2005)
    
      - A flaw exists in the Application Server subcomponent
        (Apache Tomcat) due to a failure to process passwords
        when they are paired with non-existent usernames. An
        authenticated, remote attacker can exploit this, via a
        timing attack, to enumerate user account names.
        (CVE-2016-0762)
    
      - Multiple integer overflow conditions exist in s3_srvr.c,
        ssl_sess.c, and t1_lib.c due to improper use of pointer
        arithmetic for heap-buffer boundary checks. An
        unauthenticated, remote attacker can exploit these to
        cause a denial of service. (CVE-2016-2177)
    
      - An information disclosure vulnerability exists in the
        dsa_sign_setup() function in dsa_ossl.c due to a failure
        to properly ensure the use of constant-time operations.
        An unauthenticated, remote attacker can exploit this,
        via a timing side-channel attack, to disclose DSA key
        information. (CVE-2016-2178)
    
      - A denial of service vulnerability exists in the DTLS
        implementation due to a failure to properly restrict the
        lifetime of queue entries associated with unused
        out-of-order messages. An unauthenticated, remote
        attacker can exploit this, by maintaining multiple
        crafted DTLS sessions simultaneously, to exhaust memory.
        (CVE-2016-2179)
    
      - An out-of-bounds read error exists in the X.509 Public
        Key Infrastructure Time-Stamp Protocol (TSP)
        implementation. An unauthenticated, remote attacker can
        exploit this, via a crafted time-stamp file that is
        mishandled by the 'openssl ts' command, to cause a
        denial of service or to disclose sensitive information.
        (CVE-2016-2180)
    
      - A denial of service vulnerability exists in the
        Anti-Replay feature in the DTLS implementation due to
        improper handling of epoch sequence numbers in records.
        An unauthenticated, remote attacker can exploit this,
        via spoofed DTLS records, to cause legitimate packets to
        be dropped. (CVE-2016-2181)
    
      - An overflow condition exists in the BN_bn2dec() function
        in bn_print.c due to improper validation of
        user-supplied input when handling BIGNUM values. An
        unauthenticated, remote attacker can exploit this to
        crash the process. (CVE-2016-2182)
    
      - A vulnerability exists, known as SWEET32, in the 3DES
        and Blowfish algorithms due to the use of weak 64-bit
        block ciphers by default. A man-in-the-middle attacker
        who has sufficient resources can exploit this
        vulnerability, via a 'birthday' attack, to detect a
        collision that leaks the XOR between the fixed secret
        and a known plaintext, allowing the disclosure of the
        secret text, such as secure HTTPS cookies, and possibly
        resulting in the hijacking of an authenticated session.
        (CVE-2016-2183)
    
      - A flaw exists in the Core subcomponent, specifically in
        the libcurl library, due to improper validation of TLS
        certificates. An authenticated, remote attacker with the
        ability to intercept network traffic can exploit this
        issue to disclose or manipulate transmitted data by
        spoofing the TLS/SSL server using a certificate that
        appears valid. Note that this issue only affects
        versions 5.2 and 5.3. (CVE-2016-3739)
    
      - A flaw exists in cURL and libcurl when loading dynamic
        link library (DLL) files security.dll, secur32.dll, or
        ws2_32.dll due searching an insecure path which may not
        be trusted or under user control. A local attacker can
        exploit this, via a Trojan DLL file placed in the search
        path, to execute arbitrary code with the privileges of
        the user running the program. (CVE-2016-4802)
    
      - A security bypass vulnerability exists in Apache Tomcat
        due to an unspecified flaw related to web applications.
        A local attacker can exploit this, via a utility method
        that is available to web applications, to bypass a
        configured SecurityManager. (CVE-2016-5018)
    
      - An out-of-bounds access error exists in the Window
        System (X11) subcomponent, specifically in the
        XvQueryAdaptors() function in file Xv.c, when handling
        server responses. An authenticated, remote attacker can
        exploit this to impact confidentiality, integrity, and
        availability. (CVE-2016-5407)
    
      - A use-after-free error exists in cURL and libcurl within
        file lib/vtls/vtls.c due to the program attempting to
        resume TLS sessions even if the client certificate
        fails. An unauthenticated, remote attacker can exploit
        this to bypass validation mechanisms, allowing the
        attacker to possibly control which connection is used.
        (CVE-2016-5419)
    
      - A flaw exists in cURL and libcurl in the
        Curl_ssl_config_matches() function within file
        lib/vtls/vtls.c due to the program reusing TLS
        connections with different client certificates. An
        unauthenticated, remote attacker can exploit this to
        disclose sensitive cross-realm information.
        (CVE-2016-5420)
    
      - A use-after-free error exists in cURL and libcurl in
        in the close_all_connections() function within file
        lib/multi.c due to connection pointers not being
        properly cleared. An unauthenticated, remote attacker
        can exploit this to have an unspecified impact on
        confidentiality, integrity, and availability.
        (CVE-2016-5421)
    
      - A flaw exists in the tls_decrypt_ticket() function
        in t1_lib.c due to improper handling of ticket HMAC
        digests. An unauthenticated, remote attacker can exploit
        this, via a ticket that is too short, to crash the
        process, resulting in a denial of service.
        (CVE-2016-6302)
    
      - An integer overflow condition exists in the
        MDC2_Update() function in mdc2dgst.c due to improper
        validation of user-supplied input. An unauthenticated,
        remote attacker can exploit this to cause a heap-based
        buffer overflow, resulting in a denial of service
        condition or possibly the execution of arbitrary code.
        (CVE-2016-6303)
    
      - A flaw exists in the ssl_parse_clienthello_tlsext()
        function in t1_lib.c due to improper handling of overly
        large OCSP Status Request extensions from clients. An
        unauthenticated, remote attacker can exploit this, via
        large OCSP Status Request extensions, to exhaust memory
        resources, resulting in a denial of service condition.
        (CVE-2016-6304)
    
      - A flaw exists in the SSL_peek() function in
        rec_layer_s3.c due to improper handling of empty
        records. An unauthenticated, remote attacker can exploit
        this, by triggering a zero-length record in an SSL_peek
        call, to cause an infinite loop, resulting in a denial
        of service condition. (CVE-2016-6305)
    
      - An out-of-bounds read error exists in the certificate
        parser that allows an unauthenticated, remote attacker
        to cause a denial of service via crafted certificate
        operations. (CVE-2016-6306)
    
      - A denial of service vulnerability exists in the
        state-machine implementation due to a failure to check
        for an excessive length before allocating memory. An
        unauthenticated, remote attacker can exploit this, via a
        crafted TLS message, to exhaust memory resources.
        (CVE-2016-6307)
    
      - A denial of service vulnerability exists in the DTLS
        implementation due to improper handling of excessively
        long DTLS messages. An unauthenticated, remote attacker
        can exploit this, via a crafted DTLS message, to exhaust
        available memory resources. (CVE-2016-6308)
    
      - A flaw exists in Apache Tomcat within SecurityManager
        due to improper restriction of access to system
        properties by the configuration files system property
        replacement feature. A local attacker can exploit this,
        via a crafted web application, to bypass SecurityManager
        restrictions and disclose system properties.
        (CVE-2016-6794)
    
      - A flaw exists in Apache Tomcat that allows a local
        attacker to bypass a configured SecurityManager by
        changing the configuration parameters for the JSP
        Servlet. (CVE-2016-6796)
    
      - A flaw exists in Apache Tomcat due to a failure to limit
        web application access to global JNDI resources. A local
        attacker can exploit this to gain unauthorized access to
        resources. (CVE-2016-6797)
    
      - A flaw exists in Apache Tomcat when handling request
        lines containing certain invalid characters. An
        unauthenticated, remote attacker can exploit this to
        conduct HTTP response splitting attacks by injecting
        additional headers into responses. (CVE-2016-6816)
    
      - An infinite loop condition exists in Apache Tomcat in
        the HTTP/2 parser when handling overly large headers. An
        unauthenticated, remote attacker can exploit this, via a
        specially crafted request, to cause a denial of service
        condition. (CVE-2016-6817)
    
      - A carry propagation error exists in the
        Broadwell-specific Montgomery multiplication procedure
        when handling input lengths divisible by but longer than
        256 bits. This can result in transient authentication
        and key negotiation failures or reproducible erroneous
        outcomes of public-key operations with specially crafted
        input. A man-in-the-middle attacker can possibly exploit
        this issue to compromise ECDH key negotiations that
        utilize Brainpool P-512 curves. (CVE-2016-7055)
    
      - A flaw exists in cURL in the Curl_cookie_init() function
        within file lib/cookie.c when handling cookies. An
        unauthenticated, remote attacker can exploit this to
        inject new cookies for arbitrary domains.
        (CVE-2016-8615)
    
      - A flaw exists in cURL in the ConnectionExists() function
        within file lib/url.c when checking credentials supplied
        for reused connections due to the comparison being
        case-insensitive. An unauthenticated, remote attacker
        can exploit this to authenticate without knowing the
        proper case of the username and password.
        (CVE-2016-8616)
    
      - An integer overflow condition exists in cURL in the
        base64_encode() function within file lib/base64.c due to
        improper validation of certain input. An
        unauthenticated, remote attacker can exploit this to
        cause a denial of service condition or the execution of
        arbitrary code. (CVE-2016-8617)
    
      - A denial of service vulnerability exists in cURL in the
        alloc_addbyter() function within file lib/mprintf.c due
        to improper validation of overly long input when it is
        supplied to the curl_maprintf() API method. An
        unauthenticated, remote attacker can exploit this to
        free already freed memory and thereby crash the program.
        (CVE-2016-8618)
    
      - A double-free error exists in cURL in the read_data()
        function within file lib/security.c when handling
        Kerberos authentication. An unauthenticated, remote
        attacker can exploit this to free already freed memory,
        resulting in an unspecified impact on confidentiality,
        integrity, and availability. (CVE-2016-8619)
    
      - An out-of-bounds access error exists in cURL in file
        tool_urlglob.c within the globbing feature. An
        unauthenticated, remote attacker can exploit this to
        disclose memory contents or execute arbitrary code.
        (CVE-2016-8620)
    
      - An out-of-bounds error exists in cURL in the parsedate()
        function within file lib/parsedate.c when handling
        dates. An unauthenticated, remote attacker can exploit
        this to disclose memory contents or cause a denial of
        service condition. (CVE-2016-8621)
    
      - An integer truncation error exists in cURL in the
        curl_easy_unescape() function within file lib/escape.c
        when handling overly large URLs. An unauthenticated,
        remote attacker can exploit this to cause a denial of
        service condition or the execution of arbitrary code.
        (CVE-2016-8622)
    
      - A use-after-free error exists in cURL within file
        lib/cookie.c when handling shared cookies. An
        unauthenticated, remote attacker can exploit this to
        disclose memory contents. (CVE-2016-8623)
    
      - A flaw exists in cURL in the parseurlandfillconn()
        function within file lib/url.c when parsing the
        authority component of a URL with the host name part
        ending in a '#' character. An unauthenticated, remote
        attacker can exploit this to establish a connection to
        a different host than intended. (CVE-2016-8624)
    
      - A flaw exists in cURL within International Domain Names
        (IDNA) handling when translating domain names to puny
        code for DNS resolving due to using the outdated IDNA
        2003 standard instead of the IDNA 2008 standard, which
        can result in incorrect translation of a domain name.
        An unauthenticated, remote attacker can exploit this to
        cause network traffic to be redirected to a different
        host than intended. (CVE-2016-8625)
    
      - A flaw exists in Apache Tomcat within the
        catalina/mbeans/JmxRemoteLifecycleListener.java class
        that is triggered during the deserialization of Java
        objects. An unauthenticated, remote attacker can exploit
        this to execute arbitrary code. (CVE-2016-8735)
    
      - A flaw exists in the Web Server component (Apache HTTP
        Server) when handling whitespace patterns in User-Agent
        headers. An authenticated, remote attacker can exploit
        this, via a specially crafted User-Agent header, to
        cause incorrect processing of sequences of requests,
        resulting in incorrectly interpreting responses,
        polluting the cache, or disclosing content from one
        request to a second downstream user-agent.
        (CVE-2016-8743)
    
      - A NULL pointer dereference flaw exists within file
        ssl/statem/statem_clnt.c when handling parameters for
        the DHE or ECDHE key exchanges. An unauthenticated,
        remote attacker can exploit this, via specially crafted
        parameters, to cause a denial of service condition.
        (CVE-2017-3730)
    
      - A out-of-bounds read error exists exists in the Core
        subcomponent, specifically in OpenSSL, when handling
        packets using the CHACHA20/POLY1305 or RC4-MD5 ciphers.
        An unauthenticated, remote attacker can exploit this,
        via specially crafted truncated packets, to cause a
        denial of service condition. (CVE-2017-3731)
    
      - A carry propagating error exists in the x86_64
        Montgomery squaring implementation that may cause the
        BN_mod_exp() function to produce incorrect results. An
        unauthenticated, remote attacker with sufficient
        resources can exploit this to obtain sensitive
        information regarding private keys. Note that this issue
        is very similar to CVE-2015-3193. Moreover, the attacker
        would additionally need online access to an unpatched
        system using the target private key in a scenario with
        persistent DH parameters and a private key that is
        shared between multiple clients. For example, this can
        occur by default in OpenSSL DHE based SSL/TLS cipher
        suites. (CVE-2017-3732)
    
    Note that Nessus has not tested for these issues but has instead
    relied only on the application's self-reported version number.");
      # http://www.oracle.com/technetwork/security-advisory/cpuapr2017-3236618.html
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?623d2c22");
      script_set_attribute(attribute:"see_also", value:"https://sweet32.info/");
      script_set_attribute(attribute:"see_also", value:"https://www.openssl.org/blog/blog/2016/08/24/sweet32/");
      script_set_attribute(attribute:"solution", value:
    "Apply the appropriate patch according to the April 2017 Oracle
    Critical Patch Update advisory.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
      script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
      script_set_attribute(attribute:"cvss_score_source", value:"CVE-2016-8735");
    
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
      script_set_attribute(attribute:"in_the_news", value:"true");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2013/05/23");
      script_set_attribute(attribute:"patch_publication_date", value:"2017/04/18");
      script_set_attribute(attribute:"plugin_publication_date", value:"2017/05/02");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:oracle:virtualization_secure_global_desktop");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Misc.");
    
      script_copyright(english:"This script is Copyright (C) 2017-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
    
      script_dependencies("oracle_secure_global_desktop_installed.nbin");
      script_require_keys("Host/Oracle_Secure_Global_Desktop/Version");
    
      exit(0);
    }
    
    include("audit.inc");
    include("global_settings.inc");
    include("misc_func.inc");
    
    app = "Oracle Secure Global Desktop";
    version = get_kb_item_or_exit("Host/Oracle_Secure_Global_Desktop/Version");
    
    # this check is for Oracle Secure Global Desktop packages
    # built for Linux platform
    uname = get_kb_item_or_exit("Host/uname");
    if ("Linux" >!< uname) audit(AUDIT_OS_NOT, "Linux");
    
    fix_required = NULL;
    
    if (version =~ "^5\.30($|\.)") fix_required = 'Patch_53p1';
    else if (version =~ "^5\.20($|\.)") fix_required = 'Patch_52p8';
    else if (version =~ "^4\.71($|\.)") fix_required = 'Patch_471p11';
    
    if (isnull(fix_required)) audit(AUDIT_INST_VER_NOT_VULN, "Oracle Secure Global Desktop", version);
    
    patches = get_kb_list("Host/Oracle_Secure_Global_Desktop/Patches");
    
    patched = FALSE;
    foreach patch (patches)
    {
      if (patch == fix_required)
      {
        patched = TRUE;
        break;
      }
    }
    
    if (patched) audit(AUDIT_INST_VER_NOT_VULN, app, version + ' (with ' + fix_required + ')');
    
    report = '\n  Installed version : ' + version +
               '\n  Patch required    : ' + fix_required +
               '\n';
    security_report_v4(port:0, extra:report, severity:SECURITY_HOLE);
    
  • NASL familyMisc.
    NASL idORACLE_E-BUSINESS_CPU_JUL_2017.NASL
    descriptionThe version of Oracle E-Business installed on the remote host is missing the July 2017 Oracle Critical Patch Update (CPU). It is, therefore, affected by the following vulnerabilities : - Multiple integer overflow conditions exist in the OpenSSL component in s3_srvr.c, ssl_sess.c, and t1_lib.c due to improper use of pointer arithmetic for heap-buffer boundary checks. An unauthenticated, remote attacker can exploit this to cause a denial of service. (CVE-2016-2177) - An information disclosure vulnerability exists in the OpenSSL component in the dsa_sign_setup() function in dsa_ossl.c due to a failure to properly ensure the use of constant-time operations. An unauthenticated, remote attacker can exploit this, via a timing side-channel attack, to disclose DSA key information. (CVE-2016-2178) - A denial of service vulnerability exists in the OpennSSL component in the DTLS implementation due to a failure to properly restrict the lifetime of queue entries associated with unused out-of-order messages. An unauthenticated, remote attacker can exploit this, by maintaining multiple crafted DTLS sessions simultaneously, to exhaust memory. (CVE-2016-2179) - An out-of-bounds read error exists in the OpenSSL component in the X.509 Public Key Infrastructure Time-Stamp Protocol (TSP) implementation. An unauthenticated, remote attacker can exploit this, via a crafted time-stamp file that is mishandled by the
    last seen2020-06-01
    modified2020-06-02
    plugin id101845
    published2017-07-20
    reporterThis script is Copyright (C) 2017-2018 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/101845
    titleOracle E-Business Multiple Vulnerabilities (July 2017 CPU) (SWEET32)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(101845);
      script_version("1.5");
      script_cvs_date("Date: 2018/11/15 20:50:23");
    
      script_cve_id(
        "CVE-2016-2177",
        "CVE-2016-2178",
        "CVE-2016-2179",
        "CVE-2016-2180",
        "CVE-2016-2181",
        "CVE-2016-2182",
        "CVE-2016-2183",
        "CVE-2016-6302",
        "CVE-2016-6303",
        "CVE-2016-6304",
        "CVE-2016-6305",
        "CVE-2016-6306",
        "CVE-2016-6307",
        "CVE-2016-6308",
        "CVE-2016-6309",
        "CVE-2016-7052",
        "CVE-2017-3562",
        "CVE-2017-10112",
        "CVE-2017-10113",
        "CVE-2017-10130",
        "CVE-2017-10143",
        "CVE-2017-10144",
        "CVE-2017-10170",
        "CVE-2017-10171",
        "CVE-2017-10174",
        "CVE-2017-10175",
        "CVE-2017-10177",
        "CVE-2017-10179",
        "CVE-2017-10180",
        "CVE-2017-10184",
        "CVE-2017-10185",
        "CVE-2017-10186",
        "CVE-2017-10191",
        "CVE-2017-10192",
        "CVE-2017-10244",
        "CVE-2017-10245",
        "CVE-2017-10246"
      );
      script_bugtraq_id(
        91081,
        91319,
        92117,
        92557,
        92628,
        92630,
        92982,
        92984,
        92987,
        93149,
        93150,
        93151,
        93152,
        93153,
        93171,
        93177,
        99625,
        99630,
        99633,
        99636,
        99639,
        99647,
        99655,
        99658,
        99663,
        99664,
        99672,
        99678,
        99685,
        99690,
        99693,
        99700,
        99702,
        99708,
        99713,
        99715,
        99717
      );
    
      script_name(english:"Oracle E-Business Multiple Vulnerabilities (July 2017 CPU) (SWEET32)");
      script_summary(english:"Checks for the July 2017 CPU.");
    
      script_set_attribute(attribute:"synopsis", value:
    "A web application installed on the remote host is affected by multiple
    vulnerabilities.");
      script_set_attribute(attribute:"description", value:
    "The version of Oracle E-Business installed on the remote host is
    missing the July 2017 Oracle Critical Patch Update (CPU). It is,
    therefore, affected by the following vulnerabilities :
    
      - Multiple integer overflow conditions exist in the
        OpenSSL component in s3_srvr.c, ssl_sess.c, and t1_lib.c
        due to improper use of pointer arithmetic for
        heap-buffer boundary checks. An unauthenticated, remote
        attacker can exploit this to cause a denial of service.
        (CVE-2016-2177)
    
      - An information disclosure vulnerability exists in the
        OpenSSL component in the dsa_sign_setup() function in
        dsa_ossl.c due to a failure to properly ensure the use
        of constant-time operations. An unauthenticated, remote
        attacker can exploit this, via a timing side-channel
        attack, to disclose DSA key information. (CVE-2016-2178)
    
      - A denial of service vulnerability exists in the OpennSSL
        component in the DTLS implementation due to a failure to
        properly restrict the lifetime of queue entries
        associated with unused out-of-order messages. An
        unauthenticated, remote attacker can exploit this, by
        maintaining multiple crafted DTLS sessions
        simultaneously, to exhaust memory. (CVE-2016-2179)
    
      - An out-of-bounds read error exists in the OpenSSL
        component in the X.509 Public Key Infrastructure
        Time-Stamp Protocol (TSP) implementation. An
        unauthenticated, remote attacker can exploit this, via a
        crafted time-stamp file that is mishandled by the
        'openssl ts' command, to cause a denial of service or to
        disclose sensitive information. (CVE-2016-2180)
    
      - A denial of service vulnerability exists in the OpenSSL
        component in the Anti-Replay feature in the DTLS
        implementation due to improper handling of epoch
        sequence numbers in records. An unauthenticated, remote
        attacker can exploit this, via spoofed DTLS records, to
        cause legitimate packets to be dropped. (CVE-2016-2181)
    
      - An overflow condition exists in the OpenSSL component in
        the BN_bn2dec() function in bn_print.c due to improper
        validation of user-supplied input when handling BIGNUM
        values. An unauthenticated, remote attacker can exploit
        this to crash the process. (CVE-2016-2182)
    
      - A vulnerability exists, known as SWEET32, in the OpenSSL
        component in the 3DES and Blowfish algorithms due to the
        use of weak 64-bit block ciphers by default. A
        man-in-the-middle attacker who has sufficient resources
        can exploit this vulnerability, via a 'birthday' attack,
        to detect a collision that leaks the XOR between the
        fixed secret and a known plaintext, allowing the
        disclosure of the secret text, such as secure HTTPS
        cookies, and possibly resulting in the hijacking of an
        authenticated session. (CVE-2016-2183)
    
      - A flaw exists in the OpenSSL component in the
        tls_decrypt_ticket() function in t1_lib.c due to
        improper handling of ticket HMAC digests. An
        unauthenticated, remote attacker can exploit this, via a
        ticket that is too short, to crash the process,
        resulting in a denial of service. (CVE-2016-6302)
    
      - An integer overflow condition exists in the OpenSSL
        component in the MDC2_Update() function in mdc2dgst.c
        due to improper validation of user-supplied input. An
        unauthenticated, remote attacker can exploit this to
        cause a heap-based buffer overflow, resulting in a
        denial of service condition or possibly the execution of
        arbitrary code. (CVE-2016-6303)
    
      - A flaw exists in the OpenSSL component in the
        ssl_parse_clienthello_tlsext() function in t1_lib.c due
        to improper handling of overly large OCSP Status Request
        extensions from clients. An unauthenticated, remote
        attacker can exploit this, via large OCSP Status Request
        extensions, to exhaust memory resources, resulting in a
        denial of service condition. (CVE-2016-6304)
    
      - A flaw exists in the OpenSSL component in the SSL_peek()
        function in rec_layer_s3.c due to improper handling of
        empty records. An unauthenticated, remote attacker can
        exploit this, by triggering a zero-length record in an
        SSL_peek call, to cause an infinite loop, resulting in a
        denial of service condition. (CVE-2016-6305)
    
      - An out-of-bounds read error exists in the OpenSSL
        component in the certificate parser that allows an
        unauthenticated, remote attacker to cause a denial of
        service via crafted certificate operations.
        (CVE-2016-6306)
    
      - A denial of service vulnerability exists in the OpenSSL
        component in the state-machine implementation due to a
        failure to check for an excessive length before
        allocating memory. An unauthenticated, remote attacker
        can exploit this, via a crafted TLS message, to exhaust
        memory resources. (CVE-2016-6307)
    
      - A denial of service vulnerability exists in the OpenSSL
        component in the DTLS implementation due to improper
        handling of excessively long DTLS messages. An
        unauthenticated, remote attacker can exploit this, via a
        crafted DTLS message, to exhaust available memory
        resources. (CVE-2016-6308)
    
      - A remote code execution vulnerability exists in the
        OpenSSL component in the read_state_machine() function
        in statem.c due to improper handling of messages larger
        than 16k. An unauthenticated, remote attacker can
        exploit this, via a specially crafted message, to cause
        a use-after-free error, resulting in a denial of service
        condition or possibly the execution of arbitrary code.
        (CVE-2016-6309)
    
      - A denial of service vulnerability exists in the OpenSSL
        component in x509_vfy.c due to improper handling of
        certificate revocation lists (CRLs). An unauthenticated,
        remote attacker can exploit this, via a specially
        crafted CRL, to cause a NULL pointer dereference,
        resulting in a crash of the service. (CVE-2016-7052)
    
      - An unspecified flaw exists in the AD Utilities component
        that allows an authenticated, remote attacker to impact
        confidentiality and integrity. (CVE-2017-3562)
    
      - An unspecified flaw exists in the Registration component
        that allows an unauthenticated, remote attacker to
        impact confidentiality and integrity. (CVE-2017-10112)
    
      - An unspecified flaw exists in the CRM User Management
        Framework component that allows an unauthenticated,
        remote attacker to impact confidentiality and integrity.
        (CVE-2017-10113)
    
      - An unspecified flaw exists in the User Management
        component that allows an unauthenticated, remote
        attacker to impact confidentiality and integrity.
        (CVE-2017-10130)
    
      - An unspecified flaw exists in the Preferences component
        that allows an unauthenticated, remote attacker to
        impact confidentiality and integrity. (CVE-2017-10143)
    
      - An unspecified flaw exists in the Oracle Diagnostics
        component that allows an unauthenticated, remote
        attacker to cause a denial of service condition.
        (CVE-2017-10144)
    
      - An unspecified flaw exists in the Wireless/WAP component
        that allows an unauthenticated, remote attacker to
        impact confidentiality and integrity. (CVE-2017-10170)
    
      - An unspecified flaw exists in the Home Page component
        that allows an unauthenticated, remote attacker to
        impact confidentiality and integrity. (CVE-2017-10171)
    
      - An unspecified flaw exists in the Service Request
        component that allows an unauthenticated, remote
        attacker to impact confidentiality and integrity.
        (CVE-2017-10174)
    
      - An unspecified flaw exists in the Profiles component
        that allows an authenticated, remote attacker to impact
        confidentiality and integrity. (CVE-2017-10175)
    
      - An unspecified flaw exists in the Flexfields component
        that allows an authenticated, remote attacker to impact
        confidentiality and integrity. (CVE-2017-10177)
    
      - An unspecified flaw exists in the Monitoring component
        that allows an unauthenticated, remote attacker to
        impact confidentiality and integrity. (CVE-2017-10179)
    
      - A cross-site scripting (XSS) vulnerability exists in the
        CMRO component due to improper validation of
        user-supplied input to multiple parameters before
        returning it to users. An unauthenticated, remote
        attacker can exploit this, via a specially crafted
        request, to execute arbitrary script code in a user's
        browser session. (CVE-2017-10180)
    
      - An information disclosure vulnerability exists in the
        Wireless/WAP component due to improper sanitization of
        user-supplied input. An unauthenticated, remote attacker
        can exploit this, via a directory traversal attack, to
        disclose arbitrary files. (CVE-2017-10184)
    
      - A cross-site scripting (XSS) vulnerability exists in the
        User Management component due to improper validation of
        user-supplied input. An unauthenticated, remote attacker
        can exploit this, via a specially crafted request, to
        execute arbitrary script code in a user's browser
        session. (CVE-2017-10185)
    
      - An information disclosure vulnerability exists in the
        User and Company Profile component due to improper
        sanitization of user-supplied input. An unauthenticated,
        remote attacker can exploit this, via a directory
        traversal attack, to disclose arbitrary files.
        (CVE-2017-10186)
    
      - A cross-site scripting (XSS) vulnerability exists in the
        Web Analytics component due to improper validation of
        user-supplied input. An unauthenticated, remote attacker
        can exploit this, via a specially crafted request, to
        execute arbitrary script code in a user's browser
        session. (CVE-2017-10191)
    
      - An information disclosure vulnerability exists in the
        Shopping Cart component due to improper sanitization of
        user-supplied input. An unauthenticated, remote attacker
        can exploit this, via a directory traversal attack, to
        disclose arbitrary files. (CVE-2017-10192)
    
      - An information disclosure vulnerability exists in the
        Attachments component that allows an unauthenticated,
        remote attacker to disclose any document stored on the
        system. (CVE-2017-10244)
    
      - An information disclosure vulnerability exists in the
        Account Hierarchy Manager component that allows an
        unauthenticated, remote attacker to disclose sensitive
        information in the DBC configuration file.
        (CVE-2017-10245)
    
      - An unspecified flaw exists in the iHelp component that
        allows an unauthenticated, remote attacker to impact
        confidentiality and integrity. (CVE-2017-10246)");
      # https://www.oracle.com/technetwork/security-advisory/cpujul2017-3236622.html#AppendixEBS
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?8f6b5a59");
      script_set_attribute(attribute:"see_also", value:"https://sweet32.info");
      script_set_attribute(attribute:"see_also", value:"https://www.openssl.org/blog/blog/2016/08/24/sweet32/");
      script_set_attribute(attribute:"solution", value:
    "Apply the appropriate patch according to the July 2017 Oracle Critical
    Patch Update advisory.");
      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:POC/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
    
      script_set_attribute(attribute:"vuln_publication_date",value:"2016/05/05");
      script_set_attribute(attribute:"patch_publication_date",value:"2017/07/18");
      script_set_attribute(attribute:"plugin_publication_date", value:"2017/07/20");
    
      script_set_attribute(attribute:"plugin_type",value:"local");
      script_set_attribute(attribute:"cpe",value:"cpe:/a:oracle:e-business_suite");
      script_set_attribute(attribute:"in_the_news", value:"true");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Misc.");
    
      script_copyright(english:"This script is Copyright (C) 2017-2018 Tenable Network Security, Inc.");
    
      script_dependencies("oracle_e-business_query_patch_info.nbin");
      script_require_keys("Oracle/E-Business/Version", "Oracle/E-Business/patches/installed");
    
      exit(0);
    }
    
    include("audit.inc");
    include("global_settings.inc");
    include("misc_func.inc");
    
    version = get_kb_item_or_exit("Oracle/E-Business/Version");
    patches = get_kb_item_or_exit("Oracle/E-Business/patches/installed");
    
    # Batch checks
    if (patches) patches = split(patches, sep:',', keep:FALSE);
    else patches = make_list();
    
    p12_1 = '25982921';
    p12_2 = '25982922';
    
    # Check if the installed version is an affected version
    affected_versions = make_array(
      '12.1.1', make_list(p12_1),
      '12.1.2', make_list(p12_1),
      '12.1.3', make_list(p12_1),
    
      '12.2.3', make_list(p12_2),
      '12.2.4', make_list(p12_2),
      '12.2.5', make_list(p12_2),
      '12.2.6', make_list(p12_2)
    );
    
    patched = FALSE;
    affectedver = FALSE;
    
    if (affected_versions[version])
    {
      affectedver = TRUE;
      patchids = affected_versions[version];
      foreach required_patch (patchids)
      {
        foreach applied_patch (patches)
        {
          if(required_patch == applied_patch)
          {
            patched = applied_patch;
            break;
          }
        }
        if(patched) break;
      }
      if(!patched) patchreport = join(patchids,sep:" or ");
    }
    
    if (!patched && affectedver)
    {
      set_kb_item(name:'www/0/XSS', value:TRUE);
      if(report_verbosity > 0)
      {
        report =
          '\n  Installed version : '+version+
          '\n  Fixed version     : '+version+' Patch '+patchreport+
          '\n';
        security_hole(port:0,extra:report);
      }
      else security_hole(0);
      exit(0);
    }
    else if (!affectedver) audit(AUDIT_INST_VER_NOT_VULN, 'Oracle E-Business', version);
    else exit(0, 'The Oracle E-Business server ' + version + ' is not affected because patch ' + patched + ' has been applied.');
    
  • NASL familyFreeBSD Local Security Checks
    NASL idFREEBSD_PKG_43EAA65680BC11E6BF52B499BAEBFEAF.NASL
    descriptionOpenSSL reports : High: OCSP Status Request extension unbounded memory growth SSL_peek() hang on empty record SWEET32 Mitigation OOB write in MDC2_Update() Malformed SHA512 ticket DoS OOB write in BN_bn2dec() OOB read in TS_OBJ_print_bio() Pointer arithmetic undefined behaviour Constant time flag not preserved in DSA signing DTLS buffered message DoS DTLS replay protection DoS Certificate message OOB reads Excessive allocation of memory in tls_get_message_header() Excessive allocation of memory in dtls1_preprocess_fragment() NB: LibreSSL is only affected by CVE-2016-6304
    last seen2020-06-01
    modified2020-06-02
    plugin id93674
    published2016-09-23
    reporterThis script is Copyright (C) 2016-2018 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/93674
    titleFreeBSD : OpenSSL -- multiple vulnerabilities (43eaa656-80bc-11e6-bf52-b499baebfeaf)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from the FreeBSD VuXML database :
    #
    # Copyright 2003-2018 Jacques Vidrine and contributors
    #
    # Redistribution and use in source (VuXML) and 'compiled' forms (SGML,
    # HTML, PDF, PostScript, RTF and so forth) with or without modification,
    # are permitted provided that the following conditions are met:
    # 1. Redistributions of source code (VuXML) must retain the above
    #    copyright notice, this list of conditions and the following
    #    disclaimer as the first lines of this file unmodified.
    # 2. Redistributions in compiled form (transformed to other DTDs,
    #    published online in any format, converted to PDF, PostScript,
    #    RTF and other formats) must reproduce the above copyright
    #    notice, this list of conditions and the following disclaimer
    #    in the documentation and/or other materials provided with the
    #    distribution.
    # 
    # THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS"
    # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
    # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
    # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
    # OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
    # OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
    # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
    # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
    # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DOCUMENTATION,
    # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(93674);
      script_version("2.9");
      script_cvs_date("Date: 2018/11/10 11:49:45");
    
      script_cve_id("CVE-2016-2177", "CVE-2016-2178", "CVE-2016-2179", "CVE-2016-2180", "CVE-2016-2181", "CVE-2016-2182", "CVE-2016-2183", "CVE-2016-6302", "CVE-2016-6303", "CVE-2016-6304", "CVE-2016-6305", "CVE-2016-6306", "CVE-2016-6307", "CVE-2016-6308");
      script_xref(name:"FreeBSD", value:"SA-16:26.openssl");
    
      script_name(english:"FreeBSD : OpenSSL -- multiple vulnerabilities (43eaa656-80bc-11e6-bf52-b499baebfeaf)");
      script_summary(english:"Checks for updated packages in pkg_info output");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:
    "The remote FreeBSD host is missing one or more security-related
    updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "OpenSSL reports :
    
    High: OCSP Status Request extension unbounded memory growth
    
    SSL_peek() hang on empty record
    
    SWEET32 Mitigation
    
    OOB write in MDC2_Update()
    
    Malformed SHA512 ticket DoS
    
    OOB write in BN_bn2dec()
    
    OOB read in TS_OBJ_print_bio()
    
    Pointer arithmetic undefined behaviour
    
    Constant time flag not preserved in DSA signing
    
    DTLS buffered message DoS
    
    DTLS replay protection DoS
    
    Certificate message OOB reads
    
    Excessive allocation of memory in tls_get_message_header()
    
    Excessive allocation of memory in dtls1_preprocess_fragment()
    
    NB: LibreSSL is only affected by CVE-2016-6304"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.openssl.org/news/secadv/20160922.txt"
      );
      # https://vuxml.freebsd.org/freebsd/43eaa656-80bc-11e6-bf52-b499baebfeaf.html
      script_set_attribute(
        attribute:"see_also",
        value:"http://www.nessus.org/u?ed1ae987"
      );
      script_set_attribute(attribute:"solution", value:"Update the affected packages.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:freebsd:freebsd:linux-c6-openssl");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:freebsd:freebsd:openssl");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:freebsd:freebsd:openssl-devel");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:freebsd:freebsd");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2016/09/22");
      script_set_attribute(attribute:"patch_publication_date", value:"2016/09/22");
      script_set_attribute(attribute:"plugin_publication_date", value:"2016/09/23");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2016-2018 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"FreeBSD Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/FreeBSD/release", "Host/FreeBSD/pkg_info");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("freebsd_package.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    if (!get_kb_item("Host/FreeBSD/release")) audit(AUDIT_OS_NOT, "FreeBSD");
    if (!get_kb_item("Host/FreeBSD/pkg_info")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    
    flag = 0;
    
    if (pkg_test(save_report:TRUE, pkg:"openssl-devel>=1.1.0<1.1.0_1")) flag++;
    if (pkg_test(save_report:TRUE, pkg:"openssl<1.0.2i,1")) flag++;
    if (pkg_test(save_report:TRUE, pkg:"linux-c6-openssl<1.0.1e_11")) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_hole(port:0, extra:pkg_report_get());
      else security_hole(0);
      exit(0);
    }
    else audit(AUDIT_HOST_NOT, "affected");
    
  • NASL familyWeb Servers
    NASL idOPENSSL_1_1_0A.NASL
    descriptionAccording to its banner, the remote host is running a version of OpenSSL 1.1.0 prior to 1.1.0a. It is, therefore, affected by the following vulnerabilities : - A flaw exists in the ssl_parse_clienthello_tlsext() function in t1_lib.c due to improper handling of overly large OCSP Status Request extensions from clients. An unauthenticated, remote attacker can exploit this, via large OCSP Status Request extensions, to exhaust memory resources, resulting in a denial of service condition. (CVE-2016-6304) - A flaw exists in the SSL_peek() function in rec_layer_s3.c due to improper handling of empty records. An unauthenticated, remote attacker can exploit this, by triggering a zero-length record in an SSL_peek call, to cause an infinite loop, resulting in a denial of service condition. (CVE-2016-6305) - A denial of service vulnerability exists in the state-machine implementation due to a failure to check for an excessive length before allocating memory. An unauthenticated, remote attacker can exploit this, via a crafted TLS message, to exhaust memory resources. (CVE-2016-6307) - A denial of service vulnerability exists in the DTLS implementation due to improper handling of excessively long DTLS messages. An unauthenticated, remote attacker can exploit this, via a crafted DTLS message, to exhaust available memory resources. (CVE-2016-6308) - A flaw exists in the GOST ciphersuites due to the use of long-term keys to establish an encrypted connection. A man-in-the-middle attacker can exploit this, via a Key Compromise Impersonation (KCI) attack, to impersonate the server.
    last seen2020-06-01
    modified2020-06-02
    plugin id93816
    published2016-09-30
    reporterThis script is Copyright (C) 2016-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/93816
    titleOpenSSL 1.1.0 < 1.1.0a Multiple Vulnerabilities
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(93816);
      script_version("1.8");
      script_cvs_date("Date: 2019/11/14");
    
      script_cve_id(
        "CVE-2016-6304",
        "CVE-2016-6305",
        "CVE-2016-6307",
        "CVE-2016-6308"
      );
      script_bugtraq_id(
        93149,
        93150,
        93151,
        93152
      );
    
      script_name(english:"OpenSSL 1.1.0 < 1.1.0a Multiple Vulnerabilities");
      script_summary(english:"Performs a banner check.");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote service is affected by multiple vulnerabilities.");
      script_set_attribute(attribute:"description", value:
    "According to its banner, the remote host is running a version of
    OpenSSL 1.1.0 prior to 1.1.0a. It is, therefore, affected by the
    following vulnerabilities :
    
      - A flaw exists in the ssl_parse_clienthello_tlsext()
        function in t1_lib.c due to improper handling of overly
        large OCSP Status Request extensions from clients. An
        unauthenticated, remote attacker can exploit this, via
        large OCSP Status Request extensions, to exhaust memory
        resources, resulting in a denial of service condition.
        (CVE-2016-6304)
    
      - A flaw exists in the SSL_peek() function in
        rec_layer_s3.c due to improper handling of empty
        records. An unauthenticated, remote attacker can exploit
        this, by triggering a zero-length record in an SSL_peek
        call, to cause an infinite loop, resulting in a denial
        of service condition. (CVE-2016-6305)
    
      - A denial of service vulnerability exists in the
        state-machine implementation due to a failure to check
        for an excessive length before allocating memory. An
        unauthenticated, remote attacker can exploit this, via a
        crafted TLS message, to exhaust memory resources.
        (CVE-2016-6307)
    
      - A denial of service vulnerability exists in the DTLS
        implementation due to improper handling of excessively
        long DTLS messages. An unauthenticated, remote attacker
        can exploit this, via a crafted DTLS message, to exhaust
        available memory resources. (CVE-2016-6308)
    
      - A flaw exists in the GOST ciphersuites due to the use of
        long-term keys to establish an encrypted connection. A
        man-in-the-middle attacker can exploit this, via a Key
        Compromise Impersonation (KCI) attack, to impersonate
        the server.");
      script_set_attribute(attribute:"see_also", value:"https://www.openssl.org/news/secadv/20160922.txt");
      # https://github.com/openssl/openssl/commit/41b42807726e340538701021cdc196672330f4db
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?09b29b30");
      script_set_attribute(attribute:"solution", value:
    "Upgrade to OpenSSL version 1.1.0a or later.
    
    Note that the GOST ciphersuites vulnerability is not yet fixed by the
    vendor in an official release; however, a patch for the issue has been
    committed to the OpenSSL github repository.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:C");
      script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
    
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2015/08/10");
      script_set_attribute(attribute:"patch_publication_date", value:"2016/09/22");
      script_set_attribute(attribute:"plugin_publication_date", value:"2016/09/30");
    
      script_set_attribute(attribute:"plugin_type", value:"remote");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:openssl:openssl");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Web Servers");
    
      script_copyright(english:"This script is Copyright (C) 2016-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
    
      script_dependencies("openssl_version.nasl");
      script_require_keys("openssl/port");
    
      exit(0);
    }
    
    include("openssl_version.inc");
    
    openssl_check_version(fixed:'1.1.0a', min:"1.1.0", severity:SECURITY_HOLE);
    
  • NASL familyMisc.
    NASL idORACLE_ENTERPRISE_MANAGER_APR_2017_CPU.NASL
    descriptionThe version of Oracle Enterprise Manager Grid Control installed on the remote host is missing a security patch. It is, therefore, affected by multiple vulnerabilities : - Multiple integer overflow conditions exist in the OpenSSL component in s3_srvr.c, ssl_sess.c, and t1_lib.c due to improper use of pointer arithmetic for heap-buffer boundary checks. An unauthenticated, remote attacker can exploit this to cause a denial of service condition. (CVE-2016-2177) - An information disclosure vulnerability exists in the OpenSSL component in dsa_sign_setup() function in dsa_ossl.c due to a failure to properly ensure the use of constant-time operations. An unauthenticated, remote attacker can exploit this, via a timing side-channel attack, to disclose DSA key information. (CVE-2016-2178) - A denial of service vulnerability exists in the OpenSSL component in the DTLS implementation due to a failure to properly restrict the lifetime of queue entries associated with unused out-of-order messages. An unauthenticated, remote attacker can exploit this, by maintaining multiple crafted DTLS sessions simultaneously, to exhaust memory. (CVE-2016-2179) - An out-of-bounds read error exists in the OpenSSL component in the X.509 Public Key Infrastructure Time-Stamp Protocol (TSP) implementation. An unauthenticated, remote attacker can exploit this, via a crafted time-stamp file that is mishandled by the
    last seen2020-06-01
    modified2020-06-02
    plugin id99594
    published2017-04-21
    reporterThis script is Copyright (C) 2017-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/99594
    titleOracle Enterprise Manager Grid Control Multiple Vulnerabilities (April 2017 CPU) (SWEET32)
  • NASL familyJunos Local Security Checks
    NASL idJUNIPER_JSA10759.NASL
    descriptionAccording to its self-reported version number, the remote Juniper Junos device is affected by the following vulnerabilities related to OpenSSL : - A flaw exists in the ssl3_get_key_exchange() function in file s3_clnt.c when handling a ServerKeyExchange message for an anonymous DH ciphersuite with the value of
    last seen2020-03-18
    modified2017-01-05
    plugin id96316
    published2017-01-05
    reporterThis script is Copyright (C) 2017-2018 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/96316
    titleJuniper Junos Multiple OpenSSL Vulnerabilities (JSA10759) (SWEET32)
  • NASL familyMisc.
    NASL idPVS_5_2_0.NASL
    descriptionThe version of Tenable Passive Vulnerability Scanner (PVS) installed on the remote host is 5.x < 5.2.0. It is, therefore, affected by multiple vulnerabilities : - Multiple denial of service vulnerabilities exist in Expat within file xmlparse.c due to a logical error in hash computations. An unauthenticated, remote attacker can exploit these, via a specially crafted XML file containing many identifiers with the same value, to cause the service to exhaust CPU resources. (CVE-2012-0876, CVE-2016-5300) - A flaw exists in the generate_hash_secret_salt() function in file lib/xmlparse.c within Expat due to the generation of non-random output by the PRNG. An unauthenticated, remote attacker can exploit this to more easily predict the PRNG output. (CVE-2012-6702) - Multiple buffer overflow conditions exist within Expat, specifically in the XML_GetBuffer() function in file lib/xmlparse.c, due to improper validation of user-supplied input when handling compressed XML content. An unauthenticated, remote attacker can exploit these to execute arbitrary code. (CVE-2015-1283, CVE-2016-4472) - Multiple buffer overflow conditions exist within the Expat XML parser when handling malformed input documents due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit these to cause a denial of service condition or the execution of arbitrary code. (CVE-2016-0718, CVE-2016-0719) - Multiple integer overflow conditions exist in s3_srvr.c, ssl_sess.c, and t1_lib.c due to improper use of pointer arithmetic for heap-buffer boundary checks. An unauthenticated, remote attacker can exploit these to cause a denial of service. (CVE-2016-2177) - An information disclosure vulnerability exists in the dsa_sign_setup() function in dsa_ossl.c due to a failure to properly ensure the use of constant-time operations. An unauthenticated, remote attacker can exploit this, via a timing side-channel attack, to disclose DSA key information. (CVE-2016-2178) - A denial of service vulnerability exists in the DTLS implementation due to a failure to properly restrict the lifetime of queue entries associated with unused out-of-order messages. An unauthenticated, remote attacker can exploit this, by maintaining multiple crafted DTLS sessions simultaneously, to exhaust memory. (CVE-2016-2179) - An out-of-bounds read error exists in the X.509 Public Key Infrastructure Time-Stamp Protocol (TSP) implementation. An unauthenticated, remote attacker can exploit this, via a crafted time-stamp file that is mishandled by the
    last seen2020-06-01
    modified2020-06-02
    plugin id96337
    published2017-01-06
    reporterThis script is Copyright (C) 2017-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/96337
    titleTenable Passive Vulnerability Scanner 5.x < 5.2.0 Multiple Vulnerabilities (SWEET32)
  • NASL familyCGI abuses : XSS
    NASL idNESSUS_TNS_2016_16.NASL
    descriptionAccording to its self-reported version number, the Tenable Nessus application running on the remote host is 6.x prior to 6.9. It is, therefore, affected by multiple vulnerabilities : - Multiple integer overflow conditions exist in the OpenSSL component in s3_srvr.c, ssl_sess.c, and t1_lib.c due to improper use of pointer arithmetic for heap-buffer boundary checks. An unauthenticated, remote attacker can exploit this to cause a denial of service. (CVE-2016-2177) - An information disclosure vulnerability exists in the OpenSSL component in the dsa_sign_setup() function in dsa_ossl.c due to a failure to properly ensure the use of constant-time operations. An unauthenticated, remote attacker can exploit this, via a timing side-channel attack, to disclose DSA key information. (CVE-2016-2178) - A denial of service vulnerability exists in the OpenSSL component in the DTLS implementation due to a failure to properly restrict the lifetime of queue entries associated with unused out-of-order messages. An unauthenticated, remote attacker can exploit this, by maintaining multiple crafted DTLS sessions simultaneously, to exhaust memory. (CVE-2016-2179) - An out-of-bounds read error exists in the OpenSSL component in the X.509 Public Key Infrastructure Time-Stamp Protocol (TSP) implementation. An unauthenticated, remote attacker can exploit this, via a crafted time-stamp file that is mishandled by the
    last seen2020-06-01
    modified2020-06-02
    plugin id97192
    published2017-02-15
    reporterThis script is Copyright (C) 2017-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/97192
    titleTenable Nessus 6.x < 6.9 Multiple Vulnerabilities (TNS-2016-16) (SWEET32)
  • NASL familySlackware Local Security Checks
    NASL idSLACKWARE_SSA_2016-266-01.NASL
    descriptionNew openssl packages are available for Slackware 14.0, 14.1, 14.2, and -current to fix security issues.
    last seen2020-06-01
    modified2020-06-02
    plugin id93663
    published2016-09-23
    reporterThis script is Copyright (C) 2016-2017 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/93663
    titleSlackware 14.0 / 14.1 / 14.2 / current : openssl (SSA:2016-266-01)