恶意代码分析实战 Lab3

lab3-1

1依照惯例,静态分析查看是否加密然后看输入表和字符串

恶意代码分析实战 Lab3_第1张图片

可以看出文件被PEncrypt加密

dependency查看输入表可以看到很少的函数,kernel只有一个ExitProcess

strings查看字符串

恶意代码分析实战 Lab3_第2张图片

2动态分析:

processexp查看handles和dll



了解到关键信息,互斥量WinVMX32,和网络相关的dll联系上面字符串可以知道程序访问了www.practicalmalwareanalysis.com

字符串中有注册表相关字符,可以推测又和注册表相关操作,还有vmx32to64.exez字符可以推测有文件操作,查看Regsetvalue和writefile两个函数,在procmon中查看结果:

恶意代码分析实战 Lab3_第3张图片

看前三条信息足以,第一个是写一个随机数发生种子,第二个是创建了一个.exe文件,正是前面看到的vmx32to64.exe,第三个是将这个程序写到注册表自启动项.

d537acb8f56a1ce206bc35cf8ff959c0   vmx32to64.exe

d537acb8f56a1ce206bc35cf8ff959c0   Lab03-01.exe

可以看到两个文件md5一样,可以知道,vmx32to64就是Lab03-01复制过去的

3使用apateDNS 和nc

恶意代码分析实战 Lab3_第4张图片

恶意代码分析实战 Lab3_第5张图片

两次不一样

恶意代码分析实战 Lab3_第6张图片

wireshark抓包结果

恶意代码分析实战 Lab3_第7张图片

lab03-02

1这里我想用PEtool查看输出函数,可以推测可能需要rundll32.exe工具将该dll安装成一个服务,使用命令:rundll32.exe Lab03-02.dll,installA

恶意代码分析实战 Lab3_第8张图片

2然后可以用IDApro查看字符串(我习惯先用IDA,不行再用string看看),可以看到很多字符串就不一一列出,有几个比较重要:


还有一些提示信息就不一一列出,至少可以明确执行了和注册表相关操作,那么我们用regshot查看一下安装Lab03-02.dll前后注册表信息变化可以了解到什么

对比报告我们可以得到几条重要信息

1 增加了HKLM\SYSTEM\ControlSet001\Services\IPRIP,HKLM\SYSTEM\CurrentControlSet\Services\IPRIP,可以知道.dll创建一个名为IPRIP的服务

2恶意代码分析实战 Lab3_第9张图片

可以了解到服务IPRIP的servicedll就是Lab03-02.dll,那么我们就可以用net start IPRIP来打开这个服务

3processexp搜索Lab03-02.dll即可


恶意代码分析实战 Lab3_第10张图片

4可由上图知道,IPRIP服务运行在PID 1096来进行过滤

5恶意代码特征上面分析了很多,服务IPRIP,Lab03-02.dll,服务名称 Intranet Network Awareness (INA+),还有上面的多项注册表信息等

6查看nc和ApateDNS可以了解到网络特征

恶意代码分析实战 Lab3_第11张图片


lab3-3

1运行Lab03-03后,注意到explore下面多了一个不成寻常进程svchost.exe,我们有理由相信这是Lab03-03.exe动的手脚,还可以双击这个进程查看他的内存字符串,和正常svchost的磁盘字符串区别,可以知道他绝对是个恶意代码,并且有这几个字符串推测是击键记录器(.log和[SHIFT]等推测出,这完全是经验之谈了)

恶意代码分析实战 Lab3_第12张图片恶意代码分析实战 Lab3_第13张图片

3查看promon,如何设置过滤,从上题知道他创建一个svchost,所以先过滤PID为svchost的ID,因为是击键记录器,为了验证是否推测成立,然后通过打开一个.txt写一个test,然后过滤creatfile 和writefile两个函数看看文件操作


可以明显看到他的文件操作,在打开文件看看


很明显我们的推测成立,这是一个击键记录器,使用svchost替换技术

lab3-4

1,双击运行结果程序删除自身,那我们希望先静态分析看看有什么有用信息

程序没有加密,加载dll,可能有网络行为


再看字符串,可以看到不少有用信息,域名,注册表,HTTP/1.0 DOWLOAD UPLOAD等字符串可以推测是http后门程序

还有-cc -in -re这种很像参数的字符,但是即使用上这些字符程序还是会删除自身,我们只能用Promon来看一下程序都干了什么

程序做了不少注册表相关操作,但是最重要的要知道程序为什么删除自身,原因如图:

恶意代码分析实战 Lab3_第14张图片

再看看ApateDNS和nc都没有收获.

能力有限分析到此结束.

你可能感兴趣的:(恶意代码分析实战 Lab3)