【Linux內存分析工具】Volatility

2022-01-29 電子物證

    Volatility是一個開源的Windows,Linux,Mac,Android的內存取證分析工具,由python編寫成,命令行操作,支持各種作業系統。本次討論主要基於Linux下Volatility的分析。

    Volatility有豐富的插件命令,能夠加載相應的配置文件profile 進行加載插件。需要特別說明的是,windows系統的profiles相當齊全,但linux下的profile就得自己製作了。

1、kali便捷版

      2017版kali自帶有volatility,在「應用程式」-「數字取證」中。只需裝載kali,不用任何配置,就可以享受volatility。

下載地址推薦:

https://pan.baidu.com/s/1mbzHoRBs44etfQtXXAXx0Q  提取碼:jj70

       跟LiME一樣,volatility作為開源工具,亦可以直接下載至Linux中解壓使用。但在Linux中自主配置volatility時,需要考慮當前系統是否存在一些輔助包。

volatility安裝包下載地址:

https://github.com/volatilityfoundation/volatility/archive/master.zip

安裝步驟 :將volatility安裝包下載及解壓至Linux下,終端進入volatility解壓路徑執行命令:

       Python setup.py install

運行volatility:vol.py --info

                       或者Python ./vol.py --info

       在運行過程中若出現如下圖錯誤,可能因系統缺少pycrypto,distorm這兩個輔助包而無法加載相應插件導致的。

解決方法:

     下載pycrypto:

https://pypi.org/project/pycrypto/#files

     下載distorm:

https://pypi.org/project/distorm3/#files

     安裝輔助包:分別進入pycrypto/distorm解壓文件路徑執行命令:Python setup.py install

     在安裝輔助包時亦可能出現缺失Python的頭文件和靜態庫包導致安裝失敗問題,這時便需要在系統上安裝python-dev開發包,安裝命令:apt-get install python-dev。由於系統環境不同,輔助包的安裝也有可能出現許多不一樣的錯誤且複雜無法解決,可以暫且忽視「缺少輔助包錯誤」亦直接使用volatility常用命令。

    在前面說過,Linux下的profile是需要自己製作的,其實,對應Linux鏡像的Profile製作原理很簡單,把內核system.map文件和 module.dwarf文件打包成的一個zip文件即可,具體如下:

1、找system.map文件:

       在/boot目錄下找到system.map文件,一般格式為System.map-x.xx.x-x-amd64,如下圖方框所示:

.進入「/usr/src/kernels」查看,確保安裝必要的linux頭文件

.進入「/lib/modules」路徑下,創建build和source的軟連接:

ln -s /usr/src/linux-headers-x.xx.x-x-amd64 build

ln -s /usr/src/linux-headers-x.xx.x-x-common source

.將/volatility/tools/linux目錄設置為777權限

.在「/volatility/tools/linux」目錄,執行make命令,即可得到module.dwarf

     在make命令之後,若出現「dwarfdump:未找到命令」錯誤,如下圖:

則說明該環境缺少dwarfdump工具,需安裝,否則無法寫入module.dwarf,安裝方法如下:

安裝:yum install elfutils-devel

獲取dwarfdump的源文件:

 wget http://www.prevanders.net/libdwarf-20140413.tar.gz

解壓壓縮包:tar -xz libdwarf-20140413.tar.gz

執行命令:#./configure

                  # Make

執行以上兩條命令後,進入dwarfdump文件夾下執行命令:Make install

自此dwarfdump就安裝好了。

       將上面得到的module.dwarf和system.map放在一起打包為ZIP文件,就是我們需要的profile文件。再將製作好的ZIP文件放置volatility/plugins/overlays/linux/目錄下,通過volatility --info查看,就可以看到我們配置好profile文件了(volatility會以它識別方式重新命名配置文件)。

使用volatility工具對Centos內存鏡像分析:

volatility版本:volatility2.6.1

Centos版本:Centos 7

內存鏡像大小及類型:使用Lime工具生成,格式為.Lime,大小為1G。

./vol.py -f /root/centos.lime --profile=Linuxcentos7_x64 linux_pslist

./vol.py -f /root/centos.lime --profile=Linuxcentos7_x64 linux_netstat

./vol.py -f /root/centos.lime --profile=Linuxcentos7_x64 linux_bash

./vol.py -f /root/centos.lime --profile=Linuxcentos7_x64 linux_bash_env

vol.py -f /root/centos.lime --profile=Linuxcentos7_x64 linux_arp

vol.py -f /root/centos.lime --profile=Linuxcentos7_x64 linux_getcwd

vol.py -f /root/centos.lime --profile=Linuxcentos7_x64 linux_ifconfig

vol.py -f /root/centos.lime --profile=Linuxcentos7_x64 linux_dynamic_env

      以上就是部分常用命令列舉,剩下部分可以參照以下附表。

來源:廣西南寧平衡信息技術有限公司,作者:Three-H

