服务器被攻击植入挖矿病毒,CPU占用高问题排查处理(.systemd-service.sh)

客户服务器遭攻击,部署的应用服务经常性被停止,服务器CPU占用居高不下,top查看如下:

 服务器被攻击植入挖矿病毒,CPU占用高问题排查处理(.systemd-service.sh)_第1张图片

可以看到第一个bash任务,占用cpu近400%,非正常的应用程序和脚本任务,多半是被植入了木马信息。

查看该进程的符号连接,发现已经是被删除的状态 /usr/bin/-bash (deleted),无法查看其启动程序的信息

服务器被攻击植入挖矿病毒,CPU占用高问题排查处理(.systemd-service.sh)_第2张图片

查看定时任务:cat   /etc/crontab,发现都是正常的应用程序定时脚本

服务器被攻击植入挖矿病毒,CPU占用高问题排查处理(.systemd-service.sh)_第3张图片

又用 crontab  -l 查看了一下,发现了异常定时任务如下,同top里的异常任务一致,遂将该定时任务注释,并kill调那个异常进程继续观察

服务器被攻击植入挖矿病毒,CPU占用高问题排查处理(.systemd-service.sh)_第4张图片

一段时间后,top查看异常任务又复现了,再次查看crontab任务并未发现异常,继续查看/etc/cron.daily  cron.d下的文件时,均发现未知的sync文件,内容如下

服务器被攻击植入挖矿病毒,CPU占用高问题排查处理(.systemd-service.sh)_第5张图片服务器被攻击植入挖矿病毒,CPU占用高问题排查处理(.systemd-service.sh)_第6张图片

可以看到sync里一直在复制/bin/sysdrr文件,并执行./-bash 然后将启动脚本删除的操作,源头大概就是/bin/sysdrr文件,将sysdrr重命名(或删除)

当时该文件的权限是不可修改和删除的 chattr -i /bin/sysdrr 修改文件权限后,可正常删除,然后用相同的方式删除所有的sync文件,并重新kill掉异常的进程

继续观察后,-bash的异常进程是没了,但又出现了另一个异常的进程,异常如下:

服务器被攻击植入挖矿病毒,CPU占用高问题排查处理(.systemd-service.sh)_第7张图片

查看该进程的符号连接,同样的已删除状态,源头也无法查看,再次排查定时任务均未发现异常信息。这时看到该进程的所属用户为postgres,

切换到该用户下查看有定时任务如下,立即将该定时任务注释,将/home/postgres/.system-service.sh 文件删除,然后kill掉异常进程

继续观察,异常进程又起来了,定时任务里有了一条新的任务,/home/postgres/.system-service.sh 又重新出现(囧,真是杀不死的小强啊),

继续排查无果,实在找不到源头了,就百度了一下定时任务里的  .systemd-service.sh

发现有人已遇到过类似的问题,参考链接:https://cloud.tencent.com/developer/article/1731875

根据里面的步骤排查并未在/root 和 /opt 下发现相同的.systemd-service.sh文件,全局搜索了一下也没发现其他路径有类似文件,

查看 .systemd-service.sh文件内容倒是与博客里描述的一致,找不到源头就想办法规避了,首先删除了/home/postgres/.system-service.sh里的内容,

然后将该文件权限修改为不可编辑 chattr  +i  /home/postgres/.system-service.sh,然后禁用了postgres用户的定时任务功能,在/etc/cron.deny 里加上postgres即可。

重新kill掉异常进程后观察了一段时间并未复现,至此现场的问题处理结束,剩下的就是让现场去加固网络防护了,这个问题多半是远程攻击通过执行命令不断写入定时任务和病毒文件导致的,

详细的攻击方式如果有大神了解欢迎告知.

        

 

 

 

 

 

你可能感兴趣的:(Linux,linux,服务器)