rtf恶意样本静态分析
1.起源
前几天一位推友发布推文一个恶意样本弹框 大概意思是不能在any run 沙箱中运行
结果推友当时就在any run 沙箱上传运行。也是比较有意思的样本
2.样本分析
既然这么搞笑,就我们一起来分析这个恶意样本吧
本文从静态的角度分析样本。
首先我们考虑使用010编辑器查看,结果发现为rtf的文件
那么我们这里使用oletools 套件中个的rtfobj查看,结果发现它中包含vbs文件
那么我们对其进行dump下来vbs文件
3.VBS混淆
下面我们来分析vbs的内容,由于代码过于冗长,不便截图,我这里就挑重点讲。
下图我们可以看到vbs代码中一个红框包含了字符串的内容为powershell,第二个红框也是为powershell的代码,其中vbs对其进行拼接、替换字符串、以及字符串倒序。
那么我们重新整理vbs的代码对其进行输出到控制台
这里我们调用cscript 执行我们重新整理好的vbs,结果完整的powershell代码就输出出来了。
4.powershell混淆(一)
我们可以看到该powershell的内容为混淆,但是我们可以对其进行解码混淆就是,去掉最后面的 I’E’X字符串
那么我们重新整理之后的代码为下图输出后的内容
下面我们来分析解码混淆后的代码,第一行代码为字符串拼接,为第一个红框注释的内容,为bypass asmi,第二个红框为下载执行base64加密的文件
下图为base64的文件
5.powershell混淆(二)
我们对其进行解码后,为下图代码
由于代码过于冗长我们挑几个重点讲解,我们看到下图中的红框1f,8b开头的数据 为gzip
而下图 4d,5a开头的数据为我们熟悉PE文件
下图为分离后的文件
同时我们也对其进行解压,发现解压后的文件也是exe/dll文件
下图为在010编辑器中的内容
下图为在powershell中我们第二个红框的pe文件
所以最终的文件为,一个c#编写的dll,和一个exe文件
我没有对其进行下一步的分析,因为也超出本文的含义分析范畴。大体可以猜测为后门文件。
最后在powershell的代码中我们,调用control.exe运行第二个exe,为bypass applocker的行为方式。
总体来说该powershell代码具体的内容如下:
1.bypass asmi
2.下载解码执行base64文件
3.解码后释放两个后门文件
4.bypass applocker
6.IOC
1 |
|
链接:
https://app.any.run/tasks/9f3895b5-6ae1-4ac1-b829-b50202985e3d/