Lucene search
+L

ManageEngine EventLog Analyzer Default Credentials

🗓️ 02 Sep 2014 00:00:00Reported by TenableType 
nessus
 nessus
🔗 www.tenable.com👁 32 Views

ManageEngine EventLog Analyzer Default Credentials vulnerabilit

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

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

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

  script_name(english:"ManageEngine EventLog Analyzer Default Credentials");

  script_set_attribute(attribute:"synopsis", value:
"The application on the remote web server uses a default set of known
credentials.");
  script_set_attribute(attribute:"description", value:
"The remote ManageEngine EventLog Analyzer web administration interface
uses a known set of default credentials.");
  script_set_attribute(attribute:"solution", value:
"Change the default 'admin' login credentials.");
  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:H/RL:ND/RC:ND");

  script_set_attribute(attribute:"plugin_publication_date", value:"2014/09/02");

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

  script_category(ACT_GATHER_INFO);
  script_family(english:"CGI abuses");

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

  script_dependencies("manageengine_eventlog_analyzer_detect.nbin");
  script_require_keys("installed_sw/ManageEngine EventLog Analyzer");
  script_exclude_keys("global_settings/supplied_logins_only");
  script_require_ports("Services/www", 8400);

  exit(0);
}

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

function check_login(user,pass,port)
{
  local_var res,post;
  clear_cookiejar();

  # Get a SID first, newer versions of tomcat don't
  # set JSESSIONID on j_security_check, so you have
  # to try to get a protected resource first, the
  # SID is resource specific
  res = http_send_recv3(
    method       : "GET",
    port         : port,
    item         : "/event/aboutus.do",
    exit_on_fail : TRUE
  );

  if (empty_or_null(res)) return FALSE;

  post = 'j_username='+user+'&'+
         'j_password='+pass+'&'+
         'domains=Local Authentication&' +
         'loginButton=Login&' +
         'optionValue=hide&'+
         'forChecking=null';

  res = http_send_recv3(
    port         : port,
    method       : 'POST',
    item         : "/event/j_security_check",
    data         : post,
    content_type : "application/x-www-form-urlencoded",
    exit_on_fail : TRUE
  );

  # Login failed
  if (empty_or_null(res) ||  "302 Moved Temporarily" >!< res[0] || "isLoginPage: true" >< res[1]) return FALSE;

  # We're authenticated now, get about page
  res = http_send_recv3(
    method       : "GET",
    port         : port,
    item         : "/event/aboutus.do",
    exit_on_fail : TRUE
  );

  if (empty_or_null(res) || "403" >< res[0]) return FALSE;
  else if (!empty_or_null(eregmatch(pattern:"Build Version&nbsp",string:res[2]))) return TRUE;
  return FALSE;
}

app = "ManageEngine EventLog Analyzer";
get_install_count(app_name:app, exit_if_zero:TRUE);
port     = get_http_port(default:8400);
install  = get_single_install(app_name:app,port:port);


if (supplied_logins_only) audit(AUDIT_SUPPLIED_LOGINS_ONLY);

url      = build_url(port:port, qs:install["path"]);
creds    = make_list("admin", "guest");
logincgi = "/event/j_security_check";

# Check each potential credential
report = "";
foreach cred (creds)
{
  if (check_login(user:cred,pass:cred,port:port))
  {
    report += '\n  Username : ' + cred + 
              '\n  Password : ' + cred +
              '\n';
  }
}

if (report)
{
  if (report_verbosity > 0)
  {
    header  = 'Nessus was able to gain access using the following URL';
    trailer = 'and the following set of credentials :\n' + report;
    report  = get_vuln_report(
      items   : logincgi,
      port    : port,
      header  : header,
      trailer : trailer
    );
    security_hole(port:port, extra:report);
  }
  else security_hole(port);
}
else audit(AUDIT_WEB_APP_NOT_AFFECTED, app, url);

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation