论文分享 | Under the Dark: 隐匿矿池滥用分析研究
2023-6-12 15:9:47 Author: mp.weixin.qq.com(查看原文) 阅读量:3 收藏

本篇文章是NISL 实验室张镇睿同学录用于ACM CCS 2023的论文 Under the Dark: A Systematical Study of Stealthy Mining Pools (Ab)use in the Wild。本篇论文针对危害更为严重的隐匿矿池(Stealthy Mining Pool)进行了深入的分析,发现隐匿矿池被广泛适用于恶意挖矿场景并产生了巨额收益。

 全文共3000字,阅读时间约11分钟。

01
研究背景

    对于采用工作证明(Proof of Work, PoW)作为共识机制的加密货币区块链来说,挖矿(Cryptomining)是挖掘并发现新虚拟货币并进行转账操作的的依赖手段。矿工通过解决基于哈希值的复杂谜题,得到加密货币的奖励。矿池(Mining Pool)是指矿工通过网络共享其计算能力的服务器,并根据矿工为新区块贡献的计算量分配奖励。因此,随着全网算力的增加,为了增加赢得奖励的机会,矿工倾向于加入矿池,共享矿池的挖掘结果。然而,由于挖矿过程大量消耗能源,全世界多个国家大多倾向于禁止挖矿的过程,比如美国纽约州[1],中国[2]与印度[3]。而作为挖矿操作枢纽的矿池也成为了执法者的主要目标。

此外,犯罪分子开始尝试滥用受害者用户的资源,通过入侵受害者主机后部署加密恶意挖矿软件来开采加密货币,这被称为加密劫持(Cryptojacking)。为躲避已有检测,如基于黑名单的矿池检测机制,同时隐藏钱包地址以避免其收益被追踪,加密恶意软件开始利用自己的隐匿矿池(Stealthy Mining Pool)进行挖矿操作。
02
隐匿矿池
矿池是通过聚合分散在各地的具有挖矿算力的服务器完成大规模的加密货币开采,为与其控制的服务器进行通信,需要矿池通信协议与矿工通信,完成上传与下发任务。目前,最广泛使用的矿池通信协议是Stratum协议[4]Stratum是基于JSONRPC [5]的TCP协议,其典型通信流程如图表1所示。由于Stratum协议标准没有规定具体字段的实现细节,因此不同加密货币矿池可能存在不同的实现方式。
图表1:Stratum通信流程
图表2展示了三种典型的矿池类型,相同的是,这些矿池均使用Stratum协议提供服务。然而,根据是否对外公开提供服务,这三类矿池被分为公开矿池(Public  pool)与隐匿矿池(Stealthy pool)。
图表2:矿池类型
其中公开矿池通过一个公开的网页提供服务,网页上会列出支持的加密货币和关联的矿池地址,因此,这些矿池的域名和IP地址很容易被公开获得,这使得它们容易被威胁情报黑名单屏蔽。
图表3:公开矿池首页示例图
相较于公开矿池,隐匿矿池不对外提供公开服务,包括代理矿池与私有矿池两类。其中私有矿池与公开矿池一样,通过同步货币区块链获得最新的区块信息,但其服务地址并不公开。根据公开统计数据[6],私有矿池仍占有某些加密货币的一小部分哈希率份额。而代理矿池是一种在矿工和上游矿池之间的代理服务矿池,从上游矿池接收作业,将其分解为多个具有较低哈希率的子任务,并将其分配给下游矿工。矿工完成计算任务后,代理矿池再收集结果汇集到上游矿池。此外,代理矿池不需要区块信息的同步,因此部署简单,资源消耗较小。因此,代理矿池在加密劫持场景中被攻击者广泛使用 [7,8]。
03
隐匿矿池检测

    尽管隐匿矿池已被广泛使用于加密货币挖矿场景,然而目前仍缺少对隐匿矿池的大规模长时间检测的工作,而检测隐匿矿池具有以下几点挑战:

