IOS 苹果手机fiddler抓包时出现了tunnel to 443 解决方案,亲测有效

 先上一张捉取成功图【版本需要在4.0以上】

 

1.先对Fiddler进行设置【打开Fiddler ——> Options .然后打开的对话框中,选择HTTPS页】:

 

勾选“CaptureHTTPS CONNECTs”,接着勾选“Decrypt HTTPS traffic”。

   同时,由于我们是通过WiFi远程连过来,所以在下面的选项框中选择“...fromremote clients only”。

    说明:( from all processes 来自所有的进程,包括客户端和浏览器

              from browsers only  只接受来自浏览器的请求

             from non-browsers only  只接受来自非浏览器的请求

             from remote clients only   只接受来自远程的客户端请求

)

如果你要监听的程序访问的HTTPS站点使用的是不可信的证书,则请接着把下面的“Ignore servercertificate errors”勾选上。

2.设置监听端口【选择 Connections tab页】

 

监听端口默认是8888,你可以把它设置成任何你想要的端口。勾选上“Allow remote computersto connect”。

为了减少干扰,可以去掉“Act assystem proxy on startup”。

3.设置手机wifi代理

1) 点击局域网后面的惊叹号处弹出的修改网络,进入高级设置 
2) 在https代理处,选择手动模式,分别输入ip(比如这里是192.168.0.158),端口号是8888

4.IOS自带浏览器打开地址【192.168.0.126,那么手机浏览器访问的是 http://192.168.0.126:8888】,点击FiddlserRoot certificate下载证书,然后安装

 

 

设置好后可以进行抓包,如果以上方法设置无效。如果依然无效,可以进行下面设置:

iOS10解决方案【已鉴定】:设置——通用——关于本机——证书信任设置,找到fiddler的证书【DO_NOT_TRUST_FiddlerRoot】,开启(相当于同意全量监控,所以其他应用不要乱开通)。再试试抓包,就可以显示HTTPS了

 

api24解决方案【未鉴定】:安卓没有提供系统层面上的设置,所以只能在应用上下功夫了,需要在应用代码配置中进行配置,相当于开发者留后门,否则就只能root设备,然后绕过证书验证了。严格意义上来说,安卓这是无解的。下面提供代码配置内容吧

<network-security-config>  
      <debug-overrides>  
           <trust-anchors>  
                <!-- Trust user added CAs while debuggable only -->
                <certificates src="user" />  
           </trust-anchors>  
      </debug-config>  
 </network-security-config>

 

猜你喜欢

转载自www.cnblogs.com/-mrl/p/9879149.html