内存取证例题
目录
1.从内存中获取到用户admin的密码并且破解密码,以Flag{admin,password} 形式提交(密码为 6 位);
2.获取当前系统 ip 地址及主机名,以 Flag{ip:主机名}形式提交;
3.获取当前系统浏览器搜索过的关键词,作为 Flag 提交;
4.当前系统中存在挖矿进程,请获取指向的矿池地址,以 Flag{ip:端口}形式 提交;
5.恶意进程在系统中注册了服务,请将服务名以 Flag{服务名}形式提交。
背景:
作为信息安全技术人员必须能够掌握内容镜像分析、重要数据恢复、 恶意文件分析等相关技能,利用这些技能我们能够第一时间分析相关恶意文件、 分析蛛丝马迹帮助我们更好的完成应急响应工作。 应急响应阶段题目主要包含:Windows 内存镜像分析,Linux 内存镜像分析, 磁盘文件恢复,恶意程序分析等内容。
题目
链接:https://pan.baidu.com/s/1tYgIicCqJExmaMLYa3YeSA
提取码:lulu
你作为 A 公司的应急响应人员,请分析提供的内存文件按照下面的要求找到 相关关键信息,完成应急响应事件。
1、从内存中获取到用户admin的密码并且破解密码,以Flag{admin,password} 形式提交(密码为 6 位);
2、获取当前系统 ip 地址及主机名,以 Flag{ip:主机名}形式提交;
3、获取当前系统浏览器搜索过的关键词,作为 Flag 提交;
4、当前系统中存在挖矿进程,请获取指向的矿池地址,以 Flag{ip:端口}形式 提交;
5、恶意进程在系统中注册了服务,请将服务名以 Flag{服务名}形式提交。
上题已经看到进程
参考
金砖技能大赛-应急响应-内存镜像分析-进程分析_小晨_WEB的博客-CSDN博客_内存镜像分析
解析
1.从内存中获取到用户admin的密码并且破解密码,以Flag{admin,password} 形式提交(密码为 6 位);
不管什么题内存取证的第一步肯定是去判断当前的镜像信息,分析出是哪个操作系统 使用参数 imageinfo 查看系统信息
volatility -f 1.vmem imageinfo
操作系统我们一般取第一个就可以了
接下来就可以输入参数
可以先查看当前内存镜像中的用户
volatility -f 1.vmem –profile=Win7SP1x64 printkey -K “SAM\Domains\Account\Users\Names”
使用hashdump获取sam
volatility -f 1.vmem --profile=Win7SP1x64 hashdump
可以通过john工具来进行爆破,但是好像跑不出来结果。应该是设定了强密码。于是只能使用了lasdump命令来查看
volatility -f 1.vmem --profile=Win7SP1x64 lsadump
flag{admin.dfsddew}
2.获取当前系统 ip 地址及主机名,以 Flag{ip:主机名}形式提交;
Netscan 可以查ip
volatility -f 1.vmem --profile=Win7SP1x64 netscan
Ip:192.168.85.129
主机名需要通过查询注册表,先用hivelist
Volatility -f 1.vmem --profile=Win7SP1x64 hivelist
然后我们需要一步一步去找键名
volatility -f 1.vmem --profile=Win7SP1x64 -o 0xfffff8a000024010 printkey
volatility -f 1.vmem --profile=Win7SP1x64 -o 0xfffff8a000024010 printkey -K "ControlSet001"
继续
volatility -f 1.vmem --profile=Win7SP1x64 -o 0xfffff8a000024010 printkey -K "ControlSet001\Control"
继续
volatility -f 1.vmem --profile=Win7SP1x64 -o 0xfffff8a000024010 printkey -K "ControlSet001\Control\ComputerName"
再来
volatility -f 1.vmem --profile=Win7SP1x64 -o 0xfffff8a000024010 printkey -K "ControlSet001\Control\ComputerName\ComputerName"
得到主机名WIN-9FBAEH4UV8C
也可以直接通过 hivedump查询相应的键名 但比较慢
volatility -f 1.vmem --profile=Win7SP1x64 hivedump -o 0xfffff8a000024010 > system.txt
3.获取当前系统浏览器搜索过的关键词,作为 Flag 提交;
这里使用iehistory
volatility -f 1.vmem --profile=Win7SP1x64 iehistory
flag{admin@file:///C:/Users/admin/Desktop/flag.txt}
4.当前系统中存在挖矿进程,请获取指向的矿池地址,以 Flag{ip:端口}形式 提交;
volatility -f 1.vmem --profile=Win7SP1x64 netscan
唯一一个已建立的
flag{54.36.109.161:2222}
5.恶意进程在系统中注册了服务,请将服务名以 Flag{服务名}形式提交。
上一题中已经知道了进程号为2588
volatility -f 1.vmem --profile=Win7SP1x64 pslist -p 2588
查到父进程是3036
然后在通过通过svcscan可以查询服务名称,找到对应服务名
volatility -f 1.vmem --profile=Win7SP1x64 svcscan
flag{VMnetDHCP}