首頁 > 開發 > 綜合 > 正文

Web通信 分析工具 [推薦]

2020-10-08 16:17:25
字體:
來源:轉載
供稿:網友

如果把Web通信從上到下分為許多層――XMLHttpRequest層,HTTP層,TCP層, 那么這些工具可以分別抓取每個層的通信數據進行分析,結合使用極其強大。

2008/12/31:另外可以參考daniel同學的Web開發常用工具一文,相信會大有幫助哦。

XMLHttpRequest層:Firebug

適用范圍 Ajax應用程序
優點 使用方便,數據截取完整
缺點 只能分析XMLHttpRequest請求,其他類型的請求無能為力

Firebug應該是盡人皆知了。 它的控制臺能監視XMLHttpRequest請求,能看到完整的請求和應答的數據。 用它來調試Ajax程序是最好不過了。

HTTP層:Tamper Data
適用范圍 普通網頁,Ajax應用程序,Flash
優點 使用方便,適用范圍廣,任何HTTP請求都能截獲
缺點 只能截獲請求頭、請求內容、應答頭,得不到應答內容;涉及文件下載時效率大幅度降低

Tamper Data比Firebug進了一步, 只要是HTTP請求,它都能抓下來,可惜的是看不到應答內容。 適用于分析請求流程、請求參數、請求數據、重定向URL。 對于非Ajax程序如普通網頁、Flash、ActiveX等程序,用Tamper Data來分析十分方便。

HTTP層:burpsuite
適用范圍 普通網頁,Ajax應用程序,Flash
優點 適用范圍廣,截取數據完整,不挑網卡
缺點 使用稍稍麻煩

burpsuite中的proxy功能用于分析Web通信十分好用。 它的原理是架設一個代理服務器,讓瀏覽器通過代理來發送請求,代理就可以截獲數據了。

使用方法為:
  1. 配置proxy,然后設置瀏覽器使用它的proxy
  2. 訪問想要抓取的那個網頁
  3. burp suite的proxy中就會看到請求內容,在這里即可詳細地分析請求。
  4. 如果想繼續分析應答,可以右鍵點擊請求內容,選send to repeater
  5. 切換到repeater標簽,點【go】按鈕發送請求,在下方就可以看到應答

TCP層:wireshark

適用范圍 任何網絡程序
優點 適用范圍廣,截取數據完整
缺點 使用麻煩;不能使用loopback網卡

如果以上方法都不管用,就要祭出終極武器wireshark(原名ethereal)了。 它從網絡的最底層入手,可以截獲任何類型的網絡通信,而不僅僅是HTTP協議。 比如要開發一個郵件程序,需要分析服務器端腳本與POP3服務器之間的通信, 那就非得wireshark出馬不可了。

使用方法:
  1. 在wireshark中選擇抓取物理網卡;
  2. 讓應用程序發請求;
  3. 在wireshark中停止抓??;
  4. 從抓到的包一覽中找出剛才應用程序發出的請求,右鍵點擊選擇 Follow TCP Stream,就能看到該請求的完整內容。

這個工具的不足之處是它不能抓取loopback的網卡,也就是說, 如果你的程序連接的是位于localhost或127.0.0.1的服務器, 那wireshark是抓不到的。解決方法是,讓程序通過真實物理網卡去連別的機器, 或是使用虛擬機的虛擬網卡也行。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
金玫玫床戏