Android Fiddler抓包

什么是Fiddler

Fiddler是http調試代理,他能夠記錄所有的你電腦與互聯網之間的通訊,Fiddler也可以讓你檢查所有的http通訊,設置斷點,以及fiddler所有的"進出數據"。(指: cookie,html,js,css等文件,這些都是你可以隨意修改的)

Fiddler包含一個簡單卻功能強大的基于JScript .NET事件腳本子系統,他非常靈活性非常棒,可以支持眾多的http調試任務。Fiddler是用C#寫出來的。

filder軟件下載: https://www.telerik.com/download/fiddler
filder學習網站: https://www.bbsmax.com/R/gVdnmPON5W/

Fiddler的工作原理

fiddler是將自己設置為一個代理服務器,默認監聽: 127.0.0.1:8888端口,同時將瀏覽器的http、https協議設置為使用代理服務器,也就是使用自己作為瀏覽器的代理服務器。

fiddler_principle.png
  • 打開fiddler后,fiddler自動為你設置的http代理
fiddler_http_proxy.png
  • 抓取Andriod與IOS數據包的原理也是一樣,在Andriod上設置Http代理為Fiddler代理服務器;

Fiddler的使用

(1) 從上面的下載地址下載最新的fiddler,安裝軟件。
設置fiddler: Tools菜單下Fiddler Options選項,選擇Connections,勾選Allow remote computers to connect;

fiddler_options.png

該設置是指Fiddler允許遠程電腦連接,設置好后重啟Fiddler;
在命令行下使用ipconfig查看本機地址,如:10.0.0.123;

android_setting.png

(2) 手機代理設置

  • Andriod設置

設置->WLAN,找到當前正在使用的Wifi,長按該連接,彈出選項后選擇 “修改網絡” ,然后勾選實現高級選項
在代理選擇框中選手動,在代理服務器主機名中填入剛剛在電腦上看到的地址:10.0.0.123,端口填8888,然后點擊保存;

  • IOS設置

這里使用的是IOS 9,點擊設置圖標,選擇無線局域網,找到當前連接的wifi點擊后面的!號圖標,在HTTP代理中選擇手動,
服務器地址填,電腦的地址:10.0.0.123,端口填8888,然后即可,IOS中設置好后自動保存;

(3) 安裝證書

由于有些App有使用了HTTPS證書,所以在Andriod、IOS上沒有安裝Fiddler證書就可以回出現App無法使用的情況;

安裝證書,在瀏覽器中輸入:10.0.0.123:8888(你電腦的IP地址),點擊FiddlerRoot certificate,然后安裝證書;

mobile_certificate.png

Fiddler界面介紹

Fiddler的主界面分為 :
1. 工具面板
2. 會話面板
3. 監控面板

fiddler_panel.png
工具面板
工具面板.jpg

說明注釋、重新請求、刪除會話、繼續執行、流模式/緩沖模式、解碼、保留會話、監控指定進程、尋找、保存會話、切圖、計時、打開瀏覽器、清除IE緩存、編碼/解碼工具、彈出控制監控面板、MSDN、幫助

兩種模式

  • 緩沖模式(Buffering Mode)Fiddler直到HTTP響應完成時才將數據返回給應用程序。可以控制響應,修改響應數據。但是時序圖有時候會出現異常
  • 流模式(Streaming Mode)Fiddler會即時將HTTP響應的數據返回給應用程序。更接近真實瀏覽器的性能。時序圖更準確,但是不能控制響應。

回話面板

回話面板.png

回話面板上對應字段的含義

回話面板狀態字段含義.png
回話面板圖標.png

監控面板

監控面板.png

默認情況下,一旦開啟 Fiddler,就會走它的代理。有時候你想暫停這種行為,那請看到左下方有個狀態欄。

fiddler_capturing.png

單擊一下左邊的 Capturing,就能停止攔截,想再開啟,就再單擊一下。

它的右邊是會話的來源,可以設置僅僅攔截瀏覽器發出的請求。

