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

2016-06-29 19:49岑德顺
电脑知识与技术 2016年13期
关键词:安全漏洞检测技术计算机软件

岑德顺

摘要:当今时期正处于网络技术快速发展的时期,计算机网络广泛应用于社会多个领域中,是人们生活工作中不可缺少的重要组成部分。随着时代的发展,计算机技术已经取得一定成绩,但是由于网络具有开放性等特点,依旧存在一些安全问题影响人们的软件信息安全。通过对计算机软件安全漏洞检测技术与应用进行研究分析,希望能够为相关工作人员提供一定的理论借鉴。

关键词:计算机软件;安全漏洞;检测技术

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)13-0061-02

随着计算机技术和网络技术的高速发展,极大程度的改变了人们的生活生产方式。现阶段,计算机软件种类日渐丰富,对于社会的发展发挥越来越重要的作用。在给人们带来便利的同时,也必须对计算机软件系统的安全漏洞问题给与足够重视,如果被黑客所攻击,将会严重影响计算机系统的正常使用,使数据信息资源受到损害。因此,必须提高对软件安全漏洞检测技术的重视,保证软件的正常使用。

1 计算机软件漏洞

计算机软件漏洞指的是,在对计算机系统进行编程时,由于疏忽而只是其出现一定错误,导致计算机系统存在相关缺点,很多计算机软件正是基于此种缺点,而存在一些安全隐患,并且对计算机系统自身同样具有一定威胁。计算机软件漏洞主要分为以下两种表现形式,一种是功能性漏洞,另外一种是安全性漏洞。功能性漏洞指的是,对计算机的正常运行具有一定影响,容易导致系统出现运行错误等状况;而安全性漏洞是指,计算机系统在多数情况下,不会受到系统漏洞的影响,但是如果黑客针对漏洞进行入侵计算机系统,容易导致软件无法顺利进行,严重的话,可能致使计算机系统出现错误的执行命令,具有非常大的危害。

通常情况下,可以将漏洞特性分为以下四项内容:第一、在系统的编程阶段,如果编程人员出现差错,容易使系统逻辑性出现一些错误,此种由于忽视而出现的系统错误是可以避免的;第二、计算机在执行任务的过程中,常常会出现不同的逻辑错误,逻辑性错误的发生概率,可以根据程序模块的大小而定;第三、计算机软件漏洞是否存在,同软件所运行的环境具有直接性关联;第四、时间对于系统漏洞也具有一定的关联,时间的不断延伸,虽然修复好旧的系统漏洞,但是新的漏洞也会随之产生。

2 计算机软件安全漏洞检测技术分析

2.1动态检测技术

动态检测技术主要是指,在保持源代码不发生变化的基础上,对计算机系统开展动态检测。动态检测技术一般都是改变计算机程序所运行的环境,尽管能够有效的检测出程序中所存在的漏洞,但是有可能会形成其他的安全漏洞,进而使计算机系统的正常使用受到一定的安全威胁。动态检测技术主要包括内存映射、非执行栈、沙箱、非执行堆、程序解释、以及安全共享等等。比如说非执行栈,面对栈攻击,只需要停止栈工作即可有效解决此问题,也是最为有效最为直接的解决措施,能够将黑客恶意代码全面拦截,保证系统安全[1]。但是,让栈停止工作也有一定的弊端,就是主要的修改、或者设置部位都会发生在操作层中,如果发生意外行为,将会有可能影响计算机系统的正常运行,特别是在堆溢出漏洞也发生时,将会进一步提升系统发生漏洞的概率。面对内存映射,如果出现黑客攻击事件,可以利用内存映射技术,将目标代码页映射到其他地址上,能够在一定程度上困扰和迷惑黑客,需要黑客浪费较多的时间去寻找目标地址,因此内存映射技术不需要对代码做出改变,仅仅重新链接即可。又比如说沙箱技术,主要是采取限制访问的方式,实现对黑客攻击的阻止,具体能够取得有效成效,需要由定义策略的全面性决定。如果定义策略有效可行,那么能够实现黑客攻击的阻止,但是策略过于严格,则又会导致程序无法正常发挥出作用;不仅于此,如果黑客通过本地变量实施系统的入侵,那么沙箱技术将无法发挥作用。再比如说内存映射,网络中的黑客在攻击破坏系统软件时,通常都会在字符串结尾运用“NULL”字符,实现覆盖内存,以此达到破坏软件的目的。通过代码页映射技术,不法分子可以根据“NULL”结尾的字符串,实现对内存覆盖的目的。

