应急响应: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.png
    客户说升级了阿里云的cpu,重启后 发现 大部分项目启动不了了,重启完 cpu 300%,貌似之前的病毒没处理干净,清除了tmp 恢复正常,tomcat起不来,
    那就去看看到底啥情况,结果一cat,woc发现看不懂,之前觉得tomcat挺简单的,没想到生产环境这几把复杂,google一下发现貌似是配置文件冲突,咱也不知道是啥,咱也不敢问
    QQ20190426-0.png

    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
    

    2019-04-25_17-06.png
    呃,可以确定了就几把是挖矿,矿池
    2019-04-25_17-08.png
    2019-04-25_17-09.png
    2019-04-25_17-09_1.png
    然后我们删除被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
    

    2019-04-25_17-17.png

    我们再来

    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都没有,以后多发
    应急算是解决了,但是不到位,没有找到挖矿病毒到底是怎样进来的,下次加油~


Log in to reply