monkeyWie / proxyee

HTTP proxy server,support HTTPS&websocket.MITM impl,intercept and tamper HTTPS traffic.
MIT License
1.53k stars 573 forks source link

iOS手机下,proxyee只能抓到特别少量的HTTPS请求接口,而Android不存在该问题 #51

Closed weirenren closed 5 years ago

weirenren commented 5 years ago

ios 手机下 很多HTTPS接口抓不到数据,断点调试了下,貌似在HTTPS中connect报文返回给APP端之后,APP端没有接下来的HTTPS握手数据传给proxy端,不知道什么原因导致的,而Android端是没这个问题的。这块接口抓取的差异可以用Charles和proxyee进行对比,iOS只能抓到特别少量的APP中的接口请求

weirenren commented 5 years ago

QQ20190319-192139 TLS握手抓包截图,每次server hello 那块就FIN了,iOS APP测试会出现该问题,而Android不会。还请楼主看下这个问题

weirenren commented 5 years ago

What fixed this issue from my iPhone for me was going to Settings -> General -> About -> Certificate Trust Settings, and there is a section called "ENABLE FULL TRUST FOR ROOT CERTIFICATES". Under it lists the certificate that I installed on my iPhone. Once I enabled that, I'm good to go.

https://discussions.apple.com/thread/7738477

找到原因了:苹果手机中需要手动设置对自签更证书的信任

monkeyWie commented 5 years ago

那你用Charles的证书也是手动更新了证书信任吗?

weirenren commented 5 years ago

那你用Charles的证书也是手动更新了证书信任吗?

应该是的,Charles根证书安装之后也得需要这个操作