基于二叉决策图的别名分析研究
| 摘要 | 第1-4页 |
| Abstract | 第4-7页 |
| 第一章 绪论 | 第7-13页 |
| ·研究背景 | 第7-9页 |
| ·C/C++程序安全检查的现状 | 第7-8页 |
| ·别名分析在程序安全分析中的作用及研究现状 | 第8-9页 |
| ·C/C++静态安全检查工具及别名分析 | 第9-11页 |
| ·工具的整体框架 | 第9-10页 |
| ·别名分析模块 | 第10-11页 |
| ·论文的研究内容和论文的组织 | 第11-13页 |
| 第二章 别名分析的整体设计 | 第13-23页 |
| ·别名分析的相关技术 | 第13-17页 |
| ·ANTLR和抽象语法树 | 第13-16页 |
| ·符号表系统 | 第16页 |
| ·控制流图 | 第16-17页 |
| ·别名信息表示方法 | 第17-18页 |
| ·别名分析方法的选择 | 第18-20页 |
| ·过程内分析方法 | 第18-19页 |
| ·过程间分析方法 | 第19-20页 |
| ·完善别名信息的推导 | 第20页 |
| ·别名分析的框架 | 第20-23页 |
| 第三章 别名信息的表示与推导 | 第23-39页 |
| ·基于二叉决策图的别名信息表示 | 第23-31页 |
| ·二叉决策树的构造方法 | 第23-26页 |
| ·二叉决策图的定义及相应操作 | 第26-31页 |
| ·基于Datalog的别名信息推导 | 第31-33页 |
| ·Datalog中的谓词和原子 | 第31-32页 |
| ·Datalog规则 | 第32-33页 |
| ·系统中的谓词和规则设计 | 第33-39页 |
| 第四章 过程内的别名分析 | 第39-61页 |
| ·域敏感的别名分析 | 第40-42页 |
| ·数组类型的处理 | 第42-45页 |
| ·流敏感的别名分析 | 第45-57页 |
| ·赋值语句的相关定义 | 第45-46页 |
| ·赋值语句的左右目标集合 | 第46-53页 |
| ·赋值语句的分析算法 | 第53-55页 |
| ·初始化声明语句处理 | 第55-57页 |
| ·路径敏感的别名分析 | 第57-58页 |
| ·类型安全的别名分析 | 第58-61页 |
| ·类型信息的收集 | 第58-59页 |
| ·类型信息的作用 | 第59-61页 |
| 第五章 过程间的别名分析 | 第61-75页 |
| ·过程间敏感分析的相关技术 | 第61-63页 |
| ·调用图 | 第61-63页 |
| ·扩充变量 | 第63页 |
| ·基于总结的过程间敏感别名分析 | 第63-72页 |
| ·别名分析从调用点向被调用函数的传播 | 第65-70页 |
| ·函数入口处别名信息相容性检测 | 第70页 |
| ·函数调用点后别名信息的求取 | 第70-72页 |
| ·实例分析 | 第72-75页 |
| 第六章 基于别名分析的安全检查 | 第75-81页 |
| ·内存资源漏洞的检测 | 第75-78页 |
| ·数组访问越界 | 第78-81页 |
| 第七章 结束语 | 第81-83页 |
| 致谢 | 第83-85页 |
| 参考文献 | 第85-86页 |