Wireshark系列之6 數據流追蹤

6308人閱讀服務器

如下內容主要是引用自合天網安中的一個實驗案例:黑客A經過ARP欺騙,使用Wireshark獲取了整個局域網內的網絡流量信息。無心之中,他發現有人在某個網站上上傳了一份文件。可是他不知道怎麼樣經過Wireshark去還原這份文件,沒辦法,他將監聽到的數據包保存爲了一份Wireshark的監聽記錄,打算去向你請教。你能幫助他找到那份上傳的文件嗎?網絡

咱們能夠本身準備一張圖片test.jpg,並隨便找一個容許上傳的網站,而後用Wireshark將上傳的過程抓包,這裏我已經將本身的抓包結果保存成文件catchme.pcapng,並在附件裏提供下載。網站

打開抓包文件以後,會發現數據記錄一共有344條。若是單純的從開始到結尾去一條一條的審計,是很是費力的事情。blog

image

這裏咱們使用顯示過濾器進行過濾,因爲上傳文件採用的是HTTP協議,於是使用過濾規則「http」,過濾以後發現數據包由原來的344個變成了137個,這樣就很容易幫咱們分析了。仔細分析,咱們會在第209條數據包的info中看到upload這個詞,咱們懷疑這條就是涉及到上傳的數據包。圖片

image

因爲上傳文件都是採用POST方法,於是咱們也可使用過濾規則「http.request.method==POST」進行更精確的過濾,這時就只有47個數據包了。於是掌握數據包過濾,是熟練掌握Wireshark的必備技能之一。get

雖然咱們看到了有upload關鍵字,有POST方法,可是咱們不能肯定是否是真的就是上傳文件的那個請求。雙擊第209號數據包進行專門分析,在應用層數據中能夠看到確實是上傳了文件,並且文件名是test.jpg。io

image

在傳輸層部分能夠看到,因爲文件比較大,TCP協議將其分紅了16個數據段Segment,每一個數據段都是一個獨立的數據包,點擊各個Frame,就能夠看到數據包中的內容。test

image

但問題是每一個數據包中都只包含了上傳文件的一部分,要想還原上傳的文件,就必須將這些被分片的數據包從新組合成一個總體。在Wireshark中提供了一項「數據流追蹤」功能,就能夠來完成這項任務。擴展

回到Wireshark的主界面,在209號數據包上點擊右鍵,選擇「追蹤流/TCP流」,request

image

這時整個TCP流就會在一個單獨的窗口中顯示出來,咱們注意到這個窗口中的文件以兩種顏色顯示,其中紅色用來標明從源地址前往目的地址的流量,而藍色用來區分出相反方向也就是從目的地址到源地址的流量。這裏顏色的標記以哪方先開始通訊爲準,通常狀況下都是由客戶端主動發起與服務器的鏈接,因此大都是將客戶端的通訊顯示爲紅色。

因爲上傳的文件都是在客戶端發出的數據部分提交的,於是咱們能夠過濾掉服務器發回的響應信息。在下方的數據流向中選擇從客戶端到服務器的流向,這時候就沒有響應部分出現了。

image

將數據流保存成原始文件,以便下一步處理。須要注意的是,在保存以前必定要將數據的顯示格式設置爲「原始數據」。

image

這裏將文件的擴展名指定爲.bin,以使用二進制形式保存文件。

image

相關文章
相關標籤/搜索