一、规模和影响
从2013年开始至2018年1月,360烽火实验室共捕获Android平台挖矿木马1200余个,其中仅2018年1月Android平台挖矿木马接近400个,占全部Android平台挖矿类木马近三分之一。
2014年Android挖矿木马经过短暂的爆发后,于2015,2016年逐渐归于平静。主要原因是受到当时移动平台技术等限制,以及电子货币价格影响,木马作者的投入和产出比不高。但随着2017年年底电子货币价格的一路高涨,挖矿技术的成熟,再次得到木马作者的目标,手机挖矿木马在也呈爆发式增长。
Android平台挖矿木马伪装成各类应用软件,统计发现其中工具类(20%)、下载器类(17%)、壁纸类(14%)是最常伪装的应用类型。
从样本来源来看,除了被曝光的在Google play中发现的十多个挖矿木马外,我们在第三方下载站点捕获了300多个挖矿木马,根据其网页上的标识,估算出这个网站上的APP总下载次数高达260万余次。
第三方下载站点下的挖矿木马
从网站来看,据Adguard数据显示[10],2017年近1个月内在Alexa排行前十万的网站上,约有220多个网站在用户打开主页时无告知的利用用户计算机进行挖矿,影响人数多达5亿。
Adguard近一个月的调查数据
这些网站来自美国、印度、俄罗斯、中国、巴西以及中国等多个国家。
主要国家占比
而这部分网站大多是以视频门户网站,文件分享站,色情网站和新闻媒体站等这类相对访问时间较长的站点。
挖矿网站分类情况
二、目标币种
挖矿木马在币种选择上是随着币种的挖掘难度和币种相对价格等因素而变化。目前在Android平台发现的挖矿木马选择的币种主要有(BitCoin)、莱特币(Litecoin)、狗币(Dogecoin)、卡斯币(Casinocoin)以及门罗币(Monero)这五种。
币种优劣势对比
三、挖矿方式及收益分配
挖矿方式有单独挖矿和矿池挖矿两种。下面以比特币为例来说明两种挖矿方式的区别。
(一)独立挖矿
独立挖矿是指使用自己计算机当前拥有的计算能力去参与比特币的挖掘,获取到的新区块的收益全归个人所有。
独立挖矿流程
比特币平均每十分钟产生一个区块,而参与比特币挖掘的用户数量非常庞大,独立挖矿可能一整年也无法抢到一个区块。且手机的计算能力相比于其他挖矿设备更是有限,当前Android平台还未发现使用独立挖矿手段来获取电子货币的挖矿木马。
(二)矿池挖矿
矿工是参与比特币勘探竞争的网络成员的昵称。而矿池是一个通过特定算法而设计的服务器,所有连接到矿池服务器的用户,会组队进行挖矿。
个人设备的性能虽然渺小,但是成千上万的人进行组队挖矿,总体性能就会变得十分强大,在这种情况,挖矿的成功率会大大提升,一旦矿池中的队伍成功制造了一个区块,那么所有队伍中的人会根据每个人贡献的计算能力进行分红。矿池的开发者一般会对每个用户收取一定手续费,但由于这种方法让大家更稳定得获得比特币,大部分矿工都会选择矿池挖矿,而不是单独挖矿。
矿池挖矿流程
矿池挖矿也分为一般矿池挖矿和前端矿池挖矿。
一般矿池挖矿:
一般矿池挖矿直接利用CPU或GPU本身的高速浮点计算能力进行挖矿工作。由使用C或者其他语言构造的挖矿程序进行CPU或GPU计算得到算力价值。矿池根据产生的算力价值进行分红,并收取10%以下的矿池手续费。
前端矿池挖矿:
前端挖矿利用asm.js或webAssembly前端解析器中介在浏览器端被动使用用户的CPU完成挖矿或者利用Html5新规范WebGL利用浏览器完成GPU挖矿操作。由浏览者产生的CPU或GPU计算得到算力价值。前端矿池(如Coinhive[11])会收取30%的矿池手续费。
由于使用方便,跨平台且隐藏性较好等特点,前端矿池挖矿逐渐得到挖矿木马作者的青睐。
领取专属 10元无门槛券
私享最新 技术干货