volatility(win64)
1.下载
volatility
下载地址:(我下载的版本2.6,并把名字稍微改了一下)
Release Downloads | Volatility Foundation
windows版
2.使用
1.查看基本信息
查看镜像的基本信息,使用的时候可以将这个软件和需要取证的镜像放到一起
例如:
打开终端,输入命令,
./volatility -f memory.img imageinfo
可以看到各种信息,标出的几个是比较重要的
2.查看进程
./volatility -f memory.img --profile=Win2003SP1x86 pslist
profile具体内容根据实际文件为准,pslist应该比较好理解就是进程的列表的意思。
tips:
把pslist可以替换成完成不同的功能
psxview : 可查看一些隐藏进程
pstree : 以树的形式来列出正在进行的进程,不会显示出隐藏或未链接的进程(套神说的)
psxview:
pstree:
3.查看镜像cmd的历史命令
./volatility -f memory.img --profile=Win2003SP1x86 cmdscan
4.查看指令的输入和输出
./volatility -f memory.img --profile=Win2003SP1x86 consoles
5.列出所有命令行下运行的程序
./volatility -f memory.img --profile=Win2003SP1x86 cmdline
这个命令的输出内容就很多了
6.显示进程权限
./volatility -f memory.img --profile=Win2003SP1x86 privs
这个命令输出内容巨多
7.显示环境变量
./volatility -f memory.img --profile=Win2003SP1x86 envars
8.找出所有文件
./volatility -f memory.img --profile=Win2003SP1x86 filescan
9.找特定名称的文件
搭配grep.exe使用
下载grep.exe并放到当前文件夹下
./volatility -h memory.img --profile=Win2003SP1x86 filesacn | findstr "flag"
10.找特定类型的文件
./volatility -h memory.img --profile=Win2003SP1x86 filescan | ./grep.exe -E “png”
11.通过相应的进程能直接dump出相关的文件
./volatility -f memory.img --profile=Win2003SP1x86 memdump -p xxx(PPID) --dump-dir=./
./volatility -f memory.img --profile=Win2003SP1x86 memdump -p 1992 --dump-dir=./
因为前面显示进程的命令中有1992这个PPID
再随便dump一个看看
./volatility -f memory.img --profile=Win2003SP1x86 memdump -p 1096 --dump-dir=./
12.查看系统正在运行的编辑本
./volatility -f memory.img --profile=Win2003SP1x86 editbox
13.导出系统的注册表
./volatility -f memory.img --profile=Win2003SP1x86 dumpregistry --dump-dir=./registry/
14.查看并导出屏幕的截屏
【需要安装PIL库】
安装PIL库:
win+R,输入cmd,打开终端,输入
pip install PIL
或者
easy_install Pillow
实在不行自行百度,这里不再赘述
./volatility -f memory.img --profile=Win2003SP1x86 dumpregistry --dump-dir=./registry/ screenshot -D ./
15.查看剪贴板数据
./volatility -f memory.img --profile=Win2003SP1x86 clipboard
加一个-v可以导出相关的数据
./volatility -f memory.img --profile=Win2003SP1x86 clipboard -v
这个文件没有剪贴板内容
16.查看浏览器的历史记录
./volatility -f memory.img --profile=Win2003SP1x86 iehistory
17.查看用户名
./volatility -f memory.img --profile=Win2003SP1x86 printkey -K "SAM\Domains\Account\Users\Names"
18.打印出最后登录的用户
./volatility -f memory.img --profile=Win2003SP1x86 printkey -K "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"
19.获取各个账号的MD5加密密码
1.hivelist找出获取system 的 virtual 地址,SAM 的 virtual 地址,
./volatility -f memory.img --profile=Win2003SP1x86 hivelist
2.使用hashdump -y SYSTEM_virtual -x SAM_virtual.
这个是SAM用户,就搞他
但是没找到SYSTEM用户
就无法继续
借一个图
./volatility -f memory.img --profile=Win2003SP1x86 hashdump -y xxx(SAM的virtual) -s xxx(SYSTEM的virtual)
能不能解出来靠运气
3.例题
[HDCTF2019]你能发现什么蛛丝马迹吗
BUU-page5-T6
参考:参考:(9条消息) volatility内存取证分析与讲解(持续更新)_小蓝同学`的博客-CSDN博客_volatility参数