1. 首先,Stratum协议缺乏标准化的实施规范,不同虚拟货币的实现机制可能会有不同;
2. 其次,并非所有基于Stratum协议的通信都是为了挖掘加密货币,它们也可用于其他服务,如Electrum比特币钱包[9]。
3. 最后,没有标准的矿池服务端口,在没有事先了解目标端口的情况下,很难进行大规模扫描。
针对以上困难,论文基于以下步骤检测隐匿矿池,检测流程如图表4所示,主要包括以下四步。
图表4:隐匿矿池的检测流程
Step I. 收集Stratum协议的具体实现
    为在被动收集 Stratum 协议的流量,论文使用的方法包括以下三步:1)从公开矿池网页与开源矿工软件的README文件中查找Stratum的实现细节;2)从挖矿检测相关工作的开源挖矿流量数据集中分析Stratum协议实现;3)搭建挖矿环境,使用流行的矿工软件执行挖矿并收集挖矿流量,提取协议。
    如图表5所示,论文将收集到的Stratum协议命名为3类变种:𝑆𝑡𝑟𝑎𝑡𝑢𝑚-𝐵𝑇𝐶,𝑆𝑡𝑟𝑎𝑡𝑢𝑚-𝐸𝑇𝐻与𝑆𝑡𝑟𝑎𝑡𝑢𝑚-𝑋𝑀𝑅。其中𝑆𝑡𝑟𝑎𝑡𝑢𝑚-𝐵𝑇𝐶是Stratum的第一个实现,被比特币、莱特币、以太坊、Zcash等的矿池所利用,𝑆𝑡𝑟𝑎𝑡𝑢𝑚 - 𝐸𝑇𝐻主要由以太坊矿池使用,𝑆𝑡𝑟𝑎𝑡𝑢𝑚 - 𝑋𝑀𝑅专为门罗币挖矿设计。
    图表5:矿池认证请求包与返回包示意
Step II. 构建探测报文以检测矿池
挖矿开始前,矿工必须提交握手请求以证明其身份。若认证成功,矿池会返回一个握手成功的报文,返回中可能还会附加区块信息。当将图表5所示的三种探测报文用于全网扫描时,若身份认证不成功,矿池可能会返回握手出错报文,这些错误码中包含的信息可以被用以进一步识别矿池身份。论文根据该发现,构建了一套基于错误信息传播的方法进一步确认矿池身份。
Step III. 从检出矿池中识别隐匿矿池
公开矿池的网站往往会包含与挖矿相关的关键词并公开对外提供服务,而隐匿矿池为私人持有,不会通过网页公开自己的服务信息。因此,为从 Step II 中扫描出的所有矿池中过滤掉公开矿池,论文构建了基于网页内容的分类器。论文收集了124个公开矿池网站与Tranco [10] 前 500 的网站作为非挖矿网站,并提取网站主页的文本信息,使用基于 TF-IDF [11] 的方法识别出与挖矿服务最相关的11个关键词作为分类器的特征输入。最终论文提出的分类模型取得了99.2%的准确率和98.4%的召回率。
Step IV. 获得隐匿矿池端口分布以进行大规模扫描
最后,为获得隐匿矿池的端口分布,论文使用了 ISP Netflow[12]数据在现网流量中进行持续探测,共发现了425个不同的Stratum端口。通过进一步提取前32个高频端口作为扫描目标,论文发现这32个端口上的挖矿活动占了Netflow中挖矿连接总量的80%以上。
通过Netflow被动探测与全网主动扫描,论文最终发现了7,629个隐匿的矿池服务,包括2,113个IP和17,488个域名。
隐匿矿池特点分析
论文针对发现的隐匿矿池进行了分析,发现其特点总结为信息隐匿、用户友好和服务稳定具体体现为以下3点:
1. 相较于公开矿池,隐匿矿池的域名字符串包含更少的挖矿相关语义信息,比如具有挖矿相关的关键词。在论文采集的矿池中,93.0%的公开矿池域名包含挖矿语义,相比之下隐匿矿池仅有5.9%的域名包含挖矿语义。
2. 隐匿矿池支持的网络协议多样,一半以上的矿池支持基于 Transport Layer Security(TLS)的挖矿连接。、
3. 相比于公开矿池,隐匿矿池域名的活跃时间更短,接近一半的隐匿矿池域名活跃时间短于10天。
04
滥用隐匿矿池的挖矿团伙

    隐匿矿池团伙聚类

    通过使用Virustotal[13]等公开威胁情报,论文发现隐匿矿池使用的基础设施中有23.3%的IP地址与3.3%的域名被标记为恶意。论文使用以3个特征将这些IP与域名进行聚类,通过聚类结果发现恶意挖矿团伙:1)使用相同的IP地址;2)使用相同的eTLD+1(effective Top-Level Domain+1)域名;3)共享相同的TLS证书公钥。最终论文聚类出共包括880个IP与4,503个域名的439个不同的挖矿团伙。图表6展示了依据Passive DNS [14]中请求量较多的前10个团伙。

