windows下的volatility取證分析與講解
volatility(win64)
1.下載
volatility
下載地址:(我下載的版本2.6,並把名字稍微改了一下)
Release Downloads | Volatility Foundation
windows版
2.使用
1.檢視基本資訊
檢視映象的基本資訊,使用的時候可以將這個軟體和需要取證的映象放到一起
例如:
開啟終端,輸入命令,
./volatility -f memory.img imageinfo
可以看到各種資訊,標出的幾個是比較重要的
2.檢視程序
./volatility -f memory.img --profile=Win2003SP1x86 pslist
profile具體內容根據實際檔案為準,pslist應該比較好理解就是程序的列表的意思。
tips:
把pslist可以替換成完成不同的功能
psxview : 可檢視一些隱藏程序
pstree : 以樹的形式來列出正在進行的程序,不會顯示出隱藏或未連結的程序(套神說的)
psxview:
pstree:
3.檢視映象cmd的歷史命令
./volatility -f memory.img --profile=Win2003SP1x86 cmdscan
4.檢視指令的輸入和輸出
./volatility -f memory.img --profile=Win2003SP1x86 consoles
5.列出所有命令列下執行的程式
./volatility -f memory.img --profile=Win2003SP1x86 cmdline
這個命令的輸出內容就很多了
6.顯示程序許可權
./volatility -f memory.img --profile=Win2003SP1x86 privs
這個命令輸出內容巨多
7.顯示環境變數
./volatility -f memory.img --profile=Win2003SP1x86 envars
8.找出所有檔案
./volatility -f memory.img --profile=Win2003SP1x86 filescan
9.找特定名稱的檔案
搭配grep.exe使用
下載grep.exe並放到當前資料夾下
./volatility -h memory.img --profile=Win2003SP1x86 filesacn | findstr "flag"
10.找特定型別的檔案
./volatility -h memory.img --profile=Win2003SP1x86 filescan | ./grep.exe -E “png”
11.通過相應的程序能直接dump出相關的檔案
./volatility -f memory.img --profile=Win2003SP1x86 memdump -p xxx(PPID) --dump-dir=./
./volatility -f memory.img --profile=Win2003SP1x86 memdump -p 1992 --dump-dir=./
因為前面顯示程序的命令中有1992這個PPID
再隨便dump一個看看
./volatility -f memory.img --profile=Win2003SP1x86 memdump -p 1096 --dump-dir=./
12.檢視系統正在執行的編輯本
./volatility -f memory.img --profile=Win2003SP1x86 editbox
13.匯出系統的登錄檔
./volatility -f memory.img --profile=Win2003SP1x86 dumpregistry --dump-dir=./registry/
14.檢視並匯出螢幕的截圖
【需要安裝PIL庫】
安裝PIL庫:
win+R,輸入cmd,開啟終端,輸入
pip install PIL
或者
easy_install Pillow
實在不行自行百度,這裡不再贅述
./volatility -f memory.img --profile=Win2003SP1x86 dumpregistry --dump-dir=./registry/ screenshot -D ./
15.檢視剪貼簿資料
./volatility -f memory.img --profile=Win2003SP1x86 clipboard
加一個-v可以匯出相關的資料
./volatility -f memory.img --profile=Win2003SP1x86 clipboard -v
這個檔案沒有剪貼簿內容
16.檢視瀏覽器的歷史記錄
./volatility -f memory.img --profile=Win2003SP1x86 iehistory
17.檢視使用者名稱
./volatility -f memory.img --profile=Win2003SP1x86 printkey -K "SAM\Domains\Account\Users\Names"
18.打印出最後登入的使用者
./volatility -f memory.img --profile=Win2003SP1x86 printkey -K "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"
19.獲取各個賬號的MD5加密密碼
1.hivelist找出獲取system 的 virtual 地址,SAM 的 virtual 地址,
./volatility -f memory.img --profile=Win2003SP1x86 hivelist
2.使用hashdump -y SYSTEM_virtual -x SAM_virtual.
這個是SAM使用者,就搞他
但是沒找到SYSTEM使用者
就無法繼續
借一個圖
./volatility -f memory.img --profile=Win2003SP1x86 hashdump -y xxx(SAM的virtual) -s xxx(SYSTEM的virtual)
能不能解出來靠運氣
3.例題
[HDCTF2019]你能發現什麼蛛絲馬跡嗎
BUU-page5-T6
參考:參考:(9條訊息) volatility記憶體取證分析與講解(持續更新)_小藍同學`的部落格-CSDN部落格_volatility引數