Difference between revisions of "OWASP Hatkit Proxy Project"

From OWASP
Jump to: navigation, search
Line 25: Line 25:
  
 
The proxy window should now pop up. It has one tab for HTTP-proxy mode, and another for TCP-proxy mode.
 
The proxy window should now pop up. It has one tab for HTTP-proxy mode, and another for TCP-proxy mode.
[[Image:hatkit-start-http.png|thumb|200px|right|Http setup options]]
+
[[Image:hatkit-start-http.png|200px|Http setup options]]
[[Image:hatkit-start-tcp.png|thumb|200px|right|Tcp setup options]]
+
[[Image:hatkit-start-tcp.png|200px|Tcp setup options]]
  
 
Before the proxy actually starts, you need to make some settings. These are all documented within the application, if you click the ?-button, you will see more information about the setting in question. '''Tip:''' Most of these settings can be modified later, so you don't have to restart the proxy to e.g. redefine the filters determining what is captured and what is ignored.  
 
Before the proxy actually starts, you need to make some settings. These are all documented within the application, if you click the ?-button, you will see more information about the setting in question. '''Tip:''' Most of these settings can be modified later, so you don't have to restart the proxy to e.g. redefine the filters determining what is captured and what is ignored.  
Line 33: Line 33:
  
 
== Roadmap ==
 
== Roadmap ==
 +
Todo
  
 
+
== The Database ==
== The database ==
+
 
More info coming about this. For now, some information on why this database is used and what that entails is outlined in this email: [http://sourceforge.net/mailarchive/message.php?msg_id=27036089 About MongoDB on w3af devel list]
 
More info coming about this. For now, some information on why this database is used and what that entails is outlined in this email: [http://sourceforge.net/mailarchive/message.php?msg_id=27036089 About MongoDB on w3af devel list]
 +
 +
=== Storage Format ===
 +
Todo
  
 
==== Project About  ====
 
==== Project About  ====

Revision as of 15:47, 2 April 2011

Main

The Hatkit Proxy is an intercepting http/tcp proxy which is based on the Owasp Proxy.

Background

The primary purpose of the Hatkit Proxy is to create a minimal, lightweight proxy which stores traffic into an offline storage where further analysis can be performed, i.e. all kinds of analysis which is currently implemented by the proxies themselves (webscarab/burp/paros etc).

Also, since the http traffic is stored in a MongoDB, the traffic is stored at an object-level, retaining the structure of the parsed traffic.

Hatkit proxy features

The additions which have been implemented on top of Owasp Proxy are:

  • Swing-based UI,
  • Interception capabilities with manual edit, both for TCP and HTTP traffic,
  • Syntax highlightning (html/form-data/http) based on JFlex,
  • Storage of http traffic into MongoDB database,
  • Possibilities to intercept in Fully Qualified mode (like all other http-proxies) OR Non-fully qualified mode. The latter means that interception is performed *after* the host has been parsed, thereby enabling the user to submit non-valid http content.
  • A set of filters to either ignore or process traffic which is routed to the proxy. The 'ignored' traffic will be streamed to the endpoint with minimal impact on performance.

Getting started

To use the proxy, download the zip-file which can be found on the source code repository (you can also use the direct-link on the release-page).

$ wget http://martin.swende.se/hgwebdir.cgi/hatkit_proxy/raw-file/tip/hatkit.zip
$ unzip hatkit.zip 
$ java -jar hatkit/hatkit-proxy.jar 

The proxy window should now pop up. It has one tab for HTTP-proxy mode, and another for TCP-proxy mode. Http setup options Tcp setup options

Before the proxy actually starts, you need to make some settings. These are all documented within the application, if you click the ?-button, you will see more information about the setting in question. Tip: Most of these settings can be modified later, so you don't have to restart the proxy to e.g. redefine the filters determining what is captured and what is ignored.

In order to actually store traffic, you also need to install mongodb. Please see MongoDB for suitable version for your platform. Note: MongoDB is usually also available through Linux packet managers, if you want to do it the simple way.

Roadmap

Todo

The Database

More info coming about this. For now, some information on why this database is used and what that entails is outlined in this email: About MongoDB on w3af devel list

Storage Format

Todo

Project About

PROJECT INFO
What does this OWASP project offer you?
RELEASE(S) INFO
What releases are available for this project?
what is this project?
Name: OWASP Hatkit Proxy Project (home page)
Purpose:
  • The Hatkit Proxy is an intercepting http/tcp proxy based on the Owasp Proxy, but with several additions. These additions are:
    • Swing-based UI,
    • Interception capabilities with manual edit,
    • Syntax highlightning (html/form-data/http) based on JFlex,
    • Storage of http traffic into MongoDB database,
    • Interception capabilities of tcp-traffic,
    • Possibilities to intercept in Fully Qualified mode (like all other http-proxies) OR Non-fully qualified mode. The latter means that interception is performed *after* the host has been parsed, thereby enabling the user to submit non-valid http content.
  • The primary purpose of the Hatkit Proxy is to create a minimal, lightweight proxy which stores traffic into an offline storage where further analysis can be performed, e.g. all kinds of analysis which is currently implemented by the proxies themselves (webscarab/burp/paros etc).
  • Also, since the http traffic is stored in a MongoDB, the traffic is stored at an object-level, retaining the structure of the parsed traffic, which enables a user to perform advanced queries later.
  • The proxy should also be a good choice for 'defenders' who wants to (temporarily?) monitor traffic. The proxy itself is, as stated, very lightweight, and the backend MongoDB storage scales very well and should be able to handle extreme amounts of data. This would allow defenders to perform advanced post-mortem or real-time analysis of incoming traffic.
  • Built in Java/Swing + MongoDB.
License: GNU General Public License v3
who is working on this project?
Project Leader(s):
how can you learn more?
Project Pamphlet: Not Yet Created
Project Presentation:
Mailing list: Mailing List Archives
Project Roadmap: View
Main links:
Key Contacts
  • Contact the GPC to report a problem or concern about this project or to update information.
current release
Hatkit Proxy 0.5.1 - April 8 2011 - (download)
Release description:
  • This is the HatKit proxy, built upon the OWASP Proxy.
Rating: Yellow button.JPG Not Reviewed - Assessment Details
last reviewed release
Not Yet Reviewed


other releases