论文部分内容阅读
【摘 要】 随着社会经济和科学技术不断发展,现代信息技术在各个行业、领域,得到了越来越广泛且深入的应用,极大方便人们生活和工作的同时,对于计算机软件安全提出了更高的标准要求。计算机软件安全漏洞是造成一切计算机安全问题的根本原因,并且目前的第三方软件无法实现对软件自身漏洞的弥补和修复,因此加强对计算机软件安全漏洞的科学检测,及时发现计算机软件存在的安全漏洞问题,具有重要的现实意义。笔者即从计算机软件安全入手,就其漏洞检测技术和实践应用,发表几点看法,以供相关人员参考。
【关键词】 计算机 软件安全 漏洞检测技术 应用
近几年,我国社会经济发展迅速,带动计算机技术、互联网通讯技术等现代信息技术在各个行业、领域,得到了越来越广泛且深入的应用,计算机设备和各类系统软件,已经成为现代人正常工作、生活不可缺少的组成部分。在这种环境背景下,计算机软件安全问题受到了社会各界的广泛关注。究其根本,计算机软件安全问题是由于计算机软件存在安全漏洞导致的,即计算机软件自身编写程序存在一定的缺陷。计算机软件存在安全漏洞,不仅会干扰系统的正常运行,还可能为不法分子利用,造成更为严重的不良后果。因此,加强对计算机软件安全漏洞的科学检测,具有重要的现实意义。笔者即从计算机软件安全漏洞入手,就其漏洞检测技术和有效应用途径,进行了分析和探讨,具体内容如下:
一、计算机软件安全漏洞基本内涵概述
就计算机软件而言,其漏洞具体是指计算机软件编程中存在的一些缺点和弱项,在软件运行过程中,可能对软件系统造成一些不良的影响,同时也会给软件运行埋下巨大的安全隐患。通常来说,计算机软件安全漏洞分为安全性漏洞和功能性漏洞两种类型,其中安全性漏洞一般不会对系统运行造成直接地影响,但其可以为黑客利用,通过发布错误指令、造成运行错误等方式,对于计算机和使用者造成严重的安全侵害;功能性漏洞则多直接表现在对系统正常运行的功能影响,具体包括运行结果错误、运行程序错误等等。
计算机软件漏洞是造成的计算机软件安全问题的根本原因,并且计算机漏洞与漏洞之间还存在着复杂的联系。目前应用的第三方软件,如360杀毒、腾讯电脑管家等,虽然可以起到一定的安全防护作用,但不具备对软件漏洞的自动修复功能,无法从源头上消除软件漏洞的安全威胁,因此必须加强对软件漏洞的科学检测,以确保系统的长期安全使用和运行。
二、目前常用的计算机软件安全漏洞检测技术分析
(一)静态检测技术分析
静态检测技术具体是指借助程序分析技术针对源代码或二进制代码进行系统分析,进而判断软件漏洞存在情况的一种检测技术,该技术可以在不运行软件的条件下进行漏洞检测,具有较高的安全性和实用性。目前,主要的静态检测技术主要有以下几种:一,规则检测技术。规则检测技术通常是对软件自身程序进行检测,通过特定语法对程序规则的描述,由规则处理器和分析器进行处理和接受,最终对比得到程序漏洞的存在情况;二,词法分析技术。词法分析技术主要是借助语法基础对多个程序进行检测的一种技术。具体来说,首先需针对目标程序进行合理划分,随后逐一对划分后的片段进行漏洞检测,由于整个过程过于繁琐,该技术的应用局限性较大;三,类型推导检测技术。该技术主要是通过对目标程序相关函数和变量的实施进行类型推导的方式,判断软件对二者访问的正常情况。这一技术主要应用于程序流与检测间无相互关联的情况;四,定理证明检测技术。定理证明检测技术主要是通过抽查计算机软件程序安全性的方式,对程序抽象公式的准确性进行判断的一种技术。
(二)动态检测技术分析
动态检测技术具体是指在源代码相对固定的条件下,针对计算机程序运行进行动态检测的一种检测技术,应用动态检测技术不可避免地对运行环境造成一定的修改,虽然可达到检测软件漏洞的目的,但也可能造成全新的漏洞和隐患。目前,主要的动态检测技术主要有以下几种:一,非执行栈技术。从计算机安全的角度分析,非执行栈技术是最直接、最有效的阻止栈攻击、保护计算机软件安全的方法。但这种技术的缺陷同样鲜明,只有在系统操作层修改栈之后才能使用,并且对于操作技术和规范有着较为严苛的要求;二,内存映射技术。这一技术主要是通过将恶意攻击代码页映射到计算机地址的方式,实现对黑客攻击的干扰,进而保障计算机的安全。该技术的优势在于不存在计算机代码的修改需求,操作技术较为简单;三,非执行堆技术。“堆”具体是指计算机软件运行过程中存在的程序分配区域,非执行堆技术就是通过对数据段进行初始化的方式,避免软件非法入侵的一种技术。通常来说,非执行堆技术往往与非执行栈技术联合使用,以达到理想的处理效果。
三、计算机软件安全漏洞检测技术的有效应用途径分析
(一)加强缓冲区溢出漏洞的科学检测
就计算机软件而言,使用漏洞检测技术对软件程序相关危险函数进行系统的检测和漏洞判断,可有效避免缓冲区溢出漏洞的产生。另外,为进一步优化计算机的安全性能,还应优先使用strncat等安全版本,替代传统的strcat版本。
(二)加强竞争条件漏洞的科学检测
一般来说,相关操作人员可以借助原子化的形式,对出现竞争的代码进行漏洞检测和操作,从而达到安全预防的目的。这种处理方法的优势在于不存在使用文件及其文件名系统的直接调用需求。
结 语
综上所述,在计算机软件使用过程中,相关人员必须加强对计算机软件安全的重视和关注,并通过各类静态检测技术和动态检测技术的科学运用,及时发现软件中潜在的漏洞问题,从而保障计算机软件长期的安全运行。
【参考文献】
[1] 鲍彬,武云涛.计算机软件安全漏洞检测技术与应用[J].中国新通信,2016(24).
[2] 杨博宁.计算机软件安全漏洞检测技术的应用研究[J].中國科技纵横,2014(09).
【关键词】 计算机 软件安全 漏洞检测技术 应用
近几年,我国社会经济发展迅速,带动计算机技术、互联网通讯技术等现代信息技术在各个行业、领域,得到了越来越广泛且深入的应用,计算机设备和各类系统软件,已经成为现代人正常工作、生活不可缺少的组成部分。在这种环境背景下,计算机软件安全问题受到了社会各界的广泛关注。究其根本,计算机软件安全问题是由于计算机软件存在安全漏洞导致的,即计算机软件自身编写程序存在一定的缺陷。计算机软件存在安全漏洞,不仅会干扰系统的正常运行,还可能为不法分子利用,造成更为严重的不良后果。因此,加强对计算机软件安全漏洞的科学检测,具有重要的现实意义。笔者即从计算机软件安全漏洞入手,就其漏洞检测技术和有效应用途径,进行了分析和探讨,具体内容如下:
一、计算机软件安全漏洞基本内涵概述
就计算机软件而言,其漏洞具体是指计算机软件编程中存在的一些缺点和弱项,在软件运行过程中,可能对软件系统造成一些不良的影响,同时也会给软件运行埋下巨大的安全隐患。通常来说,计算机软件安全漏洞分为安全性漏洞和功能性漏洞两种类型,其中安全性漏洞一般不会对系统运行造成直接地影响,但其可以为黑客利用,通过发布错误指令、造成运行错误等方式,对于计算机和使用者造成严重的安全侵害;功能性漏洞则多直接表现在对系统正常运行的功能影响,具体包括运行结果错误、运行程序错误等等。
计算机软件漏洞是造成的计算机软件安全问题的根本原因,并且计算机漏洞与漏洞之间还存在着复杂的联系。目前应用的第三方软件,如360杀毒、腾讯电脑管家等,虽然可以起到一定的安全防护作用,但不具备对软件漏洞的自动修复功能,无法从源头上消除软件漏洞的安全威胁,因此必须加强对软件漏洞的科学检测,以确保系统的长期安全使用和运行。
二、目前常用的计算机软件安全漏洞检测技术分析
(一)静态检测技术分析
静态检测技术具体是指借助程序分析技术针对源代码或二进制代码进行系统分析,进而判断软件漏洞存在情况的一种检测技术,该技术可以在不运行软件的条件下进行漏洞检测,具有较高的安全性和实用性。目前,主要的静态检测技术主要有以下几种:一,规则检测技术。规则检测技术通常是对软件自身程序进行检测,通过特定语法对程序规则的描述,由规则处理器和分析器进行处理和接受,最终对比得到程序漏洞的存在情况;二,词法分析技术。词法分析技术主要是借助语法基础对多个程序进行检测的一种技术。具体来说,首先需针对目标程序进行合理划分,随后逐一对划分后的片段进行漏洞检测,由于整个过程过于繁琐,该技术的应用局限性较大;三,类型推导检测技术。该技术主要是通过对目标程序相关函数和变量的实施进行类型推导的方式,判断软件对二者访问的正常情况。这一技术主要应用于程序流与检测间无相互关联的情况;四,定理证明检测技术。定理证明检测技术主要是通过抽查计算机软件程序安全性的方式,对程序抽象公式的准确性进行判断的一种技术。
(二)动态检测技术分析
动态检测技术具体是指在源代码相对固定的条件下,针对计算机程序运行进行动态检测的一种检测技术,应用动态检测技术不可避免地对运行环境造成一定的修改,虽然可达到检测软件漏洞的目的,但也可能造成全新的漏洞和隐患。目前,主要的动态检测技术主要有以下几种:一,非执行栈技术。从计算机安全的角度分析,非执行栈技术是最直接、最有效的阻止栈攻击、保护计算机软件安全的方法。但这种技术的缺陷同样鲜明,只有在系统操作层修改栈之后才能使用,并且对于操作技术和规范有着较为严苛的要求;二,内存映射技术。这一技术主要是通过将恶意攻击代码页映射到计算机地址的方式,实现对黑客攻击的干扰,进而保障计算机的安全。该技术的优势在于不存在计算机代码的修改需求,操作技术较为简单;三,非执行堆技术。“堆”具体是指计算机软件运行过程中存在的程序分配区域,非执行堆技术就是通过对数据段进行初始化的方式,避免软件非法入侵的一种技术。通常来说,非执行堆技术往往与非执行栈技术联合使用,以达到理想的处理效果。
三、计算机软件安全漏洞检测技术的有效应用途径分析
(一)加强缓冲区溢出漏洞的科学检测
就计算机软件而言,使用漏洞检测技术对软件程序相关危险函数进行系统的检测和漏洞判断,可有效避免缓冲区溢出漏洞的产生。另外,为进一步优化计算机的安全性能,还应优先使用strncat等安全版本,替代传统的strcat版本。
(二)加强竞争条件漏洞的科学检测
一般来说,相关操作人员可以借助原子化的形式,对出现竞争的代码进行漏洞检测和操作,从而达到安全预防的目的。这种处理方法的优势在于不存在使用文件及其文件名系统的直接调用需求。
结 语
综上所述,在计算机软件使用过程中,相关人员必须加强对计算机软件安全的重视和关注,并通过各类静态检测技术和动态检测技术的科学运用,及时发现软件中潜在的漏洞问题,从而保障计算机软件长期的安全运行。
【参考文献】
[1] 鲍彬,武云涛.计算机软件安全漏洞检测技术与应用[J].中国新通信,2016(24).
[2] 杨博宁.计算机软件安全漏洞检测技术的应用研究[J].中國科技纵横,2014(09).