论文部分内容阅读
随着移动互联网的普及,移动设备在人们的日常活动中扮演了至关重要的角色。安卓作为移动设备市场中最流行的操作系统,已经成为了移动恶意攻击的主要目标,导致安卓环境中各种恶意行为泛滥。在所有恶意行为中,隐私泄露行为由于其巨大的经济利益而最为常见。恶意应用会通过隐蔽的手段窃取用户隐私数据,并出售给第三方牟利,导致用户利益遭受巨大损失。冗余网络传输是另一种常见的恶意行为。恶意应用会伪造网络传输来保持自身进程的活跃,或者利用网络传输秘密泄露隐私数据。这类冗余网络传输不能为用户提供有意义的服务,反而造成设备电量和移动流量消耗增加,甚至可能泄露用户隐私。现有针对这两种恶意行为的研究工作的检测粒度还较粗,难以准确识别此类恶意行为。针对上述问题与挑战,本文开展了下列研究工作:1.针对安卓应用中的隐私泄露行为检测。对隐私泄露的行为模式进行了分析,发现除了传统方法提出的敏感数据流起止点函数这一上下文信息外,隐私泄露行为在触发条件、入口点函数、意图和UI控件这些上下文信息上也与正常数据使用存在明显区别。例如,隐私泄露行为为了躲避检测,可能会使用罕见的触发条件和入口点函数。本文提出了一种基于数据流上下文的隐私泄露检测方案,利用静态分析提取上述五种上下文信息作为特征,使用基于K-means聚类的离群点检测算法来检测安卓应用中的隐私泄露行为。所提出的五种数据流上下文特征能更准确地描述隐私泄露行为,提高了检测精度。基于聚类的离群点检测算法避免了传统基于有监督学习的检测方法恶意样本数量不足的问题。在真实应用上的实验结果显示,该方案的隐私泄露行为识别精确率达到86.49%。2.针对安卓应用中的冗余网络传输活动检测。恶意应用可能会通过网络传输泄露用户隐私信息,或者虚构网络传输提升自身进程优先级来达到保活防杀的目的。这类冗余网络传输不能为用户提供有意义的服务,反而造成了设备电量和移动流量消耗增加,甚至会导致用户隐私遭到泄露。本文提出了一种安卓冗余网络传输检测方案,通过传输速率、关联文件的打开状态等特征来识别网络传输活动的状态,从而判断网络传输是否冗余。该方案对冗余网络传输活动的识别过程不依赖特定网络协议栈的信息。实验结果显示该方案对冗余网络传输活动的识别精确率达到85.57%。