近日,阿里云安全发现一种新型挖矿蠕虫RDPMiner,通过爆破Windows Server 3389端口RDP服务的方式进行挖矿木马传播,致使用户CPU占用率暴涨,机器卡顿,更被创建名为DefaultAccount的账号。攻击者可畅通无阻远程登录机器威胁用户业务和数据安全。

据该蠕虫连接的某矿池公布的HashRate,预估仅该矿池即有2000+机器连接进行挖矿,阿里云安全专家判断该挖矿蠕虫扩散性还在持续且活跃度高,且用户管理账号弱密码设置更给攻击者创造了有利的条件。

本文以RDPMiner整体攻击流程为主线,通过对入侵、获利、对抗与维持等进行详细分析,还原RDPMiner整个过程。并在文末给出专家建议,同时也提醒用户加强密码设置。

背景

在接到用户反馈Windows Server服务器CPU占用率暴涨,并被创建DefaultAccount的账号后,阿里云云防火墙同步监控到这些机器向外发出大量RDP请求。阿里云安全研究人员进行分析后,发现用户主机上运行着挖矿程序,导致CPU占用率居高不下。

进一步分析,攻击者利用该蠕虫程序暴力破解RDP服务、创建用户名为DefaultAccount的账号、修改注册表、开启挖矿程序。 接着再通过这台被入侵的机器对互联网其他主机进行爆破,进而达到入侵、获利、持久化等功能。

且挖矿蠕虫的攻击者具有较强的对抗意识,大部分二进制程序都被制作成了SFXRAR自解压缩程序(Self Extracting Archives)进行密码加密,并在执行完功能后,统一由脚本进行清理。阿里云安全监测到该蠕虫最早出现于2017年11月,持续时间长达1年多。

此次RDPMiner事件中,攻击ip来源地伊朗、美国、中国基本持平。由于中国的入侵ip很大部分是由于主机被入侵之后变成继续攻击的肉鸡,故最初发起攻击的ip以伊朗和美国居多。

RDPMiner蠕虫攻击及传播流程解析

恶意程序示意图

如下图所示:攻击者在成功控制一台机器后,为进行下一轮的RDP爆破攻击,首先会在该机器的c:usersadministratordesktop目录下,植入并运行名为sector-v1.exe的多功能恶意程序工具包。工具包中的程序都进行了sfxrar加密,需要输入密码才能正常运行。

恶意工具包运行界面

根据进程启动记录,攻击者使用了工具包中的c-f 4 reza,从http://111.63.225.242:8082//c-f4r.exe下载了并运行了c-f4r.exe,释放出d-f.exe、m-r.exe、res.exe和A-C-M.exe等多个可执行恶意程序。这里的下载源服务器111.63.225.242与诸多入侵事件相关,根据abuseipdb网站的ip滥用记录,111.63.225.242曾多次被用户举报涉及攻击行为,值得关注。

而多个恶意程序中的A-C-M.exe在运行之后,又将进一步释放svchost.exe、ds.exe、nl.exe、user.txt、pass.txt、backdoor-reg-nl-restart.bat等恶意程序、恶意脚本和配置文件。

其中,svchost.exe执行时,一方面释放及启动挖矿程序serverGui.exe,另一方面执行下图脚本中所示命令添加前文用户反馈的DefaultAccount恶意账号,并通过操作注册表将自身添加到Windows系统启动项中,达到持久化攻击的目的。

svchost.exe文件生成示意图

而nl.exe原名为NLBrute.exe,是一款最早由俄罗斯人开发的Windows系统3389爆破软件。攻击者使用它来达到传播蠕虫,进一步扩大攻击范围的目的。

RDPMiner活动时间线

如上图所示,从2017年11月开始攻击者便开始采用各种工具进行爆破、挖矿攻击,使用过的扫描工具除了nl.exe(NLBrute)之外,还有kportscan3.exe等。同样地,为了逃避云上恶意程序的查杀,攻击者用来挖矿的工具也经历了至少两轮迭代。

