论文部分内容阅读
随着信息化建设不断深入,应用软件与领域业务的融合度越来越高,应用软件已经成为社会、军事、企业等领域中不可分割的重要组成部分。与此同时,软件内在的脆弱性和“黑盒”特性,一方面使得一些个人或组织利用软件存在的漏洞或“后门”制造恶意行为,造成极大的安全隐患,从而让软件安全问题已经成为信息安全领域一个亟待解决的问题;另一方面,国内外针对以软件为核心的信息安全相关研究的不足和产品的缺失,尤其是国内针对关键领域中的国外引进软件安全监测和分析能力不足,使得软件安全领域的研究成为信息安全领域中新的发展方向。面对上述存在的问题,寻找一种针对“黑盒”软件恶意行为的准确、高效的识别方法也就成了软件安全领域的一个研究热点。 本文基于行为跟踪对恶意行为识别技术进行研究,针对传统软件行为跟踪技术的不足和恶意行为监测能力的薄弱之处,本文主要工作从以下几个方面展开: (1)基于软件行为的恶意行为描述方法 软件行为具有层次性,从不同的视角出发,其构成具有差异性。本文从程序设计的角度出发,基于技术成熟度高、工程化程度高和实时监控的需求,将软件运行时的按时间排序的函数调用序列作为软件行为跟踪的目标,并据此来刻画恶意行为。 (2)海量软件行为跟踪技术 本文通过对比分析IAT HOOK和Inline HOOK两种函数HOOK技术的特点,结合两者优势,创新性提出基于小内存管理的堆代码驻留技术和维持栈空间平衡的容器管理技术,实现海量软件行为跟踪。 (3)基于产生式规则的恶意行为建模 恶意行为模型的表达能力决定了恶意行为识别的准确率和效率,本文利用四元组对恶意行为进行形式化描述,同时将恶意行为的建模分为外存级建模和内存级建模。其中,外存级建模采用产生式规则表示方法,并用巴科斯范式进行严格规范;内存级建模采用平衡二叉树、哈希表等数据结构与外存级建模相对应。 (4)基于特征匹配的恶意行为识别技术 基于特征匹配的恶意行为识别技术具有准确快速、误警率低的特点,是目前商用范围最广的恶意行为识别技术。本文基于上述技术进行模型构建,并运用基于平衡二叉树的函数节点粗匹配和基于哈希匹配的函数节点数据约束细匹配算法,提高匹配效率,从而提高恶意行为的识别速度。 本文设计的基于行为跟踪的软件恶意行为识别原型系统,在实际运行测试环境中能够准确地获取软件运行时的软件行为信息,同时能够对软件可能存在的恶意行为进行有效识别。