作为一个小长搬砖工,碰见linux运维的事情真的是有心无力(尤其linux知识有限的情况)。记录下最近因为cup达到300%的处理流程,仅作记录以便日后排查。以下是两次处理病毒的过程,如果碰见相关问题的朋友,最好都看完再进行操作。
某天零晨阿里服务器发来报告说存在恶意程序,疑似挖矿程序。
隔天(凌晨12点,又是一个测试机子,真心没精力跟他熬夜),打开服务器,输入命令查看cup进程
top
发现确实存在异常程序。300%的cup占用(看到这个时候我是懵的300%???,后来想了下可能我们采购的是阿里的突发型机子),接下来就是百度如何处理流程如下
- 对服务器磁盘进行快照
- 根据进程pid找到对应的进程目录,比如pid是3333
cd /proc/3333
- 查看目录中文件详情
ls -l
-
这时候出现 ->/tmp/xxxx 标识程序实际路径为/tmp路径,需要进入目录单独杀除,操作如下,xxxx代表程序名称
cd /tmp
rm -rf xxxx
-
检查所有程序都已经处理后可以直接删除进程
-
kill -s 9 3333
一切结束后重启系统发现cup确有所下降,收工。
本以为一切都已经结束,结果过了一个星期后又出现类似问题。这次我就比较谨慎,对服务器进行整体的调整。
- 把以前对外的端口全部针对特定IP进行开放,避免因为这个造成的问题。
- 对服务器进行快照处理
- 查看所有进程情况
top
- 发现异常进程是一个特殊用户akay,并非root,排查该用户的所有文件
find / -user "akay" |xargs rm -rf
- 其中发现一个定时器无法删除,在/var/spool/cron/akay
- 打开文件内容发现里面是定时去访问一个地址执行一些程序
- 尝试删除该文件
rm -rf /var/spool/cron/akay
- 删除失败,说权限不足,然后尝试给足权限
chmod 777 akay
- 还是权限不足,这下没找到别的对应办法了,只能编辑文件了
crontab -e akay -u
- 删除掉里面的内容,然后按Esc:wq 退出
- 删除杀掉异常进程,进程pid例如3333,命令如下
kill -s 9 3333
重启系统这下应该算是告一段落了,病毒期待下次相见