公务员期刊网 精选范文 软件安全论文范文

软件安全论文精选(九篇)

前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的软件安全论文主题范文,仅供参考,欢迎阅读并收藏。

软件安全论文

第1篇:软件安全论文范文

1计算机软件存在的安全漏洞

随着我国经济的不断发展,科技技术有了很大进步,互联网中的信息系统使用范围不断扩大,在各个领域发挥着不可取代的作用。由于计算机软件中有很多的安全漏洞,因此很大程度上信息系统就产生了一定的安全隐患。软件中的漏洞会对信息系统造成非常大的威胁,这就需要对计算机软件中的安全漏洞进行必要检测,安全漏洞检测是现代信息系统安全运行中非常重要的课题。计算机软件漏洞是指计算机系统在编程时出现的错误导致的缺点,这些缺点非常容易使计算机软件产生一些安全隐患和计算机自身的危险,计算机系统对有恶意的网络信息有非常高的敏感性,极容易出现对系统攻击行为。之所以出现这种情况,主要原因是在软件开发和研制过程出现的一些问题。漏洞主要有两种:安全性漏洞和功能性漏洞。安全性漏洞指的是在大多情况下漏洞不会影响计算机的正常运行,如果漏洞被黑客发现,软件运行时就会出现错误,严重者计算机会执行错误的命令,有很大的危害性。功能性的漏洞是指漏洞能够影响计算机正常运行,比如运行结果错误等等。漏洞特性主要表现在四个方面:1系统编程时由于编制人员的疏忽很容易出现逻辑性的错误,这种由于疏忽出现的错误很多是疏忽大意所致。2计算机在运行任务时很容易产生逻辑性错误,不同大小之间的程序模块相比可以看出逻辑性错误的发生率很高。3漏洞和软件环境有很大关系。4系统漏洞和时间也存在一定的联系,随着时间的延长,旧漏洞被修复但是也会产生新的安全漏洞。

2计算机软件安全漏洞的各项检测技术及应用

2.1安全静态检测

计算机软件安全静态检测,注重的是系统内部特性,静态检测和漏洞两者之间有共同的特点,这些特点之间也有很大的关联。目前漏洞的划分方法主要有安全性漏洞和内存性的漏洞。安全性漏洞对数据流的误差比较注重,很大程度上由于错误的内存形态而形成的;内存性漏洞对数据的准确性和类别有很大的注重性。因此,这种漏洞主要的检测技术方法就是在内部存储空间进行建模。因为静态检测方法之间有很大的不同之处,漏洞的处理也有很大的不同之处。所以,一些监测技术只能对漏洞进行必要的检测,但是一些方法在此基础上还能够对漏洞进行很好的处理。安全静态检测方法主要是对程序的代码进行扫描,对其中的关键句进行详细分析,然后根据设置的漏洞特性和标准对系统进行全面检测。分析关键语法是最早的静态分析法,它在分析时只对语法进行检查,把系统中的程序分为不同段落语句和数据库相互对比,如果发现有疑问,对其进行仔细的判断,从而进行检测;另一种检测方法就是按照标准进行检测。由于系统自身就是编程的标准,根据标准对计算机程序进行描述,可以通过语法对其进行描述,最后对系统进行整体检测。

2.2安全动态检测

2.2.1内存映射很多攻击者在对软件进行破坏时为了达到目的,会经常用到“NULL”结尾的字符串进行内存覆盖。采用代码页映射技术,攻击者能够利用“NULL”结尾字符串进行内存覆盖。

2.2.2非执行栈目前,出现了一些栈攻击软件的问题,主要原因是系统中栈的执行能力,由于栈内包含了所有数组变量,所以,攻击者通过向栈中书写一些恶意代码,再进行代码执行。预防这种攻击方法最为有效的方法是打破栈的执行力,使代码不能够进行执行任务。2.2.3安全共享库有些计算机中的安全漏洞主要是使用了不安全的共享库所致。安全共享库很大程度上可以预防恶意攻击行为。安全共享库有拦截和检测功能,主要是指使用动态链接方式进行程序运行,把不安全函数进行拦截和检测,最大程度上保护软件的安全。

2.3计算机软件安全漏洞检测技术的应用

安全漏洞检测技术直接关系到计算机的安全应用,其中在计算机软件安全漏洞检测中,其各项技术的应用主要集中在:第一,防止竞争条件安全漏洞应用。这种漏洞的应用一般是采用原子化处理竞争编码,这种编码有锁定功能,原子化操作进入锁定状态,详细的描述使用文件,很大程度上预防由于使用文件的变动使系统产生漏洞。第二,缓冲区安全漏洞检测技术应用。缓冲区安全漏洞检测主要是对软件程序中的一些疑问函数进行详细检测来预防缓冲区安全漏洞。第三,随机漏洞预防应用。对于随机漏洞的检测和预防需要用到性能良好随机发生设备,这种设备能够准确的对随机漏洞进行预防,其中最主要的原因就是该设备有密码算法。第四,格式化字符串漏洞检测技术应用。这种检测技术的应用一般是在代码中使用格式常量。

3结语

第2篇:软件安全论文范文

论文摘要:文章论述了软件开发生命周期中每个阶段添加的一系列关泣安全性的活动,提出将安奋浏试整合到软件开发生命周期中,分析了软件安全性浏试片祠试人员的要求,并以一个sql注入实例来具体说明安全性浏试在软。

信息网络安全事件发生比例的不断攀升、病毒利用软件漏洞猖狂地传播使得人们越发认识到信息安全的重要性。一般认为,传统的信息安全技术可以借助防火墙(包括软件和硬件防火墙)审核通过网络的报文、限定用户的访问权限等来防止非授权用户对重要数据的访问,但是这一观点是建立在软件安全基础上的。网络应用软件需要暴露在网络环境下,并且授权外部用户可以透过网络来访问此软件。通过网络,攻击者有机会接触到软件,如果软件本身存在漏洞,那么所有的防火墙就形同虚设。暴露于网络的应用软件往往成为被攻击的目标,是网络应用软件安全的重灾区。美国国家标准与技术研究院(nist)2002年的一项研究表明,美国花费在软件缺陷方面的费用达到595亿美元。公安部2008年全国信息网络安全状况与计算机病毒疫情调查分析报b说明,在发生的安全事件中,未修补或防范软件漏洞仍然是导致安全事件发生的最主要原因。

1安全测试的定义

安全测试是鉴别信息系统数据保护和功能维护的过程。安全测试需要涵盖的6个基本安全概念是:保密性、完整性、权限(身份验证)、授权(权限分配)、可提供性、不可抵赖性阴。133229.Com软件开发商都存在解决安全威胁方古的问题。对软件开发商来说,安全性是其核心要求,这是由市场力量所驱动,也是由保护关键基础结构及建立和保持计算的广泛信任的需要所决定的。所有软件开发商面对的一个主要挑战就是创建更加安全的软件,使其不需要频繁地通过修补程序进行更新。软件安全已经成为评判软件质量的一个重要标准,软件安全测试则成为保证软件产品能够符合这一标准的重要手段。软件的安全性测试主要是测试在正常和非正常情况下,软件能否对数据进行安全有效的操作。

2软件开发生命周期流程(参见图1)

对于软件行业来说,要满足当今提升安全性的需要,软件供应商必须转为采用一种更严格的、更加关注安全性的软件开发流程。这种流程旨在尽量减少设计、编码和文档编写过程中存在的漏洞,并在软件开发生命周期中尽可能早地检测到并消除这些漏洞。用于处理来自internet的输人、控制可能被攻击的关键系统或处理个人身份信息的企业和消费者软件最需要实施这种流程。在很多实际的软件开发项目中,安全测试已经成为sdl一个不可或缺的组成部分,并成为整个项目过程中的长期任务。黑盒一白盒测试方法往往执行在产品递交客户之前,但有的甚至在投人使用之后都未进行安全检测和风险评估;在一些安全性要求较高的项目中,虽然将安全风险评估纳人预算,但在实际操作中却对其并未作过多考虑。这样,所导致的直接后果是在开发工作几近完成的情况下进行问题分析处理所造成的成本将远远大于在软件开发阶段进行缺陷修改的成本。即便是从充分利用现有的有限资金和资源的角度来考虑,也有必要将安全测试囊括到sdl中。这样做虽然不能取代软件开发后期的渗透测试和脆弱性测试,却可以有效减少后者在施过程中的投人。