挖矿工具名称变化时间线

尽管攻击者使用的挖矿工具名称、哈希值不断变化,但本质上都是开源挖矿软件xmrig经过修改而成,因此使用方式与xmrig十分相似。

RDPMiner各模块功能

入侵:RDP暴力破解

通过A-C-M.exe释放出如下文件,程序启动后会调用nl.exe,该程序更为广泛使用的名称是NLBrute,专门用于对3389端口进行爆破。

A-C-M.exe运行释放文件

如图所示,程序启动后会加载文件Part1到Part17所存储的IP地址,去重后共计427975个,去重后为427934个IP,nl.exe会加载这些IP地址而后持续对外爆破半个小时,结束后调用backdoor-reg-nl-restart对程序和IP地址簿进行删除,在主机上不留下任何痕迹,由于该类动作,使得该类样本难以发现。

获利:挖矿

攻击者通过A-C-M.exe释放svchost.exe(路径为:C:/Windows/debug/svchost.exe),而后svchost.exe释放ServerGUi.exe(路径为:C:/Users/Administrator/AppData/Local/Temp/2/ServerGUi.exe)进行挖矿,该程序基于xmrig修改,挖矿支持指令如下所示:

当前攻击者钱包地址在某挖矿平台上的日平均Hash Rate约25KH/s,目前全网数千台机器正在连接该矿池,这个挖矿速率意味着攻击者本次挖矿每日收益仅为约8.73美元,侧面说明在如今币价狂跌的背景下,入侵挖矿的收益不再像过去那样诱人。攻击者仍然乐此不疲,对用户而言伤害不减。 

攻击者钱包地址在supportxmr.com矿池的记录

对抗与维持:创建RDP账号、注册表操作与痕迹清理

为了对抗安全人员的分析,攻击者对全部文件进行了SFX加密并且都设置了密码,通过运行时自解压将文件释放出并运行相关的脚本文件,如图所示是A-C-M.exe文件中的SFX脚本命令,当程序解密后会运行nl.exe文件和执行backdoor-reg-nl-restart脚本。

;The comment below contains SFX script commands

Path=C:UsersAdministratorDesktop 
Setup=nl.exe 
Setup=backdoor-reg-nl-restart 
Overwrite=1 
Silent=1

前文提到,攻击者运行nl.exe,通过RDP服务爆破入侵之后,会通过Opppps.bat脚本添加DefaultAccount账号。而为了避免账号被用户发现并删除,svchost.exe还会运行“cmd /c REG add HKLMSoftwareMicrosoftWindowsCurrentVersionRun /v”将自身运行加到自启动项里。

此外为避免程序运行时Windows UAC弹框引起用户察觉,该恶意程序还包含了如下图所示的注册表命令,设置"EnableLUA"注册表项以及关闭Windows自带的防火墙。

而当执行完对外扫描任务、注册表修改等任务后,会执行backdoor-reg-nl-restart脚本,结束相关进程和清理程序释放的文件。由于对外3389端口扫描设定了时间1800秒(半小时)或3600秒(一小时),所以该类样本较难进行捕获。如图所示,是backdoor-reg-nl-restart脚本。

