Vulnerabilities > CVE-2003-1418 - Information Exposure vulnerability in Apache Http Server

047910
CVSS 4.3 - MEDIUM
Attack vector
NETWORK
Attack complexity
MEDIUM
Privileges required
NONE
Confidentiality impact
PARTIAL
Integrity impact
NONE
Availability impact
NONE
network
apache
CWE-200
nessus

Summary

Apache HTTP Server 1.3.22 through 1.3.27 on OpenBSD allows remote attackers to obtain sensitive information via (1) the ETag header, which reveals the inode number, or (2) multipart MIME boundary, which reveals child process IDs (PID).

Common Weakness Enumeration (CWE)

Common Attack Pattern Enumeration and Classification (CAPEC)

  • Subverting Environment Variable Values
    The attacker directly or indirectly modifies environment variables used by or controlling the target software. The attacker's goal is to cause the target software to deviate from its expected operation in a manner that benefits the attacker.
  • Footprinting
    An attacker engages in probing and exploration activity to identify constituents and properties of the target. Footprinting is a general term to describe a variety of information gathering techniques, often used by attackers in preparation for some attack. It consists of using tools to learn as much as possible about the composition, configuration, and security mechanisms of the targeted application, system or network. Information that might be collected during a footprinting effort could include open ports, applications and their versions, network topology, and similar information. While footprinting is not intended to be damaging (although certain activities, such as network scans, can sometimes cause disruptions to vulnerable applications inadvertently) it may often pave the way for more damaging attacks.
  • Exploiting Trust in Client (aka Make the Client Invisible)
    An attack of this type exploits a programs' vulnerabilities in client/server communication channel authentication and data integrity. It leverages the implicit trust a server places in the client, or more importantly, that which the server believes is the client. An attacker executes this type of attack by placing themselves in the communication channel between client and server such that communication directly to the server is possible where the server believes it is communicating only with a valid client. There are numerous variations of this type of attack.
  • Browser Fingerprinting
    An attacker carefully crafts small snippets of Java Script to efficiently detect the type of browser the potential victim is using. Many web-based attacks need prior knowledge of the web browser including the version of browser to ensure successful exploitation of a vulnerability. Having this knowledge allows an attacker to target the victim with attacks that specifically exploit known or zero day weaknesses in the type and version of the browser used by the victim. Automating this process via Java Script as a part of the same delivery system used to exploit the browser is considered more efficient as the attacker can supply a browser fingerprinting method and integrate it with exploit code, all contained in Java Script and in response to the same web page request by the browser.
  • Session Credential Falsification through Prediction
    This attack targets predictable session ID in order to gain privileges. The attacker can predict the session ID used during a transaction to perform spoofing and session hijacking.

