当前位置:首页 期刊杂志

计算机软件安全检测方法研究

时间:2024-05-04

阮昊禹 吉林动画学院虚拟现实学院

在当前社会生产、管理中,计算机作为现代社会的标志已经广泛存在于各行各业中,并发挥着重要作用。通过对现阶段计算机的应用情况来看,计算机软件安全已经成为影响计算机进一步发展的重要因素,为了避免软件安全问题发生,就必须要从软件安全检测技术入手,通过检测技术及时发现计算机软件中存在的安全风险漏洞,避免安全问题发生,本文将以此为背景,对计算机软件安全检测的相关问题做进一步分析。

1. 计算机软件安全检测概念分析

在整个计算机软件系统的开发过程中,安全检测对于整个系统的性能产生深远影响,一般软件开发商为了保证计算机软件的性能可以达到预期水平,往往会在软件研发阶段就对软件进行安全检测。现阶段,安全检测已经成为计算机软件研发的重要流程。在对计算机软件进行安全检测后,技术人员能对整个变成软件的性能有一个较为全面的认识,不仅能及时发现软件中存在的安全缺陷,还能加深研发人员对软件的理解,提高软件性能。通过对计算机软件进行安全检测,能有效降低软件出现安全风险的问题,帮助软件开发企业更好的占领市场。

在整个计算机软件安全检测过程中需要注意的是,计算机软件安全检测方法的主要意义就是发现软件中存在的问题,而不是消除其中的错误,因此在安全检测结束后,还需要及时的采用处理措施才能保证软件性能。

2. 计算机软件安全检测中的注意事项

计算机软件安全检测的核心,就是要以软件安全为目的对软件进行一系列的检查与分析,通过及时寻找软件中存在的安全问题,进一步强化软件性能。在整个计算机软件安全检测中,必须要重点关注以下几点内容:

(1)需要制定完成的安全检测方案。在整个安全检测过程中,要保证检测方法具有科学性,能有效显示软件存在的质量问题。在操作中,技术人员必须要进一步了解软件的性能,并结合软件的应用范围,结合具体的环境对软件进行详细的勘查与分析,并严格执行相关安全检测规定,才能保证软件安全检测效果能得到预期。同时,软件安全检测人员还应该具有全面的软件安全检测经验,并且能够通过团队合作的方法对软件性能做全面的分析,进一步提高安全检测效果。

(2)对计算机软件安全检测流程进行优化,提高安全检测水平。与其他工作不同的是,计算机安全软件对相关人员的技能水平提出了较高的要求,并且整个软件性能检测的过程十分繁琐,软件结构越复杂,则安全检测的难度越大。因此在整个软件安全检测过程中,工作人员必须要保证安全检测工作具有针对性,能围绕具体的软件功能进行安全检测,保证能在最短的时间内发现质量问题,提高检测水平。

3. 基于安全漏洞检测的计算机软件安全检测技术分析

3.1 软件安全漏洞简述

软件安全漏洞是引发软件安全风险的重要因素,学术界普遍认为,软件安全弱点就是可能带来安全问题的计算机软件代码,但是由于软件安全弱点与软件安全漏洞存在不同,因此在研究软件安全漏洞问题中需要注意的是,只有被证实可以引起攻击的弱点才是漏洞,而弱点不一定是漏洞,但是漏洞却一定有弱点。

3.2 软件安全漏洞分类

对于相关人员而言,为了能有效发现、处理计算机软件中存在的安全漏洞,就需要先了解漏洞的基本情况,掌握其产生的条件,才能更好的处理漏洞。目前软件安全漏洞主要分为以下几种:

(1)缓冲区溢出。近几年,缓冲区溢出已经引起了很多严重的软件安全问题,从2003年至今的漏洞排名中,缓冲区溢出一直“榜上有名”,著名的震荡波、大蠕虫冲击等都是通过缓冲区溢出等实现攻击目的。计算机缓冲区都具有固定的容量,在存储数据过程中必须要保证数据总量不能大于缓冲区的容量,一旦超出这个容量,很多数据都会“溢出”。很多时候这些“溢出”的数据不会产生任何问题,并且在测试期内也不会检测出安全风险,但是这种“溢出”在实际上已经成为软件的安全漏洞。

(2)随机数。随机数在整个软件安全中发挥着重要作用,不仅能生成序列号,有些特殊的情况下还能用来制作密钥,因此随机数会对软件安全性产生深远影响。同时,随机数的问题还出现在某些操作系统的TCP/IP协议软件中,由于选择了不完善的随机数产生数据,导致信息传输双方的数据报文容易被破解,这样攻击者就能快速的获取资料,并侵入到通信中。

3.3 计算机软件安全检测技术分析

3.3.1 动态检测技术

在计算机软件安全动态检测技术中,常见的技术主要分为以下几种:

(1)非执行栈技术。现阶段基于栈进行攻击的事件时有发生,导致出现这一问题的主要原因就是系统栈在操作中是可以被执行的,因此面对被改写的数据组,这些改变都会在栈中得到体现,攻击者只需要向栈中输入恶意代码,再通过一定措施激活这些代码,就能实现对数据组的控制。现阶段栈的攻击技术比较全面,对计算机软件所造成的影响也十分明显。在应用非执行栈技术过程中需要注意的是,该技术的检测过程中具有一定的曲线,仅能检测并阻止毁栈行为,供给者一旦将恶意代码预热到原有的数据段中来躲避非执行栈检测后,只需要将栈中返回的地址覆盖,使得这个返回地址指向数据段中的恶意代码就可以了。

(2)内存映射技术。一些攻击者在运用系统软件漏洞中,经常会通过使用NULL结尾字符来覆盖原有内存,并通过这种方法来达到攻击目的。在处理该攻击手段时,可以通过内存映射技术,让攻击者无法通过NULL结尾的字符串跳转至低内存的区域,并且这些代码本身就含有一定数量的NULL字符。一般在面对计算机软件缓冲区溢出的漏洞,攻击者会通过寻找目标进程中存在的某些地址,再按照这些地址的结构来构建属于自己的数据。同时,由于这些地在操作系统上都具有规律性,因此如果使用内存映射技术,通过将代码映射到随机地址上,就会进一步增加攻击难度,让攻击者无法快速找到地址,保证了系统安全。

3.3.2 静态检测技术

静态检测技术的核心,就是要通过相关程序来分析软件二进制代码或者源代码的技术方法。与动态检测技术相比,静态检测技术能找出软件中存在的大量缺点,但是会存在五宝问题。但在总体上来看,静态检测技术更加便捷,不需要对操作系统做过多修改,因此能得到更多人员的认可。

元编译技术作为一个纯粹的基于编译器的技术,它不会带来任何语言方面的新扩展,因此也就不可能带来兼容性方面的问题。同时需要注意的是,元编译证书范围检测器在很多情况下基本不会出现误报情况,因此这种技术的检出性更高,能满足大多数计算机软件安全检测的要求。

4 结论

在本次研究中,本文重点阐述了计算机软件安全检测方法的相关内容,在介绍软件安全检测相关内容的同时,对其技术进行了分析。从本次研究结果来看,现阶段计算机软件安全检测技术主要可以分为动态检测技术与静态检测技术,两种技术在计算机软件安全检测中各自发挥着不同的作用。因此对相关人员而言,在技术应用中,必须要充分考虑两种技术的优越性,并根据计算机软件安全现状,科学选择软件安全检测方法,为进一步提高软件安全性奠定基础。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!