Fiddler中如何抓取app中https(443端口)數據

Fiddler不但能截獲各類瀏覽器發出的HTTP請求, 也能夠截獲手機發出的HTTP/HTTPS請求,總結下Fiddler截獲IPhone和Android發出的HTTP/HTTPS包,前提條件是:安裝Fiddler的機器,跟Iphone、Android在同一個網絡裏, 不然手機不能把HTTP發送到Fiddler的機器上來。android

若是你遇到了這個坑:手機上已經設置好代理,開啓代理後,卻發現手機上不了網。瀏覽器

那麼應該是和電腦防火牆有關,此時須要設置下防火牆,如過設置無效或者不知道怎麼設置的話直接將防火牆暫時性關閉吧。服務器

1、準備工做網絡

不論IPhone、Android,首先都須要配置Fiddler,打開Fiddler,Tools->Telerik Fiddler Options...(配置完後記得要重啓Fiddler)。
選中"Decrpt HTTPS traffic",Fiddler就能夠截獲HTTPS請求
選中"Allow remote computers to connect",是容許別的機器把HTTP/HTTPS請求發送到Fiddler上來,如圖.net

 

3、Android上安裝Fiddler證書3d

這一步是爲了讓Fiddler能捕獲HTTPS請求。若是你只須要截獲HTTP請求,能夠忽略這一步代理

1. Android設置代理服務器,打開wifi設置頁面,找到鏈接的網絡,進入「修改設置」,修改代理爲手動blog

勾選「顯示高級選項」,在接下來顯示的頁面中,點擊「代理」,選擇「手動」,在「代理服務器主機名」和「代理服務器端口」中寫上電腦在WiFi中的地址和上面設置的端口號(8888),最後點「保存」。路由

代理設置以下:rem

 

2. 導證書到Android設備
Fiddler本質上是一個HTTPS代理服務器,其本身帶的證書顯然不會在Android設備的受信任證書列表裏。
有些應用程序會查看服務器端的證書是不是由受信任的根證書籤名的,若是不是就直接跳出。
因此,爲了保險起見,咱們要將Fiddler代理服務器的證書導到Android設備上。
導入的過程很是簡單,打開設備自帶的瀏覽器,在地址欄中輸入代理服務器的IP和端口,例如本例中咱們會輸入192.168.1.167:8888,進入以後會看到一個Fiddler提供的頁面:

 

輸入一個證書名稱(這裏本身填寫便可),而後直接點「肯定」就行了。

 

2、若是你使用的是iPhone的話

1. 首先要知道Fiddler所在的機器的IP地址:假如我安裝了Fiddler的機器的IP地址是:192.168.1.104
2. 打開IPhone 的Safari,訪問  http://192.168.1.104:8888, 點"FiddlerRoot certificate",而後安裝證書

3. IPhone上配置Fiddler,打開IPhone,找到網絡鏈接,打開HTTP代理,輸入Fiddler所在機器的IP地址(好比192.168.1.104)以及Fiddler的端口號8888。

 

最後,這種方法的一些優勢和缺點。

優勢:1)手機不須要root就能夠抓包;     2)能夠用真機抓包,有些程序是抗動態分析的,可以判斷本身運行在模擬器中。

缺點:1)必需要用WiFi鏈接(沒有路由器的話能夠在筆記本上下載個WiFi程序便可,網上有不少。或者臺式機使用移動WiFi,淘寶有不少,10來塊一個);    2)要抓包分析的應用程序必須本身支持代理服務器的設置。

相關文章
相關標籤/搜索