WireShark+Winhex:流量分析的好搭檔
這篇文章你將學會的知識點有
1、進階的wireshark的流量分析、解碼、追蹤流、導出文件
2、利用hackbar進行base64、URL編碼轉換
3、利用winhex還原流量中的文件
4、常見的圖像文件和壓縮文件的文件頭標誌,以及是否對多餘定界符敏感
講解
這裡用最近的一道安恆杯有難度的流量分析題為例作為講解,題目叫做「中國菜刀666」。題目流量包下載地址鏈接:https://pan.baidu.com/s/1c2WFQ3Q密碼:v0e7。格式是pcapng封裝,這裡用wireshark打開:
一共2139個分組,提到中國菜刀,想到可能與web相關,首先試試在上方過濾器中
輸入http過濾以顯示http分組
:流量分析
先隨意點擊一條報文,右鍵-追蹤流-http流我們能看到大量紅色和藍色的報文解析,紅色代表發出的,藍色代表伺服器回應的。我們能看到有一大串的base64_decode,後面都是字母數字,偶爾還
夾雜著「**
%2B」以及」%3D」,所以首先想到是URL**編碼
,先用hackbar的urldecode進行url解碼:這裡消除掉一些「%」轉義後變成了真正的base64編碼,我們用base64_decode再進行轉換:
這裡有好多處類似的轉換:
看到了最後的upload了麽?很有可能入侵過程中會上傳小馬,再用菜刀連,我們觀察到http報文條目也不多,拿到報文,根據一般的入侵思路和順序來反覆按照上文提到的方法不斷分析:
這裡有一句話木馬,驗證了入侵思路的猜想,這也就是為什麼我們過濾後的http報文有大量的1.php的名字,我們接著往上回溯,發現:
答案就在裡面,提示需要password,我們來查看流量原始數據,看看對應的文件類型:
這裡我們需要知道
50 4b 03是 zip壓縮文件的標誌
,一般來說,看到pk很有可能是zip壓縮文件,除此之外你還需要知道的:
50 4B 0304
:這是頭文件標記
14 00
:解壓文件所需
pkware
版本
00 00
:全局方式位標記(有無加密)
08 00
:壓縮方式
07 76
:最後修改文件時間
F2 48
:最後修改文件日期
有興趣的同學動手試試這是不是偽加密,當然後面提示的you need password暗示這裡不是偽加密,下面是
文件提取
,有兩種方案:這裡我們選擇方法一,
winhex的講解
在後面。我們順利保存文件為hello.zip當我們打開時,就會發現必須要輸入密碼:這裡有一點需要注意,如果你細心的話會發現,保存後的文件如果用winhex打開,
你會發現有3位定界符,這是wireshark自帶的
,為了區分各協議層之間的東西添加的,但是由於zip壓縮文件對定界符不敏感,直接向後識別50 4B 03,所以即便有定界符也可以順利打開文檔:我們這裡只要把定界符摸清楚,不論方法一還是方法二都是輕車熟路,
好啦,目前為止,這道流量分析才做完了一半,我們還需要知道解壓縮的password是什麼。回到報文中去,向上檢索,會發現一串很大的報文:這裡就要思考了沒這麼一大長串是什麼呢?視頻?音頻?我們需要牢記的是,
jpg、jpeg圖像文件都是以FFD8開頭,FFD9結束
。我們對應查看紅色方框內的信息發現,傳輸的是圖片對應的原始數據的16進位字元,也就是說,這裡傳輸的是對應的十六進位字元,而不是圖片!可見這道題的犀利。我們要保證頭腦清晰的是,我們只需用這些十六進位字元,就可以還原整張圖片,所以我們找到對應數據層區域z2的值右鍵複製值就可以了。接下來,就要用到winhex來還原這樣圖片:選擇新建一張5000位元組左右的文件,複製時選擇最後一個ASCII-HEX,選擇OK:
這裡注意的是,因為
圖片文件對定界符敏感
,如果在其他情況下複製原始十六進位,要去掉wireshark設計的3位定界符,否則無法正常打開文件!直接將定界符設置為00 00 00 也可以訪問,直接操作文件的十六進位碼是winhex的精髓!保存文件為XXX.JPG後打開:嫌麻煩的話用OCR工具直接識別裡面的字元,用它來打開zip壓縮文件即可
複習回顧
我們複習整個過程,我們注意到:
1、zip對定界符不敏感,圖片對定界符敏感,只要弄明白這個,不論那種方法都可以還原文件。
2、Zip壓縮包是真實存在的,而包含答案圖片卻是以對應的十六進位以text傳輸的。
3、題目是菜刀666,回溯整個流量,是先訪問了1.php,最後伺服器返回了拿站期間的一句話木馬,圖片是kali的,怪不得報文裡面有kali相關的deb文件,然而這一切都是干擾報文,真正重要的還是那個zip以及password圖片。
4、報文大多數是一次不能傳輸,分割為好多分片的,但事實上我們只要
分析其中一個分片,wireshark會自動幫我們把其它分片組合到一起
,所以我們能看到分片,但分析時是感覺不到的。我們這次介紹的知識點:
1、怎樣分析流量,追蹤流。
2、怎樣解碼base64、url。
3、兩種流量中提取文件的方法。
4、zip壓縮包以及jpg圖片文件的文件標識符,以及是否對定界符敏感。
5、用winhex還原保存流量中的文件。
文章中如有謬誤,或還有其他疑問,或者你還有更多的思路,請在評論中留言,歡迎交流。
*本文原創作者:康康你秋褲穿反啦,屬於FreeBuf原創獎勵計劃,禁止轉載
※針對「DorkBot」的樣本分析
※如何在2018年的網路世界裡保護自己和家人的信息安全
TAG:FreeBuf |