相關焦點

  • 圖形化內存分析工具volatility workbench
    下半年來了,離美亞杯開賽的日子也不遠了,大家都懂的,每年都有內存分析題目。
  • Volatility內存分析工具-某即時通訊軟體Windows端資料庫密鑰的分析
    這裡解析內存鏡像我們還是用Volatility。Volatility是一款開源內存取證框架,能夠對導出的內存鏡像進行分析,通過獲取內核數據結構,使用插件獲取內存的詳細情況以及系統的運行狀態。分析內存鏡像並判斷適用的配置文件(profile)     命令:volatility.exe –f memdump.mem imageinfo
  • 藍隊安全 : 內存取證(下-分析內存)
    在我們的上一篇 藍隊安全 : 內存取證(上-獲得內存) 中我們講解並實戰了在不同系統平臺下獲得內存的方法,本次我們就著手分析 dump 出來的內存文件,在實戰中進一步的學習內存取證的知識點.VolatilityVolatility,作為內存取證最為常用的工具,是必須要掌握的。
  • 實例講解基於Volatility的內存分析技術Part 1
    閱讀清單:· 內核模式· 用戶模式· 虛擬內存· Windows進程一點背景知識:內存取證(有時稱為內存分析)是指對計算機內存轉儲中易失性數據進行的一種分析。由於攻擊者可以開發只駐留在內存中而不在硬碟落地的惡意軟體,從而使標準的計算機取證方法幾乎看不到它。這使得內存取證工具變得愈發重要。Volatility是一個先進的內存取證框架。它為調查人員提供了許多自動工具,人們可以利用其先進的內存分析技術揭示主機上的惡意活動。需要指出的是,該框架是用python實現的,而且是開源的。
  • Volatility學習筆記一:使用手冊
    0x00 概述Volatility是一款開源內存取證框架,能夠對導出的內存鏡像進行分析,通過獲取內核數據結構
  • 使用開源工具進行 Linux 內存取證 | Linux 中國
    計算機的作業系統和應用使用主內存(RAM)來執行不同的任務。這種易失性內存包含大量關於運行應用、網絡連接、內核模塊、打開的文件以及幾乎所有其他的內容信息,但這些信息每次計算機重啟的時候都會被清除。內存取證(Memory forensics)是一種從內存中找到和抽取這些有價值的信息的方式。Volatility 是一種使用插件來處理這類信息的開源工具。
  • 內存解析-volatility的圖形化插件volexp
    這不小知趕緊補上,這周給大家介紹volatility和它的圖形化插件volexp的使用。2021新年首發-Linux和MAC系統內存鏡像如何獲取?內存解析-利用Volatility提取Windows系統中的密碼volatility其實使用起來不難,我們先來看下傳統的volatility使用用法分為幾步:1、獲取內存鏡像的作業系統版本volatility -f 內存鏡像名稱<xxx.img> imageinfo
  • 【Volatility】取證實戰
    來源:360轉自:鵬越網絡空間安全研究院作者:beswing這幾天和麥香表哥一直在玩取證的事情,我也好好學習了Volatility這個神器,一個開源的Windows,Linux,MaC,Android的內存取證分析工具
  • 取證分析 | Volatility工具使用
    Volatility是一款開源的內存取證分析工具,支持Windows,Linux,MaC,Android等多類型作業系統系統的內存取證方式。該工具是由python開發的,目前支持python2、python3環境。接下來小編將帶領大家學習Volatility工具的安裝及使用。
  • 【內存取證 】Volatility基本用法
    收錄於話題 #滲透工具然後我們換一個就可以看到md5的密碼隨後用暴力破解就可以了
  • Volatility-內存取證工具使用(1)
    1、部署安裝1.安裝Volatility1.安裝標準包1.下載地址https://www.volatilityfoundation.org
  • 安全藍隊 : 內存取證(上-獲得內存)
    藍隊安全 : 內存取證(獲得內存)前言內存取證一般指對計算機及相關智能設備運行時的物理內存中存儲的臨時數據進行獲取與分析,提取重要信息。在主機存活時發現系統被入侵, 然後直接把機器的運行內存 dump 下來,對運行內存進行分析,還原一些進程的中的信息。
  • 內存取證與應用
    當然對於網絡犯罪,基於虛擬機來獲取內存證據也是一個非常好的方法,流行的虛擬機有很多,有VMware、Virtual Box和Virtual PC等等,這裡用VMware workstation來進行舉例說明。
  • 惡意代碼分析-工具收集
    惡意軟體自動化分析工具套件文檔分析工具JavaScript分析工具系統&文件監視工具shellcode分析工具網絡分析工具URL分析工具SWF分析工具內存取證分析工具調試器反彙編工具十六進位編輯器查殼工具
  • 惡意代碼分析-工具收集 (20201211學習筆記)
    惡意軟體自動化分析工具套件文檔分析工具JavaScript分析工具系統&文件監視工具shellcode分析工具網絡分析工具URL分析工具SWF分析工具內存取證分析工具調試器反彙編工具十六進位編輯器查殼工具
  • 淺談內存取證
    .內存取證作為傳統文件系統取證的重要補充,是計算機取證科學的重要組成部分,通過全面獲取內存數據、詳盡分析內存數據,並在此基礎上提取與網絡攻擊或網絡犯罪相關的數字證據,近年來,內存取證已贏得安全社區的持續關注,獲得了長足的發展與廣泛應用,在網絡應急響應和網絡犯罪調查中發揮著不可替代的作用.首先回顧了內存取證研究的起源和發展演化過程;其次介紹了作業系統內存管理關鍵機制;然後探討了內存取證的數據獲取和分析方法
  • Linux內存查看工具---Smem
    物理內存不足對Linux桌面系統和伺服器系統的性能影響都很大。當你的計算機變慢時,要做的第一件事就是釋放內存。
  • Linux下內存洩漏工具
    嵌入式linux QQ交流群:175159209,歡迎愛好者加入交流技術問題!
  • 【Windows內存取證】
    Volatility內存取證軟體是一款開源的內存分析工具,支持各種作業系統,採用命令行的方式分析內存鏡像。下面就介紹常用的指令來分析內存。1. //將內存中的某個進程保存出來。  2. volatility.exe -f memory.raw --profile= Win81U1x86 memdump -p 4 -D C:\111
  • 技巧:詳細分析Linux伺服器內存
    Linux伺服器內存還剩多少我們會關心,但是我們更應該關心Linux伺服器內存工作方式、分配方式,這樣我們就會不必去擔心到底還剩多少內存,怎麼才能保證內存足夠我們來使用和分配