论文部分内容阅读
近年来,随着互联网规模和用户量的不断增加,新的应用和商业模式也在互联网上不断涌现。同时针对互联网的攻击日益增多,互联网上传播的恶意代码种类和数量逐渐攀升,恶意代码自保护能力不断增强。不断扩大的安全威胁不仅使用户蒙受巨大的经济损失,也使得国家面临前所未有的信息安全问题。减轻或消除这些安全威胁,依赖于安全人员对恶意代码的快速、有效分析,通过提取恶意代码的指纹特征和行为特征,防御恶意代码的攻击。恶意代码数量不断攀升,自我保护能力增强,迫切的需要一种快速有效的恶意代码分析系统。恶意代码静态分析方法能够获取恶意代码运行的多条路径,但其因分析效率低,分析过程复杂,恶意代码反静态分析技术更加成熟等因素限制,使其不能满足有效分析海量恶意样本需求。因此当前恶意代码分析主要采用动态行为分析方法,通过实际运行恶意代码,提取其运行过程中行为。动态行为分析方法并不受反反汇编,加壳等反分析技术的影响。当前基于系统虚拟机的恶意代码行为分析系统虽能够自动化分析恶意代码行为,但只支持单任务分析、系统还原时间过长,依然不能满足海量恶意样本的分析需求。同时受限于虚拟机实现方式,容易被反虚拟化的恶意代码逃避分析;而基于沙箱的行为分析系统虽然具备快速的恶意代码行为分析能力,但由于其特权级较低且与恶意代码共存于同一个操作系统中,因此不能有效分析反跟踪、反虚拟化技术的恶意代码。即使伴随硬件辅助虚拟化技术的出现,提升了分析系统的透明性,但依然不能满足海量样本的分析需求。本文通过对现有恶意代码行为分析技术和系统的研究,提出一种满足海量样本分析能力并同时保证分析系统透明性的恶意代码行为分析方法。本方法中使用了轻量级的虚拟机沙箱技术,沙箱能够快速还原分析环境与并行分析恶意样本。但沙箱技术存在透明性不足的问题,为了提高系统整体的透明性,该方法利用硬件辅助虚拟化技术分析恶意代码弥补沙箱透明性存在的不足。为了验证该方法的有效性,本文设计并实现了基于该方法的恶意代码行为分析系统,该系统综合了沙箱分析速度快和硬件辅助虚拟化技术透明性高的优势,同时能够自动收集、分析恶意代码。最后通过与当前系统对比实验,证明本文提出方法的有效性