论文部分内容阅读
随着互联网应用与计算机软件行业的不断创新与发展,信息与网络安全也面临着前所未有的严峻问题,网络安全领域所面临的挑战日益严峻,网络安全问题也日益被人们重视。通常意义上的网络安全的最大威胁是软件程序上的漏洞,程序漏洞检测方法主要分为静态分析方法和运行时的检测方法。静态分析方法主要用静态检测工具对程序源代码进行扫描分析,存在很高的漏报率和误报率;运行时检测方法需要运行被测程序,其检测依赖外部环境和测试用例,具有一定的不确定性。本文主要工作如下:1.首先介绍了软件安全漏洞的研究背景、意义及国内外研究现状;接着通过代码举例的方式详细阐述了常见漏洞的种类及原理;然后分析研究了软件安全漏洞的静态检测技术、动态检测技术及动静结合的检测技术,并总结了几种检测技术的优缺点。其中动态检测技术侧重于软件发布后的防护,而静态检测技术则侧重于软件发布前尽可能早地发现软件安全漏洞。在软件安全这个意义上,静态检测技术对于增强软件安全性与可靠性有着更为重要的意义。2.鉴于现有的源代码静态扫描工具都存在大量的误报与漏报,本文提出一种基于数据综合分析的软件安全漏洞静态检测方案,设计和实现了一个可扩展的源代码静态分析平台,平台通过集成多个不同技术类型的源代码静态扫描工具对软件程序源代码进行多层次的综合性检测,然后对检测的结果进行数据综合分析,得出危险等级高的软件安全漏洞,并以图表的形式将漏洞信息直观的显示出来。3.通过实例的分析结果表明,源代码静态分析平台相对于单个工具的检测而言,有效地提高了漏洞的覆盖率,并明显地降低了漏洞的误报率和漏报率;该平台在实用性、有效性及可扩展性上与传统的分析方法相比都有比较明显的优势。4.源代码静态分析平台已通过第三方测试达到设计目标,并获得国家版权局软件著作权,同时该平台的设计思想已被《计算机应用研究》期刊录用。