文章摘要: Windows可將Pagefile.sys檔案的中資料移動到實體記憶體中或從記憶體中將資料移到該檔案中選項 三、 Windows 記憶體取證方法和分析技術 記憶體取證(Memory Forensics)通常指對計算機及相關智慧裝置執行時的實體記憶體中儲存的臨時資料進行獲取與分析
原標題:計算機記憶體取證技術
感謝徐總授權轉發 原文作者:徐志強
瞭解興百邦科技 http://www.binarydata.cn/aboutus
一、 計算機實體記憶體簡介
計算機的實體記憶體一般我們指的就是隨機存取儲存器(Random Access Memory,簡稱RAM)。記憶體是一種易失性儲存載體,它儲存處理器主動訪問和儲存的程式碼和資料,是一個臨時的資料交換空間。大多數的PC的記憶體屬於一種動態RAM(DRAM)。 它是動態變化的,因其利用了電容器在充電和放電狀態間的差異來儲存資料的位元位。 爲了維持電容器的狀態,動態記憶體必須週期性重新整理- 這也是記憶體控制器最典型的任務。
由於計算機的記憶體(DRAM)需要持續供電才能保持資料可持續訪問,因此也稱為易失性儲存。美國普林斯頓大學曾做過關於計算機冷啟動攻擊的研究,計算機在斷電後,在很短的時間內記憶體的資料就會消失,然而通過液態氮冷卻,可以將記憶體中的資料進行凍結,再通過一些技術方法來解凍並獲取原來的記憶體資料。以下我們先了解一下與記憶體相關的基本概念。
地址空間(Address Space)
CPU處理器要在執行指令並訪問儲存與內中的資料,它必須為要訪問的數制定一個唯一性地址。地址空間指的就是一組大量的有效地址,可用於去識別儲存與有限的記憶體分配空間中的資料。一個正在執行的程式可以訪問的單個連續的地址空間一般稱為線性地址空間。基於記憶體模型及採用的分頁模式,我們有時將其稱為線性地址,有時稱為虛擬地址。通常我們使用實體地址空間來特指處理器請求訪問實體記憶體的地址。這些地址是通過將線性地址轉化為實體地址來獲得。
記憶體分頁(Paging)
從抽象意義上來講頁是一個具有固定尺寸的視窗,從邏輯意義上來講頁是具有固定大小的一組連續線性地址的集合。
分頁可以將線性地址空間進行虛擬化。它建立了一個執行環境,大量線性地址空間通過用適量的實體記憶體和磁碟儲存進行模擬。每一個32位的線性地址空間被分為固定長度的片段,稱為頁(Page),頁可以任何順序將線性地址空間對映為實體記憶體。 當程式嘗試訪問線性地址時,這樣的對映使用了駐留記憶體的頁目錄(Page Directory)及頁表(Page Table)來實現。
一個頁的大小可以指定為4KB(212=4KB)的任意倍數,這根據不同的體系結構或作業系統的設定而定,而x86架構下的Windows/Linux均採用4KB大小的分頁方式,這就說明32位線性地址中必定存在一個12位的指示頁內偏移量的域。
圖表 1 記憶體分頁機制 實體地址擴充套件
Intel公司的32位架構的記憶體分頁機制支援實體地址擴充套件(Physical Address Extension ,簡稱PAE),該擴充套件支援允許處理器支援超過4GB的實體地址空間。
程式雖然仍只能擁有最高4GB的線性地址空間,但是記憶體管理單元可以將那些地址對映為擴充套件後的64GB實體地址空間。對於支援PAE功能的系統,線性地址分為四個索引:
- 頁目錄指標表(Page directory pointer table,簡稱PDPT)
- 頁目錄(Page directory,簡稱PD)
- 頁表(Page table,簡稱PT)
- 頁偏移(Page offset)
二、
實體記憶體中資料的價值
計算機終端及移動終端均使用了RAM易失性儲存,主要用於資料交換、臨時儲存等用途。作業系統及各種應用軟體均經常需要與實體記憶體進行資料互動,此外由於記憶體空間有限,因此計算機系統還可能將記憶體中的資料快取到磁碟中,如pagefile.sys(頁交換檔案)及hiberfil.sys(休眠檔案)。
記憶體中有大量的各類資料,結構化及非結構化資料。通過對實體記憶體映象可以提取出有價值的資料。 常見有價值的資料,包含以下內容:
- 程序列表(包括惡意程式程序、Rootkit隱藏程序等)
- 動態連結庫(當前系統或程式載入的動態連結庫)
- 開啟檔案列表(當前系統開啟的檔案列表)
- 網路連線(當前活動的網路連線)
- $MFT記錄(常駐檔案均可以直接提取恢復)
- 登錄檔(部分登錄檔資訊,包括系統登錄檔和使用者登錄檔檔案)
- 加密金鑰或密碼(如Windows賬戶密碼Hash、BitLocker/SafeBoot/PGP/ TrueCrypt/VeraCrypt等全盤加密或加密容器的恢復金鑰等)
- 聊天記錄(如QQ聊天記錄片段)
- 網際網路訪問(上網記錄URL地址、網頁快取及InPrivate隱私模式訪問資料等)
- 電子郵件(如網頁郵件快取頁面)
- 圖片及文件等(尚未儲存到磁碟中的圖片、文件等檔案)
頁交換檔案(Pagefil
e.sys)
除了使用實體記憶體RAM用於資料交換,Windows爲了能正常工作還使用了各種各樣的檔案。從Windows 95開始,Windows開始引入了頁交換檔案(Pagefile.sys)來協助記憶體資料的交換。 Pagefile.sys是磁碟中的一個檔案,它用於將作業系統中的活動資料臨時性地進行儲存,在必要的情況下,Windows可將Pagefile.sys檔案的中資料移動到實體記憶體中或從記憶體中將資料移到該檔案中,實現資料的臨時交換或快取。從Pagefile.sys中獲得的資料通常是當前活動的相關資訊,也通常與調查相關性較高。
Windows作業系統最多支援16個頁交換檔案。啟用實體地址擴充套件功能(PAE)的Windows 32位和64位系統的最大頁交換檔案大小為16TB。64位的安騰架構(Itanium)的系統的頁交換檔案可以支援高達32TB。 頁交換檔案大小的預設值為計算機實體記憶體大小的1.5至3倍。
Pagefile.sys用於儲存從實體記憶體中轉移過來的資料。 要獲得一個正在執行的系統的活動全貌或快照,我們通常除了分析實體記憶體,還需要分析pagefile.sys。 部分工具支援同時將實體記憶體和pagefile.sys進行檢查分析。通常pagefile.sys檔案放置於作業系統所在分割槽,當然使用者也完全可能修改高階設定或登錄檔調整pagefile.sys的儲存位置。
從Windows 7作業系統版本開始,Windows系統開始支援頁交換檔案pagefile.sys的加密。
圖表 2 啟用頁交換檔案加密
圖表 3 查詢頁交換檔案加密狀態 休眠檔案(HiberFil.sys)
Hiberfil.sys是當系統休眠時,Windows將實體記憶體的資料寫入到磁碟生成的一個檔案。當系統進入休眠狀態後,網路連線將會中斷。 當系統重新加電時,hiberfil.sys檔案中的資料重新回寫到實體記憶體中,這也使得從休眠狀態恢復到原始狀態變得相當快。
休眠檔案包含了標準的頭部(PO_MEMORY_IMAGE),包含了核心上下文與暫存器的相關資訊及壓縮的資料塊。該檔案採用了Xpress演算法(帶霍夫曼Huffman及LZ編碼)。 檔案頭部通常包含了「hibr」、「HIBR」、「wake」或「WAKE」等特徵。 作業系統從休眠狀態恢復後,頭部就被清零了。清零後的檔案頭可能導致一些取證軟體無法分析該檔案。
通過分析hiberfil.sys檔案的修改時間戳資訊,我們可以瞭解到該系統最後一次休眠的時間。系統中的休眠檔案hiberfil.sys只有一個。當系統重新休眠時,當前實體記憶體中的內容將會覆蓋原有檔案的資料。 要對hiberfil.sys進行分析,要求取證工具可以將休眠檔案中的資料進行解壓為原生資料並進行資料解析。Mattieu Suiche的Windows Memory Toolkit工具hibr2bin.exe支援將休眠檔案轉為原生轉儲檔案。
當取證人員在現場要製作Windows作業系統的實體記憶體映象時,可能由於記憶體映象工具不相容作業系統導致無法獲取實體記憶體資料。當無法成功製作實體記憶體映象時,還可以讓系統進入休眠模式,從而用變通的方式獲得實體記憶體中的資料。
要進入休眠模式,首先要讓系統啟用休眠模式支援。Windows 8及以上版本的作業系統,預設啟用休眠模式支援。取證人員也可以管理員許可權進入命令列模式,並輸入powercfg.exe /hibernate ON 來啟用休眠模式支援。要讓作業系統進入休眠模式,需要輸入shutdown /h .
Vista以上作業系統在原有支援休眠模式(Hibernate Mode)的基礎上增加了睡眠模式(Sleep Mode)。睡眠模式狀態下,作業系統使用極少的電量保證記憶體可以繼續工作,一旦系統電量不足,系統將儲存所有記憶體資料到磁碟並關閉計算機。而休眠模式狀態下,系統關閉,將記憶體中的資料寫入休眠檔案hiberfil.sys中。
在預設的Windows開始選單中的「電源」找不到「休眠」,可以通過按Win+X鍵,選擇「控制面板」,找到「硬體和聲音」->「電源選項」->「選擇電源按鈕的功能」,選擇「更改當前不可用的設定」,在「關機設定」下將「休眠」選項勾選。後續在開始選單選擇「電源」即可直接看到「休眠」選項。
圖表 4 通過關機設定將「休眠」選項增加到電源選單中
圖表 5 電源介面可見到「休眠」選項 三、 Windows 記憶體取證方法和分析技術
記憶體取證(Memory Forensics)通常指對計算機及相關智慧裝置執行時的實體記憶體中儲存的臨時資料進行獲取與分析,提取有價值的資料。記憶體是作業系統及各種軟體交換資料的區域,資料易丟失(Volatile),通常在關機後資料很快就消失。
常見實體記憶體獲取方法:冷啟動攻擊(Cool Boot Attack)、基於火線(1394)或雷電 (ThunderBolt)介面的直接記憶體訪問(DMA)獲取及記憶體獲取軟體工具。
不同的作業系統需要用到不同的實體記憶體獲取工具。
Windows作業系統平臺支援記憶體獲取的常見工具有:
- DumpIt (早期版本名為Win32dd)
- Belkasoft RAMCapturer
- Magnet RAM Capture
- WinEn
- Winpmem
- EnCase Imager
- FTK Imager
- 取證大師
- 取證神探
Linux作業系統常見的記憶體獲取工具:
- dd (適合Linux早期版本)
- LiME http://code.google.com/p/lime-forensics/
- linpmem
- Draugr http://code.google.com/p/draugr/
- Volatilitux http://code.google.com/p/volatilitux/
- Memfetch http://lcamtuf.coredump.cx/
- Memdump
MacOSX作業系統記憶體獲取工具有:
- MacMemoryReader
- osxpmem
- Recon for Mac OSX
- Blackbag MacQuisition
Windows作業系統平臺下的DumpIt是一個簡單易用的計算機記憶體映象獲取工具。通常直接將該工具存放在大容量行動硬碟或優盤中。可直接在正在執行Windows系統的平臺直接執行,根據提示操作即可。
圖表 6 DumpIt記憶體映象獲取工具
在獲取實體記憶體資料時還需儘量減少對原有記憶體資料的覆蓋,最大程度提取處記憶體資料。
圖表 7 DumpIt工具執行時記憶體資源佔用
圖表 8 Magnet RAM Capture執行時記憶體佔用情況
記憶體分析技術
Windows作業系統獲取出的實體記憶體映象需要使用專門的記憶體分析工具。常見的記憶體分析工具有Volatility、Rekall、Forensic Toolkit(FTK)、取證大師及取證神探等,可以解析出常見的基本資訊,包括程序資訊、網路連線、載入的DLL檔案及登錄檔載入資訊等。
VolatilityFramework
Volatility Framework是一個完全開放的記憶體分析工具集,基於GNU GPL2許可,以python語言進行編寫。由於Volatility是一款開源免費的工具,無需花任何錢即可進行記憶體資料的高階分析,此外程式碼開源的特點,遇到一些無法解決的問題時,還可以對原始碼進行修改或擴充套件功能。
在開始使用Volatility之前,我們需要先了解它具有哪些特色功能。
- 即獨立又整體統一的框架
支援32位和64位作業系統的記憶體分析(如Windows、Linux、Mac系統及32位的Android系統)。Volatility的模組化設計允許快速對未來新發布的作業系統進行支援。
意味著可以自行閱讀原始碼,對原始碼進行學習及功能擴充。 通過了解和學習Volatility的工作機制,你也可以成為一名更有效的分析專家。
Python是一個公認的取證及逆向工程語言,帶有豐富的庫檔案,也容易整合到Volatility。
Volatility只要系統平臺有Python執行環境即可執行,因此在Windows、Linux或Mac系統中都可以方便地執行。
- 程式介面擴充套件性強、指令碼程式設計支援
Volatility讓取證人員可以不斷創新,自行擴充套件新功能,例如新增支援惡意程式沙盒分析、虛擬機器檢測、自動瀏覽核心記憶體等功能。
- 豐富的檔案格式支援
支援原始資料轉儲(Raw Dump)、崩潰轉儲(Crash Dump)、休眠檔案及各種其它格式,甚至可以支援多個格式之間的轉換。
- 快速高效的演算法支援
與其它工具相比,Volatility具備快速高效的分析記憶體轉儲檔案分析能力,無需消耗多餘的記憶體。
Volatility的共享者來自各行各業,商業公司、執法部門、學術機構及全球各行業人士。
Volatility支援的作業系統版本
- 64-bit Windows Server 2016
- 64-bit Windows Server 2012 及2012 R2
- 32- and 64-bit Windows 10
- 32- and 64-bit Windows 8, 8.1, and 8.1 Update 1
- 32- and 64-bit Windows 7 (支援所有Service Pack)
- 32- and 64-bit Windows Server 2008 (支援所有Service Pack)
- 64-bit Windows Server 2008 R2 (支援所有Service Pack)
- 32- and 64-bit Windows Vista (支援所有Service Pack)
- 32- and 64-bit Windows Server 2003 (支援所有Service Pack)
- 32- and 64-bit Windows XP (SP2 和 SP3)
- 32- and 64-bit Linux kernels (2.6.11 ~ 4.2.3)
- 32-bit 10.5.x Leopard (64-bit 10.5 Server尚未支援)
- 32- and 64-bit 10.6.x Snow Leopard
- 32- and 64-bit 10.7.x Lion
- 64-bit 10.8.x Mountain Lion
- 64-bit 10.9.x Mavericks
- 64-bit 10.10.x Yosemite
- 64-bit 10.11.x El Capitan
- 64-bit 10.12.x Sierra
Volatility支援的記憶體映象格式
- 原始實體記憶體映象格式
- 火線獲取記憶體格式(IEEE 1394)
- EWF格式(Expert Witness)
- 32- and 64-bit Windows 崩潰轉儲檔案(Crash Dump)
- 32- and 64-bit Windows 休眠檔案 (Windows 7及早期版本)
- 32- and 64-bit MachO 檔案
- Virtualbox Core Dumps
- VMware 儲存狀態檔案 (.vmss) 及快照檔案(.vmsn)
- HPAK 格式 (FastDump)
- QEMU 記憶體轉儲檔案
在Windows系統平臺下,有兩種方式可以執行Volatility工具。第一種是獨立安裝Python執行環境,再下載Volatility原始碼執行命令列。第二種為下載Volatility獨立Windows程式(無需另外安裝和配置Python環境)。最新Volatility版本為v2.6,可以通過官方網站進行下載。
在Windows 64位平臺,最便捷的方式就是直接使用獨立Windows程式的Volatility版本。進入管理員命令列模式,執行volatility_2.6_win64_standalone.exe 程式即可。
Volatility常用命令列引數
- -h 檢視相關引數及幫助說明
- –info 檢視相關模組名稱及支援的Windows版本
- -f 指定要開啟的記憶體映象檔案及路徑
- -d 開啟除錯模式
- -v 開啟顯示詳細資訊模式(verbose)
由於幫助說明內容太多,通常可以將內容輸出為文字檔案,方便隨時開啟引數及模組支援列表。
- volatility_2.6_win64_standalone.exe -h > help.txt
- volatility_2.6_win64_standalone.exe –info > modules_list.txt
表格 1 Volatility支援的外掛列表
外掛名稱 | 功能 |
amcache | 檢視AmCache應用程式痕跡資訊 |
apihooks | 檢測核心及程序的記憶體空間中的API hook |
atoms | 列出會話及視窗站atom表 |
atomscan | Atom表的池掃描(Pool scanner) |
auditpol | 列出登錄檔HKLMSECURITYPolicyPolAdtEv的審計策略資訊 |
bigpools | 使用BigPagePoolScanner轉儲大分頁池(big page pools) |
bioskbd | 從實時模式記憶體中讀取鍵盤緩衝資料(早期電腦可以讀取出BIOS開機密碼) |
cachedump | 獲取記憶體中快取的域帳號的密碼雜湊 |
callbacks | 列印全系統通知例程 |
clipboard | 提取Windows剪貼簿中的內容 |
cmdline | 顯示程序命令列引數 |
cmdscan | 提取執行的命令列歷史記錄(掃描_COMMAND_HISTORY資訊) |
connections | 列印系統開啟的網路連線(僅支援Windows XP 和2003) |
connscan | 列印TCP連線資訊 |
consoles | 提取執行的命令列歷史記錄(掃描_CONSOLE_INFORMATION資訊) |
crashinfo | 提取崩潰轉儲資訊 |
deskscan | tagDESKTOP池掃描(Poolscaner) |
devicetree | 顯示裝置樹資訊 |
dlldump | 從程序地址空間轉儲動態連結庫 |
dlllist | 列印每個程序載入的動態連結庫列表 |
driverirp | IRP hook驅動檢測 |
drivermodule | 關聯驅動物件至核心模組 |
driverscan | 驅動物件池掃描 |
dumpcerts | 提取RAS私鑰及SSL公鑰 |
dumpfiles | 提取記憶體中對映或快取的檔案 |
dumpregistry | 轉儲記憶體中登錄檔資訊至磁碟 |
editbox | 檢視Edit編輯控制元件資訊 (Listbox正在實驗中) |
envars | 顯示程序的環境變數 |
eventhooks | 列印Windows事件hook詳細資訊 |
evtlogs | 提取Windows事件日誌(僅支援XP/2003) |
filescan | 提取檔案物件(file objects)池資訊 |
gahti | 轉儲使用者控制代碼(handle)型別資訊 |
gditimers | 列印已安裝的GDI計時器(timers)及回撥(callbacks) |
gdt | 顯示全域性描述符表(Global Deor Table) |
getservicesids | 獲取登錄檔中的服務名稱並返回SID資訊 |
getsids | 列印每個程序的SID資訊 |
handles | 列印每個程序開啟的控制代碼的列表 |
hashdump | 轉儲記憶體中的Windows帳戶密碼雜湊(LM/NTLM) |
hibinfo | 轉儲休眠檔案資訊 |
hivedump | 列印登錄檔配置單元資訊 |
hivelist | 列印登錄檔配置單元列表 |
hivescan | 登錄檔配置單元池掃描 |
hpakextract | 從HPAK檔案(Fast Dump格式)提取實體記憶體資料 |
hpakinfo | 檢視HPAK檔案屬性及相關資訊 |
idt | 顯示中斷描述符表(Interrupt Deor Table) |
iehistory | 重建IE快取及訪問歷史記錄 |
imagecopy | 將實體地址空間匯出原生DD映象檔案 |
imageinfo | 檢視/識別映象資訊 |
impscan | 掃描對匯入函式的呼叫 |
joblinks | 列印程序任務連結資訊 |
kdbgscan | 搜尋和轉儲潛在KDBG值 |
kpcrscan | 搜尋和轉儲潛在KPCR值 |
ldrmodules | 檢測未連結的動態連結DLL |
lsadump | 從登錄檔中提取LSA金鑰資訊(已解密) |
machoinfo | 轉儲Mach-O 檔案格式資訊 |
malfind | 查詢隱藏的和插入的程式碼 |
mbrparser | 掃描並解析潛在的主開機記錄(MBR) |
memdump | 轉儲程序的可定址記憶體 |
memmap | 列印記憶體對映 |
messagehooks | 桌面和視窗訊息鉤子的執行緒列表 |
mftparser | 掃描並解析潛在的MFT條目 |
moddump | 轉儲核心驅動程式到可執行檔案的示例 |
modscan | 核心模組池掃描 |
modules | 列印載入模組的列表 |
multiscan | 批量掃描各種物件 |
mutantscan | 對互斥物件池掃描 |
notepad | 檢視記事本當前顯示的文字 |
objtypescan | 掃描視窗物件型別物件 |
patcher | 基於頁面掃描的補丁程式記憶體 |
poolpeek | 可配置的池掃描器外掛 |
printkey | 列印登錄檔項及其子項和值 |
privs | 顯示程序許可權 |
procdump | 程序轉儲到一個可執行檔案示例 |
pslist | 按照EPROCESS列表列印所有正在執行的程序 |
psscan | 程序物件池掃描 |
pstree | 以樹型方式列印程序列表 |
psxview | 查詢帶有隱藏程序的所有程序列表 |
qemuinfo | 轉儲Qemu 資訊 |
raw2dmp | 將實體記憶體原生資料轉換為windbg崩潰轉儲格式 |
screenshot | 基於GDI Windows的虛擬螢幕截圖儲存 |
servicediff | Windows服務列表(ala Plugx) |
sessions | _MM_SESSION_SPACE的詳細資訊列表(使用者登入會話) |
shellbags | 列印Shellbags資訊 |
shimcache | 解析應用程式相容性Shim快取登錄檔項 |
shutdowntime | 從記憶體中的登錄檔資訊獲取機器關機時間 |
sockets | 列印已開啟套接字列表 |
sockscan | TCP套接字物件池掃描 |
ssdt | 顯示SSDT條目 |
strings | 物理到虛擬地址的偏移匹配(需要一些時間,帶詳細資訊) |
svcscan | Windows服務列表掃描 |
symlinkscan | 符號連結物件池掃描 |
thrdscan | 執行緒物件池掃描 |
threads | 調查_ETHREAD 和_KTHREADs |
timeliner | 建立記憶體中的各種痕跡資訊的時間線 |
timers | 列印核心計時器及關聯模組的DPC |
truecryptmaster | 恢復TrueCrypt 7.1a主金鑰 |
truecryptpassphrase | 查詢並提取TrueCrypt密碼 |
truecryptsummary | TrueCrypt摘要資訊 |
unloadedmodules | 列印解除安裝的模組資訊列表 |
userassist | 列印登錄檔中UserAssist相關資訊 |
userhandles | 轉儲使用者控制代碼表 |
vaddump | 轉儲VAD資料為檔案 |
vadinfo | 轉儲VAD資訊 |
vadtree | 以樹形方式顯示VAD樹資訊 |
vadwalk | 顯示遍歷VAD樹 |
vboxinfo | 轉儲Virtualbox資訊(虛擬機器) |
verinfo | 列印PE映象中的版本資訊 |
vmwareinfo | 轉儲VMware VMSS/VMSN 資訊 |
volshell | 記憶體映象中的shell |
windows | 列印桌面視窗(詳細資訊) |
wintree | Z順序列印桌面視窗樹 |
wndscan | 池掃描視窗站 |
yarascan | 以Yara簽名掃描程序或核心記憶體 |
檢視系統程序列表
volatility_2.6_win64_standalone.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 pslist
圖表 9 檢視系統程序列表
將程序列表匯出為txt檔案
volatility_2.6_win64_standalone.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 pslist > Win7_SP1_x86_pslist.txt
圖表 10 程序列表及資料匯出
檢視網路通訊連線資訊
volatility_2.6_win64_standalone -f Win7_SP1_x86.vmem –profile=Win7SP1x86 netscan
圖表 11 檢視網路通訊連線資訊
提取記憶體中的登錄檔資訊
volatility_2.6_win64_standalone -f Win7_SP1_x86.vmem –profile=Win7SP1x86 dumpregistry
圖表 12 記憶體中的登錄檔資訊提取
提取記憶體中的MFT記錄資訊
volatility_2.6_win64_standalone -f Win7_SP1_x86.vmem –profile=Win7SP1x86 mftparser
圖表 13 記憶體中的MFT記錄資訊提取
匯出記憶體中的MFT記錄資料
volatility_2.6_win64_standalone -f Win7_SP1_x86.vmem –profile=Win7SP1x86 mftparser –output-file=mftverbose.txt -D mftoutput
圖表 14 MFT記錄中的常駐檔案的匯出
表格 2 Volatility常用命名引數及功能對照表
注:以下表格中用vol.exe替代volatility_2.6_win64_standalone.exe返回搜狐,檢視更多
功能 | 命令列及引數 |
檢視程序列表 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 pslist |
檢視程序列表(樹形) | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 pstree |
檢視程序列表(psx檢視) | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 psxview |
檢視網路通訊連線 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 netscan |
檢視載入的動態連結庫 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 dlllist |
檢視SSDT表 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 ssdt |
檢視UserAssist痕跡 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 userassist |
檢視ShimCache痕跡 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 shimcache |
檢視ShellBags | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 shellbags |
檢視服務列表 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 svcscan |
檢視Windows帳戶hash | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 hashdump |
檢視最後關機時間 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 shutdowntime |
檢視IE歷史記錄 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 iehistory |
提取登錄檔資料 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 dumpregistry |
解析MFT記錄 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 mftparser |
匯出MFT記錄 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 mftparser –output-file=mftverbose.txt -D mftoutput |
獲取TrueCrypt金鑰資訊 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 truecryptmaster |
獲取TrueCrypt密碼資訊 | Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 truecryptpassphrase |
責任編輯: