分析单字节XOR的Word宏病毒文档

2015-11-12 +6 218134人围观 ,发现 4 个不明物体 WEB安全

不能掉的前言

当反汇编恶意软件样本时,其实我们就是在分析寻找攻击者所疏忽的地方。这些我们可以从那些相同字符串、较弱的模糊处理例子、重复使用的代码片段中去分析。有时我们在谈论攻击者时总会带着一些主观臆想,认为那些攻击者就是超级恶棍,做坏事就跟家常便饭般习以为常。但是请记住他们也是人!

确认宏中payload

今天我们要分析的样本也不例外,在我们复审分类控制台时遇到了一个有趣的钓鱼邮件,其中包含了以下附件,在Yara规则中就有一些失误了:

一会时间后,我们看到了大量包含宏的Word文档,这种结合XOR exe触发的确十分少见。这种类型的payload通常都是exploit和最新版本的安装包结合。通过使用xorsearch证实这里面确实存在一枚恶意payload。

注意:XOR 00 为数据本身。

打开这个文件,确认里面存在宏,这是一个好消息。

使用快捷键alt + f11尝试并提取出宏代码,竟然有密码保护。

看来是时候祭出我们的宏密码破解神器了:

最后获得宏代码:

分析

执行宏代码,word文档的一个副本会另存到%temp%/300.rtf和%temp$/301.rtf,我们的恶意payload会被保存到%temp%/q2.exe,接着执行。

观察q2.exe,文件的编译路径为T:\mandatory\Hence\one\Date\effort.pdb。变相的说明了恶意软件可以在T盘目录下进行编译,位于mandatory目录,项目名称为Hence。但是XORed payload在哪呢?

通过在关键的0×66(f)执行一个单字节XOR,我们知道这是能成功的,这时我们就可以看到可执行文件其他一些字符串和结构。

需要注意的是,攻击者确实做了些蠢事导致很难运行,由于其缺少标准“MZ”。这是在解码payload时添加的:

一直向下拉我们找到一些字符串,得知有些数据使用aPlib进行编码:

第2阶段,继续滚动编码过的数据,我们发现一个将会被调用的域名:

接下来再看看使用的user agent,不要把恶意软件使用HTTP/1.0给忘记了。

他有能力收集大量的凭证,主要是FTP:

尾声

结合一下分类规则可以用来进行检测:

PM_Office_With_Macro
PM_xor_This_program_* (在规则中已经超过500种)

为了帮助更多的人,提供恶意软件的C2以及user agents信息[点我]

*参考来源:Phishme,编译/FB小编鸢尾,转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)

更多精彩
Loading...

特别推荐

推荐关注

活动预告

填写个人信息

姓名
电话
邮箱
公司
行业
职位
css.php