计算机软件中安全漏洞检测技术的实践探究

2024-01-04 07:50陈明秀
电脑迷 2023年18期
关键词:安全漏洞检测技术计算机软件

陈明秀

【摘  要】 随着现代信息技术快速发展及广泛应用,信息技术在各行各业中发挥着非常重要的作用,海量数据信息可以实现高效存储共享与数据价值分析,且功能不断扩大效果越来越稳定,但随之而来的安全漏洞也越来越多且复杂化。如何检测计算机软件中的安全漏洞并查找原因及弥补缺陷,需要计算机软件研发人员及相关工作人员不断思考研究,从而确保计算机软件信息安全。文章对计算机软件中安全漏洞特点进行分析,并列举了部分安全漏洞检测技术,提出计算机软件中安全漏洞检测技术应用策略,以期为促进计算机信息技术发展贡献一些力量。

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

随着计算机信息技术快速发展,各行各业中应用现代信息技术的范围及深度不断扩展,现代信息技术不仅简化了办公流程提高工作效率,也降低了对人力资源的依赖,减少了人力资源成本。为了提高工作效率及质量,企业需要不断引进、更新、升级计算机软件技术,因此,其源代码数量规模不断扩大,也出现了越来越多的安全风险,其中代码中存在的安全漏洞给企业带来较大的安全隐患,危及企业重要数据信息甚至商业秘密。因此,計算机软件开发人员及应用企业都必须重视软件中的安全漏洞检测,通过先进的检测技术及时排查安全漏洞并制定弥补措施,从而确保企业信息安全。

一、计算机软件安全漏洞特点分析

(一)原发性

原发性是计算机软件中由于自身编程存在缺陷而导致的安全漏洞。原发性的安全漏洞会带来较大安全风险,尤其容易被不法分子加以利用攻击计算机软件,导致应用企业的信息泄露或被篡改、丢失等,进而给企业带来巨大的经济损失。原发性的计算机软件安全漏洞主要是由软件编程工作人员设计系统时失误而导致的,属于计算机软件的先天性缺陷,后期应用计算机软件过程中如未能及时发现及解决,将会埋下较大的安全隐患。计算机软件开发并不是简单的活动,由于人员水平等原因导致软件中原发性安全漏洞很难避免,开发人员及应用企业需要对计算机软件进行定期维护及更新,确保安全漏洞得到及时的处理。

(二)差异性

当前信息技术发展较快,不同行业对计算机软件的应用要求不同。市场中开发及应用的计算机软件类型非常多,工作环境及硬件配套设施等也各不相同。因此计算机软件中安全漏洞也存在较大的差异。运行代码在不同硬件设备中的运行情况也存在差异,对硬件性能等适应性不同,安全漏洞差异性特点更加明显。

(三)延续性

计算机软件安全漏洞是无法永久性解决的,随着计算机软件技术发展,自身在不断优化升级的同时,安全漏洞也不断改变,原始漏洞被发现并修补后又因为应用运行环境的变化及外部攻击技术的发展等产生新的漏洞。因此,计算机软件安全漏洞具备一定的延续性特征。

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

(一)动态检测技术

目前动态检测技术有多种类型,文章主要分析内存映射、非执行栈、沙箱和安全共享库。

1. 内存映射

内存映射是关联进程中一个虚拟内存区域映射一个磁盘上的对象而形成的映射关系,映射过程就是将该虚拟内存区域初始化,初始化后的虚拟内存可以在交换空间中进行切换,其中被映射的对象叫作共享对象。当多个进程的虚拟内存区域与同一个共享对象构建成映射关系后,进程中对虚拟区域操作后可以映射到自身虚拟内存区域中。

2. 非执行栈

随着计算机软件技术发展,黑客攻击技术也不断提升。从大多数计算机软件系统攻击中可以看到,遭受严重攻击的主要原因是栈被破坏了,导致计算机软件系统栈能写和执行。整个环节中栈核心数组变量是计算机内部存储多种信息变量呈现出来的特征,而计算机系统遭受攻击后会把恶意代码发送到栈中,进而损害计算机内部操作系统,最终利用栈内代码快速更改以阻止此行为执行。更改代码后安全攻击的成功率难以降低,这也就提高了计算机软件系统的安全性能。

3. 安全共享库

