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。

参考链接:bccK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1j5H3P5r3A6A6j5i4W2#2i4K6u0r3c8p5c8s2b7X3!0@1L8X3g2@1g2s2u0S2j5$3E0W2M7W2)9J5c8X3u0D9L8$3u0Q4x3V1k6E0j5i4y4@1k6i4u0Q4x3V1k6$3x3W2)9J5c8X3c8S2N6r3q4Q4x3V1k6B7L8$3u0K6i4K6u0W2K9Y4y4G2L8R3`.`.
0x4 加固建议
1、Linux恶意软件以挖矿为主,一旦主机被挖矿了,CPU占用率高,将会影响业务,所以需要实时监控主机CPU状态。
2、定时任务是恶意软件惯用的持久化攻击技巧,应定时检查系统是否出现可疑定时任务。
3、部分企业还存在ssh弱密码的现象,应及时更改为复杂密码,且检查在/root/.ssh/目录下是否存在可疑的authorized_key缓存公钥。
4、定时检查Web程序是否存在漏洞,特别关注Redis未授权访问等RCE漏洞。
0x5 深信服安全产品解决方案
1、深信服EDR产品、下一代防火墙及安全感知平台等安全产品均具备病毒检测能力,部署相关产品用户可进行病毒检测,如图所示:

2、深信服安全感知、下一代防火墙、EDR用户,建议及时升级最新版本,并接入安全云脑,使用云查服务以及时检测防御新威胁;
3、深信服安全产品集成深信服SAVE安全智能检测引擎,拥有对未知病毒的强大泛化检测能力,能够提前精准防御未知病毒;
4、深信服推出安全运营服务,通过以“人机共智”的服务模式帮助用户快速提高安全能力。针对此类威胁,安全运营服务提供安全设备策略检查、安全威胁检查、相关漏洞检查等服务,确保第一时间检测风险以及更新策略,防范此类威胁。