C/C++程序安全检查工具中数据流分析器的设计与实现
| 摘要 | 第1-4页 |
| Abstract | 第4-7页 |
| 第一章 绪论 | 第7-13页 |
| ·研究背景 | 第7-9页 |
| ·程序分析和静态检查 | 第7-8页 |
| ·静态安全检查相关工作 | 第8-9页 |
| ·数据流分析相关工作 | 第9页 |
| ·C/C++程序安全检查工具概述 | 第9-11页 |
| ·本文工作及内容组织 | 第11-13页 |
| ·本文的工作 | 第11-12页 |
| ·本文的内容组织 | 第12-13页 |
| 第二章 相关工具技术和数据流分析基础 | 第13-21页 |
| ·相关工具和技术 | 第13-17页 |
| ·符号表 | 第13页 |
| ·ANTLR和抽象语法树 | 第13-15页 |
| ·控制流图 | 第15-16页 |
| ·函数依赖分析 | 第16-17页 |
| ·数据流分析技术 | 第17-19页 |
| ·数据流分析概述 | 第17-18页 |
| ·数据流方程 | 第18页 |
| ·迭代数据流分析方法 | 第18-19页 |
| ·本章小结 | 第19-21页 |
| 第三章 数据流分析器的设计与实现 | 第21-43页 |
| ·整体数据流分析方案 | 第21-24页 |
| ·控制流路径 | 第21-22页 |
| ·基于控制流路径的数据流分析方法 | 第22-23页 |
| ·本文的数据流分析方案 | 第23-24页 |
| ·数据流分析器的整体设计 | 第24-25页 |
| ·路径管理模块的设计与实现 | 第25-33页 |
| ·路径管理模块中数据结构的设计 | 第25-28页 |
| ·控制流路径搜索算法 | 第28-33页 |
| ·数据流分析驱动模块的设计与实现 | 第33-37页 |
| ·DataFlowAnalyzer类的设计 | 第33-36页 |
| ·数据流分析驱动算法 | 第36-37页 |
| ·AST遍历模块的设计与实现 | 第37-41页 |
| ·抽象语法树遍历器的设计 | 第37-40页 |
| ·利用AST遍历器计算数据流信息 | 第40-41页 |
| ·数据流分析器的扩展 | 第41-42页 |
| ·本章小结 | 第42-43页 |
| 第四章 整型变量值分析的设计与实现 | 第43-57页 |
| ·别名分析概述 | 第43-44页 |
| ·整型变量值分析概述 | 第44页 |
| ·整型变量值信息存储结构的设计 | 第44-46页 |
| ·整型变量值分析的实现 | 第46-56页 |
| ·全局整型变量值信息收集 | 第46-47页 |
| ·整型变量值信息传播 | 第47-48页 |
| ·获取符号条目 | 第48-50页 |
| ·表达式求值 | 第50-52页 |
| ·整型变量值信息更新 | 第52-53页 |
| ·跨过程整型变量值分析 | 第53-55页 |
| ·猜测整型变量值 | 第55-56页 |
| ·利用整型变量值信息进行数组越界检查 | 第56页 |
| ·本章小结 | 第56-57页 |
| 第五章 实例分析 | 第57-61页 |
| 第六章 结束语 | 第61-63页 |
| 致谢 | 第63-65页 |
| 参考文献 | 第65-66页 |