日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

图解用Wireshark进行Http协议分析

發(fā)布時間:2025/4/14 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 图解用Wireshark进行Http协议分析 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一 安裝WireShark

??? 安裝完成后,運行,如果出現(xiàn)NPF未運行的提示,如下圖;說明可能是裝的時候WinPcap未裝上;一般安裝Wireshark會同時自動安裝Winpcap;

?

?

如果裝了Winpcap,在C:\Windows\System32\drivers下,會出現(xiàn)npf.sys;另外系統(tǒng)帶有npfs.sys,不是一個東西;

?

如果是npf服務(wù)未運行,在命令行執(zhí)行net start npf啟動服務(wù)。

?

從菜單中查看一下可用的連接,本機用網(wǎng)卡進(jìn)行的本地連接,只有一個連接,不同的配置,或者無線連接,此處可能會出現(xiàn)多個連接;

?

從菜單看一下捕獲選項,Capture Filter按鈕后的文本框為空,沒有捕獲過濾器;可以設(shè)置了過濾器再捕獲,也可以先捕獲,再過濾;此處采用后者;

?

二 進(jìn)行捕獲分析

點擊前面有個綠色標(biāo)志的Start按鈕開始捕獲;

?

捕獲一小會點紅色停止按鈕停止;不到一分鐘,已經(jīng)有600多個包;當(dāng)前本機正在上網(wǎng),打開了多個網(wǎng)頁;

?

在過濾表達(dá)式框中輸入 http,只查看http協(xié)議的包,如下圖; 由于所有打開的網(wǎng)頁都停止刷新好長時間了,http協(xié)議的包只有兩個;

?

這兩個包是本機和117.79.93.218之間交互的,百度一下此IP,如下圖;這個應(yīng)該是百度的IP;

上述的一個包是 http ?200;?
這表示服務(wù)器已成功處理了請求。通常,這表示服務(wù)器提供了請求的網(wǎng)頁。

?

GET /socket.io/1/xhr-polling/g6BvKEWe5k1WjFgt595_?t=1427092879908

這一段是握手后的socket.io的請求;表明瀏覽器已經(jīng)使用了新的HTML 5的websocket技術(shù);

?

查看一下本機的IP,網(wǎng)關(guān),DNS等參數(shù);控制面板-網(wǎng)絡(luò)和共享中心-本地連接-詳細(xì)信息,顯示如下圖的本機IP配置信息;

?

上圖顯示本機連接的網(wǎng)關(guān)是192.168.1.254, 在過濾表達(dá)式框輸入表達(dá)式查看包含此IP的包,一個也無;

?

但是卻有大量的本機和192.168.1.250之間交互的包;應(yīng)該是網(wǎng)管用某種方法把192.168.1.250映射為了192.168.1.254;這是網(wǎng)管干的,不是我干的;

以后的包中出現(xiàn)192.168.1.250,就是網(wǎng)關(guān)了;在此處來說,就是路由器;單位內(nèi)部的電腦通過此路由器上網(wǎng);

?

下面來找一下TCP建立連接的三握手過程;

輸入tcp.flags.syn==1或tcp.flags.syn==0x02 過濾一下;這兩個表達(dá)式結(jié)果是一樣的;結(jié)果如下圖;

?

單個的一個SYN,它表示的是建立連接;?SYN和ACK同時為1,它表示的就是建立連接之后的響應(yīng);

下圖中顯示有三個TCP連接在建立;

?

看一下第二個連接,其包號為195;列出包號為195、196、197的三個包看一下,其內(nèi)容為:

SYN

SYN+ACK

ACK

果然這是一個TCP連接的建立過程;前兩個上面說了,第三個 ACK 是第三次握手的確認(rèn);到此一個TCP連接建立了;之后才可以進(jìn)行HTTP協(xié)議的收發(fā);HTTP是建立在TCP基礎(chǔ)之上的;

?

三 重新捕獲一次再分析

? ? 關(guān)閉所有打開的網(wǎng)頁;再打開瀏覽器;此次自動打開的是搜狗首頁,然后在搜狗首頁輸入 軟件工程 四個字,點擊搜索;

再捕獲一次,然后停止再分析;

輸入如下圖的表達(dá)式,去除掉 ip中包含本機IP和192.168.1.250的包,看下有些什么;發(fā)現(xiàn)有很多廣播包;這個是底層的ARP協(xié)議;ARP在TCP之下一層;

?

? ? ?另外還有很多SSDP包;SSDP ,簡單服務(wù)發(fā)現(xiàn)協(xié)議 ;NOTIFY * HTTP/1.1/r/n,就說明這個SSDP消息是個通知消息;

?

百度一下百度的IP,果然能查到;

?

網(wǎng)頁上還顯示有一種叫IP數(shù)據(jù)庫的東西;看來里面包括了大量的IP信息;

?

下面顯示捕獲的包對106.120.151.162獲取圖片;

?

用下面網(wǎng)頁查一下106.120.151.162

? ? 原來這個正是搜狗的首頁;?

?

寫個復(fù)雜點的過濾表達(dá)式;

!arp and !udp and !(ip.src==192.168.1.134 and ip.dst==192.168.1.250) and !(ip.src==192.168.1.250 and ip.dst==192.168.1.134) ?and (http) and (http.request.method=="GET") 看下過濾的結(jié)果;

以上表達(dá)式的含義是:去除arp, 去除udp,去除?192.168.1.134 and 192.168.1.250 之間互發(fā)的包,再取http的請求方法為GET的包;

?由下圖可以看到,對搜狗進(jìn)行了很多的GET,js腳本,圖片等等,是在不同的http包中傳過來的;

?

下面來做個難一點的;由于前面輸入了 軟件工程 四個字進(jìn)行搜索,找找捕獲的包中,包含 軟件工程 四個字的包;

在上述的長過濾表達(dá)式尾部再補上?and (http contains "軟件工程");沒有定位到一個包;表達(dá)式包含中文,會不會有問題;

向搜狗發(fā)送的URL大致是下面形式,

http://www.sogou.com/sie?hdq=Af71016-4553&query=軟件工程&p=50040111&oq=&ri=-2

輸入 http contains "query=",即查找http請求字符串中包含 query= 的包;定位到3198號包;如下圖;

這個是服務(wù)器返回成功的http 200包;

?

細(xì)致一點,再單獨輸入?http contains "軟件工程" 查詢,這次定位到一個包,如下圖;3615號包;

?

觀察窗格的下部,捕獲到的二進(jìn)制數(shù)據(jù)和對應(yīng)的字符串內(nèi)容;00e0 行顯示,query= 的后面,是......,并不是 軟件工程 四個字;當(dāng)然由字符串內(nèi)容可知,這肯定是一個發(fā)送帶查詢參數(shù)的URL的包;

因為網(wǎng)頁查詢參數(shù)是UTF-8編碼的;下面從網(wǎng)上找到 軟件工程 四個字的UTF-8編碼;再對比00e0行的16進(jìn)制數(shù);

?

? ?

? ? 如上圖;程 字的UTF-8編碼為e7 a8 8b,正是 該行的最后三個16進(jìn)制數(shù);再比對;由圖可見四個字都對上,該行的后12字節(jié) 正是 軟件工程四個字。那么,65 72 79 3d 就是 ery= 的編碼了。

? ? 分析到此結(jié)束;我捕獲的包可以下載分析;

http://pan.baidu.com/s/1i3ioQWH

也可以自己捕獲包分析。

?

總結(jié)

以上是生活随笔為你收集整理的图解用Wireshark进行Http协议分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。