1、mitmproxy的介绍
- mitmproxy 就是用于 MITM 的 proxy,MITM 即中间人攻击(Man-in-the-middle attack)。用于中间人攻击的代理首先会向正常的代理一样转发请求,保障服务端与客户端的通信,其次,会适时的查、记录其截获的数据,或篡改数据,引发服务端或客户端特定的行为。
- mitmproxy可以用个使用python脚本截获请求信息进入修改重新发送给服务端;也可以通过截获响应信息,修改返回给客户端
- 这个的优势是修改脚本,保存即会生效
2、安装与使用
2.1、安装
- mac端安装软件:brew install mitmproxy
- Windows端安装软件:在https://github.com/mitmproxy/mitmproxy/releases/上下载对应的exe安装包,点击安装即可
2.2、启动mitmproxy代理
- 指定端口启动:mitmweb -p 5050
- 指定脚本启动:mitmweb -p 5050 -s xxx.py(在该脚本目录下执行,否则需要写绝对路径)
- 在服务器上启动(指定端口、指定web页面的端口):mitmweb -p 6666 --web-iface 0.0.0.0 --web-port 8081 --set block_global=false(注意:在阿里云服务器上要开发代理端口和web页面打开的端口,使其能够正常使用)
2.3、手机端证书安装
- ios端:在浏览器中打开mitm.it网站,下载apple类型进行安装,在“设置–>通用–>关于本机–>证书信任设置”信任该证书,就可以抓包https链接
- Android端:在浏览器中打开mitm.it网站,下载Android类型进行安装。
- pc端:在浏览器中打开mitm.it网站,下载apple类型进行安装。
2.4、使用该软件抓包
- 启动好mitmproxy后,在手机中设置代理服务器的ip和端口
- 若是电脑端启动,ip为电脑端链接wifi的ip,端口为启动时候设置的端口
- 若是服务器端启动,ip为服务器的ip,端口为启动时候设置的端口