前言
Mitmproxy 是一个交互式的 TLS 拦截代理,它运行在 Linux、macOS、Windows 等多种操作系统上,能够捕获、修改请求流量,对于网络开发人员进行调试、测试,安全研究人员进行渗透测试、安全审计等工作都具有重要价值。
它包含三个核心组件:
-
mitmproxy:是一个基于终端的交互式拦截代理,提供了一个丰富的命令行界面,允许用户实时查看、检查和修改 HTTP/HTTPS 流量。用户可以通过键盘快捷键方便地操作和过滤请求与响应。
-
mitmdump:是 mitmproxy 的无界面版本,类似于 Linux 系统中的
tcpdump
工具。它更侧重于自动化处理,可以使用 Python 脚本对捕获的流量进行自定义处理,适合于需要在后台运行并进行自动化数据处理或分析的场景。 -
mitmweb:是一个基于 Web 的界面,通过浏览器访问,以图形化的方式展示捕获的流量。它提供了直观的可视化界面,方便用户查看和分析请求和响应的详细信息,对于不熟悉命令行操作的用户来说非常友好。
安装
# 安装python模块mitmproxy
pip install mitmproxy
# 9099端口无界面运行mitmproxy
mitmdump -p 9099
能跑起来并不代表你做完了所有准备,为了开启系统代理你还需要:前往windows的代理设置页面,打开代理服务并填入自己新建的本地代理端口。
下载并安装mitmproxy服务CA证书
很多应用如果没有安装CA证书都会出一些意料之外的告警和错误,为了防止这一事件,你需要安装服务对应的CA证书来通过这些应用接口的网络验证
在确保开启mitmproxy代理的情况下访问:http://mitm.it/
下载图中标红的CA证书并安装即可
安装后,它将存储在你系统的这个地方(见颁发者为mitmproxy的证书),因此当你想删掉它的时候就在这里解决吧
异常情况
1、当访问CA下载网站出现这个页面时没有出现下载选项时
表示你的系统代理没有生效,因此你需要检查你的系统代理配置,并确保你的代理服务已经打开。