最近几天不断收到系统的报警信息,提示CPU利用率过高。
主机长时间的高占用一般是由挖矿木马导致的,因此下面就以挖矿木马的方式进行排查系统。
ps
查看到“ftpuser用户”的一个进程占用了将近90%的CPU资源。
ll /proc/2850
由下图所示,可以发现攻击者在目录/home/ftpuse创建了一个隐藏目录
进一步查看文件内容
由于此处文件太长,就不全部展示了
大致分为两个部分
第一部分:
由Base64编码的恶意代码
将这部分的代码进行解码,解码发现这部分数据仍然存在加密情况
通过构造prel脚本,对文件进行解密
perl error.pl
(注:这一部分只需要将eval替换为print,就可以使用prel脚本进行解密了)
由上图所示,可以发现木马真实进程为“PS”
并且攻击者的IP为45.9.148.99,ip真实地址为荷兰
通过威胁情报平台查看该IP的标签,至此基本断定本次捕获的为批量挖矿代码植入的攻击
第二部分:
攻击者的植入了rsa公钥,方便以后免密登录ssh的后门
从上面的检查过程中可以发现定时任务一共建有5个任务,下面对文件一一进行查看
文件一:
定时任务:1 1 */2 * * /home/ftpuser/.configrc/a/upd>/dev/null 2>&1
路径:/home/ftpuser/.configrc/a/
先打开文件upd
含义:如果当前进程存在,就清除进程。然后执行/home/ftpuser/.configrc/a/run
再打开文件run
含义:先判断cpu类型,本机是x86_64所以执行/home/ftpuser/.configrc/a/cron:
文件二:
定时任务:@reboot /home/ftpuser/.configrc/a/upd>/dev/null 2>&1
与上同,重启时生效
文件三:
定时任务:5 8 * * 1 /home/ftpuser/.configrc/b/sync>/dev/null 2>&1
路径:/home/ftpuser/.configrc/b
文件sync
含义:运行真正shell文件是/home/ela/.bashtemp/b/run
文件run
含义:执行恶意代码
文件四:
定时任务:@reboot /home/ftpuser/.configrc/b/sync>/dev/null 2>&1
与上同,重启的时候生效
文件五:
定时任务:#0 */23 * * * /tmp/.X26-unix/.rsync/c/aptitude >/dev/null 2>&1
路径:/tmp/.X26-unix/.rsync/c
文件:aptitude
文件:run
这里面调用的shell的是golan
golan内容如下:
并且在/tmp目录下发现了
位于/tmp/.X26-unix/木马压缩包
位于/tmp/.X19-unix/.rsync/initall下的木马安装脚本
含义:
使用bash执行init和init2 文件,通过调用init和init2生成目录并拷贝木马文件到指定目录
文件:init
路径:/tmp/.X19-unix/.rsync/init
文件:init2
路径:/tmp/.X19-unix/.rsync/init2
删除进程
删除所有定时任务
crontab -l -u ftpuser crontab -e -u ftpuser
删除.SSH下的文件
删除用户ftpuser下的木马目录
删除用户root下的木马文件
至此就完成了挖矿木马全部清除,但是正常服务器需要排查日志,查看入侵完整路径并及时修补才能结束。
(注:木马文件名与检查的时候有些不同,思路一致)
随着虚拟货币的疯狂炒作,挖矿病毒已经成为不法分子利用最为频繁的攻击方式之一。病毒传播者可以利用个人电脑或 服务器进行挖矿,具体现象为电脑CPU占用率高,可使用空间骤降,电脑温度升高,风扇噪声增大等问题。
详细报文特征可查看:https://www.freebuf.com/articles/network/195171.html
作者 | 一线卑微安服仔