1. 程式人生 > >使用Fiddler進行iOS APP的HTTP/HTTPS抓包

使用Fiddler進行iOS APP的HTTP/HTTPS抓包

Fiddler不但能截獲各種瀏覽器發出的HTTP請求, 也可以截獲各種智慧手機發出的HTTP/HTTPS請求。Fiddler能捕獲IOS裝置發出的請求,比如IPhone, IPad, MacBook. 等等蘋果的裝置。  同理,也可以截獲Andriod,Windows Phone的等裝置發出的HTTP/HTTPS。

最關鍵的是,對IOS應用抓包時直接在Windows PC上進行,不需要非得在MAC上。下面介紹使用步驟

一、PC上安裝Fiddler

步驟略。

二、Fiddler配置 (配置完後記得要重啟Fiddler)

開啟Fiddler,   Tools-> Fiddler Options 。

選中"Decrpt HTTPS traffic",    Fiddler就可以截獲HTTPS請求

選中"Allow remote computers to connect".  是允許別的機器把HTTP/HTTPS請求傳送到Fiddler上來



三、手機配置

(1)  網路代理設定

安裝Fiddler的機器,跟iPhone 必須在同一個網路裡, 否則iPhone不能把HTTP傳送到Fiddler的機器上來。一般情況,我們手頭上是桌上型電腦和手機,桌上型電腦只有網線,沒有無線wifi,所以和手機不在同一個網路,這時,我們就需要設定代理了

開啟iPhone,  找到你的網路連線, 開啟HTTP代理, 輸入Fiddler所在機器的IP地址(比如:192.168.1.104) 以及Fiddler的埠號8888



(2) Fiddler證書安裝

這一步是為了讓Fiddler能捕獲HTTPS請求。 如果你只需要截獲HTTP請求, 可以忽略這一步

1. 首先要知道Fiddler所在的機器的IP地址: 假如我安裝了Fiddler的機器的IP地址是:192.168.1.104

2. 開啟IPhone 的Safari, 訪問  http://192.168.1.104:8888, 點"FiddlerRoot certificate" 然後安裝證書




現在大功告成,可以抓包了。iPhone上的應用(比如Safari, Firefox, Itunes, App Store)發出的HTTP/HTTPS都可以被Fiddler獲取。 

例項: 開啟Safari,  

1. 輸入http://www.cnblogs.com/tankxiao.  看看Fiddler能否捕獲。

2.  輸入https://dynamic.12306.cn/otsweb/   看看Fiddler能否捕獲。

是不是HTTP和HTTPS都截獲到了?,  你不但能截獲, 還可以下斷點,修改Request, 修改Response, Do what you want. 

四、注意事項

(1) 用完了, 記得把IPhone上的Fiddler代理關閉, 以免IPhone上不了網。

(2) 只能捕獲HTTP,而不能捕獲HTTPS的解決辦法

有時候會發現, Fiddler 只能捕獲IPhone發出得HTTP請求, 而不能捕獲HTTPS請求, 原因可能是證書沒有安裝好。 解決辦法是:

1. 先把IPhone上所有的Fiddler證書刪除 (拿出IPhone, 點”設定“->“通用”->"描述檔案")

2. 安裝上面的方法,重新安裝Fiddler證書