亚洲午夜精品一级在线,777精品成人影院,国产亚洲福利一区二区免费看,国产精品自在线天天看片

計(jì)算機(jī)內(nèi)存取證技術(shù)

原文作者:徐志強(qiáng)?? 日期:2018年6月10日

神探學(xué)院

?一、?計(jì)算機(jī)物理內(nèi)存簡(jiǎn)介

計(jì)算機(jī)的物理內(nèi)存一般我們指的就是隨機(jī)存取存儲(chǔ)器(Random?Access?Memory,簡(jiǎn)稱RAM)。內(nèi)存是一種易失性存儲(chǔ)載體,它保存處理器主動(dòng)訪問(wèn)和存儲(chǔ)的代碼和數(shù)據(jù),是一個(gè)臨時(shí)的數(shù)據(jù)交換空間。大多數(shù)的PC的內(nèi)存屬于一種動(dòng)態(tài)RAM(DRAM)。 它是動(dòng)態(tài)變化的,因其利用了電容器在充電和放電狀態(tài)間的差異來(lái)存儲(chǔ)數(shù)據(jù)的比特位。 為了維持電容器的狀態(tài),動(dòng)態(tài)內(nèi)存必須周期性刷新- 這也是內(nèi)存控制器最典型的任務(wù)。

由于計(jì)算機(jī)的內(nèi)存(DRAM)需要持續(xù)供電才能保持?jǐn)?shù)據(jù)可持續(xù)訪問(wèn),因此也稱為易失性存儲(chǔ)。美國(guó)普林斯頓大學(xué)曾做過(guò)關(guān)于計(jì)算機(jī)冷啟動(dòng)攻擊的研究,計(jì)算機(jī)在斷電后,在很短的時(shí)間內(nèi)內(nèi)存的數(shù)據(jù)就會(huì)消失,然而通過(guò)液態(tài)氮冷卻,可以將內(nèi)存中的數(shù)據(jù)進(jìn)行凍結(jié),再通過(guò)一些技術(shù)方法來(lái)解凍并獲取原來(lái)的內(nèi)存數(shù)據(jù)。以下我們先了解一下與內(nèi)存相關(guān)的基本概念。

地址空間(Address Space)

CPU處理器要在執(zhí)行指令并訪問(wèn)存儲(chǔ)與內(nèi)中的數(shù)據(jù),它必須為要訪問(wèn)的數(shù)制定一個(gè)唯一性地址。地址空間指的就是一組大量的有效地址,可用于去識(shí)別存儲(chǔ)與有限的內(nèi)存分配空間中的數(shù)據(jù)。一個(gè)正在運(yùn)行的程序可以訪問(wèn)的單個(gè)連續(xù)的地址空間一般稱為線性地址空間?;趦?nèi)存模型及采用的分頁(yè)模式,我們有時(shí)將其稱為線性地址,有時(shí)稱為虛擬地址。通常我們使用物理地址空間來(lái)特指處理器請(qǐng)求訪問(wèn)物理內(nèi)存的地址。這些地址是通過(guò)將線性地址轉(zhuǎn)化為物理地址來(lái)獲得。

內(nèi)存分頁(yè)(Paging)

從抽象意義上來(lái)講頁(yè)是一個(gè)具有固定尺寸的窗口,從邏輯意義上來(lái)講頁(yè)是具有固定大小的一組連續(xù)線性地址的集合。

分頁(yè)可以將線性地址空間進(jìn)行虛擬化。它創(chuàng)建了一個(gè)執(zhí)行環(huán)境,大量線性地址空間通過(guò)用適量的物理內(nèi)存和磁盤存儲(chǔ)進(jìn)行模擬。每一個(gè)32位的線性地址空間被分為固定長(zhǎng)度的片段,稱為頁(yè)(Page),頁(yè)可以任何順序?qū)⒕€性地址空間映射為物理內(nèi)存。 當(dāng)程序嘗試訪問(wèn)線性地址時(shí),這樣的映射使用了駐留內(nèi)存的頁(yè)目錄(Page Directory)及頁(yè)表(Page Table)來(lái)實(shí)現(xiàn)。

一個(gè)頁(yè)的大小可以指定為4KB(212=4KB)的任意倍數(shù),這根據(jù)不同的體系結(jié)構(gòu)或操作系統(tǒng)的設(shè)置而定,而x86架構(gòu)下的Windows/Linux均采用4KB大小的分頁(yè)方式,這就說(shuō)明32位線性地址中必定存在一個(gè)12位的指示頁(yè)內(nèi)偏移量的域。

