基于源码分析的软件安全测试技术研究
摘要 | 第1-5页 |
ABSTRACT | 第5-9页 |
第1章 软件测试技术研究背景 | 第9-15页 |
·软件测试研究背景 | 第9页 |
·软件测试方法研究背景 | 第9-11页 |
·软件测试工具分类 | 第11-15页 |
·白盒测试工具 | 第11-12页 |
·黑盒测试工具 | 第12-13页 |
·测试管理工具 | 第13页 |
·专用测试工具 | 第13页 |
·测试辅助工具 | 第13-15页 |
第2章 静态分析软件测试技术 | 第15-25页 |
·传统软件测试方法的缺陷 | 第15-16页 |
·静态分析测试原理分析 | 第16-19页 |
·模型检测 | 第16页 |
·符号执行 | 第16-17页 |
·类型推断 | 第17页 |
·数据流分析 | 第17-18页 |
·约束分析 | 第18页 |
·写入程序编译扩展发现安全漏洞 | 第18-19页 |
·静态软件安全测试工具综述 | 第19-21页 |
·静态测试存在的问题 | 第21页 |
·基于缺陷模型的静态代码分析 | 第21-25页 |
·研究意义 | 第21-22页 |
·软件模型分类 | 第22-25页 |
第3章 代码安全漏洞 | 第25-48页 |
·软件安全研究背景 | 第25页 |
·软件安全漏洞分类 | 第25-27页 |
·数值泄露 | 第25-26页 |
·对象变量合并 | 第26页 |
·垃圾回收器访问权限 | 第26页 |
·方法存储静态域问题 | 第26页 |
·有关域的相关问题 | 第26-27页 |
·程序设计语言存在的安全漏洞 | 第27-48页 |
·Java语言安全漏洞分析 | 第27-35页 |
·C/C++语言安全漏洞分析 | 第35-48页 |
第4章 DTS_CPP项目介绍 | 第48-54页 |
·DTS_CPP项目执行流程 | 第48-49页 |
·模块功能 | 第49-54页 |
·抽象语法树 | 第49-50页 |
·控制流图 | 第50-51页 |
·符号表 | 第51页 |
·区间运算 | 第51-52页 |
·故障模式状态机 | 第52-54页 |
第5章 DTS_CPP项目检测算法介绍 | 第54-74页 |
·通用算法 | 第54页 |
·C++缓冲区溢出 | 第54-61页 |
·造成缓冲区溢出的函数 | 第54-56页 |
·缓冲区溢出检测算法 | 第56-57页 |
·缓冲区溢出检测状态机 | 第57页 |
·缓冲区溢出测试结果举例 | 第57-61页 |
·C++竞争条件 | 第61-68页 |
·引起竞争条件的函数 | 第61-63页 |
·竞争条件检测状态机 | 第63页 |
·竞争条件测试结果举例 | 第63-68页 |
·C++数组越界 | 第68-74页 |
·对数组越界的检测 | 第68-69页 |
·数组越界检测状态机 | 第69页 |
·数组越界测试结果举例 | 第69-74页 |
第6章 结论 | 第74-76页 |
·研究工作总结 | 第74-75页 |
·展望 | 第75-76页 |
参考文献 | 第76-78页 |
致谢 | 第78-79页 |
作者攻读学位期间发表的学术论文目录 | 第79页 |