Vulnerabilities > CVE-2006-5428 - Unspecified vulnerability in Cerberus Helpdesk 3.2.1

047910
CVSS 5.0 - MEDIUM
Attack vector
NETWORK
Attack complexity
LOW
Privileges required
NONE
Confidentiality impact
PARTIAL
Integrity impact
NONE
Availability impact
NONE
network
low complexity
cerberus
nessus
exploit available

Summary

rpc.php in Cerberus Helpdesk 3.2.1 does not verify a client's privileges for a display_get_requesters operation, which allows remote attackers to bypass the GUI login and obtain sensitive information (ticket data) via a direct request.

Vulnerable Configurations

Part Description Count
Application
Cerberus
1

Exploit-Db

descriptionCerberus Helpdesk 3.2.1 Rpc.PHP Unauthorized Access Vulnerability. CVE-2006-5428. Webapps exploit for php platform
idEDB-ID:28826
last seen2016-02-03
modified2006-10-18
published2006-10-18
reporterjonepet
sourcehttps://www.exploit-db.com/download/28826/
titleCerberus Helpdesk 3.2.1 Rpc.PHP Unauthorized Access Vulnerability

Nessus

NASL familyCGI abuses
NASL idCERBERUS_GUI_RPC_INFO_DISCLOSURE.NASL
descriptionThe remote host is running Cerberus Helpdesk, a web-based helpdesk suite written in PHP. The installed version of Cerberus Helpdesk on the remote host allows an unauthenticated attacker to retrieve information about ticket requesters through the
last seen2020-06-01
modified2020-06-02
plugin id22876
published2006-10-18
reporterThis script is Copyright (C) 2006-2018 Tenable Network Security, Inc.
sourcehttps://www.tenable.com/plugins/nessus/22876
titleCerberus Helpdesk rpc.php Arbitrary Ticket Information Disclosure
code
#
# (C) Tenable Network Security, Inc.
#

include("compat.inc");

if (description)
{
  script_id(22876);
  script_version("1.18");

  script_cve_id("CVE-2006-5428");
  script_bugtraq_id(20598);

  script_name(english:"Cerberus Helpdesk rpc.php Arbitrary Ticket Information Disclosure");
  script_summary(english:"Gets requestors for a Cerberus ticket");

 script_set_attribute(attribute:"synopsis", value:
"The remote web server contains a PHP script that is affected by an
information disclosure issue." );
 script_set_attribute(attribute:"description", value:
"The remote host is running Cerberus Helpdesk, a web-based helpdesk
suite written in PHP. 

The installed version of Cerberus Helpdesk on the remote host allows
an unauthenticated attacker to retrieve information about ticket
requesters through the 'rpc.php' script." );
 script_set_attribute(attribute:"solution", value:
"Patch the affected file or update to the latest version of Cerberus
Helpdesk." );
 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:F/RL:W/RC:C");
 script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
 script_set_attribute(attribute:"exploit_available", value:"true");
 script_set_attribute(attribute:"plugin_publication_date", value: "2006/10/18");
 script_set_attribute(attribute:"vuln_publication_date", value: "2006/10/15");
 script_cvs_date("Date: 2018/06/13 18:56:26");
script_set_attribute(attribute:"plugin_type", value:"remote");
script_end_attributes();


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

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

  script_dependencies("http_version.nasl");
  script_exclude_keys("Settings/disable_cgi_scanning");
  script_require_ports("Services/www", 80);
  script_require_keys("www/PHP");
  exit(0);
}

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


port = get_http_port(default:80, embedded: 0);
if (!can_host_php(port:port)) exit(0);

# Loop through various directories.
if (thorough_tests) dirs = list_uniq(make_list("/cerberus", "/cerberus-gui", "/helpdesk", "/tickets", cgi_dirs()));
else dirs = make_list(cgi_dirs());

foreach dir (dirs)
{
  ticket = 1;
  r = http_send_recv3(method:"GET", port: port,
    item:string( dir, "/rpc.php?",
      "cmd=display_get_requesters&",
      "id=", ticket ));
  if (isnull(r)) exit(0);
  res = r[2];

  # There's a problem if we get a response (eg, see a link to add a requester).
  #
  # nb: this works even if the ticket number is invalid.
  if ('input type="text" name="requester_add"' >< res)
  {
    security_warning(port);
    exit(0);
  }
}