Volatility-内存取证工具
1.Volatility功能介绍
Volatility是一款开源的内存取证分析工具,支持Windows,Linux,MaC,Android等多类型操作系统系统的内存取证方式。该工具是由python开发的,目前支持python2、python3环境。接下来小编将带领大家学习Volatility工具的安装及使用。
工具下载地址:https://github.com/volatilityfoundation
官网下载地址:https://www.volatilityfoundation.org/
2.Volatility安装方式
目前作者已公布了两个版本的Volatility,Volatility2是基于py2环境,Volatility3是基于py3环境,接下来小编将带领大家分别对这两个环境进行安装。
(1)Volatility3环境的安装
首先请确保系统中已安装python3环境,安装pycrypto库函数
进入到Volatility目录,执行如下指令,即可将Volatility成功安装
>>> sudo python3 setup.py install
此时,就成功安装了Volatility3工具,可以执行如下指令查看是否安装成功
>>> sudo python3 vol.py -h
(2)Volatility2环境的安装
首先请确保系统中已安装python2环境,安装pycrypto库函数
首先通过网站下载pycrypto安装包:https://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/
注意:如果遇到报错可尝试执行如下命令,解决问题:
>>> sudo apt-get install python-dev
>>> sudo pip install setuptools进入到Volatility目录,执行如下指令,即可将Volatility成功安装
>>> sudo python2 setup.py install
此时,就成功安装了Volatility2工具,可以执行如下指令查看是否安装成功
>>> sudo python2 vol.py -h
3.Volatility使用方式
Volatility2的使用方法
(1)获取系统基本信息
>>>python2 vol.py -f ../Target.vmem imageinfo
(2)列出进程信息
>>> python2 vol.py -f ../Target.vmem --profile=Win7SP1x64 pslist
tips:psxview : 可查看一些隐藏进程pstree : 以树的形式来列出正在进行的进程,不会显示出隐藏或未链接的进程(套神说的)
(3)提取某进程文件内容
>>> python2 vol.py -f ../Target.vmem --profile=Win7SP1x64 memdump -p 516 -D /
(4)查看文件目录
>>> python2 vol.py -f ../Target.vmem --profile=Win7SP1x64 filescan
(5)提取某文件内容
>>>python2 vol.py -f ../Target.vmem --profile=Win7SP1x64 dumpfiles -Q 0x000000007fe72430 --dump-dir=./
(6)调用mimikatz抓取系统口令
>>> python2 vol.py -f ../Target.vmem --profile=Win7SP1x64 mimikatz
(7)查看cmd命令历史
>>>volatility -f ../Target.vmem --profile=Win7SP1x64 cmdscan
(8)查看镜像的历史命令
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 cmdscan
(9)看到指令的输入和输出
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 consoles
(10)列出所有命令行下运行的程序
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 cmdline
(11)显示进程权限
(12)显示环境变量
(13)查找flag文件
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 filescan
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 filescan | grep "flag"
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 filescan | grep -E
volatility -f memory --profile=Win7SP1x64 filescan | grep "flag"
(14)dump目标文件
volatility -f memory --profile=Win7SP1x64 dumpfiles -Q 0x000000001e85f430 --dump-dir=./
(15)查看系统正在运行的编辑本
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 editbox
(16)导出系统的注册表
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 dumpregistry --dump-dir=./registry/
(17)查看并导出屏幕的截屏【需要安装PIL库】
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 screenshot -D ./
(18)查看剪贴板数据,加一个-v可以导出相关的数据
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 clipboard
(19)查看浏览器的历史记录
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 iehistory
(20)查看用户名
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 printkey -K "SAMDomainsAccountUsersNames"
(21)打印出最后登录的用户
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 printkey -K "SOFTWAREMicrosoftWindows NTCurrentVersionWinlogon"
(22)获取各个账号的MD5加密密码
涛神这里是使用hivelist找出获取system 的 virtual 地址,SAM 的 virtual 地址,然后使用hashdump -y SYSTEM_virtual -x SAM_virtual
volatility_2.6.exe -f .Target.vmem --profile=Win7SP1x64 hashdump
(23)直接hashdump的
(24)列出SAM表用户
volatility -f memory --profile=Win7SP1x64 printkey -K "SAMDomainsAccountUsersNames"
(25)获取system和SAM地址
volatility -f memory --profile=Win7SP1x64 hivelist
Volatility3的使用方法
(1) 获取系统基本信息
>>>sudo python3 vol.py -f ../Target.vmem windows.info
(2) 列出进程信息
(3) 提取某进程文件内容
>>>sudo python3 vol.py -f /opt/forensic-analysis/Target.vmem windows.pslist --pid 516 --dump
(4) 查看文件目录
(5) 提取某文件内容(此功能存在问题,待进一步解决!)
0x0
欢迎
点赞 + 在看、分享本公众号 给更多师傅们哈注:
注:文章部分来源于CSDN,请注意辨识;
封面来源于壁纸网站:http://www.netbian.com/s/chaogaoqing
原文始发于微信公众号(安全猎人):Volatility-内存取证工具
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论