SurgeMail <= 3.0c2 Multiple XSS

2005-05-20T00:00:00
ID SURGEMAIL_30C2.NASL
Type nessus
Reporter Tenable
Modified 2018-07-31T00:00:00

Description

According to its banner, the remote host is running SurgeMail version 3.0c2 or earlier. These versions reportedly are prone to multiple cross-site scripting issues, which an attacker could exploit to inject arbitrary HTML and script code into a user's browser to be processed within the context of the affected website.

                                        
                                            #
# (C) Tenable Network Security, Inc.
#

include("compat.inc");

if (description) {
  script_id(18354);
  script_version("1.16");

  script_cve_id("CVE-2005-1714");
  script_bugtraq_id(13689);

  script_name(english:"SurgeMail <= 3.0c2 Multiple XSS");
 
 script_set_attribute(attribute:"synopsis", value:
"The remote mail server is vulnerable to multiple cross-site scripting
attacks." );
 script_set_attribute(attribute:"description", value:
"According to its banner, the remote host is running SurgeMail version
3.0c2 or earlier.  These versions reportedly are prone to multiple
cross-site scripting issues, which an attacker could exploit to inject
arbitrary HTML and script code into a user's browser to be processed
within the context of the affected website." );
 script_set_attribute(attribute:"see_also", value:"http://www.netwinsite.com/surgemail/help/updates.htm" );
 script_set_attribute(attribute:"solution", value:
"Upgrade to SurgeMail 3.2e1 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:"plugin_publication_date", value: "2005/05/20");
 script_set_attribute(attribute:"vuln_publication_date", value: "2005/05/19");
 script_cvs_date("Date: 2018/07/31 17:27:53");
script_set_attribute(attribute:"plugin_type", value:"remote");
script_end_attributes();

 
  summary["english"] = "Checks for multiple vulnerabilities in SurgeMail <= 3.0c2";
  script_summary(english:summary["english"]);
 
  script_category(ACT_GATHER_INFO);
  script_family(english:"CGI abuses : XSS");

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

  script_dependencies("http_version.nasl", "smtpserver_detect.nasl");
  script_require_ports("Services/smtp", 25, "Services/www", 7080);

  exit(0);
}

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


# Make sure the banner indicates it's from SurgeMail.
port = get_http_port(default:7080, embedded: 1);
banner = get_http_banner(port:port);
if (!banner) exit(1, "No web banner on port "+port);
if ("DManager" >!< banner) exit(0, "The web server on port "+port+" is not DManager");


# Unfortunately, the web server doesn't include its version in the 
# Server response header so let's pull it from the SMTP server.
smtpport = get_kb_item("Services/smtp");
if (!smtpport) smtpport = 25;
if (! get_port_state(smtpport)) exit(0, "Port "+smtpport+" is closed");
banner = get_smtp_banner(port:smtpport);
if (banner) {
  ver = ereg_replace(
    string:banner, 
    pattern:"^[0-9][0-9][0-9] .* SurgeSMTP \(Version ([^)]+).+",
    replace:"\1"
  );

  # There's a problem if it's 3.0c2 or earlier.
  if (ver && ver =~ "^([0-2]\.|3\.0([ab]|c([0-2]|$)))") 
  {
    security_warning(port);
    set_kb_item(name: 'www/'+port+'/XSS', value: TRUE);
  }
}