研究人员在Google play中发现85个活跃的广告恶意软件家族,伪装成游戏、TV和远程控制模拟器APP,感染了超900万Google play用户。
广告恶意软件是很烦人的,但是又时常出现,而且无法完全解决。研究人员最近发现一个广告恶意软件家族在Google play中伪装成游戏、TV和远程控制模拟器APP。该广告恶意软件家族可以展示全屏广告、隐藏自己、监控手机设备解锁、后台运行。截止目前,该恶意软件家族的85个APP下载次数已经超过900万次。Google在验证了trendmicro的报告后,已经将这些APP从应用商店删除了。
图 1. Google Play中的广告恶意软件APP
Easy Universal TV Remote应用程序称可以让用户使用智能手机来控制TV,在这85个APP中的下载次数最多。
图 2. Easy Universal TV Remote app和相关信息
该APP目前下载次数已经超过500万次,评论区也有用户反映功能与描述不符合。
图 3. 评论区用户反映功能与描述不符
行为分析
研究人员测试了与该广告恶意软件家族相关的APP,发现这些APP虽然来自不同的开发者,APK cert公钥不同,但是有类似的恶意行为并共享部分代码。
下载的广告恶意软件启动后,就会出现一个全屏广告。
图 4. 感染广告恶意软件的设备展示全屏广告
在关闭广告后,start、open app、next按钮调用都会在手机设备屏幕上产生广告。点击调用按钮会产生另一个全屏的广告。
图 5. 调用按钮会出现全屏广告
图 6. 调用按钮弹出全屏广告
用户退出全屏广告后,提供给用户关于APP更多操作动作的按钮会出现在用户屏幕上。广告恶意软件也会建议用户在APP 5星好评。如果用户点击任意一个按钮,全屏广告会再一次弹出。
图 7. 用户点击APP相关按钮的截图
之后,APP会通知用户系统或设备正在加载或缓存。但几秒钟后,APP会从用户屏幕上消失,并会在设备上隐藏其图标。在屏幕上消失后APP还会在后台继续运行。虽然隐藏了,但广告恶意软件会被配置为每隔15或30分钟内在用户设备上显示全屏广告。
图 8. 广告恶意软件消失前的截图
图 9. 广告恶意软件隐藏所用的部分代码
其中一些恶意APP还有其他类型的广告展示,包括监控用户屏幕解锁行为,每当用户解锁手机屏幕后就出现一次广告。接收器模块会在AndroidManifest.xml中注册,这样每当用户解锁设备后就可以触发一个全屏广告和弹框。
图 10. 恶意APP在后台运行
图 11. AndroidManifest.xml中注册的接收器
图 12. 用户解锁屏幕后展示全屏广告的代码
图 13. 解锁受感染的设备后展示全屏广告
总结
虽然这些广告恶意软件可以通过手机APP的卸载服务进行手动删除,但是因为广告是每15-30分钟展示一次或当用户解锁设备屏幕时显示,因此很难发现然后去检测然后卸载。随着人们越来越依赖手机设备,广告恶意软件也越来越成为一种更重要的威胁。