1. 程式人生 > >【轉載】Fiddler 4 實現手機App的抓包

【轉載】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證書。