论文部分内容阅读
随着手机智能化的发展,各式各样的应用软件出现在网络商店中,而其中恶意软件的数量也在急剧增多。动态检测分析方法是一个还在发展中的恶意软件检测方法,主要利用模拟器来模拟软件的运行环境,通过定制的沙盒工具来监控和分析程序的敏感函数调用,最后获得待测软件的所有敏感行为。主流动态分析方法的研究内容包括以下三个方面:软件行为触发、软件行为监控和软件行为分析。本文通过研究发现传统的动态检测系统在软件恶意行为的触发方面还有所欠缺,主要表现在:(1)恶意软件有可能针对动态检测系统中模拟器的特征来进行软件运行环境检测,隐藏自己的恶意行为。(2)随着软件界面越来越复杂化以及混合式App架构的应用越来越普遍,传统的恶意行为触发方法无法全面得触发应用行为。针对上述问题,本文研究主流动态检测技术和Android系统安全机制,设计并实现了一个Android恶意软件动态检测系统。该系统采用C/S架构,主要功能包括在手机端收集用户的个人行为信息和待测软件,在服务器端对动态检测环境进行真机环境模拟,解析AndroidManifest.xml配置文件获取应用相关信息,根据收集到的用户个人信息和提取的软件控件信息生成相应的测试策略,测试完成后将待测应用的敏感行为输出至客户端。本文开展的具体工作如下:一、针对Android软件包含的复杂界面结构和特殊控件类型,本文提出一种新的软件恶意行为触发方法,可以全面、精确、高效地模拟用户操作来遍历软件的UI界面,并对特殊类型的控件进行有效处理,从而完整地触发待测软件的恶意行为。二、针对模拟器环境检测技术,本文记录分析用户的日常行为信息,并从建立模拟用户操作行为模型、改变模拟器系统文件的默认配置、隐藏模拟器的相关特征三个方面入手,研究并实现了真机环境模拟技术,使得恶意软件无法检测当前的模拟器运行环境来隐藏自身恶意行为。三、基于Droid Box沙盒技术,本文研究并设计了一款动态检测系统DynamicDroid。用户只需通过手机上传待测APK文件即可得到完整的软件动态检测结果。该系统支持多种敏感行为检测,提供高效便捷的服务,能够有效帮助用户全面掌握待测软件的所有可疑行为。实验结果表明本文研究的安卓恶意软件动态检测系统能够有效地隐藏自身检测环境,且相对于传统的动态检测系统具有更好的检测效果。