1. 程式人生 > >Fiddler抓包使用教程-掃盲篇

Fiddler抓包使用教程-掃盲篇

使用教程 服務 情況 請求 抓包 不同 信息 組成 and

轉載請標明出處:http://blog.csdn.net/zhaoyanjun6/article/details/72823370
本文出自【趙彥軍的博客】

1、什麽是抓包?

不同主機之間的數據通信都是通過網絡來進行傳輸,對那些在網絡上傳輸的數據(發送、請求的數據)進行截獲、編輯、轉存等操作叫做抓包。抓包可以是抓取電腦端請求的數據,還可以抓取移動端(手機APP)的數據包。

2、為什麽要進行抓包?

通過對網絡上傳輸的數據進行抓取,可以對其進行分析,對於軟件的Debug很大的幫助。當然也可以通過抓取用戶發送的涉及用戶名和密碼的數據包來獲取用戶的密碼。

3、能夠進行抓包的技術原理是什麽?

一般情況下,數據按照各種網絡協議按照一定的格式在網絡上進行傳輸,網絡上傳輸的數據是以幀為單位,在對需要發送的數據進行包裝的時候,會把數據的接收方、發送的的地址(MAC地址、IP地址等)一起進行包裝並進行發送。根據發送方和接收方的地址,會有一條數據包的傳輸路徑,在這條路徑上,發送的數據包,會經過網絡上很多臺主機,標準的TCP/IP協議是這樣處理的:當有數據經過主機時,主機會通過存放在數據包裏面的地址來進行判斷,這個數據包是否是發送自己的,如果不是發給自己的,主機就不會對它進行解析,簡單的進行丟棄(轉發)。如果是發送給自己的,那麽主機就會對其進行解析和存儲。

如果想要存儲那些不是發送給自己的數據包,可以把網絡適配卡設置為雜亂模式。這樣它就會接收經過它的每一個數據包了。

4、常用的抓包工具有哪些?

Charles、mitmproxy、Fiddler、WireShark、TcpDump

5、常用的抓包工具對比

TcpDump

Android平臺下的網絡數據抓包工具,Android模擬器中自帶 TcpDump 文件。用 TcpDump 對網絡數據抓包,手機不用走代理——將網絡數據包添加到 WireShark 中分析即可。

  • 缺點:

手機必須獲取 root權限;
不能查看實時通信數據——因為抓取的是 dump出來的文件,而不能實時數據交互;
獲取的數據很多,分析時需要過濾、只查看真正有用的信息。

WireShark

PC端截獲、分析通過該網卡的所有網絡通信的數據包(針對移動端時候,就要對移動端設置 代理服務器)強大的工具,完整查看網絡中的每層、每個協議、每個數據包的詳細組成信息;TCP、UDP、HTTP、HTTPS等協議的數據包均可獲取;

  • 缺點:

獲取的信息太多,需要手動過濾、進行分析。
只能查看,不能修改、重發送網絡數據包。

Fiddler

HTTP協議的代理工具,抓取、分析電腦中所有進出該網卡、與網絡進行數據交互的數據(針對移動端抓包時,需要設置代理服務器),主要針對的是 HTTP/HTTPS協議;能夠清晰查看 數據包 中的內容——HTTPS中的數據包可以解密出來;簡單易操作,選中後即可修改Response結果;所見即所得,修改後馬上可以看到效果

  • 缺點:

只適用於一次請求,下次請求需要重新設定。

手動修改需要花費時間,如果程序等待超時,本次設定的Response結果失效

Fiddler抓包使用教程-掃盲篇