常见的使用方法

查看镜像信息

1
volatility -f ch2.dmp imageinfo

根据下面的内容,选择合适的profile进行后续的测试

Suggested Profile(s) : Win7SP1x86_23418, Win7SP0x86, Win7SP1x86_24000, Win7SP1x86

这里选择 Win7SP1x86

查看镜像内的文件

no.1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[email protected]:~# volatility -f ch2.dmp --profile=Win7SP1x86 hivelist
Volatility Foundation Volatility Framework 2.6
Virtual Physical Name
---------- ---------- ----
0x8ee66740 0x141c0740 \SystemRoot\System32\Config\SOFTWARE
0x90cab9d0 0x172ab9d0 \SystemRoot\System32\Config\DEFAULT
0x9670e9d0 0x1ae709d0 \??\C:\Users\John Doe\ntuser.dat
0x9670f9d0 0x04a719d0 \??\C:\Users\John Doe\AppData\Local\Microsoft\Windows\UsrClass.dat
0x9aad6148 0x131af148 \SystemRoot\System32\Config\SAM
0x9ab25008 0x14a61008 \SystemRoot\System32\Config\SECURITY
0x9aba79d0 0x11a259d0 \??\C:\Windows\ServiceProfiles\LocalService\NTUSER.DAT
0x9abb1720 0x0a7d4720 \??\C:\Windows\ServiceProfiles\NetworkService\NTUSER.DAT
0x8b20c008 0x039e1008 [no name]
0x8b21c008 0x039ef008 \REGISTRY\MACHINE\SYSTEM
0x8b23c008 0x02ccf008 \REGISTRY\MACHINE\HARDWARE
0x8ee66008 0x141c0008 \Device\HarddiskVolume1\Boot\BCD

no.2

1
volatility -f ch2.dmp --profile=Win7SP1x86 filescan

保存内存中的文件

1
volatility -f [内存文件] --profile=[配置文件] dumpfiles -Q [偏移地址] -D [保存路径]

查看系统注册表

system注册表–>hivelist

1
volatility -f [内存文件] --profile=[配置文件] hivelist

打印注册表中对应表的数据

1
2
3
volatility -f [内存文件] --profile=[配置文件] hivedump -o [虚拟地址]

这个是打印的一个大表中的小表

image

查看主机名

计算机名在SYSTEM\ControlSet\Control\ComputerName\ComputerName

1
[email protected]:~# volatility -f ch2.dmp --profile=Win7SP1x86 printkey -o 0x8b21c008 -K 'ControlSet001\Control\ComputerName\ComputerName'

这里的ControSet001是根据上一步查询结果来确定的

查看用户名

1
volatility -f ch2.dmp --profile=Win7SP1x86 printkey -K "SAM\Domains\Account\Users\Names"

查看cmd命令历史记录

no.1

1
2
3
4
5
6
7
8
9
10
11
12
[email protected]:~# volatility -f ch2.dmp --profile=Win7SP1x86 cmdscan
Volatility Foundation Volatility Framework 2.6
**************************************************
CommandProcess: conhost.exe Pid: 3228
CommandHistory: 0x2ff638 Application: cmd.exe Flags: Allocated, Reset
CommandCount: 5 LastAdded: 4 LastDisplayed: 4
FirstCommand: 0 CommandCountMax: 50
ProcessHandle: 0x64
Cmd #0 @ 0x2fcd58: cd %temp%
Cmd #1 @ 0x2fd348: dir
Cmd #2 @ 0x2e1038: cd imagedump
Cmd #3 @ 0x2fd378: dir

no.2

1
volatility -f ch2.dmp --profile=Win7SP1x86 consoles

说一下conhost.exe cmd输入的命令最终都由conhost.exe处理(Windows 7之前的csrss.exe)

no.3

显示进程命令行参数 具体查看一些可以进程的命令行参数

1
volatility -f ch2.dmp --profile=Win7SP1x86 cmdline

查看网络

