1. 程式人生 > >【取證分析】The Art of Memory Forensics-Windows取證(Virut樣本取證)

【取證分析】The Art of Memory Forensics-Windows取證(Virut樣本取證)

文件 explorer 父進程 所有 ddr png 筆記 特定 sni

1、前言

The Art of Memory Forensics真是一本很棒的書籍,其中使用volatility對內存進行分析的描述可以輔助我們對更高級類的木馬進行分析和取證,這裏對書中的命令進行了筆記記錄。

2、volatility-Windows命令

與分析Linux鏡像相似,而Windows系統的profile都是volatility自帶的,無需再制作。

技術分享圖片

  • 選擇元數據 imageinfo

查看正在分析的內存樣本的摘要信息。顯示主機所使用的操作系統版本、服務包以及硬件結構(32位或64位)、頁目錄表的起始地址和該獲取該內存鏡像的時間等信息。顯示出當前所支持的元數據系統。

技術分享圖片

  • 結束進程分析 psscan

使用PSSCAN命令。可以找到以前終止的進程(非活動)和被rootkit隱藏或未鏈接的進程。輸出顯示ping.exe、ipconfig.exe兩個進程啟動與退出時間。

技術分享圖片

技術分享圖片

  • 進程列表 pslist

列出系統進程,顯示偏移量、進程名稱、進程ID、父進程ID、線程數、句柄的數量,以及進程啟動和退出時的日期/時間。

技術分享圖片

  • 進程樹 pstree

查看以樹形形式列出的進程,與pslist顯示的技術一樣,但不會顯示隱藏或未鏈接的進程。子進程使用縮進和句點表示。

技術分享圖片

  • 檢測橫向運動 getsids

查看與進程關聯的SIDs(安全標識符),識別惡意升級特權的進程,以及哪些進程屬於特定的用戶。例子中以explorer.exe為示例,其中一個SID (S-1-5-21-[snip]-1115)沒有顯示帳戶名稱。
EXE是管理員的成員組。在這個特殊的場景,攻擊者組合了一個毒葛(PI)遠控。(RAT)使用一個Pass the Hash (PtH)攻擊。

技術分享圖片

技術分享圖片

  • 識別遠程映射驅動器

許多攻擊者都依賴於像net view和net use這樣的命令來探索周圍環境。通過遠程驅動器功能獲取對服務器的讀訪問權限,在內網進行橫向運動。

技術分享圖片

  • 識別遠程映射驅動器-handles

在內存中找到遠程映射驅動器的證據,可通過查找文件句柄實現。使用handles命令可查看文件、註冊表鍵、互斥鎖、命名管道、事件、窗口站、桌面、線程和所有其他類型的可保存執行對象。

技術分享圖片

技術分享圖片

  • 識別遠程映射驅動器

另一種檢測遠程映射共享的方法,可以結合使用。通過symlinkscan插件檢查符號鏈接。

技術分享圖片

  • 進程內存查看 memmap
    memmap命令顯示了哪些頁面是內存駐留的,給定一個特定的進程DTB。可顯示頁面的虛擬地址、頁面相應的物理偏移量以及頁面的大小。這個命令生成的映射信息來自底層地址空間的get_available_address方法。

技術分享圖片

  • 進程內存提取 memdump

要在一個進程中提取所有內存駐留頁面,可使用memdump命令將系統進程的可尋址內存提取到單個文件之中。

技術分享圖片

  • Yara規則掃描內存

Yara是Victor M. Alvarez (http://plusvic.github.io/yara)的一個快速靈活的工具。在任意數據集內的模式匹配。Yarascan命令可以通過虛擬內存進行掃描,可以指定PID掃描,掃描規則除了使用字符也可以使用匹配規則文件。

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

3、示例分析-virut

【取證分析】The Art of Memory Forensics-Windows取證(Virut樣本取證)