再右邊有三種選擇:1、在請求發出之前進行斷點;2、在響應回來的時候進行斷點;3、不設斷點。

控制臺Fiddler的左下角有一個命令行工具叫做QuickExec,允許你直接輸入命令。
常見得命令有:

fiddler_quick_order.png

例子bpu http://www.qq.com,這種方法只會中斷http://www.qq.com,消除斷點的方法就是在命令行中輸入命令 bpu。

Request 中有三個比較厲害的

  • Inspectors:選中之后,可以詳細查看請求的 Headers、Cookies,并且可以對請求體格式化,以 WebForms、JSON、Raw 等方式查看。具體每種方式的區別可以自己感受一下。一般來說,想要查看請求的參數的話,WebForms 的方式就挺直觀的。
inspector.png
  • AutoResponder:這個地方可以模擬服務端返回值。顧名思義,當瀏覽器發出的請求滿足你設置的匹配條件的話,Fiddler 就自動響應了,并不需要走網絡。

模擬返回值
想要模擬返回值,首先要設置響應斷點。

bpafter /foo

模擬1.png

當滿足條件的響應回來時,選中該會話,就可以看到如圖所示的面板。選擇 Raw 視圖(其他也可以,Raw 可以修改更多的內容),然后可以清楚地看到,服務端返回的內容是

{name: 'Jarvis', gender: 'M'}
把上面的 M 修改成 F,然后單擊“Run to Completion”,就能把修改后的返回值送還給瀏覽器了。

自動化呢?沒錯,人往往喜歡偷懶,如果每次要修改,豈不是很麻煩。

自動化1.png
  • 選中想要攔截的請求,比如 /api/foo
  • 然后在 Request 面板選擇 AutoResponder
  • 再選擇 “Add Rule”
  • 在最下面的下拉框選擇 “Create New Response...”
  • 然后 “Save”
  • 此時會彈出一個對話框,跟 Response 面板的布局一樣,在上面可以編輯返回值。

或者你直接把定義好的返回內容保存成文件,在剛才那個下拉框中選擇該文件就行了。

  • Composer:模擬向服務端發送請求,用于測試服務端接口是否正確。
    模擬請求
    右側的 Composer 窗口可以模擬發送請求。
模擬請求1.png

剛打開這個窗口的時候,應該是一片空白。你可以從左側會話列表拖一個會話過去,這樣就有預填的信息了,修改一下參數,點“Execute”,piu,一條請求就發送出去了。

接著在會話列表就可以查看服務端的返回值。

Response 中常用也列三個吧

  • Headers:響應頭。比如 Content-Type、Access-Control-Allow-Origin 等這些屬性都在這個 tab 展示。
  • Cookies:查看由服務端帶回來的 cookie。
  • JSON:將返回的內容以 JSON 格式顯示。這個很有用,特別是當服務端返回的內容本身就是 JSON 的時候。

最后附上Fiddler官方文檔

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,882評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,208評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,746評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,666評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,477評論 6 407
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,960評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,047評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,200評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,726評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,617評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,807評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,327評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,049評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,425評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,674評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,432評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,769評論 2 372

推薦閱讀更多精彩內容

  • Fiddler_官方網站Fiddler_官方文檔Fiddler_官方視頻Fiddler_官方插件1、Filddle...
    52Alice閱讀 7,763評論 0 10
  • 前言fiddler是一個很好的抓包工具,默認是抓http請求的,對于pc上的https請求,會提示網頁不安全,這時...
    胖子愛豬蹄閱讀 12,687評論 4 22
  • 1、簡介與安裝 Fiddler是一個http調試代理,它能夠記錄所有的你電腦和互聯網之間的http通訊,Fiddl...
    有錢且幸福閱讀 1,275評論 0 6
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,781評論 18 139
  • 6組家長助教 #父母的高度是孩子的起點# 加油倩銘 9歲 踐行打卡 24/30 孩子第三個30天目標: 1.放學先...
    蝸牛想有雙翅膀閱讀 169評論 0 1