恶意代码分析实战Lab3
恶意代码分析实战Lab3
Lab3-1
1.找出这个恶意代码的导入函数与字符串列表?
依照惯例,静态分析查看是否加密然后看输入表和字符串
可以看出文件被PEncrypt加密
dependency查看输入表可以看到很少的函数,kernel只有一个ExitProcess
strings查看字符串
2.这个恶意代码在主机上的感染迹象特征是什么?
processexp查看handles和dll
了解到关键信息,互斥量WinVMX32,和网络相关的dll联系上面字符串可以知道程序访问了www.practicalmalwareanalysis.com
字符串中有注册表相关字符,可以推测又和注册表相关操作,还有vmx32to64.exez字符可以推测有文件操作,查看Regsetvalue和writefile两个函数,在procmon中查看结果:
看前三条信息足以,第一个是写一个随机数发生种子,第二个是创建了一个.exe文件,正是前面看到的vmx32to64.exe,第三个是将这个程序写到注册表自启动项.
d537acb8f56a1ce206bc35cf8ff959c0 vmx32to64.exe
d537acb8f56a1ce206bc35cf8ff959c0 Lab03-01.exe
可以看到两个文件md5一样,可以知道,vmx32to64就是Lab03-01复制过去的
3.这个恶意代码是否存在一些有用的网络特征码?如果存在,它们是什么?
使用apateDNS 和nc
两次不一样
wireshark抓包结果
Lab3-2
Regshot注册表快照(对比)
1.你怎样才能让这个恶意代码自行安装?
strings 查看
这里我想用PEtool查看输出函数
可以推测可能需要rundll32.exe工具将该dll安装成一个服务
使用命令: rundll32.exe Lab03-02.dll,installA
保存注册表
cmd执行
然后保存注册表
对比前后注册表区别
增加了HKLM\SYSTEM\ControlSet001\Services\IPRIP,HKLM\SYSTEM\CurrentControlSet\Services\IPRIP,可以知道.dll创建一个名为IPRIP的服务
表明恶意代码将在svchost.exe中启动
2.在安装之后,你如何让这个恶意代码运行起来?
可以了解到服务IPRIP的servicedll就是Lab03-02.dll,那么我们就可以用net start IPRIP来打开这个服务
3.你怎么能找到这个恶意代码是在哪个进程下运行的?
processexp搜索Lab03-02.dll即可
进程PID是1028
4.你可以在 procmon工具中设置什么样的过滤器,才能收集这个恶意代码的信息?
可由上图知道,IPRIP服务运行在PID 1028使用procmon来进行过滤
5.这个恶意代码在主机上的感染迹象特征是什么?
恶意代码特征上面分析了很多,服务IPRIP,Lab03-02.dll,服务名称 Intranet Network Awareness (INA+),还有上面的多项注册表信息等
恶意代码对系统的影响(特征)
6.这个恶意代码是否存在一些有用的网络特征码?
查看nc和ApateDNS可以了解到网络特征
Lab3-3
1.当你使用Process Explorer工具进行监视时,你注意到了什么?
运行Lab03-03后,注意到explore下面多了一个不成寻常进程svchost.exe,我们有理由相信这是Lab03-03.exe动的手脚,还可以双击这个进程查看他的内存字符串,和正常svchost的磁盘字符串区别,可以知道他绝对是个恶意代码,并且有这几个字符串推测是击键记录器(.log和[SHIFT]等推测出,这完全是经验之谈了)
程序创建了svchost.exe 随后消失
留下了一个孤儿进程,svchost.exe
正常的svchost.exe父进程位services.exe
2.你可以找出任何的内存修改行为吗?
属性
查看字符串(映像)
查看字符串(磁盘)
有log文件和类似键盘的字符,可能是键盘记录
3.这个恶意代码在主机上的感染迹象特征是什么?
process monitor 使用pid过滤
4.这个恶意代码的目的是什么?
新建文件写入字符
process monitor添加过滤pid、 operation的CreateFile 和 operation的WriteFile
频繁对这个log文件操作
打开这个log文件查看
记录了pid、输入内容、打开的应用
Lab3-4
1.当你运行这个文件时,会发生什么呢?
静态分析
CopyFile、WriteFile、GetSystemDirectoryA可能用于隐藏自身
程序会创建服务修改注册表
程序有联网操作
有联网(HTTP)有参数–in,可能是http后门
运行
打开process explorer
然后打开程序
process explorer无变化,程序自行删除了
2.是什么原因造成动态分析无法有效实施?
使用process monitor监控运行
只看进程监控
使用cmd删除自身,所以无法动态分析
3.是否有其他方式来运行这个程序?
使用cmd加-in运行,程序还是会自己删除