Linux 服务器上有挖矿病毒处理
分析
今天遇到病毒挖矿,有点小兴奋
来波分析:
看上面的症状是:攻击者通过docker入侵的【后面了解,可能是redis账号密码简单的原因被爆破的】
最奇诡的事,攻击者可能通过提权,获取到root的权限。然后一些列的挖矿病毒
大致流程图
症状表现
服务器CPU资源使用一直处于100%的状态,通过 top
命令查看,发现可疑进程
解决
排查方法
首先
:查看 bbb进程,使用 ps -ef | grep bbb
PS: 通过 ps -ef 命令查出 bbb进程号,直接 kill -9 进程号并删除 /tmp/kdevtmpfsi 执行文件。但没有过1分钟进程又运行了,这时就能想到,bbbb有守护程序或者有计划任务。通过 crontab -l 查看是否有可疑的计划任务。
定时任务
看来有猫腻,准备删除这些定时任务【但是无法删除】
注意:无法删除,原因被chatter 上锁了
那我就开锁就行
重点
当你解开锁时时,但是你去删除这个文件,全是无法删除。再看看权限,又被锁住了。【攻击者你很骚气啊】
咦,我发现了邮件服务,每当我运行权限脚本时,都会发送一个邮件到/var/spool/mail/root
You have new mail in /var/spool/mail/root提示
看到这个,我有点起疑心了。
怀疑:为啥我们平常的服务器上没有出现这个,但现在为啥会出现邮件。【突破点】
我想想了,可能是通过mail的提示来检测我的服务器操作,从而重新执行脚本。
OK。那我就干掉你,看你怎么检测
第一步:关闭提示
echo "unset MAILCHECK">> /etc/profile
source /etc/profile
第二步:查看
ls -lth /var/spool/mail/
第三步:清空
cat /dev/null > /var/spool/mail/root
定时任务清空【完成】
让你们了解一下chatter锁。想深入可以百度了解看一下
lsattr可用来查看文件的属性:
lsattr filename
如果文件属性中有i与a,或者有其中的一个
可以使用chattr去掉这属性:
chattr -ia filename
这次来试试,OK了,文件清空。
bbb程序删掉
top查看
分析运行路径
第三步
:kill 掉 bbb守护进程 kill -9 25800
,最后删除 bbb执行程序 rm -f /var/tmp/bbb
。
但是这个脚本也被chatter了,需要解锁才能删除。
解锁,删掉。
curl程序删掉
上面的病毒搞完了,但是还有curl后台程序运行。
开机自启,是什么位置
删掉这些程序,重启一下
服务器稳定运行,没有病毒程序。
SSH秘钥删除
攻击者可能在/root/.ssh/里面留他们的秘钥,所以我们要清理掉。重新生成秘钥。
后期防护
- 启用ssh公钥登陆,禁用密码登陆。
- 云主机:完善安全策略,入口流量,一般只开放 80 443 端口就行,出口流量默认可以不限制,如果有需要根据需求来限制。物理机:可以通过硬件防火墙或者机器上iptables 来开放出入口流量规则。
- 本机不是直接需要对外提供服务,可以拒绝外网卡入口所有流量,通过 jumper 机器内网登陆业务机器。
- 公司有能力可以搭建安全扫描服务,定期检查机器上漏洞并修复。