在过去的几年中,勒索软件大行其道,它创造了一个高利润的商业模式,允许攻击者将恶意活动货币化。但是勒索软件也有诸多限制,首先只有少部分人会真的交付赎金,其次,随着预防和检测勒索软件的技术逐步到位,受害者正在逐步减少。再者,有些国家的受害者或许没有那个经济能力。可能由于这些限制,所分发的载荷正在稳步转变,特别是通过漏洞利用或者垃圾邮件时。在过去的几个月里,Talos发现利用受害者机器进行挖矿的行为显著增加,最近加密货币和区块链一直是热点,所以攻击者难免会关注。
什么是“挖矿”
总的来说,挖矿就是利用系统资源来解决大量的数学计算,从而获取一定数量的加密货币,在深入了解挖矿之前,先谈一谈对我们有用的货币。
比特币(BTC)是最广为人知,也是被广泛使用的加密货币。自成立以来,比特币就一直在被开采。不过现今挖矿并不是最有效率的方法,一览所有的加密货币,在没有专门的硬件(ASIC,即专用集成电路,是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。)的情况下,只有一部分值得去挖。不同的加密货币的差异在于所使用的散列算法,有些就是为了防止或阻碍这些使用专门硬件而设计的,同时其还会更侧重于CPU和GPU这种消费级设备。目前,采用标准系统开采的,最有价值的货币是门罗币(XMR),另外门罗币在隐私方面十分出色,在各国开始研究比特币的时候,门罗币及其他一些货币可能会成为某些攻击者的避风港。
挖矿的方式有两种,一种是独立挖矿,一种是利用矿池。基于矿池的挖矿可以让收益更加稳定。我们经常会看到攻击者利用门罗币,因为其回报最多,挖矿软件也会很容易地分发到受害者那里。矿池挖矿的使用也最大化了攻击者试图侵入的标准系统的效率。想想DDoS,与单个机器发出的请求相比,100000个机器一起是不是更有效率呢?
基于矿池的挖矿是如何运作的
给予矿池的挖矿通过“矿工ID”来协调,这些ID将矿池与单个系统绑定,以便将所挖到的币分配给正确用户。正是这些ID,可以帮助我们确定恶意行动的规模和范围,并了解攻击者的收益。仅以讨论为目的,我们假设如下:
1.一个常见计算机计算哈希值的速度为~125H/s
2.虽然实际挖掘并不总是能够保证成功生成加密货币,但是在此假设下是成功的,因为它可以更好地理解这些恶意矿池的潜在收益。
这些矿工通常从命令行操作,并利用一系列的参数来确定如何执行采矿。用于执行挖掘的软件和指定参数的命令行语法的典型示例如下:(注意,根据所使用的特定挖掘软件,所使用的参数名称有所不同)
如你所见,有两个主要参数是必需的:矿池URL和矿工ID,然而,现在有很多攻击者或矿工可以指定其他的参数来掩盖其活动。如果在没有这些选项的情况下执行采矿软件,受害者可能会注意到其系统中的性能显着下降,因为没有执行计算资源限制。 这些选项包括:
1.CPU使用限制
2.系统温度限制
3.核心使用数量
4.休眠时间
每个挖矿程序都带有自己的一套标志,这些标志可以由合法和恶意的矿工以各种方式利用。我们可以注意到,这些选项通常是由攻击者在实现持久性时部署的。
恶意挖矿
因为恶意挖矿已经成为威胁,所以它是本文重点。攻击者总是在寻找利用恶意活动获利的方法,而恶意挖矿也正成为他们的摇钱树。
在过去的几年中,勒索软件主要是从恶意软件的角度出发,并且有十足的筹码进行威胁。 这是一个非常有利可图的商业模式。通过研究Angler Exploit Kit,保守估计Angler背后的攻击者每年至少3000万美元。不过随着系统安全性的提高,安全厂商可以更好地阻止勒索软件了。
在这种情况下,攻击者依然继续使用勒索软件作为收入来源,由于易受攻击的系统以及没有安全意识的用户的减少,攻击者开始增加其他途径,如银行木马,窃取凭证,以及点击欺诈的恶意软件等等。
那为什么还要选择挖掘软件呢?
理由有很多,有一个原因是加密货币的挖掘是一种“放任式感染”,即一旦一个系统开始挖矿,从攻击者角度来看,他们无需任何指挥和控制活动,在被删除之前还能一直产生收入。另一个原因是大多数用户并不会注意到这一点,谁会在浏览网页或写倡议书的时候发现挖矿正在进行?由此看来,挖矿软件恰恰与勒索软件相反,前者需要在受害者电脑中潜伏更长时间。
不过最大的原因还是挖矿会赚钱,如果不赚钱,那个坏人会利用它?恶意挖矿可以带来很高的收益,与挖矿相关的成本无非电力和硬件损耗,而在这种情况下,攻击者可以将这些成本完全排除,因为他们用的是受害者的电,受害者的硬件。
现在我们深入了解一下这些系统可能产生的收入,如前面所提到,计算机的算力受配置等诸多因素影响,假设平均是125H/s,一个机器,在没有任何硬件损耗和电力的成本的情况下,每天产生1.5元收益,看起来不多,不过基于矿池的挖矿就不一样了。
目前一些最大的僵尸网络由数以百万计的受感染机器组成,想象一下,只要控制其中的一小部分系统(约2000台主机)就可以发家致富了。每天三千多,一年一百多万。
在一个挖矿活动中,攻击者收集了足够资源以达到55.20KH/s的哈希率,从下面的截图可以看出,总支付值为528门罗币,换算成人民币约为一百万元。
从2017年12月底开始的一系列攻击中,攻击者利用针对Oracle WebLogic的漏洞(CVE-2017-3506/CVE-2017-10271)进行攻击。在这些情况下,成功的利用通常会导致安装和执行挖矿软件。
在分析这次恶意活动的规模和范围时,我们观察到在这些攻击开始后不久,使用的“矿工ID”就产生了超过500KH/s的哈希率。在写这篇文章的时候,这个速率仍然维持在350KH/s。
假定哈希率为350KH/s,每天就可以开采2.24个门罗币,那么攻击者每天就可以获利4200元,一年即可获利154万元。在分析“矿工ID”相关联的统计数据和支付历史时,得到的门罗币共为654个,总价值约125万元。数字可以证明这种攻击是多有利可图。
在分析与挖矿软件分发相关的恶意活动时,我们确定了数十个“工人ID”,通过分析可以知道利用这种方法可以有多赚钱。
另外值得一提的是,门罗币的价值会随着时间的推移而不断攀升。与比特币类似,门罗币在去年的估值1月份的13美元上涨至本文发布时的300美元以上,有时甚至达到了500美元。只要加密货币狂潮持续下去,价值无疑会继续增加。开采的每一个加密货币都会增加价值,从而增加收入。这也是攻击者利用恶意挖矿的另一个经济原因。不过这些挖矿软件是如何起作用的呢?
挖矿软件的分发
挖矿软件无疑是现在的新宠,它还会以不同形式分发给最终用户,常见方式有垃圾邮件活动,漏洞利用工具包,或者直接利用。
基于电子邮件
垃圾电子邮件是传递各种载荷的载体,如勒索软件,银行木马,挖矿软件等等。以下是一个挖矿软件分发的一个例子:这些感染典型的工作方式是向用户发送带有附件的电子邮件。这些附件通常是Word文档,该文档通过恶意宏下载挖矿软件或解压缩被感染的压缩可执行文件。
下面是2017年末的一个例子。这是一个伪造的工作申请,其中包括一个Word文档,声称是一个潜在的候选人的简历。
如你所见,电子邮件包含一个word文档,打开时如下所示。
正如恶意Word文档常见的那样,打开文档会导致文件被下载。这是被称为“bigmac”的大型挖矿活动的一个例子。
该图像诱使用户在文档中启用宏内容。一旦点击,Word将使用Document_Open函数执行一系列高度混淆的VBA宏:
宏会调用一个Shell命令:
通过将第一个参数设置为MsgBox调用,我们可以看到被解除混淆之后这个命令执行的内容:
这将使用System.Net.WebClient远程检索可执行文件并使用Start-Process执行。这也可以通过Threat Grid中的动态活动看到:
我们还发现下载的二进制文件正试图通过使用图像扩展名来伪装自己:
在这种情况下,下载的二进制文件是用VB6编写的可移植的可执行文件,它执行xmrig XMR CPU矿工的变种。此活动可在Threat Grid中动态查看:
动态挖矿活动也可以通过AMP被观察到,下面的一个例子是在设备监控中看到的
挖矿网络流量也可以使用Cognitive Threat Analytics进行分类,以识别企业环境中的挖矿软件:
基于漏洞利用工具
除了上面提到的垃圾邮件,运营商也在过去的几个月里通过smokeloader观察RIG漏洞利用工具。通过工具的感染是标准的RIG活动。但是,关于挖矿的一个好处是它有很容易追踪的元素,即“矿工ID”,如下所示:
通过这个ID:
我们开始观察哈息率,发现其在25KH/s到60KH/s间波动,取平均值42.5KH/s,他的收入是一天510元。这看起来似乎不是一笔可观的收入,但考虑到挖矿软件可以保持几个月持续运行,没有额外的维护人员的要求。唯一的成本只是租用利用工具。一旦受害者被入侵,这项恶意活动每年将持续获得的18万元利润。
然而,当开始追溯时,我们发现在过去的六个月里这项恶意活动在持续进行,最高哈希率超过100KH/s。
这项恶意活动于去年6月或7月被部署,于9月开始加速,在10月末突然停止,12月中旬又恢复运行,在写本文时依然在运行。
主动利用
除了针对用户的威胁之外,Talos还观察到挖矿软件通过在蜜罐中进行主动利用而被传递。这包括利用多个不同的漏洞来分发这些类型的载荷。之前就有关于EternalBlue被广泛用于安装挖矿软件的报道,以及各种Apache Struts2攻击,最近还有一个Oracle WebLogic攻击。这种类型的有效载荷非常适合主动利用,因为它不需要终端系统的持续访问,最终还可以带来显着的经济收益。
像一年前攻击者利用勒索软件一样,现在攻击者正在积极利用挖矿软件。接下来我们深入分析一下实际挖矿活动和已经被用于挖矿的系统。
挖矿再分析
在几个月的过程中,我们开始寻找系统上的挖矿活动,并发现挖矿软件依靠技巧在系统上运行,以及与多个不同群体相关的普遍威胁。另外,我们发现大量的企业用户在他们的系统上运行或试图运行挖矿软件,以获得潜在的个人收益。
我们发现的大多数恶意挖矿软件的一个共同点是文件名的选择。攻击者都会选择看起来人畜无害的文件名,例如“Windows 7.exe”和“Windows 10.exe”。另外还有“taskmgrss.exe”,“AdobeUpdater64.exe”和“svchost.exe”。Talos还发现通过命令行运行的例子,如下图所示:
有趣的是,这些挖矿软件也会声称自己是反病毒软件。
挖矿软件是否属于恶意软件
挖矿客户端软件本身不应被视为恶意软件或者是可能不需要的应用程序/可能不需要的程序(PUA / PUP)。合法的挖矿客户端软件只是被攻击者恶意利用,以确保他们能够通过在受感染的机器上进行挖矿来创收。挖矿软件专门用来确保所使用的加密货币可供人们使用,以确保网络的一致性并执行和验证交易,然后奖励执行复杂数学计算的矿工,以确保加密货币生态系统和网络的完整性和安全性。
如果合法用户在本地运行挖矿软件,那么无可厚非;同样,一个合法用户可以成为一个矿池的一部分以试图最大限度地获得加密货币。合法用户和攻击者之间的区别在于他们有意执行这个任务。攻击者正在与合法用户以完全相同的方式执行此任务,但未经用户的知情或同意。总之不同之处在于最终用户的欺骗行为以及挖掘加密货币背后的意图。软件本身只是是攻击者选择使用的恶意软件的一部分,但是,就像PowerShell或PSExec在恶意攻击中使用一样,软件本身并不是恶意设计。当这些挖矿软件被攻击者利用时,受害者不知不觉地被迫为采矿过程中所使用的电力付费,并且利用其计算资源来为攻击者带来收入。
企业影响
无论挖矿软件是使用恶意方法部署,还是企业用户试图从工作计算机上产生一些收入,企业都必须决定挖矿软件是在其环境中是否为恶意软件。
这是一个很有趣的事情,因为通常挖矿软件所做的唯一事情就是利用CPU/GPU周期来完成复杂的数学问题。然而,对于一个组企业而言,这是资源浪费或盗用,这些会对系统的性能可能会产生较大的影响。显然,如果一个挖矿软件通过上面讨论的方法之一被放置到一个系统上,那么这就是一个恶意的行为。然而,Talos发现大量的用户似乎愿意在企业系统上运行这些挖矿软件来生成加密货币。
这就需要企业制定相关政策,以及决定如何处理。此外,由每个企业决定是否将这些文件视为恶意软件,并将其移除/隔离。
总结
威胁总是层出不穷,过去的几年来,恶意软件通过各种方法迅速发展,而最近,随着加密货币价值直线升高,挖矿相关的攻击已经成为主要的攻击手段。另外攻击者也意识到,这种攻击和以前一样可以获利,不过不会像勒索软件那样吸引执法部门的注意。
围绕挖矿开始新型攻击并不会让人太惊讶,因为现在科技媒体一直在宣传加密货币和“区块链”,而且这些货币越来越值钱。攻击者显然已经注意到了这些,并开始新型的攻击来让他们的利益最大化。在过去的几个月中,恶意分发给受害者的挖矿软件显著增加。
在这种新的商业模式中,攻击者不再需要通过让目标打开邮件附件,或者利用目标系统漏洞执行代码来进行勒索,取而代之的是利用目标系统资源进行加密货币挖掘。目标计算机的计算能力越好,攻击者所获收益就越高。由于物联网设备安全性欠佳,又没有过多的用户交互,用它们来挖矿并不会引起注意,故其正在成为最有吸引力的目标。尽管大多数物联网设备算力有限,但是暴露在公网中且有漏洞的设备不在少数,所以更加值得重视。
从收益角度来看,一个系统平均每天可以产生价值约1.5元的门罗币,这意味着如果有2000名受害者(并不是件难事),攻击者每天就可以得到3000元的收益,一年就是一百多万。目前有数百万受感染系统组成的僵尸网络,按照这个逻辑,每年挖矿总值超6亿元人民币。值得注意的是,加密货币市场存在波动,这些货币的价值每天都会变化。
而这一切只是感染而已,并没有太多其它操作,除去小部分被发现,其他的会一直挖下去。上面提到的钱让人印象深刻,不过这还不是最大化收益后的情况。以下收益的细节:
1.许多加密货币的价值飞涨,作为最热门的加密货币,门罗币在过去一年里升值了3000%。
2.这种攻击比先前的攻击更加隐蔽,攻击者并不是在窃取什么东西,而是在受害者那里获取算力。另外,挖矿软件其实并不能算恶意软件。
3.一旦被“开采”,在变成现金之前,没人知道攻击者会拿它做什么,可能去投资了,也有可能变成养老金了…
参考来源:Talos,Covfefe编译
声明:本文来自FreeBuf,版权归作者所有。文章内容仅代表作者独立观点,不代表士冗科技立场,转载目的在于传递更多信息。如有侵权,请联系 service@expshell.com。