計(jì)算機(jī)內(nèi)存取證技術(shù)
圖表 1 內(nèi)存分頁(yè)機(jī)制

 

物理地址擴(kuò)展

Intel公司的32位架構(gòu)的內(nèi)存分頁(yè)機(jī)制支持物理地址擴(kuò)展(Physical Address Extension?,簡(jiǎn)稱PAE),該擴(kuò)展支持允許處理器支持超過(guò)4GB的物理地址空間。

程序雖然仍只能擁有最高4GB的線性地址空間,但是內(nèi)存管理單元可以將那些地址映射為擴(kuò)展后的64GB物理地址空間。對(duì)于支持PAE功能的系統(tǒng),線性地址分為四個(gè)索引

  • 頁(yè)目錄指針表(Page directory pointer table,簡(jiǎn)稱PDPT)
  • 頁(yè)目錄(Page directory,簡(jiǎn)稱PD)
  • 頁(yè)表(Page table,簡(jiǎn)稱PT)
  • 頁(yè)偏移(Page offset)

二、?物理內(nèi)存中數(shù)據(jù)的價(jià)值

計(jì)算機(jī)終端及移動(dòng)終端均使用了RAM易失性存儲(chǔ),主要用于數(shù)據(jù)交換、臨時(shí)存儲(chǔ)等用途。操作系統(tǒng)及各種應(yīng)用軟件均經(jīng)常需要與物理內(nèi)存進(jìn)行數(shù)據(jù)交互,此外由于內(nèi)存空間有限,因此計(jì)算機(jī)系統(tǒng)還可能將內(nèi)存中的數(shù)據(jù)緩存到磁盤中,如pagefile.sys(頁(yè)交換文件)及hiberfil.sys(休眠文件)。

內(nèi)存中有大量的各類數(shù)據(jù),結(jié)構(gòu)化及非結(jié)構(gòu)化數(shù)據(jù)。通過(guò)對(duì)物理內(nèi)存鏡像可以提取出有價(jià)值的數(shù)據(jù)。 常見(jiàn)有價(jià)值的數(shù)據(jù),包含以下內(nèi)容:

  • 進(jìn)程列表(包括惡意程序進(jìn)程、Rootkit隱藏進(jìn)程等)
  • 動(dòng)態(tài)鏈接庫(kù)(當(dāng)前系統(tǒng)或程序加載的動(dòng)態(tài)鏈接庫(kù))
  • 打開(kāi)文件列表(當(dāng)前系統(tǒng)打開(kāi)的文件列表)
  • 網(wǎng)絡(luò)連接(當(dāng)前活動(dòng)的網(wǎng)絡(luò)連接)
  • $MFT記錄(常駐文件均可以直接提取恢復(fù))
  • 注冊(cè)表(部分注冊(cè)表信息,包括系統(tǒng)注冊(cè)表和用戶注冊(cè)表文件)
  • 加密密鑰或密碼(如Windows賬戶密碼Hash、BitLocker/SafeBoot/PGP/ TrueCrypt/VeraCrypt等全盤加密或加密容器的恢復(fù)密鑰等)
  • 聊天記錄(如QQ聊天記錄片段)
  • 互聯(lián)網(wǎng)訪問(wèn)(上網(wǎng)記錄URL地址、網(wǎng)頁(yè)緩存及InPrivate隱私模式訪問(wèn)數(shù)據(jù)等)
  • 電子郵件(如網(wǎng)頁(yè)郵件緩存頁(yè)面)
  • 圖片及文檔等(尚未保存到磁盤中的圖片、文檔等文件)

 

頁(yè)交換文件(Pagefile.sys)

除了使用物理內(nèi)存RAM用于數(shù)據(jù)交換,Windows為了能正常工作還使用了各種各樣的文件。從Windows 95開(kāi)始,Windows開(kāi)始引入了頁(yè)交換文件(Pagefile.sys)來(lái)協(xié)助內(nèi)存數(shù)據(jù)的交換。 Pagefile.sys是磁盤中的一個(gè)文件,它用于將操作系統(tǒng)中的活動(dòng)數(shù)據(jù)臨時(shí)性地進(jìn)行存儲(chǔ),在必要的情況下,Windows可將Pagefile.sys文件的中數(shù)據(jù)移動(dòng)到物理內(nèi)存中或從內(nèi)存中將數(shù)據(jù)移到該文件中,實(shí)現(xiàn)數(shù)據(jù)的臨時(shí)交換或緩存。從Pagefile.sys中獲得的數(shù)據(jù)通常是當(dāng)前活動(dòng)的相關(guān)信息,也通常與調(diào)查相關(guān)性較高。