开发人员应该根据客户的功能需求来制定相应的安全规约,利用内建的明确的控制机制来降低安全风险。开发人员可以根据风险评估的结果来确定测试项目:软件能否可靠运行(safety)以及软件运行结果是否可靠(security)。

软件开发生命周期((sdl)中常用的测试方法有:单元测试、集成测试和验收测试。

2.1需求、设计阶段—安全性分析

在软件项目的设计过程中,人们往往只是关注系统的特性和功能,而没有充分考虑其他重要的非功能问题(例如性能、可用性、平台支持、安全,及要在稍后的软件开发生命周期中需要解决的安全性),导致了项目中许多不必要的波动和延迟。由于安全性分析影响了整个的设计和架构,因此应该在项目设计阶段充分地审查和了解它们。

安全性考虑包括一系列问题,例如访问控制和授权、敏感数据的适当处理、数据和存储器访问的适当使用,以及加密方法。一些安全性需求不是非功能的需求,如所实施的加密类型。另外,许多安全性需求是更直接地面向用例的,并且需要定义主要场景,以及定义备选路径和异常路径。在没有将功能的和非功能的需求适当地定义及并人软件中的情况下,编码错误和设计缺陷会表现出关键的信息和操作处于危险。我们应该像对待其他的需求那样处理安全性需求,并将安全性需求划分出优先级,设定范围,同时作为整体用例和功能需求的一部分进行管理。

2.2实施阶段—单元测试

受测试方式的影响,开发者对软件安全风险的评估不可能面面俱到。最典型的就是在代码设计阶段,开发者可以通过单元测试来检验代码行为,这些结果都是可以预知的,但是受到范围的局限,不能测试这些类或者模块集成后的行为。

实施单元测试可以从软件基本单位(单个类)的检测上保证输人的有效性;在可能出现恶意攻击的地方,也可以利用这一思想来组织针对单个类或者方法的单元测试,从而组织起软件内部的纵深防御策略,防止恶意行为对软件安全造成的损害。但是,这一方法将软件各组件进行强制孤立,因此对于因大量组件交互而引起的软件缺陷,利用此种方法无法检测。

单元层的安全测试比较适合于防止缓冲区溢出,格式化字符串以及数据缺失的审核。

2.3验证阶段—集成测试

在集成层,软件的整体安全属性变得可见和可测试,使得这一层的可测试属性数量相对单元层而言要多得多,但是对于跨站脚本和网络服务器提供的一些服务(例如安全套接层ssl和url过滤)的测试,存在一定的困难。我们可以将实际案例和风险分析的结果作为组织集成测试的指南。

集成测试要求测试人员通过安全测试培训,并且是有熟练技术的软件开发人员。

在这一层,我们可以开展诸如注人缺陷验证、旁路验证以及访问控制等方面的安全测试,来源于外部代码的安全审查结果也应该以集成测试的方式加以确认。

2.4阶段—验收测试

验收测试是软件产品交付客户之前的最后一个测试阶段,是在真实的测试环境中,利用基于恶意事件的安全检测模板,测试在典型的渗透活动中可被识别的安全缺陷。验收测试的这一特性(基于安全检测模板),使得我们可以借助于强大的自动化测试软件进行检测,并且可以用验收测试的结果来完善渗透测试报告内容,从而有助于开发人员理解软件的脆弱性以及针对软件脆弱性所采取的补救措施是否有效。

验收测试针对软件的外部api,因此不如单元测试和集成测试松散,并且只能测试当前已知且暴露的漏洞或者缺陷。非定制的商业软件重新设计的关键功能或者其他改变都会影响到软件的整体安全性,因此,如果改变会使得软件产生不可预知的缺陷,针对这些缺陷的测试就应该在单元层或者集成层开展,而不是在验收层。

在验收层,我们可以测试针对解释性程序(sql,xpath,ldap等)的注人式攻击、跨站脚本攻击、跨站请求伪造等。缓冲区溢出及格式化字符串等软件缺陷也可以在验收测试层得到检测。

3安全测试队伍

软件测试一度被认为是编程能力偏低的员工的工作,直到今天,仍然有许多公司把优秀的人才安排在编码工作上,也有更多公司让优秀的人才进行设计,仅有很少公司让优秀的人才进行测试工作。实际的软件工程实践证明,让对软件思想有深刻理解的工程师进行软件测试,可以大幅度地提高软件质量软件供应商还必须认识到组织测试人员进行“安全进修”对安全测试的成功实施至关重要。在这些情况下,软件供应商必须负责对其工程人员进行适当教育。根据组织的规模和可用的资源,拥有大批工程人员的组织可建立一个内部计划对其工程师进行在职安全培训,而小型组织则可能需要依赖外部培训。

测试人员要像攻击者那样带有“恶意的”想法去思考,而且在测试软件时还要扮演攻击者,攻击自己的系统,以此来帮助发现软件的安全漏洞。安全测试并不会总是直接导致安全溢出或者暴露可利用的漏洞,从而引出安全缺陷。要安全测试尽可能地发挥作用,测试人员需具备较强的分析能力,而这更多的是依靠熟练的开发技术和开发经验。

4漏洞举例:一个sql的注入式漏洞

有几种情形使得sql注人攻击成为可能。最常见的原因是,使用拼接形成的sql语句去操作数据库。譬如,传入用户输人的管理员用户名和密码,把这2个参数拼接形成sql语句,通过执行该sql语句,以便验证用户输人的管理员用户名和密码的正确性。具体过程如下:

一般情况下,用户传人正常的用户名和密码进行验证,如传人“myname”和“mypassword”进行验证,得到的sql语句将是:

这个sql语句很正常。但是,这只是开发人员预期的做法:通过管理员用户名和密码来验证账户信息。但因为参数值没有被正确地加码,黑客可以很容易地修改查询字符串的值,以改变sql语句的逻辑。譬如,分别传人“myname’ori=1--”,"mypassword",得到的sql语句将是:

在用户名“myname’ori=i--”中,第一个“”’结束了原有字符串中第一个单撇号的配对,"or”后面的“i=i”会导致不管前面的验证结果如何,都会返回真true值,而随后的“一”将把其后的sql语句注释掉。现在问题出现了,不管使用什么用户名和密码,都能验证通过。在存在漏洞的数据显示页面,如果注人join语句,就能获取数据库里的所有数据,显示在页面上,如获取用户名、密码等;而注入up-date/insert/delete语句将改变数据,如添加新的管理员账号等。这样,数据库将不再安全。

sql注人安全漏洞的形成,根本在于sql语句的拼接,只要放弃sql语句拼接,适用规范的加码访问方式,问题自然迎刃而解。以下便是修改后的安全验证方法:

第3篇:软件安全论文范文

关键词:加油机,防作弊,措施

 

经营者以前常用破坏加油机的准确度、更换电脑芯片、加装遥控装置等手段来“短斤少两”、偷税漏税以谋取不法利益,扰乱了燃油市场的正常经济秩序,损坏了消费者的合法利益。JJG443―2006《燃油加油机检定规程》中明确要求燃油加油机必须强制安装防作弊系统,自2006年9月8日后,加油站新安装的加油机,必须为防作弊加油机。

由电路模式可知:(1)监控芯片和计量芯片“各负其责”,监控CPU接收计量CPU的油量数据;(2)监控CPU认为计量CPU油量数据的生成是正确的。可是油量数据的生成正确与否却没有得到有效监控。

旧的税控燃油加油机可作弊的地方主要包括:(1)修改计量软件:改变脉冲当量;给监控芯片多发油量数据。(2)传输通道作弊:插入脉冲信号。论文参考。(3)传感器作弊:增加脉冲数;不出油也出脉冲。(4)流量信号作弊:少出油;油回流。论文参考。

旧的税控燃油加油机常用的作弊手段包括:(1)机械作弊:私拆铅封调整测量变换器的机械调整装置,机械作弊易发现,稽查起来也较容易。(2)更换计控主板作弊,既偷油,又偷税。(3)修改计量软件、传输通道作弊、脉冲信号源作弊:一般采用较高层次的技术手段,如:通过后台来控制修改后的计量软件作弊,通过无线技术(如遥控)来控制传输通道或脉冲信号源作弊,这些作弊手段可以做得非常隐蔽,还可以相互间进行组合,技术稽查的难度非常大。

2006年3月8日,国家质监颁布了JJG443―2006《燃油加油机检定规程》,对燃油加油机的防作弊提出了明确的要求。从防作弊系统工作原理可知:(1)流量信号经过编码器进行变换后,直接转化为油量数据,加密后送给监控微处理器,同时保持原来的脉冲信号不变,发送给计量CPU。(2)监控CPU解析油量数据,并和计量油量数据进行对比。(3)编码器和监控微处理器(即“税控芯片”)相互配合,共同完成防作弊功能。(4)从源头上防止在

脉冲信号传输环节、加油机主板环节出现的各种作弊行为。

防作弊系统由编码器、RS232接口(转接芯片)和监控微处理器(编码税控芯片)3部分组成。论文参考。

防作弊系统防作弊的有关措施包括:(1)编码器和监控微处理器的双向验证。编码器和监控微处理器必须进行双向验证,建立安全的传输通道。双向验证失败后,监控微处理器将禁止加油机加油,并显示错误信息。双向验证是通过认证算法和安全的认证协议来保证的。双向验证不可伪造。(2)防止修改脉冲当量或增加脉冲数作弊。加油机脉冲当量检测功能的启动是在初始化后,一旦启动脉冲当量检测功能后,每次加油时都进行防作弊检测。每次加油时,监控微处理器对比编码器密文发送的油量数据和计量方发送的油量数据,看是否超出允许的精度范围(规程规定为±0.6%)。发生超差时,记录相关的信息,便于相关部门的事后稽查。规程规定,出现5次超差后,监控微处理器就会锁机,并显示相应的信息。加油机对应的枪就不再继续加油,只有通过重新初始化或质量技术监督部门的处理才允许重新加油。(3)防止换计控主板作弊。加油机脉冲当量检测功能启动后,加油机每次换计控主板,编码器允许最多加3次油。超过3次,编码器会切断脉冲,禁止加油机继续加油。只有通过初始化,该加油机才允许继续加油。(4)防止利用编码器作弊。编码器不可以打开,打开编码器将失效并且不可恢复。编码器和加油机测量变换器间要进行铅封,防止编码器被随意更换。(5)作弊稽查。编码器和税控存储器都保存有每次异常的明细记录,包括加油数据、日期、加油量的偏差等信息。这些信息密文存放,不可修改。只有计量稽查部门用POS计才能读取。

通过以上分析可以知道:防作弊系统采用测算脉冲当量的技术,可以控制通过更改脉冲当量(更换计量微处理器)进行计量作弊的现象;采用防作弊编码器可防范通过增加脉冲数来进行计量作弊的现象;采用编码器与税控微处理器双向验证的技术,可防范通过更换加油机电脑主板进行计量作弊和偷税漏税的行为;燃油加油机的防作弊系统,其从加油数据的产生源头入手,充分发挥税控微处理器的作用,使编码器与税控微处理器有机地结合成防作弊系统,有效地防止了通过更换电脑主板偷税作弊的行为,同时控制了通过增加脉冲数和更给脉冲当量(更换计量微处理器)进行计量作弊的现象。燃油加油机防作弊系统的应用,维护了燃油市场的正常经济秩序,保护了消费者的合法利益。

参考文献:

[1] 卢波. 燃油加油机如何检定[J]. 中国质量技术监督, 2010, (01) :60-61

[2] 李恩泉. 加油机检定应注意的问题[J]. 品牌与标准化, 2010, (06) :26

[3] 王松. 燃油加油机检定小经验[J]. 中国计量, 2010, (02) :116

[4] 黄振宇. 国内外对加油机计量软件安全的监管手段比较[J]. 计量与测试技术, 2010, (02) :1-2

[5] 任栋. 燃油加油机因温度影响在周期内计量出现超差[J]. 计量与测试技术, 2010, (01) :17,19

第4篇:软件安全论文范文

关键词:嵌入式软件;中断冲突;软件安全漏洞

引言

随着嵌入式软件越来越多的应用在工控领域,其承载着越来越多的数据采集和处理、数据通信、自动控制与管理、系统安全保障等重要任务,同时也满足同步处理、实时处理、突发事件处理等性能要求。嵌入式软件的复杂性要求中断技术成为软件设计中必不可少的组成部分。中断技术的使用很容易引入中断资源的使用冲突,这些冲突存在着随机性、隐蔽性和不可预知性,一旦发生将会造成程序错误,甚至导致严重软件故障,尤其对航空航天等对可靠性安全性要求极高的领域,如何发现和消除中断冲突带来的安全隐患已经成为一个严峻的课题。

一、什么是中断冲突

冲突体现在代码针对某个或某些共享资源发生了访问竞争而造成程序错误。如果某个资源在被读取的过程中被打断,进行了写操作,或在被写的过程中被打断,进行了读取或重写操作,则可能存在访问冲突。“被打断”包括主程序中的资源被某个中断服务子程序打断、一个中断服务子程序的资源被某个高级中断服务子程序打断等情况。

二、如何识别和判断中断冲突是重要前提。

(一)首先通过一个简单的例子来了解一下什么是中断冲突:

某嵌入式软件中包含遥控和遥测两个任务,由两个中断服务程序来实现,遥测任务优先级高于遥控任务,即遥控任务可以被遥测任务抢占,两个任务中均进行模式设置,模式设置由一对组合变量TM_Mode和NewModeSet实现,遥控任务中代码如下:

TM_Mode = TM_Mode| 0xC0; (1)

TM_Mode = TM_Mode& 0x03; (2)

NewModeSet = (NewModeSet& 0x38) | 0xC0; (3)

在遥测中断中会启动遥测任务,由于遥测任务优先级高,若遥控任务被遥测任务打断,遥测任务也对TM_Mode和NewModeSet进行设置,遥测任务中代码如下:

If(TM_Mode>= 0xC0)

{

TM_Mode = (TM_Mode& 0x03) >> 4;

NewModeSet = NewModeSet& 0x3F;

}

如果在遥控任务的第(1)句和第(2)句之间被遥测任务打断,则会改写TM_Mode和NewModeSet的值,遥测任务执行完成后返回遥控任务继续处理时则造成TM_Mode和NewModeSet不匹配的错误。

(二)再通过一个例子进一步分析中断冲突:

软件中设置54字节控制信息数据,控制信息数据存放在buf[0]~buf[53],其中buf[48]为压力传感器温度数据,buf[49]为压力传感器压力数据,buf[53]为前53字节的校验和。在主函数中采集buf[48]和buf[49],在外部中断4(采样中断高优先级)中依次采集buf[0]~buf[47]和buf[50]~buf[52],读取主循环中采集的buf[48]和buf[49],并计算校验和写入buf[53]。在外部中断6中(取数中断,低优先级)发送54,字节控制信息数据。与问题相关的流程图如下:

从流程图中分析,产生数据访问冲突的场景有三个:

场景一:外部中断4完成累加和计算退出中断到进入外部中断6发送数据前的时间段内,若主循环恰好运行到对buf[48]和buf[49]进行写操作语句,在外部中断6发送之前buf[48]和buf[49]被改写,而未重新计算校验和buf[53],导致外部中断6发送的控制信息数据校验和错误。

场景二:主程序写buf[48]和buf[49]之间产生外部中 v 断4,读取了buf[48]和buf[49],并对校验和进行了计算,退出外部中断4返回主程序后,又对buf[49]进行写操作,在外部中断6发送之前buf[49]被改写,而未重新计算校验和buf[53],导致外部中断6发送的控制信息数据校验和错误。

场景三:外部中断4的优先级高于外部中断6,若在外部中断6发送buf[0]~buf[53]的过程中产生外部中断4,在中断4中对buf[0]~buf[47]、buf[50]~buf[52]以及校验和进行了写操作,待退出外部中断4返回外部中断6执行时,由于一部分数据已经被发送,后一部分数据以及校验和在外部中断4中被刷新,仍会导致发送出去的控制信息校验和错误。

我们可以通过静态分析法检查中断资源冲突,针对所有中断服务子程序中访问资源,逐一分析其在主程序(含其调用的子模块)、各个中断服务子程序中的访问情况,以确定资源访问过程中是否存在冲突:

表1 中断属性表

表2 中断程序使用资源引用关系总结表

此方法不仅能有效检测多字节的变量、缓冲区、数组的数据访问冲突,同时也能够检测寄存器访问冲突,比如主程序给某个寄存器赋值后,被中断打断使用该寄存器进行其他赋值,则在中断返回后主程序使用该寄存器数值时,导致数据被意外改写。目前北京轩宇信息技术有限公司开发的检测工具SpacChecker能够有效检测此类冲突资源。

三、中断冲突的分类

中断冲突包含主程序与中断服务程序的资源冲突,低优先级中断服务程序与高优先级中断服务程序的资源冲突。可导致的故障可分为中断向量初始化故障,中断现场保护和现场恢复问题,多级中断与主程序相互干扰问题,中断嵌套问题,与时序相关的中断冲突问题。

四、冲突检测的意义

嵌入式软件研制中,广泛采用中断服务机制来实现任务需求,但中断系统的设计和实现过程很容易引入软件错误。导致软件在运行过程中不定时发生莫名的错误或遥测数据错误等不可预知的错误,影响软件的正常运行。

由于中断触发的随机性和不确定性,造成软件测试过程中很难发现和定位该类问题。一旦软件带着这些安全漏洞层层闯关并最终烙焊、生产,将会给使用者带来安全隐患,严重的甚至会造成不可估量的损失。

五、解决方法研究

(一)关中断法:读/写过程关中断是常见的数据访问冲突预防措施,在可能产生中断的位置关闭相关中断,以保证数据不被打断,尤其是多字节数据和原子操作语句,采用该措施是非常有效的。另外要注意的是在初始化完成前是不能够打开中断的,因为如果提前打开了中断,在初始化工作还未完成前有中断信号产生,程序允许中断触发,此时中断向量入口还未初始化,则程序将跑飞。关中断措施在具体实施时,需要特别注意如下两个方面:一是确认当前关中断不能意外被打开,如果此时关闭了某一个中断,但在另一个未被关的中断服务子程序中打开了该关闭中断,则造成当前关中断操作失效。二是需要结合软件需求确认当前关中断时间是否影响软件性能要求,如果关中断时间太长影响软件对中断的响应时间,则造成其他功能失效。

(二)兵乓存储法:是一种应用于数据流控制的常见处理技巧,输入数据流通过输入选择单元将数据流分配到两个数据缓冲区,一个模块对一个数据缓冲区进行读操作过程中,另一个模块对另一个数据缓冲区进行写操作,交替使用,循环进行,避免了数据冲突,提高处理速度。乒乓存储法占用的内存区相对较多,如果软件内存较小,或者内存使用率较高时,可酌情考虑。

(三)设置中断发生标记法:在读数据之前设置该标记为无效,在中断服务子程序中写该数据后置标记为有效,读写完成后判断该标记是否有效,如果有效则表明该数据已被中断改写过,需要重新读取,以保证当前数据是最新的同步数据,而不会出现跳变。此方法可常用于多字节资源访问的处理,而且常用于资源读取操作。

另外,中断冲突是设计引入的,设计时需要对资源、时序进行分析,采用针对性的规避措施。有些时候不好的编码形式也会引入中断冲突相关的错误,因此改善编码形式也是一种有效措施。

六、结束语

针对当前嵌入式软件中常见的中断冲突,本文基于静态分析技术进行了分类分析,并针对软件安全漏洞给出了不同解决方案,可有效地解决中断冲突问题,提高软件的可靠性安全性,可在较广的应用范围内推广。如果冲突资源量较大的情况下,冲突分析的工作量将会相对增加,如何快速高效准确地分析冲突则需要进一步优化。此外,解决方案也存在各自的利弊,软件设计人员需根据软件实际需求进行选择。希望本文能为软件设计人员提供参考。

参考文献:

[1]杨芳.嵌入式软件中断系统资源检测技术.计算机工程与设计,2010 年

[2]吴萍,陈意云,张健.多线程程序中断冲突的静态检测[J].计算机研究与发展,2006,43(2):329-335.

[3]董丽.航天型号并发软件测试技术研究 [D].北京: 中国航天第

二研究院硕士学位论文, 2005.

第5篇:软件安全论文范文

目前我国研究生教育进入了跨越式发展阶段,招生规模不断扩大。根据国家相关部门公布的数据,截止到2005年,我国研究生在校数量已突破100万人,仅次于美国[1]。近几年全国硕士生和博士生招生规模仍在扩大。鉴于研究生必须同时进行专业学习和科学学术研究,能力较强,目前越来越多的研究生加入到高校科研队伍中。《中国教育报》在2005年5月就指出:“近5年来,在国防科大获得国家和军队科技进步奖的400多项成果中,有研究生参与攻关的占96.4%。”[2]这说明,目前研究生参与科学研究非常普遍。由于高校承担科研课题有很多是项目,科研和保密工作必须同时兼顾。根据“海恩法则”[3]和“木桶原则”[4],研究生的信息安全保密素质不容忽视,否则容易对科研项目造成不可挽回的损失。我们在调查研究在读研究生工作、学习和生活特点的基础上,详细总结了在读研究生在保密方面存在的常见隐患,而后提出了有针对性的解决途径,为研究生同时做好科研项目及信息安全保密工作提供有益的探讨。

二、在读研究生日常行为及信息安全保密隐患

我国的研究生学制一般是,硕士两至三年,博士三至五年。入学第一年多偏重于课程学习安排,一年后会逐步介入科研学术工作,直至毕业后回各自所在单位上班。因此在读研究生具有流动性大、学术交流面广、周期短等特点。这些特点使得研究生在信息安全保密方面存在一些独特的问题。在校研究生长期生活在和平环境中,对保密的重要性认识不足。相当一部分研究生只重视专业知识的学习和科研项目的攻关,而对应该同期进行的科研保密工作存在思想上不重视、技能上不具备、落实上不彻底等现象,这种情况使得研究生所参与的科研项目存在很大的泄密隐患。调研研究生的日常学习和工作等习惯,发现研究生在做以下事情时,存在诸多安全保密隐患。

(一)计算机的日常使用及存在隐患。

计算机是每个研究生进行科学研究、撰写学术论文、上网查询资料等相关工作时都必用的设备,也是日常上网游戏、聊天、下载软件的必用设备。经调查发现,计算机的使用存在极大的泄密隐患。

1.公私不分

科研用计算机和平常学习、娱乐用计算机应该严格区分。而实际上,研究生通常只有一台计算机,所以科研、学习和娱乐资料普遍存在混为一体使用的情况。科研计算机上存储的许多文件是和科研项目不相关的其他信息,如学习资料、歌曲、电影、照片等。这些信息来源各不相同,有来自互联网的,有来自U盘的,也有从其他非机器拷贝的,种种来源极易导致木马或病毒随着这些信息进入科研用计算机,造成信息被神不知鬼不觉地盗走或破坏,产生不可估计的损失和后果。

2.交叉互联

科研计算机不能连入互联网。但由于互联网的资源丰富,必然有一些科研资料来自互联网,这时U盘等移动存储介质成为拷贝、传输文件的常用工具,由此引起的交叉互联问题,是摆渡木马盗取秘密的常见途径,因此交叉互联存在极大的泄密隐患,不容忽视。

3.违背计算机安全防护最小化原则

无论是操作系统还是应用软件,都不可避免地存在安全缺陷或其他漏洞,而缺陷和漏洞是黑客进行网络攻击的主要手段之一。为减少被攻击的可能性,在安装计算机软件时应遵循最小化原则,即不必要的软件一概不装,必要软件的不必要的功能一概不要,必要的功能也要加以严格限制。调查中发现绝大部分研究生奉行的是最大化安装原则,在计算机上安装软件时,由于硬盘足够大,嫌多次装麻烦,往往是哪些软件可能有用,就一次性找齐装上,而且是全部安装。这些行为使得计算机存在更多的缺陷和漏洞,容易给窃密之人以可乘之机,增大了泄密隐患。

4.计算机安全防护方法不到位

由于计算机系统的复杂性和网络攻击技术的多样性,任何一种单一的安全防护技术都无法对抗所有的安全威胁。所以在实践中,应同时采取多种防护技术。如防火墙产品、杀毒软件等应同时安装并学会配置。而实际上大部分人对这些软件尤其防火墙的使用仅限于常规或默认的使用方式,难以最大限度地利用这各种防护软件的作用,增大了计算机的使用隐患。

(二)各种可用作移动介质使用的电子设备的使用及存在隐患。

目前可用作存储介质使用的电子设备很多,从传统的U盘、移动硬盘,到MP3、MP4、MP5,再到手机、SD卡等,这些介质可在计算机上即插即用,研究生经常是怎么方便怎么用。这种习惯,容易使病毒和木马泛滥,泄密隐患巨大,必须严加管控各种电子设备的使用。

(三)学术论文和毕业论文的撰写和学术交流中存在泄密隐患。

研究生攻读学位,必须撰写学术论文,通过互联网进行传送、审稿和修改、发表等。学术论文一般都是日常科学研究的总结,稍不留意就会将一些科研机密写入文章中。

(四)日常生活其他隐患。

研究生和一般大学生相比,课程少,一般都集中在一年内学完,而后转入科研为主,因此日常生活较为自由,日常交往和聚会较多,不经意中就会出现密从口出的情况,因此日常交往容易泄密的隐患客观存在。

三、提高在读研究生保密素质的途径

针对研究生存在的保密隐患,需要从思想、技术、管理和监督上多方面采取如下措施,提高保密素质。

(一)思想上,定期开展各种形式的保密教育,普及高科技导致窃密和泄密的相关知识,发挥导师的作用,强化保密意识。

高校科技作为国家科技中一支重要的力量,其研发力量占全国科技力量的1/3以上,所产生的科技成果涵盖了当前科学技术的各个领域,为推动我国科技与经济的发展发挥了重要作用,高校已成为国家科技保密的重要阵地[1]。研究生作为高校科研的一支重要力量,必须具有保密意识和保密技能。因此必须提高研究生的保密意识,防止各种过失泄密。普及高科技窃密和泄密的相关知识,定期进行各种形式的保密教育,系统讲授信息安全防火知识,从研究生自身保密素质上下工夫,强化保密意识和保密技能,是最有效的应对措施之一。

触及心灵、不拘一格的保密教育形式和内容,惨痛的泄密案例分析,是让研究生绷紧保密这根弦,做到日常生活不泄密,提高自身保密意识,防范日常泄密的利器。同时,注意发挥导师的榜样力量。研究生对保密工作的重视和导师日常的言传身教是分不开的。所以强化保密教育应从导师抓起。保密无小事,只有导师的保密素质过硬,日常言行重视保密工作,严格遵守保密规章,才能深刻影响研究生的一言一行。

(二)技术上,提高研究生的安全水平,配备各种硬件或软件防窃密或泄密产品。

目前针对交叉互联、随意使用移动存储介质、不按规定进行防护等问题,已有各种各样的软硬件产品,因此购买相应防护产品,进行技术防范是防止泄密或被窃密的有效应对措施。

技术防范应该从研究生的计算机安全水平着手,使研究生了解计算机的安全防护原则和防护方法。牢记安全的相对原则、安装各种软件的最小化原则和信息的隐蔽性原则等;日常使用防火墙产品,防范网络攻击;使用杀毒软件,防范病毒;及时更新安全补丁,保持系统和应用软件安全,等等。同时,必须安装防移动载体交叉使用的保密管理系统,防携密外出的软硬件产品,防非法连接互联网的检测软件等。

第6篇:软件安全论文范文

关键词:无线电监测;计算机;网络信息安全保密

从现代的社会整体情况来看,我们已经一步一步进入了全面的信息化时代,我们传统的生活方式和工作途径已经被先进的通信技术逐步改变。无线电技术的信息通信技术的技术核心,需要无线电通信手段进行信息的传递和接收进行机密保护。伴随着计算机行业和互联网的不断普及和发展,我们逐渐关注计算机的网络通信安全问题。鉴于目前这种网络环境和市场对网络安全的需求,在此简单分析了无线电监测过程中对计算机的网络进行加密安全保护。

1计算机网络信息泄密的原因分析

1.1计算机硬件设备安全问题

计算机之所以能实现正常的通讯功能,和计算机的硬件存在有密不可分的关系,因为硬件设备的性能决定计算机能否的流畅运行。为了保证上网的快速和便捷,目前各种微型、小型计算机的产生得益于PC电脑能够缩小自身的尺寸,使得电脑能够更加的方便携带,但很多信息黑客正是运用了这些变化,破解并窃取使用者电脑中的信息。

1.2计算機软件安全漏洞问题

现代人们非常的依赖计算机,不管是工作和娱乐,计算机软件的开发和使用为人们的生活提供了便利。虽然很多计算机技术人员在软件的开发中就已经考虑到软件的安全性问题,但是难免出现疏漏,留下软件的技术漏洞,许多电脑黑客或者病毒就利用了这一缺陷,入侵到计算机中,窃取使用者的信息,这对于计算机通信安全的危害是非常大的。现在很多软件具有修复功能,可以及时发现软件存在的漏洞并进行修复,采用这种新技术,既能够防止病毒的入侵,又保护计算机的安全。软件漏洞已经成为了现代计算机安全中一个不可忽视的问题。

1.3计算机人为主观操作错误的存在

网络信息的和传输都是个人完成,在建立信息传输的过程中,信息一方面容易改变原有的意思,导致了信息在源头处传输的过程中容易改变自身的真实性,安全通信体系难以建立。另一方面,计算机使用人员自身安全意识不足,或者是使用的过程中,自身的操作存在问题和缺陷,也让信息泄漏的风险提高。很多计算机安全人员对于信息安全的重视程度不够,可能导致重要的信息外泄,被黑客利用。

2无线电监测技术概述

无线电监测技术是一种基础的信息传播和通信途径,可以用对应的通信技术手段和通信器材进行无线电信号的判定和监测,根据无线电信号的传播频率和网络带宽等数据进行监测,从而实现对信号的诊断识别,屏蔽和封锁不被系统识别的不明信号,以此来保证信息的存储安全。计算机可以通过无线电监测得到更加全面的保护,而且可以很好地保护与网络断开的离线计算机,并且可以对网络的安全性能进行评估。无线电监测主要有以下几项监测的内容:

2.1立体监测

无线电监测技术可以根据互联网信息中的网络地图等各种信息处理平台,对时间和空间维度进行判断,对计算机周围的电磁场环境进行监测,一旦发现周围电磁场出现变化,可以立即对新加入的无线电信号进行监测和识别,保证电磁环境的安全。

2.2自动监测

无线电监测技术可以根据网络情况的变化,自动调节和控制各种监测项目,对各种流程快速调整,实现计算机进行自动安全监测。

2.3主动监测

无线电监测技术能够实现主动监测,当值班监测信号出现异常的情况下就会自动报警,从而主动的实现对计算机信息的防护。

2.4协同监测

无线电监测技术能够建立中心监测网,对监测设备、分析系统以及干扰设备等进行统一的调度,实现协同监测,保证监测的系统化。

3无线电监测于计算机网络信息安全保密策略

上文中已经对计算机的多种泄密可能途径进行了概要的叙述,然后对无线电监测技术进行了介绍,根据无线电监测技术的技术工作特点,详细叙述了无线电监测技术的原理和监测项目,让读者清楚明了的对无线电监测技术有了一个正确认识。接下来对无线电监测在计算机网络信息安全中的具体实施方式和网络保密策略进行讨论。

计算机使用者需要定期对计算机进行安全系统的监测,进行病毒的查杀等基本计算机安全工作,采用更加先进的计算机安全软件,对计算机的整体安全性进行提高。同时对计算机的磁盘进行清理和管理,增强无线电监测技术的应用层面和范围,从而对计算机网络的信息通信功能进行提升,保证网络系统的安全性。

除此之外,计算机的使用者还应当定期对防火墙的层次进行提升,不断对防火墙进行升级和加密工作,保证防火墙可以跟上病毒库的针对性变化,对计算机登录用户的信息进行判断,杜绝一切非法入侵手段,对数据信息进行加密处理,管理软件的一切运行权限,由使用者自行判断是否给予对应权限,对计算机的安全性能进行更深入的提升。

4结论

综上所述,无线电监测技术在计算机网络信息安全中的应用,实现了准确、快速、低价格的目的。在这个阶段,如何在计算机网络信息安全中更有效地利用无线电监测技术已成为业界关注的热点和焦点。本文以当前针对网络漏洞与攻击的情况的防御需求为出发点,讨论了将无线电监测技术应用到计算机网络信息安全领域的收集、存储、检索以及分析的应用手段,有效地提升了计算机网络信息安全防御的准确度和效率。

参考文献: 

[1]尚海燕.浅谈无线电监测与计算机网络信息安全保密[J].电子技术与软件工程,2016(12). 

[2]张俊钦.无线电监测与计算机网络信息安全的综合探析[J].无线互联科技,2015(03). 

第7篇:软件安全论文范文

论文摘要:数据库安全就是指保护数据库以防止非法使用所造成的信息泄露、更改或破坏。数据库已经在社会上和人们日常生活中占据了十分重要的地位。该文首先简要介绍了数据库安全的重要性及安全需求,然后对数据库的安全策略和安全技术进行了探讨。

数据库是存储在一起的相关数据的集合,这些数据可以为多种应用服务。使用数据库可以带来许多好处:如减少了数据的冗余度,节省数据的存储空间;实现数据资源的充分共享等等。由于数据库的重要地位,其安全性也备受关注。

1 数据库安全的重要性

数据库系统也属于一种系统软件,实际使用中它和其他软件一样也需要保护。数据库的安全之所以重要,主要是原因下面一些原因。首先,在数据库中存放大量的数据,在重要程度及保密级别上可以分为几类,这些数据为许多用户所共享,而各用户的访问权限是不同。因此,数据库系统必须根据不同客户的职责和权限,使各用户得到的只是他们所必需的、与他们的权限相对应的部分数据,并不是每个用户都可以访问全部数据。这样对用户进行分类限制,严格控制用户修改数据库数据的权限,可以最大限度的避免因一个用户在未经许可的情况下修改了数据,而对其他用户的工作造成不良的影响。

其次,在数据库中,由于数据冗余度小,一旦数据库的数据被修改了,原来的数据就不存在了。因此,必须有一套数据库恢复技术,保证在系统或程序出现故障后,帮助迅速恢复数据库。最后,由于数据库是联机工作的,一般允许多用户同时进行存取操作,因此必须采取有效措施防止由此引起的破坏数据库完整性的问题。数据库涉及其他应用软件,因而数据库的安全还涉及应用软件的安全与数据的安全,因此,有必要把数据库的安全问题和相关的应用软件安全问题进行综合考虑,制定有效的全面的安全防范措施。

总之,数据库系统在给人们带来好处的同时,也对用户提出了更高的安全方面的要求。所以说,数据库的安全问题是非常重要的,必须引起最够的重视。

2 数据库的安全威胁与安全策略

数据库运行于操作系统之上,依赖于计算机硬件,所以数据库的安全依赖于操作系统安全和计算机硬件的安全。同时数据库操作人员的非法操作和不法分子的蓄意攻击也对数据库的安全构成重大威胁。综合以上两方面,可以看到数据库受到的安全威胁主要有:1)硬件故障引起的信息破坏或丢失。如存储设备的损坏、系统掉电等造成信息的丢失或破坏;2)软件保护失效造成的信息泄露。如操作系统漏洞、缺少存储控制机制或破坏了存储控制机制,造成信息泄露;3)应用程序设计出现漏洞。如被黑客利用安装了木马;4)病毒入侵系统,造成信息丢失、泄露或破坏;5)计算机放置在不安全的地方被窃听;6)授权者制定了不正确或不安全的防护策略。7)数据错误输入或处理错误。如,准备输入的数据在输入前被修改,机密数据在输入前泄密;8)非授权用户的非法存取,或授权用户的越权存取,或授权用户的越权存取。数据库受到各方面的安全威胁,要保证数据库的安全,必须制订合适的安全策略,采取一定的安全技术措施,才能保证数据库信息的不泄露,不破坏和不被删除和修改。

