Java教程

volatility内存取证分析实战

本文主要是介绍volatility内存取证分析实战,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

这个是我的实验报告,我感觉写的还挺用心的hhhhh有需要实验出现的靶机或者工具的可以留言

一、实验目的

了解内存转储方法,并能利用相关工具生成内存转储文件。掌握计算机取证工具DumpIt的使用方法,并用其实现Windows主机的物理内存转储。

掌握Volatility内存取证的方法并进行实践,能够利用Volatility进行内存镜像进行取证分析,通过获取内核数据结构,使用插件获取内存的详细情况以及系统的运行状态。

能够利用工具,根据自定义条件,如可以选择只导出原创微博、是否需要导出图片、选择固定的时间范围等,固定微博数据,用于分析或取证。

二、实验环境及工具

Volatility、DumpIt

三、实验原理及步骤

先整个系统来用工具练练手,使用dumpit转存52pojie,因为这个机器小,转存后才几百m

转存的raw文件

 

不用转存其实也可以有,就把虚拟机挂起后,安装目录下就有一个veme文件,可以直接用于分析

 

 

 在转存用于分析之前,构建一些相关事件,比如记事本写一写东西,浏览器访问一下某个网页

我把Windowsxp的内存放到volatility分析一下

首先分析一下操作系统

指令volatility -f xp.vmem imageinfo

 

 

 

可以看到分析的结果是winxpsp2X86的操作系统,查看一下进程

volatility -f 1.vmem --profile= WinXPSP2x86 pslist

 

 

查看运行的服务

 

 

查询一下历史浏览网页

volatility -f xp.vmem --profile=WinXPSP2x86 iehistory  

查看当前notepad的内容

volatility -f xp.vmem --profile=WinXPSP2x86 notepad

 

 

查看文件的内容

volatility -f xp.vmem --profile=WinXPSP2x86 filescan >filescan.txt

查询结果可以看到文件的列表

Filescan的内容,看到flag我就知道用心良苦的姚老师又找了一个ctf的题目给我们写

 

 

分析老师给的vmem,先分析操作系统类型(好像不分析操作系统就会报错)

Volatility -f worldskills.vmem imageinfo

然后查看网络连接获取IP地址

volatility -f worldskills3.vmem  --profile= Win7SP1x64 netscan

然后获取sam文件

volatility -f worldskills3.vmem  --profile= Win7SP1x64 hashdump

查看建立了连接的netscan地址

cat ws3netscan.txt |grep ESTAB

已知进程号查询该进程对应的服务名称或父进程号

volatility -f worldskills3.vmem  --profile= Win7SP1x64 pslist |grep 2588

查到父进程的地址为3036

 

根据svcscan导出的list,搜索3036进程号,可以看到服务名称为VMnetDHCP

要查看主机名要分析注册表

lsadump:从注册表中提取LSA密钥信息(已解密)

试一下lsadump

 

Lsadump显示加密以后的数据

hivelist:打印注册表配置单元列表

可以看到system

hivedump:打印注册表配置单元信息

查询SYSTEM的对应键名并输出到txt文件

volatility -f worldskills3.vmem --profile=Win7SP1x64 hivedump -o 0xfffff8a000024010 > wssystem.txt

然后查看这个输出文档 wssystem.txt 搜索关键词computername

对应的键名为\ControlSet001\Control\ComputerName\ComputerName

然后通过printkey输出键名对应的值

volatility -f worldskills3.vmem --profile=Win7SP1x64

printkey -K “ControlSet001\Control\ComputerName\ComputerName”

成功找到了主机的名称为WIN-9FBAEH4UV8C

执行命令扫描全部的文件

volatility -f worldskills3.vmem --profile=Win7SP1x64 filescan >wsfilescan.txt

在导出的txt中搜索flag

我们用dumpfiles爆破文件的内容,要根据文件的offset(0x000000007f1b6c10),指令为

volatility -f worldskills3.vmem --profile=Win7SP1x64 dumpfiles -Q 0x000000007f1b6c10 –dump-dir=./

cat dump后的文件就可以看到内容了

cat file.None.0xfffffa801a879510.dat 

得到flag的值

分析病毒在自我删除时执行的命令是什么

可以通过memdump来分析进程的执行的指令

volatility -f worldskills3.vmem --profile=Win7SP1x64 memdump -p 3036 --dump-dir=./

 

 这个我只是把啥啥dump出来而已,还没分析,稍后补。

这篇关于volatility内存取证分析实战的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!