工作中,使用过Volatility进行内存取证的朋友可能已经注意到了,它有一个缺点:无法进行实时内存分析。那么,如果需要实时内存取证的话,该怎么办呢?别急,这时候Rekall就可以派上用场了。
Rekall的下载地址如下所示:
https://github.com/google/rekall/releases
Rekall支持以下操作系统:
· Microsoft Windows XP Service Pack 2和3
· Microsoft Windows 7 Service Pack 0和1
· Microsoft Windows 8和8.1
· Microsoft Windows 10
· Linux Kernels 2.6.24以及后续版本
· OSX 10.7-10.12.x
在本文中,我将使用Windows平台下的Rekall软件,该软件的安装非常简单,这里就不介绍了。
需要注意的是,Rekall需要以管理员身份运行才能执行实时分析。此外,有时还必须指定相应的配置文件才能进行分析。为了找到正确的配置文件,请在Rekall控制台中键入以下命令:
version_scan name_regex="krnl"
然后,还需要找到ntkrnlmp.pdb的guid
就这里来说,它为“5B396742883C48D0AB74C7374DEEE9161”。
现在,请输入下列命令,以退出rekall控制台:
quit
接着,使用以下命令再次运行rekall(注意,在命令中提供了相应的guid):
rekal live --profile=nt/GUID/5B396742883C48D0AB74C7374DEEE9161
这样,我们就可以跟rekall一起玩耍了,具体如下所示:
列出可用的插件
dir(plugins)
列出正在运行的进程:
pslist
列出进程树:
pstree
查看服务并将输出保存到services.txt文件中:
services(output="services.txt")