Mitmproxy 是一个免费开源的交互式 HTTPS 代理。它可以用来拦截、检查、修改和重放网络流量,还可以对从 HTML 到 Protobuf 的各种消息类型进行预设和解码,实时拦截特定的消息,在它们到达目的地之前对其进行修改,并在之后对客户端或服务器进行重放。
Mitmproxy 8 正式发布,具体更新内容如下:
Web UI 的改进
这个版本针对 mitmweb 进行了大量改进,mitmweb 现在可以显示 TCP 和 WebSocket 流量,提供直接的 cURL/HTTPie/原始 HTTP 输出,并带有一个实验性的命令栏。在后端,整个代码库已被转换为 TypeScript。
新的 TLS Event Hooks
Mitmproxy 有了新的 Event Hooks,可以用来指示客户端和服务器连接的 TLS 握手成功和失败。
其他更新内容
- 支持 SOCKS v5 模式的代理认证
- 在 tls_clienthello event hook 中可以忽略连接
- 修复某些响应在编码为大写时无法正确解码的问题
- 改进 TLS 版本不匹配的错误信息
- Windows:切换到 Python 默认的 asyncio 事件循环,这增加了可以同时处理的套接字的数量
- 增加
client_replay_concurrency
选项 - 新的内容视图可以处理 gRPC/protobuf,允许使用自定义的定义来显示不同的字段解码
- 修复了编辑字符串选项时引起的崩溃
- 基础容器镜像升级到 Debian 11 Bullseye
- 删除旧版 pyOpenSSL 的解决方法
- 修复了使用 view.flow.resolve 时崩溃的问题
- 修复启动时
running()
被调用两次的问题 - 修复与 BoringSSL 的兼容性
- 添加
WebSocketMessage.injected
标志 - ……
更多详情可查看:https://github.com/mitmproxy/mitmproxy/releases/tag/v8.0.0