近日,阿里云安全发现了一个使用未授权访问漏洞部署恶意Docker镜像进行挖矿的僵尸网络团伙。我们给这一团伙取名为Xulu,因为该团伙使用这个字符串作为挖矿时的用户名。

Xulu并不是第一个攻击Docker的恶意挖矿团伙,但它不同于其他僵尸网络。Xulu感染一台服务器后,并不对外进行大规模扫描,而是使用OSINT技术,即利用开源情报,动态地从shodan网站获得可能的“猎物”ip列表。

此外,Xulu僵尸网络将自己的服务器放在Tor洋葱网络中,这使得对幕后黑手的追溯变得更加困难。

会挖矿的恶意Docker镜像

Docker容器是一个开源的应用容器引擎,可以让开发者打包他们的应用及依赖包到一个轻量级、可移植的容器中,从而在不同环境中可靠运行。

近年来随着微服务的流行,越来越多的企业在部署应用时使用容器,然而在这一过程中安全往往没有得到应有的重视,导致Docker容器在多起事件中成为网络攻击的靶子。

在本次Xulu僵尸网络事件中,我们注意到沦陷服务器上都被创建了镜像名为zoolu2/auto的恶意容器。

这些恶意容器中运行着如下进程

其中的挖矿进程很容易分辨:

/toolbin/darwin -o us-east.cryptonight-hub.miningpoolhub.com:20580 -u xulu.autodeploy -p x --currency monero -i 0 -c conf.txt -r

尽管miningpoolhub.com是公开矿池,但由于它不提供每个用户的历史收益数据,我们无从得知攻击者从恶意挖矿中总共赚了多少钱。

僵尸网络的传播和持久化

Xulu僵尸网络进行自身的传播和持久化的过程中,使用了OSINT技术并借助了洋葱网络。

首先,该僵尸网络的控制服务器地址是http://wg6kw72fqds5n2q2x6qjejenrskg6i3dywe7xrcselhbeiikoxfrmnqd.onion。".onion"后缀表明这是一个必须通过洋葱匿名网络访问的“洋葱服务”(又名“隐藏服务”)。

该僵尸网络以/toolbin/shodaemon作为守护进程:

不难看出该脚本下载了http://wg6kw72fqds5n2q2x6qjejenrskg6i3dywe7xrcselhbeiikoxfrmnqd.onion/shodan.txt,与本地硬编码的/toolbin/hcode.txt文件内容一起存入search.txt

运行/toolbin/shodan,读取search.txt的列表并对shodan发送如上图所示的查询。

这些查询会返回互联网上一系列开放了Docker服务(2375端口)的主机ip。尽管这些主机并非每个都存在漏洞,但攻击者仍然通过使用shodan的信息,避免了大规模扫描的进行。

在获取了使用Docker服务的主机列表并去除重复ip后,已沦陷的主机会向表中ip发送docker run命令,其中未授权访问漏洞的Docker服务将被部署"zoolu2/auto"恶意镜像,从而完成蠕虫的传播。

此外,Xulu僵尸网络还会每30分钟下载并执行从http://wg6kw72fqds5n2q2x6qjejenrskg6i3dywe7xrcselhbeiikoxfrmnqd.onion/bnet1.txt下载的脚本,从而保持自身在受害主机上的活跃。

受害规模和安全建议

在docker hub官网我们可以看到,前文提到的"zoolu2/auto"已被下载超过1万次:

并且僵尸网络作者似乎仍在积极开发变种:

  • 为了避免您成为此种恶意入侵和挖矿事件的受害者,阿里云安全为您提供如下安全建议:
  • 不要将对内使用的服务(如Docker)开放在互联网上,应使用ACL或复杂密码等措施来保证仅有受到信任的用户才可以访问这些服务。
  • 因为基于洋葱网络的“隐藏服务”已被用于多个僵尸网络的传播,不常使用洋葱网络服务的用户可以使用如下命令对其进行屏蔽:echo -e "n0.0.0.0 .onion" >> /etc/hosts
  • 我们推荐您使用阿里云下一代防火墙,因为它在阻止、拦截此类需要外联的攻击时十分有效。用户将在AI技术的帮助下,免于恶意挖矿事件的困扰
  • 我们同样推荐阿里云安全管家服务。该服务的用户可以就碰到的问题随时咨询安全专家。安全专家还可以帮助用户进行安全加固、事件溯源、蠕虫清理等

IOC

control server:

http://wg6kw72fqds5n2q2x6qjejenrskg6i3dywe7xrcselhbeiikoxfrmnqd.onion

url:

http://wg6kw72fqds5n2q2x6qjejenrskg6i3dywe7xrcselhbeiikoxfrmnqd.onion/bnet1.txt
http://wg6kw72fqds5n2q2x6qjejenrskg6i3dywe7xrcselhbeiikoxfrmnqd.onion/shodan.txt

pool:
us-east.cryptonight-hub.miningpoolhub.com:20580

md5:

c29dfe75862b6aed91bec4ffc7b20b9c

Reference

  1. https://www.alibabacloud.com/blog/dockerkiller-threat-analysis-first-instance-of-batch-attack-and-exploitation-of-docker-services_593947
  2. https://www.docker.com/resources/what-container

本文作者:云攻略小攻

原文链接

本文为云栖社区原创内容,未经允许不得转载。