数据库的安全策略是指导数据库操作人员合理地设置数据库的指导思想。它包括以下几方面。

1) 最小特权策略

最小特权策略是让用户可以合法的存取或修改数据库的前提下,分配最小的特权,使得这些信息恰好能够完成用户的工作,其余的权利一律不给。因为对用户的权限进行适当的控制,可以减少泄密的机会和破坏数据库完整性的可能性。

2) 最大共享策略

最大共享策略就是在保证数据库的完整性、保密性和可用性的前提下,最大程度地共享数据库中的信息。

3) 粒度适当策略

在数据库中,将数据库中不同的项分成不同的颗粒,颗粒越小,安全级别越高。通常要根据实际决定粒度的大小。 转贴于  4) 按内容存取控制策略

根据数据库的内容,不同权限的用户访问数据库的不同的部分。

5) 开系统和闭系统策略

数据库在开放的系统中采取的策略为开系统策略。开系统策略即除了明确禁止的项目,数据库的其他的项均可被用户访问。数据库在封闭系统中采取的策略称闭系统策略。闭系统策略即在封闭的系统中,除了明确授权的内容可以访问,其余均不可以访问。

6) 按上下文存取控制策略

这种策略包括两方面:一方面限制用户在其一次请求中或特定的一组相邻的请求中不能对不同属性的数据进行存取;另一方面可以规定用户对某些不同属性的数据必须一组存取。这种策略是根据上下文的内容严格控制用户的存取区域。

