使用 mitmproxy 进行 HTTP 分析

之前使用的是 Wireshark 进行 HTTP 的一些分析,功能很全面,不过有些大材小用。同类型的简化工具其实很多,甚至 Firefox & Google Chrome 本身就自带,只是浏览器自带的工具又无法满足我们的需求,下面介绍下 mitmproxy 工具,简单又不失强大。

mitmproxy 1

mitmproxy 是一款基于 Python,支持 ssl 的中间人代理框架,他提供了一个控制台用于动态拦截和编辑 HTTP/HTTPS 数据包。官方介绍:

An interactive console program that allows traffic flows to be intercepted, inspected, modified and replayed.

mitmproxy 包含 3 款工具:

安装他非常简单,Linux 用户直接通过包管理命令来安装即可,OS X 用户通过 Homebrew 工具进行安装

brew install mitmproxy

当然,你也可以通过 pip 进行安装

pip install mitmproxy

使用上非常简单,移动方向类似 vi,使用 hjkl 来进行操作向左、向上、向下、向右,以 q 键来返回,回车键进入。

在 Request/Response 界面按 e 键进入编辑,m 键进入显示模式选择,tab 键切换 Request/Response/Detail。

mitmproxy 1

mitmproxy 1

mitmproxy 1

详情请参考:http://mitmproxy.org/doc/index.html