摘要
近日安恒APT团队截获到一批(300多个)各种类别冒充为黑客破解版本的APK样本:
经过分析为Coinhive网站挖矿API在android平台的滥用,Coinhive其初衷是为消除网站各种烦人广告,将JS lib嵌入网站,当用户浏览网页时消耗用户CPU资源为网站所有者挖掘门罗币来代替广告收入。
其创意精妙但很快被恶意软件作者利用,滥用于各种应用中。如:chrome扩展、伪造站点和被入侵的正常网站。此次蔓延至android平台应用,使用本地打包的JS脚本连接Coinhive网站挖矿API,一旦用户打开APP会跳至一个(虚假)推广激活Webview页面,后台CPU大量占用。即使用户察觉不对,维持十秒左右的持续时间,但随着时间和感染终端的累积会给恶意软件作者获得足够丰厚的利润。如未卸载处置将会随系统自启动在后台服务中持续挖矿,消耗用户资源。
详细技术分析
从目前APK的CA证书来看,这次批量的病毒样本使用同一CA证书,证书时间为“Thu May 11 02:46:07 CST 2017”可以大概定位其生成时间:
代码结构简单清晰,但使用的APP名称及图标全为Hack标识,极具诱导能力:
安装启动后,恶意APP首先在后台开启CoinHiveIntentService服务,并利用WebView组件加载硬编码URL:http://lp.androidapk.world/?appid=<PACKAGE_NAME>:
该页面伪装一个推广页面配合HACK版本的激活条件,表面看起来毫无破绽。但实际推广下载为虚假链接,真实作用还是拖延用户使用时间:
CoinHiveIntentService服务除可从MainActivity启动外,也接受从系统重启Receiver启动:
该服务主要作用为创建CoinHive实例并向其传递固定挖矿key:6GlWvU4BbBgzJ3wzL3mkJEVazCxxIHjF及三个必须参数:
CoinHive最终调用APK本地打包的JS挖矿脚本实现挖矿功能:
防范建议
目前该类恶意APP从VirusTotal各安全厂商的检测结果来看还非常新鲜,告警率极低。
目前该类APP靠割韭菜的方式获利,未使用其他root防卸载等技术,如中招直接卸载即可,另建议警惕各诱惑性质的APP,规范下载使用。