事件背景
近日,深信服安全态势感知平台SIP捕获到一起Tor2Mine挖矿组织的攻击事件。该组织入侵了德国的一消防志愿者网站,并将恶意脚本挂在该网站上进行传播。深信服安全团队经过深入研究发现,Tor2Mine组织除了在受害主机上植入JuicyPotato, RpcSsImpersonator工具进行提权,下载SMBv3远程执行漏洞(CVE-2020-0796)工具进行本地提权和远程代码执行,还会赠送GoldBrute大礼包。为了保证GoldBrute 远程桌面爆破程序能够正常执行,很贴心的将整个Java 1.8环境打包部署到受害主机。还不够,还不够,还要给受害主机赠送8月新版的商业远控木马Remcos 2.7.0 Pro。同时为了玩点骚操作,给安全分析人员制造惊喜,释放AutoIt v3程序执行1.6万行的混淆代码,搞点 ”白+黑“ 。为了不让人觉察礼包的存在,特意给某些样本打上了 “QingHai”的数字签名。
Tor2Mine挖矿组织在18年极度活跃,2020年6月左右,该组织带着密码神器Mimikatz,信息窃取器AZORult,远程访问工具Remcos和DarkVNC后门开始大肆控制挖矿肉鸡和窃取信息。该组织武器库齐全,技术手法复杂,擅长伪装,并在持续更新后台恶意程序。深信服安全团队定位到受影响的客户后,第一时间联系客户进行溯源加固。根据客户环境和相关日志分析,推断出本次攻击利用了MSSQL弱口令爆破攻击,成功进入主机后再通过执行powershell命令,加载执行挂在德国某消防志愿者网站上的恶意脚本,最后实现”大礼包“操作,达到控制主机,窃取信息等目的。
攻击流程
详细分析
攻击链路中涉及的样本整理
客户主机溯源
客户主机上发现的EDR终端防护日志:
命令行内容:
解密后为下载执行powershell脚本start.ps1:
start.ps1恶意脚本分析
脚本带有混淆,混淆方式为压缩编码和字符混淆:
去混淆之后加注释整理如下,主要功能为提权,执行SMB远程漏洞利用工具,执行下一阶段恶意程序,下载执行RDP爆破程序,并通过添加开机启动项和计划任务的方式实现持久化:
1.ps1恶意脚本分析
该脚本为前面start.ps1调用,两者使用相同的混淆方式:
去混淆后整理如下,其目的是为了下载1.7z,从中解压出java1.8环境和GoldBrute远程桌面爆破程序ServSVC.exe,并通过写入注册表实现开机自启动达到持久化的目的:
开机自启动的恶意程序为base64编码,解码后如下,为了执行GoldBrute远程桌面爆破进程 ServSVC.exe:
l.exe恶意程序分析
l.exe 为前面start.ps1调用,下载后落地到%appdata%\Microsoft\Windows\Start Menu\Programs\Startup\javaw.exe 和%programdata%\Microsoft\javaw.exe这两个文件路径;
在分析过程发现,服务器 ff-emmersdorf-klagenfurt.at 后台保存的l.exe 会及时更新,这意味着攻击者通过在后台更新恶意程序的方式就可以实现对受害主机不同的行为控制;
9月12日前远程服务器的恶意程序信息,编译时间为2020年9月10日:
文件带有无效的数字签名QingHai进行伪装:
该样本的行为链比较复杂,母体l.exe本身作为下载器,下载并执行trading_bot.exe 和update_manager.exe,之后另起进程实现窃密和远控;
update_manager.exe则释放AutoIt脚本编译执行程序并命名为rundll32.com,通过调用系统进程certutil.exe 和AutoIt进程实现”白+黑“恶意行为调用:
从 https://sslbox.xyz/clp.com中下载trading_bot.exe:
从 https://sslbox.xyz/fls2/3.bin下载update_manager.exe:
将l.exe从内存中dump出来,其中包含有Remcos的字符串,版本号2.7.0 pro :
根据字符串“RemcosMutexInj”关联到其他版本的Remcos的分析报告(https://venusense.com/new_type/gjywxfx/20190518/18519.html):
且执行流程也和该报告中有很大相似之处:
可判断该样本为2020年8月10号更新的2.7.0版本,目前Remcos最新版2.7.1 已于9月14号更新:
根据行为软件的监控,会持续向C2服务器anubisnetworks.com,198.54.117.197发送数据:
update_manager.exe的程序也带有了无效的数字签名,伪装成Mozilla Corporation,目的在于释放文件,解密AutoIt脚本并加载执行:
释放如下文件:
其中rElhoECrz.com为bat脚本,调用cmd去执行;
如果存在文件C:\aaa_TouchMeNot_.txt,或者电脑名为DESKTOP-QO5QU33, NfZtFbPfH , ELICZ, MAIN 则退出;
将awmeqrcYL.com增加文件头“MZ”,并重命名为rundll32.com,其实为AutoIt v3脚本执行程序:
rundll32.com还原为PE后,文件信息如下,为AutoIt v3执行程序:
IlYyyGbktxcfLxsGT.com 是个加密的VB脚本:
解密之后是混淆VB脚本,拖到最后发现代码居然超过1.6w行,且高度混淆:
令人心态爆炸的代码量……
通过持续跟踪发现,9月12日攻击组织已经在后台服务器更新了恶意程序l.exe,编译时间为2020年9月12日,该样本已经没有了签名信息;
也就是该组织在2天之内就更新了攻击样本,很是活跃:
根据该程序的pdb路径信息,推断其也是为下载器:
potato.exe提权工具分析
该工具编译时间为2020年8月2日:
根据pdb路径信息,判断JuicyPotato的提权工具(江湖人称烂土豆,是在MS16-075漏洞利用工具RottenPotatoN的扩展):
根据start.ps1,选择不带参数的运行下,出现权限相关信息,确认其为提权工具,限于篇幅不再详细分析:
ghost.exeSMB远程代码执行漏洞(CVE-2020-0796)工具分析
编译时间还是为2020年8月2日,和上文提到JuicyPotato一致:
根据pdb路径信息,应为SMB远程代码执行漏洞(CVE-2020-0796)利用工具:
在github上找到cve-2020-0796-local的源码,和编译的pdd路径相关(https://github.com/danigargu/CVE-2020-0796/blob/master/cve-2020-0796-local/exploit.cpp):
根据exploit.cpp的源码和该样本对比分析,发现核心调用的地方基本一致,确认为SMB远程代码执行漏洞(CVE-2020-0796)利用攻击样本:
rpc.exe 提权工具分析
样本编译时间为2020年8月28日:
pdb信息如下,这应为RpcSsImpersonator提权工具:
找到github上源码https://github.com/sailay1996/RpcSsImpersonator对比分析,确认无疑,通过利用rundll32加载impersonate.dll 的方式实现提权:
1.7z打包GoldBrute僵尸网络分析
1.7z打包时间应为2020年8月11日,解压缩后文件结构如下,ServSVC.exe位java编译后的GoldBrute僵尸网络程序:
lib目录中里面包含了java1.8环境包和升级更新进程:
SerSVC.exe编译时间为2019年1月21日,而19年6月左右正好为GoldBrute爆发被披露:
左边为ServSVC.exe内置的配置文件,版本号为0.2.7,相比右边19年6月曝光的样本版本号0.3_2为更早的低级版本:
RPD扫描的地址段两者一致,都是就210.200.0.0 – 210.221.255.0,端口为3389
详细细节已存在历史报告,不详细展开分析,参考(https://www.freebuf.com/sectool/205631.html):
C2服务IP为185.153.199.103,所在地为摩尔多瓦,端口19999:
溯源分析
根据IP185.10.68.147可直接关联到Tor2Mine挖矿组织,该组织擅长伪装,横向渗透,和创建计划实现持久化,并将恶意程序保存为 java.exe/javaw.exe ,和本次分析的start.ps1中的攻击手法有很大相似之处,部分代码如下,本次攻击就是将远程恶意程序l.exe保存为javaw.exe 并通过计划任务实现持久化,并且9月12日之前版本的1.exe通过伪造数字签名QingHai也可说明两者的相似性:
根据域名 ff-emmersdorf-klagenfurt.at 可关联 Freiwillige Feuerwehr Emmersdorf Klagenfurt 的Facebook主页,从该用户的发文信息判断,该用户为德国的志愿者消防队:
且近期仍在活跃发布消防动态:
打开facebook主页上的网站,也是正常的消防相关的展示页面,由此推断 ff-emmersdorf-klagenfurt.at 是被Tor2Mine攻破后挂载了恶意程序。根据6月的报告,Tor2Mine组织曾将木马潜藏在某些下载站,从传播手段上也存在很大相似之处:
由以上信息推断,可基本确定本次攻击事件为Tor2Mine组织所为。
防护建议
(1)安装有MSSQL服务的主机上,更改默认端口, 并设置访问规则,防止被检测爆破;
(2)MSSQL更换当前的弱口令,使用多种字符组合的8位以上的复杂密码,且不要和公司,机器名,人名相关;
(3)MSSQL禁用具有执行系统命令的功能,例如 xp_cmdshell , SPOACreate ;
(4)远程桌面使用强口令,且最好对登录IP有限制要求,切勿直接在外网开放登入权限;
(5)定时检查服务器的异常账号,及时清理不用的账号和权限;
(6)对机器进行全盘扫描,及时清理贮存的病毒,并定时扫描;
(7)禁用445,139端口,防止攻击者利用SMB漏洞在内网扩散病毒;
(8)及时给系统打补丁,打补丁,打补丁。
已经安装深信服EDR的客户,目前已经可以查杀拦截,建议在“开启无文件攻击防护”设置“自动阻断脚本执行”:
IOC
url:
hxxp://ff-emmersdorf-klagenfurt.at/data/start.ps1
hxxp://185.153.199.102/scr/1.ps1
hxxp://ff-emmersdorf-klagenfurt.at/data/potato.exe
hxxp://ff-emmersdorf-klagenfurt.at/data/ghost.exe
hxxp://ff-emmersdorf-klagenfurt.at/data/rcp/rpc.exe
hxxp://185.153.199.102/1.7z、
hxxp://185.10.68.147/mssql_priv
hxxp://ff-emmersdorf-klagenfurt.at/data/l.exe
hxxps://sslbox.xyz/fls2/3.bin
hxxps://sslbox.xyz/clp.com
domain:
ff-emmersdorf-klagenfurt.at
sslbox.xyz
anubisnetworks.com
ip:
185.153.199.102
185.10.68.147
185.153.199.103
198.54.117.197
md5:
361B7FD6EB4742C3820C083051526099
5526E3B7C0ED53F69BEA760711D22F18
023194213D9C 4E0CA6DD054094C7E33A
3E70D1CF62858CA3EE8DD0CC98615CFB
5EB854D7781CC9 2FCE1F7339906FFE37
99DD1E43AAAF5AB807F8D71CA60FE65E
4576B207CE381FB39C8279CAAA206780
参考链接
https://www.freebuf.com/sectool/205631.html
https://github.com/danigargu/CVE-2020-0796/blob/master/cve-2020-0796-local/exploit.cpp
https://github.com/sailay1996/RpcSsImpersonator
https://venusense.com/new_type/gjywxfx/20190518/18519.html
http://www.chidaolian.com/article-46774-1
https://blog.talosintelligence.com/2020/06/tor2mine-is-up-to-their-old-tricks-and_11.html
来源:freebuf.com 2020-09-21 15:13:44 by: 深信服千里目安全实验室
请登录后发表评论
注册