7) 根据历史的存取控制策略

有些数据本身不会泄密,但当和其他的数据或以前的数据联系在一起时可能会泄露保密的信息。为防止这种推理的攻击,必须记录主数据库用户过去的存取历史。根据其以往执行的操作,来控制其现在提出的请求。

数据库的安全本身很复杂,并不是简单的哪一种策略就可以涵盖的,所以制订数据库的安全策略时应根据实际情况,遵循一种或几种安全策略才可以更好的保护数据库的安全。

3 数据库安全技术

1) 数据库的完整性与可靠性

数据库的完整性是关系到客户/服务器应用系统正常工作的关键。维护数据库的完整性即需要数据库设计人员的周密设计,也需要客户端开发人员的积极配合。数据库完整性约束是用于维护数据库完整性的一种机制,这种约束是一系列预先定义好的数据完整性规划和业务规则,这些数据规则存放于数据库中,防止用户输入错误的数据,以保证数据库中所有的数据是合法的、完整的。

2) 存取控制

访问控制是信息安全保障机制的核心内容,它是实现数据保密性和完整性机制的主要手段。访问控制是为了限制访问主体对访问客体的访问权限,从而使计算机系统在合法范围内使用;访问控制机制决定用户及代表一定用户利益的程序能做什么,能做到什么程度。访问控制,作为提供信息安全保障的主要手段,被广泛用于防火墙、文件访问、VPN及物理安全等多个方面。访问控制也是数据库系统的基本安全需求之一。为了使用访问控制来保证数据库安全,必须使用相应的安全策略和安全机制保证其实施。

