内存取证之Volatility
(0)

内存取证之Volatility

volatility下载地址:https://www.volatilityfoundation.org/26

Tip

可以通过imageinfo中 profile信息查看系统详情 方便后续目标系统检测
1.png

使用

检测目标系统信息

volatility -f win7.raw imageinfo

查看运行的进程信息

volatility -f win7.raw --profile=Win7SPIx64 pslist

查看文件列表

volatility -f win7.raw --profile=Win7SPIx64 filescan |grep txt

下载感兴趣的文件

volatility -f win7.raw --profile=Win7SPIx64 dumpfile -Q 0x000007 -D dir #dir你保存的路径

提取系统的账号密码

volatility -f win7.raw --profile=Win7SPIx64 hashdump

查看网络通信连接

volatility -f win7.raw --profile=Win7SPIx64 netscan |grep ESTABLISHED

查看cmd历史记录

volatility -f win7.raw --profile=Win7SPIx64 cmdscan

导出nc进程传输的文件

volatility -f win7.raw --profile=Win7SPIx64 memdump -p 352 -D dir # 352为nc的进程号 dir 为保存的路径

操作参考

volatility -f win7.raw imageinfo  ##检测目标系统信息

volatility -f win7.raw --profile=Win7SPIx64 pslist ##查看运行的进程信息

 volatility -f /root/桌面/mem.dump imageinfo  ##获取dump的版本

 volatility -f WIN2012R2x64.raw --profile=Win8SP0x64 filescan ##扫描内存中的文件

 volatility -f WIN2012R2x64.raw --profile=Win8SP0x64 hivelist  ##列举缓存在内存中的注册表

 volatility -f WIN2012R2x64.raw --profile=Win8SP0x64 printkey -K "SAM\Domains\Account\Users\Names"  ##查看系统用户名

 volatility -f win7.raw --profile=Win7SPIx64 filescan |grep txt  ##查看文件列表

 volatility -f win7.raw --profile=Win7SPIx64 dumpfile -Q 0x000007 -D dir  ##下载感兴趣的文件,#dir你保存的路径

 volatility -f win7.raw --profile=Win7SPIx64 hashdump  ##提取系统的账号密码

 volatility -f win7.raw --profile=Win7SPIx64 netscan |grep ESTABLISHED  ##查看网络通信连接

 volatility -f win7.raw --profile=Win7SPIx64 cmdscan  ##查看cmd历史记录

 volatility -f win7.raw --profile=Win7SPIx64 memdump -p 352 -D dir  ##导出nc进程传输的文件,352为nc的进程号 dir 为保存的路径

 foremost 352.dmp  ##分割dmp文件

 volatility -f easy_dump.img --profile=Win7SP1x64 filescan | grep  -E 'jpg|png|jpeg|bmp|gif'  ##查找镜像中的文件

volatility -f mem.vmem --profile=WinXPSP2x86 userassist ##查看userassist键值包含系统或桌面执行文件的信息,如名称、路径、执行次数、最后一次执行时间等 

解题思路

一)、浏览器cookie信息中找flag

volatility -f Browser.raw imageinfo
volatility -f Browser.raw --profile=Win7SP1x64 pslist
volatility -f Browser.raw --profile=Win7SP1x64 pslist |find "chrome.exe" ##使用find查找所有谷歌浏览器进程
volatility.exe -f Browser.raw --profile=Win7SP1x64 memdump -p {对应的PID} -D ./ ##把每一个谷歌浏览器进程的数据保存为dmp格式的文件(这里的PID需要自己指定
使用010editer查找flag逐一筛选,在2608.dmp文件中找到flag

(二)、

