论文部分内容阅读
安卓操作系统的开放性使得其成为目前世界上最流行的智能手机操作系统,然而这种开放性也吸引了很多黑客开发安装恶意软件。这些恶意软件以资费消耗、隐私窃取、恶意扣费、远程控制等为目的,给用户带来严重的经济损失与隐私泄露等问题。因此,对于每日都有大量应用程序上线及更新的安卓市场来说,准确、快速的检测恶意软件成为了一个巨大的挑战。目前己经有很多算法通过手工方式从安卓应用程序中提取特征来达到检测安卓恶意软件的目的。不过,恶意软件开发者总是能够找到层出不穷的代码混淆方法,在保持应用程序恶意性的基础上使得检测算法的准确率大大降低。本文针对以上问题,从行为模式角度出发,利用深度学习技术,对安卓恶意软件的静态检测算法进行了研究。本文设计了一种基于行为模式的安卓恶意软件静态检测深度学习算法。该算法包括面向安卓反编译代码的特征提取、针对特征特点的数字化向量编码和基于稠密注意力机制的多层双向LSTM神经网络三部分。围绕这三部分内容,本文首先研究了如何从安卓反编译代码中提取能够反应安卓应用程序恶意行为的行为模式特征以及安卓应用程序静态属性的属性特征;然后,本文提出了根据行为模式特征具有相似性的特点进行相应编码的方案。该方案使用Word2vec编码方式进行数字化向量编码,根据属性特征的相互独立性以及维度有限性使用One-Hot编码方式进行数字化向量编码;之后,本文在注意力机制的基础上设计了稠密注意力机制,同时利用多层双向LSTM神经网络更多的发掘行为模式特征之间的前后逻辑关系来使得检测的更加准确。本文通过控制变量实验分析了所提算法中各部分的不同配置对检测结果的影响。本文所提算法在23200个安卓应用程序样本集上进行了实验,达到了97.7%的准确率,且每个安卓应用程序的平均检测时间仅为1.36秒。最后对今年来的方法进行实验比较,证明本文所提算法不仅在准确程度上优于同类算法,在检测速度上也有所提升。