应急响应:linux服务器之挖矿病毒

应急响应:linux服务器之挖矿病毒

0x00 前言

2017年10月,360网络安全研究院监控到一个大规模攻击OrientDB 数据库服务器,挖取门罗币(XMR,Monero CryptoCurrency)的僵尸网络,并将其命名为 DDG 挖矿僵尸网络 (DDG Mining Botnet,以下简称 DDG)。DDG 累积挖取的门罗币数目较大,到2018年2月,能够确认该僵尸网络累积挖取的已经超过 3,395枚门罗币,折合人民币超过580万元 。DDG一跃成为继MyKings之后,收益第二大的挖矿僵尸网络。

0x01 应急场景

今天下午,接到一个垃圾客户但单子,问题描述是挖矿病毒,最后却说要解决tomcat,擦,运维这我们不背
10
客户说升级了阿里云的cpu,重启后 发现 大部分项目启动不了了,重启完 cpu 300%,貌似之前的病毒没处理干净,清除了tmp 恢复正常,tomcat起不来,
那就去看看到底啥情况,结果一cat,woc发现看不懂,之前觉得tomcat挺简单的,没想到生产环境这几把复杂,google一下发现貌似是配置文件冲突,咱也不知道是啥,咱也不敢问

0x02 传播途径

在cd 退回上一级目录的时候发现confluence这个,woc,还几把有这玩意? 记得前段时间貌似又一个confluence 远程代码执行漏洞的东西,貌似是CVE-2019-3396,估计那个挖矿应该是从这进来的
咱也不敢问,233,不过也可能是jenkinsrec,或者redis也说不准

0x03 处理流程

这个机子好,tmd竟然没有wget,我尝试yum去安装,然后被kill掉了。被kill掉了,是什么鬼? ?
我又top了一下,并没有什么异常,也没什么进程占用特别搞,netstat -ano 了一下,也没发现啥可以连接,
问了同事,了解到这个和变种DDG挖矿类似,并解释到这几把玩意,你使用top、ps aux| grep 啥啥的估计是看不到挖矿进程
该死的挖矿病毒疯狂到去动了系统/etc/ld.so.preload里边到东西,于是又get到了一个新词“Linux动态链接库预加载机制”
Linux动态链接库预加载机制,是一种常用的进程隐藏方法,而系统的ls,ps等命令已被通过so库的preload机制被病毒劫持, ls会导致/etc/cron.d/root文件被刷写为病毒定时执行命令
busybox静态编译,不依赖动态连哭,也不受ld.so.preload劫持,我们可以愉快到应急了
我们只能从我们到电脑上下载busybox二进制包,然后scp传到云服上,

wget https://busybox.net/downloads/binaries/1.30.0-i686/busybox
scp busybox username@servername:/path   
chmod +x busybox 
./busybox 
./busybox  top

可以愉快到应急了,
然后我们,发现,一top出现了三个sleep,然后几秒钟就被kill掉了,估计是被自己kill掉了,这个骚啊,一top就kill自己
这肯定有问题,我们接着去看一下/tmp
我们发现了一个十分奇特的文件, tmpkGl393
我们尝试cat,看一下,看看到底是啥,结果为空????这就更不对劲了
我们又意识下的看了一下计划任务表,

crontab -l


呃,可以确定了就几把是挖矿,矿池



然后我们删除被preload的so库

./busybox rm -f /usr/local/lib/libioset.so
./busybox rm -f /etc/ld.so.preload
./busybox rm -f /etc/ld.so.cache

验证一下是否卸载了

lsof |grep usr/local/lib/libioset.so
echo $LD_PRELOAD

输出为空,动态连哭被成功卸载了
然后我们

./busybox pstree -p

发现这三个sleep对应进程pid是

sleep 2291
sleep 2289
sleep 2383
sleep 23838 布吉岛这个是干啥,反正kill掉没错
./busybox ps aux | grep 23838

我们再来

crontab -l

一下,没有那个垃圾玩意了

cat /etc/crontab //无
lastlog  //貌似没啥异常了
cd /root/.ssh/ //没异常
ls -alR
vim authorized_keys //没异常
cat /etc/passwd //也没发现啥异常
cat /etc/passwd | grep /bin/bashj
cat /etc/passwd | grep /bin/bash
clear
exit

等待了一个小时,那个垃圾玩意再也没有出现过

0x04应急结束

白天的时候只把几张关键的图截下来发给客户,没想着后来要总结,很多有意思的截图gif都没有,以后多发
应急算是解决了,但是不到位,没有找到挖矿病毒到底是怎样进来的,下次加油~

要么是ssh撞库去了,要么是某个漏洞,清空日志就很骚~


服务器资源由ZeptoVM赞助

Partners Wiki IRC