400电话
在线咨询
微信咨询
咨询时间: 9:30-18:30
400-998-3555

伪造微软等企业签名 恶性病毒偷比特币+挖矿

  • 作者:火绒安全

  • 发布时间:2018-05-08

  • 阅读量:712

 一、概述

5月8日,火绒实验室截获新型后门病毒。该病毒破坏性极强,入侵用户电脑后会执行多种病毒模块,以窃取用户比特币、门罗币等主流虚拟货币的数据信息,同时利用用户电脑疯狂挖矿(生产"门罗币"),并且还会通过远程操控伺机对用户进行勒索。

另外,病毒团伙非常狡猾,不仅使用了隐蔽性很强的"无文件加载"技术,令普通用户难以察觉,而且还伪造了亚马逊、微软以及火绒的数字签名,成功躲过了国内绝大多数安全软件的查杀。目前"火绒安全软件"最新版可对该后门病毒进行拦截和查杀。

 image005.png

火绒查杀截图

二、详细分析

近期,火绒截获到病毒样本,该病毒会通过访问C&C服务器下载执行多种病毒模块,病毒模块功能包括:挖矿、勒索、信息窃取。该病毒运行之后首先会执行3个远程脚本,分别下载勒索病毒,挖矿病毒,并且还可能会下载间谍病毒。勒索病毒会常驻后台,等待勒索时机。挖矿病毒会首先由evil.js直接下载下来,然后伪装成为explorer.exe加参数运行。ps5.sct实现核心功能,负责后续的主机信息收集,服务端指令的执行,从目前服务器返回的数据来看,只是用于挖矿命令的下发。

病毒恶意行为流程图,如下图所示:

image006.png

 

病毒恶意行为流程图

进程树粗略概览,如下图所示:

image007.png

 

 

进程树截图

该病毒执行后,会执行远程恶意VBScript脚本和SCT脚本。相关代码,如下图所示:

image008.png

 

病毒代码

该病毒执行远程脚本相关数据,如下图所示:

image009.png

 

相关数据

被执行的远程脚本及其主要功能,如下图所示:

image010.png

 

脚本名称及其主要功能

下文针对病毒所下载执行的多个脚本文件进行详细分析。

ps5.sct:

ps5.sct是一个混淆过的SCT脚本,作为payload,由regsvr32远程执行,利用powershell结合dotnet的静态方法来创建子线程执行shellcode,该shellcode会向ssl2.blockbitcoin.com请求数据,下载一个pe结构异常的恶意dll,该dll会从远程服务器获取命令然后执行,在我们分析的时候,服务器派发命令是挖矿命令。

解密后的ps5.sct相关代码,如下图所示:

image011.png

 

解密后的脚本代码

以上shellcode下载的恶意dll的GetCommand_and_run函数实现联网获取服务器指令。相关代码逻辑,如下图所示:

image012.png

 

病毒代码

通过动态调试发现恶意dll偏移0x305252E处调用网络操作相关API,连接网站ssl2.blockbitcoin.com。压栈的内容,如下图所示:

image013.png

 

动态调试截图

向该网站请求数据,压栈的内容,如下图所示:

image014.png

 

动态调试截图

通过InternetReadFile  API函数,从网站读取命令数据,如下图所示:

image015.png

 

病毒代码

网站返回了命令数据,如下图所示:

image016.png

 

                                                                                                                                                                                                                           动态调试获取网页返回数据

调用sub_3063D37的函数,循环执行每条网站返回的命令数据,如下图所示:

image017.png

 

病毒代码

reg99.sct:

reg99.sct也是一个混淆过的SCT脚本,作为payload,由regsvr32远程执行,会根据系统的架构决定执行var_func(32bit) 还是 va_func2(64bit),这两个函数会释放出不同版本的evil.js,从而下载对应的挖矿病毒,相关代码逻辑,如下图所示:

image018.png

 

解密后的脚本代码

挖矿病毒(文件名:explorer.exe,与资源管理器进程名一致)相关关键数据,如下图所示:

image019.png

 

 相关数据

image020.png

 

 相关数据

截至2018年5月8日,根据钱包地址查询到结果,如下图所示:

 

 image021.png

钱包收益截图

并且通过行为分析可以看出:

1.每5分钟执行一次 reg9.sct 中的恶意代码,用以保证挖矿行为正常运行。命令如下图所示:

image022.png

 

恶意命令

2.利用wmi执行下载并运行挖矿病毒与勒索病毒。命令如下图所示:

image023.png

 

恶意命令

sp.txt

sp.txt是一个经过混淆的VBScript病毒脚本,脚本会下载执行勒索病毒(文件名:core.scr)。解密后的脚本代码,如下图所示: 

image024.png

 

 

解密后的脚本代码

勒索病毒相关关键数据,如下图所示:

image025.png

 

相关数据

勒索病毒加密使用用RSA非对称加密。公钥数据,如下图所示:

image026.png

 

相关数据

尝试终止如下exe程序,如下图所示:

image027.png

 

相关数据

该程序初始化了字符串表,保存了常见数据库主程序名,通过循环调用结束进程函数,将这些程序进程结束,从而取消文件占用。相关逻辑如下图所示:

image028.png

 

初始化字符串列表

 

进程结束逻辑

image029.png

加密如下文件后缀,如下图所示:

 

 image030.png

相关数据

其他:

在我们的测试过程中发现,由于远程脚本会发生改变,还有可能下载该间谍病毒, 该病毒让浏览器安装adblockplus插件,通过向js文件写入片段代码,实现过滤用户比特币钱包信息,用于窃取用户信息。

间谍病毒(文件名:SVTHOST.EXE)相关关键数据,如下图所示:

image031.png

 

相关数据

image032.png

 

相关数据

image033.png

 

相关数据

image034.png

 

相关数据

经过我们多次下载发现,该病毒功能总体不变,但是签名信息等频繁发生变化,可能是为了实现免杀,其证书签名都是同属于一家CA,签名者通常被伪造成其他知名软件厂商名字,如:微软、亚马逊、火绒。如下图所示:

image035.png

 

 

第一次下载得到的程序的签名信息

image036.png

 

 

第二次下载得到的程序的签名信息

image037.png

 

第三次下载得到的程序的签名信息

三、溯源分析

我们在病毒样本资源的版本信息中发现,其语言版本是简体中文,如下图所示:

 

 image038.png

image039.png

image040.png

 

资源信息

病毒还在文件信息中将自己伪装为"金山安装工具",如下图所示:

image041.png

 

文件属性中的"文件说明"翻译为:"金山安装工具"

从病毒远程下载的某个样本中,我们发现伪造的数字签名包含有中国厂商,如下图所示:

42.jpg

 

 

伪造的"火绒"签名

通过上述信息,我们不排除该病毒的编写作者为中国人的可能性。

四、附录

image043.png

 

 

安全无忧,一键开启

全面提升您的系统防护