为了保护数据共享的安全性,安全共享库是应用比较多的计算机软件安全漏洞检测技术。在安全共享库保障下的数据共享更加便利快捷且安全性高,但仍存在一定的风险性。在现代社会经济发展过程中,数据共享是必然的,数据共享是否安全与共享平台及传输渠道的安全性能有密切关系。若企业共享库运行环境安全性能较差,数据共享的安全性会大打折扣甚至出现泄漏情况。此外,当计算机软件使用的共享空间安全系数较低时,产生安全漏洞的情况也屡见不鲜,而安全共享库就是不断推进信息共享库动态运行,使计算机软件的运行环境更加安全平稳,进而达到保护数据信息安全的目的。在计算机运行前提条件下通过保证共享库链接运作的方式将计算机软件运行过程中一些安全性较低的程序进行拦截,额外检测计算机软件的安全性,从而保证计算机软件运行安全有效。

4. 沙箱

沙箱技术可有效防范计算机软件中一些损害性比较强的攻击行为,例如通过程序资源的访问功能进行防范。具体来说就是计算机在运行过程中利用C语言编写一些调动函数,计算机软件本身无法调动这些函数,系统开启预防操作后会生成一些行为与调动函数类似,进而判断软件是否被非法攻击。利用沙箱检测技术时要及时完成沙箱限定,进而第一时间预防非法入侵沙箱而避免计算机软件系统被破坏。

(二)静态检测技术

1. 定理证明检测技术

定理证明检测技术主要应用在计算机程序抽象公式的抽查方面,通过定理证明检测技术可以准确地判断出计算机软件是否受到黑客攻击,并可以排查出隐藏的安全漏洞。定理证明检测技术可以精准化检测安全漏洞和高效阻截非法入侵行为,从而保证整个计算机软件系统运行的安全性能。

2. 模型检测技术

模型检验是利用计算机系统程序中的有向图、状态等构建成抽象的模型,利用模型更好地完成系统的特征检验工作。采用模型检测技术检测计算机软件安全漏洞的重点是利用软件行为及结构构建出相应的模型,对计算机系统模式及优先状态进行计算和验证,并在验证结果的基础上建模操作。然后利用模型分析计算和验证计算机软件程序构造特征情况,进而分析出计算机软件存在的安全漏洞。模型检测技术包括模型自动转化检验方法和符号化检验方法。其中符号化检验方法是将抽象模型转换为语法树形式,采用公式形式进行描述,通过公式与需求是否相符判断安全漏洞。模型自动转化检验方法则是将检测程序转变为等价自动机,两个自动机之间相互替换和补充并构成一个新自动机,然后把判定系统转换为语言形式且具备一定的容纳性。

3. 类型推导检测技术

类型推導检测技术是静态检测技术中重要的组成部分。类型推导检测技术主要是通过推导计算机的函数和程序变量等,以推导结果准确判断计算机函数和程序变量中是否存在异常现象,一旦存在异常现象则要查找原因,判断出计算机软件安全漏洞所属类型、安全漏洞产生的威胁或破坏情况。类型推导检测技术的应用条件具备一定特殊性,主要是应用在与程序无任何关联性的检测环节中较多。

4. 规则检测技术

规则检测技术主要是对程序本身安全漏洞进行检测,对操作人员操作失误所带来的安全漏洞检测效果更好。计算机软件系统是由程序员根据一定的规则及目的编写出来的,程序员并不是万能的,在操作编写过程中难以全方位避免所有的失误,一旦人工操作失误会导致计算机软件判断失误或计算失误,最终形成一定的安全漏洞。而通过规则检测技术则可以较好地解决人员操作失误的问题,将描述程序规则的语法固定,然后利用规则处理器完成分析处理操作及对比程序行为,进而有效、及时地防范计算机软件安全漏洞。

5. 静态分析技术

静态分析技术主要是对程序代码进行全面截止的扫描,将程序代码中的关键句及语法等提炼出来并解读其含义,然后借助解读分析程序行为,按照预先设定好的安全漏洞特性及计算机软件系统安全标准等进行检测以发现漏洞。静态分析技术首先是分析语法和词句,最早的静态分析技术的核心就是语法和词句。一般情况下系统程序会分成语句片段,比较语句片段与疑问数据库,当检测到计算机软件存在安全漏洞时会开启启发式评估及判定。静态分析技术可以在一定程度上检测出安全漏洞,但由于检测数量有限,容易出现漏报安全漏洞的情况。利用静态分析技术检测安全漏洞需要严格执行一定的标准要求,而安全标准描述的是计算机系统运行具体情况,计算机软件程序自身具备一定的编程标准,这些标准也是一般安全标准和漏洞模式。

