频道栏目
首页 > 资讯 > 加密解密 > 正文

payload实例分析:加密的恶意文档

16-01-27        来源:[db:作者]  
收藏   我要投稿

我们今天分析的这份恶意office文档其本身是一个下载器:2ELJ2E1OPJ0OT.doc

oledump结果显示该恶意文档中存在VBA宏,但是插件不能够提取URL

 

现在我们使用我新写的的一份插件:plugin_vba_dco。该插件会搜索声明语句以及调用的创建对象:

 

在输出的上半部分(1)我们可以看到每一行都包含Declare或者CreateObject关键词,在下半部分(2)包含了调用声明函数或者创建对象。

虽然代码经过了混淆处理(字符串以及变量名),根据插件的输出我们不难猜出Ci8J27hf2可能就是XMLHTTP对象

XMLHTTP对象的open方法需要3个参数:HTTP方法,URL,布尔值(异步或同步调用):

 

我们可以看到最后一个参数为假,前面两个参数返回IpkfHKQ2Sd函数的值,该函数需要两个参数:两个字符串。第一个字符串连接Chr函数,第二个字符串是一个文字串。由于open方法需要将HTTP方法和URL作为字符串,极有可能IpkfHKQ2Sd函数为解码函数,且需要两个字符串作为输入(对我们来说毫无意义)然后返回一个有意义的字符串。

下面为原始IpkfHKQ2Sd函数:

 

以下为我对同一函数进行反混淆后的结果,函数名没有更改,但是对于那些无用的代码进行了删减,对变量重命名,最后加上缩进:

 

 

从中我们能够看到函数使用一个key (sKey)和XOR操作来来解码一个秘密字符串,同时我们也得知这仅仅是一个字符串处理函数。它不包含恶意或者危险语句或函数调用,所以在VBA注释器中它的使用时安全的,我们也就不需要将其转换成其他语言了。

接下来我们将在新窗口中使用这份反混淆函数,来解码这个URL参数:

 

在VBA编辑器的新窗口中,我们有经过反混淆的IpkfHKQ2Sd函数以及一个会调用到IpkfHKQ2Sd函数的测试子程序。通过MsgBox显示IpkfHKQ2Sd函数返回的解码字符串,执行这个子程序获得URL:

 

下载该文件,我们看到这并非一个JPEG文件,但是也不是一份exe文件:

 

在VBA代码中搜索.responseBody,我们看到下载文件作为一个参数传递到IpkfHKQ2Sd函数:

 

这也变相说明这个下载文件也是经过了编码混淆的,它也需要经过IpkfHKQ2Sd函数的解码(但是是另外一个key)

为了在我们的电子表格中将这个文件进行转换,我们需要将这个文件加载到电子表格中,解码,并保存解码后文件。完成这一步可以通过使用FileContainer.xls工具进行,首先将文件加载到电子表格中

 

 

FileContainer支持文件转换:我们需要用到命令C以及按下Process Files按钮

 

以下为默认的转换函数,这个默认函数不会改变函数:输入与输出相等。

 

解码文件,我们需要更新转换函数来调用解码函数IpkfHKQ2Sd

 

接着,转换文件后我们得到一个exe文件

 

该文件最终确认为Dridex木马:lameACM

后记

重用恶意软件中的代码是非常危险的,除非你知道它是拿来干嘛的。快速解码下载文件,我们重复使用了解码的VBA函数IpkfHKQ2Sd,但可以肯定的是它并没有恶意。反混淆过程让我有机会看到每一条声明语句,从而更加的了解这些代码并得出这个函数没有危险性这一结论。同时我们也能够利用这个混淆函数,这样做其实我们也是担有一定风险的,因为我们不知道混淆函数到底都做了些什么。

相关TAG标签
上一篇:OmniRAT变种木马被恶意利用
下一篇:Joomla Sqli漏洞分析
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站