Windows操作系統(tǒng)最多支持16個(gè)頁(yè)交換文件。啟用物理地址擴(kuò)展功能(PAE)的Windows 32位和64位系統(tǒng)的最大頁(yè)交換文件大小為16TB。64位的安騰架構(gòu)(Itanium)的系統(tǒng)的頁(yè)交換文件可以支持高達(dá)32TB。 頁(yè)交換文件大小的默認(rèn)值為計(jì)算機(jī)物理內(nèi)存大小的1.5至3倍。

Pagefile.sys用于存儲(chǔ)從物理內(nèi)存中轉(zhuǎn)移過(guò)來(lái)的數(shù)據(jù)。 要獲得一個(gè)正在運(yùn)行的系統(tǒng)的活動(dòng)全貌或快照,我們通常除了分析物理內(nèi)存,還需要分析pagefile.sys。 部分工具支持同時(shí)將物理內(nèi)存和pagefile.sys進(jìn)行檢查分析。通常pagefile.sys文件放置于操作系統(tǒng)所在分區(qū),當(dāng)然用戶也完全可能修改高級(jí)設(shè)置或注冊(cè)表調(diào)整pagefile.sys的存儲(chǔ)位置。

從Windows?7操作系統(tǒng)版本開(kāi)始,Windows系統(tǒng)開(kāi)始支持頁(yè)交換文件pagefile.sys的加密。

計(jì)算機(jī)內(nèi)存取證技術(shù)
圖表 2 啟用頁(yè)交換文件加密

?

計(jì)算機(jī)內(nèi)存取證技術(shù)
圖表 3 查詢頁(yè)交換文件加密狀態(tài)

 

