2018年,区块链项目在这一年上演着冰与火之歌,年初火爆的比特币在一年时间内跌去八成。除了巨大的市场波动之外,区块链领域本身的安全问题也逐渐凸显,与之相关的社会化问题不断显现。
“勒索”、“盗窃”、“非法挖矿”是区块链项目数字加密货币的三大安全威胁,其中云主机用户面临的首要安全问题是非法挖矿。
非法挖矿一般分为基于文件的挖矿和基于浏览器的挖矿。由于云主机用户一般不使用浏览器访问网页,故基于浏览器的挖矿在公有云上并非较大的威胁。
反之,云上基于木马文件的入侵挖矿事件层出不穷,黑客通过用户云主机上的通用安全问题入侵并进行挖矿来直接获取利益,使得用户 CPU 等资源被耗尽,正常业务受到影响。这些被黑客利用的通用问题往往是由于用户缺乏安全意识而导致的。
腾讯安全云鼎实验室通过对云上挖矿木马的网络、文件、进程关联分析,在日常的安全对抗中,发现了大量黑客尝试入侵挖矿的行为。对此类行为的特征进行统计分析,将样本、恶意行为加入相关安全产品的规则库和算法模型,并进行有效地遏制和打击。本文对云上入侵挖矿行为共性进行了统计分析,帮助用户对挖矿行为进行防御,从而更好地保障腾讯云用户安全。
一、币种分析(挖矿目标分析)
对于云上挖矿,首要的话题是黑客入侵挖矿的目标,即挖矿币种。经过分析,云上黑客入侵挖矿的行为均采用矿池挖矿的形式,其主要特征是对矿池地址进行有规律地访问。云鼎实验室通过对矿池地址进行统计和归类,发现云上入侵挖矿币种主要是门罗币(XMR)、氪石币(XCN)和以利币(ETN)。
究其原因,早期的币种如比特币、莱特币等,其算法设计中挖矿行为的本质是进行重复的计算工作,而 CPU 不擅长并行运算,每次最多执行十几个任务,挖矿效率极低,黑客难以利用。相对而言, 显卡GPU 是数以千计的流处理器,一些顶级显卡挖矿效率是 CPU 的上百倍,所以传统的挖矿方式一般采用显卡 GPU 挖矿。而门罗币和以利币等第二代虚拟货币采用了 CryptoNight 算法,此种算法特别针对 CPU 架构进行优化,运算过程中需要大量的暂存器,不再依赖于GPU挖矿,且也没有对应的ASIC,于是黑客在入侵云主机之后更多会选择消耗机器 CPU 资源挖矿来直接获得利益,所以门罗币等币种可在以CPU 为主的云平台上流行。
在过去的一年中,即使门罗币价格一路下行,也挡不住黑客的热情,进一步对挖矿行为趋势的统计发现,公有云上门罗币挖矿的行为数量不仅没有下降,反而还在下半年持续攀升。
门罗币是匿名货币,其地址、交易金额、交易时间、发送方和接收方等信息完全隐匿,难以查询与追踪。因为黑客植入挖矿程序是违法行为,使用门罗币,就算发现主机被植入挖矿木马,也无法通过挖矿的地址、交易等信息查询到黑客的行踪。
云鼎实验室通过对数字货币的价格走势和挖矿热度进行关联,尝试对币种价格与挖矿热度进行分析,发现挖矿的热度与币种价格成正比关系(部分高价值币,比如门罗币,由于其本身持续存在的价值,不受此规律影响)。
对以利币的价格走势观察发现,其从1月中旬开始就呈下降趋势:
对以利币对应矿池的访问数据观察发现,其访问量也呈下降趋势,下半年已经基本无人问津,如下图:
所以整体观察可以发现,黑客入侵挖矿选择的币种与币种价值有关,对小币种的选择在一定程度上取决于其价格,挖矿热度与币种价格成正比;高价值的币种由于其持续存在的价值,不受此规律影响。
由于云主机的计算资源以CPU为主,黑客通过漏洞入侵用户机器选择的币种具有统一的特性,这些币种的算法主要以 CryptoNight 为主,可以直接使用 CPU 挖矿,不依赖于 GPU 就产生较大的效益。
二、矿池分析
对黑客的挖矿方式进一步分析发现,云上黑客入侵挖矿主要采用矿池挖矿的方式。
随着数字货币的火热,越来越多的人力和设备投入到各种币种的挖矿,导致各种币种的全网运算水准呈指数级别上涨,单个设备或者少量算力都难以获得区块奖励;而矿池挖矿是一种将不同少量算力联合运作的方式,以此提升获得区块奖励的概率,再根据贡献的算力占比来分配奖励。相比单独挖矿,加入矿池可以获得更稳定的收益,因此众多的矿工均采用矿池挖矿,黑客亦如此。以下为云上黑客入侵挖矿使用主要矿池列表:
通过对矿池地址进行归类统计发现,黑客入侵后挖矿使用最多的矿池为minexmr.com。如下图,该矿池算力在全网门罗币矿池中排名第三。
门罗币目前全网算力(Hashrate)约为460MH/s,xmr.nanopool.org 就达到99.79MH/s,提供了门罗币20%以上的算力;pool.minexmr.com 达到62.78MH/s提供了门罗币13.6%的算力; xmr.pool.minergate.com 的算力也达到26.50MH/s;这些均是云上黑客入侵挖矿使用的主要矿池,意味着云上存在漏洞而被入侵挖矿的机器就是其中的矿工,是这些算力的贡献者。
而国内自建矿池也不甘示弱,皮皮虾、一路赚钱、和鱼池(ppxxmr.com,yiluzhuanqian.com,f2pool.com)受欢迎的程度分别排名第三、第四、第九。
云鼎实验室对挖矿常使用端口统计发现,5555、7777、3333等罕见端口常被用作矿池连接的端口,其中45700、45560则为 minergate.com 指定过的矿池端口。
黑客使用的特定矿池地址和端口就是其进行入侵挖矿恶意行为的特征之一,正常的服务器并不会对这些矿池地址和罕见端口进行连接访问。通过对矿池地址和端口进行统计,用户可以采用流量抓包等方式针对性地检查自己的云主机是否中招,甚至可以在不影响业务的前提下直接屏蔽对应矿池的访问,也可在一定程度上起到防护的作用。
三、漏洞利用入侵与溯源分析
云鼎实验室对黑客入侵挖矿行为的攻击方式进行统计分析,发现云上入侵挖矿的行为中,黑客在选择攻击目标和入侵方式上也存在一定的共性。
下图为云鼎实验室对 xmr.pool.minergate.com 影响机器数量在一定时间内进行的分布统计。
下图为cpuminer-multi.exe矿机的新增情况,cpuminer-multi.exe启动时一般会请求上述的矿池地址。
对比以上两张图,可以发现在2018年4月15日和6月18日,cpuminer-multi.exe 矿机均出现了突增,对应时间点的 xmr.pool.minergate.com 矿池连接数量也出现了增加,而这些时间点基于云鼎实验室日常的事件和响应统计,均出现过大批量的通用安全问题的利用情况。
通过对历史捕获挖矿案例的分析发现,云上挖矿通常是一种批量入侵方式,这种批量入侵的特性,使得黑客只能利用通用安全问题,比如系统漏洞、服务漏洞,最常见的是永恒之蓝、Redis未授权访问问题等。
云上入侵挖矿行为的感染和挖矿方式主要分为两种类型,其中一种类型是在病毒木马主体中直接实现相关的扫描、利用、感染和挖矿功能,如下图对某木马逆向可见钱包地址和矿池地址直接硬编码在程序中:
而另一种方式则是利用独立的挖矿程序,这些挖矿程序一般是来自开源程序,比如 xmrig 项目 (https://github.com/xmrig/xmrig), 这类挖矿一般会在入侵后先植入 bash 或者 VBScript 脚本等,再通过脚本实现对挖矿程序的下载或者其他扫描利用程序的下载,同时通过参数指定矿池和钱包地址,以下就是其中一个 VBScript 脚本内容和启动的挖矿进程:
其中主流方式是直接启动挖矿程序进行挖矿。通过分析矿机常用的进程,也可以得到印证:
影响最大的 minerd 出自 https://github.com/pooler/cpuminer
Windows上的 cpuminer-multi.exe 矿机源于https://github.com/tpruvot/cpuminer-multi
而 kworkers、kappre、xmrig.exe 等均编译自https://github.com/xmrig/xmrig
集成开源矿机挖矿只需要一条命令,使得黑产行业越来越多的使用此种形式来进行挖矿。
进一步尝试统计黑客身份,针对部分数据进行进程的命令参数分析统计,提取其中挖矿钱包地址用户名发现,云上挖矿行为聚集状态,大量被黑的云主机矿机掌握在少量的黑客团伙/个人手中(其中邮箱是 minergate.com 的用户名)。
总结黑客的入侵挖矿行为发现,存在通用安全漏洞(如永恒之蓝)的云主机成为黑客主要的入侵目标,黑客通常采用批量扫描通用安全问题并入侵植入挖矿程序的方式进行恶意挖矿。一些传统企业、政府机构等行业的机器被入侵挖矿现象尤为显著,主要原因是这些行业的云主机由于维护人员缺乏安全意识,容易存在漏洞,甚至长期不登录云主机,更是变向给黑客提供了长期矿机,这些存在安全问题的云主机也是云上挖矿等恶意行为肆意繁衍的温床。所以提升安全意识,避免在云主机中引入漏洞,发现漏洞后及时修复是防止被黑客入侵挖矿的唯一方法。
四、安全建议
基于以上云鼎实验室对云上入侵挖矿主要特征的总结,可以发现黑客入侵挖矿的主要目标是存在通用安全漏洞的机器,所以预防入侵挖矿的主要手段就是发现和修复漏洞:
1)可以根据业务情况使用腾讯云安全组或者服务器自带防火墙关闭非业务需要的端口,对于一些部署的服务,如无必要避免开放在外网上,即使因为业务需要开放,也应该限制访问来源。
2)关注操作系统和组件重大更新,如 WannaCry 传播使用的永恒之蓝漏洞对应的 MS17-010,及时更新补丁或者升级组件。
3)为预防密码暴力破解导致的入侵,建议更换默认的远程登录端口,设置复杂的登录密码,或者是放弃使用口令登录,转而使用密钥登录。
4)自检服务器上部署的业务,有条件的话可以进行渗透测试,及早发现并修复业务漏洞,避免成为入侵点。
5)使用腾讯云云镜等安全产品,检测发现服务器上的安全漏洞并且及时修复。
另外,针对已经被入侵挖矿的情况,建议及时清理挖矿进程和恶意文件,同时排查入侵点并修复,从根本上解决问题。
五、附录
1、部分币种和矿池列表
以下为云上黑客入侵后挖矿的主要币种和矿池列表:
2、部分挖矿程序样本
a)94fc39140ffafbd360a4cabc64b62077
b)f068b7be8685c91bddbb186f6fad7962
c)367dc6e9c65bb0b1c0eb1a4798c5e55b
d)f594a17d37c70b0d18f33a3882e891a0
e)db87bd6bc3554e4d868b7176925dcff5
f)5b0b4ccea8b6636966610edc346fe064
g)8c9ab86572742d2323cee72ca2c0a3f2
h)367dc6e9c65bb0b1c0eb1a4798c5e55b
i)0d25d679b9845847b0c180715a52d766
3、部分钱包地址
a)4A7sJwfkFrWB88V8NiJ2Fi3RwsWkR48PQ5hG2qXq6hu2U7e8fcVLJ81WtTzHGdNChsejcygkvUGpbiiUXAWXprWYHnBEvqC
b)43RhXdrqL26QFnZyWyC53pcyaxKDQZent24CXGRLZ6196h6DkpzT43ZA2C1SpZGLDddAfr6hEhwqXg7F8dQpchFuDBz6Y6T
c)47bvN8Z4UVq6kLjMFo4AF5UkwFbdzdhvoKNj1EN6iTYA2BvSDAsbGoXNMNeSfZajhz6xqQHHhPqbrRacnvELqrgyQYBqnXc
d)42h3ELK47SGe4jiit28qVvTRAwpnT1R3DZ7BEnQm3Jxe9wykcvLVoFd5GqpqepwGRrCbkyKJG4kg1hssUztaVACVJGhpGAK
e)4AGF7tHM5ZpR7FRndiPMk6MxR1nSA8HnAVd5pTxspDEcCRPknAnFAMAYpw8NmtbGFAeiakw6rxNpabQ2MyBKstBY8sTXaHr
本文作者:zhenyiguo、jaryzhou、youzuzhang @腾讯安全云鼎实验室
腾讯安全云鼎实验室关注云主机与云内流量的安全研究和安全运营。利用机器学习与大数据技术实时监控并分析各类风险信息,帮助客户抵御高级可持续攻击;联合腾讯所有安全实验室进行安全漏洞的研究,确保云计算平台整体的安全性。相关能力通过腾讯云开放出来,为用户提供黑客入侵检测和漏洞风险预警等服务,帮助企业解决服务器安全问题。