新型 Android 恶意软件 HiddenMiner 开启「毁机」挖矿模式
趋势科技在本周三表示发现了一种新的 Android 挖矿恶意软件 HiddenMiner,它可以暗中使用受感染设备的CPU 计算能力来窃取 Monero。HiddenMiner 的自我保护和持久性机制让它隐藏在用户设备上滥用设备管理员功能 (通常在 SLocker Android 勒索软件中看到的技术)。另外,由于 HiddenMiner 的挖矿代码中没有设置开关、控制器或优化器,这意味着一旦它开始执行挖矿进程,便会一直持续下去,直到设备电量耗尽为止。鉴于 HiddenMiner 的这种特性,这意味着它很可能会持续挖掘 Monero,直到设备资源耗尽。根据研究人员的说法,HiddenMiner 是在第三方应用商店发现的,大部分受害用户都位于中国和印度。
HiddenMiner 的持续挖矿与导致设备电池膨胀的Android 恶意软件 Loapi 类似,不仅如此,HiddenMiner 还使用了类似于撤销设备管理权限后 Loapi 锁定屏幕的技术。
研究人员通过进一步钻研 HiddenMiner,发现 Monero 矿池和钱包与恶意软件连接,并获悉其中一家运营商从钱包中提取了 26 XMR(截至 2018 年 3 月26 日价值为 5,360 美元)。
感染链与技术分析
HiddenMiner 伪装成了合法的 Google Play 商店应用更新程序,使用了与 Google Play 商店相同的图标。HiddenMiner 随着 com.google.android.provider 弹出,并要求用户以设备管理员身份激活它。一旦获得许可,HiddenMiner 将在后台开始挖掘 Monero。
图 2 恶意应用程序的屏幕要求用户以设备管理员身份激活它
HiddenMiner 使用多种技术将自己隐藏在设备中,例如清空应用程序标签并在安装后使用透明图标。一旦受害者以设备管理员身份将其激活,它将通过调用 “ setComponentEnableSetting()”从应用程序启动器隐藏自己。需要注意的是,恶意软件会自行隐藏并自动以设备管理员权限运行,直到下一次设备引导。 DoubleHidden Android 的广告也采用了类似的技术。
图 3 安装后的空应用程序标签和透明图标(左),然后一旦授予设备管理权限就会消失(右)
除此之外,HiddenMiner 还具有反仿真功能,可绕过检测和自动分析。它会通过滥用 Github 上的 Android 模拟器检测器来检查自身是否在模拟器上运行。
图 4 代码片段显示了 HiddenMiner 如何绕过沙箱检测和 Android 模拟器
图 5 代码片段显示了 HiddenMiner 如何挖掘 Monero
在 HiddenMiner 的案例中,受害用户无法将 HiddenMiner 从设备管理员中删除,因为当用户想要停用其设备管理员权限时,恶意软件会利用技巧来锁定设备的屏幕。因为它利用了 Android 操作系统中发现的缺陷(不包括 Nougat 「Android 7.0」和更高版本的设备,因为 Google 通过减少设备管理员应用程序的权限解决了这一问题。)
的确,HiddenMiner 是网络犯罪分子如何驾驭加密货币挖掘浪潮的又一例证。对于用户和企业而言,提高网络安全意识刻不容缓:仅从官方应用市场下载 APP 、定期更新操作系统以及授予应用程序权限时更加谨慎 等都能在一定程度上减小感染恶意软件的几率。