三、计算机软件安全漏洞检测技术应用策略

(一)预防竞争关系的漏洞

当计算机软件处在一个竞争环境下,安全漏洞往往更容易产生。究其原因,计算机运行时会存在各种各样的缺陷,没有绝对安全与稳定的运行环境。为了减少安全漏洞的产生必须做好预防漏洞产生的防范工作。例如将竞争条件下的编码进行原子化处理进而减少安全漏洞。其中编码是计算机软件运行中所涉及的最小单位,在原子化操作下可以逐步减少编码运行的干扰因素。

(二)预防缓冲区出现漏洞

计算机软件中另一个极容易产生漏洞的地方是缓冲区,计算机软件必须针对缓冲区进行预防,例如通过软件程序中危险数值较高的函数快速检测缓冲区域内的安全漏洞,同时更换安全性能更高和技术含量更高的软件版本以减少计算机软件运行过程中的漏洞,尤其是针对一些安全系数较低或滞后性较大的计算机软件应及时进行更换。

(三)随时检测预防产生新漏洞

计算机软件安全漏洞具备原发性、差异性和延续性特征,其中延续性特征说明计算机软件安全漏洞会随着软件技术的发展进步及外部环境变化等而不断变化,呈现出螺旋式上升的趋势。若只对计算机软件安全漏洞进行修补,只是一种事后弥补措施,对计算机软件正常运行及发挥功能来说是远远不够的。计算机软件需要实时监测自身是否存在漏洞,并不断更新检测技术,对潜在的新漏洞及时发现检测出来并及时制定预防处理措施。为保证设备具有较强的密码演算程序,必须使用一些性能较好的设备预防新漏洞产生。

(四)预防格式化字符串漏洞

在一些严密且谨慎防范计算机软件安全漏洞方案的运行或执行过程中,可在数据加密环节直接应用格式常量,应用格式常量可以避免违法犯罪分子或黑客找到可利用的漏洞缺陷,减少计算机软件被攻击的可能性。格式化字符串是计算机软件中的薄弱点和个数函数最大的安全隐患,也是黑客攻击主要范围之一。为了防范格式化字符串漏洞,必须掌控每一串数据,尤其是一些软件参数设置要提高检测的精准性。计算机软件格式化漏洞危害比较大,会导致计算机系统中的关键性数据信息丢失或被不法分子、黑客等盗取。此外,格式化字符串漏洞后续难以完整修复,对计算机软件危害比较大且具备一定的持续性。

四、结语

随着信息化时代的到来,计算机软件技术已经在社会经济发展及人们生活中发挥着越来越重要的作用,计算机软件技术已经深入应用在现代化办公模式中。一旦计算机软件出现安全漏洞,对企业或个人所产生的影响是巨大的,会带来较大的经济损失等。因此在应用计算机软件技术时要重视对安全漏洞的检测,及时排查出隐藏的安全漏洞,确保计算机软件正常安全及稳定运行,同时保证相关的数据信息准确安全有效。除了文章所述的安全漏洞检测技术以外,在使用计算机软件过程中,可通过更换计算机软件版本,规定计算机软件操作权限等防范安全漏洞,不断研究创新安全漏洞检测技术,确保计算机软件安全漏洞能够及时检测排查,进而提高计算机软件运行质量与效率。

参考文献:

[1] 霍莉莉. 计算机软件中安全漏洞检测技术及其应用研究[J]. 软件,2023,44(06):98-100.

[2] 王朝辉. 计算机软件中安全漏洞检测技术与应用分析[J]. 软件,2023,44(04):164-167.

[3] 黄子龙. 计算机软件中安全漏洞检测技术与应用分析[J]. 电子测试,2022,36(23):134-136.

[4] 李岩. 计算机软件中安全漏洞检测技术的应用问题探讨[J]. 电子元器件与信息技术,2021,5(05):235-236.

猜你喜欢
安全漏洞检测技术计算机软件
基于C语言的计算机软件编程
安全漏洞太大亚马逊、沃尔玛和Target紧急下架这种玩具
浅谈不同编程语言对计算机软件开发的影响
基于安全漏洞扫描的校园网告警系统的开发与设计
浅谈基于C语言的计算机软件程序设计
公路工程试验检测存在的问题及措施
煤矿机电产品检测技术
浅谈现代汽车检测技术与安全管理
安全漏洞Shellshock简介
基于计算机软件开发中分层技术的应用