【转载】Fiddler 4 实现手机App的抓包

Fiddler不但能截获各种浏览器发出的HTTP请求, 也可以截获各种智能手机发出的HTTP/HTTPS请求。

Fiddler能捕获IOS设备发出的请求,比如IPhone, IPad, MacBook. 等等苹果的设备。  同理,也可以截获Andriod,Windows Phone的等设备发出的HTTP/HTTPS。

本文介绍Fiddler截获IPhone发出的HTTP/HTTPS包

前提条件是:安装Fiddler的机器,跟Iphone 在同一个网络里, 否则IPhone不能把HTTP发送到Fiddler的机器上来。

一、配置Fiddler,  允许"远程连接"

打开Fiddler,     Tools-> Fiddler Options 。  (配置完后记得要重启Fiddler).

选中"Decrpt HTTPS traffic",    Fiddler就可以截获HTTPS请求

选中"Allow remote computers to connect".  是允许别的机器把HTTP/HTTPS请求发送到Fiddler上来

二、获取Fiddler所在机器的IP地址

 Fidder所在的机器地址是: 直接在cmd中输入ipconfig即可获得  例:192.168.1.187

三、IPhone上安装Fiddler证书

这一步是为了让Fiddler能捕获HTTPS请求。 如果你只需要截获HTTP请求, 可以忽略这一步

1. 首先要知道Fiddler所在的机器的IP地址: 假如我安装了Fiddler的机器的IP地址是:192.168.1.187

2. 打开IPhone 的Safari, 访问  http://192.168.1.187:8888, 点"FiddlerRoot certificate" 然后安装证书

注意:需要在证书信任设置中开启信任,否则安装后不生效,设置-->通用-->关于本机,下滑至最下方选择 证书信任设置

四、IPhone上配置Fiddler为代理

 打开IPhone,  找到你的网络连接, 打开HTTP代理, 输入Fiddler所在机器的IP地址(比如:192.168.1.187) 以及Fiddler的端口号8888

 

五、开始抓包

现在IPhone上的应用(比如Safari, Firefox, Itunes, App Store)发出的HTTP/HTTPS都可以被Fiddler获取。 

用完了, 记得把IPhone上的Fiddler代理关闭, 以免IPhone上不了网。

、只能捕获HTTP,而不能捕获HTTPS的解决办法

有时候会发现, Fiddler 只能捕获IPhone发出得HTTP请求, 而不能捕获HTTPS请求, 原因可能是证书没有安装好。 解决办法是:

1. 先把IPhone上所有的Fiddler证书删除 (拿出IPhone, 点”设置“->“通用”->"描述文件")

2. 安装上面的方法,重新安装Fiddler证书。

猜你喜欢

转载自www.cnblogs.com/kongso/p/10193300.html