记录一次服务器中挖矿病毒
今天打开宝塔面板突然注意到cpu占用100%,顿时感觉不正常,赶紧top
看了下后台进程。
果然有个叫xmrig
的进程占用cpu100%。网上一查,果然,这是个门罗币挖矿工具,想不到我这小破服务器也会中招。好在这机器上没什么重要文件,就当是借此机会学习下病毒程序是如何攻破服务器的,升级下服务器的安全防护措施吧。
排查过程
溯源病毒程序
首先赶紧把病毒程序停了
1 | killall xmrig |
可惜进程杀掉后立刻就重启了,看来只能先找到源文件了。
1 | find / -name '*xmrig*' |
这病毒文件藏得不深,很快就找到了。看了下目录结构,是挖矿脚本没错了。赶紧把二进制文件删掉,再杀进程,算是临时解决了。
排查系统日志
但这个程序是怎么启动起来的呢?还有没有别的后台程序呢?那就从系统日志入手,看看病毒启动时有没有留下什么端倪。
1 | less /var/log/syslog |
发现从14号开始,就有个cron定时任务会启动这个挖矿脚本,应该就是差不多这时候中招的吧。
先不去检查cron配置,我们再看下系统登录日志,是否是ssh被攻破了呢。
1 | less /var/log/auth.log |
果然出现了异常登录记录,而且还顺带发现了一个异常systemd服务。赶紧把它disable并删除了。
检查crontab配置
回到crontab的问题上,需要注意的是crontab的配置文件在3个地方都有,一定要仔细排查,我一开始就漏了。用crontab -l
只会显示下面第一个位置的配置!
cat /var/spool/cron/crontabs/*
cat /etc/cron.d/*
cat /etc/crontab
最终在/etc/crontab
中发现了异常注入。
总结
虽然找出了挖矿脚本的启动流程,但整个线索到注入crontab就断了,翻遍了日志也没找到ssh被攻破的证据。攻击者是用何种手段篡改的crontab也不得而知了。
记录一次服务器中挖矿病毒