前言:想要写出一篇引人入胜的文章?我们特意为您整理了计算机安全漏洞检测技术的运用范文,希望能给你带来灵感和参考,敬请阅读。
网络信息技术的发展优化了计算机系统的软件功能,使得系统的源代码数量增加,给黑客攻击带来机会,破坏系统的稳定运行。近年来,由于系统漏洞造成的信息丢失已经给客户带来巨大的麻烦,并且这一现象呈上升趋势,用户对计算机的信任度逐渐降低。无论是从客户体验角度,还是从经济效益角度,都应加强对计算机安全漏洞的检测。在具体的检测过程中,静态检测和动态检测是其主要形式,文章重点分析这两种检测技术的应用。
一、计算机安全漏洞及其产生原因
目前,计算机容易受到来至多种因素的影响,从而导致安全漏洞较大。其攻击形式主要表现为电子邮件攻击、黑客攻击和病毒攻击。电子邮件是目前网络交流的重要方式之一,攻击者利用这一点发送垃圾邮件盗取客户信息,造成网络运行缓慢甚至瘫痪。另外,操作不当也将导致系统受到病毒的侵袭,病毒具有发现难、破坏性强等特点,给客户带来极大的损失。来自黑客的攻击是计算机安全隐患的又一类型。由于计算机存在安全漏洞,因此导致其容易出现安全隐患,严重影响患者的正常使用。造成计算机存在安全漏洞的原因众多,网络协议自身存在安全漏洞,安全系数不高、系统程序存在安全漏洞,主要来自于编程人员的疏忽和错误。未设置访问权限,导致信息丢失。计算机安全漏洞的检测技术主要包括静态检测技术和动态检测技术两种。
二、计算机安群漏洞检测技术应用
(一)静态检测技术及其应用
静态检测技术以源代码为辅助工具,通过对源代码、边界条件和跳转条件的分析查找目标代码中的不稳定因素。计算机的快速发展使得软件源代码逐渐增多,静态检测技术采用工具代替手工部检测,具有检测效率高、检测全面等特点。通过不同的条件设置,静态检测技术实现了对代码的全面扫描,从而确保了系统漏洞的减少。源代码是静态检测技术的核心,且检测过程要遵循一定的规则,需要对目标代码进行分析、处理。也就是说,静态检测技术对源代码具有一定的依赖性,必须建立源代码数据库才能确保其应用,从而实现系统漏洞的修复。基于计算机网络的漏洞种类众多,检测技术特征库也应不断更新,从而确保检测结果的准确性和高效性。另外,静态检测技术以规则检查为手段,对程序的编制规则进行检测。规则检查将其规则以特定语法描述,通过程序行为对比来完成检测。类型推导通则过推导程序中变量与函数类型,来确保变量和函数的访问规则符合需求。这种分析方法主要用于控制流无关分析,但对于控制流相关的特征则应选择类型限定词与子类型的概念来确保源语言类型系统的扩展。静态漏洞检测对源代码的过分依赖导致其检测结果存在漏报或误报现象,基于此提出了一种更为安全的静态检测方法,即对计算机运行数据实施实时跟踪的检测方式,该方式确保了检测的准确性。具有多个安全属性,拓展了漏洞状态模型的状态空间,设定多个安全属性,因此对于计算机安全属性的判断更准确,检测方式也更高效,减少误报和漏报现象。
(二)动态检测技术及其应用
基于静态系统对源代码的依赖性,在实际检测中,还可应用动态检测技术。该技术利用非标准输入数据的构造,调试计算机运行软件系统,基于系统功能或者数据流向,排除系统中存在的异常现象,检测其存在漏洞。因此这一技术通常将输入接口或运行环境入手。与静态检测相比,动态检测具有较高的准确率,但由于计算机系统具有多样性,其功能与流程均存在差异,因此动态检测的检测效率低下。另外,动态检测只能测试漏洞的范围,而无法准确的认定。为此,在具体的检测过程中,常将二者结合在一起进行检测。作为一种特殊的检测方法,该方法通过对二进制文件反编译,获得伪源代码,获取虚拟执行环境VM,利用VM对系统寄存器的运行状态进行考察及执行状态,通过记录VM中虚拟内存每条指令访存地址,最后统计计算出每条访存指令实际的访问变量地址,解决了变量精确识别的问题。另外,在一些安全漏洞检测技术中,动态检测技术还可实现全系统模拟器动态执行环境,其原理是通过数据输入的追踪来检测系统漏洞。与源代码不同,这一技术则主要针对可执行代码,通过构建全系统模拟器来进行漏洞检测,并转换系统可执行代码,实现对原指令的追踪和分析。该方法有效的解决了动态检测码覆盖率问题,从而扩大了检测范围。在具体执行过程中,动态检测技术分为非执行栈技术、非执行堆与数据技术和内存映射技术。
1.非执行栈技术。基于栈技术的网络攻击给计算机系统造成严重威胁,其主要原因在于黑客等攻击者向栈中发送了恶意代码,导致存储在栈中的信息和数据被恶意改写。栈攻击技术全面,这也是其对网络系统造成较大威胁的原因。为防范这一恶意软件,就是采取非执行栈技术控制栈的执行代码涉入。其主要原理是禁止系统执行恶意代码,从而有效防止恶意攻击。非执行栈技术只有在操作系统层进行中才能起到积极作用,并且其影响系统自身性能。一旦系统同时存在栈溢出漏洞和堆溢出漏洞时,容易出现差错。解决这一问题可在操作系统内引入一个微小的改变,将栈页标记为不可执行,从而使其执行堆中的代码,而非栈中的代码。
2.非执行堆与数据技术。非执行堆技术的提出和应用尚处于初级阶段。这是由于非执行堆对计算机系统软件具有一定的影响。随着科技的发展和相关行业对这一技术的认可,其原理与非执行栈技术相似,以控制恶意代码的执行为控制数据技术的主要手段。但由于其技术尚不完善,因此应用并不广泛,将其与非执行栈技术相结合是提高其漏洞检测效率的关键。有试验显示,二者的结合可以有效的控制恶意代码执行,使其完全失去执行机会。基于技术的难度,此技术较非执行栈付出更多的代价。如能控制或者降低其对系统运行的影响,该技术还具有一定的发展空间。
3.内存映射技术。来自网络的攻击还包括通过使用以NULL结尾的字符串实现内存覆盖,以达到攻击的目的。映射代码页可有效控制NULL结尾的字符串向最低内存区跳转。另外一方面,一些攻击者还通过猜测地址的方式获取用户信息,内存随机映射使得同一页面获得不同的代码,使攻击者无法猜测。尤其是计算机缓存信息漏洞,具有一定的规律性,一旦攻击者通过一定的程序植入可修改这些具有规律性的数据,从而导致系统故障甚至瘫痪。内存映射技术在不注入新代码的基础上,可有效防止数据修改,确保计算机网络运行安全。低端内存空间不足对除代码页映射到低端区具有一定的影响。也就是说,内存映射技术只能对那些高端地址或者固定地址造成影响,并且对性能基本无影响,但在实际运行中,此类程序并不多。只有在程序加载过程中工作。
三、计算机网络安全漏洞检测防护方案
基于计算机安全漏洞的大量存在,还应充分利用安全漏洞检测技术,发现系统安全漏洞,并实施必要的检测方案。其中,主动测试方法应用广泛,通过测试程序的攻击来发现系统漏洞这种检测方法具有针对性,具体操作时可对目标主机的端口进行扫描,从而获得开放的端口,基于其提供的服务及时发现计算机网络漏洞。计算机网络为检测者提供了漏洞库,从而通过查找迅速确定系统漏洞的来源以及产生原因,向目标主机端口输送具有漏洞检测码的数据包,根据计算机主机的反应来确定系统是否存在漏洞,采取必要的防护措施,确保系统运行安全。其防护方案包括以下几个方面:
(一)发送含特征码的检测数据包。
特征码发射是漏洞查找的主要方式之一。首先,应从漏洞特征库中查找相应的特征码,构造数据包并在确保主机在线的前提下将其发送。该方式的主要问题在于如何控制空扫描以及检测数据目的端口的确定。值得一提的是,检测过程中如果主机处于离线状态或者计算机对应端口未开放,则无需数据检测,这样可有效提高检测效率。
(二)建立漏洞特征库的建立。
计算机系统具有庞大的存储功能,在计算机安全漏洞检测过程中,应充分利用其存储功能,建立漏洞特征库,记录全部包含安全漏洞的特征码,在实际检测中最终操作是针对网络数据包的操作,因此安全漏洞特征码要以确保检测数据的有效性为主。同时,漏洞特征库的建立还可提高漏洞判断的有效性和准确性,节省检测和修复时间。计算机系统的安全漏洞具有多样性特征,取漏洞的特征码对其效率的提高具有积极作用。
(三)漏洞扫描控制与调度。
漏洞扫描控制主要用于连接系统管理控制台与扫描调度。通过该系统,接收管理软件发出的命令,从而实现对计算机主机、网盘、服务端口以及敏感信息的全面扫描,从而控制整个系统的运行状态。漏洞扫描调度则根据扫描模块向系统发送的调度控制要求,促进各模块之间的协调。漏洞调度实现了远程扫描与本地扫描相结合。根据漏洞特征数据库所提供的漏洞特征,查询其对应的检测文件名称,并通过调度检验模块的方式进行漏洞验证。
四、总结
信息时代的到来,计算机网络具有不可替代的作用。但受到多种因素的影响,计算机存在一定的安全漏洞,严重影响用户的正常使用和信息安全。为提高其计算机的安全性能,其安全漏洞检测是关键。文章分析了静态检测技术和动态检测技术两种主要的漏洞检测方案。由于计算机安全漏洞检测具有复杂性,要求相关人员不断提高自身技术,并且进行多方面努力,才能确保计算机网络的安全,给使用者带来方便。
作者:曾金发 单位:江西财经职业学院