Vulnerabilities > CVE-2004-1061 - Cross-Site Scripting vulnerability in Bugzilla Internal Error

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

Summary

Cross-site scripting (XSS) vulnerability in Bugzilla before 2.18, including 2.16.x before 2.16.11, allows remote attackers to inject arbitrary HTML and web script via forced error messages, as demonstrated using the action parameter.

Nessus

  • NASL familyCGI abuses : XSS
    NASL idBUGZILLA_INTERNAL_ERROR_XSS.NASL
    descriptionThe remote host runs Bugzilla, a web-based bug tracking system. The remote Bugzilla installation, according to its version number, is vulnerable to a cross-site scripting attack when rendering internal errors containing user-supplied input.
    last seen2020-06-01
    modified2020-06-02
    plugin id16206
    published2005-01-19
    reporterThis script is Copyright (C) 2005-2018 Tenable Network Security, Inc.
    sourcehttps://www.tenable.com/plugins/nessus/16206
    titleBugzilla Internal Error Response XSS
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
     script_id(16206);
     script_version("1.21");
     script_cvs_date("Date: 2018/06/27 18:42:24");
    
     script_cve_id("CVE-2004-1061");
     script_bugtraq_id(12154);
    
     script_name(english:"Bugzilla Internal Error Response XSS");
     script_summary(english:"Checks Bugzilla version number");
    
     script_set_attribute(attribute:"synopsis", value:
    "The remote web server contains a CGI that is vulnerable to a cross-
    site scripting attack.");
     script_set_attribute(attribute:"description", value:
    "The remote host runs Bugzilla, a web-based bug tracking system.
    
    The remote Bugzilla installation, according to its version number, is
    vulnerable to a cross-site scripting attack when rendering internal
    errors containing user-supplied input.");
     script_set_attribute(attribute:"solution", value:"Upgrade to Bugzilla 2.18.0 or later.");
     script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:N/I:P/A:N");
     script_set_cvss_temporal_vector("CVSS2#E:H/RL:OF/RC:C");
     script_set_attribute(attribute:"exploitability_ease", value:"No exploit is required");
     script_set_attribute(attribute:"exploit_available", value:"false");
     script_cwe_id(20, 74, 79, 442, 629, 711, 712, 722, 725, 750, 751, 800, 801, 809, 811, 864, 900, 928, 931, 990);
    
     script_set_attribute(attribute:"vuln_publication_date", value:"2004/12/01");
     script_set_attribute(attribute:"plugin_publication_date", value:"2005/01/19");
    
     script_set_attribute(attribute:"potential_vulnerability", value:"true");
     script_set_attribute(attribute:"plugin_type", value:"remote");
     script_set_attribute(attribute:"cpe", value:"cpe:/a:mozilla:bugzilla");
     script_end_attributes();
    
     script_category(ACT_GATHER_INFO);
    
     script_copyright(english:"This script is Copyright (C) 2005-2018 Tenable Network Security, Inc.");
     script_family(english:"CGI abuses : XSS");
    
     script_dependencies("bugzilla_detect.nasl");
     script_exclude_keys("Settings/disable_cgi_scanning");
     script_require_ports("Services/www", 80);
     script_require_keys("installed_sw/Bugzilla", "Settings/ParanoidReport");
    
     exit(0);
    }
    
    #
    # The script code starts here
    #
    
    include("audit.inc");
    include("global_settings.inc");
    include("misc_func.inc");
    include("http.inc");
    include("install_func.inc");
    
    if (report_paranoia < 2) audit(AUDIT_PARANOID);
    
    app = 'Bugzilla';
    get_install_count(app_name:app, exit_if_zero:TRUE);
    
    port = get_http_port(default:80);
    
    # Check the installed version.
    install = get_single_install(
      app_name : app,
      port     : port,
      exit_if_unknown_ver : TRUE
    );
    
    version = install['version'];
    dir = install['path'];
    install_loc = build_url(port:port, qs:dir+'/query.cgi');
    
    if(ereg(pattern:"^(1\..*)|(2\.(0\..*|1[0-7]\..*))", string:version))
    {
      set_kb_item(name:'www/'+port+'/XSS', value:TRUE);
    
      if (report_verbosity > 0)
      {
        report =
          '\n  Version : ' + version +
          '\n  URL     : ' + install_loc;
        security_warning(port:port, extra:report);
      }
      else security_warning(port);
      exit(0);
    }
    else audit(AUDIT_WEB_APP_NOT_AFFECTED, app, install_loc, version);
    
  • NASL familyFreeBSD Local Security Checks
    NASL idFREEBSD_PKG_97C3A4526E3611D98324000A95BC6FAE.NASL
    descriptionA Bugzilla advisory states : This advisory covers a single cross-site scripting issue that has recently been discovered and fixed in the Bugzilla code: If a malicious user links to a Bugzilla site using a specially crafted URL, a script in the error page generated by Bugzilla will display the URL unaltered in the page, allowing scripts embedded in the URL to execute.
    last seen2020-06-01
    modified2020-06-02
    plugin id19041
    published2005-07-13
    reporterThis script is Copyright (C) 2005-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/19041
    titleFreeBSD : bugzilla -- XSS vulnerability (97c3a452-6e36-11d9-8324-000a95bc6fae)
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from the FreeBSD VuXML database :
    #
    # Copyright 2003-2018 Jacques Vidrine and contributors
    #
    # Redistribution and use in source (VuXML) and 'compiled' forms (SGML,
    # HTML, PDF, PostScript, RTF and so forth) with or without modification,
    # are permitted provided that the following conditions are met:
    # 1. Redistributions of source code (VuXML) must retain the above
    #    copyright notice, this list of conditions and the following
    #    disclaimer as the first lines of this file unmodified.
    # 2. Redistributions in compiled form (transformed to other DTDs,
    #    published online in any format, converted to PDF, PostScript,
    #    RTF and other formats) must reproduce the above copyright
    #    notice, this list of conditions and the following disclaimer
    #    in the documentation and/or other materials provided with the
    #    distribution.
    # 
    # THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS"
    # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
    # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
    # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
    # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
    # OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
    # OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
    # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
    # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
    # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DOCUMENTATION,
    # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(19041);
      script_version("1.19");
      script_cvs_date("Date: 2019/08/02 13:32:37");
    
      script_cve_id("CVE-2004-1061");
    
      script_name(english:"FreeBSD : bugzilla -- XSS vulnerability (97c3a452-6e36-11d9-8324-000a95bc6fae)");
      script_summary(english:"Checks for updated packages in pkg_info output");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:
    "The remote FreeBSD host is missing one or more security-related
    updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "A Bugzilla advisory states :
    
    This advisory covers a single cross-site scripting issue that has
    recently been discovered and fixed in the Bugzilla code: If a
    malicious user links to a Bugzilla site using a specially crafted URL,
    a script in the error page generated by Bugzilla will display the URL
    unaltered in the page, allowing scripts embedded in the URL to
    execute."
      );
      # http://www.bugzilla.org/security/2.16.7-nr/
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.bugzilla.org/security/2.16.7-nr/"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.mozilla.org/show_bug.cgi?id=272620"
      );
      # https://vuxml.freebsd.org/freebsd/97c3a452-6e36-11d9-8324-000a95bc6fae.html
      script_set_attribute(
        attribute:"see_also",
        value:"http://www.nessus.org/u?87be6d3f"
      );
      script_set_attribute(attribute:"solution", value:"Update the affected packages.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:N/I:P/A:N");
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:freebsd:freebsd:bugzilla");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:freebsd:freebsd:ja-bugzilla");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:freebsd:freebsd");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2004/12/01");
      script_set_attribute(attribute:"patch_publication_date", value:"2005/01/24");
      script_set_attribute(attribute:"plugin_publication_date", value:"2005/07/13");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2005-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"FreeBSD Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/FreeBSD/release", "Host/FreeBSD/pkg_info");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("freebsd_package.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    if (!get_kb_item("Host/FreeBSD/release")) audit(AUDIT_OS_NOT, "FreeBSD");
    if (!get_kb_item("Host/FreeBSD/pkg_info")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    
    flag = 0;
    
    if (pkg_test(save_report:TRUE, pkg:"bugzilla<2.16.8")) flag++;
    if (pkg_test(save_report:TRUE, pkg:"bugzilla>=2.17.*<2.18")) flag++;
    if (pkg_test(save_report:TRUE, pkg:"ja-bugzilla<2.16.8")) flag++;
    if (pkg_test(save_report:TRUE, pkg:"ja-bugzilla>=2.17.*<2.18")) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:pkg_report_get());
      else security_warning(0);
      exit(0);
    }
    else audit(AUDIT_HOST_NOT, "affected");