首页> 中文学位 >面向软件安全检查工具的符号表设计与实现
【6h】

面向软件安全检查工具的符号表设计与实现

代理获取

目录

文摘

英文文摘

第一章 绪论

1.1 研究背景

1.1.1 软件安全与C/C++语言安全

1.1.2 相关工作

1.2 论文背景

1.3 论文的主要工作

1.4 本文的组织

第二章 符号表整体结构设计

2.1 设计概述

2.2 符号表整体结构

2.2.1 作用域的结构设计

2.2.2 符号的层次结构设计

2.2.3 类型符号的层次结构设计

2.3 符号表的操作方式

2.3.1 增加符号

2.3.2 更新符号信息

2.3.3 查找符号

2.4 本章小结

第三章 符号表中基本符号的设计

3.1 简单符号的设计

3.1.1 变量

3.1.2 指针、数组和引用符号的设计

3.1.3 命名空间符号的设计

3.2 结构体符号的设计

3.2.1 结构体类型的数据结构

3.2.2 结构体继承关系设计

3.2.3 结构体符号表

3.3 函数的设计

3.3.1 函数符号类层次和存储信息

3.3.2 函数符号表

3.3.3 函数的类型

3.3.4 函数声明和定义的绑定

3.3.5 类体外函数定义的存储

3.3.6 普通重载函数的解析

3.4 运算符函数

3.4.1 内建运算符的存储

3.4.2 运算符函数重载解析

3.5 本章小结

第四章 符号表中模板的设计

4.1 模板参数

4.2 函数模板的处理

4.2.1 函数模板的存储结构

4.2.2 函数模板的特化

4.2.3 函数模板实参推演

4.2.4 函数模板的实例化

4.2.5 函数模板的重载解析

4.3 类模板的处理

4.3.1 类模板的存储

4.3.2 类模板的实例化

4.3.3 类模板的特化

4.4 本章小结

第五章 基于符号表的安全检查

5.1 为后续安全检查提供的帮助

5.1.1 指针的安全检查

5.1.2 数组越界安全检查

5.1.3 跨过程安全检查

5.1.4 类型匹配检查

5.1.5 易造成缓冲区溢出的危险函数检查

5.1.6 面向对象机制中的安全漏洞检查

5.2 本章小结

第六章 结束语

致谢

参考文献

研究成果

附录A 函数模板实例化的算法集

附录B 类模板实例化的算法集

展开▼

摘要

随着人们对软件安全问题重视程度的提高,如何快速高效地检测出软件的安全漏洞已成为当前计算机安全领域研究的一个重要课题。本文针对一个C/C++程序的静态安全检查工具,设计与实现了其中的符号表子系统。该符号表主要用于收集源程序中的符号信息,并提供给安全检查工具使用。本文首先提出了符号表的整体设计框架,分析了相关数据结构的设计;其次阐述了符号表子系统在实现中的主要问题和解决方案;最后列举了符号表子系统在安全检查过程中的提供的有效支持。
   本文的重点在于研究作用域结构的设计,变量、结构体、函数、模板等符号在符号表中的存储和操作的设计,难点在于如何在符号表中实现函数重载解析和模板的实例化、特化的过程。提出的符号表的基础架构基于C/C++ISO标准中的语法构建,适用于所有C/C++语言的编译器前端架构,并能用于C/C++语言程序安全检查。经安全检查后端的实践检验,符号表子系统能够很好的应用于安全检查工具。同时,符号表架构具有良好的扩展性,能够支持多语言和多平台。该架构对今后同类系统的研究和开发有一定的参考价值。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号