fiddler Android下https抓包全攻略

 fiddler的http、https的抓包功能很是強大,可很是便捷得對包進行斷點跟蹤和回放,可是普通的配置對於像招商銀行、支付寶、陌陌這樣的APP是抓不到包的,須要一些特殊的配置,本文把fiddler Android下https抓包的詳細配置都羅列出來,供你們參考。瀏覽器

1、普通https抓包設置服務器

先對Fiddler進行設置:網絡

技術分享

勾選「CaptureHTTPS CONNECTs」,接着勾選「Decrypt HTTPS traffic」。同時,因爲咱們是經過WiFi遠程連過來,因此在下面的選項框中選擇「...fromremote clients only」。app

若是你要監聽的程序訪問的HTTPS站點使用的是不可信的證書,則請接着把下面的「Ignore servercertificate errors」勾選上。函數

技術分享

監聽端口默認是8888,你能夠把它設置成任何你想要的端口。勾選上「Allow remote computersto connect」。代理

爲了減小干擾,能夠去掉「Act assystem proxy on startup」。server

3)設置Android設備,添加代理服務器支付寶

保證PC所在網絡和Android所用的wifi是相通的。rem

獲取PC的局域網IP地址io

技術分享

 

這裏的IP是192.168.0.52。

下面來設置Android設備上的代理服務器:

打開WiFi設置頁面,選擇要鏈接的AP,而且長按,在彈出的對話框中,選擇「修改網絡」。

在接下來彈出的對話框中,勾選「顯示高級選項」。在接下來顯示的頁面中,點擊「代理」,選擇「手動」。

代理服務器主機名設爲PC的IP,代理服務器端口設爲Fiddler上配置的端口8888,點"保存"。

這樣就能夠對普通的https抓包了。

技術分享

2、過證書校驗

   上面的設置還不能抓像招商銀行、支付寶等APP的https包,由於這些APP對https證書進行了校驗,還須要將Fiddler代理服務器的證書導到Android設備上才能抓這些APP的包。

導入的過程:

    打開瀏覽器,在地址欄中輸入代理服務器的IP和端口,會看到一個Fiddler提供的頁面:

技術分享

點擊頁面中的「FiddlerRootcertificate」連接,接着系統會彈出對話框:

技術分享

輸入一個證書名稱,而後直接點「肯定」就行了。

3、使其在HttpURLConnection下正常抓包

     如今招商銀行還有支付寶,均可以抓包了,可是對於像陌陌這樣使用HttpURLConnection進行通信的APP仍是無能爲力

還須要對fiddler進行以下設置:

點擊"Rules->CustomizeRules";

在這個函數OnBeforeResponse後面添加

if (oSession.oRequest["User-Agent"].indexOf("Android")> -1 && oSession.HTTPMethodIs("CONNECT")) {oSession.oResponse.headers["Connection"] = "Keep-Alive"; }

以下圖所示:

技術分享

這裏的" Android"可替換爲User-Agent裏的其它字符,確保匹配上User-Agent就行

如下爲抓包示例:

 

招商銀行app抓包

技術分享

支付寶app抓包

 技術分享

陌陌app抓包

技術分享

相關文章
相關標籤/搜索