表目录 | 第8-9页 |
图目录 | 第9-11页 |
摘要 | 第11-13页 |
ABSTRACT | 第13-14页 |
第一章 绪论 | 第15-27页 |
1.1 课题研究背景 | 第15-17页 |
1.1.1 程序恶意性分析工作面临的困难 | 第15-16页 |
1.1.2 逆向分析在程序恶意性判定方面的优势 | 第16-17页 |
1.2 课题研究内容 | 第17-19页 |
1.2.1 程序恶意性分析系统架构研究 | 第17页 |
1.2.2 程序恶意性判定模型研究 | 第17-18页 |
1.2.3 程序恶意性判定推理算法的研究与实现 | 第18页 |
1.2.4 恶意代码反汇编技术的研究与实现 | 第18页 |
1.2.5 恶意行为识别技术的研究与实现 | 第18-19页 |
1.3 相关研究 | 第19-24页 |
1.3.1 信息收集 | 第19-20页 |
1.3.2 特征生成 | 第20-21页 |
1.3.3 行为模型 | 第21-22页 |
1.3.4 判定算法 | 第22-23页 |
1.3.5 种类识别 | 第23-24页 |
1.4 论文的主要工作和创新 | 第24-25页 |
1.5 论文结构 | 第25-27页 |
第二章 基于证据推理的程序恶意性判定系统架构 | 第27-36页 |
2.1 系统架构 | 第27-29页 |
2.2 相关工作 | 第29-32页 |
2.2.1 基于特征扫描的系统架构 | 第29页 |
2.2.2 基于模拟执行的系统架构 | 第29-30页 |
2.2.3 基于逆向分析的系统架构 | 第30-32页 |
2.3 实现中的关键问题 | 第32-34页 |
2.3.1 推理模型的研究 | 第32-33页 |
2.3.2 证据推理算法的研究与实现 | 第33页 |
2.3.3 恶意代码反汇编的研究与实现 | 第33-34页 |
2.3.4 识别程序行为的研究与实现 | 第34页 |
2.4 关键问题的解决方法 | 第34-35页 |
2.4.1 证据推理应用于程序恶意性判定 | 第34页 |
2.4.2 基于支持度的程序行为合成方法 | 第34页 |
2.4.3 基于数据流与控制流协同的反汇编方法 | 第34-35页 |
2.4.4 基于模型检测的程序恶意行为识别方法 | 第35页 |
2.5 小结 | 第35-36页 |
第三章 程序恶意性判定的推理模型研究 | 第36-53页 |
3.1 问题的提出 | 第36-38页 |
3.1.1 程序恶意性推理的特征 | 第36-37页 |
3.1.2 引入证据推理的必要性 | 第37-38页 |
3.2 证据理论概述 | 第38-42页 |
3.2.1 证据理论的数学基础 | 第38-40页 |
3.2.2 证据区间 | 第40-41页 |
3.2.3 证据合成 | 第41-42页 |
3.2.4 应用证据理论存在的难题 | 第42页 |
3.3 相关工作 | 第42-45页 |
3.3.1 N-gram模型 | 第42-43页 |
3.3.2 控制流模型 | 第43-44页 |
3.3.3 语义模型 | 第44页 |
3.3.4 相似度模型 | 第44-45页 |
3.4 ERMD模型 | 第45-47页 |
3.4.1 ERMD模型的设计 | 第45-46页 |
3.4.2 ERMD模型的数学描述 | 第46-47页 |
3.5 ERMD模型的求解 | 第47-52页 |
3.5.1 识别框架的确定 | 第47页 |
3.5.2 特征行为相似度的获取 | 第47-48页 |
3.5.3 概率分配函数的获取 | 第48-50页 |
3.5.4 证据相关性的处理 | 第50页 |
3.5.5 证据合成方法 | 第50-52页 |
3.5.6 结论约简 | 第52页 |
3.6 小结 | 第52-53页 |
第四章 程序特征行为的合成算法研究与实现 | 第53-83页 |
4.1 程序恶意性判定研究的基本内容 | 第53-55页 |
4.1.1 程序恶意性判定的流程 | 第53-54页 |
4.1.2 合成算法设计的要求 | 第54-55页 |
4.2 特征行为的相似度计算 | 第55-57页 |
4.2.1 特征行为的获取 | 第55-56页 |
4.2.2 特征行为的相似度计算 | 第56-57页 |
4.3 概率分配函数的获取 | 第57-61页 |
4.3.1 神经网络 | 第57-59页 |
4.3.2 概率分配函数求解 | 第59-61页 |
4.4 程序特征行为合成算法的研究与实现 | 第61-70页 |
4.4.1 证据相关性处理 | 第61-64页 |
4.4.2 冲突证据合成 | 第64-69页 |
4.4.3 判决融合 | 第69-70页 |
4.5 合成算法的性质 | 第70-78页 |
4.5.1 算法的基本性质 | 第70-71页 |
4.5.2 算法的悖论 | 第71-75页 |
4.5.3 算法的复杂性 | 第75-78页 |
4.6 实验与分析 | 第78-81页 |
4.6.1 判定性能测试 | 第78-79页 |
4.6.2 抗混淆测试 | 第79-81页 |
4.6.3 综合测试 | 第81页 |
4.7 小结 | 第81-83页 |
第五章 针对恶意代码的反汇编算法研究与实现 | 第83-111页 |
5.1 问题的提出 | 第83-86页 |
5.1.1 传统反汇编方法存在的问题 | 第83-85页 |
5.1.2 恶意代码反汇编的必要性 | 第85-86页 |
5.2 相关工作 | 第86-87页 |
5.3 干扰反汇编的方法 | 第87-91页 |
5.3.1 垃圾数据插入 | 第87-88页 |
5.3.2 子程序异常返回 | 第88-90页 |
5.3.3 直接跳转间接化 | 第90-91页 |
5.4 恶意代码反汇编算法的设计 | 第91-93页 |
5.4.1 对干扰反汇编方法的分析 | 第91-92页 |
5.4.2 恶意代码反汇编策略 | 第92-93页 |
5.5 恶意代码反汇编算法的实现 | 第93-108页 |
5.5.1 恶意代码反汇编框架 | 第93-94页 |
5.5.2 构建控制流图 | 第94-96页 |
5.5.3 过程返回地址的确定 | 第96-100页 |
5.5.4 间接转移地址的确定 | 第100-106页 |
5.5.5 空隙代码的提取 | 第106-108页 |
5.6 实验与分析 | 第108-110页 |
5.6.1 对ELF格式程序的反汇编能力测试 | 第108页 |
5.6.2 对PE格式程序的反汇编能力测试 | 第108-110页 |
5.7 小结 | 第110-111页 |
第六章 基于模型检测的恶意行为识别技术的研究与实现 | 第111-135页 |
6.1 问题的提出 | 第111-112页 |
6.1.1 行为识别的必要性 | 第111-112页 |
6.1.2 恶意行为识别存在的问题 | 第112页 |
6.2 相关工作 | 第112-113页 |
6.3 程序行为分析 | 第113-123页 |
6.3.1 指令序列分析 | 第113-116页 |
6.3.2 库函数调用图分析 | 第116-120页 |
6.3.3 库函数参数和返回值分析 | 第120-123页 |
6.4 恶意行为识别设计 | 第123-126页 |
6.4.1 模型检测 | 第123-125页 |
6.4.2 基于模型检测的识别策略 | 第125-126页 |
6.5 恶意行为识别实现 | 第126-131页 |
6.5.1 抽取程序模型 | 第126-128页 |
6.5.2 描述恶意行为 | 第128-130页 |
6.5.3 行为识别 | 第130-131页 |
6.6 实验与分析 | 第131-134页 |
6.7 小结 | 第134-135页 |
第七章 总结与展望 | 第135-139页 |
7.1 论文工作总结 | 第135-136页 |
7.2 下一步研究工作展望 | 第136-139页 |
参考文献 | 第139-151页 |
作者简历 攻读博士学位期间完成的主要工作 | 第151-153页 |
致谢 | 第153页 |