前言
最近发现在使用gitlab提交代码的时候总是失败,一访问gitlab还时常报503,于是使用 'top' 命令查看了内存占用情况,发现了一个git进程内存使用了2.3g,cpu还一直占用300-400%,
以前不知道gitlab还有病毒,只以为是git存储了往期版本产生的内存占用大,但是看见占用的进程 kill 掉之后还会立刻就出现,大概明白是病毒了,gitlab-ce 12.3.5版本的时候,只要一出现这个病毒,必将提交失败,将gitlab-ce 12.3.5 升级到了 12.10.14之后,病毒出现后依旧可以提交,只是gitlab会非常卡。
说明
服务器:腾讯云
Linux:CentOS Linux release 7.9.2009 (Core)
gitlab-ce:12.3.5,12.10.14
简介
本文主要内容为怎么排查gitlab-ce漏洞引起的挖矿病毒以及如何彻底杀死,为读者提供一个在不能及时升级gitlab-ce版本的情况下的应急解决方案。最终解决还是要升级gitlab版本
网上看了很多篇文章,发现讲的解决方案都不清晰,因此提供一篇,希望能帮助到同行朋友
一、发现问题
top
使用 “ top ”命令可以查看Linux系统中占用内存排名前10的进程,以倒叙展示。
图中排名第一的就是挖矿病毒,独有内存占用2.3g,CPU占用380+%
二、排查问题
lsof -p 病毒进程的PID
注意:这里查的 PID 之所以是 29261,是因为将图一的PID=16615的git进程 kill 掉之后重新出现的挖矿病毒进程PID
国外的IP地址
三、解决问题
从上图可以看见病毒所在文件的路径为以下路径
/var/tmp/.bin/x
注意:“ .bin ” 是个隐藏文件,命令 “ ls ” 或 “ ll ” 是看不见的,需要加上参数 “ -a ”
找到病毒文件后,使用 rm 命令删除,而后再将病毒进程kill掉
rm x #删除x文件
kill 29261 #终止PID为29261的进程
至此完成
我将病毒 “x” 下载下来发给朋友看看是什么病毒,朋友给我来一张图
Threats found. Start the recommended actions(发现威胁。启动建议的操作)