论文部分内容阅读
自2010年以来,安卓系统已经发展为世界上市场占有率最高的手机操作系统,其开放性吸引了越来越多的应用开发者与手机用户的加入。安卓市场中的各类应用呈井喷式增长,这为用户带来便利的同时,也带来了巨大的隐私信息泄露的隐患。动态污点分析技术是检测隐私泄露的常用技术,也是众多安全研究人员的关注焦点。该技术将污点标签与需追踪的数据进行绑定,通过编译时和运行时的一系列污点逻辑,污点标签跟随数据流动,因此研究人员便可以通过追踪污点标签来判断隐私数据是否遭到泄露。以往的安卓动态污点追踪系统基本依靠Dalvik虚拟机进行设计与实现,然而Google在发布Android 4.4时首次提出ART运行时,并在Android 5.0发布时,正式使用ART运行时替代Dalvik虚拟机,同时自Android 5.0始,安卓系统开始支持64位CPU架构。安卓系统这一系列新特性的出现,为动态污点分析技术在安卓系统上的应用与实现带来了全新的挑战。本文重点研究将安卓新特性与动态污点分析技术相结合的方法,以使动态污点分析技术可以在新版本安卓系统上继续发挥作用。本文分析了 ART运行时与Dalvik虚拟机的区别,提出了一种基于ARM64架构的动态污点分析设计方法,并基于该方法,在Android 6.0的基础上实现了信息流追踪系统TA64。该系统运行于模拟器中,系统实验结果证明,该系统可以检测出应用软件的隐私信息泄露问题,且不会对用户体验带来太大的影响,对安卓APP的安装时间和启动时间的影响分别低于15%和10%。