近日,瑞星安全专家率先监测到挖矿木马病毒“DTLMiner”,变种,新版本病毒更换了IP和域名,并且增加了一个挖矿模块,新版挖矿模块会下载显卡驱动,利用显卡进行挖矿,大幅提升挖矿速度的同时会导致系统卡顿,显卡发热。目前,瑞星云安全系统显示,已有数千用户感染该挖矿病毒。
表:病毒下载的各模块
新版挖矿木马病毒“DTLMiner”不仅会导致中毒机器CPU占用率过高,机器卡顿,同时还会导致显卡占用率过高,显卡发热等现象,严重影响用户正常工作。目前瑞星ESM已能成功查杀该病毒的,版本。
图:瑞星ESM查杀截图
“DTLMiner”挖矿木马的黑历史:
2018年12月,“驱动人生”的升级模块被不法分子利用传播挖矿木马病毒“DTLMiner”,短期内感染数万台计算机。
2019年2月、3月又分别进行了更新,增加了数字签名与弱口令攻击,攻击面进一步增大,同时又躲避查杀。
此次瑞星截获的“DTLMiner”已经是第5次变种。
针对该木马病毒对企业网络安全带来的潜在威胁,瑞星安全专家建议:
1、安装永恒之蓝漏洞补丁,防止病毒通过漏洞植入;
2、系统和数据库不要使用弱口令账号密码;
3、多台机器不要使用相同密码,病毒会抓取本机密码,攻击局域网中的其它机器;
4、安装杀毒软件,保持防护开启。
技术分析
新版挖矿木马病毒“DTLMiner”通过漏洞和弱口令攻击植入,创建快捷方式开机自启动。
图:病毒创建的快捷方式
快捷方式运行之后,执行flashplayer.tmp。此文件是一个脚本,使用JS 调用PowerShell脚本下载。
图:flashplayer.tmp 内容
下载的文件就是下载模块,此模块会下载攻击模块和挖矿模块。下载模块使用多层混淆。
图:多层混淆的下载模块
最终解密出下载脚本,脚本运行后首先获取本机网卡mac地址,获取本机安装的杀毒软件信息。
图:获取本机网卡和杀软信息
之后随机延时一段时间。
图:延时一段时间
判断配置文件是否存在,如果不存在则下载对应样本。
图:根据配置文件下载对应样本
1)如果配置文件k1.log不存在,则创建计划任务持久驻留。
根据用户权限不同,创建的计划任务不同,如果当前用户是管理员权限则访问:http://v.y6h.net/g?h + 当前日期,如果当前用户非管理员权限则访问:http://v.y6h.net/g?l + 当前日期。
图:下载更新脚本
计划任务的功能是访问此网址,使用PowerShell执行获取到的内容。目前此网址处于无法访问状态,攻击者随时可以开启,下发任意脚本。
2)如果配置文件kkkk2.log不存在,则下载new.dat保存为cred.ps1,内容是混淆的PowerShell脚本。
图:下载cred.ps1
判断文件大小是否正确,如果正确则创建计划任务定时执行cred.ps1。
图:执行cred.ps1
cred.ps1 脚本被多层混淆。
图:多层混淆的cred.ps1 脚本
解密后可以看到,此版本是V5。
图:病毒版本
此模块主要还是为了攻击。
图:cred.ps1 脚本主要功能
调用永恒之蓝漏洞攻击。
图:永恒之蓝漏洞攻击
eb7函数针对win7和win2008。
图:eb7函数
eb8函数针对win8和win2012。
图:eb8函数
SMB弱口令攻击。
图:SMB弱口令
完整的密码列表如下,如果使用以下密码,建议尽快修改。
图:cred.ps1攻击模块内置的弱口令列表
攻击成功后,调用CopyRun函数,将 FlashPlayer.lnk和flashplayer.tmp植入被攻击机器,被攻击机器又会开始新的一轮循环,下载病毒攻击其它机器。
图:植入病毒
3)如果配置文件333.log不存在,则下载mn.dat,命名为mn.exe,此模块就是之前的挖矿模块。
图:下载mn.exe
4)如果配置文件kk4.log不存在,则下载ii.da,并使用4-8位随机字母命名,例如 hjqgbs.exe,此模块就是之前的攻击模块,使用Python开发,使用pyinstaller打包。
图:下载ii.dat 并随机命名
判断下载的文件大小是否正确,如果正确则创建计划任务运行此exe,根据不同的权限使用不同的方法运行,如果是管理员权限,直接创建计划任务运行此exe。
图:运行下载的exe
如果非管理员权限,则释放run.vbs脚本,将run.vbs脚本设置为计划任务,通过脚本运行此exe。
图:调用vbs脚本运行下载的exe
释放的run.vbs脚本。
图:vbs脚本内容
此exe仍然使用窃取的数字签名。
图:窃取的数字签名
解包后可以看到Python脚本。
图:Python脚本
脚本使用了base64编码。
图:base64编码的脚本
解码后得到病毒的Python代码,代码中的关键字符串也进行了混淆。
图:混淆的代码
图:混淆的代码
去混淆后,可以看到最终的病毒代码,病毒最开始会通过内存映射,检测当前版本。首先打开内存映射读取内容,如果没有获取到映射的内存,则创建内存映射将自身的路径+“**”+当前版本号+“$$”写入到新创建的内存映射中。
图:内存映射
如果获取到内存映射,则解析映射中的版本号和内存映射中的文件路径,计算MD5。如果当前程序的MD5和内存映射中路径对应的文件MD5相同,则不执行操作。
图:计算MD5
否则判断当前版本是否大于内存映射中的版本,如果大于结束之前版本的进程,当前程序复制过去。
图:判断版本
之后就是攻击传播的部分,病毒内置的攻击IP段、弱口令账号密码列表。
图:弱口令列表
弱口令密码又进行了扩充,完整的密码如下,如果当前计算机或者数据库软件使用了此列表中的密码,建议尽快修改密码。
图:Python攻击模块内置的密码列表
病毒仍然会抓取密码,因此局域网中多台机器使用相同密码,一台机器中毒,也会导致其它机器被攻击。
图:抓取密码
永恒之蓝漏洞攻击。
图:永恒之蓝漏洞
开启共享,将病毒发送过去。
图:发送病毒
SMB弱口令攻击。
图:SMB弱口令攻击
MS SQL数据库弱口令攻击。
图:MS SQL弱口令攻击
5)如果配置文件kk5.log不存在,则下载ddd.dat,命名为ddd.exe,此模块为新版挖矿模块,会下载显卡挖矿相关的驱动。
图:下载挖矿模块ddd.exe
挖矿模块运行后界面。
图:挖矿模块界面
挖矿模块除了使用CPU挖矿之外,还会下载显卡挖矿相关的驱动,使用显卡进行挖矿。
图:下载的显卡驱动
6),访问控制服务器,将本机状态信息信息上传到控制服务器,便于统计感染状态。
统计的信息包括本地网卡mac地址、安装的杀毒软件、系统版本、感染标志、当前用户组、当前用户名等。
图:统计信息
IOC
md5:
17891737D9970812FE875D0B955B0E15
7441A59ABB6B4C96D0EAC70D884E8008
8A2042827A7FCD901510E9A21C956,8
CDF6384E4CD8C20E7B22C2E8E221F8C8
E05827E44D487D1782A32386123193EF
3E96A29E82513C5859D5E508A75FA974
66EA09330BEE7239FCB11A911F8E8EA3
Domain:
mm.abbny.com
mm.beahh.com
lplp.beahh.com
lplp.abbny.com
lpp.beahh.com
lpp.abbny.com
ip:
128.199.64.236
27.102.107.137
27.102.118.147