钓鱼邮件传播勒索病毒再升级,不落地加大查杀难度

发表于:2018-01-25 11:14:36 来源:  FreeBuf.COM 阅读数(0人)

0×1 概况


钓鱼邮件作为传播勒索病毒的常用手段,通常在邮件正文利用“社工手段”诱使用户点击邮件附件,附件的文档内容诱使用户开启宏。用户一旦将宏开启,文档中所包含的恶意宏代码即自动运行,实施对用户电脑加密、勒索等行为。


近日,腾讯反病毒实验室捕获到一批钓鱼邮件,附件包含的恶意宏代码实现了下载并运行一个NSIS(Nullsoft Scriptable Install System)勒索木马的行为,该勒索木马将加密用户机器上文件并进行付款勒索。这里真正执行加密、勒索的payload是该NSIS文件经过一系列解密操作后直接在内存中加载的一个PE文件,该文件并未落地到用户磁盘上,因此使用这种方式可以加大杀软查杀的难度。




图1. 附件文档内容


0×2 木马行为分析


1. 恶意宏代码


宏代码中通过对字符串的替换、分隔操作得到勒索文件下载地址:




图2. 生成勒索木马下载地址


2. 木马行为


勒索文件运行后,会对系统中的特定类型的文件进行加密,加密后的文件后缀名改为了..doc,并且在每个被加密文件的目录下生成一个Read___ME.html文件。下图显示了Notepad++安装目录下加密后的文件,其中的文件夹目录里的文件也被加密,并且在每个目录都生成了Read___ME.html:




图3. Notepad++安装目录文件被加密示例


Read___ME.html在整个用户机器加密完成后会显示出来,内容为告知用户文档已加密,并且需要支付购买解密码:




图4. 勒索信息显示


3. 木马流程


NSIS文件首先解密出System.dll,释放在系统目录的Temp目录下,之后在Temp目录再解密释放出另一个相关文件文件,接着调用System.dll的call函数和所释放的文件,解密出实行勒索的PE文件,该PE文件未释放到用户磁盘上,而是直接在内存中加载运行,实施加密用户文件和勒索行为。




图5. 解密释放System.dll




图6. 解密释放YD文件


该勒索木马的执行流程为:




图7. 勒索木马流程图


0×3 勒索木马变种


反病毒实验室在捕获到上述钓鱼邮件不久之后,又捕获到另一批钓鱼邮件,也是通过诱使用户开启宏,执行其恶意宏代码,下载木马文件。所不同的是该木马文件不再是NSIS样本,而是EXE文件,但思路是一致的,也是该EXE文件通过一系列解密操作,解密出真正执行加密勒索行为的木马,该木马同样未落地到用户机器,是直接内存加载。


木马流程图




图8. 勒索木马变种流程图


木马分析:


1. 样本运行时申请指定大小的内存空间,并向其中写入指定数据。




图9. 申请内存空间




图10. 向申请的内存空间写入数据


2. 写入的数据是加密的,再对该数据进行如下解密操作,得到shellcode,并执行该shellcode:




图11. 解密出shellcode




图12. 执行shellcode


3. shellcode申请内存、数据解密等操作,生成真正的勒索PE木马:




图13. 解密出勒索PE文件,直接在内存中加载


4. 该木马将自身复制到系统目录并创建进程,在运行时添加自启动项,之后就开始执行加密用户文件、显示勒索信息等行为,之后删除自身。




图14. 创建进程并添加自启动项




图15. 7-zip安装目录文件被加密示例


0×4 安全建议


勒索木马层出不穷,手段变幻莫测,敲诈勒索类木马在近来一段时间内一直呈活跃高热状态,腾讯反病毒实验室给出以下几点安全建议,提醒用户时刻提高警惕,做好安全防范:


1. 及时备份重要文档、数据。

2. 不点击来历不明的邮件附件。

3. 在文件夹选项中设置显示文件扩展名。

4. 使用杀毒软件或VirusTotal等工具扫描邮件附件。

5. 确保及时更新系统、程序,尤其是Java,Flash和Adobe Reader等应用程序的更新。

相关新闻

大家都在学

课程详情

Locky勒索软件攻击过程(上)

课程详情

LNK远程代码执行漏洞(CVE-2017-8464)

课程详情

CVE-2017-8570Office远程代码执行漏洞分析及复现