内存取证
内存取证工具volatility 的使用:
volatility -f <文件名> –profile=<配置文件> <插件> [插件参数]
1 | 使用imageinfo插件来猜测dump文件的profile值:WinXPSP2x86 |
常见插件:
1 | Volatility -f file.raw –profile=WinXPSP2x86 notepad 查看当前展示的notepad文本 |
取证方法建议
收集数据的顺序很重要。必须首先收集易消失的数据。易失性数据是系统关闭时可能丢失的任何数据,例如连接到仍然在RAM中注册的网站。必须将先从最不稳定的证据中开始收集数据:
1 | (1)缓存 |
常见payload:
1.查看系统信息volatility -f mem.raw imageinfo
在Suggested Profiles中找到操作系统的信息
2.查看运行程序列表volatility -f mem.raw --profile=Win7SP1x64 pslist
部分常见进程分析:
wscntfy.exe,Windows系统关键进程,负责检查计算机的安全状态,包括防火墙、病毒防护软件、自动更新三个安全要素,如果这些服务状态不正常,系统就会在状态栏进行告警提示。这个进程也可能会被病毒软件和黑客程序伪装
ctfmon.exe,Microsoft Office产品套装的一部分,是有关输入法的一个可执行程序。它可以选择用户文字输入程序,和微软Office XP语言条。这不是纯粹的系统程序,但是如果终止它,可能会导致不可知的问题。另外,ctfmon.exe可能被感染上木马而成为病毒程序
wordpad.exe,是微软Microsoft Windows自带的免费字处理工具。
Conime.exe,输入法编辑器
Cmd.exe,windows系统的命令行程序
3.查看文件volatility -f mem.raw --profile=Win7SP1x64 filescan
4.用grep命令过滤volatility -f mem.raw --profile=Win7SP1x64 filescan |grep txt
5.提取文件volatility -f mem.raw --profile=Win7SP1x64 dumpfiles -Q 0x000000001e7c3420 -D aaa
6.看cmd下执行的文件volatility -f mem.raw --profile=Win7SP1x64 cmdscan
7.分离出cmd下执行的某个文件volatility -f mem.raw --profile=Win7SP1x64 memdump -p 2884 -D aaa
-p是进程号,flag的文件在进程号为2884,分离出的文件为流量包
8.提取账户密码volatility -f mem.raw --profile=Win7SP0x64 hashpump
9.查看网络连接volatility -f mem.raw --profile=Win7SP1x64 netscan
10.查看已经建立的网络连接
volatility -f mem.raw --profile=Win7SP1x64 netscan|grep ESTABLISHED
常见解题思路:
主要找到键盘数据文件
1.根据payload6查看信息,再直接利用foremost分离,将提取的信息结合分离出usb键盘数据文件
2.结合payload1-3\6,再利用binwalk -e 提取文件,再利用```Tshark -r 命令查看键盘数据,利用
tshark -T fields -e usb.capdata >file.path.name` 输出存为文件,即为键盘数据文件
USB通杀EXP
1 | ''' |