计算机软件中安全漏洞检测技术及其应用思考
- 格式:pdf
- 大小:287.33 KB
- 文档页数:2
计算机软件安全问题及防御对策研究发布时间:2022-09-14T03:00:41.305Z 来源:《中国科技信息》2022年9期第5月作者:刘天宇[导读] 随着我国计算机技术水平不断提升刘天宇石家庄财经职业学院河北石家庄 050000摘要:随着我国计算机技术水平不断提升,计算机软件种类越来越多,具备更加强大的功能,方便了人们的日常工作以及生活,同时促进各个行业的快速发展。
然而,在应用计算机过程中也存在计算机软件安全问题,也成为日常使用计算机软件的一个障碍。
为了有效提高计算机应用效率,工作人员应对计算机软件安全问题进行深入分析,并不断完善和优化防御措施,充分发挥出使用计算机软件的作用。
关键词:计算机;软件;安全问题引言在使用计算机过程中,不可避免地会遇到计算机软件安全问题,为了确保计算机的正常使用,需要做好病毒侵袭防御工作,有效保障计算机软件整体安全性,这也是目前计算机软件发展过程中非常重要的课题。
为了保障正常运行计算机软件,应充分重视计算机软件的安全性,避免在使用计算机软件时受到不同程度的影响。
只有全面分析计算机软件安全问题,并根据具体原因制定完善的防御措施,才可以逐渐提高计算机软件的安全性。
1计算机软件的安全检测概述何为计算机软件的安全检测,其指的是软件技术人员在开发软件的过程中利用自己的专业知识和工作经验来对软件运行过程中可能会发生或者存在的安全隐患作出专业判断,提前制定出针对性的安全检测计划并落实检测工作,为计算机软件的安全性能提供保障。
安全检测是计算机软件从最初开发到实际投入运行的核心环节,各类安全检测工作会贯穿于计算机软件应用的全过程。
只有达到安全检测的要求,计算机软件才能够得以面世应用,也只有通过安全检测的计算机软件才能够实现最初设计与开发投入使用后的功能一致性。
通常计算机软件的安全检测会历经验证程序、渗透检测和功能检测三个阶段,一般顺利通过这三个检测阶段的计算机软件基本上便可以在既定范围内顺畅运行,而且其安全性能也能够更好地满足广大用户的实际使用需求。
计算机软件安全漏洞的检测与修复方法一、引言随着信息技术的快速发展,计算机软件的使用越来越普遍。
然而,由于软件开发过程中的疏忽或设计缺陷,计算机软件的安全问题日益突出。
软件安全漏洞的存在给用户和系统带来了巨大的风险。
因此,对计算机软件安全漏洞进行及时的检测与修复成为了至关重要的任务。
二、计算机软件安全漏洞检测方法1. 静态代码分析:静态代码分析是一种通过分析代码本身进行漏洞检测的方法。
这种方法不需要运行代码,可以直接检测出潜在的漏洞。
通过对代码的语法和结构进行深入分析,静态代码分析可以识别出可能引发安全漏洞的代码片段。
在代码编写阶段,开发人员可以利用静态代码分析工具来检测潜在的漏洞,并进行修复。
2. 动态代码分析:与静态代码分析不同,动态代码分析是通过运行代码来检测漏洞。
这种方法可以模拟真实的运行环境,通过检测程序的执行路径和输入数据,寻找潜在的安全漏洞。
动态代码分析可以帮助开发人员了解程序在运行时的行为,从而定位和修复漏洞。
3. 模糊测试:模糊测试是一种通过随机生成、修改测试输入数据的方法来发现漏洞。
这种方法可以在不了解程序内部结构的情况下,对软件的安全性进行评估。
通过向程序输入各种异常、边界值和非法输入,模糊测试可以揭示程序中的漏洞,并帮助开发人员修复这些漏洞。
三、计算机软件安全漏洞修复方法1. 代码修复:在检测到安全漏洞之后,开发人员需要对代码进行修复。
修复代码的目的是消除潜在的安全漏洞,增强软件的安全性。
在进行代码修复时,开发人员应该尽量遵循安全编码的最佳实践,如避免使用已知的不安全函数、使用加密算法来保护敏感数据等。
2. 漏洞补丁:漏洞补丁是指通过安装更新的方式修复软件中的漏洞。
出于安全的考虑,软件供应方会及时发布漏洞补丁,用户可以通过更新软件来获取漏洞的修复版本。
因此,用户应该定期检查软件是否有漏洞补丁,并及时进行更新。
3. 安全策略:除了对软件本身的修复,通过制定安全策略也可以提高软件的安全性。
计算机软件平安检测技术研究论文计算机软件是计算机中的重要组成部分,同时也是实现计算机各种功能的根底,对计算机有效应用有着不可替代的作用。
在计算机软件使用过程中,其平安性是十分重要的一个因素,因而在计算机软件应用方面,应当通过一定技术手段检测软件平安,使其平安性能够得到有效保证,使计算机软件能够更好发挥其作用,更好为人们日常生活及工作需要效劳。
对于计算机平安而言,其属于比较复杂的一个系统,其所利用的主要就是信息系统完整性、保密性以及可用性,从而使计算机软件平安能够得到保证。
然而在计算机软件实际运行过程中,由于操作配置失误以及平安缺陷等方面因素存在,导致计算机软件在很多方面均有平安隐患存在。
从当前情况来看,这些平安隐患所包括的主要有两种,其一为自身配置存在错误,其二为软件缺陷导致的。
在这两种平安隐患中,自身配置错误出现原因为软件供应商以及系统管理员在对访问控制规那么进展定义时有错误出现而导致的;对于软件缺陷因素而言,即根本软件缺陷与无关软件缺陷,其中根本软件缺陷所指的为与软件平安相关错误,而无关软件缺陷所指的为与软件平安无关存在于程序中的一种软件缺陷。
在软件发生缺陷之后,会对系统平安性产生影响,配置措施以及软件错误导致各种系统漏洞以及软件漏洞出现,从而会引起软件受到不断攻击,对于这些漏洞而言,供应商在打补丁时又会打入新漏洞,从而导致恶性循环形成,对其它产品也会产生广泛影响。
2.1语法测试技术该技术方法属于静态检测技术的一种,出现时间比较早,也叫作词法检测技术,该方法仅仅对程序源代码中存在危险的系统调用以及库函数进展检测。
对于该方法而言,其是对检测软件中功能接口的语法生成软件进展测试输入,从而对在输入不同情况下软件反映情况进展检测。
对于该检测技术程序而言,通常情况下是先对软件接口语言进展识别,其次为对语言语法进展定义,最终使测试用例生产,并且在平安检测中应用。
2.2以故障注入为根底平安检测技术对于该技术而言,其优点就是具有较高的自动化检测程度,为相对而言比较充分的一种方法。
面向二进制程序的漏洞挖掘技术研究随着计算机技术的不断发展,软件的规模和复杂度不断增加,软件漏洞问题愈加突出,对于计算机安全而言,漏洞挖掘成为了一个非常重要的研究领域。
漏洞挖掘的核心在于发现并利用软件程序中存在的安全漏洞,这需要通过各种技术手段来实现。
面向二进制程序的漏洞挖掘技术是近年来该领域发展的热点之一,在软件安全和计算机系统领域得到广泛关注。
本文将介绍一些面向二进制程序漏洞挖掘技术,并探究其应用方向和发展趋势。
一、静态分析技术静态分析技术是指在不执行程序的情况下,基于程序的代码结构和语法,有效地查找程序中的缺陷或者错误。
静态分析能够检测出一些常见的安全漏洞模式,如缓冲区溢出、格式化字符串等,但也存在其局限性,尤其是难以处理程序中大量的分支结构。
在静态分析技术方面,现有的成熟的工具有CILK、Bandit等,这些工具广泛应用于代码质量分析和代码重构领域。
然而,静态分析技术的局限性仍然需要进一步的研究,以提高准确率和深度。
二、动态分析技术相比静态分析技术,动态分析技术的优势在于能够直接执行程序,从而更准确地检测漏洞。
动态分析技术主要有三种类型:符号执行、模糊测试和调试技术。
符号执行技术是一种自动化测试技术,通过构造数学符号,代替实际的变量,来模拟程序的执行过程,寻找出程序中隐藏的漏洞或者错误。
符号执行技术能够自动构造程序执行路径,准确地定位漏洞的位置,但计算成本非常高,难以扩展到大型软件系统。
模糊测试是通过自动化生成大量测试用例,并对测试输出进行分析,以发现程序中的漏洞和错误。
模糊测试被广泛应用于安全测试和漏洞挖掘领域,但其依赖于测试数据的质量和方法,因此需要人工干预来提高测试精度和准确性。
调试技术是基于程序的运行时环境,通过对程序执行过程的追踪和调试,来定位漏洞的位置。
调试技术能够有效地定位漏洞、提高漏洞挖掘的效率和准确性,但也存在着一定的限制,例如调试过程可能会改变程序的执行路径,从而影响漏洞检测的准确性。
软件安全漏洞检测技术的思考潘正辉【摘要】本文以软件安全漏洞检测技术作为研究核心,从静态检测技术与动态检测技术两个方面,对计算机软件的安全漏洞检测技术展开了详细的探讨,希望能为计算机软件安全漏洞的检测工作提供一定的理论参考.【期刊名称】《电子测试》【年(卷),期】2018(000)002【总页数】2页(P70,83)【关键词】计算机软件;静态检测技术;非执行栈【作者】潘正辉【作者单位】安谷科技股份有限公司,江苏无锡,214000【正文语种】中文0 引言人们已经迎来了信息时代,计算机软件在人们的工作和生活当中所发挥的作用也愈发突出,各行各业对计算机软件的应用也越来越广泛。
但与此同时,计算机软件中所隐含的各种各样的安全漏洞也逐渐被暴露了出来,越来越多的黑客开始对软件中的源代码漏洞展开攻击,这严重影响了人们的工作和生活。
因此,对软件安全漏洞检测技术进行研究,有着非常重要的意义。
1 静态检测技术1.1 静态分析静态分析,指的是扫描系统程序中的各项源代码的过程,并在源代码当中将关键句以及关键语法找出来,对这些关键句和关键语法的含义进行解读,从而分析软件的程序行为,利用软件漏洞的特性来实现对其安全性的检测。
在静态分析时,工作人员需要将系统程序分为若干个片段,并将这些片段和“疑问数据库”进行比较,如发现有漏洞或疑问存在,则需要对其进行评估和判定。
通常情况下,系统程序能够保持在稳定的状态下运行,就可以视为软件安全达到了相应的标准。
工作人员可以利用规则处理的方式,利用规则处理器将其转化为内部形式,这样就可以实现对软件程序的运行状况的全方位检测。
1.2 程序检验程序检验指的是利用抽象的软件程序来对模型进行形式化,并利用特定的检验方法来对软件漏洞加以检测。
它是将软件程序中的有向图建立成一个抽象的模型,从而对软件的特征加以检测。
一般情况下,程序检验包括符号化检验以及模型检验这两种方式。
其中,符号化检验是通过把抽象的模型转化成语法树的形式来进行检验,而模型检验是将程序转化为两个等价的自动机,再将这两个等价的自动机更换为两个新自动机,使系统被判定成语言可容纳形式。
安全漏洞扫描技术在软件开发中的应用随着互联网的发展,人们使用软件的频率越来越高,而软件安全问题也越来越引人注目。
随着网络黑客技术的不断更新,软件漏洞不断被挖掘出来,使得软件的安全性变得更加重要。
因此在软件开发中应用安全漏洞扫描技术变得越来越必要。
一、安全漏洞扫描技术的定义安全漏洞扫描技术是指利用计算机技术和网络技术对软件系统进行深入的安全性分析和评估,查找和检测软件系统中的安全漏洞,并提供相应的修复建议和技术支持,保证软件安全的可靠性和稳定性。
二、安全漏洞扫描技术的作用在软件开发中,安全漏洞扫描技术的作用是非常关键的,主要体现在以下两个方面。
1. 提高安全性能软件开发的过程中,安全漏洞扫描技术可以发现隐蔽的漏洞,排除安全隐患,开发人员或企业可以及时修复漏洞并提高软件的安全性能,避免在软件使用过程中出现不必要的损失或风险。
2. 提高软件质量软件开发有时候存在人为原因导致漏洞的产生,安全漏洞扫描技术可以对软件进行全面的安全性检查,帮助开发者从技术层面上保证软件的质量,为产品提供更好的用户体验和竞争力。
三、安全漏洞扫描技术的优点1. 物质优点使用安全漏洞扫描技术的物质优点显而易见,因为它可以节省企业人力、财力和物力投入,减少安全软件问题的发生。
2. 技术优点使用安全漏洞扫描技术还有技术优点,例如,对于每个软件系统而言,安全漏洞扫描技术都能够找到以往漏网之鱼,让攻击者再也找不到入侵的机会,从而保证了企业的安全。
三、安全漏洞扫描技术的实施方法安全漏洞扫描技术的实施方法主要包括以下几点:1. 对于企业或个人用户而言,选择一款好的安全扫描工具非常重要,一方面可以确保工具的系统兼容性和维护方便性,另一方面可以满足具体业务的需求,并且要时刻关注更新的功能和版本更新等信息。
2. 安全漏洞扫描技术需要实现自动化,目的是为了快速发现漏洞,及时提供修复建议和技术支持。
3. 安全漏洞扫描技术需要实现安全性的持续监管,开发者和企业在使用安全漏洞扫描技术时,需要定期进行全面和及时的漏洞检测,从而在软件开发过程中做好安全性的控制。
计算机网络安全技术在网络安全维护中的应用计算机网络的迅速发展,给人们的生活和工作带来了许多便利,然而也给网络安全带来了巨大的挑战。
为了保护网络系统的安全,计算机网络安全技术应运而生。
本文将讨论计算机网络安全技术在网络安全维护中的应用。
一、网络防火墙技术网络防火墙是保护网络系统免受未经授权的访问或恶意攻击的重要技术。
它可以通过设置规则,过滤和监控进出网络的数据流量。
防火墙可以防止网络中的恶意软件入侵和数据泄露,确保网络系统的安全性。
常见的网络防火墙技术包括入侵检测系统(IDS)和网络地址转换(NAT)等。
1、入侵检测系统(IDS)入侵检测系统是一种监控网络流量和系统活动的技术,用于检测和识别潜在的攻击行为。
IDS可以通过分析网络数据包和系统日志来发现异常行为,并及时给出警报。
通过及时发现攻击行为,网络管理员可以更快地采取措施,保护网络系统的安全。
2、网络地址转换(NAT)网络地址转换是一种将内部网络的私有IP地址转换为外部网络的公共IP地址的技术。
NAT技术可以隐藏内部网络的真实IP地址,提供一定的安全性保护,防止外部攻击者直接访问内部网络。
同时,NAT技术还可以通过将多个内部主机共享一个公共IP地址,提高网络资源的利用率。
二、虚拟私有网络技术虚拟私有网络(VPN)是一种通过公共网络(如Internet)建立安全的隧道连接的技术。
VPN技术可以有效地保护数据在互联网上的传输安全,防止数据被窃取或篡改。
VPN技术还可以实现对远程用户的身份认证和访问控制,确保只有授权用户能够访问网络系统。
VPN技术的应用非常广泛,特别是对于需要远程访问企业内部资源的员工和分支机构,VPN技术是一种非常方便和安全的解决方案。
三、数据加密技术数据加密是一种通过对数据进行编码和解码的技术,以保护数据的机密性和完整性。
数据加密技术可以防止数据在传输和存储过程中被未经授权的访问者窃取或篡改。
常见的数据加密技术包括对称加密和非对称加密。
安全环境下计算机软件的开发与应用分析随着信息技术的不断发展,计算机软件的开发和应用已经成为了现代社会中不可或缺的一部分。
随之而来的安全问题也日益凸显,对计算机软件的开发和应用产生了严峻的影响。
安全环境下计算机软件的开发与应用成为了当前亟待解决的问题。
本文将从安全环境下计算机软件的开发与应用角度出发,对相关问题进行分析。
1.严格遵守相关标准和规范在计算机软件的开发过程中,严格遵守相关的标准和规范是至关重要的。
这些标准和规范包括代码编写规范、安全漏洞检测规范、数据保护规范等。
只有严格遵守这些规范,才能够保证所开发的软件在安全环境下运行。
2.采用安全开发工具和技术为了在开发过程中尽可能减少安全漏洞的产生,开发人员需要采用安全开发工具和技术。
使用静态代码分析工具进行代码审查,采用安全编程技术进行代码编写等。
这些工具和技术的采用能够有效地提高软件的安全性。
3.加强安全培训和意识开发人员在软件开发过程中需要不断地接受安全培训,提高安全意识。
只有在加强安全培训和意识的基础上,开发人员才能够更好地识别和处理潜在的安全风险,从而保证所开发的软件在安全环境下运行。
二、安全环境下计算机软件的应用1.严格控制访问权限在计算机软件的应用过程中,需要严格控制访问权限,确保只有经过授权的用户才能够访问相关系统和数据。
采用身份验证、访问控制等技术手段,可以有效地防止未经授权的用户非法访问系统和数据。
2.实施数据加密和传输安全在计算机软件的应用过程中,需要对重要数据进行加密存储和传输,以防止数据被非法获取和篡改。
采用数据加密、SSL等安全传输技术,能够有效地保护数据的安全。
3.持续监测安全状况在计算机软件的应用过程中,需要持续监测系统的安全状况,及时发现和应对安全事件。
建立安全监控系统、实施安全审计等措施,能够帮助企业及时发现和处理安全问题,保障系统的安全运行。
安全环境下计算机软件的开发与应用面临着严峻的挑战。
只有在严格遵守相关标准和规范、采用安全开发工具和技术、加强安全培训和意识的基础上,才能够保证计算机软件在安全环境下的正常运行。
学年论文(文献检索及专业写作常识2015-2016 第二学期)题目:软件安全漏洞检测作者:熊文丽所在学院:信息科学与工程学院专业年级:信息安全14-1 指导教师:琳琳职称:副教授2016年5月25 日摘要互联网的全球性普及和发展,使得计算机网络与人们的生活紧密相关,信息安全逐渐成为信息技术的核心问题,软件漏洞检测是信息安全的重要组成部分,漏洞带来的危害日益严重,恶意攻击者可以利用软件漏洞来访问未授权的资源,导致敏感数据被破坏,甚至威胁到整个信息安全系统。
计算机软件安全漏洞,计算机系统的一组特性,这些特性一旦被某些恶意的主体利用,通过已授权的手段,来获取对计算机资源的未授权访问,或者通过其他办法对计算机的系统造成损害。
首先定义了软件漏洞和软件漏洞分析技术,在此基础上,提出了软件漏洞分析技术体系,并对现有技术进行了分类和对比,归纳出了该领域的科学问题、技术难题和工程问题,最后展望了软件漏洞分析技术的未来发展。
关键词:软件安全,漏洞检测,信息安全ABSTRACTGlobal popularity and development of the Internet so that the computer network is closely related to people's lives, information security has gradually become the core of information technology, software, information security vulnerability detection is an important part of the growing vulnerability harm, malicious attackers You can take advantage of software vulnerabilities to access unauthorized resources, resulting in destruction of sensitive data, even a threat to the entire information security system. A set of characteristics of computer software security vulnerability of computer systems, these features once exploited by some malicious body through authorized means to gain unauthorized access to computer resources, or through other means cause damage to computer systems.First, the definition of software vulnerabilities and vulnerability analysis software technology, on this basis, the proposed software vulnerability analysis technology system, and the prior art are classified and contrast, sums up the problem in the field of scientific, technical problems and engineering problems, Finally, the prospect of future development of the software vulnerability analysis technology.Keywords: software security; vulnerability detection; information security目录1 绪论 (3)1.1 背景 (3)1.2国外研究现状 (4)2 软件安全漏洞概述 (6)2.1漏洞的定义 (6)2.2 计算机软件所面临的主要安全威胁 (7)2.3 漏洞的分类 (7)2.4 漏洞的特征 (7)2.5 常见的计算机软件安全漏洞 (8)2.6 软件安全漏洞产生的原因 (9)3 软件安全漏洞检测方法 (10)3.1静态分析 (10)3.2动态检测 (12)3.3 混合检测技术 (13)4 软件漏洞分析技术 (15)4.1漏洞分析技术分类 (15)4.2软件架构分析 (15)4.3代码静态分析 (17)4.4 代码动态分析 (19)4.5 动静结合分析 (20)4.6漏洞定位 (20)5 软件漏洞分析中的关键性问题 (22)5.1 科学问题 (22)5.2技术难题 (23)5.3工程问题 (23)6 计算机软件漏洞检测技术的实践应用 (24)7 总结与未来展望 (25)致 (26)参考文献 (27)附录 (28)1 绪论1.1 背景计算机技术的发展促进了信息全球化的进程,提高了计算机的普及,人类的各个领域都已经离不开计算机应用。
网络安全防护及漏洞检测技术一、网络安全重要吗?这个问题现在似乎不能以是或否来回答。
因为网络安全已不仅在企业显得重要,而且已上升到国家和政府的意识行为。
我们知道,当今社会,随着计算机及通信技术的迅猛发展,网络已越来越渗透到一个国家的政治、经济和军事命脉,随着网络上各种业务的兴起,如电子商务、电子现金、数字货币、网络银行等的兴起,以及各种专用网(如金融网等)的建设,使得网络安全问题显得越来越重要,因此对网络安全技术的研究成为现在计算机通信界的一个热点,并且成为信息科学的一个重要研究领域。
现在世界上每年因利用计算机网络进行犯罪所造成的直接经济损失惊人。
据美国AB联合会早年的调查和专家评估,美国每年因计算机犯罪所造成的经济损失高达150亿美元。
1984年美国曾发生利用银行网络盗窃行为,造成了2500万美元的损失,我国也发生了多起类似事件。
去年发生的世界著名网站Yahoo、sina等瘫痪的事件大家还记忆犹新,各种网络事件层出不穷,这充分暴露了网络安全的脆弱性,而且网络安全不仅威胁着企业的直接利益,同时也在很大程度上危及着一个国家的安全,仅美国就发生多起黑客潜入五角大楼、航天局等国家机密计算机网络系统,窃取重要的网络情报。
而且,随着信息技术的发展,各国为了达到其政治、经济和军事的战略目的,掀起了一场前所未有的战争即信息战。
其实质就是利用各种计算机网络攻击技术来夺取未来信息战场的制信息权。
今年五一的中美“黑客”大战在舆论上也产生了很大的影响。
因此,各国都非常重视本国的网络安全建设。
我国也不例外,出台了一系列的政策和法规,并成立了相应的专门机构指导网络安全的建设工作。
为了有效地保障国家网络空间中的关键信息和基础设施的安全,建立全国性的计算机网络应急处理体系,国家成立了国家信息化工作领导小组(朱总理任组长),并成立了计算机网络与信息安全管理工作办公室,组建国家计算机网络应急保障体系,组织有关安全服务企业作为技术支撑单位。
计算机安全漏洞检测与漏洞修复技术方案分析作者:洪英萍来源:《中国管理信息化》2017年第18期[摘要]漏洞修复技术是计算机安全漏洞就检测工作的重点。
本文以现阶段计算机安全漏洞检测工作情况为基础,结合漏洞修复技术的特点,分析实际解决计算机安全漏洞问题的修复技术方案。
[关键词]计算机;安全漏洞;检测;修复技术doi:10.3969/j.issn.1673-0194.2017.18.093[中图分类号]TP309 [文献标识码]A [文章编号]1673-0194(2017)18-0149-02随着计算机技术的大范围推广,相应的安全问题也得到了突显。
很多黑客或者是病毒会依据计算机软件和系统中存在的问题,对计算机实施入侵,这样会影响计算机的正常运行,严重的还会导致相应的信息出现遗漏和损耗。
这就需要工作人员加以关注,对实际计算安全漏洞检测技术和修复技术进行分析。
1计算机网络存在的安全漏洞漏洞是在硬件、软件以及协议中,或者是系统安全方案中存在的问题,这会为黑客或者是病毒提供机会,在没有允许的情况下影响系统的正常运行。
现阶段,互联网技术和平台的发展速度较快,但人们并没有提出相关的方案来强化系统的安全性能,这导致计算机网络在缓冲区中存在很多问题,如假冒用户、完全欺骗等都是漏洞的展现形式。
现代化的社会发展为人们设计了自由、共享的网络环境,这促使人们的生活、工作以及学习得到了有效改善,也为网络安全漏洞问题的突显提供了平台。
黑客的攻击、病毒的影响,导致原本顺利发展的网络系统变得非常复杂,其中蕴含的丰富信息资源也会存在消失的危险。
若是受到不明攻击,一般的会影响信息数据、服务器难以正常运行、网络无法应用等情况,严重的会导致整体信息系统出现瘫痪、崩溃等情况,会出现资源和金钱的遗失,影响人们的生命财产安全和国家利益。
1.1操作系统安全漏洞操作系统漏洞是指计算机操作系统本身所存在的问题或技术缺陷,操作系统产品提供商通常会定期对已知漏洞发布补丁程序提供修复服务。
计算机软件中安全漏洞检测技术及其应用思考
发表时间:2017-06-19T10:07:11.270Z 来源:《基层建设》2017年6期作者:杨凯
[导读] 本文简单分析了漏洞检测技术,并回顾了模型学习这种技术的发展,同时探讨了一些检测技术的运用,仅供参考。
广西桂能软件有限公司
摘要:软件中的漏洞会给计算机带来极大的安全风险,安全漏洞检测技术应运而生,本文简单分析了漏洞检测技术,并回顾了模型学习这种技术的发展,同时探讨了一些检测技术的运用,仅供参考。
关键词:计算机软件;漏洞;检测;模型学习
引言
当前人们对计算机安全十分重视,但是基于计算机软件的特点,其十分容易遭受攻击,导致信息泄露或是计算机崩溃。
而软件中安全漏洞是最主要的安全隐患,安全漏洞检测技术,可以有效控制漏洞,保证计算机软件的完全性,因而本文所探索的内容将具备一定的价值。
1概述
当前我国已将智慧城市纳入国家战略,要在十三五期间实现智慧城市2.0,云物大智移五大技术,给计算机网络安全提出了新的挑战,信息泄露风险大,生老病死、衣食住行每一个环节都可能遭遇信息泄露。
计算机作为智慧城市当中主要的智能化设备,在硬件发展陷入瓶颈的今天,软件逐步成为发展的主要方向,而软件当中存在的漏洞实质上是十分正常的现象,但是这却会给黑客提供便利,方便黑客获取计算机的操作权限,进而导致信息泄露或是引发更严重的问题。
计算机软件是由人编制的,难免会出现漏洞也就是软件在编制过程留存下来的缺陷,出现了漏洞必须要堵上,所以就有了安全漏洞检测技术。
2安全漏洞检测技术
2.1静态检测
所谓静态检测也就是软件工程师经常提到的静态测试,运用一些技术对软件的源代码进行分析。
通常针对源代码中的语义、语法,根据最基本的逻辑检测和排除软件的漏洞。
目前主要采用推断、约束分析或是数据流分析的方法。
2.2动态检测
所谓动态检测就是在软件运行过程中进行检测,具体而言就是软件在执行的情况下,提取特定时间域内的软件变量的数值变化进行分析。
检测这种变化情况是否符合预定的变化轨道,从而判断软件在执行中哪个环节可能存在漏洞。
一般可以收集软件数据信息或是对软件执行过程进行全记录然后匹配漏洞模式,从而找到漏洞。
2.3混合检测
混合检测是在上述两种检测技术的内容上衍生出来的一种新检测技术,具有上述两种技术的特点,但是明显不同于上述两种技术。
它包括测试库技术、异常检测技术、源代码改变技术等,这些技术均是针对不同的需求和环境的检测技术。
2.4检测技术发展思考
在智能技术的支撑下,软件安全漏洞检测技术也在逐步智能化,未来也许会基于AI(人工智能)来对软件的安全漏洞进行检测。
当前有一种更加智能化和高效的漏洞寻找技术在银行卡、网络协议、异常软件等领域获得应用。
这种技术即模型学习——通过提供输入和观察输出来构建软件和硬件系统的黑箱状态图模型。
基于模型学习的检测技术,业界早在1956年就开始了研究,在国外学者的研究下,逐步完善,形成MAT框架,而MAT框架可以用来学习软硬件组件的黑箱模型,即假设一个组件,为系统学习SUL,它的行为可以由未知的Mearly 机(M)来描述。
进一步假设,SUL总是可以回归初始状态,那么结合SUL的初始状态,通过输入序列得到输出结果,实现会员查询,如图1。
后来经过进一步探索,模型学习不断完善,在图1的流程中发展出中间性抽象的数学模型,如图2,并在当前发展出更加先进的学习模型。
3技术的运用
计算机软件安全漏洞检测技术出现的目的主要就是为漏洞修复与更新服务,而漏洞修复和更新是一个比较广泛的概念,包括软件升级、打补丁、安装防火墙、杀毒软件以及调整软件关键部位的口令。
微软公司最早提出了对计算机软件漏洞进行补丁修复,有效管理补丁全生命周期内的识别、部署和评估才能保证不会再次出现同类漏洞。
3.1漏洞修复与更新
其一,微软作为世界上的计算机系统寡头,其补丁管理模型已经成为行业标准,其补丁管理先从识别漏洞开始,此时就是漏洞检测技术的运用,然后经过计划和测试,最终向用户发布补丁。
整个过程通过识别和评估计算机软件漏洞的威胁等级,通过完善的计划拿出补丁,并在系统中进行全方位的测试最终发布。
其二,CNCERT/CC补丁管理,这是在我国计算机网络应急技术处理协调中心产生的,并作为一种特殊的工程管理而存在,与微软的补丁管理很相似。
3.2模型学习的运用实例
Chalupar等国外学者使用模型学习来反向工程e.dentifier2,这是一种用于网上银行的智能卡阅读器,他们构建了一个Raspberry Pi控制的乐高机器人,操作读取器的键盘。
从笔记本电脑进行控制后,就可以使用learnLib学习e.dentifier2模型,通过一个版本的四态mealy机学习,揭示了存在的一个安全缺陷,并且表明该缺陷不再存在于新版本设备的三态模型中。
结语
计算机软件是人为编制的必然会存在漏洞,漏洞检测技术可以说与计算机软件的出现是相伴而生的。
随着不断的研究,漏洞检测技术也在不断的完善并且逐步智能化,本文对该技术的分析,可能存在不足,但能起抛砖引玉的作用,希望可以同业内同仁一起探讨进步。
参考文献
[1]陈国栋. 计算机软件中安全漏洞检测技术研究[J]. 无线互联科技,2015,(22):79-81.
[2]齐燕. 浅谈计算机软件中安全漏洞检测技术的应用[J]. 信息与电脑(理论版),2010,(10):14.
[3]陈楷. 计算机软件中安全漏洞检测技术的应用[J]. 数字技术与应用,2010,(07):90.。