1
2
3
4
[email protected]:~# volatility -f ch2.dmp --profile=Win7SP1x86 netscan
Volatility Foundation Volatility Framework 2.6
Offset(P) Proto Local Address Foreign Address State Pid Owner Created
0xbab2288 TCPv4 0.0.0.0:445 0.0.0.0:0 LISTE

查看剪切板中的数据

1
volatility -f [内存文件] --profile=[配置文件] clipboard

提取用户hash

命令格式

1
volatility -f ch2.dmp --profile=Win7SP1x86 hashdump -y system虚地址 -s SAM虚地址

先查一下文件信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[email protected]:~# volatility -f ch2.dmp --profile=Win7SP1x86 hivelist
Volatility Foundation Volatility Framework 2.6
Virtual Physical Name
---------- ---------- ----
0x8ee66740 0x141c0740 \SystemRoot\System32\Config\SOFTWARE
0x90cab9d0 0x172ab9d0 \SystemRoot\System32\Config\DEFAULT
0x9670e9d0 0x1ae709d0 \??\C:\Users\John Doe\ntuser.dat
0x9670f9d0 0x04a719d0 \??\C:\Users\John Doe\AppData\Local\Microsoft\Windows\UsrClass.dat
0x9aad6148 0x131af148 \SystemRoot\System32\Config\SAM
0x9ab25008 0x14a61008 \SystemRoot\System32\Config\SECURITY
0x9aba79d0 0x11a259d0 \??\C:\Windows\ServiceProfiles\LocalService\NTUSER.DAT
0x9abb1720 0x0a7d4720 \??\C:\Windows\ServiceProfiles\NetworkService\NTUSER.DAT
0x8b20c008 0x039e1008 [no name]
0x8b21c008 0x039ef008 \REGISTRY\MACHINE\SYSTEM
0x8b23c008 0x02ccf008 \REGISTRY\MACHINE\HARDWARE
0x8ee66008 0x141c0008 \Device\HarddiskVolume1\Boot\BCD

在获取hash

1
2
3
4
5
[email protected]:~# volatility -f ch2.dmp --profile=Win7SP1x86 hashdump -y 0x8b21c008 -s 0x9aad6148
Volatility Foundation Volatility Framework 2.6
Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
John Doe:1000:aad3b435b51404eeaad3b435b51404ee:b9f917853e3dbf6e6831ecce60725930:::

一种简单的获取方式

1
volatility -f [内存文件] --profile=[配置文件] hashdump

查看进程

1
2
3
4
5
volatility -f ch2.dmp --profile=Win7SP1x86 pslist 无法显示隐藏或以终止的进程

volatility -f [内存文件] --profile=[配置文件] psscan 显示终止或隐藏的进程

volatility -f ch2.dmp --profile=Win7SP1x86 pstree 以进程树的形式显示

导出内存数据

1
2
3
volatility -f [内存文件] --profile=[配置文件] memdump -p [PID] -D [保存路径]

volatility -f [内存文件] --profile=[配置文件] memdump -n [文件名(不带后缀)] -D [保存路径]

查看notepad文件

只能查看进程中notepad.exe中的内容

1
volatility -f [内存文件] --profile=[配置文件] notepad

查看IE浏览器的历史记录

1
volatility -f [内存文件] --profile=[配置文件] iehistory

查看DLL文件

1
volatility -f [内存文件] --profile=[配置文件] dlllist -p [PID]

保存进程中的exe文件

1
volatility -f [内存文件] --profile=[配置文件] procdump -p [PID] -D [保存路径]

一些扩展参数解释

https://blog.csdn.net/dmbjzhh/article/details/79425483

Windows的一些进程解释

1
2
3
4
5
6
7
Dumpit.exe 一款内存镜像提取工具。
TrueCrypt.exe 一款磁盘加密工具。
Notepad.exe windows自带的记事本。
Mspaint,exe windows自带画图工具。
svchost.exe 辅助DLL文件的进程
iexplore.exe ie浏览器
conhost.exe 控制台程序 xp里面叫csrss.exe