休眠文件(HiberFil.sys

Hiberfil.sys是當(dāng)系統(tǒng)休眠時(shí),Windows將物理內(nèi)存的數(shù)據(jù)寫入到磁盤生成的一個(gè)文件。當(dāng)系統(tǒng)進(jìn)入休眠狀態(tài)后,網(wǎng)絡(luò)連接將會(huì)中斷。 當(dāng)系統(tǒng)重新加電時(shí),hiberfil.sys文件中的數(shù)據(jù)重新回寫到物理內(nèi)存中,這也使得從休眠狀態(tài)恢復(fù)到原始狀態(tài)變得相當(dāng)快。

休眠文件包含了標(biāo)準(zhǔn)的頭部(PO_MEMORY_IMAGE),包含了內(nèi)核上下文與寄存器的相關(guān)信息及壓縮的數(shù)據(jù)塊。該文件采用了Xpress算法(帶霍夫曼Huffman及LZ編碼)。 文件頭部通常包含了“hibr”、“HIBR”、“wake”或“WAKE”等特征。 操作系統(tǒng)從休眠狀態(tài)恢復(fù)后,頭部就被清零了。清零后的文件頭可能導(dǎo)致一些取證軟件無(wú)法分析該文件。

通過(guò)分析hiberfil.sys文件的修改時(shí)間戳信息,我們可以了解到該系統(tǒng)最后一次休眠的時(shí)間。系統(tǒng)中的休眠文件hiberfil.sys只有一個(gè)。當(dāng)系統(tǒng)重新休眠時(shí),當(dāng)前物理內(nèi)存中的內(nèi)容將會(huì)覆蓋原有文件的數(shù)據(jù)。 要對(duì)hiberfil.sys進(jìn)行分析,要求取證工具可以將休眠文件中的數(shù)據(jù)進(jìn)行解壓為原生數(shù)據(jù)并進(jìn)行數(shù)據(jù)解析。Mattieu Suiche的Windows Memory Toolkit工具h(yuǎn)ibr2bin.exe支持將休眠文件轉(zhuǎn)為原生轉(zhuǎn)儲(chǔ)文件。

當(dāng)取證人員在現(xiàn)場(chǎng)要制作Windows操作系統(tǒng)的物理內(nèi)存鏡像時(shí),可能由于內(nèi)存鏡像工具不兼容操作系統(tǒng)導(dǎo)致無(wú)法獲取物理內(nèi)存數(shù)據(jù)。當(dāng)無(wú)法成功制作物理內(nèi)存鏡像時(shí),還可以讓系統(tǒng)進(jìn)入休眠模式,從而用變通的方式獲得物理內(nèi)存中的數(shù)據(jù)。

要進(jìn)入休眠模式,首先要讓系統(tǒng)啟用休眠模式支持。Windows 8及以上版本的操作系統(tǒng),默認(rèn)啟用休眠模式支持。取證人員也可以管理員權(quán)限進(jìn)入命令行模式,并輸入powercfg.exe /hibernate ON 來(lái)啟用休眠模式支持。要讓操作系統(tǒng)進(jìn)入休眠模式,需要輸入shutdown /h .

Vista以上操作系統(tǒng)在原有支持休眠模式(Hibernate Mode)的基礎(chǔ)上增加了睡眠模式(Sleep Mode)。睡眠模式狀態(tài)下,操作系統(tǒng)使用極少的電量保證內(nèi)存可以繼續(xù)工作,一旦系統(tǒng)電量不足,系統(tǒng)將保存所有內(nèi)存數(shù)據(jù)到磁盤并關(guān)閉計(jì)算機(jī)。而休眠模式狀態(tài)下,系統(tǒng)關(guān)閉,將內(nèi)存中的數(shù)據(jù)寫入休眠文件hiberfil.sys中。

在默認(rèn)的Windows開(kāi)始菜單中的“電源”找不到“休眠”,可以通過(guò)按Win+X鍵,選擇“控制面板”,找到“硬件和聲音”->“電源選項(xiàng)”->“選擇電源按鈕的功能”,選擇“更改當(dāng)前不可用的設(shè)置”,在“關(guān)機(jī)設(shè)置”下將“休眠”選項(xiàng)勾選。后續(xù)在開(kāi)始菜單選擇“電源”即可直接看到“休眠”選項(xiàng)。

計(jì)算機(jī)內(nèi)存取證技術(shù)
圖表 4 通過(guò)關(guān)機(jī)設(shè)置將“休眠”選項(xiàng)增加到電源菜單中

 

圖表 5 電源界面可見(jiàn)到“休眠”選項(xiàng)
圖表 5 電源界面可見(jiàn)到“休眠”選項(xiàng)

 

三、?Windows 內(nèi)存取證方法和分析技術(shù)

內(nèi)存取證(Memory Forensics)通常指對(duì)計(jì)算機(jī)及相關(guān)智能設(shè)備運(yùn)行時(shí)的物理內(nèi)存中存儲(chǔ)的臨時(shí)數(shù)據(jù)進(jìn)行獲取與分析,提取有價(jià)值的數(shù)據(jù)。內(nèi)存是操作系統(tǒng)及各種軟件交換數(shù)據(jù)的區(qū)域,數(shù)據(jù)易丟失(Volatile),通常在關(guān)機(jī)后數(shù)據(jù)很快就消失。

常見(jiàn)物理內(nèi)存獲取方法:冷啟動(dòng)攻擊(Cool Boot Attack)、基于火線(1394)或雷電 (ThunderBolt)接口的直接內(nèi)存訪問(wèn)(DMA)獲取及內(nèi)存獲取軟件工具。

不同的操作系統(tǒng)需要用到不同的物理內(nèi)存獲取工具。

Windows操作系統(tǒng)平臺(tái)支持內(nèi)存獲取的常見(jiàn)工具有:

  • DumpIt (早期版本名為Win32dd)
  • Belkasoft RAMCapturer
  • Magnet RAM Capture
  • WinEn
  • Winpmem
  • EnCase Imager
  • FTK Imager
  • 取證大師
  • 取證神探

 

Linux操作系統(tǒng)常見(jiàn)的內(nèi)存獲取工具:

  • 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

 

Mac?OSX操作系統(tǒng)內(nèi)存獲取工具有:

  • MacMemoryReader
  • osxpmem
  • Recon?for Mac OSX
  • Blackbag MacQuisition

 

Windows操作系統(tǒng)平臺(tái)下的DumpIt是一個(gè)簡(jiǎn)單易用的計(jì)算機(jī)內(nèi)存鏡像獲取工具。通常直接將該工具存放在大容量移動(dòng)硬盤或優(yōu)盤中??芍苯釉谡谶\(yùn)行Windows系統(tǒng)的平臺(tái)直接運(yùn)行,根據(jù)提示操作即可。

計(jì)算機(jī)內(nèi)存取證技術(shù)
圖表 6 DumpIt內(nèi)存鏡像獲取工具

?

在獲取物理內(nèi)存數(shù)據(jù)時(shí)還需盡量減少對(duì)原有內(nèi)存數(shù)據(jù)的覆蓋,最大程度提取處內(nèi)存數(shù)據(jù)。

計(jì)算機(jī)內(nèi)存取證技術(shù)
圖表 7 DumpIt工具運(yùn)行時(shí)內(nèi)存資源占用

 

計(jì)算機(jī)內(nèi)存取證技術(shù)
圖表 8 Magnet RAM Capture運(yùn)行時(shí)內(nèi)存占用情況

 

內(nèi)存分析技術(shù)

Windows操作系統(tǒng)獲取出的物理內(nèi)存鏡像需要使用專門的內(nèi)存分析工具。常見(jiàn)的內(nèi)存分析工具有Volatility、Rekall、Forensic Toolkit(FTK)、取證大師及取證神探等,可以解析出常見(jiàn)的基本信息,包括進(jìn)程信息、網(wǎng)絡(luò)連接、加載的DLL文件及注冊(cè)表加載信息等。

Volatility?Framework?

Volatility Framework是一個(gè)完全開(kāi)放的內(nèi)存分析工具集,基于GNU GPL2許可,以python語(yǔ)言進(jìn)行編寫。由于Volatility是一款開(kāi)源免費(fèi)的工具,無(wú)需花任何錢即可進(jìn)行內(nèi)存數(shù)據(jù)的高級(jí)分析,此外代碼開(kāi)源的特點(diǎn),遇到一些無(wú)法解決的問(wèn)題時(shí),還可以對(duì)源代碼進(jìn)行修改或擴(kuò)展功能。

在開(kāi)始使用Volatility之前,我們需要先了解它具有哪些特色功能。

  • 即獨(dú)立又整體統(tǒng)一的框架

 

支持32位和64位操作系統(tǒng)的內(nèi)存分析(如Windows、Linux、Mac系統(tǒng)及32位的Android系統(tǒng))。Volatility的模塊化設(shè)計(jì)允許快速對(duì)未來(lái)新發(fā)布的操作系統(tǒng)進(jìn)行支持。

  • 開(kāi)放源代碼(GPL v2)

 

意味著可以自行閱讀源代碼,對(duì)源代碼進(jìn)行學(xué)習(xí)及功能擴(kuò)充。 通過(guò)了解和學(xué)習(xí)Volatility的工作機(jī)制,你也可以成為一名更有效的分析專家。

  • 基于Python語(yǔ)言編寫

 

Python是一個(gè)公認(rèn)的取證及逆向工程語(yǔ)言,帶有豐富的庫(kù)文件,也容易集成到Volatility。

  • 跨平臺(tái)運(yùn)行支持

 

Volatility只要系統(tǒng)平臺(tái)有Python運(yùn)行環(huán)境即可運(yùn)行,因此在Windows、Linux或Mac系統(tǒng)中都可以方便地運(yùn)行。

  • 程序接口擴(kuò)展性強(qiáng)、腳本編程支持

 

Volatility讓取證人員可以不斷創(chuàng)新,自行擴(kuò)展新功能,例如新增支持惡意程序沙盒分析、虛擬機(jī)檢測(cè)、自動(dòng)瀏覽內(nèi)核內(nèi)存等功能。

  • 豐富的文件格式支持

 

支持原始數(shù)據(jù)轉(zhuǎn)儲(chǔ)(Raw Dump)、崩潰轉(zhuǎn)儲(chǔ)(Crash Dump)、休眠文件及各種其它格式,甚至可以支持多個(gè)格式之間的轉(zhuǎn)換。

  • 快速高效的算法支持

 

與其它工具相比,Volatility具備快速高效的分析內(nèi)存轉(zhuǎn)儲(chǔ)文件分析能力,無(wú)需消耗多余的內(nèi)存。

  • 社區(qū)支持

 

Volatility的共享者來(lái)自各行各業(yè),商業(yè)公司、執(zhí)法部門、學(xué)術(shù)機(jī)構(gòu)及全球各行業(yè)人士。

 

Volatility支持的操作系統(tǒng)版本

  • 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支持的內(nèi)存鏡像格式

  • 原始物理內(nèi)存鏡像格式
  • 火線獲取內(nèi)存格式(IEEE 1394)
  • EWF格式(Expert Witness)
  • 32- and 64-bit Windows 崩潰轉(zhuǎn)儲(chǔ)文件(Crash Dump)
  • 32- and 64-bit Windows 休眠文件?(Windows 7及早期版本)
  • 32- and 64-bit MachO 文件
  • Virtualbox Core Dumps
  • VMware 保存狀態(tài)文件?(.vmss) 及快照文件(.vmsn)
  • HPAK 格式 (FastDump)
  • QEMU 內(nèi)存轉(zhuǎn)儲(chǔ)文件

 

在Windows系統(tǒng)平臺(tái)下,有兩種方式可以運(yùn)行Volatility工具。第一種是獨(dú)立安裝Python運(yùn)行環(huán)境,再下載Volatility源代碼執(zhí)行命令行。第二種為下載Volatility獨(dú)立Windows程序(無(wú)需另外安裝和配置Python環(huán)境)。最新Volatility版本為v2.6,可以通過(guò)官方網(wǎng)站進(jìn)行下載。

在Windows?64位平臺(tái),最便捷的方式就是直接使用獨(dú)立Windows程序的Volatility版本。進(jìn)入管理員命令行模式,運(yùn)行volatility_2.6_win64_standalone.exe 程序即可。

Volatility常用命令行參數(shù)

  • -h 查看相關(guān)參數(shù)及幫助說(shuō)明
  • –info 查看相關(guān)模塊名稱及支持的Windows版本
  • -f?指定要打開(kāi)的內(nèi)存鏡像文件及路徑
  • -d?開(kāi)啟調(diào)試模式
  • -v?開(kāi)啟顯示詳細(xì)信息模式(verbose)

由于幫助說(shuō)明內(nèi)容太多,通常可以將內(nèi)容輸出為文本文件,方便隨時(shí)打開(kāi)參數(shù)及模塊支持列表。

  • volatility_2.6_win64_standalone.exe -h?> help.txt
  • volatility_2.6_win64_standalone.exe –info > modules_list.txt

 

表格 1?Volatility支持的插件列表

插件名稱 功能
amcache 查看AmCache應(yīng)用程序痕跡信息
apihooks 檢測(cè)內(nèi)核及進(jìn)程的內(nèi)存空間中的API?hook
atoms 列出會(huì)話及窗口站atom表
atomscan Atom表的池掃描(Pool scanner)
auditpol 列出注冊(cè)表HKLM\SECURITY\Policy\PolAdtEv的審計(jì)策略信息
bigpools 使用BigPagePoolScanner轉(zhuǎn)儲(chǔ)大分頁(yè)池(big page pools)
bioskbd 從實(shí)時(shí)模式內(nèi)存中讀取鍵盤緩沖數(shù)據(jù)(早期電腦可以讀取出BIOS開(kāi)機(jī)密碼)
cachedump 獲取內(nèi)存中緩存的域帳號(hào)的密碼哈希
callbacks 打印全系統(tǒng)通知例程
clipboard 提取Windows剪貼板中的內(nèi)容
cmdline 顯示進(jìn)程命令行參數(shù)
cmdscan 提取執(zhí)行的命令行歷史記錄(掃描_COMMAND_HISTORY信息)
connections 打印系統(tǒng)打開(kāi)的網(wǎng)絡(luò)連接(僅支持Windows XP 和2003)
connscan 打印TCP連接信息
consoles 提取執(zhí)行的命令行歷史記錄(掃描_CONSOLE_INFORMATION信息)
crashinfo 提取崩潰轉(zhuǎn)儲(chǔ)信息
deskscan tagDESKTOP池掃描(Poolscaner)
devicetree 顯示設(shè)備樹(shù)信息
dlldump 從進(jìn)程地址空間轉(zhuǎn)儲(chǔ)動(dòng)態(tài)鏈接庫(kù)
dlllist 打印每個(gè)進(jìn)程加載的動(dòng)態(tài)鏈接庫(kù)列表
driverirp IRP hook驅(qū)動(dòng)檢測(cè)
drivermodule 關(guān)聯(lián)驅(qū)動(dòng)對(duì)象至內(nèi)核模塊
driverscan 驅(qū)動(dòng)對(duì)象池掃描
dumpcerts 提取RAS私鑰及SSL公鑰
dumpfiles 提取內(nèi)存中映射或緩存的文件
dumpregistry 轉(zhuǎn)儲(chǔ)內(nèi)存中注冊(cè)表信息至磁盤
editbox 查看Edit編輯控件信息?(Listbox正在實(shí)驗(yàn)中)
envars 顯示進(jìn)程的環(huán)境變量
eventhooks 打印Windows事件hook詳細(xì)信息
evtlogs 提取Windows事件日志(僅支持XP/2003)
filescan 提取文件對(duì)象(file objects)池信息
gahti 轉(zhuǎn)儲(chǔ)用戶句柄(handle)類型信息
gditimers 打印已安裝的GDI計(jì)時(shí)器(timers)及回調(diào)(callbacks)
gdt 顯示全局描述符表(Global Descriptor Table)
getservicesids 獲取注冊(cè)表中的服務(wù)名稱并返回SID信息
getsids 打印每個(gè)進(jìn)程的SID信息
handles 打印每個(gè)進(jìn)程打開(kāi)的句柄的列表
hashdump 轉(zhuǎn)儲(chǔ)內(nèi)存中的Windows帳戶密碼哈希(LM/NTLM)
hibinfo 轉(zhuǎn)儲(chǔ)休眠文件信息
hivedump 打印注冊(cè)表配置單元信息
hivelist 打印注冊(cè)表配置單元列表
hivescan 注冊(cè)表配置單元池掃描
hpakextract 從HPAK文件(Fast Dump格式)提取物理內(nèi)存數(shù)據(jù)
hpakinfo 查看HPAK文件屬性及相關(guān)信息
idt 顯示中斷描述符表(Interrupt Descriptor Table)
iehistory 重建IE緩存及訪問(wèn)歷史記錄
imagecopy 將物理地址空間導(dǎo)出原生DD鏡像文件
imageinfo 查看/識(shí)別鏡像信息
impscan 掃描對(duì)導(dǎo)入函數(shù)的調(diào)用
joblinks 打印進(jìn)程任務(wù)鏈接信息
kdbgscan 搜索和轉(zhuǎn)儲(chǔ)潛在KDBG值
kpcrscan 搜索和轉(zhuǎn)儲(chǔ)潛在KPCR值
ldrmodules 檢測(cè)未鏈接的動(dòng)態(tài)鏈接DLL
lsadump 從注冊(cè)表中提取LSA密鑰信息(已解密)
machoinfo 轉(zhuǎn)儲(chǔ)Mach-O 文件格式信息
malfind 查找隱藏的和插入的代碼
mbrparser 掃描并解析潛在的主引導(dǎo)記錄(MBR)
memdump 轉(zhuǎn)儲(chǔ)進(jìn)程的可尋址內(nèi)存
memmap 打印內(nèi)存映射
messagehooks 桌面和窗口消息鉤子的線程列表
mftparser 掃描并解析潛在的MFT條目
moddump 轉(zhuǎn)儲(chǔ)內(nèi)核驅(qū)動(dòng)程序到可執(zhí)行文件的示例
modscan 內(nèi)核模塊池掃描
modules 打印加載模塊的列表
multiscan 批量掃描各種對(duì)象
mutantscan 對(duì)互斥對(duì)象池掃描
notepad 查看記事本當(dāng)前顯示的文本
objtypescan 掃描窗口對(duì)象類型對(duì)象
patcher 基于頁(yè)面掃描的補(bǔ)丁程序內(nèi)存
poolpeek 可配置的池掃描器插件
printkey 打印注冊(cè)表項(xiàng)及其子項(xiàng)和值
privs 顯示進(jìn)程權(quán)限
procdump 進(jìn)程轉(zhuǎn)儲(chǔ)到一個(gè)可執(zhí)行文件示例
pslist 按照EPROCESS列表打印所有正在運(yùn)行的進(jìn)程
psscan 進(jìn)程對(duì)象池掃描
pstree 以樹(shù)型方式打印進(jìn)程列表
psxview 查找?guī)в须[藏進(jìn)程的所有進(jìn)程列表
qemuinfo 轉(zhuǎn)儲(chǔ)Qemu 信息
raw2dmp 將物理內(nèi)存原生數(shù)據(jù)轉(zhuǎn)換為windbg崩潰轉(zhuǎn)儲(chǔ)格式
screenshot 基于GDI Windows的虛擬屏幕截圖保存
servicediff Windows服務(wù)列表(ala Plugx)
sessions _MM_SESSION_SPACE的詳細(xì)信息列表(用戶登錄會(huì)話)
shellbags 打印Shellbags信息
shimcache 解析應(yīng)用程序兼容性Shim緩存注冊(cè)表項(xiàng)
shutdowntime 從內(nèi)存中的注冊(cè)表信息獲取機(jī)器關(guān)機(jī)時(shí)間
sockets 打印已打開(kāi)套接字列表
sockscan TCP套接字對(duì)象池掃描
ssdt 顯示SSDT條目
strings 物理到虛擬地址的偏移匹配(需要一些時(shí)間,帶詳細(xì)信息)
svcscan Windows服務(wù)列表掃描
symlinkscan 符號(hào)鏈接對(duì)象池掃描
thrdscan 線程對(duì)象池掃描
threads 調(diào)查_(kāi)ETHREAD 和_KTHREADs
timeliner 創(chuàng)建內(nèi)存中的各種痕跡信息的時(shí)間線
timers 打印內(nèi)核計(jì)時(shí)器及關(guān)聯(lián)模塊的DPC
truecryptmaster 恢復(fù)TrueCrypt 7.1a主密鑰
truecryptpassphrase 查找并提取TrueCrypt密碼
truecryptsummary TrueCrypt摘要信息
unloadedmodules 打印卸載的模塊信息列表
userassist 打印注冊(cè)表中UserAssist相關(guān)信息
userhandles 轉(zhuǎn)儲(chǔ)用戶句柄表
vaddump 轉(zhuǎn)儲(chǔ)VAD數(shù)據(jù)為文件
vadinfo 轉(zhuǎn)儲(chǔ)VAD信息
vadtree 以樹(shù)形方式顯示VAD樹(shù)信息
vadwalk 顯示遍歷VAD樹(shù)
vboxinfo 轉(zhuǎn)儲(chǔ)Virtualbox信息(虛擬機(jī))
verinfo 打印PE鏡像中的版本信息
vmwareinfo 轉(zhuǎn)儲(chǔ)VMware VMSS/VMSN 信息
volshell 內(nèi)存鏡像中的shell
windows 打印桌面窗口(詳細(xì)信息)
wintree Z順序打印桌面窗口樹(shù)
wndscan 池掃描窗口站
yarascan 以Yara簽名掃描進(jìn)程或內(nèi)核內(nèi)存

 

 

查看系統(tǒng)進(jìn)程列表

volatility_2.6_win64_standalone.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 pslist

圖表 9 查看系統(tǒng)進(jìn)程列表
圖表 9 查看系統(tǒng)進(jìn)程列表

 

將進(jìn)程列表導(dǎo)出為txt文件

volatility_2.6_win64_standalone.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 pslist?> Win7_SP1_x86_pslist.txt

圖表 10 進(jìn)程列表及數(shù)據(jù)導(dǎo)出
圖表 10 進(jìn)程列表及數(shù)據(jù)導(dǎo)出

 

查看網(wǎng)絡(luò)通訊連接信息

volatility_2.6_win64_standalone -f Win7_SP1_x86.vmem –profile=Win7SP1x86 netscan

圖表 11 查看網(wǎng)絡(luò)通訊連接信息
圖表 11 查看網(wǎng)絡(luò)通訊連接信息

 

提取內(nèi)存中的注冊(cè)表信息

volatility_2.6_win64_standalone -f Win7_SP1_x86.vmem –profile=Win7SP1x86 dumpregistry

圖表 12?內(nèi)存中的注冊(cè)表信息提取
圖表 12?內(nèi)存中的注冊(cè)表信息提取

 

提取內(nèi)存中的MFT記錄信息

volatility_2.6_win64_standalone -f Win7_SP1_x86.vmem –profile=Win7SP1x86 mftparser

圖表 13?內(nèi)存中的MFT記錄信息提取
圖表 13?內(nèi)存中的MFT記錄信息提取

 

導(dǎo)出內(nèi)存中的MFT記錄數(shù)據(jù)

volatility_2.6_win64_standalone -f Win7_SP1_x86.vmem –profile=Win7SP1x86 mftparser –output-file=mftverbose.txt -D mftoutput

圖表 14??MFT記錄中的常駐文件的導(dǎo)出
圖表 14??MFT記錄中的常駐文件的導(dǎo)出

 

表格 2?Volatility常用命名參數(shù)及功能對(duì)照表

:以下表格中用vol.exe替代volatility_2.6_win64_standalone.exe

功能 命令行及參數(shù)
查看進(jìn)程列表 Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 pslist
查看進(jìn)程列表(樹(shù)形) Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 pstree
查看進(jìn)程列表(psx視圖) Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 psxview
查看網(wǎng)絡(luò)通訊連接 Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 netscan
查看加載的動(dòng)態(tài)鏈接庫(kù) 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
查看服務(wù)列表 Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 svcscan
查看Windows帳戶hash Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 hashdump
查看最后關(guān)機(jī)時(shí)間 Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 shutdowntime
查看IE歷史記錄 Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 iehistory
提取注冊(cè)表數(shù)據(jù) Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 dumpregistry
解析MFT記錄 Vol.exe -f Win7_SP1_x86.vmem –profile=Win7SP1x86 mftparser
導(dǎo)出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

 

上一篇:

相關(guān)新聞