0x0 背景介绍
近期,深信服安全团队捕获到一个“求生欲”极强的Linux挖矿病毒家族,为了躲避DDG及安全人员的查杀,其采用了多种方式进行隐藏及持久化攻击,由于其会访问域名Rainbow66.f3322.net,深信服安全团队将其命名为RainbowMiner。
0x1 排查过程
中毒的主机出现了奇怪现象,CPU占用率很高,却找不到可疑的进程。
这种情况第一反应是病毒对系统命令进行了劫持,隐藏自身,下载运行busybox top命令,即可查看到病毒进程,其中kthreadds为挖矿进程,pdflushs为守护进程。
定位完病毒进程后,还需删除对应的文件,挖矿进程对应的文件为/usr/bin/kthreadds,守护进程对应的文件为/etc/init.d/pdflush,同时,主机的/etc/rc*.d/启动目录下还有残留的链接,也许一并清除。
该病毒没有采用定时任务的方式驻留,而是创建了一个ssh公钥后门,也需要一并清除。
除此之外,还发现主机有个伪装的python恶意进程,经后续分析确认也是个守护进程,需要清除干净。
至此,病毒的清除过程就结束了。
0x2 情报关联
从Github开源项目DDGBotnetTracker发现,DDG最新版本v5023的猎杀名单中存在有RainbowMiner的项,看来DDG也视RainbowMiner为眼中钉。
RainbowMiner相应的域名也在重定向列表里。
Rainbow66.f3322.net(148.70.199.147)是个HFS服务器,上述xmrig/目录存放的就是RainbowMiner的所有组件,这里可以看到点击量超过了7.7w,估摸着感染RainbowMiner的主机大概有7w+。
xmrig/目录如下,其中母体脚本有3个,launch和launch-ubuntu即为pdflushs,而install比较有趣,分析发现是个汉化版的脚本。
脚本还带有中文注释。
运行后,会提示你安装挖矿还是安装后门,功能与pdflushs相仿。
0x3 病毒分析
kthreadds为开源xmrig挖矿程序,下面主要分析母体脚本pdflushs,从初始的变量定义,可以得知,RainbowMiner的组件主要有3类:ssh等运维工具、processhider等黑客工具、xmrig等挖矿程序,其中运维工具是方便脚本执行命令,黑客工具只要是用来隐藏及持久化运行挖矿进程。
脚本入口点如下,支持3种参数,安装并运行挖矿,检查挖矿运行状态,及检查更新。
主要看start函数,该函数启动后会从C&C服务器下载各个组件,并校验sha512是否正确,若不正确(云端组件有更新或本地组件被篡改)则重新下载。
写入ssh公钥后门到autorized_keys文件,使C&C服务器后续可以直接登录该主机。
后台运行cron.py脚本(伪装成libgc++.so),与母体脚本功能类似,守护监控挖矿是否正常运行。
cron.py脚本的代码如下,后台运行挖矿进程及母体脚本,挖矿矿池地址为:rainbow20.eatuo.com。
参考链接:https://github.com/0xjiayu/DDGBotnetTracker/blob/master/v2/data/jobs.json
如若转载,请注明原文地址: