记录一次阿里云服务器受到的攻击

133 阅读4分钟

🙂起因:

好吧...这个服务器我才申请不到一天,就在凌晨收到了阿里云发来的QQ邮件:安全事件提醒、恶意入侵行为等。

❓排查:

首先是来到阿里云服务器的监控页面,一下子弹出了几条安全信息。

image.png

便随意点了几条看看:挖矿程序?恶意脚本代码执行???

不会吧?我不信。

然后到finalshell中操作了一番,发现连打条指令都好艰难了,一卡一卡的(好吧虽然这跟服务器应该关系不大,但让我意识到了问题的严重性)

然后回到阿里云服务器监控页面,观察CPU使用率动态图以及ECS同时连接数动态图,发现cpu使用率竟然飙升,ECS同时连接数也到了惊人的几十K

想借助阿里云的力量给我自动修复掉,可我发现,能修复能拦截的早已自动修复和拦截,余下的是阿里云也没办法的。。。

那只能自己解决了?!

🤯解决:

看了一下警告详情:(发现还可以把这个脚本下载下来,我就先下载到主机上了😄)

image.png

找到脚本路径以后便通过finalshell找到了这个脚本,vim打开看了看,真是复杂!!!

当然想立马rm -rf 掉,竟然说我没权限(仍然不知道为什么,明明我是root用户)

于是百度

390U85{6[%Z)G_]QM7R}F1T.png

东搞西搞就删掉了

重启服务器,不久,cpu使用率又爆满......

然后就开始各种问百度,看到了crontab这个东西

奥!脚本肯定是定时不断执行的!

立马crontab -l:果然有一条定时任务(这是我获得服务器的第一天,我保证没有自定义过定时任务)

lol.png

立马crontab -r:没有权限!

???我root用户怎么什么权限都没了???

vim /etc/crontab:好家伙,里面还有一条定时任务

7F_T4QZICJJRBRA4BWXZGF6.png

只读文件,内容也删不掉。

rm -rf依然没权限,但用同样的方法删除成功:

390U85{6[%Z)G_]QM7R}F1T.png

至此便把定时任务和定时任务中的脚本删除了

看另一条警告详情:

image.png

便直奔bash所在目录/usr/bin,我想看看创建时间

ls -hl | grep bash

好家伙一下子出来了几个,而bash的时间是很早之前了(依稀记得bash是linux系统有用的)

但有一个sh可执行文件的修改(创建)时间与安全警报时间相符,并且sh软链接(or硬链接)了bash。考虑到当前目录是/usr/bin,便想到会不会把sh当指令使用,来运行脚本。

删掉了sh可执行文件,查看另一条警告详情,果然与上面猜想符合:

image.png

至此,便删掉了脚本文件、crontab定时任务以及执行脚本的指令。

再次重启服务器,等待一段时间后,一切正常。

😤问题

  1. 是如何把脚本注入到我服务器上来的?服务器密码不简单呀。

    反思了一下,防火墙没开启,各端口门户大开。立马开了防火墙,并只开放相应端口

    并根据警报中的发生时间,从先到后,理了一遍入侵逻辑:

image.png 涉及了curl拉取资源以及crond定时任务,主机上访问资源路径没有反应(上方图片)

image.png 涉及了wget拉取资源以及crond定时任务,主机上访问资源路径给我自动下载了个init.sh,里面内容就是服务器上的脚本的内容

image.png 不知道是个啥,但看./zzh,zzh可能是个服务

image.png 脚本内容中确实有rm指令

image.png 看这个进程链,24407又想执行脚本,要不是我删了脚本,不知道阿里云能否拦下来

image.png 又想运行脚本

不知道我的服务器是怎么被人入侵的。查了sshd日志,只有我自己的登录记录,干干净净,不知道侵入日志是否被擦除。当然也并非只有通过22端口的sshd服务才能入侵,其他端口同样可以入侵给我注入脚本。因为我没开防火墙,各端口门户大开。

  1. 接下来想研究下DNS劫持😎