刍议计算机软件安全检测方法

更新时间:2024-03-10 作者:用户投稿原创标记本站原创 点赞:3476 浏览:9177

摘 要

网络和计算机要正常运行就必须要依赖于软件,但人们对计算机的应用归根结底还是对软件的应用,而判断一个计算机软件好坏的重要标准就是软件的安全性了.若想要确保软件的安全性,我们可以从安全检测技术的运用入手.本文针对安全检测技术应用中的问题和方法,进行了详细的剖析.

【关 键 词 】计算机软件 计算机 安全 检测技术

1.软件安全状况简介

计算机的软件安全测试主要由功能测试、渗透测试以及验证过程三方面构成.与其他种类的软件相比,软件安全测查所注重的不是其能做什么,反而是测试其不能做什么.一般而言,安全检测主要是安全漏洞方面的检测及安全功能方面的检测构成的.软件安全功能检测所要求的范围十分宽泛,包括访问控制和授权、机密性以及安全管理等方面,检测软件安全功能能否达到其安全要求的过程即其安全功能检测.

2.安全检查应注意的问题

2.1 要制定科学的检测方案

要在充分的了解,把握待检测软件的特性的基础上,来对其开始进行安全性能测试,并根据安全测试的具体情况,有针对性的确定有实用性的检测方法对其进行编制,使方案得到真正有效的实施.此外也对具体执行检测的人员提出了相应的要求,在安全检测过程中,必须由熟练掌握检测知识的人员与熟悉被检测软件的人员进行通力合作.只有两方面的专业技术人员的配合,才能真正保障安全检测的效果.

2.2 做到系统且全面的分析

计算机软件有程序复杂、规模庞大等特点,故而在进行安全测试时需要分别对代码级、系统级以及需求级进行有针对性的详尽检测.如果遇到特大规模的软件,还需从结构设计等方面进行细致的分析.并根据实际情况,按照详细分析的过程选择其所需要的相关分析技术.

软件的安全检测是系统化的一个过程,要解决整个系统内全部的安全问题,普通的方法是十分困难的,故进行具体的安全检测时,如何选择有效的、具有可行性的方案,是软件检测员必须认真思考的问题.

3.软件安全检测的具体方法

3.1 科学的规范化流程

在较大规模的软件系统中,大多数都会有若干个子系统,而每一个子系统又由多个功能模块组成.

模块测试、组装系统、系统结构的安全检测、性能检测、系统检测是计算机软件安全检测必不可少的五个环节.模块检测我们又可以称为单元测试,所检测的对象是软件设计中最小的功能单位.为准确发现每个系统功能中可能存在的漏洞,需要进行模板测试,以达到细节化、全面化的检测.在具体的模板检测完成后,需要进行的是系统的组装过程,要根据其自身的设计理念来进行.在实际的组装操作过程中应该对相关的每个体系结构进行相应的安全检测.在模板测试及系统结构的测试都完成后,为使软件可以达到用户的使用要求,还需对其进行功能有效性进行测试.直至所有步骤完成之后,再结合计算机的硬件、数据库等进行一个系统的测试.

3.2 行之有效的具体方法

软件安全检测包括动态的检测及静态的检测两种手段.动态检测主要指内存的分析,环境变量等的修改,结合其运行环境已进行测试的,想增强程序保密性实行软件的安全运行,就可以通过动态检测的方法来完成.静态检测是通过程序分析、程序源代码的解析以而找到程序中导致异常的原因.静态分析技术的两个重要的指标就是错误率和误报率,这两个指标的出现是成反比的.静态分析的主要问题在于其结果常常只是真正结果的近似值,不能够真正反应出实际情况.但是其同时也具有不需软件真正运行就可以检测,实行相对方便.两者比较而言,静态检测因为其技术有较高的自动化,检测速度较快且过程方便,故更受操作人员的欢迎.

3.2.1安全检测方式实行形式化

安全检测方式的形式化,是指通过在需检测软件之上建立科学模型来检测的.其在确立相应模型后,在规范的形式语言支持下做出形式性规格说明.当前主要运用的形式规则语言主要有行为语言和模型语言以及有效状态语言等.手段也主要分为模型检测及定理证明等方式.

3.2.2实行以模型为基础的检测方式

使用结构建模方式及软件行为构建测试模型,以达到预期的理想检测效果.以模型为基础的检测过程并不苛求软件在各种具体情况下的一致性,其主要通过一些生成的试用例来测评的,并通过测查被测软件系统与理想模型结果是否相同来进行安全检测的,

3.2.3 运用语言测试技术

在静态检测技术中最早出现的检测方法就是语言检测技术,它所检测的对象是软件程序的源代码及可能产生威胁的C语言函数库调用,语言检测常用的方式是进行对反应的研究,其过程通常是进行软件接口的语言识别,再进行语法的定义,直至生成试用例来实际进行安全检测.

3.2.4以故障注入技术为基础

如果想要检测的比较全面,则可以用基于故障自如的安全测试.这种方式运用故障分析树以产生用于检测的试用实例来进行检测.故障分析树指的是把系统中出现可能最低的事件作为顶事件,再通过仔细检测来找出事故发生过程中的中间事件及底事件.以逻辑门符号,将项事件和中间事件以及底事件连成完整的一棵故障树的方式.


3.2.5 践行模糊测试法

建立在白盒检测的基础之上的检测方法我们把它叫做模糊测试法,它有效的将动态检测技术和传统检测技术合二为一,相对于传统的检测技术有了较大的发展.其具体方式是通过对被检测系统提供大量无价值的、非预期的、随机的输入,以发现软件的异常状况.其具有成本低,运用简单,自动化程度高等许多优点.

3.2.6利用根据属性的检测方式

要实行这种检测方式,先要明确被测软件的具体编程规则,并将其作为安全属性,以检测目标软件的程序代码是不是符合相关规则,通过这样来确定其安全性.和其他检测方式相比,这种方式可以全面的、系统的分析软件存在的安全漏洞交互性及扩展性.

4.结语

在当代,计算机软件的安全检测工作在软件实际应用体系中具有日益重要的作用.只有通过不间断的积累、创新,并在具体实践中践行,才能促进相关技术的不断提高.与此同时,还应不断提高我们自身的安全保障意识及防测技术,以真正保障软件安全应用,维护软件使用者的切身利益,从而促进市场的平稳健康发展.