这是题目和wolatility2.6的链接
链接:https://pan.baidu.com/s/1wNYJOjLoXMKqbGgpKOE2tg?pwd=ybww
提取码:ybww
--来自百度网盘超级会员V4的分享
压缩包很小,题目也比较简单基础,可以供入门使用
1:Which volatility profile would be best for this machine?
我理解为机器的名字是什么
首先就查看一个操作系统,这里查看操作系统好像只有v2可以,v3不知道为什么是没有这个功能的
首先写 volatility.exe -f
把内存拖入+imageinfo
VolatilityWorkbench-v2.1>volatility.exe -f C:\Users\86156\Desktop\基础篇工具及映像\CYBERDEF-567078-20230213-171333.raw imageinfo
一般建议系统的第一个就是真正的系统
然后这个地方我们要学习一下内存时间,这个地方第一个时间
相差8小时,我不知道有什么区别,从utc来看都是一样的
前者是实际的时间,vol解析是算utc+0的标准时间
然后后面的那个是本机显示时间,有一个local,就是电脑实际显示时间
2.How many processes were running when the image was acquired?
获取到这个映像的时候,有多少个进程是正在运行的
pslist
pslist是看正在运行 pstree和这个差不多
psscan是查看死去和活进程
3.What is the process ID of cmd.exe?
CMD进程的PID号码是多少
还是很明显的,就是1960
4.What is the name of the most suspicious process?
最可疑的进程是什么名字?
这里按理说要一个一个整理,但是我发现了chat的妙用,这几把太厉害了
最终还是他看出来了
5.Which process shows the highest likelihood of code injection?
哪一个进程被注入的可能性最高
此题其实考验对rootkit病毒的熟知程度,通常情况下rootkit病毒在windows系统中最喜欢干的事就是通过svchost进程进行捆绑,因为svchost是系统守护程序,是不能通过常规手段停止的,那么任何与之关联的程序也都没有办法通过常规杀软去清除,因为svchost启动等级高于常规杀软,所以若是想清除与svchost捆绑的程序,需要进入到系统安全模式下,并使用最小化启动,然后找到svchost注册表项清除对应捆绑关系再删掉木马就行了。
6.There is an odd file referenced in the recent process. Provide the full path of that file.
接上题,该进程在运行过程中引用了一个奇怪的文件,文件完整路径是什么
思路就是看svchost在运行过程中,我们要看他调用什么文件
所以就是找到svchost这个端口的880 调用过的文件
./volatility_2.6_lin64_standalone -f CYBERDEF-567078-20230213-171333.raw profile=WinXPSP2x86 -p 880 handles -t file
-p 是指定进程 ID 的选项
handles 是用于打印每个进程的打开句柄列表的插件命令
-t 是一个选项,用于指定您希望结果显示的对象类型。
此题依然考验对rootkit病毒的理解,通常情况下rootkit会释放两个文件,一个是sys驱动文件,一个是dll文件,rootkit自身只是一个释放程序,dll文件自身功能通常为通信木马,sys驱动程序为保活文件
7.What is the name of the injected dll file loaded from the recent process?
接上题,该进程在运行过程中被注入的DLL文件是什么
如果在windows运行,grep可能会报错
推荐内存还是在kali里面做好一点,但是由于我kali环境没好,所以就win吧
./volatility_2.6_lin64_standalone -f CYBERDEF-567078-20230213-171333.raw profile=WinXPSP2x86 ldrmodules -p 880 | grep -i false
没通过校验,所以就是msxnl3.dll这个文件
ldrmodules 是用于检测未链接 DLL 的插件命令
grep -i false 这是为了过滤以仅显示带有单词“false”的结果
这里其实就是通过恶意的dll文件是未签名的来寻找,因为正常的dll动态链接库都是通过了签名校验的,但是恶意的dll文件是没有通过签名校验的,PChunter找病毒也是一样的原理
8.What is the base address of the injected dll?
这个注入的dll文件的内存地址是什么
查询注入malfind 是查找隐藏和注入代码的插件命令,这个命令很强大,直接输入会显示很多结果,为了要求显示svchost下的,必须要指定880端口进行过滤
所以命令是:malfind -p 880
./volatility_2.6_lin64_standalone -f CYBERDEF-567078-20230213-171333.raw profile=WinXPSP2x86 malfind -p 880
malfind 是查找隐藏和注入代码的插件命令
我们可以把该dll文件导出到我们想要的目录里
dlldump -p 880 --base=0x980000 --dump-dir=.
注意,这个每个结构都不可或缺
./volatility_2.6_lin64_standalone -f CYBERDEF-567078-20230213-171333.raw profile=WinXPSP2x86 dlldump -p 880 --base=0x980000 --dump-dir=.
dlldump 导出dll文件的插件
--base 指定内存地址
--dump-dir 指定存放路径(如果当前路径就加一点 . )
这里用微步验证一下
确定就是这个恶意