Fiddler不但能截獲各種瀏覽器發出的HTTP請求, 也可以截獲各種智能手機發出的HTTP/HTTPS請求。
Fiddler能捕獲IOS設備發出的請求,比如IPhone, IPad, MacBook. 等等蘋果的設備。 同理,也可以截獲Andriod,Windows Phone的等設備發出的HTTP/HTTPS請求。
Andriod配置方法
1)首先確保手機和Fiddler所在主機在同一個局域網中
一、配置Fiddler, 允許"遠程連接"和允許截取"HTTPS"請求
1、允許fiddler截取HTTPS請求
打開Fiddler, Tools--》Fiddler Options --》HTTPS。選中【Decrpt HTTPS traffic】以及【Ignore server certificate errors(unsafe)】, Fiddler就可以截獲HTTPS請求。
2、允許fiddler截取遠程請求
繼續打開Tools--》Fiddler Options--》connection,選中【Allow remote computers to connect】. 是允許別的機器把HTTP/HTTPS請求發送到Fiddler上來。
重要提醒:(配置完后記得要重啟Fiddler使配置生效)
二、獲取Fiddler所在主機的IP地址
此時的電腦與需要抓包app的手機應該處於同一網段(處於同一局域網內)
方式①:
方式②:
三、Andriod手機網絡代理設置
對手機所連接的無線網絡進行設置:
1、點擊WLAN,長按與Fiddler所在主機在同一個局域網的wifi;
2、長按點擊【修改網絡】,選中【顯示高級選項】,代理設置為手動,輸入代理服務器的主機名和端口后保存。
【這一步是為了使Fildder能夠作為服務代理器截取手機app的包】。
【代理服務器的主機名即Fiddler主機電腦IP地址】
【端口為Fiddler上配置的端口(默認為8888),在Fiddler菜單欄中【Tool】-【Fiddler Option】的【Connections】中查看或者修改】
四、Android手機上安裝Fiddler證書------【這一步是為了讓Fiddler能捕獲HTTPS請求。 如果你只需要截獲HTTP請求, 可以忽略這一步】
【HTTPS協議是雙向認證的安全協議,發送請求時需要攜帶安全證書證明和服務器正在通信的客戶端是安全的】
在手機瀏覽器上輸入:http://IP地址:端口(例如:http://192.168.11.29:8888)
【此時的IP地址為代理服務器即Fiddler電腦的ip,端口號也是Fiddler中配置的端口號】
【fiddler在此時就相當於一個服務器,有自己的ip和端口號,手機正確請求后,fiddler默認會返回一個Fiddler證書供手機端下載】
點擊【FiddlerRoot certificate】下載安裝Fiddler證書。
五、若在瀏覽器上無法打開該地址,需要做三項檢查:
1、確保在瀏覽器中,局域網的網絡代理中配置的代理與Fiddler所在主機地址即Fiddler中配置的端口保持一致;
2、確保在Fiddler-【Tools】-【Fiddler Option]-[Connection]中【Allow remote computers to connect】已經勾選上,若沒有勾選,則需要勾選后保存並重啟Fiddler。
3、可能某些Android手機對未知證書的安裝來源做了限制,這時可以百度搜索如何在相應的Android手機上信任未知證書。
打開手機上的瀏覽器或APP,可以在Fiddler上看到手機上的數據包了。
-----------------------------------------------------------------------------------------------------------------------------------------------------------
IOS配置方法
一、配置Fiddler, 允許"遠程連接"和允許截取"HTTPS"請求
二、獲取Fiddler所在主機的IP地址
注意:【IOS設備抓取app接口的前兩步與Andriod手機app抓包配置相同】
三、IPhone上安裝Fiddler證書 ------【這一步是為了讓Fiddler能捕獲HTTPS請求。 如果你只需要截獲HTTP請求, 可以忽略這一步】
執行這一步的前提條件就是Fiddler主機電腦和抓包手機必須處於同一局域網內
1. 首先要知道Fiddler所在的機器的IP地址:假如我安裝了Fiddler主機電腦的IP地址是:192.168.1.187
2. 打開IPhone 的Safari, 訪問 http://192.168.1.187:8888, 點"FiddlerRoot certificate" 然后安裝證書
注意:需要在證書信任設置中開啟信任,否則安裝后不生效,【設置】--- 【通用】--- 【關於本機】--- 【證書信任設置】--- 【信任】
四、iPhone上配置網絡代理
打開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證書。