在数据库中,记录、字段、元素是相互联系的,用户可能通过读取其他元素来得到某一元素,这种现象称为“推理”,要想防止推理的发生,必须采取与历史相关的控制,它不仅要求考虑请求当时的上下文,还要考虑过去请求的上下文,来限制存取。简单的来说,存取控制是用来保护电脑的信息或资源免于被非法者故意删除、破坏或更改的一项重要措施。此外,基于角色的存取控制机制可以为用户提供强大而灵活的安全机制,使管理员能以接近部门组织的自然形式来进行用户权限划分。

3) 数据库加密

在实际使用数据库的过程中,并不是允许所有人都能够对数据库进行信息浏览和查询的。因此,为了保证数据库中的数据能够不被非法用户所访问,就要对其进行安全保护。对数据库进行加密就是一个很好的安全保护方法。在给数据库设置密码或取消密码之前,必须确定数据库是以独占方式打开的。

在数据库安全和加密技术的研究方面,现在只是作了一些尝试性的工作,许多细节有待于进一步深入。随着数据库系统的进一步发展,对数据库安全与加密这个方面将变得更加重要和迫切。

参考文献

[1] 张海光.浅析计算机病毒及其防范措施[J].科技信息:科学教研,2007(13).

第8篇:软件安全论文范文

