前言:本站为你精心整理了计算机软件安全检测技术浅谈范文,希望能为你的创作提供参考价值,我们的客服老师可以帮助你提供个性化的参考范文,欢迎咨询。
摘要:随着社会发展水平的不断提高,计算机在人类生产、生活过程中发挥的作用日渐深远,计算机的应用已经与人类自身发展密不可分。计算机对人类社会的影响越来越大。做好计算机安全防护意义十分重大。计算机软件作为计算机系统中的基础组成部分,长期以来都面临着信息安全问题,特别是互联网出现以来,计算机应用遍布人类社会的每一个角落。每年因为计算机软件安全事故造成的经济损失难以计数,严重时甚至会造成人身伤害事故。加强计算机软件安全防护,是计算机工作者们的重要职责和工作任务。计算机应用广泛,很大一部分原因在于系统软件良好的兼容性以及应用软件数量、种类的繁多。面对庞大的软件规模,要做好软件安全管理,必须从源头抓起,在计算机软件开发设计阶段,使用软件安全检测技术对计算机软件安全性进行测试,查找安全隐患,为后续完善工作夯实基础。文章围绕计算机软件安全检测技术有关问题进行探讨,简要介绍了计算机软件安全检测的基本概念,强调了计算机软件安全检测中的注意事项,详细阐述了计算机软件安全的检测方法。
关键词:计算机软件;软件安全;检测方法
引言
计算机是现代社会最重要的工业产品,广泛应用于经济建设、工农业生产、科学研究、国防军事、人居生活、医疗卫生等人类社会活动的各个方面。计算机要发挥作用,离不开两方面的支持,一方面是硬件设施,另一方面是软件系统。二者相辅相成,共同配合,从而实现计算机各种复杂、尖端功能。计算机信息安全问题,几乎从计算机投入使用的那一天起就与计算机的发展紧密联系在一起。为保证计算机软件安全,保障计算机的正常安全运转,对计算机软件进行必要的安全检测是计算机软件开发过程中必须履行的重要程序。它能够有效发现计算机软件存在的安全隐患,从而针对性地开展修正、改进作业,以提高软件运行质量和安全水平。
1计算机软件安全检测基本概念
计算机软件的安全检测形成于计算机软件开发过程中,是计算机软件开发工作中的一个重要流程。经由计算机软件安全检测,技术人员对编程的软件安全有了较为全面的理解和把握,特别是能够及时发现软件中存在的缺陷和安全隐患,从而及时采取措施予以消除,提高软件安全水平。这种方法,可以有效降低软件开发项目所面临的市场风险,提高工作效率,保障经济效益。需要注意的是,计算机软件安全检测只是消除软件程序中存在的错误,确切的说,软件安全性检测只是发现错误,不能消除错误。根据检测所使用的原理,计算机软件安全性检测包括静态检测和动态检测两种。计算机软件安全性检测作为软件开发项目质量管理体系中的重要一环,用途之一是提高软件开发完成后的功能与设计目标的一致性。从实际工作角度而言,计算机软件安全检测包括三个部分,分别是功能测试、渗透测试和验证过程。计算机安全软件检测与其他检测软件间最大的差异在于,计算机软件安全测试的目的是为了防止目标软件超出设计范围工作,而其他软件测试则注重于软件的设计任务。同时,计算机软件安全性检测还用来评价目标软件的安全性能是否满足用户需求。这些需求具体包括软件授权、机密性、安全管理及访问控制等内容。
2计算机软件安全检测中的注意事项
计算机软件安全检测本质上是以软件安全性为目的开展的检测这一动态过程。在具体实施时,需要注意以下几个方面的问题:一是要确定检测方案,保障检测方法、原理、过程的科学性、合理性,结果的有效性。技术人员要全面、深入把握计算机软件设计要求及特性,结合具体环境选择适当的、科学的安全检测方法,并认真制定与之对应的、规范的检测方案。严格执行,确保检测结果可靠、有效。同时,负责软件安全检测的技术人员必须具备较为全面的软件安全检测知识和丰富的实践经验,在具体实施软件安全检测时,还要有软件设计人员参与,以确保安全检测质量。二是做好计算机软件安全测试过程中的分析工作。软件安全测试是一项非常繁琐的工作,软件内容越丰富,结构越复杂,这个过程的分析工作量和难度也就越高,需要根据情况进行代码级、系统级和需求级程度的分析。在每一个层次的分析中,也要有针对性的选择合适的科学手段,确保分析结果的正确性。检测技术和检测方案是开展计算机软件安全检测所必须重视的两个要素。
3计算机软件安全检测技术介绍
3.1计算机软件安全检测流程
大体而言,计算机软件安全检测采用模块式的组成。每个检测系统都会分为若干模块,如果软件规模很大,那么在系统上还会有更大的系统架构。一般情况下,计算机软件安全检测要经过模块测试、组装系统、系统结构安全检测、软件功能和性能有效测试、系统测试等一系列环节。每一个模块都有其检测目的,都是围绕目标软件若干性能而实施的。采用模块化结构,可以让检测更加精细、深入,覆盖范围更加广泛、全面,对于发现软件中的缺陷和安全风险。模块检测完成后再对整体的软件系统进行安全检测,评价软件整体安全水平。然后再围绕用户需要进行软件功能的有效性测试,最后进行软件的系统测试。以上就是软件安全性测试的全部过程。
3.2计算机软件安全检测技术方法
3.2.1形式化的安全检测
该检测方法是从计算机软件数学模型角度对软件安全性进行测试,需要配套的形式语言。现阶段使用较多的形式语言包括行为语言、模型语言和有效状态语言三种。
3.2.2模型安全静态检测方式
该方法利用软件行为和软件结构间的内在关系,建立测试模型,该模型要求可以被计算机读取。再使用这个模型进行相关测试,对比测试目标软件与模型的测试结果,判断二者间的相似性。
3.2.3语法检测
该方法主要对软件功能接口相关情况进行检测。使用不同的输入条件,对比结果间的差异,从而判断软件接口部分在语言识别、语言、语法定义方面的情况。
3.2.4故障注入式安全检测
该方法在软件安全检测自动化水平方面具有很强的优势,是当前计算机软件安全检测的重要手段。所谓故障注入式安全检测,就是使用故障模型,构建故障树,使用人工方式不断测试,并通过对测试结果的分析,判断模板软件故障容错性和安全性等内容。
3.2.5模糊式检测方法
模糊式检测是将动态检测技术和传统检测方法相结合。该检测方法具有使用简单、效果明显的特点,能够确定软件在现实世界的错误模式并对软件中的安全漏洞做出警告。
4结束语
综上所述,计算机软件安全检测是一项内容复杂、程序严格、系统性强的技术工作。计算机技术在发展,计算机软件安全问题层出不穷,计算机软件技术人员必须用科学的眼光看待问题,坚持不懈,不断提高技术水平,完善自身知识体系,紧跟计算机领域发展脉搏,开拓视野,积极进取,在实践中勇于尝试,在工作中勇于创新,在不断积累的过程中寻求突破,推动计算机软件安全事业的健康发展。
参考文献
[1]王清.软件漏洞分析技术[M].北京:电子工业出版社,2011.
[2]艾伦.软件安全工程[M].北京:机械工业出版社,2009.
作者:洪霞 余素珍 单位:江西电力职业技术学院