安全漏洞检测技术在软件工程中的应用

2017-03-09 22:01李登魁
环球市场 2017年19期
关键词:安全漏洞计算机软件漏洞

李登魁

西安文理学院

安全漏洞检测技术在软件工程中的应用

李登魁

西安文理学院

如今人们生活、工作都离不开网络以及计算机,所以计算机通信安全就显得尤为重要。但是,也正是因为计算机软件的应用范围不断扩大,计算机软件开始出现各种安全漏洞,导致人们的信息丢失,给用户带来巨大的经济损失。因此,为了合理解决计算机软件安全漏洞问题,就需要合理应用安全漏洞检测技术,制定安全漏洞检测技术的应用方案。基于此,文章就安全漏洞检测技术在软件工程中的应用进行分析。

安全漏洞检测技术;软件工程;应用

1.软件工程之中常见安全漏洞

电脑系统有一个重要特征就是存在安全漏洞,人们可以利用这一弱点编写攻击程序,通过授权方式获得没有经过授权方面的相关访问,进而对电脑系统造成危害。即使电脑中安装了防火墙,防毒以及杀毒软件,但对于那些利用软件方面漏洞进行攻击的程序来说,并没有多大用处,甚至还会出现更大的危害。站在当前软件市场角度来看,有几个漏洞经常被人们所忽视。分别为JBOSS服务器、LIBTIFF软件库、NET-SNMP以及ZLIB。非法人员可以Geronimo2.0安全漏洞实现远程造作,绕过电脑中身份识别这一环节,通过对电脑插入恶意的软件代码获取访问控制权限。JBOSS服务器中的3.2.4到4.0.5这些版本中,存在目录遍历这一安全漏洞。LIBTIFF软件库则是读写、标签图像具有的文件格式的相关文件。NET-SNMP中的NET以及SNMP协议文件之中存在安全漏洞。ZLIB是一个对数据进行压缩的软件库,因为库里的代码解释长度大于1,进而导致安全漏洞。

2.计算机软件中安全漏洞检测技术

2.1 安全静态检测

静态检测技术指的是一种全面的检测与分析方法,往往是使用二进制代码以及源代码进行分析。该检测技术中,检测软件往往无需运行,因此便利性较强,具体技术上包含了以下几种。

2.1.1 词法分析技术。在检测过程中,多项程序的检测根据计算机语法进行,通过对程序进行划分,然后对计算机软件的各个片段进行检测,这样做的目的是检查出软件中存在的潜在漏洞,并且确定片段的安全性是否较高,该检测技术的漏报率较高,并且简便性也较差。

2.1.2 规则检测技术。计算机程序本身为检测对象,应用特定的语法,将程序的规则描述出来,然后使用规则处理器对软件程序进行处理,之后再使用分析器来完成检测。

2.1.3 类型推导技术。在该技术中,对变量以及函数访问情况进行判断及观察,这样做的目的是掌握程序变量与函数类型的具体情况,如果计算机程序与控制流之间不逊在联系,就可以使用该方法进行检测。

2.1.4 定理证明技术。该技术主要对计算机程序公式的正确性进行判断,安全判别的方法用公式的形式来决定。

2.2 动态安全漏洞检测技术

2.2.1 非执行技术。如今,恶性攻击计算机软件的事情经常会出现,主要的原因就是计算机软件内部的栈是可以被改写的,计算机软件的大量数据都会保存在栈内,恶意攻击者会首先攻击栈,向栈内输入恶性代码,并执行这部分代码。要想防范栈被人为恶性攻击最佳的方法就是防止栈内信息被改写,而且保证栈内的恶意代码不被执行,这样就可以降低计算机软件安全漏洞出现的机率。

2.2.2.数据安全漏洞检测技术。数据安全漏洞检测技术实际上就是在计算机软件运行的过程中进行内存区域分配,计算机软件内部的数据段也会同时启动,数据段不会执行恶意输入的软件代码,数据安全漏洞检测技术可以与非执行技术结合在一起,全面防范计算软件安全漏洞的出现,恶性代码的破坏和执行能力就会不断下降。部分计算机软件安全漏洞出现的原因就是用户应用了一些存在安全隐患的共享库。对此,技术人员可以应用安全共享库技术来防范恶性攻击,避免安全漏洞的出现。安全共享库技术实际上就是应用动态链接技术对程序运行中出现的安全性问题进行检测。

2.2.3 沙箱安全漏洞检测技术。沙箱安全漏洞检测技术实际上就是限制计算机软件的访问资源,以此来防止恶性攻击。程序解释技术也属于比较传统的动态安全漏洞检测技术,也是应用效果比较理想的安全漏洞检测技术。程序解释技术可以对计算机软件进行监视,并对计算机软件的安全性采用强制性检测方法,并对计算机程序的运行做出合理的解释。但是,程序解释技术的应用会消耗较多的性能。

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

3.1 预防竞争条件的漏洞

针对由于竞争条件而产生的安全漏洞,通常所使用的预防措施是使用原子化的方式对形成竞争的编码进行操作。在程序运行时,编码可谓是最小单位,它不受到任何情况的干扰。而在原子化操作中,通过锁定技术,间接调用使用文件名系统,然后把使用的文件或者句柄表达出来。

3.2 预防缓冲区漏洞

通过对软件中危险系数高的函数进行检查,充分避免缓冲区漏洞的溢出,这一过程的软件版本使用中,可以安全版本代替不安全版本。

3.3 预防随机出现的漏洞

对随机漏洞的预防中,采用随机发生设备比较合适。这种设备具备了密码算法,可以在很大程度上确保随机数流的安全。

3.4 预防格式化字符串的漏洞

通常情况下,不定参数的个数函数中格式化字符串出现的可能性较大,因此,在该类函数的应用中,要确保每项参数的个数和均衡性能。

综上,当今社会,网络发展使得软件工程日趋复杂,计算机之中软件安全关系到全球每一个使用计算机网络用户的安全。所以,应采取相应的措施加以预防,从而将安全漏洞对计算机产生的威胁降至最低。计算机软件安全漏洞检测应不断深入该项技术的应用,从而保证计算机各行业中的良好应用。

[1]王勇利.安全漏洞检测技术在计算机软件中应用研究[J].数字技术与应用,2016,11:215.

[2]桑洋.浅谈软件设计中的安全漏洞动态检测技术[J].信息化建设,2016,05:86.

[3]贺向阳.计算机软件安全漏洞检测技术应用研究[J].无线互联科技,2016,20:59-61.

猜你喜欢
安全漏洞计算机软件漏洞
漏洞
基于模糊测试技术的软件安全漏洞挖掘方法研究
智能设备安全漏洞知多少
基于C语言的计算机软件编程
安全漏洞太大亚马逊、沃尔玛和Target紧急下架这种玩具
浅谈不同编程语言对计算机软件开发的影响
安全漏洞检测技术在计算机软件中的应用
浅谈基于C语言的计算机软件程序设计
三明:“两票制”堵住加价漏洞
漏洞在哪儿