关键词:计算机信息系统;安全问题;管理

中图分类号:C93文献标识码: A

前言

所谓的信息系统安全指的就是对计算机数据信息采取的安全防护措施,进而保护计算机的硬件、软件等各项数据不受到破坏和泄露。这只是理论上的定义,换句话说就是静态的信息系统安全保护。

一、计算机信息系统安全问题

1、网络配置的缺陷

网络的配置中包含很多原件,服务器、路由器以及防火强都属于网络配置的重要硬件设施。服务器的配置不当造成网络传输的效率地,特别是路由器的配置出现问题会造成无法链接到网络,同时防火墙也会降低对系统的保护能力,同样也会造成很大的损失。从总体上概括计算机网络安全的威胁主要涉及两个方面,一方面,网络的管理机制存在漏洞,电子文档在生命周期内,文档的授权访问与传输过程存在一定的缺陷,网络的内部控制薄弱。另一方面,网络安全体系不健全,密码保护系统脆弱,登陆系统的信任体系不健全,对系统的监控不到位。专用的控制软件安全意识不强,对系统的监控和审视都不到位,数字签名的安全性不强。

2、系统维护管理不科学

随着计算机技术的不断提高,计算机系统中的软件更新随度也在不断加快,而在系统升级或维护的过程中,由于防火墙过滤规则太过复杂,很多的日常维护都无法全面保障系统安全,甚至可能制造新的系统漏洞,这也从侧面要求了计算机系统在进行升级时要做到高效升级、全面维护,使系统管理风险降到最低。

