论文部分内容阅读
随着互联网技术的不断发展,移动互联网应运而生,并以其快捷性、移动性、业务丰富性、服务质量高等特点成为现今最流行的传媒之一。移动互联网的业务承载于移动智能终端。在移动智能终端Android、iOS和WindowsPhone三大主流平台中,Android始终保持统治地位。然而,随着Android智能终端的加速普及和Android应用市场的不断发展,相关安全威胁也开始逐渐显现,Android平台的恶意应用检测成为亟需解决的重要安全问题。 针对当前Android恶意应用带来的严重安全问题,本文对Android平台恶意应用检测技术方面的成果进行了系统的总结,重点研究了基于机器学习算法的Android恶意应用检测技术,具体如下: (1)提出一种基于数据流深度学习算法的Android恶意应用检测方法。首先,利用开源的静态数据流分析工具FlowDroid提取Android应用程序内部所有的数据流。然后,使用SUSI分类对数据流特征进行维归约处理,并构建数据流特征库。最后,设计了数据流深度学习算法(Data-flow Deep Belief Network,DDBN)对大量恶意应用与安全应用的数据流特征进行训练分析,构建深度学习检测模型,用于检测未知的恶意应用。DDBN算法明确突出了特征学习的重要性,能够得到更高层的静态数据流表示,从而更好地描述应用程序。实验结果表明,基于DDBN算法的Android恶意应用检测方法在准确率和执行效率上表现良好,DDBN算法显著优于传统的机器学习算法。 (2)针对Android恶意应用检测提出一种基于频率的动态行为特征选择方法。首先,使用DroidBox和CopperDroid等动态行为提取工具,提取恶意应用和安全应用在运行过程中的动态行为序列特征。然后,提出一种基于频率的特征选择算法(Critical Behavior Select,CBehaviorSel),能够根据行为特征在安全应用集和恶意应用集中出现的频率差,选取其中更关键性的行为特征。最后,利用CBehaviorSel算法选取的关键行为特征,为每个恶意应用家族构建关键行为序列库,从而为后续的检测打下基础。实验结果表明,与其他的特征选择算法相比,CBehaviorSel算法能够在选取更关键的行为特征的同时确保对原始特征集的覆盖率,从而提高恶意应用检测的准确率。 (3)提出一种改进的序列模式挖掘算法(Abbreviated Project Mining of Runtime Behaviors based on PrefixSpan,RB_AprefixSpan),能够依次对每个恶意应用家族的关键行为序列库挖掘出频繁行为序列模式,并构建行为模式库;之后,依据行为模式库中的频繁行为模式,对待检测应用的行为序列特征进行安全性判断。实验结果表明,与其他的序列模式挖掘算法相比,RB_AprefixSpan算法具有更优的时间和空间性能;同时,基于RB_AprefixSpan算法的Android恶意应用检测方法针对恶意应用变体和未知的恶意应用都有较好的检测效果。 综上所述,本文研究的重点围绕着基于机器学习算法的Android恶意应用检测技术的“特征处理”和“模型训练”两个阶段展开,分别提出了针对性的特征选择算法和模型训练算法。实验结果表明,本文所提的Android恶意应用检测方法能够有效地提高检测的性能,具有现实意义。