2.2 静态检测技术

静态检测技术指的是,通过程序分析技术,开展相关措施分析源代码、以及二进制代码。利用静态检测技术检查计算机程序,不需要保证软件处于运行状态,即可实现对程序的检测,具有方便、操作简单的特点,并且不易导致发生其他安全漏洞。静态检测技术主要有类型推导、定力证明、词法分析、模型检测、以及规则检测等等。比如说规则检测技术,是针对程序本身开展检测行为,如果在程序编程阶段,由于编程人员的失误而导致程序中出现安全漏洞,那么利用规则检测技术,就能够利用特殊的语言,将程序规则全面描述出来,然后利用规则处理器,保证分析器能够接受处理结果,最后对程序开展分析和检测。再比如说类型推导技术,通过推导程序中函数、或者变量类型,然后对其方面的正常性进行观测,类型推导技术主要在与控制流毫无联系的程序中较为适用[2]。

3 计算机软件安全漏洞检测技术的应用

3.1 阻止产生竞争性漏洞

如果计算机程序中出现竞争条件而导致的安全漏洞,可以利用竞争形式而形成的编码原子化措施。主要是在计算机执行单位中,编码原子化属于最小的编程程序,在实际运行阶段,不会产生其他的干扰问题。对于原子化操作,首先需要对程序进行锁定,然后可以通过特定状态,以此使出现的问题得到解决。

3.2 阻止缓冲区产生漏洞

可以采取漏洞检测技术,全面检测软件程序中的危险系统,然后对存在的安全漏洞进行排查和解决,最后对计算机中的安全软件版本进行更新升级,保证其有效性能,进而有效解决计算机程序中的溢出漏洞问题[3]。

3.3 阻止产生随机性漏洞

在对计算机软件安全漏洞进行检测的过程中,可以适当对系统中的设备性能进行提升,可以有效解决系统中的随机性安全漏洞。主要是由于在设备中,都会带有本身的密码算法功能,能够对计算机数据流的安全起到全面的保护作用,如果出现软件被攻击的情况,尽管黑客对相关算法、规则明确掌握,但是也无法获取计算机数据信息。

3.4 阻止产生字符串漏洞

在对计算机软件安全漏洞进行检车时,可以采取格式变量的措施,可以有效的解决程序中出现的字符串漏洞问题。格式变量法使用较为简单直接,主要是阻止黑客创建字符串的操作,实现软件程序的保护。通常来讲,当计算机程序中的个数函数属于不定参数时,那么在系统中很容易出现字符串安全漏洞,所以在利用个数函数阶段,必须确保参数的均衡性,保证计算机系统的所有参数都能够符合相关要求。此外,为了减少软件安全漏洞对系统造成的安全伤害,可以利用计算机Windows系统的下属窗口,实现数据的传输操作的完成。

4 总结

综上所述,计算机软件安全漏洞检测技术,对于保护计算机系统的正常运行具有至关重要的作用。随着计算机技术的不断发展,检测技术也得到发展,并且在更多的领域中覆盖,但是网络安全漏洞问题种类也会更加丰富,将会以更多的形式攻击计算机系统,所以需要软件研究人员不断提高技能,实现计算机软件安全漏洞检测技术的不断提升和完善,将静态检测技术同动态检测技术合理结合,以此保证计算机软件能够平稳安全的运行。

参考文献:

[1] 高妍.计算机软件安全漏洞检测技术与应用[J].计算机光盘软件与应用,2014(4):172-173.

[2] 黄海滨,王艳芳. 计算机软件安全漏洞检测技术的应用研究[J].电脑与电信,2013(4):51-52.

[3] 杨博宁.计算机软件安全漏洞检测技术的应用研究[J].中国科技纵横,2014(9):16-16.

猜你喜欢
安全漏洞检测技术计算机软件
基于C语言的计算机软件编程
安全漏洞太大亚马逊、沃尔玛和Target紧急下架这种玩具
浅谈不同编程语言对计算机软件开发的影响
基于安全漏洞扫描的校园网告警系统的开发与设计
浅谈基于C语言的计算机软件程序设计
煤矿机电产品检测技术
安全漏洞Shellshock简介
基于计算机软件开发中分层技术的应用
NSFOCUS 2010年2月之十大安全漏洞