简单的内存取证
工具: 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.zip 和 hint.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}