volatility安装及使⽤
来源⾃我的博客
直接使⽤volatility⽆需安装,解压后即可使⽤。
volatility的依赖包:
# yum install pcre-devel libpcre++-devel python-devel pycrypto
其他可选的需要安装的软件包,这些分别与⼀些volatility插件功能相关,建议都安装
Distorm3, Yara, PIL, OpenPyxl, ujson
如果需要在其他的Python脚本中import volatility,则需要进⾏安装
# python setup.py build
# python setup.py install
默认安装位置为/usr/lib/python2.6/site-packages/volatility-2.表⽰安装的volatility为2.x版,基于python2.6的
python虚拟机安装后可在终端直接输⼊vol.py执⾏volatility.
因为可以全局执⾏,所以需要安装其他版本volatility时需要卸载之前的版本,或者覆盖安装成当前版本。
卸载⽅法:
# python setup.py install --
先安装⼀遍之前的版本,记录安装的⽂件路径
# | xargs rm -rf
删除安装的⽂件
如果直接在另⼀个版本的volatility⽂件夹中执⾏python vol.py, 则调⽤的是当前⽂件夹内的volatility,⽽不是已安装的。
安装后在终端输⼊vol.py –info
可显⽰详细信息。期中Profiles表⽰当前已加载能使⽤的profile命令。profile⽂件应放置在./volatility/plu
gins/overlays下⾯对应的操作系统⽂件夹中。
如果已经安装了volatility,那么读取的profile⽂件位置是在安装⽬录下的,⽽不是在volatility⽂件夹中,路径为/usr/lib/python2.6/site-packages/volatility-2./volatility/plugins/overlays/对应系统⽂件夹。
volatility标准⽤法是针对镜像⽂件的
$ python vol.py [plugin] -f [image] --profile=[profile]
plugin是插件名,-f表⽰针对镜像⽂件,image是镜像⽂件,profile是可⽤的profile⽂件
⽐如:
$ python vol.py pslist -f /path/to/memory.img --profile=W in7SP1x64
表⽰对⽂件/path/to/memory.img进⾏进程列表的获取,同时指出这img是Win7SP1x64的系统镜像。
volatility针对kvm中运⾏虚拟机的⽤法
$ python vol.py [plugin] -l [location] --profile=[profile]
其中-l表⽰选择位置,location是位置,也可⽤–location=LOCATION。
⽐如:
$ python vol.py linux_pslist -l vmi://vm04 --profile=Linuxliux6-64bitx64
表⽰对kvm中虚拟机vm04进⾏进程列表的获取,同时指出该运⾏的虚拟机为64bit的Linux操作系统。
volatility⾃带的profile只有windows的,可在github上下载其他各版本的profile⽂件,加载⽅法见第6条。例如,使⽤了profile⽂件CentOS65.zip, 通过命令vol.py –info查看得profile名为LinuxCentOS65x64,则调⽤时变成
$ vol.py linux_pslist -f /root/code/copy.raw --profile=LinuxCentOS65x64
$ vol.py linux_pslist -l vmi://vm04 --profile=LinuxCentOS65x64
可以在shell中导⼊环境变量作为volatility的默认参数
$ export VOLATILITY_PROFILE=Win7SP0x86
$ export VOLATILITY_LOCATION=file:///tmp/myimage.img
$ export VOLATILITY_KDBG=0x82944c28
$ python vol.py pslist
$ python vol.py files
利⽤volatility将运⾏的虚拟机转储为raw⽂件的⽅法
#python vol.py--profile=Linuxliux6-64bitx64-l vmi://vm04imagecopy--output-image=copy.raw
使⽤的是imagecopy指令,输出成copy.raw,⽂件⼤⼩与虚拟机指定内存相同。
如果raw⽂件转储时失败,那么运⾏vol.py可能会报No suitable address space mapping found的错误。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论