一个基于 mitmproxy 的 HTTP/HTTPS 流量抓包和分析工具集,支持多种抓包方式和客户端测试。
- mitmproxy 代理抓包 - 使用自定义脚本捕获和记录 HTTP/HTTPS 流量
- Frida Hook 抓包 - 针对 Android OkHttp 库的 Hook 脚本
- HTTP 客户端测试 - 模拟各种 HTTP 请求进行测试
- SSL/TLS 证书支持 - 支持自定义证书和域名绑定
.
├── proxy.py # mitmproxy 抓包脚本
├── okhttp_dump.js # Frida Hook OkHttp 脚本
├── burp_like_client.py # HTTP 客户端测试脚本
├── server.pem # SSL 证书文件
├── fullchain.pem # SSL 证书链
├── privkey.pem # SSL 私钥
└── readme.md # 项目文档
# 激活虚拟环境
source /Users/bugo11/ww/zhuabao/.venv/bin/activate
# 安装 mitmproxy
pip install mitmproxy
# 安装其他依赖(如需要)
pip install httpx frida-tools如果遇到证书问题,可以重新生成 mitmproxy 证书:
# 删除现有证书目录,让 mitmproxy 重新生成
rm -rf ~/.mitmproxy# 启动交互式界面
mitmproxy -p 8080
# 启动 Web 界面
mitmweb -p 8080# 使用自定义脚本,监听 8443 端口
sudo mitmproxy \
--listen-port 8443 \
--no-http2 \
--set block_global=false \
--certs server.pem \
-s proxy.py# 只对特定域名使用自定义证书
sudo mitmproxy \
--listen-port 8443 \
--no-http2 \
--set block_global=false \
--certs api.xxx.com=server.pem \
-s proxy.py# 连接到 Android 设备并运行 Hook 脚本
frida -U -f com.example.app -l okhttp_dump.js --no-pause# 运行测试客户端
python burp_like_client.py- 功能: mitmproxy 插件脚本,捕获所有 HTTP/HTTPS 请求和响应
- 输出: 详细的请求头、响应头和请求体信息
- 适用: 通用 HTTP 流量分析
- 功能: Frida Hook 脚本,专门针对 Android OkHttp 库
- 输出: OkHttp 请求的详细信息
- 适用: Android 应用逆向分析
- 功能: HTTP 客户端测试脚本,模拟各种请求
- 特性: 支持 HTTP/2、自定义头部、参数等
- 适用: API 测试和调试
- 安装 mitmproxy 证书到设备
- 在 Android 设备上信任用户证书
- 对于 iOS,需要在设置中信任证书
# 检查端口占用
lsof -i :8080
lsof -i :8443
# 杀死占用进程
kill -9 <PID>- 确保证书文件路径正确
- 检查证书是否过期
- 验证域名与证书匹配
本项目仅供学习和研究使用,请遵守相关法律法规。