大规模自动检测安卓应用潜在隐私泄露问题
一、引言
随着智能手机的普及,移动计算的重心从笔记本电脑转移到了手机和平板电脑上。在众多竞争的移动平台中,安卓操作系统在美国智能手机操作系统市场占据最高份额。安卓系统为用户提供了核心的智能手机体验,而用户的很多生产力依赖于第三方应用。安卓有众多应用市场,用户可以从中下载第三方应用。与iOS应用市场的政策不同,大多数安卓应用市场允许开发者直接发布应用,无需审核,这一政策因可能导致恶意应用而受到批评。谷歌则让安卓应用市场进行自我监管,评分较高的应用更易在搜索结果中显示,被举报的恶意应用会被移除。
安卓系统通过沙盒机制将每个应用与系统的其他资源隔离开来,以保护用户。若应用需要访问受限资源,开发者必须在应用的清单文件中静态声明所需权限。用户安装应用时,安卓会提示应用所需的受限资源,用户需授予所有权限才能安装应用。然而,静态权限要求并不能告知用户应用获得权限后如何使用这些资源。例如,地图应用需要访问互联网和手机位置信息,但它可能会将位置数据泄露给广告商,而用户仅根据权限列表无法判断应用如何处理其位置信息。
为解决这一问题,我们推出了AndroidLeaks,这是一个静态分析框架,旨在大规模自动检测安卓应用中潜在的个人信息泄露问题。我们利用WALA(一个用于Java源代码和字节码的程序分析框架)创建应用代码的调用图,进行可达性分析,以确定敏感信息是否可能通过网络传输。若存在潜在路径,我们会使用数据流分析来判断私有数据是否到达网络接收器。
我们的主要贡献如下:
1. 利用静态技术创建了安卓API方法与其执行所需权限之间的映射,并将其中一部分映射用作数据流分析中私有数据的源和接收器。
2. 提出了AndroidLea
超级会员免费看
订阅专栏 解锁全文
17

被折叠的 条评论
为什么被折叠?



