计算机安全漏洞检测技术应用

时间:2022-03-02 12:32:40

计算机安全漏洞检测技术应用

1计算机安全漏洞的概述

所谓安全漏洞,是指在计算机系统中以某种形式存在的安全方面的弱点,这些表现形式主要为硬件、软件或者是策略上的脆弱性和缺陷。安全漏洞的存在,会为入侵者提供进入系统的机会,入侵者借此可以再未授权的情况下访问系统并破坏系统及安全。虽然大多数用于为防止极端及软件安全漏洞的产生而安装了反病毒软件或者防火墙,但这并没有明显的效果,甚至出现了更多的安全威胁和问题。安全漏洞的出现主要有以下几个原因:第一,逻辑错误。逻辑错误主要是由于系统软件、硬件或用户程序设计中的问题而引起的,这一漏洞是当前漏洞检测的主要对象,它主要表现为环境错误、编程错误和配置错误三种类型。首先,环境错误因不能够恰当满足程序运行时所需的环境限制而对计算机运行产生安全隐患,例如由操作环境的限制形成的错误漏洞、由操作系统或者编译器缺陷引起的错误漏洞等;编程错误是指在软件开发过程中由于设计错误引起的程序漏洞洞,主要包括同步错误和条件校验错误;配置错误出现在软件资源配置和硬件资源配置这两个方面,一般来说,配置错误主要包括程序参数设置错误、程序访问权限错误等。第二,系统弱点。系统弱点相对来水是一种隐含的安全问题,也是系统难以克服的缺陷,一般要在很长时间内才能够显露出来。系统弱点主要有几个表现:加密缺陷,加密技术本身存在的缺陷给信息加密带来了一定的安全隐患;弱口令缺陷。口令安全作为计算机安全的主要表达形式,其中同时存在着大量易破解的口令,加大了安全风险;隐晦手段缺陷。隐晦手段虽然是针对计算机系统而采取的一种安全机制,但并不能够长期、根本性地保证系统安全。第三,管理策略失误,即在计算机系统的日常管理和应急措施方面的缺陷和不足,这也是计算机的主要安全隐患。例如电源连接不正确导致部件烧毁、数据丢失问题、通信链路设备故障等,都会对计算机安全产生影响。

2计算机安全漏洞检测技术的运用

当前针对计算机安全漏洞,主要有静态检测技术和动态检测技术两种。

2.1静态检测技术

静态检测技术是基于源代码的漏洞挖掘技术,它利用手工或者源代码分析工具的辅助,通过对源代码的代码结构、跳转条件、边界条件等因素进行分析从而找到计算机软件中存在的漏洞。

2.1.1当前静态检测技术主要具有几个特点

第一,由于它利用源代码分析工具来进行相关的分析操作,所以大大提高了分析速度和检测效率;第二,静态检测技术能够在一些开源项目或者在项目开发阶段就进行漏洞的挖掘,所以它大大保证了系统修复的及时性和有效性;第三,由于静态检测技术是按照一定的规则对源代码进行分析,所以就需要建立源代码的特征库和规则库作为基本保证。但是随着信息技术和网络的发展,安全漏洞在数量和种类上也大大增多,这就决定了特征库的扩大化和复杂化,这在很大程度上影响了静态检测工作及其效率。换句话说,作为静态检测的重要依据,特征库的复杂进一步增加了误报和漏报的风险。静态检测技术主要包括词汇分析、规则检查和类型推导等技术。

2.1.2词汇分析技术

词汇分析技术主要对语法进行检查,它最早出现于BMAT技术中,通过对词法进行检查,将其中出现的漏洞放入知识库进行进一步的判断,进而采取相应措施。

2.1.3规则检查技术

规则检查技术的主要内容是对程序编制规则进行检查,判断其中是否存在安全漏洞。规则检查技术用特定的语法来描述规则,并将程序行为进行比对检测。

2.1.4类型推导技术

类型推导主要对程序中的变量和函数进行推导,进而对其中的变量和函数的访问是否符合类型规则进行判断。该检测技术主要用于控制流无关分析,但需要注意的是,针对控制流相关的特性,我们需要引入类型限定词和子类型的概念,从而进一步扩展源语言的类型系统,实现新类型系统能够在源语言的数据类型基础上实现更多的扩展,同时表现出类型之间的关系。

2.2动态检测技术

动态检测技术是对静态检测技术的补充,进一步完善了安全漏洞检测技术体系。动态检测技术通过构造非标准的输入数据对软件系统进行一定调试,以系统功能和数据流向为依据来判断运行结果的状态,检查其中的运行异常,以此来判断软件系统是否存在安全漏洞。动态检测技术的切入点在输入接口和运行环境,相比于静态检测技术,它具有准确率高的优势,但同时其检测效率也较为低下,这主要是由于不同的软件系统本身存在着功能与流程上的差异,所以在统一扫描方面就存在困难,不同于静态检测技术,动态检测技术只能根据不同的软件系统功能来进行具体的动态性检测,这就在很大程度上降低了其检测效率。当前动态检测技术中,运用较多的有非执行堆与数据技术、内存映射技术、安全共享库技术和程序解释技术等。首先,非执行堆与数据技术能够将恶意代码的威胁彻底消除,几乎能够将所有利用恶意代码进行的攻击检测出来并予以阻止;其次,内存映射技术可以对内存中的地址跳转进行检测并且阻止,且其运行对程序的影响也较小;最后,程序解释技术的运用执行了解释程序,它能够在程序运行后监视其行为并进行强制的安全检查,尽管其在性能消耗方面较大,但可以通过一些动态优化技术进行这一问题的解决,从而有效实现其在安全检测中的有效应用。

3结语

当前安全漏洞的检测技术得到了全面深化的发展,多种检测技术各有优势和适用范围。计算机在软件和网络等方面的安全漏洞不断复杂化,针对此现状,我们必须加强加快对检测技术的研究,积极引入新兴技术手段,并树立创新观念,将其贯彻到安全检测技术的实际发展中去,全面推进计算机安全水平的提升。

作者:龙厚彦 单位:四川工业科技学院

上一篇:电影海报设计研究 下一篇:新时期计算机安全挑战及应对分析