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

静态程序分析辅助的动态漏洞挖掘

作 者: 张若愚
导 师: 戚正伟
学 校: 上海交通大学
专 业: 软件工程
关键词: 动态污染分析 静态程序分析 软件漏洞检测
分类号: TP311.53
类 型: 硕士论文
年 份: 2010年
下 载: 99次
引 用: 0次
阅 读: 论文下载
 

内容摘要


随着计算机技术高速普及和发展,大量的计算机应用正在越来越深入地影响着人们的工作生活,也带来了日益严重和广泛的安全问题及隐患。这些年来对于程序分析技术的研究方兴未艾,目前已经存在许多工具能够通过对目标代码的分析,对其中可能引发安全问题的设计缺陷进行识别和保护。大多数的此类工具是通过动态软件测试技术或是静态的程序分析技术来达到目的。其中前者虽然具有较高的准确率但是每个用例只能覆盖有限的代码,一次很难提供较为完备的分析结果。而后者虽然能够覆盖所有代码,但在准确率上有所欠缺,存在大量的误报情况。针对目前同类技术的缺陷,本文通过综合静态以及动态程序分析各自的特性,提出了一种新方法,做到了既能覆盖绝大多数的程序中路径,也在准确性上超越了传统的静态分析。论文中实现了一个静态程序分析辅助的动态污染传播跟踪机制,在传统的污染跟踪过程中,同时进行函数级的静态代码的控制流图补全,并以路径为单位实施静态的污染传播分析,以达到动静结合的分析效果。本文的研究主要包含了如下贡献和具体工作:1)提出了一种新颖的结合动态与静态程序分析的方法,综合两者的优点,对其缺点进行互补,达到代码覆盖率,准确率和效率的提高。2)基于前面提出的动静态分析结合方法,本毕业论文实现了一个软件漏洞挖掘工具SDCF。该系统针对二进制代码,在动态污染行为分析的同时,对并未得到执行的指令也实施静态的控制流信息补全和污染相关分析。3)文章提出了一种基于API过滤的效率优化机制,通过对一些行为可以预测的系统调用的污染相关行为的规约,简化整个污染分析过程。实验表明通过静态程序分析辅助的动态污染跟踪机制,SDCF在仅仅引入4.16倍的运行时负荷的情况下,不但能够对目标程序实施基于动态污染跟踪的运行时保护,也能够在某些软件漏洞被恶意用户利用之前实施挖掘,其分析的平均代码覆盖率达到90%以上。

全文目录


摘要  5-7
ABSTRACT  7-11
第一章 绪论  11-16
  1.1 研究背景  11-13
  1.2 研究目标  13
  1.3 论文的主要工作  13-14
  1.4 论文结构  14-16
第二章 程序分析相关技术  16-26
  2.1 动态污染分析技术  16-20
    2.1.1 动态污染分析的方法  16-19
    2.1.2 动态污染分析相关工具和技术  19-20
  2.2 静态程序分析技术  20-23
    2.2.1 静态程序分析的基本方法  20-22
    2.2.2 静态程序分析的相关研究  22-23
  2.3 动静结合的程序分析  23-25
    2.3.1 无耦合的动静结合的程序分析相关研究  23-24
    2.3.2 静态分析指导生成测试用例生成的相关研究  24-25
  2.4 本章小结  25-26
第三章 动静态结合的漏洞挖掘系统SDCF  26-45
  3.1 SDCF 应用概述  26-29
  3.2 SDCF 的总体结构  29-33
  3.3 SDCF 的具体实现  33-41
    3.3.1 动态污染跟踪  33-37
    3.3.2 静态控制流信息补全及分析  37-41
  3.4 SDCF 中的优化策略  41-44
  3.5 本章小结  44-45
第四章 实验与分析  45-51
  4.1 实验环境  45
  4.2 SDCF 系统的效率实验  45-48
  4.3 SDCF 静态补全效果实验  48-49
  4.4 SDCF 中漏洞发掘实验  49-50
  4.5 本章小结  50-51
第五章 总结与展望  51-53
  5.1 论文总结  51-52
  5.2 展望  52-53
参考文献  53-56
致谢  56-57
攻读硕士学位期间已发表或录用的论文  57

相似论文

  1. 面向对象分层测试的方法研究,TP311.53
  2. 基于模型的Web测试技术研究与应用,TP311.53
  3. 基于形式化UML测试序列生成方法研究,TP311.53
  4. 基于程序切片的电子海图系统软件测试技术研究,TP311.53
  5. 用户权限管理系统可靠性测试的研究与应用,TP311.53
  6. 高职院校教学案例库的创建探究,TP311.53-4
  7. 软件可信性增长测试用例生成方法的研究,TP311.53
  8. 基于风险的雷达软件系统测试策略研究,TP311.53
  9. 基于中国电信闪铃系统与平台项目的软件测试,TP311.53
  10. 一个自动化软件测试系统的设计与实现,TP311.53
  11. 一种于经验数据的软件缺陷修复工作量预测模型研究,TP311.53
  12. 基于云计算的软件测试服务研究,TP311.53
  13. 基于FitNium的关键字驱动的Web测试框架的研究与实现,TP311.53
  14. 探索式测试方法在网络游戏软件测试中的应用,TP311.53
  15. 可信计算平台动态测试系统的设计与实现,TP311.53
  16. 面向嵌入式操作系统的功能测试方法与实现,TP311.53
  17. 面向IBM自动化测试框架GUI录制工具的设计与实现,TP311.53
  18. 验证带有线程动态创建和退出多线程程序,TP311.53
  19. 基于Struts的软件测试文档生成系统,TP311.53
  20. 基于J2EE构架的关键字驱动自动化软件测试技术研究,TP311.53

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