0x1 概述
腾讯御见威胁情报中心日前发现一广告分发平台被恶意嵌入挖矿JavaScript脚本,该挖矿攻击在江苏、湖南地区集中爆发。挖矿页面单日访问量近百万次,中招机器CPU资源被占用90%以上,直接影响系统运行。
0x2 溯源&分析
此次恶意JavaScript代码存放在国内某电商平台服务器上。
c.html中导入的c.js为Coinhive JavaScript Miner代码,该代码基于CryptoNight挖矿算法,挖取数字加密货币—门罗币。
此外,为了不被轻易发现,该挖矿脚本仅在非IE浏览器内运行,并通过Math.random()设置50%的启动概率。这就意味着,当用户发现电脑卡顿、CPU占用率过高,怀疑有恶意程序运行进而进行确认时,挖矿环境并不一定重现。
通过进一步溯源分析,发现可疑广告页面(http://dsp.189zj.cn:8889/api/show.jsp)通过Iframe嵌入了c.html代码。
该页面通过广告平台投放到一些正常的网页和客户端程序,进行二次传播。当用户看到该广告页面,或者承载其广告的网页/客户端程序在后台静默运行时(此时用户看不到广告),无论用户是否点击查看广告,均会触发挖矿代码执行。
目前已发现有上千款软件受影响:
目前门罗币的价格约为1800元人民币,按一台普通电脑1060显卡,算力大概是3000 H/s计算,一台机器每天可以挖到0.02个门罗币,折合人民币为34元。无利不起早,有利熬三更,那么这帮“勤奋的”黑客们到底是谁呢?
show.js广告页面内嵌入的JavaScript挖矿代码是网站管理员所为,并非第三方劫持所致,而show.js的投放存在网络劫持的可能性。
从受影响的用户分布地区来看,主要集中在江苏、湖南等地区,另外通过其IP,可以明显的看出,其IP集中在国内某运营商IP段,可能存在网络劫持。