学位论文 > 优秀研究生学位论文题录展示

基于二进制程序的软件缺陷分析及其测试数据生成系统的设计与实现

作 者: 王禹
导 师: 崔宝江
学 校: 北京邮电大学
专 业: 信号与信息处理
关键词: 软件缺陷 测试数据自动生成 覆盖目标 动态执行 符号执行 路径引导
分类号: TP311.52
类 型: 硕士论文
年 份: 2011年
下 载: 78次
引 用: 1次
阅 读: 论文下载
 

内容摘要


主动发掘并分析软件安全漏洞,对网络攻防具有重要的意义,软件缺陷分析工作日益重要。基于二进制程序的软件缺陷分析方法因其具有普遍适用性,具有重要意义。符号执行技术作为一种精确的软件缺陷分析检测方法成为当前研究的热点。但由于符号执行技术进行路径敏感的遍历式检测,会出现较为严重的“路径组合爆炸”问题,因而缓解路径爆炸成为该技术实用化的一个重要方面。软件程序中的路径数量往往非常庞大,对程序的每一条路径都进行测试是不现实的,有时也是没有必要的。有时可能更关心程序中某段语句的执行状态,此时仅关心使程序运行到该目标语句的程序执行路径。为此,本文提出了覆盖目标测试数据自动生成方法,生成的测试数据覆盖程序执行路径中通过目标语句的所有路径。与进行路径敏感的遍历式检测相比,进行重点路径的分析检测使得对程序的检测有了选择性。覆盖目标的测试数据自动生成方法使有重点有选择的程序缺陷分析检测成为可能。本测试数据生成方法基于二进制程序,不依赖于源码。它通过回溯路径的方法自动获取可达目标语句的程序路径,并通过路径引导的方法自动为获得的路径寻求相应的测试数据。路径引导是一种全新的路径测试数据生成方法,它基于程序的实际动态执行,并将符号执行静态技术结合到实际执行中。采用路径引导的方法可以极大限度的降低生成路径测试数据所需要的运行反馈次数,与已有的路径测试数据生成方法相比,所需要的运行次数大大的降低,从而极大的提高了生成测试数据的效率。

全文目录


摘要  4-5
ABSTRACT  5-9
第一章 引言  9-13
  1.1 研究背景及意义  9-10
  1.2 主要研究工作和创新点  10-11
  1.3 论文的组织结构  11-13
第二章 软件漏洞检测分析方法的研究现状  13-22
  2.1 软件漏洞的概念  13
  2.2 软件漏洞检测分析现状  13-16
  2.3 基于二进制程序的漏洞分析检测研究现状  16-19
    2.3.1 二进制文件概述  16-17
    2.3.2 反汇编技术  17-18
    2.3.3 二进制代码分析现状  18-19
  2.4 漏洞分析检测的主要研究方法  19-21
    2.4.1 代码动态分析  19-20
    2.4.2 代码静态分析  20-21
  2.5 本章小结  21-22
第三章 测试数据生成方法的研究现状  22-27
  3.1 随机法  22
  3.2 静态法  22-23
    3.2.1 符号执行  23
    3.2.2 区间算术法  23
  3.3 动态法  23-24
    3.3.1 爬山法  24
    3.3.2 迭代松弛法  24
  3.4 试探法  24-25
    3.4.1 遗传算法  25
    3.4.2 模拟退火算法  25
  3.5 总结  25-27
第四章 覆盖目标软件缺陷分析及其测试数据生成方法  27-32
  4.1 覆盖目标的软件缺陷分析检测方法  27-28
    4.1.1 路径敏感的遍历式检测  27-28
    4.1.2 有重点的选择性检测  28
  4.2 覆盖目标的测试数据生成方法及其特点  28-30
  4.3 系统架构  30-31
    4.3.1 路径确定模块  30-31
    4.3.2 路径引导模块  31
  4.4 本章小结  31-32
第五章 覆盖目标的测试数据生成方法详细设计及系统分析  32-55
  5.1 回溯路径部分  32-43
  5.2 路径引导部分  43-55
    5.2.1 系统流程  44-53
    5.2.2 测试数据生成方法分析比较  53-55
第六章 实例验证和对比验证  55-61
  6.1 实例验证  55-59
  6.2 对比分析  59-61
第七章 结束语  61-63
  7.1 总结  61
  7.2 不足与展望  61-63
参考文献  63-66
致谢  66-67
攻读学位期间发表或已录用的学术论文  67

相似论文

  1. 一个基于内容管理的自动化测试系统的设计与实现,TP311.53
  2. 基于二进制代码的动态符号执行工具,TP309
  3. 基于动态符号执行的代码分析工具的研究,TP309
  4. 软件缺陷自动分派研究,TP311.52
  5. 基于缺陷分析与测试评审的软件可信性评价体系,TP311.52
  6. 基于模拟退火遗传算法的测试数据生成研究,TP311.52
  7. 隐式规则自动提取与反例检测方法研究,TP311.13
  8. 二进制代码安全性分析,TP311.1
  9. 无线传感器网络的覆盖与跟踪问题研究,TN929.5
  10. 基于序列挖掘的C克隆代码及相关软件缺陷的检测,TP311.52
  11. 基于本体的安全缺陷知识库的构建与管理,TP311.52
  12. 面向符号执行的内存模型研究,TP333.1
  13. 自动化单元测试录制框架的研究与实现,TP311.52
  14. 智能汽车宏观路径规划方法研究,U463.6
  15. 基于符号执行与遗传算法的单元测试研究与应用,TP311.52
  16. Web服务编排语言的分析与测试,TP393.09
  17. 基于动态符号执行的二进制代码漏洞挖掘系统研究与设计,TP309
  18. 基于函数摘要的二进制漏洞挖掘技术研究,TP309
  19. 自动化单元测试中的路径空间缩减的研究,TP311.52
  20. 基于动态符号执行的并行化测试数据自动生成,TP311.52

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机软件 > 程序设计、软件工程 > 软件工程 > 软件开发
© 2012 www.xueweilunwen.com