8月,谷歌正式发布了安卓 13系统,其中引入了新的安全特征,尝试拦截恶意软件请求安卓权限来在后台执行恶意、隐蔽行为,比如AccessibilityService这样功能强大的安卓权限。近日,Threat Fabric研究人员发现已有安卓恶意软件尝试绕过这些限制,并在用户设备上释放具有高权限的payload。
在之前的安卓版本中,大多数移动恶意软件通过应用商店中的释放APP(伪装为合法应用APP)隐藏在数百万手机设备中。在安装过程中,恶意软件APP会要求用户授权有风险的权限,然后滥用Accessibility服务权限来释放恶意payload。
Accessibility 服务是被滥用最多的,可以使APP执行点击、返回、返回home等操作。而这些是不需要用户授权的,用户甚至都不知道这些动作的发生。
一般来说,恶意软件会滥用该服务授予其一些额外的权限,并防止受害者手动删除恶意APP。
在安卓13系统中,谷歌引入了'Restricted setting'特征,可以拦截侧加载的应用请求Accessibility服务权限,将该功能限制为谷歌应用商店中的apk。
但ThreatFabric 安全研究人员创建了一个PoC释放器可以很容易地绕过该安全特征,并获得Accessibility服务权限。
绕过安卓13 restricted setting特征
ThreatFabric研究人员近日发现一款安卓恶意软件释放器,其中添加了绕过安卓13 Restricted setting安全特征的新功能。该释放器名为"BugDrop",功能仍然存在很多漏洞,因此推断该释放器仍处于开发阶段。
该释放器的特征代码与Brox类似,但是在安装器函数中对字符串做了修改。吸引研究人员的是其中的字符串"com.example.android.apis.content.SESSION_API_PACKAGE_INSTALLED",这并不在原始的Brox代码中。字符串对应的是intent要求创建安装过程的动作。
调用基于会话的安装的字符串
第三方有2种方法来安装其他APP。第一种也是最常见的是非会话的安装方法,即通过apk文件的方式进行安装。第二个是基于session的安装方法,即一次安装多个apk文件。比如,一个apk文件有多个语言版本,每个语言版本对应一个apk文件。
在安卓13系统中,谷歌限制了Accessibility Service和Notification Listener两个高权限API的访问权限,将其限制为仅允许使用基于会话的安装方法的APP。通过基于会话的安装方法侧加载的APP不会看到"Restricted Setting"弹窗,因此用户可以启用Accessibility Service和Notification Listener。
像BugDrop这种基于session的安装方法的恶意软件释放器可以加载恶意软件payload,安卓13系统不会对其使用API进行限制。
BugDrop是由Hadoken黑客组织开发的,该黑客组织还开发了Gymdrop释放器和Xenomorph安卓银行木马。从目前BugDrop的开发状态判断其仍处于开发中,未来在部署时可能会会用于Xenomorph攻击活动中。
更多技术细节参见:https://www.threatfabric.com/blogs/bugdrop-new-dropper-bypassing-google-security-measures.html
参考及来源:https://www.bleepingcomputer.com/news/security/malware-devs-already-bypassed-android-13s-new-security-feature/