简单的内存取证

工具: volatility2.6 + gimp

使用插件 mimikatz 看看账户和密码

python2 vol.py --plugins=/plugins/ -f 'baby_misc.raw' --profile=Win7SP1x64 mimikatz

然后再使用 filescan 插件扫描一下可疑的文件

python2 vol.py -f 'baby_misc.raw' --profile=Win7SP1x64 filescan | grep -E 'png|jpg|gif|zip|rar|7z|pdf|txt|doc|xls'

可以看到有一个 flag.ziphint.txt,分别提取出来使用 dmpfiles 插件

python2 vol.py -f 'baby_misc.raw' --profile=Win7SP1x64 	dumpfiles -Q 0x000000003e7d2650 -D /

-Q 指定偏移量

-D 输出的目录 -D /flag

然后查看 hint.txt 文件,

然后我们使用 pslist 插件查看进程,发现可疑进程 calc.exe,使用 memdump插件进⾏转存

python2 vol.py -f 'baby_misc.raw' --profile=Win7SP1x64 memdump -n calc.exe -D /

将得到的 1516.dmp 文件使用 foremost 分离里面的文件,可以看到一个 zip 里面有 flag.zip

flag

因为没有环境了所以不知道对错,但是感觉是错的,我们之前得到的桌面上的 flag.zip 需要密码,所以我们应该找到密码。

后面发现一件文章 【CTF】利用volatility与Gimp实现Windows内存取证 - 个人文章 - SegmentFault 思否

可以利用 Gimp 打开,查看镜像中的系统界面

使用 Gimp

将我们 memdump 的文件,把后缀改成 .data 最后,拖入工具即可。

一开始是这样子的,我们将它放大就行,然后设置图像类型为 RGB透明,这样对比比较明显,可以比较容易发现有效信息,搜索了一下 win7 的分辨率,设置一下

然后就一直拖动位移就行,

这个位置可以看出来应该是有图像的,因为宽度不合适所以才这样,调整宽度直至图像清晰就行,现在就很明显了,继续调就行

拖动位移使图像居中,然后继续调整宽度,可以得到清晰的图像。

计算机上的数字应该是我们要利用的 132424464,直接去解压缩吧,不行,我们直接使用 windows 插件打印桌面窗口(详细信息)

python2 vol.py -f 'baby_misc.raw' --profile=Win7SP1x64 windows  | grep "132424464"

最后在,16 进制转一下得到密码, ^&G12BDd

flag:flag{fba99a87-2278-f175-5055-a47f5773c131}