This site is the archived OWASP Foundation Wiki and is no longer accepting Account Requests.
To view the new OWASP Foundation website, please visit https://owasp.org

Difference between revisions of "Automated Audit using WAPITI"

From OWASP
Jump to: navigation, search
m (Remove warning about source code update)
Line 1: Line 1:
Last revision (mm/dd/yy): '''02/19/2012'''
+
Last revision (mm/dd/yy): '''01/13/2015'''
<pre style="color:#088A08">This type of article aims to provide to development team a easy/quick way  
+
<pre style="color:#088A08">This type of article aims to provide to development teams an easy/quick way  
 
to perform automated audit tests against their web application projects over implementation phase.</pre>
 
to perform automated audit tests against their web application projects over implementation phase.</pre>
  
 
== Description ==
 
== Description ==
  
This page have to objective to show a WAPITI sample command line to automate audit of a web application.  
+
WAPITI is a simple command line to tool to automate the audit of a web application. It's free and open source and has had some recent edits and updates ([http://wapiti.sourceforge.net/ WAPITI homepage]). The application is available for contribution at ([http://sourceforge.net/projects/wapiti/ WAPITI Repository]).  
  
WAPITI is a free and open source tools to audit the security of your web applications ([http://www.ict-romulus.eu/web/wapiti/ WAPITI homepage]).
+
Please be aware this command line does not replace a manual audit but can be useful to perform a first validation or exploration of legacy projects.
 
 
''This command line do not replace a manual audit but can be useful to perform a first validation''.
 
  
 
== Command line ==
 
== Command line ==
  
<pre>python wapiti.py http://mysite.com -n 10 -b folder -u -v 1 -f html -o /tmp/scan_report</pre>
+
<pre>python wapiti http://mysite.com -n 10 -b folder -u -v 1 -f html -o /tmp/scan_report</pre>
  
 
'''Options used:'''
 
'''Options used:'''
 
* -n: Define a limit of urls to read with the same pattern (prevent endless loops), here limit to 10.
 
* -n: Define a limit of urls to read with the same pattern (prevent endless loops), here limit to 10.
* -b: Set the scope of the scan, here we analyse all the links to the pages which are in the same domain as the URL passed.
+
* -b: Set the scope of the scan, here we analyze all the links to the pages which are in the same domain as the URL passed.
 
* -u: Use color to highlight vulnerables parameters in output.
 
* -u: Use color to highlight vulnerables parameters in output.
 
* -v: Define verbosity level, here we print each url.
 
* -v: Define verbosity level, here we print each url.
Line 34: Line 32:
 
* ''sql'': Standard error-based SQL injection scanner.
 
* ''sql'': Standard error-based SQL injection scanner.
 
* ''xss'': Module for XSS detection.
 
* ''xss'': Module for XSS detection.
 +
* ''buster'': Module for a file and directory buster attack - checking for "bad" files.
 +
* ''shellshock'': Module for Shellshock bug detection.
  
 
== Report ==
 
== Report ==

Revision as of 04:21, 14 January 2015

Last revision (mm/dd/yy): 01/13/2015

This type of article aims to provide to development teams an easy/quick way 
to perform automated audit tests against their web application projects over implementation phase.

Description

WAPITI is a simple command line to tool to automate the audit of a web application. It's free and open source and has had some recent edits and updates (WAPITI homepage). The application is available for contribution at (WAPITI Repository).

Please be aware this command line does not replace a manual audit but can be useful to perform a first validation or exploration of legacy projects.

Command line

python wapiti http://mysite.com -n 10 -b folder -u -v 1 -f html -o /tmp/scan_report

Options used:

  • -n: Define a limit of urls to read with the same pattern (prevent endless loops), here limit to 10.
  • -b: Set the scope of the scan, here we analyze all the links to the pages which are in the same domain as the URL passed.
  • -u: Use color to highlight vulnerables parameters in output.
  • -v: Define verbosity level, here we print each url.
  • -f: Define report type, here we choose HTML format.
  • -o: Define report destination, in our case it must be a directory because we choose HTML format.

Attack modules used by WAPITI:

  • backup: This module search backup of scripts on the server.
  • blindsql: Time-based blind sql scanner.
  • crlf: Search for CR/LF injection in HTTP headers.
  • exec: Module used to detect command execution vulnerabilities.
  • file: Search for include()/fread() and other file handling vulns.
  • htaccess: Try to bypass weak htaccess configurations.
  • nikto: Use a Nikto database to search for potentially dangerous files.
  • permanentxss: Look for permanent XSS.
  • sql: Standard error-based SQL injection scanner.
  • xss: Module for XSS detection.
  • buster: Module for a file and directory buster attack - checking for "bad" files.
  • shellshock: Module for Shellshock bug detection.

Report

A sample HTML report is available here.