使用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證書