Lucene search

K
openvasThis script is Copyright (C) 2002 Matt MooreOPENVAS:10852
HistoryNov 03, 2005 - 12:00 a.m.

Oracle 9iAS Jsp Source File Reading

2005-11-0300:00:00
This script is Copyright (C) 2002 Matt Moore
plugins.openvas.org
11

0.781 High

EPSS

Percentile

98.3%

In a default installation of Oracle 9iAS it is possible to read the source of
JSP files. When a JSP is requested it is compiled ‘on the fly’ and the
resulting HTML page is returned to the user. Oracle 9iAS uses a folder to hold
the intermediate files during compilation. These files are created in the same
folder in which the .JSP page resides. Hence, it is possible to access the
.java and compiled .class files for a given JSP page.

# OpenVAS Vulnerability Test
# $Id: oracle9i_jsp_source.nasl 8023 2017-12-07 08:36:26Z teissa $
# Description: Oracle 9iAS Jsp Source File Reading
#
# Authors:
# Matt Moore <[email protected]>
# Script audit and contributions from Carmichael Security <http://www.carmichaelsecurity.com>
# Erik Anderson <[email protected]>
# Added BugtraqID and CAN
#
# Copyright:
# Copyright (C) 2002 Matt Moore
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2,
# 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.
#

tag_summary = "In a default installation of Oracle 9iAS it is possible to read the source of 
JSP files. When a JSP is requested it is compiled 'on the fly' and the 
resulting HTML page is returned to the user. Oracle 9iAS uses a folder to hold 
the intermediate files during compilation. These files are created in the same 
folder in which the .JSP page resides. Hence, it is possible to access the 
.java and compiled .class files for a given JSP page.";

tag_solution = "Edit httpd.conf to disallow access to the _pages folder.";

if(description)
{
 script_id(10852);
 script_version("$Revision: 8023 $");
 script_tag(name:"last_modification", value:"$Date: 2017-12-07 09:36:26 +0100 (Thu, 07 Dec 2017) $");
 script_tag(name:"creation_date", value:"2005-11-03 14:08:04 +0100 (Thu, 03 Nov 2005)");
 script_bugtraq_id(4034);
 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_cve_id("CVE-2002-0562");
 name = "Oracle 9iAS Jsp Source File Reading";
 script_name(name);
 
 script_xref(name : "URL" , value : "http://wwww.nextgenss.com/advisories/orajsa.txt");
 script_xref(name : "URL" , value : "http://www.oracle.com");

 
 
 script_category(ACT_GATHER_INFO);
  script_tag(name:"qod_type", value:"remote_vul");
 
 script_copyright("This script is Copyright (C) 2002 Matt Moore");
 family = "Web application abuses";
 script_family(family);
 script_dependencies("find_service.nasl", "http_version.nasl");
 script_require_ports("Services/www", 80);
 script_require_keys("www/OracleApache"); 
 script_tag(name : "solution" , value : tag_solution);
 script_tag(name : "summary" , value : tag_summary);
 exit(0);
}

# Check starts here

include("http_func.inc");

port = get_http_port(default:80);

if(get_port_state(port))
{
# This plugin uses a demo jsp to test for this vulnerability. It would be 
# better to use the output of webmirror.nasl to find valid .jsp pages
# which could then be used in the test. In situations where the demo pages
# have been removed this plugin will false negative.
 
 req = http_get(item:"/demo/ojspext/events/index.jsp", port:port);
 soc = http_open_socket(port);
 if(soc)
 {
 send(socket:soc, data:req);
 r = http_recv(socket:soc);
 http_close_socket(soc);
 if("This page has been accessed" >< r)	
	req = http_get(item:"/demo/ojspext/events/_pages/_demo/_ojspext/_events/_index.java", port:port);
	soc = http_open_socket(port);
	if(soc)
	{
	send(socket:soc, data:req);
	r = http_recv(socket:soc);
	http_close_socket(soc);
	
	if("import oracle.jsp.runtime.*" >< r)security_message(port);
  }
 }
}

0.781 High

EPSS

Percentile

98.3%