3、病毒的大量入侵

所谓的病毒就是在计算机编制的过程中能够自我复制的入的对系统有破坏的程序性代码。一旦被激活,就会通过网络快速扩散传染,导致计算机运行速度减慢,计算机主板遭到破坏。造成数据丢失。更有一些人通过网络下载一些病毒植入计算机管理系统的各个节点。从管理手段与技术手段两方面来看,管理制度不完善、管理手段落实不到位等,是造成计算机信息管理系统安全威胁的主要原因。同时,没有安装防火墙、缺乏安全管理意识,也是系统出现安全问题的原因之一。

4、计算机操作系统漏洞导致的泄密隐患

目前绝大部分计算机使用的都是windows操作系统。事实上,该操作系统存在着许多漏洞,安全隐患尤为突出。如多数情况下我们认为笔记本电脑与互联网连接,不处理信息就不会出现泄密的问题,但检测发现,使用无线互联能够取得该笔记本电脑的所有控制权,还能将麦克风打开变成窃听器,致使该笔记本所在房间的通话内容被他人通过网络监听到。

二、计算机信息系统安全问题的管理措施

1、合理设计完善计算机信息管理系统

身份证认证技术:在计算机管理中可以应用身份认证技术,可以将黑客等不合法身份的侵入者拒之门外,为系统的安全运行提供保障。

(1)口令认证:这是计算机系统中最常用也是最基础的方式。口令通常为相互约定的代码,可以由系统自由分配,也可用户自定义选择。一般情况下,由用户输入标志性信息,如账号、户名等,由系统询问口令,在口令匹配的情况下,则允许用户进入系统。

(2)生物特征认证:生物特征认证目前尚处于研究和开发阶段,通过个人的生理特征,如指纹、声音、手型和视网膜等实现鉴别,安全性较高。

(3)PKI认证,:PKI指的是用用户私钥机密性特征来实现身份验证过程,然后利用数字证书给合法的用户提供证明,建立映射关系。PKI由应用系统及证书生产系统构成。其中,应用系统提供了加解密、身份认证、签名验证等安全服务,实际上,PKE身份认证属于一种强制性认证系统,包括对称加密、非对称加密、摘要算法以及数字签名等先进技术,将高效性与安全性密切结合。

2、安装防火墙及杀毒软件

现如今,各项杀毒软件与防火墙充斥着网络资源市场,用户只需根据自己平时在计算机上进行的主要操作来选取需要用到的软件即可。防毒软件的安装能够自动检测出浏览网站的不良信息,确保用户不会进行点击操作,这样一来,一些病毒或是恶意程序就不会侵入到个人电脑中,也不会对电脑中信息造成损害了。同时,杀毒软件可以定期、定时的对计算机中的软件进行扫描,对于会修改计算机操作的程序或是目的地不明确的程序能够及时找出并向用户通报。同时,杀毒软件会将用户在网络上自行下载的资源进行自动扫描,对于含有病毒的程序或是发现有异常的程序能够自动将其毁灭,保障用户计算机安全。

3、运用漏洞扫描技术

漏洞扫描技术就是利用计算机操作系统或者其他网络设备进行信息安全检测,以查出安全隐患和系统漏洞,然后进行排除。由于漏洞是系统本身不可避免的,因此各种软件常通过“打补丁”的方式修补漏洞。系统开放的服务越多,存在漏洞的几率也就越大。因此不要同时运行太多的软件,以减少漏洞隐患,提高计算机的运行速度。漏洞扫描的结果实际就是对系统安全性能的评估,定时运行漏洞扫描技术,是保证信息安全的必要手段。

4、对传输的信息实行安全保护策略

传输信息安全保护策略主要涉及到分级保护这方面的内容,从技术这方面出发,实现对方案的设计管理,规范其中的安全性。其中具备了一套完整的标准规范,严格落实安全保密体系,按照信息的安全程度划分网络,同时对网络的安全控制实行全面的保护和控制。加强对网络安全的监测,实现边界防护。强化内部控制和安全保密的策略,提高人员的安全保护策略。同时还需要加强对网路信息的安全管理,实现信息传输的有效性和安全性。

5、对信息进行备份和回复

计算机信息管理系统的备份主要由备份设备和备份系统构成,常见的设备有光盘、磁盘等等。备份系统则是用来快速恢复计算机中的数据与信息。一般情况下,计算机信息管理系统的备份策略主要为:全备份、增量备份、差分备份。每种被封都有其特点和优势,操作者可以根据自身情况来选择备份方式。备份的恢复非常重要,可分为全盘恢复和个别文件恢复两种形式。为了避免备份的数据丢失现象,应做好恢复计划,并定期进行演练恢复,确保数据与信息完整、安全。

6、分时保护

计算机信息的存储与利用是一个持续性的过程,因而其安全防护也是动态的、连续的,贯穿于信息生成到删除的整个生命周期。基于该特点,可以以时间为轴线,对计算机所存储的数据信息进行保护、检测以及响应,在不同阶段为信息存储安全制定不同的防护策略,及时发现与处理存储信息所面临的安全威胁,将因信息泄露或破坏所带来的损失降到最低。

如在存储信息初期为硬件设备选择适当的硬件部署环境,选取信息存储与管理方式;在信息存储过程中定期或不定期更换密钥,修复系统或软件中存在的安全漏洞,使用更先进的防护技术对所存储的信息进行防护,使用容灾备份技术保障信息的安全性以及可恢复性;在信息存储生命周期的最后使用数据替换、数据销毁技术等删除数据信息等。

结束语

计算机网络信息系统安全是一项学科涉及范围广、结构复杂的研究性课题,作为相关的计算机安全维护人员,要做到实时做好计算机病毒、黑客入侵等问题的防护,采用先进的产品和技术改进计算机信息安全传输途径,有效解决计算机网络信息安全隐患。

参考文献

[1]刘广良.建设银行计算机网络信息系统安全管理策略研究(学位论文).湖南:湖南大学,2001.

第9篇:软件安全论文范文

关键词:可信软件;分析;评估;测试

