前言

一切开始于拿到俄语《Лабораторная работа 5.doc》文档,上传virustotal检测发现是利用了CVE-2017-11882便开始了接下来的一系列操作。由于分析过程中通过解决问题学到了很多,希望分享出来可能会让其他人也能学到思路和知识。

分析流程

1. 拆解文档

使用rtfobj.py拆分样本文件,查看是否有嵌入对象。

纯静态分析俄罗斯银行木马-孤独常伴果然嵌入了漏洞利用模块,将拆分出的文件使用十六进制查看工具检查对象内容,发现执行命令。

纯静态分析俄罗斯银行木马-孤独常伴

2. 与C2交互

二话不说,直接在虚拟机里访问,发现网页内嵌入脚本如下:

[/crayon]
代码的主要内容是杀死之前环节的进程mshta(执行hta文件的系统进程)、winword(出发漏洞的word进程),并下载1.rar(实际上是一个vbs脚本)执行进行下载和删除操作,下面是下载的1.rar内容。

[/crayon]
上面的脚本主要功能是执行下载1.zip,该压缩包中是1.png(实际是一个可执行文件),之后更名为Chromeupd.exe并转移到自启动目录下。更改后缀名并查看属性显示如下。

纯静态分析俄罗斯银行木马-孤独常伴

之后下载p.zip,打开后是p.png(实际上是一个自解压文件)。使用搜索引擎查找该文件,确定是俄罗斯的一款更改输入法的应用,暂时不知道有什么用。

纯静态分析俄罗斯银行木马-孤独常伴3. 本地行为分析

下载阶段结束,接下来不与服务器交互。于是开始分析1.png这个可执行文件,检测发现该文件是.NET编写。于是使用dnSpy开始分析,主要功能是几个计时器,定时触发执行。

纯静态分析俄罗斯银行木马-孤独常伴计时器1的作用是检测剪贴板内容,将符合特征的内容替换掉。

纯静态分析俄罗斯银行木马-孤独常伴替换内容为以下全局定义的某金融平台账号,暂时可以确定该木马是通过替换剪贴板的账号窃取资金。

纯静态分析俄罗斯银行木马-孤独常伴计时器3的主要作用是启动上面那个俄罗斯输入法更改软件。

纯静态分析俄罗斯银行木马-孤独常伴计时器4的主要作用是上传一个日志文件到指定目录,该文件为diary.dat。经过搜索引擎查找,该文件为上面那个俄罗斯软件运行过程中对用户输入的记录保存,所以我们知道了那个俄罗斯软件其实是一个键盘记录器的作用。

纯静态分析俄罗斯银行木马-孤独常伴

计时器5的主要作用之一是请求C2是否停止攻击,如果服务器显示是‘yes’则停止、杀死进程并删除文件。

纯静态分析俄罗斯银行木马-孤独常伴根据请求信息显然作者并没要停止的意思。

纯静态分析俄罗斯银行木马-孤独常伴另一个功能是请求是否更换作者的金融账号,就是设置在木马全局表示变量的字符串。

纯静态分析俄罗斯银行木马-孤独常伴

根据请求信息显然作者并没有更换新的账号。

纯静态分析俄罗斯银行木马-孤独常伴

小结

到现在为止我们就清楚的知道了该作者的操作手法,从带有11882漏洞文档触发执行hta文件下载新的vbs脚本到最终安装一个控制剪贴板的自制木马和一个第三方键盘记录器。由于作者使用工具较为简单整个过程中并不需要动态调试,不确定的部分大家可以使用调试器检查。学习过程中的一点积累,大佬勿喷!