mitmproxy is an interactive, SSL-capable man-in-the-middle proxy for HTTP with a console interface.
mitmdump is the command-line version of mitmproxy. Think tcpdump for HTTP.
libmproxy is the library that mitmproxy and mitmdump are built on.
Complete documentation and a set of practical tutorials is included in the distribution package, and is also available at mitmproxy.org.
- 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.
- Reverse proxy mode to forward traffic to a specified server.
- Transparent proxy mode on OSX and Linux.
- Make scripted changes to HTTP traffic using Python.
- SSL certificates for interception are generated on the fly.
- And much, much more.
Releases and documentation can be found on the mitmproxy website:
Source is hosted on github:
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:
groups.google.com/group/mitmproxy
- Python 2.7.x.
- netlib 0.2.2 or newer.
- PyOpenSSL 0.13 or newer.
- pyasn1 0.1.2 or newer.
- urwid version 1.1 or newer.
- PIL version 1.1 or newer.
- lxml version 2.3 or newer.
mitmproxy is tested and developed on OSX, Linux and OpenBSD. Windows is not officially supported at the moment.
The following components are needed if you plan to hack on mitmproxy:
- The test suite uses the nose unit testing framework and requires human_curl, pathod and flask.
- Rendering the documentation requires countershape.