症状表现

服务器CPU资源使用一直处于100%的状态,通过 ​​top​​​ 命令查看,发现可疑进程 ​​kdevtmpfsi​​。通过 google搜索,发现这是挖矿病毒。

挖矿病毒 kdevtmpfsi 处理_后端

排查方法

​首先​​​:查看 ​​kdevtmpfsi​​​ 进程,使用 ​​ps -ef | grep kdevtmpfsi​​​ ​​ps -ef | grep kinsing​​命令查看,见下图。

挖矿病毒 kdevtmpfsi 处理_后端_02

PS:通过 ​​ps -ef​​​ 命令查出 ​​kdevtmpfsi​​​ 进程号,直接 kill -9 进程号并删除 /tmp/kdevtmpfsi 执行文件。但没有过1分钟进程又运行了,这时就能想到,​​kdevtmpfsi​​​ 有守护程序或者有计划任务。通过 ​​crontab -l​​ 查看是否有可疑的计划任务。

​第二步​​​:根据上面结果知道 ​​kdevtmpfsi​​​ 进程号是 ​​10393​​​,使用 ​​systemctl status 10393​​​ 发现 ​​kdevtmpfsi​​ 有守护进程,见下图。

挖矿病毒 kdevtmpfsi 处理_守护进程_03​​​第三步​​​:kill 掉 kdevtmpfsi 守护进程 ​​kill -9 30903 30904​​​,再 ​​killall -9 kdevtmpfsi​​​ 挖矿病毒,最后删除 kdevtmpfsi 执行程序 ​​rm -f /tmp/kdevtmpfsi​​。

事后检查

  • 通过 命令搜索是否还有 kdevtmpfsi 文件
  • find / -name "​kdevtmpfsi​"
  • find / -name "​kinsing​"
  • 查看 Linux ssh 登陆审计日志。​​Centos​​​ 与 ​​RedHat​​​ 审计日志路径为 ​​/var/log/secure​​​,​​Ubuntu​​​ 与 ​​Debian​​​ 审计日志路径为 ​​/var/log/auth.log​​。
  • 检查 crontab 计划任务是否有可疑任务
  • find / -name kdevtmpfsi
  • find / -name kinsing
  • cd /var/spool/cron  
  • 查看是否有相关的木马定时任务在执行  
  • 有的话删掉再重启下crontab
  • 关闭定时任务
  • service crond stop

挖矿病毒 kdevtmpfsi 处理_守护进程_04

后续工作溯源,找到程序漏洞,封禁访问ip,不正常ip。源程序下载。

使用clamav对整个Linux做全盘扫描,确定被感染文件并删除。

挖矿病毒 kdevtmpfsi 处理_Linux_05

 查找守护进程文件变种名字。

挖矿病毒 kdevtmpfsi 处理_守护进程_06

全部删除 

  • find / -name "​kdevtmpfsi​" | xargs rm -rf
  • find / -name "​kinsing​" | xargs rm -rf

至此杀毒工作基本进入尾声。后面几天观察服务器服务,进程是否异常。

后期防护

  • 启用​​ssh公钥登陆​​,禁用密码登陆。
  • ​云主机​​​:完善安全策略,入口流量,一般只开放 80 443 端口就行,出口流量默认可以不限制,如果有需要根据需求来限制。​​物理机​​​:可以通过​​硬件防火墙​​​或者​​机器上iptables​​ 来开放出入口流量规则。
  • 本机不是直接需要对外提供服务,可以拒绝外网卡入口所有流量,通过 ​​jumper​​ 机器内网登陆业务机器。
  • 公司有能力可以搭建安全扫描服务,定期检查机器上漏洞并修复。

​小结​​:以上例举几点措施,不全。这里只是抛砖引玉的效果,更多的措施需要结合自己业务实际情况,否则就空中楼阁。之后查看系统的网络连接

netstat -anpt1发现仍旧还有可以连接

接下来查看可以连接的文件位置

ps aux | grep 67121发现文件在/tmp/kinsing 在tmp中查看并无此文件,可能只是进程没有关闭而已

使用命令关闭异常进程

kill -9 67121再次查看网络连接,已无问题

补充一个小知识点

挖矿病毒 kdevtmpfsi 处理_Linux_07

ps -ef | grep kdevtmpfsi进程号一直改变的原因ps -ef | grep xx 显示的进程就是你查寻进程的进程,每次查都会变哈哈哈,我弱爆了

我的博客即将同步至腾讯云+社区,邀请大家一同入驻:​​cloud.tencent.com/developer/s…​