我在我的安卓手机上有一个应用程序,我试图调试,但每当我允许PcapDroid发送解密请求和响应到我的电脑,它将不允许任何互联网访问在应用程序。我在mitmproxy中没有收到错误信息。
唯一的产出是:
info: 192.168.xx.xxx:33396: client disconnect
info: 192.168.xx.xxx:43544: server disconnect xxx.xxx.xxx.xxx:443偶尔会在日志中看到这一点:
warn: 192.168.xx.xxx:43544: Client TLS handshake failed. The client may not trust the proxy's certificate for api.example.com (OpenSSL Error([('SSL routines', 'ssl3_read_bytes', 'sslv3 alert certificate unknown')]))这是唯一一个报告TLS握手失败的请求。我知道这个请求并不重要,所以我想知道为什么其他更重要的请求都没有报告任何内容。
其他应用程序发送的数据也很好。
为什么这个应用程序不允许任何互联网连接?我用apk修补了它,就像我对所有其他应用程序所做的那样,以便于检查。
发布于 2022-01-25 22:05:20
许多应用程序都执行证书钉扎:它们附带了自己信任的证书的内部列表,并且不信任任何其他证书(包括来自电话证书存储区的证书)。在这种情况下,通常不可能使用MITM与mitmproxy通信,因为应用程序将拒绝MITM证书。
你有几个选择:
--ignore-hosts或--allow-hosts可以选择性地忽略应用程序试图连接到的主机。在这种情况下,mitmproxy将直接通过连接而不尝试MITM,并且连接将成功。如果你对这些请求不感兴趣,只想让应用程序正常工作,你就可以这样做。bks文件,您只需编辑这些文件,有些则可能将存储打包在本机库或Java类中。https://stackoverflow.com/questions/70263334
复制相似问题