【发布时间】:2021-10-29 08:32:29
【问题描述】:
问题描述
尝试使用反向网络共享从 Android 设备捕获流量,然后将流量代理到 mitmproxy,我们已在设备中安装了 MITM 证书。浏览器流量工作正常,但应用程序流量导致 SSL 证书错误。也尝试使用--ssl-insecure 标志,但没有成功。
重现行为的步骤:
- 运行 MITM 代理
- 使用反向网络共享和代理链将流量转发到代理。
- 在设备中安装了 MITM 证书
- 浏览器流量正常(HTTP 和 HTTPS),但应用程序流量不正常,导致证书错误。
- 也使用了路径 tls_passthrough。一半的应用流量正常,但由于 SSL 固定,亚马逊等应用仍然无法正常运行
如何绕过 SSL 证书验证?
系统信息
在(Ubuntu 和 Android)上使用版本 6 和 7 进行检查。
【问题讨论】:
-
您是如何在 Andorid 设备上安装 Mitm 根 CA 证书的?此处记录了正确的方法:docs.mitmproxy.org/stable/… 但它仅适用于不使用证书固定的应用程序。另请参阅此 SO 问题:stackoverflow.com/q/57568571/150978
-
感谢您的快速响应。我们正在使用设置应用程序的安全和凭据部分安装证书。有了这个,它适用于浏览器 HTTPS 请求和一些应用程序以及未实现证书固定的应用程序。第一个链接与我认为的模拟器有关。并且对于第二个链接设备需要植根,这将消除所有应用程序的安全性。
-
正如第二个链接中提到的,通过设置安装根 CA 证书对于大多数应用程序来说是无用的,因为它们不信任现代 Android 设备上的这些证书。第一个链接对于每个现代 Android 设备都是必不可少的,它只是为 Android 模拟器编写的,因为这是 Mitmproxy 用户的常见用例。第二个链接向您展示了如何操作应用程序,使其信任用户安装的根 CA 证书。如果您不喜欢,这些都是您的选择。