计算机软件安全漏洞的静态检测技术

点赞:18999 浏览:84019 近期更新时间:2024-03-24 作者:网友分享原创网站原创

摘 要随着我国经济和科技的发展,计算机在我国得到了迅速的普及,在人们的工作和生活中得到了越来越多的运用,对此,计算机的安全性显得日益重要,引起了人们极大的重视.计算机如果存在安全漏洞,会增加遭到网络攻击的危险性,容易对计算机的系统造成损害.防火墙、反病毒软件等这些技术,对于计算机软件安全漏洞的作用已经微乎其微了,需要采取其他更为专业的技术,才能有效阻止这些安全漏洞的存在.对此,本文探讨了计算机软件安全漏洞的静态检测技术.

关 键 词计算机;安全漏洞;安全检测;静态检测

中图分类号:TP393文献标识码:A文章编号:1671-7597(2013)18-0113-01

近年来,随着我国经济的快速发展,科技的进步也是日新月异,计算机在人们的工作和生活中得到了越来越多的运用,对此,计算机的安全性显得日益重要.计算机软件安全漏洞,是计算机系统的一组特性,这些特性一旦被某些恶意的主体利用,通过已授权的手段,来获取对计算机资源的未授权访问,或者通过其他办法对计算机的系统造成损害.虽然很多人都对此采取了一些措施,例如,给计算机安装防火墙、反病毒软件等.但是,目前计算机的技术能力也有了很大的发展进步,防火墙、反病毒软件等这些技术,对于计算机软件安全漏洞的作用已经微乎其微了,需要采取其他更为专业的技术,才能有效阻止这些安全漏洞的存在.


1计算机软件静态检测技术

计算机软件安全检测是一个检测过程,主要包括功能测试、渗透测试与验证.计算机软件安全检测的目的,是为了确定软件预期的设计要求,是否与软件所具有的安全实现一致.计算机软件安全检测的具体步骤,一般为,首先进行模块测试,即单元测试,主要对软件设计中的最小单位进行安全性检测,通过对计算机系统的各个模块进行检测,把潜在的各种缺陷都找出来;之后根据程序设计的要求,对计算机系统所属的所有模块,进行组装系统,检测涉及相关的体系结构的安全性;然后对整个计算机系统进行有效性测试,对计算机软件的功能与性能进行全面的检测,根据检测结果判断其与用户的需求是不是相符合;最后,进行计算机的系统测试.整个计算机静态分析技术的过程,可用示意图如图1所示,通过构建一个表示所分析程序的模型,结合计算机系统的安全知识,对模型进行分析,最后向计算机用户输出分析结果,以指导用户采取相应的措施来维护网络安全.

静态检测技术通过利用程序分析技术,来分析应用程序的二进制代码或源代码,通过被测程序源代码进行检测扫描,从语义和语法上,来理解程序行为,直接分析出被测程序的特征,从而发现可能导致错误的异常.静态检测技术的优点在于:计算机软件不需要在运行的状态就可以进行检测,检测起来比较方便,比较受欢迎.因此,静态检测比动态检测技术更受欢迎,运用也比较多.

计算机静态检测技术的应用方法,可分为以下3种.

1)词法检测,词法检测技术又称为语法测试,出现最早.称之为语法测试是因为其只对程序进行语法上的检查,只对程序源代码中有危险的C语言中的库函数和系统调用进行检测.

2)程序评注技术,通过用程序评注信息进行分析的办法,找到潜伏在计算机中的安全漏洞,通过对外部的数据进行标记,把其交给专业的代码审计人员,对这些安全漏洞进行检测,并排查掉.

3)类型推断技术,其是指对某几种特别的用户输入或指针等数据,通过使用一种新型修饰的方法,来提高计算机系统的安全性能.

词法检测技术,主要是通过被检测软件的功能接口的语法,来生成软件的测试输入.对不同种类输入,使得软件的反映情况得到检测.形式化安全测试技术是确立软件的数学模型,利用形式规格,较常用的类型主要有模型的语言,行为的语言,以及有限状态的语言.通过对语言支持的说明,提供形式化的规格说明.基于故障注入的安全性测试技术,通过应用故障数的最小割集与故障分析树的办法,来生产检测用例.该方法的优点明显,它可显著提高检测的自动化程度,因此其检测结果比较充分.

2静态检测技术的发展方向

计算机技术发展迅速,静态检测技术目前的发展趋势,是把静态检测的各种技术进行整合,优化组合,以优化检测性能,提高检测的准确性.具体的整合方式,主要有以下两种方法.

1)提供一个框架,通过使用不同检测技术,对计算机程序进行检测,在获取大量的检测结果之后,对结果进行综合分析.对误报率而言,对多种技术的检测结果,将其进行交集,而后进行漏洞判断决策,可减少误报率.对漏报率而言,对于同一种漏洞,对多种检测技术的结果,将其进行并集,可减少漏报率.

2)在检测技术上直接将其进行整合,通过技术的优化重组,可获得新的检测方法,这些新方法可提高安全漏洞的检测率.

总之,随着计算机在人们的工作和生活中日益广泛的运用,计算机的安全性引起了人们极大的重视.计算机软件安全漏洞的静态检测技术,发挥了检测计算机软件中存在的安全漏洞的作用,从而指导计算机软件生产企业提高其产品的安全性能,为广大的计算机用户提供网络安全保障.