威胁快报|新兴挖矿团伙借助shodan作恶,非web应用安全再鸣警钟的更多相关文章

  1. 威胁快报|Bulehero挖矿蠕虫升级,PhpStudy后门漏洞加入武器库

    概述 近日,阿里云安全团队监控到Bulehero挖矿蠕虫进行了版本升级,蠕虫升级后开始利用最新出现的PHPStudy后门漏洞作为新的攻击方式对Windows主机进行攻击,攻击成功后会下载门罗币挖矿程序 ...

  2. 威胁快报|ProtonMiner挖矿蠕虫扩大攻击面,加速传播

    背景 近日,阿里云安全监测到一种挖矿蠕虫,正在互联网上加速传播.阿里云安全根据它使用ProtonMail邮箱地址作为矿池用户名的行为,将其命名为ProtonMiner.据分析,这种蠕虫与TrendMi ...

  3. 《2018年云上挖矿态势分析报告》发布,非Web类应用安全风险需重点关注

    近日,阿里云安全团队发布了<2018年云上挖矿分析报告>.该报告以阿里云2018年的攻防数据为基础,对恶意挖矿态势进行了分析,并为个人和企业提出了合理的安全防护建议. 报告指出,尽管加密货 ...

  4. 威胁快报|Solr dataimport成挖矿团伙新型利用方式

    概述 近日,阿里云安全团队监测到挖矿团伙利用solr dataimport RCE(CVE-2019-0193)作为新的攻击方式对云上主机进行攻击,攻击成功后下载门罗币挖矿程序进行牟利.该团伙使用的恶 ...

  5. 威胁快报|挖矿团伙8220进化,rootkit挖矿趋势兴起

    近日,阿里云安全团队发现8220挖矿团伙为了更持久的驻留主机以获得最大收益,开始使用rootkit技术来进行自我隐藏.这类隐藏技术的使用在watchdogs等挖矿蠕虫使用后开始出现逐渐扩散和进化的趋势 ...

  6. 威胁快报|首爆新型ibus蠕虫,利用热门漏洞疯狂挖矿牟利

    一.背景 近日阿里云安全团队发现了一起利用多个流行漏洞传播的蠕虫事件.黑客首先利用ThinkPHP远程命令执行等多个热门漏洞控制大量主机,并将其中一台“肉鸡”作为蠕虫脚本的下载源.其余受控主机下载并运 ...

  7. 威胁快报|Nexus Repository Manager 3新漏洞已被用于挖矿木马传播,建议用户尽快修复

    背景 近日,阿里云安全监测到watchbog挖矿木马使用新曝光的Nexus Repository Manager 3远程代码执行漏洞(CVE-2019-7238)进行攻击并挖矿的事件. 值得注意的是, ...

  8. 威胁快报|首爆,新披露Jenkins RCE漏洞成ImposterMiner挖矿木马新“跳板”

    简介 阿里云安全于近日捕获到一起使用Jenkins RCE漏洞进行攻击的挖矿事件.除挖矿外,攻击者还曾植入具有C&C功能的tsunami木马,也预留了反弹shell的功能,给用户带来极大安全隐 ...

  9. Java&Selenium借助AutoIt 实现非Input类型自动化上传文件

    通常情况下实现自动化上传文件,都是通过sendKeys函数直接将文件全路径传给页面空间就能完成,然而这种情况只能对Input类型的控件有效,对于非Input类型的控件可以借助AutoIt来完成 下载地 ...

随机推荐

  1. Windows下Git的下载、安装、设置用户名和邮箱、创建版本库等

    Git官网:https://git-scm.com/ 一.Git下载 官网首页下载,当前最新版本:2.24.1 本人下载的是Git for Windows版本:Git-2.24.1.2-64-bit. ...

  2. WPF 实现简单的跑马灯

    本文用WPF的动画实现一个简单的跑马灯 xmal: <Window x:Class="wpfstatusBar.MainWindow" xmlns="http:// ...

  3. Linux下读写UART串口的代码

    Linux下读写UART串口的代码,从IBM Developer network上拿来的东西,操作比較的复杂,就直接跳过了,好在代码能用,记录一下- 两个实用的函数- //////////////// ...

  4. day37 06-Hibernate二级缓存:更新时间戳区

    二级缓存区:类缓存区,集合缓存区,更新时间戳区. 它会记录一个时间T1.其实在我们查询之后它会记录一个时间.假设时间叫做T1.就是你查询完之后的当前时间是T1.当我们自己手动在下面做了一个更新之后,它 ...

  5. LINUX访问文件配置

    访问文件 /etc/host.conf 告诉网络域名服务器如何查找主机名.(通常是 /etc/hosts,然后就是名称服务器:可通过 netconf 对其进行更改) /etc/hosts 包含(本地网 ...

  6. git 报错:没有权限 remote: error: unable to unlink old 'README.md' (Permission denied)

    解决:

  7. DFA算法实现敏感词过滤

    DFA算法:即确定有穷自动机,简单点说就是,它是是通过event和当前的state得到下一个state,即event+state=nextstate.理解为系统中有多个节点,通过传递进入的event, ...

  8. laravel后台扩展包

    https://github.com/the-control-group/voyager

  9. yii生成Model出错:yii-gii-generators-model-Generator.json No such file or dictory

    讲runtime 这个文件夹添加权限 chmod o+w runtime

  10. JS设计模式之单例模式(一)

    单例就是保证一个类只有一个实例,实现的方法一般是先判断实例存在与否,如果存在直接返回,如果不存在就创建了再返回,这 就确保了一个类只有一个实例对象. 在JavaScript里,实现单例的方式有很多种, ...