轉帖|行業資訊|編輯:龔雪|2016-05-31 15:08:36.000|閱讀 1121 次
概述:Fiddler是微軟推出的一款很強大很好用的web調試工具。本文將主要介紹Fiddler在抓取移動終端數據包方面的應用。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Fiddler是微軟推出的一款很強大很好用的web調試工具。它能記錄所有客戶端和服務器的HTTP和HTTPS請求,允許監視,設置斷點,甚至修改輸入輸出數據。
Fiddler還包含了一個強大的基于事件腳本的子系統,并且能使用.net語言進行擴展。
本文將主要介紹Fiddler在抓取移動終端數據包方面的應用。 關于Fiddler工具的介紹,點擊這里。
與另一款常用的手機端抓包工具Wireshark相比,Fiddler有很多類似的地方。譬如:適用于各種有wifi功能的終端(手機、平板等),且設備均無需root或越獄;均使用PC端來獲取和展示所抓的數據包。不同之處在于,Wireshark是通過使被測終端連接作為wifi熱點的PC無線網絡來抓取數據包,而Fiddler是通過將PC與被測終端置于同一局域網(通常是同一個無線網絡)下并設置被測終端網絡代理來抓取數據包。
相較于Wireshark,Fiddler的優勢在于可以攔截發出或者收到的HTTP/HTTPS包,并可以修改其Request和Response數據。然而,Fiddler的局限性也非常明顯,它只能用于抓取HTTP和HTTPS包,而不能抓取其他類型的網絡包。
Fiddler是以代理web服務器的形式工作的。
從上圖可以看出,Fiddler使用代理方式,讓客戶端所有數據流都發給它,然后轉發給目標server,目標server的回包發給Fiddler,再由Fiddler轉發給客戶端。所以不管是Request還是Respone數據包都經過了Fiddler,Fiddler能進行截獲和分析。正是它這樣架構優勢,才有其他工具無法做到的強大功能,只要是支持HTTP代理配置的終端,均支持抓包。
Fiddler工作于OSI七層網絡模型中的應用層,使用代理地址:127.0.0.1, 端口:8888。當啟動Fiddler時會自動設置代理, 退出的時候它會自動注銷代理,這樣就不會影響別的程序。不過如果Fiddler非正常退出,這時候因為Fiddler沒有自動注銷,會造成網頁無法訪問。解決的辦法是重新啟動下Fiddler。
首先,需要確保安裝Fiddler的電腦與待抓包手機在同一局域網內(通常是連同一個wifi),因為要將手機的代理指向PC端,不能互相訪問是不行的。
使用Fiddler抓取手機端數據包的步驟如下:
1) Fiddler開啟遠程連接。Fiddler主菜單-->Tools-->Fiddler Options-->Connections Tab頁,勾選Allow remote computers to connect
2) 重啟Fiddler
3) 獲取PC的IP地址
4) 設置手機代理,指向PC的IP地址,端口號填Fiddler默認的8888,保存即完成了代理的設置,此時就可以用Fiddler去抓取手機端的HTTP數據包了 。
Fiddler界面布局如下:
Inspectors tab下有很多查看Request或Response的消息。其中Raw Tab可以查看完整消息,Headers Tab只查看消息中的Header。
設置斷點修改Request
設置斷點有如下兩種方法:
方法一:
這種方法缺點在于會中斷所有的會話。
其取消方法為:Rules-->Automatic Breakpoints-->Disabled。
方法二:
其取消方法為:命令行輸入bpu。
設置斷點修改Response
設置斷點的方法也有兩種:
方法一:
這種方法的缺點在于會中斷所有的會話。
其取消方法為:Rules-->Automatic Breakpoints-->Disabled
方法二:
其取消方法為:命令行輸入bpafter。
會話比較功能
選中2個會話,右鍵點擊Compare,可以用WinDiff來比較兩個會話的不同。
查詢會話功能
快捷鍵CTRL+F打開Find Sessions對話框,輸入關鍵字進行查詢。
還可以使用顏色來標識查詢到的會話。
保存會話功能
選擇想要保存的會話,右鍵save-->Selected Sessions。
解碼功能
某些Response中的HTML是亂碼的,這一方面可能是因為HTML被加密了,我們可以通過如下方法進行解碼:
腳本配置功能
Fiddler包含了一個腳本文件可以自動修改HTTP Request和Response。這樣我們就不需要手動地下"斷點"去修改了。
實際上它是一個腳本文件CustomRules.js,位于: C:\Users\[your user]\My Documents\Fiddler2\Scripts\CustomRules.js下。你也可以在Fiddler中打開CustomRules.js 文件,啟動Fiddler,點擊菜單Rules->Customize Rules。
Fiddler Script的官方幫助文檔必須認真閱讀,地址點擊這里。
Fiddler可以截獲各種移動終端發出的HTTP/HTTPS請求,還能截獲各種瀏覽器發出的HTTP/HTTPS請求。具有功能強大,完全免費,適用于所有的平臺,且適用于所有 的瀏覽器等優點,是一款強大實用且好用的抓包工具。
原文轉載自:
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn