计算机研究与发展 ›› 2019, Vol. 56 ›› Issue (6): 1252-1262.doi: 10.7544/issn1000-1239.2019.20180548
李振1,2,汤战勇1,2,李政桥1,2,王海1,龚晓庆1,陈峰1,陈晓江1,2,房鼎益1,2
Li Zhen1,2, Tang Zhanyong1,2, Li Zhengqiao1,2, Wang Hai1, Gong Xiaoqing1, Chen Feng1, Chen Xiaojiang1,2, Fang Dingyi1,2
摘要: 近年来,Android操作系统发展迅猛,大量的移动用户使用Android智能设备作为私人通信和工作的工具.Android移动用户的隐私信息随之成为黑色产业从业者的主要攻击目标之一.现有的隐私检测研究主要集中于解决Android应用程序内部的隐私泄露风险,包括程序组件内隐私泄露、组件间隐私泄露以及组件间通信(inter-component communication, ICC)漏洞的检测.然而在实际环境中,不同应用程序间通过协作获取用户隐私的行为广泛存在,这造成大量用户隐私信息被泄露的风险.如何有效检测和防止跨APP组件间隐私泄露是亟待解决的问题.然而Android应用程序中组件数量庞大并且存在大量与跨APP间隐私泄露无关的组件.因此在应用程序之间如何检测可能存在的隐私泄露路径面临严峻的挑战.针对该问题,提出一种构建潜在泄露隐私的组件序列的方法,并利用数据流分析技术实现一个跨APP组件间隐私泄露的检测系统PLDetect.PLDetect解决了现有技术存在的检测结果滞后的问题以及代码覆盖率不全的问题.最后,PLDetect在隐私泄露路径的基础上,使用一种基于加密的隐私泄露防护方法对隐私信息进行加密,保证在不影响应用程序运行时性能的情况下有效阻止隐私数据被恶意传送.最终实验表明,PLDetect在81个应用程序中监测出5组应用程序存在跨APP组件间隐私泄露问题并有效阻断了隐私数据的泄露.
中图分类号: