1.下载mitmproxy
选择对应python版本的mitmproxy下载,解压后移动到/usr/bin完成环境变量配置。
如:本人python==3.7.6 对应 mitmproxy==5.3.0
# 解压
tar -zxvf mitmproxy-5.3.0-linux.tar.gz
# 移动
sudo mv mitmproxy mitmdump mitmweb /usr/bin
2.配置mitmproxy
# 启动mitmdump获取证书
mitmdump
** 注:如若在pip中已经安装mitmproxy会产生冲突请先卸载 **
会在主目录生成一个./mitmporxy文件夹(可能隐藏)
文件夹中存有ca证书,将其pem格式转为crt格式
~/.mitmproxy$ openssl x509 -in mitmproxy-ca-cert.pem -inform PEM -out mitmproxy-ca-cert.crt
在以下位置为额外的CA证书创建目录/usr/share/ca-certificates:
sudo mkdir /usr/share/ca-certificates/extra
将CA证书移动到刚才创建的目录
sudo cp mitmproxy-ca-cert.crt /usr/share/ca-certificates/extra/mitmproxy-ca-cert.crt
安装CA证书
sudo dpkg-reconfigure ca-certificates
安卓端配置
安卓端也需要安装CA证书才能抓到包,首先需要把证书文件转移到安卓手机中。推荐使用坚果云网盘进行转移。
这里遇到一个大坑!某些安卓手机只能从信任的应用安装证书,所以从手机端坚果云app中下载的证书是无法被安装的。只能从手机自带的app中,如自带的浏览器中下载的证书才可被安装。
** 此处更新 ** 不需要自己把证书存放到云盘也可以,直接在手机浏览器中访问mitm.it/ 下载对应的证书即可
所以切换到手机浏览器登录web端的坚果云下载才能够从本地文件安装,否则识别不出证书文件。
从本地安装信任证书一般操作:设置->安全->其他安全设置->从设备存储空间安装证书->CA证书->选取证书文件安装
测试运行
安装完证书之后把手机网络切到与笔记本同一wifi,设置手动代理,把ip和端口号填进去(8080) ip可从终端查看
ifconfig
运行mitmproxy进行抓包测试
mitmproxy
手机端随便打开某个应用即可看见请求
上下移动可以选中请求按
enter进入请求详情
按
q退出当前请求
至此,mitmproxy配置调试完毕,可以进行进一步的研究,感谢阅读。