Log4j 漏洞引發全球開源軟體安全危機,揭露了企業供應鏈的巨大風險!本文深入剖析開源軟體的安全管理問題與風險來源,並提供企業五大防護策略,協助資安人員落實供應鏈治理、全面修補系統漏洞。
從wiki引用的說明,Volatility是一個用於事件響應和惡意軟體分析的開源記憶體取證框架,採用Python編寫,支援Microsoft Windows、macOS和Linux(從版本2.5[1]開始)。
從官方說明中,目前穩定版本為Volatility 2.6、更新中版本為Volatility 3。
有興趣的可以在這邊下載:
https://www.volatilityfoundation.org/releases
https://github.com/volatilityfoundation/volatility/wiki/Memory-Samples
都下載安裝完成後可以用-h 先查詢指令,相關語法也可以在下列網址上進行查詢:
https://github.com/volatilityfoundation/volatility/wiki/Command-Reference
觀察memory檔案
這次使用Malware - Cridex Windows XP SP2 x86
※python vol.py -f xxxx.vmem imageinfo

可以看到Suggested Profile(s) 這個imageinfo的可能系統類型
下面列出的Type(Service Pack)可以讓我們確認該映像檔版本來進行收斂查詢值
EX:python vol.py -f xxxx.vmem --profile=WinXPSP2x86 pslist

※pstree 可以看到父子process關聯

※psscan 深度搜尋,可以搜尋隱藏的process (目前此範例無隱藏process)

※psxview 主要可以確認 pslist 與psscan中,是否有查詢出process的差異,如果有就需要注意

※connections 查詢連線,可以看到1484這個PID有做對外連線 IP:41.168.5[.]140:8080
參照上面我們查出來的process ID 可以知道PID:1484 = explorer.exe
看到這邊就要去想為什麼explorer.exe(檔案總管)會去做對外連線

※connscan 可以查詢是否有隱藏連線,查詢完之後發現還多了一個連線,連線到IP:125.19.103[.]192:8080

拿到這些連線後我們可以拿去做一些相關查詢等動作,可以當作一些IR查詢的相關輔助資料。
※getsids 可以查詢各process有關的SID 像是可以看到reader_sl.exe 有繼承explorer.exe權限等

※printkey :可以查詢registry key的值資料型態等
像是 printkey -K “SAM\Domains\Account\Users\Names”
可以查該系統上有哪些USER


除了github上提供的那些比較舊的memory檔案之外,如果有機會拿到其他memory時候,就利用Volatility來協助調查吧。
有任何資安問題,歡迎隨時與NEITHNET團隊聯繫!
參考資料:
https://github.com/volatilityfoundation/volatility
https://www.volatilityfoundation.org/contest