中图分类号:TP311.52 文献标识码:A

1 引言

在当代的信息社会中,计算迅猛发展,随着计算机的广泛应用,计算机软件已经渗透到国防建设与国民经济的各个领域,并且承担着举足轻重的作用。软件为人们提供了新的功能和更便利的操作,并且在信息基础设施方面起着越来越重要的作用。现在人们的工作和生活是越来越依赖软件。然而,软件的设计现状却并不叫人十分满意,人们越来越重视软件的正确性、可靠性、安全性、完整性、可用性等这些可信性质,如何设计开发出高可信软件越来越引起软件使用和设计人员的重视。

2 可信软件的定义

可信:当一个实体按给定目标实现时,其行为和结果是附和预期的。

可信软件:如果软件服务效果总是符合用户的预期目标,即使在软件运行过程中有一些特殊情况出现,这样的软件就叫做可信软件。

这里所说的特殊情况包括:

(1)硬件环境(计算机、网络)发生故障

(2)底层软件(操作系统、数据库)出现错误

(3)其他软件(病毒软件、流氓软件)对其产生影响

(4)出现有意(攻击)、无意(误操作)的错误操作

3 软件可信与软件质量的区别

软件可信要满足的功能有下面几个方面:

可用功能:正确、不少、不多

可靠性(容错):高

安全性(机密性、完整性):高

响应时间(从输入到输出):小

维护费用(监测、演化):小

软件质量就是“所开发出的软件与需求分析中的客户的需求相一致的程度”。具体地说,软件质量是设计出来的软件符合需求分析中明确说明的功能和性能需求、文档中明确描述的开发标准,以及所有专业开发的软件都应具有的隐含特征的程度。影响软件质量的主要因素,这些因素是从管理角度对软件质量的度量。[1]

对软件可信的定义比之软件质量更强调用户的感受,强调不易受攻击性尤其是因内在缺陷导致的;结果是可预期的;保证的计划的和系统的过程和产品依照要求和标准程序。因此与强调功能完备无二义性的软件测试评估是有区别的。

4 国内外软件可信性技术研究现状及发展趋势

本节从软件可靠性分析技术、软件可信性评估技术、软件可信性测试与验证技术等方面分析软件可信的国内外研究现状和发展趋势。

4.1 软件可信性分析技术

在SFMEA研究方面,SFMEA(System Failure Mode and Effects Analysis),国内常称SFMEA为“软件失效模式和影响分析”,国外是在1979年提出了SFMEA的概念。在此后并没有引起足够的重视和大量的研究,近10年来,SFMEA的研究和应用才有逐步增多的趋势,并且大多都集中在嵌入式软件方面。在一些关键安全领域进行了相应的应用,如:医疗仪器、环境监测、军用产品、电子行业、汽车行业、航空领域等。

SFMEA的工作原理是利用“预想”和“回想”的方式对软件系统的各个组成部分中存在的和潜在的失效模式进行“穷举”测试,以识别出失效位置及原因,并逐一进行分析和研究故障模式所造成的影响,给出预防和改进措施,以便于技术人员对系统进行优化改进。总之,SFMEA是一种定性的逻辑推理方法。

在SFMEA方面,虽然能用计算机辅助进行一些数据收集、数据存储和一些简单的数学计算,但是很多的分析工作还需人工完成。要想加强分析工作,还要在SFMEA的算法上进行更深入细致的研究。尤其对失效模式和失效影响推理技术这些方面进行更深入的探讨。国内外在这方面的研究已经展开,在数理仿真技术、专家系统和因果推理方法等技术方面都有了初步的研究。在今后的研究中,我们要加大在SFTA的计算机辅助方法、开发相应的SFTA辅助工具方面的研究,提高SFTA的分析效率。对于嵌入式软件可靠性分析方面,尚未出现较为完整、成熟的可靠性分析方法。这也是未来软件可信性分析技术研究的一个重要的研究方向和发展趋势。[2]

4.2 软件可信性评估技术

目前,国内外关于软件可信性评估方法还处于研究阶段,成熟的软件可信性评估方法几乎没有。但是对相关领域进行分析总结,可以看出软件可信性评估发展趋势有以下几个方面:

(1)定性与定量相结合的综合评估方法

目前国内外已经有人提出了这种综合评估方法的想法和思路,但是研究还只局限在理论研究阶段。如何建立软件可信性评估体系,如何进行定性评估操作,如何准确有效进行定性评估等具体实施方案的研究还行少。

(2)基于灰盒测试的软件可信性评估方法

灰盒测试方法是指结合白盒测试和黑盒测试得到的综合测试方法。白盒测试是分析程序的内部结构,对其内部结构和代码进行测试。黑盒测试不考虑程序的内部结构,只考虑其外部功能是否符合需求规格说明书的要求。这两类方法各有侧重,不能简单用一种方法完全取代另一种方法,但两者又各有缺点,所以只有将两者有效结合,即形成“灰盒测试”,才能使两者有效结合,各取所长,使测试效果更加有效完善。[3]

(3)基于证据的可信软件过程评估方法

基于证据的可信软件过程评估方法(EB-TSPAM),EB-TSPAM方法以TPMF为支撑和保障手段,以通过软件过程可信度量模型度量得到的可信性度量数据为输入,在可信证据模型的支持下,通过特定的算法将证据数据转换为可直接用于软件过程可信性评估的评估证据,并最终基于评估证据对软件过程进行可信性评估。[4]

目前国内外对于软件可信性评估技术还处在研究阶段,有的还仅仅停留在理论研究阶段,能够真正用来验证软件可信性评估技术的实施方案几乎还没有。但是软件可信性评估技术的研究是软件可信性研究领域的一个重要发展趋势。

4.3 软件可靠性测试与验证技术

可信软件测试是指在软件运行时为发现软件中的错误而执行的一系列操作,目的是为了保证软件的可信性。软件测试的方法目前已经有很多种,使用最广泛的软件测试方法是错误注入(Fault Injection)测试,根据注入错误类型不同又分为很多种形式。主要有以下几种形式:

(1)基于硬件故障的注入:数字电路的管脚线故障注入、设备故障注入、通讯故障注入等。

(2)基于软件故障的注入:基于软件高级故障注入、内存、CPU、I/O故障注入等。

(3)基于防真故障的注入:用不同数据测试不同环境下的软件可信性。

因为软件的运行是动态的,所以很难用静态的测试方法完全有效的对软件可信性进行测试,可信软件的动态测试越来越引起人们的关注和重视。动态测试又分为随机测试和选择性测试两大类。随机测试根据软件输入数据的概率分布,随机选择测试数据,这种方式的缺点是工作量大且有盲目性。选择性测试是有针对性选择测试数据。这种方法缺点是测试不够全面,没有考虑中间结果,导致测试效率不高。动态测试是可信软件测试中最重要的一部分,但又是难度最大的一种方法,其是软件测试未来发展的一个趋势。[5]

5 结束语

本文结合可信软件的特点,从软件可靠性分析技术、软件可信性评估技术、软件可信性测试与验证技术等方面分析软件可信的国内外研究现状和发展趋势,因为当今是信息社会,软件在信息基础设施中的作用越来越重要,而信息基础设施与人们生活息息相关,所以这就要求我们在软件系统开发和运行过程中一定要重视软件的可信性,这是当今软件行业乃至整个社会都在关注的一个课题。

参考文献

[1] 阮镰,陆民燕.软件可靠性工程的研究现状和发展趋势[J].中

国航空学会2005年学术年会论文,2005:3-5.

[2] 王环环,詹永照,陈锦富.可信软件分析与测试研究进展[J].计

算机应用研究,2011(7):34-35.

[3] 陈楠,等.可执行可信软件安全性分析技术研究[J].计算机工

程设计,2010(12):23-25.

[4] 万亚东,朱怀宏,李波.软件架构与可信软件开发[J].江苏科技

信息,2010(2):40-43.

[5] 陈锦富,卢炎生,谢晓东.一种采用接口错误注入的构件安全

性测试方法[J].小型微型计算机系统,2010,31(6):1090-1096.

作者简介:

刘俊丽(1972-),女,硕士,副教授.研究领域:系统安全、软件