2021.7.2日(周五)邻近下班,突然旁边的同事急促的告知我后台上不去了,然后就上服务器上去看,一看发现内存占用变成90%左右,当时一惊,那就加个班吧~
使用top命令查看后,发现有个进程占了很大资源,这个进程就是kdevtmpfs,Google 一下才知道,好家伙,服务器被当成矿机了
查看进程
top
这个进程以及相关进程,都是运行在 www 用户下,并且会加上一个定时任务
直接 kill 并不能将其结束掉,它还有守护进程及可能存在的定时任务。
1. 查看定时任务
定时任务
crontab -l
如果只是单单的查看定时任务会发现什么异常的没有,因为公司涉及到其他业务,有些定时任务也在一直运行,所以说我查看定时任务后并没有发现什么异常,在回顾到最开始我top的时候,病毒应该是在www用户下,我一顿操作猛如虎,后来才发现看走眼了啊。
存在定时任务的不一定是当前用户,可以使用以下命令查找其他用户是否存在任务:
所有用户下的定时任务
for user in $(cut -f1 -d: /etc/passwd); do crontab -u $user -l; done
这下就出来了,病毒太狡猾了 顺着www用户去寻找
查看指定用户下的定时任务
查看指定用户下的定时任务
crontab -l -u 用户名
清除指定用户下的定时任务
干掉指定用户名下的定时任务
crontab -r -u 用户名
2. 干掉进程
干掉进程
ps -aux | grep kinsing
ps -aux | grep kdevtmpfsi
kill -9 pid
3. 删除掉kdevtmpfsi的相关文件
cd /tmp
ls
rm -rf kdevtmpfsi
rm -rf /var/tmp/kinsing
4. 再检查一下是否还有kdevtmpfsi的相关文件
find / -name kdevtmpfsi
find / -name kinsing
5. 阻止病毒 IP 访问
iptables -A OUTPUT -d 病毒ip -j DROP
6. 预防方法
删除不相关的用户
无论是服务器登录密码,还是数据库等应用服务的验证密码,都最好弄复杂一些,并且注意好权限管理,以防被爆破出来。
必须给redis加密码,越复杂越好,同时注意配置文件中,一些本地存储文件化的选项。这里已经有很多人掉进坑里了,redis真的是一个很容易受攻击的点。
网上千篇一律的全是这种处理方式,但很多方式并不适合我,我尝试了很多次,无论我怎么删除,病毒还是存在。
至此,应该把这个木马病毒清干净了,通俗来说就是别人利用漏洞在你服务器上开了个后门,让你的服务器变成了他的肉鸡。至于是否真的真的删干净了呢,我也不确定,万一它又隐藏了什么触发脚本之类的东西呢?