摘要 | 第4-6页 |
ABSTRACT | 第6-7页 |
第一章 绪论 | 第11-16页 |
1.1 研究背景及意义 | 第11-12页 |
1.2 国内外研究现状 | 第12-13页 |
1.3 研究内容 | 第13-15页 |
1.4 论文结构 | 第15-16页 |
第二章 二进制软件漏洞和漏洞挖掘 | 第16-26页 |
2.1 软件漏洞 | 第16-23页 |
2.1.1 软件漏洞定义 | 第16页 |
2.1.2 二进制可执行程序漏洞特点 | 第16-17页 |
2.1.3 二进制可执行漏洞分类 | 第17-23页 |
2.2 二进制可执行程序漏洞挖掘技术 | 第23-25页 |
2.2.1 静态智能技术 | 第24页 |
2.2.2 动态智能技术 | 第24-25页 |
2.3 本章小结 | 第25-26页 |
第三章 基于模式匹配的漏洞隐患点提取 | 第26-44页 |
3.1 二进制程序漏洞模式的研究目标 | 第26页 |
3.2 二进制程序漏洞模式 | 第26-33页 |
3.2.1 基于危险函数调用的缓冲区漏洞模式 | 第26-29页 |
3.2.2 基于循环写内存的缓冲区漏洞模式 | 第29-31页 |
3.2.3 基于符号扩展指令的整数溢出漏洞模式 | 第31-33页 |
3.3 二进制程序漏洞隐患点提取 | 第33-41页 |
3.3.1 反汇编工具IDA及其扩展功能简介 | 第33-35页 |
3.3.2 IDAPython脚本编写基础 | 第35-36页 |
3.3.3 静态分析基础 | 第36-37页 |
3.3.4 基于漏洞模式匹配的二进制程序漏洞隐患点提取 | 第37-41页 |
3.4 漏洞模式正确性验证 | 第41-43页 |
3.4.1 DFCBOF模式验证 | 第41-42页 |
3.4.2 LMWBOF模式验证 | 第42-43页 |
3.4.3 MsUIOF模式验证 | 第43页 |
3.5 本章小结 | 第43-44页 |
第四章 样本优化与动态污点分析技术 | 第44-57页 |
4.1 模糊测试样本优化技术 | 第44-50页 |
4.1.1 代码覆盖率 | 第44-46页 |
4.1.2 基于隐患点最大覆盖率的样本优化 | 第46-49页 |
4.1.3 实验验证 | 第49-50页 |
4.2 离线动态污点分析技术 | 第50-56页 |
4.2.1 污点数据模型 | 第50-51页 |
4.2.2 一般动态污点分析框架 | 第51-53页 |
4.2.3 离线动态污点分析系统 | 第53-56页 |
4.3 本章小结 | 第56-57页 |
第五章 动静结合的智能漏洞挖掘系统设计与实现 | 第57-62页 |
5.1 动静结合的智能漏洞挖掘系统 | 第57-59页 |
5.1.1 漏洞隐患点提取模块 | 第57-58页 |
5.1.2 离线动态污点分析模块 | 第58页 |
5.1.3 样本优化模块 | 第58页 |
5.1.4 样本重构模块 | 第58页 |
5.1.5 模糊测试模块 | 第58-59页 |
5.1.6 异常分析模块 | 第59页 |
5.2 0Day漏洞验证 | 第59-61页 |
5.2.1 二进制漏洞隐患点提取 | 第59-60页 |
5.2.2 样本优化 | 第60页 |
5.2.3 模糊测试 | 第60页 |
5.2.4 异常分析 | 第60-61页 |
5.3 本章小结 | 第61-62页 |
第六章 总结与展望 | 第62-64页 |
6.1 全文总结 | 第62页 |
6.2 下一步研究方向 | 第62-64页 |
参考文献 | 第64-66页 |
附录 | 第66-70页 |
致谢 | 第70-71页 |
攻读学位期间发表或已录用的学术论文 | 第71页 |