start taskmgr 
net user administrator /active:no 
... 
timeout 1800 
DEL /F /Q "C:Windowsdebuguser.reg" 
DEL /F /Q "C:Windowsdebugta.reg" 
DEL /F /Q "C:WindowsdebugDwd.reg" 
taskkill /im nl.exe /f 
taskkill /im nl.exe /f 
taskkill /im nl.exe /f 
DEL /F /Q "C:Users%username%Desktopnl.exe" 
DEL /F /Q "C:Users%username%Desktopnl.exe" 
DEL /F /Q "C:Users%username%Desktopnl.exe" 
DEL /F /Q "C:Users%username%Desktoppass.txt" 
DEL /F /Q "C:Users%username%Desktopuser.txt" 
DEL /F /Q "C:Users%username%Desktopsettings.ini" 
taskkill /im A-C-M.exe /f 
DEL /F /Q "C:Users%username%DesktopA-C-M.exe" 
DEL /F /Q "C:Users%username%Desktoppart1.txt" 
DEL /F /Q "C:Users%username%Desktoppart2.txt" 
... 
DEL /F /Q "C:Users%username%Desktoppart17.txt" 
echo HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Options [1]>>temp.ini 
regini temp.ini 
del temp.ini 
net user administrator /active:yes 
DEL "%~f0"

安全建议

针对此次RDPMiner攻击,阿里云安全向用户提供两点安全建议:

  1. RDP弱密码导致的3389暴力破解仍然是Windows Server服务器的用户需要重点关注的风险,应尽量避免使用弱密码,此外可以选择购买阿里云的云防火墙实现主机暴力破解的防御和安全隔离。
  2. 对于已感染的客户,建议尽快购买阿里云安全管家服务,在安全专家的指导下进行病毒清理和安全加固。

**附录

IOCs**

钱包地址

493NdGNLF2C5EgQ11rYUA5gWqCLKrjY8w6Wrfev2cCXzW7UwepJ4yUv16A2zQfyWsWRk4wnGwpsUd7hLGr5TQFxYDnYK6Ta

**矿池地址:
**
pool.supportxmr.com:3333

minexmr.com

xmr-asia1.nanopool.org:14444

159.69.206.220:3333

恶意程序DNS请求:

min.microsoftupdcenter.info

原文链接
更多技术干货 请关注阿里云云栖社区微信号 :yunqiinsight

威胁预警|首现新型RDPMiner挖矿蠕虫 受害主机易被添加恶意账户的更多相关文章

  1. 威胁快报|首爆新型ibus蠕虫,利用热门漏洞疯狂挖矿牟利

    一.背景 近日阿里云安全团队发现了一起利用多个流行漏洞传播的蠕虫事件.黑客首先利用ThinkPHP远程命令执行等多个热门漏洞控制大量主机,并将其中一台“肉鸡”作为蠕虫脚本的下载源.其余受控主机下载并运 ...

  2. 威胁快报|Bulehero挖矿蠕虫升级,PhpStudy后门漏洞加入武器库

    概述 近日,阿里云安全团队监控到Bulehero挖矿蠕虫进行了版本升级,蠕虫升级后开始利用最新出现的PHPStudy后门漏洞作为新的攻击方式对Windows主机进行攻击,攻击成功后会下载门罗币挖矿程序 ...

  3. 威胁快报|ProtonMiner挖矿蠕虫扩大攻击面,加速传播

    背景 近日,阿里云安全监测到一种挖矿蠕虫,正在互联网上加速传播.阿里云安全根据它使用ProtonMail邮箱地址作为矿池用户名的行为,将其命名为ProtonMiner.据分析,这种蠕虫与TrendMi ...

  4. 威胁快报|首爆,新披露Jenkins RCE漏洞成ImposterMiner挖矿木马新“跳板”

    简介 阿里云安全于近日捕获到一起使用Jenkins RCE漏洞进行攻击的挖矿事件.除挖矿外,攻击者还曾植入具有C&C功能的tsunami木马,也预留了反弹shell的功能,给用户带来极大安全隐 ...

  5. 威胁预警|Solr velocity模板注入远程命令执行已加入watchbog武器库,漏洞修补时间窗口越来越短

    概述 近日,阿里云安全团队监测到挖矿团伙watchbog更新了其使用的武器库,增加了最新Solr Velocity 模板注入远程命令执行漏洞的攻击方式,攻击成功后会下载门罗币挖矿程序进行牟利.建议用户 ...

  6. ProtonMiner挖矿蠕虫

    特征 ProtonMail邮箱地址 利用漏洞 服务 漏洞 Hadoop 未授权访问 Drupal CVE-2018-7600 Redis 未授权访问 Spring Data Commons CVE-2 ...

  7. JbossMiner 挖矿蠕虫分析 (转载)

    前言 从2013年的诞生,到2016爆发,挖矿(MiningCryptocurrency) 的高回报率,使其成为了一把双刃剑.据外媒去年的统计,比特币的算力(Hash Rate)已在半年内翻了一翻. ...

  8. [转帖]Docker Hub上镜像发现挖矿蠕虫病毒,已导致2000台主机感染

    Docker Hub上镜像发现挖矿蠕虫病毒,已导致2000台主机感染 https://www.kubernetes.org.cn/5951.html 本来想说可以用 official版本的镜像 但是一 ...

  9. 高危预警|RDP漏洞或引发大规模蠕虫爆发,用户可用阿里云免费检测服务自检,建议尽快修复

    2019年9月6日,阿里云应急响应中心监测到Metasploit-framework官方在GitHub空间公开了针对Windows远程桌面服务远程命令执行漏洞(CVE-2019-0708)的利用代码. ...

