论文部分内容阅读
据360安全中心报道,全球Android智能手机用户在所有移动智能终端用户中所占比重最大,且Android手机用户数量依然在不断增长。然而,在Android智能手机风靡全球的同时,从Android应用市场中涌现出了大量的Android恶意代码。这些恶意代码能够绕过Android的安全机制使用多种攻击方式攻击Android手机,使得Android用户的信息安全受到严重威胁。为缓解这一威胁,本文提出Android恶意代码的静态检测方法、动态检测方法和混合型检测方法。(1)静态检测方法是基于代码的静态分析技术和机器学习的Android恶意代码检测方法。首先,为了得到该方法检测Android恶意代码使用的特征向量,根据编程经验、Google Developer网站关于Android应用开发中各个类的说明文档、静态分析4317个Android恶意代码和选择了基于信息增益的特征选择算法归纳恶意特征库;然后,基于恶意特征库提取特征向量;最后,使用特征向量与SVM分类器检测Android恶意代码。(2)动态检测方法是基于代码的动态分析技术和机器学习的Android恶意代码检测方法。首先,基于Android恶意代码在手机中执行恶意行为时会改变手机状态,归纳出该方法检测Android恶意代码使用的特征向量;然后,为使样本执行恶意行为,基于Android恶意代码执行恶意行为的触发条件编写测试用例;最后,使用特征向量和Decision-Tree分类器检测Android恶意代码。(3)混合型检测方法是结合静态检测方法与动态检测方法的Android恶意代码检测方法。为了降低静态检测方法的误报率和缩短动态监测方法的检测时间,以静态检测方法为第一阶段,动态检测方法为第二阶段,组成混合型检测方法。实验表明静态检测方法能够有效的检测出Android恶意代码,并且基于信息增益的特征选择算法比基于关联性和一致性的特征选择算法更适合检测Android恶意代码;动态检测方法使用的测试用例和使用的特征向量能有效检测出Android恶意代码检测,且同时保证较低的误报率;混合型方法具有静态检测方法和动态检测方法的优点,保证检测准确率的同时,降低了静态检测方法的误报率,缩短了动态检测方法的检测时间。