图表6:请求量较多的挖矿团伙
团伙生存策略
为逃避检测,延长生存时间,论文发现使用隐匿矿池的挖矿团伙主要采用以下3点生存策略:
1. 改变域名解析方式。通过分析隐匿矿池域名的历史解析记录,论文发现隐匿矿池历史上曾配置为公开矿池域名的CNAME或直接指向公开矿池域名。
2. 与僵尸网络结合。有来自77个团伙中的18.9% (2,041/10,824)  个样本使用了僵尸网络服务,并且规模越大的团伙与僵尸网络结合的比例越高。
3. 使用TLS连接。有238个团伙部署了至少一个支持TLS连接的挖矿服务,而支持TLS连接的矿池IP仅有9.6%被标记为恶意。
隐匿矿池的收益分析
为从内部视角评估隐匿矿池带来的收益,论文接管了属于挖矿团伙的9个域名。在这些域名上部署挖矿服务后,仍能收到受害主机的挖矿请求Stratum报文。基于此,论文估计通过接管这些矿池,每个月可以获得1,269.717美元的收益,结合接管所需的投入,作者的投资回报率高达2,750%。进一步从Passive DNS的角度评估,作者估计134个使用门罗币挖矿的团伙每个月利用20万个受害主机能够获得超过8万美元的收益。
图表7:接管的矿池
05
总结
本文针对隐匿矿池的活动情况进行了大规模长时间的监测研究,研究发现了包括2,113个IP和17,488个域名的7,629个隐匿矿池。进一步分析表明,隐匿矿池通过设计其域名语义、协议支持和生存时间以提供隐匿、用户友好和稳定的挖矿服务。此外,隐匿矿池和恶意软件之间有很强的关联性。通过接管过期矿池进行收益分析,我们发现犯罪分子每年可以获得超过100万美元的收益,平均投资回报率高达2,750%。

参考文献

[1] New York governor signs first-of-its-kind law cracking down on bitcoin mining. https://www.cnbc.com/2022/11/23/new-york-governor-signs-law-cracking-down-on-bitcoin-mining.html
[2] China’s top regulators ban crypto trading and mining, sending bitcoin tumbling. https://www.reuters.com/world/china/china-central-bank-vows-crackdown-cryptocurrency-trading-2021-09-24/
[3] India to propose law banning cryptocurrency trading, mining and possession. https://economictimes.indiatimes.com/industry/banking/finance/india-to-propose-law-banning-cryptocurrency-trading-mining-and-possession/banning-cryptocurrencies/slideshow/81526975.cms
[4] Stratum Protocol. https://www.braiins.com/stratum-v1/docs
[5] JSONRPC. https://www.jsonrpc.org/
[6] Monero Network Monitoring. https://web.archive.org/web/20221209071310/https://minexmr.com/pools.html
[7] 8220 Gang. https://www.lacework.com/blog/8220-gangs-recent-use-of-custom-miner-and-botnet/
[8] LemonDuck Cryptojacking Botnet. https://www.crowdstrike.com/blog/lemonduck-botnet-targets-docker-for-cryptomining-operations/
[9] Electrum Protocol Specification. https://electrum.readthedocs.io/en/latest/protocol.html#electrum-protocol-specification/
[10] VictorLePochat,TomvanGoethem,SamanehTajalizadehkhoob,MaciejKorczyn- ski, and Wouter Joosen. 2019. Tranco: A Research-Oriented Top Sites Ranking Hardened Against Manipulation. In 26th Annual Network and Distributed System Security Symposium, NDSS 2019, San Diego, California, USA, February 24-27, 2019. TheInternetSociety. https://www.ndss-symposium.org/ndss-paper/tranco-a-research-oriented-top-sites-ranking-hardened-against-manipulation/
[11] John Repplinger. 2011. G.G. Chowdhury. Introduction to Modern Information Retrieval. 3rd ed. London: Facet, 2010. 508p. alk. paper, $90 (ISBN 9781555707156). LC2010-013746. Coll. Res. Libr. 72, 2 (2011), 194–195. http://crl.acrl.org/content/72/2/194.full.pdf
[12]Netflow. https://www.cisco.com/c/en/us/products/collateral/ios-nx-os-software/ios-netflow/prod_white_paper0900aecd80406232.html.
[13] Virustotal API v3 Overview. https://developers.virustotal.com/reference
[14] Passive DNS. https://www.qianxin.com/product/detail/pid/424

文章来源: https://mp.weixin.qq.com/s?__biz=MzU5Njg1NzMyNw==&mid=2247486795&idx=1&sn=d0faefc08e4280d3bb552fc826705ed4&chksm=fe5d15cbc92a9cddeffc0f0114ef3911060fc8095cc65c31432aa815d04f214ef91efd9cf4ed&scene=58&subscene=0#rd
如有侵权请联系:admin#unsafe.sh