volatility -f mem.vmem --profile=WinXPSP2x86 volshell 直接获取volshell
volatility -f mem.vmem --profile=WinXPSP2x86 pslist 查看进程:
volatility -f mem.vmem --profile=WinXPSP2x86 printkey -K "SAM\Domains\Account\Users\Names" ##获取SAM表中的用户
volatility -f mem.vmem –profile=WinXPSP2x86 printkey -K "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" ##获取最后登录系统的账户
volatility -f mem.vmem --profile=WinXPSP2x86 userassist ##提取出内存中记录的,当时正在运行的程序有哪些,运行过多少次,最后一次运行的时间等信息
root@kali:~/CTF# mkdir ctfmon
root@kali:~/CTF# volatility -f mem.vmem --profile=WinXPSP2x86 memdump -p 1736 -D ctfmon/ 将内存中的某个进程数据以 dmp 的格式保存出来
volatility -f mem.vmem --profile=WinXPSP2x86 iehistory ##获取 IE 浏览器的使用情况
volatility -f easy_dump.img --profile=Win7SP1x64 hashdump timeliner ##获取内存中的系统密码,获取内存中的系统密码,我们可以使用 hashdump 将它提取出来 。
volatility -f mem.vmem –profile=WinXPSP2x86 timeliner ##最大程度上将内存中的信息提取出来,那么你可以使用 timeliner 这个插件。它会从多个位置来收集系统的活动信息

(三)、

拿到题目附件,是一个数据报,很常规,估计就要从里面拿东西出来了。用wireshark打开来看看

导出直接保存下来。一看这些东西什么upload_file.php看名字就知道有鬼,还出奇的大(40MB),里面必然有东西。

打开来看一下(用记事本什么哔哩吧啦的都可以)很明显他把名字都告诉给你了,这个传了一个data.zip的东西,然后看下面的东东 PK很明显是zip文件头,说明这个"php"里把zip文件也给囊括起来了。现在我们只要获取这个zip包就好。

当然,我非常懒,所以在这又推荐神器foremost,一键分离不是梦。(其实还有个骚操作就是直接把给的那个数据报pcap文件给foremost掉,比自己导出对象搞得还清晰hhh)
得到一个zip之后打开看一眼,有一个data.vmem文件,这下事情就好办了,让我们到kali里面去解决这个data.vmem

首先我们要简单来分析一下这个虚拟内存文件是在哪个平台下的,好让我们进行下一步操作
volatility -f data.vmem imageinfo 可以看到是xp平台下的,好的我们又多了一个参数。接来下我们可以看看它运行过什么进程:

volatility -f data.vmem --profile=WinXPSP2x86 pslist (应该用psscan也可以)
让我们来分析这个dmp文件,我们可以看看有什么有意思的关键字,用flag作为东西搜索一下输入命令:strings 1476.dmp | grep -E ‘flag’

可以看到一堆很有趣的flag名字的文件,好像有flag.zip 还有flag.img 不过我猜测这玩意为了增加难度是不会那么容易直接给你搞到zip的。

让我们接下来再看看从哪可以dump下来文件,

输入命令:volatility -f data.vmem --profile=WinXPSP2x86 filescan|grep ‘flag’ 找到flag相关文件(一定要关键字,不然给你爆出来一堆文件)
我们把它dump下来。

输入命令:volatility -f data.vmem --profile=WinXPSP2x86 dumpfiles -Q 0x0000000001155f90 -D ./

然后我们把文件后缀名改成img就可以进一步处理啦~

我们可以直接用binwalk神器解掉它,也可以用UltralISO打开hhh,反正里面有一个usbdata.zip。这个从UltralISO取的话会比较直观。我记得用binwalk的时候出了点小意外,得自己去用010editor修复了一下zip文件才正常hhh看上去就快搞定了)

现实给了你当头一棒——这玩意要密码才能解密。可是密码在哪?所以我们又得回到data.vmem。看看命令行那边有没什么线索

输入命令:volatility -f data.vmem --profile=WinXPSP2x86 cmdscan

好的我们可以看到还是很良心的 有个passwd:weak_auth_top100

本文为作者admin发布,未经允许禁止转载!
上一篇 下一篇
评论
暂无评论 >_<
加入评论