Vulnerabilities > CVE-2016-3739 - Improper Input Validation vulnerability in Haxx Curl

047910
CVSS 5.3 - MEDIUM
Attack vector
NETWORK
Attack complexity
HIGH
Privileges required
NONE
Confidentiality impact
NONE
Integrity impact
HIGH
Availability impact
NONE
network
high complexity
haxx
CWE-20
nessus

Summary

The (1) mbed_connect_step1 function in lib/vtls/mbedtls.c and (2) polarssl_connect_step1 function in lib/vtls/polarssl.c in cURL and libcurl before 7.49.0, when using SSLv3 or making a TLS connection to a URL that uses a numerical IP address, allow remote attackers to spoof servers via an arbitrary valid certificate.

Common Weakness Enumeration (CWE)

Common Attack Pattern Enumeration and Classification (CAPEC)

  • Buffer Overflow via Environment Variables
    This attack pattern involves causing a buffer overflow through manipulation of environment variables. Once the attacker finds that they can modify an environment variable, they may try to overflow associated buffers. This attack leverages implicit trust often placed in environment variables.
  • Server Side Include (SSI) Injection
    An attacker can use Server Side Include (SSI) Injection to send code to a web application that then gets executed by the web server. Doing so enables the attacker to achieve similar results to Cross Site Scripting, viz., arbitrary code execution and information disclosure, albeit on a more limited scale, since the SSI directives are nowhere near as powerful as a full-fledged scripting language. Nonetheless, the attacker can conveniently gain access to sensitive files, such as password files, and execute shell commands.
  • Cross Zone Scripting
    An attacker is able to cause a victim to load content into their web-browser that bypasses security zone controls and gain access to increased privileges to execute scripting code or other web objects such as unsigned ActiveX controls or applets. This is a privilege elevation attack targeted at zone-based web-browser security. In a zone-based model, pages belong to one of a set of zones corresponding to the level of privilege assigned to that page. Pages in an untrusted zone would have a lesser level of access to the system and/or be restricted in the types of executable content it was allowed to invoke. In a cross-zone scripting attack, a page that should be assigned to a less privileged zone is granted the privileges of a more trusted zone. This can be accomplished by exploiting bugs in the browser, exploiting incorrect configuration in the zone controls, through a cross-site scripting attack that causes the attackers' content to be treated as coming from a more trusted page, or by leveraging some piece of system functionality that is accessible from both the trusted and less trusted zone. This attack differs from "Restful Privilege Escalation" in that the latter correlates to the inadequate securing of RESTful access methods (such as HTTP DELETE) on the server, while cross-zone scripting attacks the concept of security zones as implemented by a browser.
  • Cross Site Scripting through Log Files
    An attacker may leverage a system weakness where logs are susceptible to log injection to insert scripts into the system's logs. If these logs are later viewed by an administrator through a thin administrative interface and the log data is not properly HTML encoded before being written to the page, the attackers' scripts stored in the log will be executed in the administrative interface with potentially serious consequences. This attack pattern is really a combination of two other attack patterns: log injection and stored cross site scripting.
  • Command Line Execution through SQL Injection
    An attacker uses standard SQL injection methods to inject data into the command line for execution. This could be done directly through misuse of directives such as MSSQL_xp_cmdshell or indirectly through injection of data into the database that would be interpreted as shell commands. Sometime later, an unscrupulous backend application (or could be part of the functionality of the same application) fetches the injected data stored in the database and uses this data as command line arguments without performing proper validation. The malicious data escapes that data plane by spawning new commands to be executed on the host.

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 familyWeb Servers
    NASL idHPSMH_7_6.NASL
    descriptionAccording to its banner, the version of HP System Management Homepage (SMH) hosted on the remote web server is prior to 7.6. It is, therefore, affected by the following vulnerabilities : - A heap buffer overflow condition exists in OpenSSL in the EVP_EncodeUpdate() function within file crypto/evp/encode.c that is triggered when handling a large amount of input data. An unauthenticated, remote attacker can exploit this to cause a denial of service condition. (CVE-2016-2105) - A heap buffer overflow condition exists in OpenSSL in the EVP_EncryptUpdate() function within file crypto/evp/evp_enc.c that is triggered when handling a large amount of input data after a previous call occurs to the same function with a partial block. An unauthenticated, remote attacker can exploit this to cause a denial of service condition. (CVE-2016-2106) - Multiple flaws exist OpenSSL in the aesni_cbc_hmac_sha1_cipher() function in file crypto/evp/e_aes_cbc_hmac_sha1.c and the aesni_cbc_hmac_sha256_cipher() function in file crypto/evp/e_aes_cbc_hmac_sha256.c that are triggered when the connection uses an AES-CBC cipher and AES-NI is supported by the server. A man-in-the-middle attacker can exploit these to conduct a padding oracle attack, resulting in the ability to decrypt the network traffic. (CVE-2016-2107) - Multiple unspecified flaws exist in OpenSSL in the d2i BIO functions when reading ASN.1 data from a BIO due to invalid encoding causing a large allocation of memory. An unauthenticated, remote attacker can exploit these to cause a denial of service condition through resource exhaustion. (CVE-2016-2109) - A certificate validation bypass vulnerability exists in cURL and libcurl due to improper validation of TLS certificates. A man-in-the-middle attacker can exploit this, via a spoofed certificate that appears valid, to disclose or manipulate transmitted data. (CVE-2016-3739) - An integer overflow condition exists in PHP in the php_raw_url_encode() function within file ext/standard/url.c due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit this to have an unspecified impact. (CVE-2016-4070) - A flaw exists in PHP in the php_snmp_error() function within file ext/snmp/snmp.c that is triggered when handling format string specifiers. An unauthenticated, remote attacker can exploit this, via a crafted SNMP object, to cause a denial of service or to execute arbitrary code. (CVE-2016-4071) - An invalid memory write error exists in PHP when handling the path of phar file names that allows an attacker to have an unspecified impact. (CVE-2016-4072) - A remote code execution vulnerability exists in PHP in phar_object.c due to improper handling of zero-length uncompressed data. An unauthenticated, remote attacker can exploit this, via a specially crafted TAR, ZIP, or PHAR file, to cause a denial of service condition or the execution of arbitrary code. (CVE-2016-4342) - A remote code execution vulnerability exists in PHP in the phar_make_dirstream() function within file ext/phar/dirstream.c due to improper handling of ././@LongLink files. An unauthenticated, remote attacker can exploit this, via a specially crafted TAR file, to cause a denial of service condition or the execution of arbitrary code. (CVE-2016-4343) - A cross-site scripting (XSS) vulnerability exists 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
    last seen2020-06-01
    modified2020-06-02
    plugin id94654
    published2016-11-09
    reporterThis script is Copyright (C) 2016-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/94654
    titleHP System Management Homepage < 7.6 Multiple Vulnerabilities (HPSBMU03653) (httpoxy)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(94654);
      script_version("1.12");
      script_cvs_date("Date: 2019/11/14");
    
      script_cve_id(
        "CVE-2016-2105",
        "CVE-2016-2106",
        "CVE-2016-2107",
        "CVE-2016-2109",
        "CVE-2016-3739",
        "CVE-2016-4070",
        "CVE-2016-4071",
        "CVE-2016-4072",
        "CVE-2016-4342",
        "CVE-2016-4343",
        "CVE-2016-4393",
        "CVE-2016-4394",
        "CVE-2016-4395",
        "CVE-2016-4396",
        "CVE-2016-4537",
        "CVE-2016-4538",
        "CVE-2016-4539",
        "CVE-2016-4540",
        "CVE-2016-4541",
        "CVE-2016-4542",
        "CVE-2016-4543",
        "CVE-2016-5385",
        "CVE-2016-5387",
        "CVE-2016-5388"
      );
      script_bugtraq_id(
        85800,
        85801,
        85993,
        87940,
        89154,
        89179,
        89744,
        89757,
        89760,
        89844,
        90172,
        90173,
        90174,
        90726,
        91816,
        91818,
        91821,
        93961
      );
      script_xref(name:"CERT", value:"797896");
      script_xref(name:"EDB-ID", value:"39645");
      script_xref(name:"EDB-ID", value:"39653");
      script_xref(name:"EDB-ID", value:"39768");
      script_xref(name:"HP", value:"HPSBMU03653");
      script_xref(name:"HP", value:"emr_na-c05320149");
      script_xref(name:"HP", value:"PSRT110145");
      script_xref(name:"HP", value:"PSRT110263");
      script_xref(name:"HP", value:"PSRT110115");
      script_xref(name:"HP", value:"PSRT110116");
      script_xref(name:"TRA", value:"TRA-2016-32");
      script_xref(name:"ZDI", value:"ZDI-16-587");
    
      script_name(english:"HP System Management Homepage < 7.6 Multiple Vulnerabilities (HPSBMU03653) (httpoxy)");
      script_summary(english:"Performs a banner check.");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote web server is affected by multiple vulnerabilities.");
      script_set_attribute(attribute:"description", value:
    "According to its banner, the version of HP System Management Homepage
    (SMH) hosted on the remote web server is prior to 7.6. It is,
    therefore, affected by the following vulnerabilities :
    
      - A heap buffer overflow condition exists in OpenSSL in
        the EVP_EncodeUpdate() function within file
        crypto/evp/encode.c that is triggered when handling
        a large amount of input data. An unauthenticated, remote
        attacker can exploit this to cause a denial of service
        condition. (CVE-2016-2105)
    
      - A heap buffer overflow condition exists in OpenSSL in
        the EVP_EncryptUpdate() function within file
        crypto/evp/evp_enc.c that is triggered when handling a
        large amount of input data after a previous call occurs
        to the same function with a partial block. An
        unauthenticated, remote attacker can exploit this to
        cause a denial of service condition. (CVE-2016-2106)
    
      - Multiple flaws exist OpenSSL in the
        aesni_cbc_hmac_sha1_cipher() function in file
        crypto/evp/e_aes_cbc_hmac_sha1.c and the
        aesni_cbc_hmac_sha256_cipher() function in file
        crypto/evp/e_aes_cbc_hmac_sha256.c that are triggered
        when the connection uses an AES-CBC cipher and AES-NI
        is supported by the server. A man-in-the-middle attacker
        can exploit these to conduct a padding oracle attack,
        resulting in the ability to decrypt the network traffic.
        (CVE-2016-2107)
    
      - Multiple unspecified flaws exist in OpenSSL in the d2i
        BIO functions when reading ASN.1 data from a BIO due to
        invalid encoding causing a large allocation of memory.
        An unauthenticated, remote attacker can exploit these to
        cause a denial of service condition through resource
        exhaustion. (CVE-2016-2109)
    
      - A certificate validation bypass vulnerability exists in
        cURL and libcurl due to improper validation of TLS
        certificates. A man-in-the-middle attacker can exploit
        this, via a spoofed certificate that appears valid, to
        disclose or manipulate transmitted data. (CVE-2016-3739)
    
      - An integer overflow condition exists in PHP in the
        php_raw_url_encode() function within file
        ext/standard/url.c due to improper validation of
        user-supplied input. An unauthenticated, remote attacker
        can exploit this to have an unspecified impact.
        (CVE-2016-4070)
        
      - A flaw exists in PHP in the php_snmp_error() function
        within file ext/snmp/snmp.c that is triggered when
        handling format string specifiers. An unauthenticated,
        remote attacker can exploit this, via a crafted SNMP
        object, to cause a denial of service or to execute
        arbitrary code. (CVE-2016-4071)
    
      - An invalid memory write error exists in PHP when
        handling the path of phar file names that allows an
        attacker to have an unspecified impact. (CVE-2016-4072)
    
      - A remote code execution vulnerability exists in PHP in
        phar_object.c due to improper handling of zero-length
        uncompressed data. An unauthenticated, remote attacker
        can exploit this, via a specially crafted TAR, ZIP, or
        PHAR file, to cause a denial of service condition or the
        execution of arbitrary code. (CVE-2016-4342)
    
      - A remote code execution vulnerability exists in PHP in
        the phar_make_dirstream() function within file
        ext/phar/dirstream.c due to improper handling of
        ././@LongLink files. An unauthenticated, remote attacker
        can exploit this, via a specially crafted TAR file, to
        cause a denial of service condition or the execution of
        arbitrary code. (CVE-2016-4343)
    
      - A cross-site scripting (XSS) vulnerability exists 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-2016-4393)
    
      - An unspecified HTTP Strict Transport Security (HSTS)
        bypass vulnerability exists that allows authenticated,
        remote attackers to disclose sensitive information.
        (CVE-2016-4394)
    
      - A remote code execution vulnerability exists due to an
        overflow condition in the mod_smh_config.so library
        caused by improper validation of user-supplied input
        when parsing the admin-group parameter supplied to the
        /proxy/SetSMHData endpoint. An unauthenticated, remote
        attacker can exploit this, via a specially crafted
        request, to cause a denial of service condition or the
        execution of arbitrary code. (CVE-2016-4395)
    
      - A remote code execution vulnerability exists due to an
        overflow condition in the mod_smh_config.so library
        caused by improper validation of user-supplied input
        when parsing the TKN parameter supplied to the
        /Proxy/SSO endpoint. An unauthenticated, remote
        attacker can exploit this, via a specially crafted
        request, to cause a denial of service condition or the
        execution of arbitrary code. (CVE-2016-4396)
    
      - An out-of-bounds read error exists in PHP in the
        php_str2num() function in bcmath.c when handling
        negative scales. An unauthenticated, remote attacker can
        exploit this, via a crafted call, to cause a denial of
        service condition or the disclosure of memory contents.
        (CVE-2016-4537)
    
      - A flaw exists in PHP the bcpowmod() function in bcmath.c
        due to modifying certain data structures without
        considering whether they are copies of the _zero_,
        _one_, or _two_ global variables. An unauthenticated,
        remote attacker can exploit this, via a crafted call, to
        cause a denial of service condition. (CVE-2016-4538)
    
      - A flaw exists in PHP in the xml_parse_into_struct()
        function in xml.c when handling specially crafted XML
        contents. An unauthenticated, remote attacker can
        exploit this to cause a denial of service condition.
        (CVE-2016-4539)
    
      - Multiple out-of-bounds read errors exist in PHP within
        file ext/intl/grapheme/grapheme_string.c when handling
        negative offsets in the zif_grapheme_stripos() and
        zif_grapheme_strpos() functions. An unauthenticated,
        remote attacker can exploit these issues to cause a
        denial of service condition or disclose memory contents.
        (CVE-2016-4540, CVE-2016-4541)
    
      - A flaw exists in PHP in the exif_process_IFD_TAG()
        function in exif.c due to improper construction of
        spprintf arguments. An unauthenticated, remote attacker
        can exploit this, via crafted header data, to cause an
        out-of-bounds read error, resulting in a denial of
        service condition or the disclosure of memory contents.
        (CVE-2016-4542)
    
      - A flaw exists in PHP in the exif_process_IFD_in_JPEG()
        function in exif.c due to improper validation of IFD
        sizes. An unauthenticated, remote attacker can exploit
        this, via crafted header data, to cause an out-of-bounds
        read error, resulting in a denial of service condition
        or the disclosure of memory contents. (CVE-2016-4543)
    
      - A man-in-the-middle vulnerability exists, known as
        'httpoxy', in the Apache Tomcat, Apache HTTP Server, and
        PHP components due to a failure to properly resolve
        namespace conflicts in accordance with RFC 3875 section
        4.1.18. The HTTP_PROXY environment variable is set based
        on untrusted user data in the 'Proxy' header of HTTP
        requests. The HTTP_PROXY environment variable is used by
        some web client libraries to specify a remote proxy
        server. A remote attacker can exploit this, via a
        crafted 'Proxy' header in an HTTP request, to redirect
        an application's internal HTTP traffic to an arbitrary
        proxy server where it may be observed or manipulated.
        (CVE-2016-5385, CVE-2016-5387, CVE-2016-5388)
    
    Note that Nessus has not tested for these issues but has instead
    relied only on the application's self-reported version number.");
      # https://support.hpe.com/hpsc/doc/public/display?docId=emr_na-c05320149
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?b7e1b347");
      script_set_attribute(attribute:"see_also", value:"https://httpoxy.org");
      script_set_attribute(attribute:"see_also", value:"https://www.tenable.com/security/research/tra-2016-32");
      script_set_attribute(attribute:"see_also", value:"https://www.zerodayinitiative.com/advisories/ZDI-16-587/");
      script_set_attribute(attribute:"solution", value:
    "Upgrade to HP System Management Homepage (SMH) version 7.6 or later.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/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:R/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-4342");
    
      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:"2016/10/26");
      script_set_attribute(attribute:"patch_publication_date", value:"2016/10/26");
      script_set_attribute(attribute:"plugin_publication_date", value:"2016/11/09");
    
      script_set_attribute(attribute:"plugin_type", value:"remote");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:hp:system_management_homepage");
      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("compaq_wbem_detect.nasl", "os_fingerprint.nasl");
      script_require_keys("www/hp_smh");
      script_require_ports("Services/www", 2301, 2381);
    
      exit(0);
    }
    
    include("audit.inc");
    include("global_settings.inc");
    include("misc_func.inc");
    include("http.inc");
    include("install_func.inc");
    
    # Only Linux and Windows are affected -- HP-UX is not mentioned
    os = get_kb_item_or_exit("Host/OS");
    if ("Windows" >!< os && "Linux" >!< os) audit(AUDIT_OS_NOT, "Windows or Linux", os);
    
    port = get_http_port(default:2381, embedded:TRUE);
    app = "hp_smh";
    get_install_count(app_name:app, exit_if_zero:TRUE);
    
    install = get_single_install(
      app_name : app,
      port     : port,
      exit_if_unknown_ver : TRUE
    );
    
    dir = install['dir'];
    version = install['version'];
    prod = get_kb_item_or_exit("www/"+port+"/hp_smh/variant");
    source_line = get_kb_item("www/"+port+"/hp_smh/source");
    
    if (version == UNKNOWN_VER) audit(AUDIT_UNKNOWN_WEB_APP_VER, prod, build_url(port:port, qs:dir+"/") );
    
    # nb: 'version' can have non-numeric characters in it so we'll create
    #     an alternate form and make sure that's safe for use in 'ver_compare()'.
    version_alt = ereg_replace(pattern:"[_-]", replace:".", string:version);
    if (!ereg(pattern:"^[0-9][0-9.]+$", string:version_alt))
      audit(AUDIT_VER_FORMAT, version);
    
    if (ver_compare(ver:version_alt, fix:"7.6", strict:FALSE) == -1)
    {
      report = '\n  Product           : ' + prod;
      if (!isnull(source_line))
        report += '\n  Version source    : ' + source_line;
      report +=
        '\n  Installed version : ' + version +
        '\n  Fixed version     : 7.6' +
        '\n';
    
      security_report_v4(severity:SECURITY_HOLE, port:port, extra:report, xss:TRUE);
      exit(0);
    }
    else audit(AUDIT_LISTEN_NOT_VULN, prod, port, version);
    
  • NASL familyGentoo Local Security Checks
    NASL idGENTOO_GLSA-201701-47.NASL
    descriptionThe remote host is affected by the vulnerability described in GLSA-201701-47 (cURL: Multiple vulnerabilities) Multiple vulnerabilities have been discovered in cURL. Please review the CVE identifiers and bug reports referenced for details. Impact : Remote attackers could conduct a Man-in-the-Middle attack to obtain sensitive information, cause a Denial of Service condition, or execute arbitrary code. Workaround : There is no known workaround at this time.
    last seen2020-06-01
    modified2020-06-02
    plugin id96644
    published2017-01-20
    reporterThis script is Copyright (C) 2017 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/96644
    titleGLSA-201701-47 : cURL: Multiple vulnerabilities
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from Gentoo Linux Security Advisory GLSA 201701-47.
    #
    # The advisory text is Copyright (C) 2001-2017 Gentoo Foundation, Inc.
    # and licensed under the Creative Commons - Attribution / Share Alike 
    # license. See http://creativecommons.org/licenses/by-sa/3.0/
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(96644);
      script_version("$Revision: 3.1 $");
      script_cvs_date("$Date: 2017/01/20 15:01:13 $");
    
      script_cve_id("CVE-2014-8150", "CVE-2014-8151", "CVE-2016-0755", "CVE-2016-3739", "CVE-2016-5419", "CVE-2016-5420", "CVE-2016-5421", "CVE-2016-7141", "CVE-2016-7167", "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-9586", "CVE-2016-9594");
      script_xref(name:"GLSA", value:"201701-47");
    
      script_name(english:"GLSA-201701-47 : cURL: Multiple vulnerabilities");
      script_summary(english:"Checks for updated package(s) in /var/db/pkg");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:
    "The remote Gentoo host is missing one or more security-related
    patches."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "The remote host is affected by the vulnerability described in GLSA-201701-47
    (cURL: Multiple vulnerabilities)
    
        Multiple vulnerabilities have been discovered in cURL. Please review the
          CVE identifiers and bug reports referenced for details.
      
    Impact :
    
        Remote attackers could conduct a Man-in-the-Middle attack to obtain
          sensitive information, cause a Denial of Service condition, or execute
          arbitrary code.
      
    Workaround :
    
        There is no known workaround at this time."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security.gentoo.org/glsa/201701-47"
      );
      script_set_attribute(
        attribute:"solution", 
        value:
    "All cURL users should upgrade to the latest version:
          # emerge --sync
          # emerge --ask --oneshot --verbose '>=net-misc/curl-7.52.1'"
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P");
      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:gentoo:linux:curl");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:gentoo:linux");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2017/01/19");
      script_set_attribute(attribute:"plugin_publication_date", value:"2017/01/20");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2017 Tenable Network Security, Inc.");
      script_family(english:"Gentoo Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/Gentoo/release", "Host/Gentoo/qpkg-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("qpkg.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    if (!get_kb_item("Host/Gentoo/release")) audit(AUDIT_OS_NOT, "Gentoo");
    if (!get_kb_item("Host/Gentoo/qpkg-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    
    flag = 0;
    
    if (qpkg_check(package:"net-misc/curl", unaffected:make_list("ge 7.52.1"), vulnerable:make_list("lt 7.52.1"))) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_hole(port:0, extra:qpkg_report_get());
      else security_hole(0);
      exit(0);
    }
    else
    {
      tested = qpkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "cURL");
    }
    
  • NASL familySlackware Local Security Checks
    NASL idSLACKWARE_SSA_2016-141-01.NASL
    descriptionNew curl packages are available for Slackware 13.0, 13.1, 13.37, 14.0, 14.1, and -current to fix a security issue.
    last seen2020-06-01
    modified2020-06-02
    plugin id91285
    published2016-05-23
    reporterThis script is Copyright (C) 2016 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/91285
    titleSlackware 13.0 / 13.1 / 13.37 / 14.0 / 14.1 / current : curl (SSA:2016-141-01)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from Slackware Security Advisory 2016-141-01. The text 
    # itself is copyright (C) Slackware Linux, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(91285);
      script_version("$Revision: 2.2 $");
      script_cvs_date("$Date: 2016/10/19 14:37:27 $");
    
      script_cve_id("CVE-2016-3739");
      script_xref(name:"SSA", value:"2016-141-01");
    
      script_name(english:"Slackware 13.0 / 13.1 / 13.37 / 14.0 / 14.1 / current : curl (SSA:2016-141-01)");
      script_summary(english:"Checks for updated package in /var/log/packages");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote Slackware host is missing a security update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "New curl packages are available for Slackware 13.0, 13.1, 13.37,
    14.0, 14.1, and -current to fix a security issue."
      );
      # http://www.slackware.com/security/viewer.php?l=slackware-security&y=2016&m=slackware-security.495349
      script_set_attribute(
        attribute:"see_also",
        value:"http://www.nessus.org/u?0414682b"
      );
      script_set_attribute(attribute:"solution", value:"Update the affected curl package.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:H/Au:N/C:N/I:P/A:N");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:N");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:slackware:slackware_linux:curl");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:slackware:slackware_linux");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:slackware:slackware_linux:13.0");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:slackware:slackware_linux:13.1");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:slackware:slackware_linux:13.37");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:slackware:slackware_linux:14.0");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:slackware:slackware_linux:14.1");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2016/05/20");
      script_set_attribute(attribute:"plugin_publication_date", value:"2016/05/23");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2016 Tenable Network Security, Inc.");
      script_family(english:"Slackware Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/Slackware/release", "Host/Slackware/packages");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("slackware.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    if (!get_kb_item("Host/Slackware/release")) audit(AUDIT_OS_NOT, "Slackware");
    if (!get_kb_item("Host/Slackware/packages")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Slackware", cpu);
    
    
    flag = 0;
    if (slackware_check(osver:"13.0", pkgname:"curl", pkgver:"7.49.0", pkgarch:"i486", pkgnum:"1_slack13.0")) flag++;
    if (slackware_check(osver:"13.0", arch:"x86_64", pkgname:"curl", pkgver:"7.49.0", pkgarch:"x86_64", pkgnum:"1_slack13.0")) flag++;
    
    if (slackware_check(osver:"13.1", pkgname:"curl", pkgver:"7.49.0", pkgarch:"i486", pkgnum:"1_slack13.1")) flag++;
    if (slackware_check(osver:"13.1", arch:"x86_64", pkgname:"curl", pkgver:"7.49.0", pkgarch:"x86_64", pkgnum:"1_slack13.1")) flag++;
    
    if (slackware_check(osver:"13.37", pkgname:"curl", pkgver:"7.49.0", pkgarch:"i486", pkgnum:"1_slack13.37")) flag++;
    if (slackware_check(osver:"13.37", arch:"x86_64", pkgname:"curl", pkgver:"7.49.0", pkgarch:"x86_64", pkgnum:"1_slack13.37")) flag++;
    
    if (slackware_check(osver:"14.0", pkgname:"curl", pkgver:"7.49.0", pkgarch:"i486", pkgnum:"1_slack14.0")) flag++;
    if (slackware_check(osver:"14.0", arch:"x86_64", pkgname:"curl", pkgver:"7.49.0", pkgarch:"x86_64", pkgnum:"1_slack14.0")) flag++;
    
    if (slackware_check(osver:"14.1", pkgname:"curl", pkgver:"7.49.0", pkgarch:"i486", pkgnum:"1_slack14.1")) flag++;
    if (slackware_check(osver:"14.1", arch:"x86_64", pkgname:"curl", pkgver:"7.49.0", pkgarch:"x86_64", pkgnum:"1_slack14.1")) flag++;
    
    if (slackware_check(osver:"current", pkgname:"curl", pkgver:"7.49.0", pkgarch:"i586", pkgnum:"1")) flag++;
    if (slackware_check(osver:"current", arch:"x86_64", pkgname:"curl", pkgver:"7.49.0", pkgarch:"x86_64", pkgnum:"1")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_note(port:0, extra:slackware_report_get());
      else security_note(0);
      exit(0);
    }
    else audit(AUDIT_HOST_NOT, "affected");