以谷歌公司的安卓系统和苹果公司的iOS系统为代表的移动操作系统正逐渐取代桌面操作系统,成为公众接入互联网的主要入口平台。短短数年内,移动智能终端出现爆发式增长,据权威市场研究机构IDC的数据显示[1],2013年全球智能手机的出货量达4.3亿台,比2009年增长了十倍,到2015年第二季度更是单季度出货量达3.415亿台,其主要增长来自于亚太和中东亚地区。
移动操作系统生态链正从智能手机拓展到如平板电脑、智能家居、可穿戴设备、车载控制系统等多种衍生产品中,日益驱动着互联网的改变和发展。作为移动互联时代的突出标志之一,移动应用聚集大量高附加值的信息和资源。这些信息和资源不仅包含个人的手机信息、身份信息、地理位置信息,还包含诸多账号信息以及邮件、文件等信息。
移动应用利用用户赋予的个人信息为其提供便捷、即时、精确的定制服务。在这一背景下,移动平台得以取代传统PC平台成为人们接入互联网的首选方式。然而,移动平台的高度互联性也是一把双刃剑,它同时使用户轻易暴露在攻击者的威胁之下。受政治、军事和商业利益驱使,针对移动终端系统的攻击行为层出不穷,其中针对个人隐私的窃取行为又是其中的重灾区。“棱镜门”以及多项外电资料披露,多个国家在资助移动操作系统安全防护方法的同时,也在研究利用移动操作系统的安全缺陷,通过恶意软件对我国重要人员以及公众实施高级持续性的大规模数据搜集。美国政府曾在过去的三年中资助英国政府通信总部(GCHQ)1亿英镑,专门用于研究手机操作系统的攻击方法。
在过去的2015年中,国内个人信息泄露事件频发。中国互联网协会2015年发布的《中国网民权益保护调查报告》[2]称,2015年中,中国网民因个人信息泄露、垃圾信息、诈骗信息等现象导致总体损失约805亿元。其中,78.2%的网民个人身份信息被泄露过,63.4%的网民个人网上活动信息被泄露过。11月份被批露的百度Wormhole漏洞,其影响力覆盖过亿安卓手机用户,造成大量用户隐私泄漏风险。
面对移动互联网用户隐私保护的严峻形势,隐私泄漏的检测和保护近年来颇受关注。本文结合团队的研究成果和正在进行的研究工作,揭示了移动应用隐私泄露检测和防护的总体进展,并在增强对用户隐私的识别和保护能力等方面提出值得关注的方向。
主要技术发展历程
自从2008年第一部安卓智能手机面世以来,智能移动终端正在逐渐取代PC成为汇集个人隐私的核心媒介。这在赋予智能移动终端越来越强大功能的同时,也给个人隐私安全防护提出了必须面对的严峻挑战:面对海量的移动应用,种类众多的隐私数据,复杂的数据流动渠道,如何确保个人隐私不被恶意利用?针对这一问题,早期的隐私泄漏分析的关注点主要集中在敏感数据的传播上。研究人员通过用户的隐私数据是否离开移动设备来判断应用是否存在隐私泄露,并从隐私泄漏的检测和防护两个方面展开研究:
1.隐私泄漏检测
从核心原理来看,隐私泄露检测技术经历了静态分析、动态分析、动静态分析结合的发展路线。
静态分析方法通常采用静态数据流分析的手段分析程序中的静态敏感数据流向,如加利福尼亚大学戴维斯分校的Androidleaks系统[3]、加利福尼亚大学伯克利分校的ComDroid系统[4]、我们之前提出的LeakMiner系统[5]、乔治亚理工的Chex系统[6]和德国达姆施塔特工业大学的FlowDroid系统[7]。在隐私泄露检测上,静态分析方法具有运行速度快,代码覆盖率高等特点,但是由于静态方法无法反映恶意软件运行时的动态行为,使得这类检测方法的实际效果受到明显影响。在攻防持续对抗的过程中,攻击者如果采用代码混淆技术也可轻易规避此类方法的检测。
意识到静态分析的缺陷,动态分析方法根据应用程序的敏感信息传输特征动态监测安卓系统中的恶意隐私泄露应用,其中最有代表性的是宾夕法尼亚大学的William Enck等人提出的TaintDroid系统[8],该系统通过修改安卓内核代码,利用动态指令插桩的方式实时监控程序中的数据传播过程,并在发生敏感数据传播时警告用户。剑桥大学的Rubin Xu等人提出的Aurasium系统[9]则通过另一种方式实现了类似的功能,他们通过对需要监控的应用程序进行重打包,以此给应用程序插入监控逻辑。相比静态分析方法,动态数据流跟踪具有分析精度高的特点,但是由于动态监测技术的局限,其具有代码覆盖率不足、检测结果滞后于数据传输发生等问题。
鉴于动、静态分析在隐私泄露检测过程中的不足和优点,如果可以结合两种分析方法,综合利用其优势,实现既具有较高覆盖率和检测速度,又具有高分析精度的检测方法就具有了相当大的现实意义。笔者在2013年提出的AppIntent系统[10]对此作了一些尝试,AppIntent首先利用静态数据流分析获取应用程序中敏感数据传播的候选集,再通过动态符号化执行验证候选敏感数据流是否会真实发生。通过结合两种分析方法,可以在较短时间内,在不损失分析覆盖率的前提下,提高隐私泄露的检测精度。
2.隐私泄漏防护
在隐私泄漏的防范方面,移动终端系统主动抑制恶意软件对敏感资源的不合理使用是防范恶意软件的重要途径。微软雷蒙德研究院的Jaeyeon Jung研究员提出AppFence系统[11]在动态检测隐私泄漏风险的基础上实时阻止软件对隐私信息的收集行为。北卡罗来纳大学的William Enck教授所在团队提出的Kirin[12]和Saint[13]系统用于阻止一个应用软件同时申请多个可疑的敏感资源。此外,雪城大学的Wenliang Du教授所在团队提出的AFrame系统[14]、伯克利的David Wagner教授所在团队提出的AdDroid系统[15]、和莱斯大学的Shashi Shekhar等人提出的AdSplit系统[16]均通过进程隔离的方式限制程序内部不可信组件对敏感资源的使用。此外,剑桥大学的Ross Anderson等人提出的Aurasium系统[9]提供给用户直接管理程序访问敏感资源行为的能力。
特别声明:本站注明稿件来源为其他媒体的文/图等稿件均为转载稿,本站转载出于非商业性的教育和科研之目的,并不意味着赞同其观点或证实其内容的真实性。如转载稿涉及版权等问题,请作者在两周内速来电或来函联系。