摘要 | 第1-5页 |
Abstract | 第5-8页 |
第1章 绪论 | 第8-11页 |
·课题背景 | 第8-9页 |
·国内外研究现状 | 第9-10页 |
·论文研究内容 | 第10页 |
·论文结构 | 第10-11页 |
第2章 缓冲区溢出漏洞分析的基本方法 | 第11-18页 |
·缓冲区溢出原理 | 第11-12页 |
·缓冲区溢出漏洞分析方法 | 第12-16页 |
·静态分析 | 第12-14页 |
·动态分析 | 第14-16页 |
·其它缓冲区溢出漏洞检测方法 | 第16-17页 |
·本章小节 | 第17-18页 |
第3章 缓冲区溢出漏洞的静态分析方法 | 第18-37页 |
·几种缓冲区溢出漏洞静态分析及工具 | 第18-20页 |
·C/C++中缓冲区溢出漏洞分类方法 | 第20-31页 |
·Write/Read(读/写) | 第21页 |
·Uper/Lower bound(上/下限) | 第21页 |
·Data type(数据类型) | 第21-22页 |
·Memory Location(内存位置) | 第22-23页 |
·Scope(作用域) | 第23页 |
·Container(存储器) | 第23-24页 |
·Pointer(指针) | 第24页 |
·Index Complexity(指数复杂程度) | 第24页 |
·Address Complexity(地址复杂程度) | 第24页 |
·Alias of Buffer Address(缓冲地址别名) | 第24-25页 |
·Alias of Buffer Index(缓冲指数别名) | 第25页 |
·Local Control Flow(本地控制流) | 第25-26页 |
·Secondary Control Flow(次级控制流) | 第26-27页 |
·Loop Structure(循环结构) | 第27-28页 |
·Loop Complexity(循环复杂度) | 第28页 |
·Asynchrony(异步) | 第28-29页 |
·Taint(外部输入) | 第29页 |
·Runtime environment dependence(对运行环境的依赖性) | 第29-30页 |
·Magnitude(溢出范围) | 第30页 |
·Continuous/Discrete(连续/离散) | 第30页 |
·Singed/unsigned mismatch(有符号与无符号混淆) | 第30-31页 |
·几种静态分析工具性能分析 | 第31-35页 |
·结论分析 | 第35-36页 |
·本章小结 | 第36-37页 |
第4章 静态分析和动态分析相结合的检测方法 | 第37-52页 |
·相关知识 | 第37-39页 |
·IDA Pro反汇编软件介绍 | 第37-39页 |
·环境错误注入分析 | 第39页 |
·系统结构 | 第39-45页 |
·系统框架 | 第39-41页 |
·系统实现 | 第41-43页 |
·软件实现 | 第43-45页 |
·系统测试 | 第45-52页 |
·手工分析 | 第45-48页 |
·使用IDA Pro进行反汇编 | 第48-49页 |
·使用动静态结合检测系统对程序进行检测 | 第49-50页 |
·本章小结 | 第50-52页 |
第5章 总结与展望 | 第52-54页 |
·总结 | 第52页 |
·展望 | 第52-54页 |
致谢 | 第54-55页 |
参考文献 | 第55-58页 |
附录 | 第58页 |