随机推荐

  1. Windows环境下安装openface

    由于昨天在学习人脸识别,就涉及到了openface 我使用的是Windows环境下的pycharm开发工具,昨天一直安装openface但就是没有相关的教程,使用pip install openfac ...

  2. MyBatis中使用RowBounds对查询结果集进行分页

    MyBatis可以使用RowBounds逐页加载表数据.RowBounds对象可以使用offset和limit参数来构建.参数offset表示开始位置,而limit表示要取的记录的数目 映射文件: & ...

  3. Shiro学习笔记1 —— Hello World

    1.创建一个Maven工程加载Shiro的jar包 <!-- junit --> <dependency> <groupId>junit</groupId&g ...

  4. JS对象 四舍五入round() round() 方法可把一个数字四舍五入为最接近的整数。 语法: Math.round(x)

    四舍五入round() round() 方法可把一个数字四舍五入为最接近的整数. 语法: Math.round(x) 参数说明: 注意: 1. 返回与 x 最接近的整数. 2. 对于 0.5,该方法将 ...

  5. cpu子系统(优化)

    如果业务已经在线上,你要优化,第一步如何做 首先进行服务器数据采集,和性能监测分析 一:使用cacti,nagios,zabbix 等监控工具 二:使用linux 自带的一些监控指令:vmstat,i ...

  6. 实现虚拟机VMware上Linux与本机windows互相复制与粘贴的问题

    解决方法:只需要在Linux系统中安装一个vmware-tools的工具 1.选择虚拟机菜单,有安装vmware tools 工具的选项 点击之后,在Linux的桌面下会出现 VMwareTools. ...

  7. Odoo Javascript 参考

    本文介绍了odoo javascript框架.从代码行的角度来看,这个框架不是一个大的应用程序,但它是非常通用的,因为它基本上是一个将声明性接口描述转换为活动应用程序的机器,能够与数据库中的每个模型和 ...

  8. HTML学习笔记 表单元素

    <form></form>代表表单 action:往什么地方提交 method:提交方式  get显示提交(不安全)  post隐视提交(安全) 提交内容:  name=输入的 ...

  9. SpringBoot生产/开发/测试多环境的选择

    多环境选择 一般一套程序会被运行在多部不同的环境中,比如开发.测试.生产环境,每个环境的数据库地址,服务器端口这些都不经相同,若因为环境的变动而去改变配置的的参数,明显是不合理且易造成错误的 对于不同 ...

  10. win10 mysql5.7指定某个配置文件启动

    点击开始菜单,搜索cmd.exe,左击以管理员身份运行 C:\Users\Administrator>cd C:\Program Files\MySQL\MySQL Server 5.7\bin ...