
Use columns to make spacing nicer, and to ensure that long URLs don't bugger up formatting when they spill into the next line.
Please note that the master branch of mitmproxy is currently under heavy development. Feel free to test things out, but you may want to use a release.
mitmproxy is an SSL-capable man-in-the-middle proxy for HTTP. It provides a console interface that allows traffic flows to be inspected and edited on the fly.
mitmdump is the command-line version of mitmproxy, with the same functionality but without the frills. Think tcpdump for HTTP.
Both tools are fully documentented in the commandline --help flag, and, in the case of mitmproxy, a built-in help page accessible through the ? keyboard shortcut.
Capabilities
- Intercept HTTP requests and responses and modify them on the fly.
- Save complete HTTP conversations for later replay and analysis.
- Replay the client-side of an HTTP conversations.
- Replay HTTP responses of a previously recorded server.
- Make scripted changes to HTTP traffic using Python.
- SSL certificates for interception are generated on the fly.
Download
Releases and rendered documentation can be found on the mitmproxy website:
Source is hosted on github:
Community
Come join us in the #mitmproxy channel on the OFTC IRC network (irc://irc.oftc.net:6667).
We also have a mailing list, hosted here:
http://groups.google.com/group/mitmproxy
Requirements
- Python 2.6.x or 2.7.x.
- openssl - installed by default on most systems.
- urwid version 0.9.8 or newer.
- The test suite uses the pry unit testing library.
- Rendering the documentation requires countershape.
mitmproxy is tested and developed on OSX, Linux and OpenBSD.
You should also make sure that your console environment is set up with the following:
- EDITOR environment variable to determine the external editor.
- PAGER environment variable to determine the external pager.
- Appropriate entries in your mailcap files to determine external viewers for request and response contents.