Volatility記憶憶體取證分析工具使用筆記

之前參加一個資安社團的線上教學,內容是關於習藍隊安全系列(初學者),內容中有提到

Volatility工具使用,因為資安方面我也不熟所以聽課來學習,感覺滿有趣的,所以做了一

下上課筆記。

Volatility為開源的Windows,Linux,MaC,Android的記憶體取證分析工具,由python編寫成,命令列操作,支援各種作業系統.

安裝:

在windows 10 安裝

安裝 Python 3.XX 環境

https://www.python.org/downloads/

下載Python 3.10.5 執行安裝

請勾選 [Add Python 3.10 to PATH]

clip_image002

安裝完成

clip_image004

安裝其他套件

開啟命令提示字元執行 pip install pefile

clip_image006

安裝git

載點https://git-scm.com/download/win

clip_image008

Git 安裝完成

clip_image010

Git安裝 Volatility3

git clone https://github.com/volatilityfoundation/volatility3.git

clip_image012

另外下載Volatility2.6來使用

https://www.volatilityfoundation.org/26

因我是在win10環境所以下在windows x64

下載後解壓縮後是一個執行檔

clip_image014

Volatility2 and Volatility3 使用上的一些說明參考

https://blog.onfvp.com/post/volatility-cheatsheet/

藍隊 BlueTeam Challenges 練習網站

https://cyberdefenders.org/

練習

實作題目,員工收到一份安全更新信件,進行更新之後,機器開始異常,嘗試分析記憶體的內容找到蛛絲馬跡。

https://cyberdefenders.org/blueteam-ctf-challenges/88

在該網站註冊可以下題目範本

clip_image016

下載後解壓縮會看到三個資料夾裡面有相關的.vmss 檔案

clip_image018

要如何使用呢?

利用vmss2core工具將.vmss 轉換成memory.dump 來進行分析

下載網址

https://flings.vmware.com/vmss2core?download_url=https%3A%2F%2Fdownload3.vmware.com%2Fsoftware%2Fvmw-tools%2Fvmss2core%2Fvmss2core-sb-8456865.exe

clip_image020

進行轉換

vmss2core.exe -W .\Bule\target1\Target1-1dd8701f.vmssclip_image022

clip_image024

clip_image026

完成後,會產生memory.dump檔案後,就可使用此檔案來進行分析

clip_image028

執行Volatility工具先確認轉出來題目dump 是哪個版本的作業系統

volatility2.X 版本=>執行直令如下 : -f 為dump路徑 帶參數imageinfo

volatility_2.6_win64_standalone.exe -f c:\dump\memory.dmp imageinfo

clip_image030

Volatility3執行指令如下 : -f 為dump路徑 帶參數windows.info

vol.py -f c:\dump\memory.dmp windows.info

clip_image032

Q1:

找出哪個e-mail address誘騙員工安裝安全性更新

clip_image034

與e-mail 相關那可能需要從outlook 下手或許有些蛛絲馬跡

Volatility2.x:

可以使用pslist 列出所有執行程序 –profile 就是前面步驟imageinfo找到的Win7SP1x86

執行指令如下

volatility_2.6_win64_standalone.exe -f c:\dump\memory.dmp –profile=Win7SP1x86 pslist

clip_image036

有看到outlook.exe執行程序且PID為3196

clip_image038

有看到outlook.exe 在執行那如果是exchange環境應該會又.ost檔

此時可以利用 filescan 參數才掃描dmup中的檔案

volatility_2.6_win64_standalone.exe -f c:\dump\memory.dmp –profile=Win7SP1x86 filescan

clip_image040

因掃出來太多不好搜尋所以執行filescan後將結果寫入一個.txt(指令如下)

volatility_2.6_win64_standalone.exe -f c:\dump\memory.dmp –profile=Win7SP1x86 filescan >file.txt

clip_image042

開啟file.txt後直接搜尋.ost

找到兩個outlook2.ost.tmp and outlook.ost

理論上應該是outlook2.ost才是需要的.tmp 是開啟outlook程式產生的暫存檔

clip_image044

clip_image046

竟然需要這個ost 可以使用 dumpfiles 來匯出記憶體中的暫存檔

參數 dumpfiles -Q 0x000000003fc61be0 -D ./

=> 0x000000003fc61be0 => 此為前面步filescan列出來offset(P)欄位(應該是記憶體定址位置)

=>D c:\files\ 匯出檔案存放位置

=>  -u, –unsafe Relax safety constraints for more data

volatility_2.6_win64_standalone.exe -f c:\dump\memory.dmp –profile=Win7SP1x86 dumpfiles -Q 0x000000003fc61be0 -D c:\files -u

clip_image048

匯出檔案如下圖(但附檔名不是.ost) (0KB不用理會)

clip_image050

手動改.dat 變成.ost

clip_image052

利用sysinfotools ost viewer 開啟ost

clip_image054

點到inbox 果然有一封信件疑似要用戶更新vpnclient郵件

寄件人為 => th3wh1t3r0s3@gmail.com

clip_image056

以上是簡單筆記一下~~ 用法其實還是有很多,可以繼續挑戰該聯繫網站的題目來練習。



本篇瀏覽人數: 2102
分類: 資訊安全相關。這篇內容的永久連結

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *