MASTG-TOOL-0097: mitmproxy
mitmproxy 是一个免费且开源的交互式 HTTPS 拦截代理。
- 命令行:
mitmdump
是 mitmproxy 的命令行版本。可以把它想象成 HTTP 的 tcpdump。它可以用来拦截、检查、修改和重放网络流量,例如 HTTP/1、HTTP/2、WebSockets 或任何其他受 SSL/TLS 保护的协议。你可以美化和解码各种消息类型,从 HTML 到 Protobuf,实时拦截特定消息,在它们到达目的地之前修改它们,并在以后重放给客户端或服务器。 - Web 界面:
mitmweb
是 mitmproxy 的基于 Web 的界面。它为你提供与 Chrome DevTools 类似的体验,以及请求拦截和重放等额外功能。 - Python API: 使用 mitmdump 编写强大的插件和脚本 mitmproxy。脚本 API 提供对 mitmproxy 的完全控制,并使其能够自动修改消息、重定向流量、可视化消息或实现自定义命令。
安装¶
brew install mitmproxy
安装说明在此。
用法¶
文档在此。Mitmproxy 默认以常规 HTTP 代理启动,并在 https://:8080
上侦听。你需要配置你的浏览器或设备以将所有流量通过 mitmproxy 路由。例如,在 Android 模拟器上,你需要按照此处指示的步骤操作。
例如,要将所有流量捕获到一个文件
mitmdump -w outfile
这将运行 mitmproxy 和 add_header.py 脚本,该脚本只是向所有响应添加一个新标头。
mitmdump -s add_header.py