Lucene search

K
nessusThis script is Copyright (C) 2005-2022 Tenable Network Security, Inc.FUSEBOX_FUSEACTION_XSS.NASL
HistoryAug 04, 2005 - 12:00 a.m.

Fusebox index.cfm fuseaction Parameter XSS

2005-08-0400:00:00
This script is Copyright (C) 2005-2022 Tenable Network Security, Inc.
www.tenable.com
65

4.3 Medium

CVSS2

Attack Vector

NETWORK

Attack Complexity

MEDIUM

Authentication

NONE

Confidentiality Impact

NONE

Integrity Impact

PARTIAL

Availability Impact

NONE

AV:N/AC:M/Au:N/C:N/I:P/A:N

0.003 Low

EPSS

Percentile

67.8%

The remote host is running Fusebox, a framework for building web-based applications in Cold Fusion and PHP.

The installed web application appears to have been created using Fusebox in such a way that it fails to sanitize user-supplied input to the ‘fuseaction’ parameter before using it in dynamically-generated webpages.

Note that this flaw may not be specific to the Fusebox framework, per se, but instead be an implementation issue since Fusebox itself does not generate any HTML, but lets the developer control all output.

#%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#

include('deprecated_nasl_level.inc');
include('compat.inc');

if (description)
{
  script_id(19383);
  script_version("1.29");
  script_set_attribute(attribute:"plugin_modification_date", value:"2022/04/11");

  script_cve_id("CVE-2005-2480");
  script_bugtraq_id(14460);

  script_name(english:"Fusebox index.cfm fuseaction Parameter XSS");

  script_set_attribute(attribute:"synopsis", value:
"The remote web server contains an application that is vulnerable to a
cross-site scripting attack.");
  script_set_attribute(attribute:"description", value:
"The remote host is running Fusebox, a framework for building web-based
applications in Cold Fusion and PHP. 

The installed web application appears to have been created using
Fusebox in such a way that it fails to sanitize user-supplied input to
the 'fuseaction' parameter before using it in dynamically-generated
webpages. 

Note that this flaw may not be specific to the Fusebox framework, per
se, but instead be an implementation issue since Fusebox itself does
not generate any HTML, but lets the developer control all output.");
  script_set_attribute(attribute:"see_also", value:"https://seclists.org/bugtraq/2005/Aug/42");
  script_set_attribute(attribute:"see_also", value:"https://seclists.org/bugtraq/2005/Aug/133");
  script_set_attribute(attribute:"solution", value:
"Unknown at this time.");
  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:"2005/08/03");
  script_set_attribute(attribute:"plugin_publication_date", value:"2005/08/04");

  script_set_attribute(attribute:"plugin_type", value:"remote");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:fusebox:fusebox");
  script_set_attribute(attribute:"thorough_tests", value:"true");
  script_end_attributes();

  script_category(ACT_ATTACK);
  script_family(english:"CGI abuses : XSS");

  script_copyright(english:"This script is Copyright (C) 2005-2022 Tenable Network Security, Inc.");

  script_dependencies("http_version.nasl", "cross_site_scripting.nasl");
  script_exclude_keys("Settings/disable_cgi_scanning");
  script_require_ports("Services/www", 80);

  exit(0);
}


include("global_settings.inc");
include("misc_func.inc");
include("http.inc");
include("url_func.inc");


port = get_http_port(default:80, no_xss: 1);


# A simple alert.
xss = "<script>alert('" + SCRIPT_NAME + "');</script>";

# Loop through CGI directories.
foreach dir (cgi_dirs()) {
  # Request the initial page.
  res = http_get_cache(item:string(dir, "/"), port:port, exit_on_fail: 1);

  # Find an existing request handler.
  pat = 'a href=".+(\\?fuseaction=|/fuseaction/)([^"]+)';
  matches = egrep(string:res, pattern:pat);
  if (matches) {
    foreach match (split(matches)) {
      match = chomp(match);
      handler = eregmatch(string:match, pattern:pat);
      if (!isnull(handler)) {
        handler = handler[2];
        break;
      }
    }
  }

  # Try to exploit the flaw.
  if (handler) {
    w = http_send_recv3(method:"GET",
      item:string(
        dir, "/?",
        "fuseaction=", handler, urlencode(str:string('">', xss))
      ), 
      port:port
    );
    if (isnull(w)) exit(1, "The web server did not answer");
    res = w[2];

    # There's a problem if we see our XSS.
    if (xss >< res) {
      security_warning(port);
      set_kb_item(name: 'www/'+port+'/XSS', value: TRUE);
      exit(0);
    }
  }
}
VendorProductVersionCPE
fuseboxfuseboxcpe:/a:fusebox:fusebox

4.3 Medium

CVSS2

Attack Vector

NETWORK

Attack Complexity

MEDIUM

Authentication

NONE

Confidentiality Impact

NONE

Integrity Impact

PARTIAL

Availability Impact

NONE

AV:N/AC:M/Au:N/C:N/I:P/A:N

0.003 Low

EPSS

Percentile

67.8%

Related for FUSEBOX_FUSEACTION_XSS.NASL