1. 程式人生 > >【乾貨】Windows記憶體獲取和分析---查詢惡意程序,埠

【乾貨】Windows記憶體獲取和分析---查詢惡意程序,埠

來源:Unit 5: Windows Acquisition 5.1 Windows Acquisition Windows Memory Acquisition and Analysis

 

調查人員檢查實體記憶體內容,以檢測惡意程序、威脅和記憶體駐留惡意軟體,以恢復密碼和獲取金鑰。

 

伏筆:rootkit,root代表最高許可權,kit表示軟體。合起來,最高許可權的軟體。如果存在惡意rootkit,利用它可以執行指令將程序與一些顯示程序列表介面的函式切斷關聯隱藏起來,你在工作管理員裡看不見。這東西的危害,不是隨隨便便安裝一個防毒軟體就可以搞得定的。需要時間徹查,掃描,對比,說白了就是用多方式得到結果,最後玩大家來找茬。要找到它就需要直接從記憶體的二進位制識別出程序,再把它們完整列出來。下面的工具Volatility就是這麼幹的。

 

基於python的開源工具包volatile Framework能夠從Windows和Linux UNIX記憶體映象中提取資訊。volatile框架支援各種外掛,包括PS列表(程序列表)、PS掃描(程序掃描)、DLL列表、模組、conn掃描、hive列表等,允許我們提取程序、威脅、登錄檔、網路連線和許多關鍵資訊。

就功能而言,谷歌的開源Rekall記憶體取證框架與volatile框架非常相似。谷歌的還可以提取記憶體映象,volatile無此功能,需要其他工具先把記憶體提好。

PS list和PS scan顯示的輸出之間的任何差異都可能表明rootkit可能安裝在可疑機器上。

 

Volatility記憶體分析演示

之前的文章說過AccessData的FTK Imager可以把記憶體dump出來。如果您執行的是虛擬機器,那麼 .vmem檔案包含虛擬機器主記憶體的副本。

 

SANS調查取證工具包已經安裝了volatile

which vol.py  這是Volatility的路徑   -h 看看外掛的資訊

 

提取出來的記憶體用的什麼作業系統,什麼時候提的 vol.py –f 檔案路徑 imageinfo

 

現在,在預設情況下,Volatility Framework將image作為WinXP SP 286來處理,如果是這樣的話,我們就不需要提供image profile,如果執行的是其他外掛,它會抱怨我不知道這個profile是什麼。然後,您必須提供一個配置檔案。加到上述命令後,什麼命令怎麼加都在它的幫助資訊裡,遇到了自行翻閱。

 

列出所有程序   這和windows工作管理員的結果差不多   程序如果被隱藏,將看不見它

 

將掃描的結果與列出的結果對比。有時rootkits隱藏在svchost.exe中

 

看一下連線的網路

發現與IP地址80埠有連線,一般情況,使用者是不會去配置瀏覽器的,所以80代表瀏覽器。但是你怎麼確定它對不對?有沒有問題?這個時候,我們觀察PID,去掃描出來的程序裡面找發現它有問題。正常情況是開啟瀏覽器,瀏覽器使用80埠。但這裡對應的卻是svchost.exe這個程序,非常可疑。這是Windows系統檔案,但很多rootkits實際上隱藏在svchosts下。

 

 

這個可疑的程序,對應的IP地址,可以結合前面沒的檔案作為關鍵詞來搜尋,也可以用線上工具搜下這個IP是否被列入黑名單:IPVoid    VirusTotal     Shodan這三個線上工具

 

如果你是第一個發現此可疑IP的人,線上工具肯定搜不到。

 

還有其他的功能,比如檢視登錄檔啟動項,找到任何隱藏或注入的DLL。喜歡的自己去幫助裡面找到它們,每個外掛的工具功能是什麼,你就可以玩弄記憶體了。