2019-02-20 16:44:4212911人阅读
网络安全公司赛门铁克近日在微软的应用程序商店中发现了八个恶意应用程序(PUA),这些应用程序在用户不知情的情况下秘密使用受害设备的CPU能力来挖掘加密货币。随后研究人员向微软公司报告了这一情况,随后微软将这些应用程序从商店中删除。
这些应用程序——包括电脑和电池优化教程、互联网搜索、网页浏览器、视频查看和下载——来自三大开发商:DigiDream、1clean和Findoo。总的来说,研究人员一共发现了这些开发商发布的8个应用程序,它们都有相同的危险行为。经过进一步调查,研究人员高度怀疑所有这些应用程序的三大开发商甚至有可能都是同一人或同一组织。
在微软应用商店中发现的八个加密劫持应用程序
用户可以通过微软应用商店中的免费应用列表或关键字搜索来获取这些应用。研究人员发现的这一恶意应用程序样本是在Windows 10系统上运行的,包括Windows 10 S模式。
一旦下载并启动了这些恶意应用程序,他们就会通过在其域服务器中触发Google标签管理器(GTM)来获取货币挖矿JavaScript库。随后,挖矿脚本被激活并开始使用计算机的大部分CPU周期来为威胁行为者挖矿门罗币。虽然这些恶意应用程序似乎提供了隐私政策,但在其应用商店的描述中并没有提到货币挖矿,显然这是有意而为之。
这些恶意应用程序于2018年4月至12月期间发布,其中大部分都是在年底发布的。尽管这些应用程序在微软应用商店中存在的时间相对较短,但仍被大量用户下载。虽然无法统计准确的下载量或安装量,但可以看到这些针对这些应用程序已收到近1900条评价打分记录。由于应用程序评价打分常被欺骗性地夸大,因此很难知道有多少用户真正下载安装了这些应用程序。
这些恶意应用程序的域名在其应用程序清单文件中是硬编码的。以Fast-search Lite为例,如下图所示:
“Fast-search.tk”——Fast-search Lite应用程序的域名——在清单文件中进行了硬编码
当每个应用程序启动后,会在后台静默访问域,并使用密钥GTM-PRFLJPX触发GTM,所有八个应用程序中共享使用该密钥。
GTM是一个合法的工具,允许开发人员将JavaScript动态注入其应用程序。但是,GTM也可能被滥用以隐藏恶意、危险行为,因为存储在GTM中的JavaScript链接是https://www.googletagmanager.com/gtm.js?id={GTM ID},它并不表示该功能调用代码的函数。
GTM脚本——应用程序访问该脚本以激活挖矿脚本
通过监控来自这些应用程序的网络流量,研究人员发现它们都连接到以下远程位置,这是一个货币挖矿JavaScript库:http://statdynamic.com/lib/crypta.js。这些应用程序随后访问其自身的GTM并激活挖矿脚本。其中Crypta.js是一个加密的JavaScript库,如下图所示:
加密的JavaScript库——Crypta.js
解码后,可以发现Crypta.js是Coinhive库的一个版本,而Coinhive是一个挖矿门罗币的脚本。自从Coinhive服务于2017年9月推出以来,据报道称该服务会在网站访问者不知情的情况下进行加密劫持。
除此之外,研究人员还分析了GTM上的恶意矿工激活码,其关键源代码如下图所示:
解密Crypta.js的源代码
研究人员观察到,该恶意矿工用密匙da8c1ffb984d0c24acc5f8b966d6f218fc3ca6bda661爬取,该密匙同时可作为Coinhive的钱包。
这些应用程序属于渐进式Web应用程序类别,它们作为独立于浏览器运行的Windows 10应用程序,安装在独立(WWAHost.exe进程)窗口中。
从这些应用程序的网络流量中,研究人员找到了每个应用程序对应的托管服务器。通过Whois查询,发现所有这些服务器实际上都具有相同的来源。因此,这些应用程序很可能是由使用不同名称的同一开发人员或团队发布的。
Whois查询结果显示这些应用程序服务器具有相同的来源
最后,研究人员向微软和谷歌公司通报了这些应用程序的恶意行为。目前,微软已从其应用商店中删除了这些应用程序,而挖矿JavaScript也已从Google标签管理器(GTM)中删除。
本文作者:Gump,点击查看原文