Lucene search

K
openvasCopyright (C) 2017 Greenbone Networks GmbHOPENVAS:1361412562310811868
HistoryOct 16, 2017 - 12:00 a.m.

HPE Universal CMDB 'HTTP TRACE' Information Disclosure Vulnerability

2017-10-1600:00:00
Copyright (C) 2017 Greenbone Networks GmbH
plugins.openvas.org
12

0.944 High

EPSS

Percentile

99.0%

The host is installed with HP Universal
CMDB and is prone to an information disclosure vulnerability.

###############################################################################
# OpenVAS Vulnerability Test
# $Id: gb_hpe_universal_cmdb_http_trace_info_disc_vuln.nasl 7497 2017-10-19 07:06:06Z santu $
#
# HPE Universal CMDB 'HTTP TRACE' Information Disclosure Vulnerability
#
# Authors:
# Rinu Kuriakose <[email protected]>
#
# Copyright:
# Copyright (C) 2017 Greenbone Networks GmbH, http://www.greenbone.net
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2
# (or any later version), as published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
###############################################################################

CPE = "cpe:/a:hp:universal_cmbd_foundation";

if(description)
{
  script_oid("1.3.6.1.4.1.25623.1.0.811868");
  script_version("$Revision: 7497 $");
  script_cve_id("CVE-2014-7883");
  script_bugtraq_id(72432);
  script_tag(name:"cvss_base", value:"5.0");
  script_tag(name:"cvss_base_vector", value:"AV:N/AC:L/Au:N/C:P/I:N/A:N");
  script_tag(name:"last_modification", value:"$Date: 2017-10-19 09:06:06 +0200 (Thu, 19 Oct 2017) $");
  script_tag(name:"creation_date", value:"2017-10-16 13:04:54 +0530 (Mon, 16 Oct 2017)");
  script_tag(name:"qod_type", value:"remote_app");
  script_name("HPE Universal CMDB 'HTTP TRACE' Information Disclosure Vulnerability");

  script_tag(name:"summary" , value:"The host is installed with HP Universal 
  CMDB and is prone to an information disclosure vulnerability.");

  script_tag(name:"vuldetect", value:"Send a 'HTTP TRACE' request and checks the 
  response.");

  script_tag(name:"insight" , value:"The flaw is due to enabling the HTTP TRACE 
  method.");

  script_tag(name:"impact", value:"Successful exploitation will allow remote 
  attackers to send a specially crafted HTTP TRACE request to obtain potentially 
  sensitive information.

  Impact Level: Application");

  script_tag(name:"affected", value:"HPE Universal CMDB Probe 9.05, 10.01, and 
  10.11");

  script_tag(name:"solution", value:"The vendor has described a configuration 
  recommendation to fix the vulnerability as given in link
  http://www.kb.cert.org/vuls/id/867593");

  script_tag(name:"solution_type", value:"Mitigation");

  script_xref(name : "URL" , value : "http://www.kb.cert.org/vuls/id/867593");
  script_xref(name : "URL" , value : "https://securitytracker.com/id/1031688");

  script_category(ACT_ATTACK);
  script_copyright("Copyright (C) 2017 Greenbone Networks GmbH");
  script_family("Web application abuses");
  script_dependencies("gb_hpe_universal_cmdb_detect.nasl");
  script_mandatory_keys("HP/UCMDB/Installed");
  script_require_ports("Services/www", 8080);
  exit(0);
}


##
### Code Starts Here
##

include("host_details.inc");
include("http_func.inc");
include("http_keepalive.inc");


## Variable Initialization
ucmdbPort = "";
req = "";
res = "";

## Get HTTP Port
if(!ucmdbPort = get_app_port(cpe:CPE)){
  exit(0);
}

## Get host
host = http_host_name(port:ucmdbPort);
if(!host){
  exit(0);
}

## url
url = "/status/";

## Send request and receive response
req = string("TRACE ", url, " HTTP/1.1\r\n",
             "Host: ", host, "\r\n\r\n");

res = http_keepalive_send_recv(port:ucmdbPort, data:req);

## Confirm exploit
## Checking http trace request is successful or not
## The message body contains the request message as received by the server.
## Content-Type is 'message/http' as expected for trace request
if (res =~ "HTTP/1.. 200 OK" && egrep(pattern:"Content-Type: message/http", string:res) &&
    "TRACE /status/ HTTP/1.1" >< res)
{
  report = report_vuln_url(port: ucmdbPort, url: url);
  security_message(port: ucmdbPort, data: report);
  exit(0);
}

exit(0);