Nessus

  • NASL familyWeb Servers
    NASL idORACLE_HTTP_SERVER_CPU_OCT_2015.NASL
    descriptionThe version of Oracle HTTP Server installed on the remote host is affected by multiple vulnerabilities : - (CVE-2003-1418) - A denial of service vulnerability exists in libxml2, related to the xmlParserHandlePEReference() function in file parser.c, due to loading external parameter entities without regard to entity substitution or validation being enabled, as in the case of entity substitution in the doctype prolog. An unauthenticated, remote attacker can exploit this, via specially crafted XML content, to exhaust the system CPU, memory, or file descriptor resources. (CVE-2014-0191) - An unspecified vulnerability exists in the Web Listener component that allows an unauthenticated, remote attacker to impact availability. (CVE-2015-1829) - (CVE-2015-2808) - An unspecified vulnerability exists in the OSSL Module that allows an unauthenticated, remote attacker to impact confidentiality. (CVE-2015-4812) - An unspecified vulnerability exists in the Web Listener component that allows an authenticated, remote attacker to impact confidentiality. (CVE-2015-4914) - (CVE-2016-2183)
    last seen2020-03-18
    modified2015-10-23
    plugin id86569
    published2015-10-23
    reporterThis script is Copyright (C) 2015-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/86569
    titleOracle Fusion Middleware Oracle HTTP Server Multiple Vulnerabilities (October 2015 CPU)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include('compat.inc');
    
    if (description)
    {
      script_id(86569);
      script_version("1.19");
      script_set_attribute(attribute:"plugin_modification_date", value:"2020/02/25");
    
      script_cve_id(
        "CVE-2003-1418",
        "CVE-2014-0191",
        "CVE-2015-1829",
        "CVE-2015-2808",
        "CVE-2015-4812",
        "CVE-2015-4914",
        "CVE-2016-2183"
      );
      script_bugtraq_id(
        67233,
        73684,
        75164,
        77195,
        77201,
        92630
      );
    
      script_name(english:"Oracle Fusion Middleware Oracle HTTP Server Multiple Vulnerabilities (October 2015 CPU)");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote web server is affected by multiple vulnerabilities.");
      script_set_attribute(attribute:"description", value:
    "The version of Oracle HTTP Server installed on the remote host is
    affected by multiple vulnerabilities :
    
      - (CVE-2003-1418)
    
      - A denial of service vulnerability exists in libxml2,
        related to the xmlParserHandlePEReference() function in
        file parser.c, due to loading external parameter
        entities without regard to entity substitution or
        validation being enabled, as in the case of entity
        substitution in the doctype prolog. An unauthenticated,
        remote attacker can exploit this, via specially crafted
        XML content, to exhaust the system CPU, memory, or file
        descriptor resources. (CVE-2014-0191)
    
      - An unspecified vulnerability exists in the Web Listener
        component that allows an unauthenticated, remote
        attacker to impact availability. (CVE-2015-1829)
    
      -  (CVE-2015-2808)
    
      - An unspecified vulnerability exists in the OSSL Module
        that allows an unauthenticated, remote attacker to
        impact confidentiality. (CVE-2015-4812)
    
      - An unspecified vulnerability exists in the Web Listener
        component that allows an authenticated, remote attacker
        to impact confidentiality. (CVE-2015-4914)
    
      - (CVE-2016-2183)");
      # http://www.oracle.com/technetwork/topics/security/cpuoct2015-2367953.html
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?75a4a4fb");
      script_set_attribute(attribute:"solution", value:
    "Apply the appropriate patch according to the October 2015 Oracle Critical Patch Update advisory.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:N/A:N");
      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:N/A:N");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
      script_set_attribute(attribute:"cvss_score_source", value:"CVE-2016-2183");
    
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
      script_cwe_id(200);
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2014/05/05");
      script_set_attribute(attribute:"patch_publication_date", value:"2015/10/20");
      script_set_attribute(attribute:"plugin_publication_date", value:"2015/10/23");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:oracle:fusion_middleware");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:oracle:http_server");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Web Servers");
    
      script_copyright(english:"This script is Copyright (C) 2015-2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
    
      script_dependencies("oracle_http_server_installed.nbin");
      script_require_keys("Oracle/OHS/Installed");
    
      exit(0);
    }
    
    include('oracle_http_server_patch_func.inc');
    
    get_kb_item_or_exit('Oracle/OHS/Installed');
    install_list = get_kb_list_or_exit('Oracle/OHS/*/EffectiveVersion');
    
    install = branch(install_list, key:TRUE, value:TRUE);
    
    patches = make_array();
    patches['10.1.3.5'] = make_array('fix_ver', '10.1.3.5.151020', 'patch', '21845960');
    patches['11.1.1.7'] = make_array('fix_ver', '11.1.1.7.151020', 'patch', '21640624');
    patches['11.1.1.9'] = make_array('fix_ver', '11.1.1.9.151020', 'patch', '21663064');
    patches['12.1.2.0'] = make_array('fix_ver', '12.1.2.0.151120', 'patch', '21768251');
    patches['12.1.3.0'] = make_array('fix_ver', '12.1.3.0.160130', 'patch', '21640673');
    
    oracle_http_server_check_vuln(
      install : install,
      min_patches : patches,
      severity : SECURITY_WARNING
    );
    
  • NASL familyWeb Servers
    NASL idORACLE_HTTP_SERVER_CPU_JUL_2016.NASL
    descriptionThe version of Oracle HTTP Server installed on the remote host is affected by multiple vulnerabilities as noted in the July 2016 CPU advisory.
    last seen2020-03-18
    modified2016-07-25
    plugin id92542
    published2016-07-25
    reporterThis script is Copyright (C) 2016-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/92542
    titleOracle Fusion Middleware Oracle HTTP Server Multiple Vulnerabilities (July 2016 CPU)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include('compat.inc');
    
    if (description)
    {
      script_id(92542);
      script_version("1.14");
      script_set_attribute(attribute:"plugin_modification_date", value:"2020/02/25");
    
      script_cve_id(
        "CVE-2003-1418",
        "CVE-2015-2808",
        "CVE-2016-2183",
        "CVE-2016-3482"
      );
      script_bugtraq_id(73684, 92026, 92630);
    
      script_name(english:"Oracle Fusion Middleware Oracle HTTP Server Multiple Vulnerabilities (July 2016 CPU)");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote web server is affected by multiple
    vulnerabilities.");
      script_set_attribute(attribute:"description", value:
    "The version of Oracle HTTP Server installed on the remote host is
    affected by multiple vulnerabilities as noted in the July 2016
    CPU advisory.");
      # https://www.oracle.com/technetwork/security-advisory/cpujul2016-2881720.html#AppendixFMW
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?d87d8f4a");
      script_set_attribute(attribute:"solution", value:
    "Apply the appropriate patch according to the July 2016 Oracle Critical Patch Update advisory.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:N/A:N");
      script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
      script_set_attribute(attribute:"cvss_score_source", value:"CVE-2016-3482");
    
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
      script_cwe_id(200);
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2016/07/19");
      script_set_attribute(attribute:"patch_publication_date", value:"2016/07/19");
      script_set_attribute(attribute:"plugin_publication_date", value:"2016/07/25");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:oracle:fusion_middleware");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:oracle:http_server");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Web Servers");
    
      script_copyright(english:"This script is Copyright (C) 2016-2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
    
      script_dependencies("oracle_http_server_installed.nbin");
      script_require_keys("Oracle/OHS/Installed");
    
      exit(0);
    }
    
    include('oracle_http_server_patch_func.inc');
    
    get_kb_item_or_exit('Oracle/OHS/Installed');
    install_list = get_kb_list_or_exit('Oracle/OHS/*/EffectiveVersion');
    
    install = branch(install_list, key:TRUE, value:TRUE);
    
    patches = make_array();
    patches['11.1.1.9'] = make_array('fix_ver', '11.1.1.9.160719', 'patch', '23623015');
    patches['12.1.3.0'] = make_array('fix_ver', '12.1.3.0.160707', 'patch', '22557350');
    
    oracle_http_server_check_vuln(
      install : install,
      min_patches : patches,
      severity : SECURITY_WARNING
    );
    
  • NASL familyWeb Servers
    NASL idORACLE_HTTP_SERVER_CPU_JAN_2015.NASL
    descriptionThe version of Oracle HTTP Server installed on the remote host is affected by multiple vulnerabilities in the Web Listener subcomponent : - An integer overflow condition exists in libxml2 within file xpath.c, related to XPath expressions when adding a new namespace note. An unauthenticated, remote attacker can exploit this, via a crafted XML file, to cause a denial of service condition or the execution of arbitary code. (CVE-2011-1944) - An integer overflow condition exists in the HTTP server, specifically in the ap_pregsub() function within file server/util.c, when the mod_setenvif module is enabled. A local attacker can exploit this to gain elevated privileges by using an .htaccess file with a crafted combination of SetEnvIf directives and HTTP request headers. (CVE-2011-3607) - A flaw exists in libxml2, known as the
    last seen2020-03-18
    modified2015-01-27
    plugin id81002
    published2015-01-27
    reporterThis script is Copyright (C) 2015-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/81002
    titleOracle Fusion Middleware Oracle HTTP Server Multiple Vulnerabilities (January 2015 CPU)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include('compat.inc');
    
    if (description)
    {
      script_id(81002);
      script_version("1.25");
      script_set_attribute(attribute:"plugin_modification_date", value:"2020/02/25");
    
      script_cve_id(
        "CVE-2003-1418",
        "CVE-2011-1944",
        "CVE-2011-3607",
        "CVE-2013-0338",
        "CVE-2013-2877",
        "CVE-2013-5704",
        "CVE-2013-6438",
        "CVE-2014-0098",
        "CVE-2014-0191",
        "CVE-2014-0226",
        "CVE-2014-6571",
        "CVE-2015-0372",
        "CVE-2015-0386",
        "CVE-2015-2808",
        "CVE-2016-2183"
      );
      script_bugtraq_id(
        48056,
        50494,
        58180,
        61050,
        66303,
        66550,
        67233,
        68678,
        72143,
        72183,
        72193,
        73684,
        92630
      );
      script_xref(name:"EDB-ID", value:"34133");
    
      script_name(english:"Oracle Fusion Middleware Oracle HTTP Server Multiple Vulnerabilities (January 2015 CPU)");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote web server is affected by multiple vulnerabilities.");
      script_set_attribute(attribute:"description", value:
    "The version of Oracle HTTP Server installed on the remote host is
    affected by multiple vulnerabilities in the Web Listener
    subcomponent :
    
      - An integer overflow condition exists in libxml2 within
        file xpath.c, related to XPath expressions when adding a
        new namespace note. An unauthenticated, remote attacker
        can exploit this, via a crafted XML file, to cause a
        denial of service condition or the execution of arbitary
        code. (CVE-2011-1944)
    
      - An integer overflow condition exists in the HTTP server,
        specifically in the ap_pregsub() function within file
        server/util.c, when the mod_setenvif module is enabled.
        A local attacker can exploit this to gain elevated
        privileges by using an .htaccess file with a crafted
        combination of SetEnvIf directives and HTTP request
        headers. (CVE-2011-3607)
    
      - A flaw exists in libxml2, known as the 'internal entity
        expansion' with linear complexity issue, that allows
        specially crafted XML files to consume excessive CPU and
        memory resources. An unauthenticated, remote attacker
        can exploit this to cause a denial of service condition
        by using a specially crafted XML file containing an
        entity declaration with long replacement text and many
        references to this entity. (CVE-2013-0338)
    
      - An out-of-bounds read error exists in libxml2 within
        file parser.c due to a failure to check for the
        XML_PARSER_EOF state. An unauthenticated, remote
        attacker can exploit this, via a specially crafted
        document that ends abruptly, to cause a denial of
        service condition. (CVE-2013-2877)
    
      - A flaw exists within the mod_headers module in the
        HTTP server which allows bypassing the 'RequestHeader
        unset' directives. An unauthenticated, remote attacker
        can exploit this to inject arbitrary headers. This is
        done by placing a header in the trailer portion of data
        being sent using chunked transfer encoding.
        (CVE-2013-5704)
    
      - A flaw exists in the dav_xml_get_cdata() function in
        file main/util.c within the HTTP server mod_dav module
        due to incorrect stripping of whitespace characters from
        the CDATA sections. An unauthenticated, remote attacker
        via a specially crafted DAV WRITE request, can exploit
        this to cause a denial of service condition.
        (CVE-2013-6438)
    
      - A flaw exists in the log_cookie() function in file
        mod_log_config.c within the HTTP server mod_log_config
        module due to improper handling of specially crafted
        cookies during truncation. An unauthenticated, remote
        attacker can exploit this to cause a denial of service
        condition via a segmentation fault. (CVE-2014-0098)
    
      - A flaw exists in libxml2, specifically in the
        xmlParserHandlePEReference() function in file parser.c,
        due to loading external parameter entities even when
        entity substitution is disabled. An unauthenticated,
        remote attacker can exploit this issue, via a specially
        crafted XML file, to conduct XML External Entity (XXE)
        attacks that exhaust CPU and memory resources, resulting
        in a denial of service condition. (CVE-2014-0191)
    
      - A race condition exists in the HTTP server within the
        mod_status module when using a threaded Multi-Processing
        Module (MPM). If an unauthenticated, remote attacker is
        able to access status pages served by mod_status, the
        attacker can exploit this issue, by sending specially
        crafted requests, to cause the httpd child process to
        crash or possibly execute arbitrary code with the
        privileges of the user running the web server.
        (CVE-2014-0226)
    
      - An unspecified flaw exists in the Web Listener
        subcomponent that allows an unauthenticated, remote
        attacker to impact confidentiality, integrity, and
        availability. (CVE-2014-6571)
    
      - An unspecified flaw exists in the J2EE subcomponent that
        allows an unauthenticated, remote attacker to disclose
        potentially sensitive information. (CVE-2015-0372)
    
      - An unspecified flaw exists in the Web Listener
        subcomponent that allows an unauthenticated, remote
        attacker to cause a denial of service condition.
        (CVE-2015-0386)");
      # https://www.oracle.com/technetwork/topics/security/cpujan2015-1972971.html
      script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?75c6cafb");
      script_set_attribute(attribute:"solution", value:
    "Apply the appropriate patch according to the January 2015 Oracle Critical Patch Update advisory.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/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: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-2013-5704");
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
      script_cwe_id(200);
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2011/03/23");
      script_set_attribute(attribute:"patch_publication_date", value:"2015/01/20");
      script_set_attribute(attribute:"plugin_publication_date", value:"2015/01/27");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:oracle:fusion_middleware");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:oracle:http_server");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Web Servers");
    
      script_copyright(english:"This script is Copyright (C) 2015-2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
    
      script_dependencies("oracle_http_server_installed.nbin");
      script_require_keys("Oracle/OHS/Installed");
    
      exit(0);
    }
    
    include('oracle_http_server_patch_func.inc');
    
    get_kb_item_or_exit('Oracle/OHS/Installed');
    install_list = get_kb_list_or_exit('Oracle/OHS/*/EffectiveVersion');
    
    install = branch(install_list, key:TRUE, value:TRUE);
    
    patches = make_array();
    patches['10.1.3.5'] = make_array('fix_ver', '10.1.3.5.150120', 'patch', '19952538');
    patches['11.1.1.7'] = make_array('fix_ver', '11.1.1.7.150120', 'patch', '19948000');
    patches['12.1.2.0'] = make_array('fix_ver', '12.1.2.0.150120', 'patch', '19948089');
    patches['12.1.3.0'] = make_array('fix_ver', '12.1.3.0.141218', 'patch', '19948154');
    
    oracle_http_server_check_vuln(
      install : install,
      min_patches : patches,
      severity : SECURITY_HOLE
    );
    
  • NASL familySuSE Local Security Checks
    NASL idSUSE_11_APACHE2-150325.NASL
    descriptionThe Apache2 webserver was updated to fix various issues. The following feature was added : - Provide support for the tunneling of web socket connections to a backend websockets server. (FATE#316880) The following security issues have been fixed : - The mod_headers module in the Apache HTTP Server 2.2.22 allowed remote attackers to bypass
    last seen2020-06-01
    modified2020-06-02
    plugin id82657
    published2015-04-09
    reporterThis script is Copyright (C) 2015 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/82657
    titleSuSE 11.3 Security Update : apache2 (SAT Patch Number 10533)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from SuSE 11 update information. The text itself is
    # copyright (C) Novell, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(82657);
      script_version("$Revision: 1.4 $");
      script_cvs_date("$Date: 2015/07/26 04:39:25 $");
    
      script_cve_id("CVE-2003-1418", "CVE-2013-5704", "CVE-2014-3581");
    
      script_name(english:"SuSE 11.3 Security Update : apache2 (SAT Patch Number 10533)");
      script_summary(english:"Checks rpm output for the updated packages");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote SuSE 11 host is missing one or more security updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "The Apache2 webserver was updated to fix various issues.
    
    The following feature was added :
    
      - Provide support for the tunneling of web socket
        connections to a backend websockets server.
        (FATE#316880) The following security issues have been
        fixed :
    
      - The mod_headers module in the Apache HTTP Server 2.2.22
        allowed remote attackers to bypass 'RequestHeader unset'
        directives by placing a header in the trailer portion of
        data sent with chunked transfer coding. The fix also
        adds a 'MergeTrailers' directive to restore legacy
        behavior. (CVE-2013-5704)
    
      - The cache_merge_headers_out function in
        modules/cache/cache_util.c in the mod_cache module in
        the Apache HTTP Server allowed remote attackers to cause
        a denial of service (NULL pointer dereference and
        application crash) via an empty HTTP Content-Type
        header. (CVE-2014-3581)
    
      - Apache HTTP Server allowed remote attackers to obtain
        sensitive information via (1) the ETag header, which
        reveals the inode number, or (2) multipart MIME
        boundary, which reveals child process IDs (PID). We so
        far assumed that this not useful to attackers, the fix
        is basically just reducing potential information leaks.
        (CVE-2003-1418)
    
    The following bugs have been fixed :
    
      - Treat the 'server unavailable' condition as a transient
        error with all LDAP SDKs. (bsc#904427)
    
      - Fixed a segmentation fault at startup if the certs are
        shared across > 1 server_rec. (bsc#907339)"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=713970"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=871310"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=899836"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=904427"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=907339"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.novell.com/show_bug.cgi?id=907477"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"http://support.novell.com/security/cve/CVE-2003-1418.html"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"http://support.novell.com/security/cve/CVE-2013-5704.html"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"http://support.novell.com/security/cve/CVE-2014-3581.html"
      );
      script_set_attribute(attribute:"solution", value:"Apply SAT patch number 10533.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:P/A:N");
      script_cwe_id(200);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:11:apache2");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:11:apache2-doc");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:11:apache2-example-pages");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:11:apache2-prefork");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:11:apache2-utils");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:novell:suse_linux:11:apache2-worker");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:novell:suse_linux:11");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2015/03/25");
      script_set_attribute(attribute:"plugin_publication_date", value:"2015/04/09");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2015 Tenable Network Security, Inc.");
      script_family(english:"SuSE Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/SuSE/release", "Host/SuSE/rpm-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/SuSE/release");
    if (isnull(release) || release !~ "^(SLED|SLES)11") audit(AUDIT_OS_NOT, "SuSE 11");
    if (!get_kb_item("Host/SuSE/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if (cpu !~ "^i[3-6]86$" && "x86_64" >!< cpu && "s390x" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "SuSE 11", cpu);
    
    pl = get_kb_item("Host/SuSE/patchlevel");
    if (isnull(pl) || int(pl) != 3) audit(AUDIT_OS_NOT, "SuSE 11.3");
    
    
    flag = 0;
    if (rpm_check(release:"SLES11", sp:3, reference:"apache2-2.2.12-1.51.52.1")) flag++;
    if (rpm_check(release:"SLES11", sp:3, reference:"apache2-doc-2.2.12-1.51.52.1")) flag++;
    if (rpm_check(release:"SLES11", sp:3, reference:"apache2-example-pages-2.2.12-1.51.52.1")) flag++;
    if (rpm_check(release:"SLES11", sp:3, reference:"apache2-prefork-2.2.12-1.51.52.1")) flag++;
    if (rpm_check(release:"SLES11", sp:3, reference:"apache2-utils-2.2.12-1.51.52.1")) flag++;
    if (rpm_check(release:"SLES11", sp:3, reference:"apache2-worker-2.2.12-1.51.52.1")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:rpm_report_get());
      else security_warning(0);
      exit(0);
    }
    else audit(AUDIT_HOST_NOT, "affected");
    
  • NASL familyWeb Servers
    NASL idAPACHE_ETAG_INFO_DISCLOSURE.NASL
    descriptionThe remote web server is affected by an information disclosure vulnerability due to the ETag header providing sensitive information that could aid an attacker, such as the inode number of requested files.
    last seen2020-04-30
    modified2016-01-22
    plugin id88098
    published2016-01-22
    reporterThis script is Copyright (C) 2016-2020 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/88098
    titleApache Server ETag Header Information Disclosure
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(88098);
      script_version("1.11");
      script_set_attribute(attribute:"plugin_modification_date", value:"2020/04/27");
    
      script_cve_id("CVE-2003-1418");
      script_bugtraq_id(6939);
    
      script_name(english:"Apache Server ETag Header Information Disclosure");
      script_summary(english:"Looks for ETag in HTTP headers.");
    
      script_set_attribute(attribute:"synopsis", value:
    "The remote web server is affected by an information disclosure
    vulnerability.");
      script_set_attribute(attribute:"description", value:
    "The remote web server is affected by an information disclosure
    vulnerability due to the ETag header providing sensitive information
    that could aid an attacker, such as the inode number of requested
    files.");
      script_set_attribute(attribute:"see_also", value:"http://httpd.apache.org/docs/2.2/mod/core.html#FileETag");
      script_set_attribute(attribute:"solution", value:
    "Modify the HTTP ETag header of the web server to not include file
    inodes in the ETag header calculation. Refer to the linked Apache
    documentation for more information.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:N/A:N");
      script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
      script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N");
      script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
      script_set_attribute(attribute:"cvss_score_source", value:"CVE-2003-1418");
    
      script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"false");
      script_cwe_id(200);
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2003/02/25");
      script_set_attribute(attribute:"plugin_publication_date", value:"2016/01/22");
    
      script_set_attribute(attribute:"plugin_type", value:"remote");
      script_set_attribute(attribute:"cpe", value:"cpe:/a:apache:http_server");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_family(english:"Web Servers");
    
      script_copyright(english:"This script is Copyright (C) 2016-2020 and is owned by Tenable, Inc. or an Affiliate thereof.");
    
      script_dependencies("apache_http_version.nasl");
      script_require_keys("installed_sw/Apache");
      script_require_ports("Services/www", 80);
    
      exit(0);
    }
    
    include("audit.inc");
    include("global_settings.inc");
    include("misc_func.inc");
    include("http.inc");
    include("string.inc");
    include("datetime.inc");
    include("math64.inc");
    include("install_func.inc");
    
    get_install_count(app_name:"Apache", exit_if_zero:TRUE);
    port = get_http_port(default:80);
    install = get_single_install(app_name:"Apache", port:port);
    
    vuln = FALSE;
    
    banner = get_http_banner(port: port, exit_on_fail:TRUE);
    
    etag_header = pregmatch(
      pattern : 'ETag: "([0-9a-zA-F-]+)("|:)',
      string  : banner
    );
    
    if (!empty_or_null(etag_header))
    {
      etag = split(etag_header[1], sep:"-", keep:FALSE);
      count = max_index(etag);
    
      # For Apache, the ETag format is INode-Size-MTime
      # This can be modified to display one, two, all, or none of these
      # fields. While the order will remain the same, there is no way
      # to differentiate the INode and MTime fields
    
      if (count == '3')
      {
    
        inode = strtol(etag[0], base:16);
        if (inode < 0) inode = NULL;
        size = strtol(etag[1], base:16);
        if (size < 0) size = NULL;
    
        time = etag[2];
        time_len = strlen(time);
    
        # Apache 1.x stored the time in a 32-bit value
        if (time_len == 8)
        {
          time_dec = hex2dec(xvalue:time);
          if (time_dec <= 0) mtime = NULL;
          else
            mtime = strftime(time_dec);
        }
        else
        {
          # Apache 2.x
          low_bit = '';
          high_bit = '';
    
          # Start backwards and split up into two 32-bit values
          for (i=time_len - 1; i>=0; i--)
          {
            if (strlen(low_bit) < 8)
            {
              low_bit += time[i];
            }
            else
            {
              high_bit += time[i];
            }
          }
    
          # Padding for high bits. We can work with two 32-bit as one 64-bit value
          hbit_len = strlen(high_bit);
          if (hbit_len < 8)
          {
            pad = "00000000";
            for (i=0; i < 8; i++)
            {
              if (hbit_len == i)
                high_bit += pad;
                pad = pad - "0";
            }
          }
    
          # Since we looped over these in reverse order, restore the HEX value
          # to it's original order
          high_bit =string_reverse(high_bit);
          low_bit = string_reverse(low_bit);
    
          # Use 64-bit number.  Convert low and high bits to decimal as they were
          # stored as HEX in a string.
          etag_64 = make_int64(
            high : hex2dec(xvalue:high_bit),
            low  : hex2dec(xvalue:low_bit)
          );
          # Divide by 1000000 to get our 32-bit value which we can
          # then convert to epoch time and display
          etag_div  = div64(etag_64, make_int64(low:0x000F4240));
          if (etag_div[0] > 0)
            mtime = strftime(etag_div[0]);
          else mtime = NULL;
        }
      }
      if (!isnull(inode))
      {
        if (report_verbosity > 0)
        {
          report =
            '\nNessus was able to determine that the Apache Server listening on' +
            '\nport ' +port+ ' leaks the servers inode numbers in the ETag HTTP' +
            '\nHeader field : \n' +
            '\n  Source                 : ' + etag_header[0] +
            '\n  Inode number           : ' + inode;
    
          if (!isnull(size))
          {
            report +=
              '\n  File size              : ' + size + " bytes";
          }
          if (!isnull(mtime))
          {
            report +=
              '\n  File modification time : ' + mtime + '\n';
          }
          security_warning(port:port, extra:report);
        }
        else security_warning(port);
        exit(0);
      }
      else
        exit(0, "Nessus was unable to identify an inode number in the ETag HTTP Header from the Apache server on port ", port);
    }
    else
      exit(0, "The banner from the Apache server on port " + port + " does not include the 'ETag' HTTP Header field.");