摘要:近年来,随着我国科学技术的飞速发展,计算机技术也得到迅猛发展,计算机信息系统也在各个领域被广泛运用,给人们的生活带来了便利,提高了人们的工作效率。但同时也暴露出越来越多的问题,其中,计算机软件安全漏洞问题就是一项很关键的问题,导致人们的信息丢失,给用户带来巨大的经济损失.这也警醒了我们要加强对安全漏洞的检测,在发展计算机技术的同时还应该保障计算机系统的安全。本文主要分析了安全漏洞检测技术和其在计算机软件中的应用。
关键词:计算机软件;安全漏洞;检测技术;应用
引言
计算机在各领域普遍应用加速了全球现代化和信息建设的进程,它的应用符合时代的潮流,现在人们对计算机软件的应用越来越频繁.但是,随着研究的深入和源代码数量的不断增加,一些黑客也开始利用代码漏洞对计算机软件系统进行侵入,他们为了牟取利益,窃取计算机中的重要信息资料,或者进行恶意破坏,给计算机用户带来极大的损失。信息的安全已经是现在信息系统安全工作的重中之重,技术人员必须加强对计算机漏洞检测技术的研究和分析,一定要确保计算机用户信息资料的安全。
1软件工程面临的问题
计算机内部软件本身在设计的时候就存在一些缺陷和问题,在软件研发期间,由于研发人员对技术掌握不是十分熟练,再加上软件本身存在的问题都会导致计算机内部存在安全漏洞。最近几年发生的黑客攻击网络的事件增加,计算机本身存在安全系统的缺陷给网络黑客攻击电脑提供可乘之机。计算机内部软件本身属于需要耗费大量物力、人力、财力才能完成的高科技产品。相关产业在研发上付出了很大的代价。但是计算机内部软件的缺点处理存在安全漏洞之外,可复制技术十分容易。目前全球使用盗版的计算机内部软件情况十分严重,我国正好属于盗版使用的重灾区。这些问题导致除了给研发企业带来巨大的经济损失外,也给不法分子带来可乘之机,通过对计算机系统的攻击,复制相关的数据,给个人、社会和国家带来巨大的经济损失。最近几年发生的针对部分单位的网络攻击,很大原因就是利用相关漏洞来扰乱正常秩序。计算机的漏洞有以下方面:
(1)编程数据出现了逻辑性的错误,原因基本是设计人员的疏忽大意;
(2)计算机在运行上也会产生相应的逻辑性错误,并且发生率较高;
(3)漏洞与软件环境相互依存;
(4)旧漏洞修复之后还会产生新的漏洞。
2计算机软件中的安全漏洞特点
2.1.主要是人为因素造成的
计算机软件中的很多安全漏洞都是在开发和研制过程中因为设计人员的疏忽大意造成的.比如常见的编程的逻辑错误,在计算机软件在编程过程中,开发人员的一个小失误很可能就会造成安全漏洞。
2.2逻辑和计算错误
在处理计算机软件数据时,比数值计算的逻辑错误是经常发生的,这些错误一般发生在一些不合理的模块中,发生错误的概率比较小的是中等模块。例如:数据库压缩软件库ZLIB里的库中代码解释,若一个长度大于1,就会导致安全漏洞。
2.3安全漏洞是长时间存在的
一旦计算机软件有了安全漏洞,病毒和黑客就会进入计算机系统,严重影响计算机的安全。而在计算机软件系统当中,有时在修复旧的安全漏洞时,还会产生新的安全漏洞。所以,安全漏洞是长时间存在于计算机软件系统当中的。因此,在日常生活中,我们应对安全漏洞进行有效地监测和预防,及时修复,有效地保证计算机信息系统的安全性和稳定性。
3常用的安全漏洞检测技术
3.1静态检测技术
3.1.1静态分析
静态分析主要内容是,对软件系统内部的源代码进行扫描,根据扫描的结果来查找关键句和语法。
期刊文章分类查询,尽在期刊图书馆通过解读程序的含义及行为展开分析,按照系统的漏洞特性和安全标准来完成检测工作。针对分析上,首先要分析关键词和语法,通过检查语法方面的内容,把系统划分为若干片段,把这些片段与数据库的内容展开分析对比,来检测系统内部是否存在漏洞,并因此开展工作。但是这种检测工作缺电是检测数量有限,有些已知的漏洞出现重复检测,也有部分内容没有检测出来;其次需根据相关标准对软件内部开展严格检测,一般系统能在安全、稳定的运行情况下就设定为安全标准。
3.1.2程序检验
程序检验通过软件系统的程序来确定形式化的程序与模型,随后程序要进行形式化的检测,再通过其他检测方式来检测软件系统内部的漏洞情况。首先把模型进行设计,通过系统程序来设计模型,设计好的模型应及时进行系统检测,一般采用的检测方式有符号化检验和模型自动化检验两种。符号化检验的主要内容是,将模型转变成语法树对数据内容展开公式描述,通过内容来判断公式与内容能否相同;模型自动化的检验主要是把程序转换为等价自动机,两个自动机可对新的自动机进行替换,通过可容纳的语言形式来判定程序系统是否发生转变。模型检验最大的问题是,由于操作系统复杂,软件不可能构建所有的建模。但是随着检测技术的发展,可以通过内存建模和定理证明的方法来检测漏洞的存在,从而使检验的严密性程度得到加强。
3.2动态检测技术
3.2.1非执行堆与数据技术
非执行堆与数据技术会在软件正常运行时进行破坏,检测并阻止内存中恶意代码的执行机会.通过此技术,能够有效地检测和阻止内存里所有恶意攻击代码。与此同时,弊端就是却无法检测和阻止黑客对函数指针或函数参数的篡改。
3.2.2内存映射技术
许多黑客在攻击计算机软件时,覆盖内存是一般会用NULL结尾的一些字符串,进而完成攻击.使用代码页的映射技术,攻击者在对这一字符串应用来实现覆盖内存目的的过程中,向相对简单的内存区的跳转难度就会大幅度增加。通过这一角度可知,在不同的内存地址随机映射代码页,可以使通过地址猜测来实现页面攻击的难度加大。内存映射技术可以为黑客带来困扰,让黑客在查找地址时需要花费更多时间。
3.2.3安全共享库技术
安全共享库技术就是指使用动态链接的方法,在程序工作时对应用不安全的函数的拦截,同时对其加以检测,进而增强计算机软件的安全性。在windows操作系统以及UNIX方面,这一方法往往具有较高的应用价值。不安全的共享库是很多软件安全漏洞的来源,但是安全共享库技术,可以在一定的程度上阻止黑客的袭击。
4安全漏洞的检测应用
4.1预防竞争性漏洞
针对竞争性漏洞,可采取把相关编码原子化的方式操作。原子化最为最小的编码,程序运行不会受到任何干扰。通过原子化操作将程序锁定,对文件系统名称间接调用,来描述所用文件的名称。
4.2预防随机性漏洞
针对随机性漏洞,运用一套运行正常、良好的设备。将设备作为随机数的发生器,通过设备自身存在的密码算法,来保障设备自身的安全。在遭到黑客攻击的情况下,黑客就算掌握了软件的所有算法细节,也无法查询到对应的数据流。
4.3预防缓冲区漏洞
针对缓冲区漏洞,预防时可以检查软件系统内部存在的危险函数,同时采用升级更新或者安装等手段用更加安全的版本来取代存在问题的版本。
结语
综上所述,计算机软件的安全性在日常生活中十分重要,由于软件的安全漏洞的问题导致计算机被攻击的情况时有发生。通过对安全漏洞检测技术的分析,来认识软件安全漏洞处理的重要性。避免带来重大的经济损失。同样,相关技术人员在研发上,不断加强计算机软件的安全漏洞检测技术,来保障计算机能安全稳定的运行。
参考文献:
[1]罗宏伟.计算机软件中安全漏洞检测技术及其应用[J].硅谷,2016(20):15,41-43.
[2]刘月.安全漏洞检测技术在计算机软件中的应用研究[J].科技播,2015(10).147-149.
论文作者:邵楠,赵玥
论文发表刊物:《电力设备》2017年第20期
论文发表时间:2017/11/15
标签:安全漏洞论文; 计算机软件论文; 漏洞论文; 检测技术论文; 计算机论文; 程序论文; 软件论文; 《电力设备》2017年第20期论文;