欢迎来到优发表网,发表咨询:400-888-9411 订阅咨询:400-888-1571股权代码(211862)

购物车(0)

期刊大全 杂志订阅 SCI期刊 SCI发表 期刊投稿 出版社 公文范文 精品范文

软件安全论文(合集7篇)

时间:2023-01-05 00:48:53
软件安全论文

软件安全论文第1篇

论文摘要:随着软件行业特别是软件外包行业在国内的蓬勃发展,如何保证自身的信息安全成了摆在软件企业面前的重要课题。文章通过对软件企业现有信息安全问题的分析,提出了采用信息安全体系建设系统解决信息安全问题,着重阐述了信息安全风险管理的原理和方法在软件行业中的应用。

论文关键词:软件企业;信息安全;风险管理

随着国家大力推动软件外包行业和IT行业的发展,软件企业发展呈现良好态势,在自身业务发展壮大的同时,软件企业信息安全重要性日益凸显。互联网和IT技术的普及,使得应用信息突破了时间和空间上的障碍,信息的价值在不断提高。但与此同时,网页篡改、计算机病毒、系统非法入侵、数据泄密、网站欺骗、服务瘫痪、漏洞非法利用等信息安全事件时有发生。据公安部公共信息网络安全监察局的调查结果显示,2007年5月~2008年5月间,有62.7%的被调查单位发生过信息网络安全事件,其中,感染计算机病毒、蠕虫和木马程序的安全事件为85.5%,遭到端口扫描或网络攻击的占31.4%,垃圾邮件占25.4%。

信息是软件企业的重要资源,是非常重要的“无形财富”,分析当前的信息安全问题,有如下典型的信息安全问题急需解决。

(1)网络共享与恶意代码防控。

网络共享方便了不同用户、不同部门、不同单位等之间的信息交换,但是,恶意代码利用信息共享、网络环境扩散等漏洞,影响越来越大。如果对恶意信息交换不加限制,将导致网络的QoS下降,甚至系统瘫痪不可用。

(2)信息化建设超速与安全规范不协调。

网络安全建设缺乏规范操作,常常采取“亡羊补牢”之策,导致信息安全共享难度递增,也留下安全隐患。

(3)信息产品国外引进与安全自主控制。

国内信息化技术严重依赖国外,从硬件到软件都不同程度地受制于人。目前,国外厂商的操作系统、数据库、中间件、办公文字处理软件、浏览器等基础性软件都大量地部署在国内的关键信息系统中。但是这些软件或多或少存在一些安全漏洞,使得恶意攻击者有机可乘。目前,我们国家的大型网络信息系统许多关键信息产品长期依赖于国外,一旦出现特殊情况,后果就不堪设想。

(4)IT产品单一性和大规模攻击问题。

信息系统中软硬件产品单一性,如同一版本的操作系统、同一版本的数据库软件等,这样一来攻击者可以通过软件编程,实现攻击过程的自动化,从而常导致大规模网络安全事件的发生,例如网络蠕虫、计算机病毒、”零日”攻击等安全事件。

(5)IT产品类型繁多和安全管理滞后矛盾。

目前,信息系统部署了众多的IT产品,包括操作系统、数据库平台、应用系统。但是,不同类型的信息产品之间缺乏协同,特别是不同厂商的产品,不仅产品之问安全管理数据缺乏共享,而且各种安全机制缺乏协同,各产品缺乏统一的服务接口,从而造成信息安全工程建设困难,系统中安全功能重复开发,安全产品难以管理,也给信息系统管理留下安全隐患。

(6)IT系统复杂性和漏洞管理。

多协议、多系统、多应用、多用户组成的网络环境,复杂性高,存在难以避免的安全漏洞。由于管理、软件工程难度等问题,新的漏洞不断地引入到网络环境中,所有这些漏洞都将可能成为攻击切入点,攻击者可以利用这些漏洞入侵系统,窃取信息。为了解决来自漏洞的攻击,一般通过打补丁的方式来增强系统安全。但是,由于系统运行不可间断性及漏洞修补风险不可确定性,即使发现网络系统存在安全漏洞,系统管理员也不敢轻易地安装补丁。特别是大型的信息系统,漏洞修补是一件极为困难的事。因为漏洞既要做到修补,又要能够保证在线系统正常运行。

(7)攻击突发性和防范响应滞后。

网络攻击者常常掌握主动权,而防守者被动应付。攻击者处于暗处,而攻击目标则处于明处。以漏洞的传播及利用为例,攻击者往往先发现系统中存在的漏洞,然后开发出漏洞攻击工具,最后才是防守者提出漏洞安全对策。

(8)口令安全设置和口令易记性难题。

在一个网络系统中.每个网络服务或系统都要求不同的认证方式,用户需要记忆多个口令,据估算,用户平均至少需要四个口令,特别是系统管理员,需要记住的口令就更多,例如开机口令、系统进入口令、数据库口令、邮件口令、telnet口令、FTP口令、路由器口令、交换机口令等。按照安全原则,口令设置既要求复杂,而且口令长度要足够长,但是口令复杂则记不住,因此,用户选择口令只好用简单的、重复使用的口令,以便于保管,这样一来攻击者只要猜测到某个用户的口令,就极有可能引发系列口令泄露事件。

(9)远程移动办公和内网安全。

随着网络普及,移动办公人员在大量时间内需要从互联网上远程访问内部网络。由于互联网是公共网络,安全程度难以得到保证,如果内部网络直接允许远程访问,则必然带来许多安全问题,而且移动办公人员计算机又存在失窃或被非法使用的可能性。“既要使工作人员能方便地远程访问内部网,又要保证内部网络的安全”就成了一个许多单位都面临的问题。

(10)内外网络隔离安全和数据交换方便性。

由于网络攻击技术不断增强,恶意入侵内部网络的风险性也相应急剧提高。网络入侵者可以涉透到内部网络系统,窃取数据或恶意破坏数据。同时,内部网的用户因为安全意识薄弱,可能有意或无意地将敏感数据泄漏出去。为了实现更高级别的网络安全,有的安全专家建议,“内外网及上网计算机实现物理隔离,以求减少来自外网的威胁。”但是,从目前网络应用来说,许多企业或机构都需要从外网采集数据,同时内网的数据也需要到外网上。因此,要想完全隔离开内外网并不太现实,网络安全必须既要解决内外网数据交换需求,又要能防止安全事件出现。

(11)业务快速发展与安全建设滞后。

在信息化建设过程中,由于业务急需要开通,做法常常是“业务优先,安全滞后”,使得安全建设缺乏规划和整体设计,留下安全隐患。安全建设只能是亡羊补牢,出了安全事件后才去做。这种情况,在企业中表现得更为突出,市场环境的动态变化,使得业务需要不断地更新,业务变化超过了现有安全保障能力。

(12)网络资源健康应用与管理手段提升。

复杂的网络世界,充斥着各种不良信息内容,常见的就是垃圾邮件。在一些企业单位中,网络的带宽资源被员工用来在线聊天,浏览新闻娱乐、股票行情、,这些网络活动严重消耗了带宽资源,导致正常业务得不到应有的资源保障。但是,传统管理手段难以适应虚拟世界,网络资源管理手段必须改进,要求能做到“可信、可靠、可视、可控”。

(13)信息系统用户安全意识差和安全整体提高困难。

目前,普遍存在“重产品、轻服务,重技术、轻管理,重业务、轻安全”的思想,“安全就是安装防火墙,安全就是安装杀毒软件”,人员整体信息安全意识不平衡,导致一些安全制度或安全流程流于形式。典型的事例如下:用户选取弱口令,使得攻击者可以从远程直接控制主机;用户开放过多网络服务,例如:网络边界没有过滤掉恶意数据包或切断网络连接,允许外部网络的主机直接“ping”内部网主机,允许建立空连接;用户随意安装有漏洞的软件包;用户直接利用厂家缺省配置;用户泄漏网络安全敏感信息,如DNS服务配置信息。

(14)安全岗位设置和安全管理策略实施难题。

根据安全原则,一个系统应该设置多个人员来共同负责管理,但是受成本、技术等限制,一个管理员既要负责系统的配置,又要负责安全管理,安全设置和安全审计都是“一肩挑”。这种情况使得安全权限过于集中,一旦管理员的权限被人控制,极易导致安全失控。

(15)信息安全成本投入和经济效益回报可见性。

由于网络攻击手段不断变化,原有的防范机制需要随着网络系统环境和攻击适时而变,因而需要不断地进行信息安全建设资金投入。但是,一些信息安全事件又不同于物理安全事件,信息安全事件所产生的经济效益往往是间接的,不容易让人清楚明白,从而造成企业领导人的误判,进而造成信息安全建设资金投入困难。这样一来,信息安全建设投入往往是“事后”进行,即当安全事件产生影响后,企业领导人才会意识安全的重要性。这种做法造成信息安全建设缺乏总体规划,基本上是“头痛医头,脚痛医脚”,信息网络工作人员整天疲于奔命,成了“救火队员”。

为了解决信息安全问题,保护企业信息的安全,建立实施信息安全管理体系是非常有效的途径。无论是自身发展需求还是国际国内客户的要求,越来越多的软件企业希望或已经建立实施信息安全管理体系。如何提高组织的信息安全,通过建设信息安全管理体系中降低组织存在的信息安全风险的方法,来提高组织信息的安全性。由此可见信息安全风险管理,是我们建立信息安全管理体系的一个重要环节,也是信息安全管理体系建立的基础。下面我们着重探讨在软件企业中的信息安全风险管理。

1.信息安全风险管理概述

我们将标识、控制和消除可能影响信息系统资源的不确定事件或使这些事件降至最少的全部过程称之为风险管理,风险管理被认为是良好管理的一个组成部分,

2.确定范围

在建立信息安全管理体系之初,根据业务、组织、位置、资产和技术等方面的特性,我们确定了组织ISMS的范围,那么风险管理的范围应该和我们确定的ISMS的范围相一致。在软件企业中,我们要将企业的业务流程、组织架构、覆盖地址、信息系统、相关资产等都纳入到风险管理的范围当中

3.风险分析

风险分析是标识安全风险,确定其大小和标识需要保护措施地区域的过程,其目的是分离可接受的小风险和不能接受的大风险,为风险评价和风险处置提供数据。风险分析主要有定性分析方法和定量分析方法两种。定性分析方法是最广泛使用的风险分析方法,主要采用文字形式或叙述性的数值范围来描述潜在后果的大小程度及这些后果发生的可能性,相对于威胁发生的可能性,该方法通常更关注威胁事件带来的损失。定性分析方法在后果和可能性分析中采用数值(不是定性分析中所使用的叙述性数值范围),并采用从不同来源中得到的数据进行分析,其主要步骤集中在现场调查阶段,针对系统关键资产进行定量的调查、分析,为后续评估工作提供参考数据。在软件企业进行风险分析时,因为定量分析方法中的数值、数据不易获取,我们通常采用定性分析方法。风险分析又包括以下4个方面,针对定性分析方法,具体过程如下:

(1)识别评估资产。

在ISMS中所识别评估的资产有别于常见的固定资产,这里的资产主要指信息、信息处理设施和信息使用者。在识别资产时,我们需要选择适合的分类原则和识别粒度。在软件企业中,通常把资产划分为硬件、软件等方面,还需要对这些方面进行细分,也就是进行二级分类。

在评估资产时,我们要从信息的三个属性即保密性、完整性和可用性来评估资产的重要度等级。资产的重要度等级是我们进行风险评价的依据之一。资产重要度等级可以按如下定义和赋值:

①资产属于“高”等级重要度,赋值为“3”,该类信息资产若发生泄露、损坏、丢失或无法使用,会给公司造成严重或无法挽回的经济损失;

②资产属于“中”等级重要度,赋值为“2”,该类信息资产若发生泄露、损坏、丢失或无法使用,会给公司造成一定的经济损失;

③资产属于“低”等级重要度,赋值为“1”,该类信息资产若发生泄露、损坏、丢失或无法使用,会给公司造成轻微的经济损失。

(2)识别评估威胁。

我们应该清楚威胁一定是与资产相对应的,某一资产可能面临多个威胁。在识别威胁时,我们主要从威胁源来识别出相对应的资产所面临的威胁。识别出威胁后,综合考虑威胁源的动机、能力和行为,对威胁进行评估。例如软件企业中计算机面临病毒、木马攻击的威胁,这种威胁动机、能力较强。

(3)识别评估脆弱性。

脆弱性可以理解为资产可以被某种威胁所利用的属性,一种威胁可能利用一种或多种脆弱性而产生风险。我们从管理和技术两个方面来识别脆弱性,通常采用文档审核、人员访谈、现场检查等方法。针对“识别评估威胁”中所举例的威胁,软件企业计算机可能存在未安装杀毒软件、防火墙或使用人员未及时升级病毒库等脆弱性。

(4)识别评估控制措施。

在我们识别出威胁和脆弱性之后,我们要针对威胁利用脆弱性产生的风险,来识别组织自身是否已经采取控制措施,并采取叙述性数值的方式来描述已采取控制措施的有效性,评估的标准由组织进行制定,例如控制措施有效性可以定义进行如下定义和赋值:

①控制措施影响程度为“好”,赋值为“1”,该类控制措施已经对信息资产威胁和脆弱性起到良好的控制效果,能够满足公司的信息安全管理要求;

②控制措施影响程度为“中”,赋值为“2”,该类控制措施已经对信息资产威胁和脆弱性起到一定的控制效果,需要增加辅助的控制措施满足公司信息安全管理要求;

③控制措施影响程度为“低”,赋值为“3”,该类控制措施已经对信息资产威胁和脆弱性未起到控制效果,需要重新制定新的控制措施满足公司信息安全管理要求。

控制措施的有效性是我们风险评价的依据之一。

4.风险评价

风险评价是将风险与给定的风险准则加以比较以确定风险严重性的过程,其结果是具有不同等级的风险列表,目的是判断特定的风险是否可接受或者是否需采取其他措施处置。风险评价主要包括以下几个过程:

(1)分析评估可能性和影响。

“可能性”指威胁利用脆弱性的可能性,“影响”指威胁利用脆弱性后,对组织资产造成的影响。在分析可能性时,我们主要考虑威胁源的动机、能力和脆弱性的性质。在评估可能性时,依据组织制定的评估准则,对可能性进行描述,例如将可能性进行如下定义和赋值:

①可能性级别“高”,赋值为“1”,威胁源具有强烈动机和足够的能力,防止脆弱性被利用的防护措施是无效的;

②可能性级别“中”,赋值为“0.5”,威胁源具有一定的动机和能力,但是已经部署的安全防护措施可以阻止对脆弱性的成功利用;

③可能性级别“低”,赋值为“0”,威胁源缺少动机和能力,或者已经部署的安全防护措施能够防止——至少能大大地阻止对脆弱性的利用。

在分析影响时,我们主要考虑威胁源的能力、脆弱性的性质以及威胁利用脆弱性对组织资产保密性、可用性、完整性造成的损失。在评估影响时,同样依据组织制定的评估准则,对影响进行描述,例如将影响进行如下定义和赋值:

①影响级别“高”,赋值为“l00”,该级别影响对脆弱性的利用:a.可能导致有形资产或资源的高成本损失;b.可能严重违犯、危害或阻碍单位的使命、声誉或利益;c.可能导致人员死亡或者严重伤害;

②影响级别“中”,赋值为“50”,该级别影响对脆弱性的利用:a.可能导致有形资产或资源的损失.b.可能违犯、危害或阻碍单位使命、声誉或利益-c.可能导致人员伤害。

③影响级别“低”,赋值为“10”,该级别影响对脆弱性的利用:a.可能导致某些有形资产或资源的损失;b.可能导致单位的使命、声誉或利益造成值得注意的影响。

参考“风险分析”中的例子,病毒、木马攻击的动机、能力很强,员工很容易忽略对杀毒软件病毒库的升级,病毒、木马攻击很可能导致公司重要数据的丢失或损坏,那么这种威胁利用脆弱性的可能性就比较高,影响也比较高,均属于“高”等级。

可能性和影响都是我们进行风险评价的依据。

(2)评价风险。

在评价风险时,我们需要考虑资产的重要度等级、已采取控制措施的有效性、可能性和影响,通常可以采取叙述性赋值后依据组织制定的评价方法进行计算的方式,计算出风险值,并根据组织制定的准则,将风险进行分级,例如将风险进行如下分级:

①“高”等级风险:如果被评估为高风险,那么便强烈要求有纠正措施。一个现有系统可能要继续运行,但是必须尽快部署针对性计划;

②“中”等级风险:如果被评估为中风险,那么便要求有纠正行动,必须在一个合理的时间段内制定有关计划来实施这些行动;

③“低”等级风险:如果被评估为低风险,那么单位的管理层就必须确定是否还需要采取纠正行动或者是否接受风险。

5.风险处置。

风险处置是选择并执行措施来更改风险的过程,其目的是将评价出的不可接受风险降低,包括以下几个过程:

①行动优先级排序。

行动优先级排序主要依据风险级别进行,对于不可接受的高等级风险应最优先。

②评估建议的安全选项

评估建议的安全选项主要考虑安全选项的可行性和有效性。

③实施成本效益分析。

对建议的安全选项进行成本效益分析,帮助组织的管理人员找出成本有效性最好的安全控制措施。

④选择控制措施。

在成本效益分析的基础上,组织的管理人员应确定成本有效性最好的控制措施,来降低组织的风险。

⑤责任分配。

根据确定的控制措施,选择拥有合适的专长和技能,能实现相应控制措施的人员,并赋以相关责任。

⑥制定控制措施的实施计划。

明确控制措施的具体行动时间表。

⑦实现所选择的安全防护措施。

根据各自不同的情况,所实现的安全防护措施可以降低风险级但不会根除风险,实现安全防护措施后仍然存在的风险为残余风险,残余风险需经过组织管理者批示,若组织管理者批准即为风险接受,若组织管理者批示不接受,则针对该风险重新进行风险评价、风险处置直到组织管理者表示风险接受为止。

软件安全论文第2篇

论文摘要:随着软件行业特别是软件外包行业在国内的蓬勃发展,如何保证自身的信息安全成了摆在软件企业面前的重要课题。文章通过对软件企业现有信息安全问题的分析,提出了采用信息安全体系建设系统解决信息安全问题,着重阐述了信息安全风险管理的原理和方法在软件行业中的应用。

论文关键词:软件企业;信息安全;风险管理

随着国家大力推动软件外包行业和IT行业的发展,软件企业发展呈现良好态势,在自身业务发展壮大的同时,软件企业信息安全重要性日益凸显。互联网和IT技术的普及,使得应用信息突破了时间和空间上的障碍,信息的价值在不断提高。但与此同时,网页篡改、计算机病毒、系统非法入侵、数据泄密、网站欺骗、服务瘫痪、漏洞非法利用等信息安全事件时有发生。据公安部公共信息网络安全监察局的调查结果显示,2007年5月~2008年5月间,有62.7%的被调查单位发生过信息网络安全事件,其中,感染计算机病毒、蠕虫和木马程序的安全事件为85.5%,遭到端口扫描或网络攻击的占31.4%,垃圾邮件占25.4%。

信息是软件企业的重要资源,是非常重要的“无形财富”,分析当前的信息安全问题,有如下典型的信息安全问题急需解决。

(1)网络共享与恶意代码防控。

网络共享方便了不同用户、不同部门、不同单位等之间的信息交换,但是,恶意代码利用信息共享、网络环境扩散等漏洞,影响越来越大。如果对恶意信息交换不加限制,将导致网络的QoS下降,甚至系统瘫痪不可用。

(2)信息化建设超速与安全规范不协调。

网络安全建设缺乏规范操作,常常采取“亡羊补牢”之策,导致信息安全共享难度递增,也留下安全隐患。

(3)信息产品国外引进与安全自主控制。

国内信息化技术严重依赖国外,从硬件到软件都不同程度地受制于人。目前,国外厂商的操作系统、数据库、中间件、办公文字处理软件、浏览器等基础性软件都大量地部署在国内的关键信息系统中。但是这些软件或多或少存在一些安全漏洞,使得恶意攻击者有机可乘。目前,我们国家的大型网络信息系统许多关键信息产品长期依赖于国外,一旦出现特殊情况,后果就不堪设想。

(4)IT产品单一性和大规模攻击问题。

信息系统中软硬件产品单一性,如同一版本的操作系统、同一版本的数据库软件等,这样一来攻击者可以通过软件编程,实现攻击过程的自动化,从而常导致大规模网络安全事件的发生,例如网络蠕虫、计算机病毒、”零日”攻击等安全事件。

(5)IT产品类型繁多和安全管理滞后矛盾。

目前,信息系统部署了众多的IT产品,包括操作系统、数据库平台、应用系统。但是,不同类型的信息产品之间缺乏协同,特别是不同厂商的产品,不仅产品之问安全管理数据缺乏共享,而且各种安全机制缺乏协同,各产品缺乏统一的服务接口,从而造成信息安全工程建设困难,系统中安全功能重复开发,安全产品难以管理,也给信息系统管理留下安全隐患。

(6)IT系统复杂性和漏洞管理。

多协议、多系统、多应用、多用户组成的网络环境,复杂性高,存在难以避免的安全漏洞。由于管理、软件工程难度等问题,新的漏洞不断地引入到网络环境中,所有这些漏洞都将可能成为攻击切入点,攻击者可以利用这些漏洞入侵系统,窃取信息。为了解决来自漏洞的攻击,一般通过打补丁的方式来增强系统安全。但是,由于系统运行不可间断性及漏洞修补风险不可确定性,即使发现网络系统存在安全漏洞,系统管理员也不敢轻易地安装补丁。特别是大型的信息系统,漏洞修补是一件极为困难的事。因为漏洞既要做到修补,又要能够保证在线系统正常运行。

(7)攻击突发性和防范响应滞后。

网络攻击者常常掌握主动权,而防守者被动应付。攻击者处于暗处,而攻击目标则处于明处。以漏洞的传播及利用为例,攻击者往往先发现系统中存在的漏洞,然后开发出漏洞攻击工具,最后才是防守者提出漏洞安全对策。

(8)口令安全设置和口令易记性难题。

在一个网络系统中.每个网络服务或系统都要求不同的认证方式,用户需要记忆多个口令,据估算,用户平均至少需要四个口令,特别是系统管理员,需要记住的口令就更多,例如开机口令、系统进入口令、数据库口令、邮件口令、telnet口令、FTP口令、路由器口令、交换机口令等。按照安全原则,口令设置既要求复杂,而且口令长度要足够长,但是口令复杂则记不住,因此,用户选择口令只好用简单的、重复使用的口令,以便于保管,这样一来攻击者只要猜测到某个用户的口令,就极有可能引发系列口令泄露事件。

(9)远程移动办公和内网安全。

随着网络普及,移动办公人员在大量时间内需要从互联网上远程访问内部网络。由于互联网是公共网络,安全程度难以得到保证,如果内部网络直接允许远程访问,则必然带来许多安全问题,而且移动办公人员计算机又存在失窃或被非法使用的可能性。“既要使工作人员能方便地远程访问内部网,又要保证内部网络的安全”就成了一个许多单位都面临的问题。

(10)内外网络隔离安全和数据交换方便性。

由于网络攻击技术不断增强,恶意入侵内部网络的风险性也相应急剧提高。网络入侵者可以涉透到内部网络系统,窃取数据或恶意破坏数据。同时,内部网的用户因为安全意识薄弱,可能有意或无意地将敏感数据泄漏出去。为了实现更高级别的网络安全,有的安全专家建议,“内外网及上网计算机实现物理隔离,以求减少来自外网的威胁。”但是,从目前网络应用来说,许多企业或机构都需要从外网采集数据,同时内网的数据也需要到外网上。因此,要想完全隔离开内外网并不太现实,网络安全必须既要解决内外网数据交换需求,又要能防止安全事件出现。

(11)业务快速发展与安全建设滞后。

在信息化建设过程中,由于业务急需要开通,做法常常是“业务优先,安全滞后”,使得安全建设缺乏规划和整体设计,留下安全隐患。安全建设只能是亡羊补牢,出了安全事件后才去做。这种情况,在企业中表现得更为突出,市场环境的动态变化,使得业务需要不断地更新,业务变化超过了现有安全保障能力。

(12)网络资源健康应用与管理手段提升。

复杂的网络世界,充斥着各种不良信息内容,常见的就是垃圾邮件。在一些企业单位中,网络的带宽资源被员工用来在线聊天,浏览新闻娱乐、股票行情、,这些网络活动严重消耗了带宽资源,导致正常业务得不到应有的资源保障。但是,传统管理手段难以适应虚拟世界,网络资源管理手段必须改进,要求能做到“可信、可靠、可视、可控”。

(13)信息系统用户安全意识差和安全整体提高困难。

目前,普遍存在“重产品、轻服务,重技术、轻管理,重业务、轻安全”的思想,“安全就是安装防火墙,安全就是安装杀毒软件”,人员整体信息安全意识不平衡,导致一些安全制度或安全流程流于形式。典型的事例如下:用户选取弱口令,使得攻击者可以从远程直接控制主机;用户开放过多网络服务,例如:网络边界没有过滤掉恶意数据包或切断网络连接,允许外部网络的主机直接“ping”内部网主机,允许建立空连接;用户随意安装有漏洞的软件包;用户直接利用厂家缺省配置;用户泄漏网络安全敏感信息,如DNS服务配置信息。

(14)安全岗位设置和安全管理策略实施难题。

根据安全原则,一个系统应该设置多个人员来共同负责管理,但是受成本、技术等限制,一个管理员既要负责系统的配置,又要负责安全管理,安全设置和安全审计都是“一肩挑”。这种情况使得安全权限过于集中,一旦管理员的权限被人控制,极易导致安全失控。

(15)信息安全成本投入和经济效益回报可见性。

由于网络攻击手段不断变化,原有的防范机制需要随着网络系统环境和攻击适时而变,因而需要不断地进行信息安全建设资金投入。但是,一些信息安全事件又不同于物理安全事件,信息安全事件所产生的经济效益往往是间接的,不容易让人清楚明白,从而造成企业领导人的误判,进而造成信息安全建设资金投入困难。这样一来,信息安全建设投入往往是“事后”进行,即当安全事件产生影响后,企业领导人才会意识安全的重要性。这种做法造成信息安全建设缺乏总体规划,基本上是“头痛医头,脚痛医脚”,信息网络工作人员整天疲于奔命,成了“救火队员”。

为了解决信息安全问题,保护企业信息的安全,建立实施信息安全管理体系是非常有效的途径。无论是自身发展需求还是国际国内客户的要求,越来越多的软件企业希望或已经建立实施信息安全管理体系。如何提高组织的信息安全,通过建设信息安全管理体系中降低组织存在的信息安全风险的方法,来提高组织信息的安全性。由此可见信息安全风险管理,是我们建立信息安全管理体系的一个重要环节,也是信息安全管理体系建立的基础。下面我们着重探讨在软件企业中的信息安全风险管理。

1.信息安全风险管理概述

我们将标识、控制和消除可能影响信息系统资源的不确定事件或使这些事件降至最少的全部过程称之为风险管理,风险管理被认为是良好管理的一个组成部分,其过程如图1所示。

2.确定范围

在建立信息安全管理体系之初,根据业务、组织、位置、资产和技术等方面的特性,我们确定了组织ISMS的范围,那么风险管理的范围应该和我们确定的ISMS的范围相一致。在软件企业中,我们要将企业的业务流程、组织架构、覆盖地址、信息系统、相关资产等都纳入到风险管理的范围当中

3.风险分析

风险分析是标识安全风险,确定其大小和标识需要保护措施地区域的过程,其目的是分离可接受的小风险和不能接受的大风险,为风险评价和风险处置提供数据。风险分析主要有定性分析方法和定量分析方法两种。定性分析方法是最广泛使用的风险分析方法,主要采用文字形式或叙述性的数值范围来描述潜在后果的大小程度及这些后果发生的可能性,相对于威胁发生的可能性,该方法通常更关注威胁事件带来的损失。定性分析方法在后果和可能性分析中采用数值(不是定性分析中所使用的叙述性数值范围),并采用从不同来源中得到的数据进行分析,其主要步骤集中在现场调查阶段,针对系统关键资产进行定量的调查、分析,为后续评估工作提供参考数据。在软件企业进行风险分析时,因为定量分析方法中的数值、数据不易获取,我们通常采用定性分析方法。风险分析又包括以下4个方面,针对定性分析方法,具体过程如下:

(1)识别评估资产。

在ISMS中所识别评估的资产有别于常见的固定资产,这里的资产主要指信息、信息处理设施和信息使用者。在识别资产时,我们需要选择适合的分类原则和识别粒度。在软件企业中,通常把资产划分为硬件、软件等方面,还需要对这些方面进行细分,也就是进行二级分类。

在评估资产时,我们要从信息的三个属性即保密性、完整性和可用性来评估资产的重要度等级。资产的重要度等级是我们进行风险评价的依据之一。资产重要度等级可以按如下定义和赋值:

①资产属于“高”等级重要度,赋值为“3”,该类信息资产若发生泄露、损坏、丢失或无法使用,会给公司造成严重或无法挽回的经济损失;

②资产属于“中”等级重要度,赋值为“2”,该类信息资产若发生泄露、损坏、丢失或无法使用,会给公司造成一定的经济损失;

③资产属于“低”等级重要度,赋值为“1”,该类信息资产若发生泄露、损坏、丢失或无法使用,会给公司造成轻微的经济损失。

(2)识别评估威胁。

我们应该清楚威胁一定是与资产相对应的,某一资产可能面临多个威胁。在识别威胁时,我们主要从威胁源来识别出相对应的资产所面临的威胁。识别出威胁后,综合考虑威胁源的动机、能力和行为,对威胁进行评估。例如软件企业中计算机面临病毒、木马攻击的威胁,这种威胁动机、能力较强。

(3)识别评估脆弱性。

脆弱性可以理解为资产可以被某种威胁所利用的属性,一种威胁可能利用一种或多种脆弱性而产生风险。我们从管理和技术两个方面来识别脆弱性,通常采用文档审核、人员访谈、现场检查等方法。针对“识别评估威胁”中所举例的威胁,软件企业计算机可能存在未安装杀毒软件、防火墙或使用人员未及时升级病毒库等脆弱性。

(4)识别评估控制措施。

在我们识别出威胁和脆弱性之后,我们要针对威胁利用脆弱性产生的风险,来识别组织自身是否已经采取控制措施,并采取叙述性数值的方式来描述已采取控制措施的有效性,评估的标准由组织进行制定,例如控制措施有效性可以定义进行如下定义和赋值:

①控制措施影响程度为“好”,赋值为“1”,该类控制措施已经对信息资产威胁和脆弱性起到良好的控制效果,能够满足公司的信息安全管理要求;

②控制措施影响程度为“中”,赋值为“2”,该类控制措施已经对信息资产威胁和脆弱性起到一定的控制效果,需要增加辅助的控制措施满足公司信息安全管理要求;

③控制措施影响程度为“低”,赋值为“3”,该类控制措施已经对信息资产威胁和脆弱性未起到控制效果,需要重新制定新的控制措施满足公司信息安全管理要求。

控制措施的有效性是我们风险评价的依据之一。

4.风险评价

风险评价是将风险与给定的风险准则加以比较以确定风险严重性的过程,其结果是具有不同等级的风险列表,目的是判断特定的风险是否可接受或者是否需采取其他措施处置。风险评价主要包括以下几个过程:

(1)分析评估可能性和影响。

“可能性”指威胁利用脆弱性的可能性,“影响”指威胁利用脆弱性后,对组织资产造成的影响。在分析可能性时,我们主要考虑威胁源的动机、能力和脆弱性的性质。在评估可能性时,依据组织制定的评估准则,对可能性进行描述,例如将可能性进行如下定义和赋值:

①可能性级别“高”,赋值为“1”,威胁源具有强烈动机和足够的能力,防止脆弱性被利用的防护措施是无效的;

②可能性级别“中”,赋值为“0.5”,威胁源具有一定的动机和能力,但是已经部署的安全防护措施可以阻止对脆弱性的成功利用;

③可能性级别“低”,赋值为“0”,威胁源缺少动机和能力,或者已经部署的安全防护措施能够防止——至少能大大地阻止对脆弱性的利用。

在分析影响时,我们主要考虑威胁源的能力、脆弱性的性质以及威胁利用脆弱性对组织资产保密性、可用性、完整性造成的损失。在评估影响时,同样依据组织制定的评估准则,对影响进行描述,例如将影响进行如下定义和赋值:

①影响级别“高”,赋值为“l00”,该级别影响对脆弱性的利用:a.可能导致有形资产或资源的高成本损失;b.可能严重违犯、危害或阻碍单位的使命、声誉或利益;c.可能导致人员死亡或者严重伤害;

②影响级别“中”,赋值为“50”,该级别影响对脆弱性的利用:a.可能导致有形资产或资源的损失.b.可能违犯、危害或阻碍单位使命、声誉或利益-c.可能导致人员伤害。

③影响级别“低”,赋值为“10”,该级别影响对脆弱性的利用:a.可能导致某些有形资产或资源的损失;b.可能导致单位的使命、声誉或利益造成值得注意的影响。

参考“风险分析”中的例子,病毒、木马攻击的动机、能力很强,员工很容易忽略对杀毒软件病毒库的升级,病毒、木马攻击很可能导致公司重要数据的丢失或损坏,那么这种威胁利用脆弱性的可能性就比较高,影响也比较高,均属于“高”等级。

可能性和影响都是我们进行风险评价的依据。

(2)评价风险。

在评价风险时,我们需要考虑资产的重要度等级、已采取控制措施的有效性、可能性和影响,通常可以采取叙述性赋值后依据组织制定的评价方法进行计算的方式,计算出风险值,并根据组织制定的准则,将风险进行分级,例如将风险进行如下分级:

①“高”等级风险:如果被评估为高风险,那么便强烈要求有纠正措施。一个现有系统可能要继续运行,但是必须尽快部署针对性计划;

②“中”等级风险:如果被评估为中风险,那么便要求有纠正行动,必须在一个合理的时间段内制定有关计划来实施这些行动;

③“低”等级风险:如果被评估为低风险,那么单位的管理层就必须确定是否还需要采取纠正行动或者是否接受风险。

5.风险处置。

风险处置是选择并执行措施来更改风险的过程,其目的是将评价出的不可接受风险降低,包括以下几个过程:

①行动优先级排序。

行动优先级排序主要依据风险级别进行,对于不可接受的高等级风险应最优先。

②评估建议的安全选项

评估建议的安全选项主要考虑安全选项的可行性和有效性。

③实施成本效益分析。

对建议的安全选项进行成本效益分析,帮助组织的管理人员找出成本有效性最好的安全控制措施。

④选择控制措施。

在成本效益分析的基础上,组织的管理人员应确定成本有效性最好的控制措施,来降低组织的风险。

⑤责任分配。

根据确定的控制措施,选择拥有合适的专长和技能,能实现相应控制措施的人员,并赋以相关责任。

⑥制定控制措施的实施计划。

明确控制措施的具体行动时间表。

⑦实现所选择的安全防护措施。

根据各自不同的情况,所实现的安全防护措施可以降低风险级但不会根除风险,实现安全防护措施后仍然存在的风险为残余风险,残余风险需经过组织管理者批示,若组织管理者批准即为风险接受,若组织管理者批示不接受,则针对该风险重新进行风险评价、风险处置直到组织管理者表示风险接受为止。

软件安全论文第3篇

随着互联网的触角深入到生产生活中的各个层面,软件已经不像以前那样只是支持办公和家庭娱乐这两大主题了,而是成为现代商业的灵魂。软件安全问题主要围绕着软件漏洞和易被攻击脆弱点,它们都来自于软件的设计和实现。Internet催生了电子商务,移动互联网使得APP变得如火如荼,未来物联网也许可以将生活中的一切元素都纳入到通信网络中去。因此软件安全问题将成为计算机安全的核心,而非防火墙等网络硬件,或是诸如加密等手段。软件安全是一切计算机安全性问题的根源,如果软件行为出现异常,与之相关的可靠性、可用性等方面问题就会随之暴露。软件安全问题并不是互联网出现后才有的,只不过互联网是目前最容易攻击软件的途径罢了。

2软件安全的现状

2.1人们的认知

随着黑客攻击的新闻时常见诸媒体,人们对计算机安全问题有了一定认识。但不幸很多计算机安全人员和计算机教育培训人员都忽视了软件安全的问题。一味地推崇某种软件平台是安全的,单纯大力增加对网络安全硬件和软件的投入,这些做法是盲目甚至荒谬的。一切安全性都不是静态特性,也没有任何软件是绝对安全的。软件安全问题的关键节点是软件的设计。

2.2软件安全设计的先天不足

世界上知名的软件厂商并不是不了解软件安全设计安全性的重要性,而是商业模式让软件安全方面存在着先天不足。稍纵即逝的商业机会、敏捷的软件开发过程和短暂的软件开发周期使得安全性方面的设计在很多时候都是被舍弃的。随之而来的处理方式则是常见的penetrate-and-pach方法,即不停地补丁。这种做法从长远来看,其成本与作用远不及一开始就做好安全性的设计和审计。

3软件安全设计应引入风险管理

从项目管理的角度看,风险指损失或损害的可能性。软件项目涉及到的是:项目中可能发生的潜在问题和它们如何妨碍项目成功。风险管理则是对应软件项目生命周期内的风险的科学和艺术。软件安全性的设计与软件设计的其他一些质量性能是互相抵触的,例如冗余性、高效性。而软件开发过程中的风险管理与软件开发的诸如时间、范围、成本等因素也是相互抵触的。但是绝不能因为这些可能发生的抵触行为而放弃对安全性和风险管理的考虑,反而应该将软件安全性设计纳入到风险管理的范畴中去。事实表明,93%的失控项目都忽视了风险管理。

4软件安全设计风险管理的实施

目前国际上对软件安全方面的风险管理存在着一个共同的认知,那就是采用高质量的软件工程的方法论可以在一定程度上解决这方面的问题,欧美一些国家也在试图制定或修订相关的一些“通用准则”来指导软件安全性设计的实践。但是这只是从科学技术方面做出努力,我们可以学习借鉴。而在管理技术和艺术方面需要做出的努力则应该尝试本地化做法。完整的风险管理的过程应该包括以下几个环节:风险管理计划的编制、风险识别、风险定性分析、风险定量分析、风险应对计划编制和风险监督控制。将整个流程都走完的项目和企业都不多,一般来自于所谓的学院派。而时下大多数国内外企业的做法是将这个7个流程简化为谁来识别风险、谁来对风险负责这两个环节。原因则是上文所提到的先天不足所致。从技术上讲,风险管理的效益来自于潜在风险最小化和潜在回报的最大化。而这个技术的应用则一定需要经历风险定量分析的过程。在这个过程中,可以使用的主要技术是决策树分析、蒙特卡罗分析、PERT分析等等。这些技术都是建立在一定的数学和会计基础之上。而令人遗憾的是,很多决策者本身对这些技术的认知或理解欠缺,以至于会抵触这种方法。大多数做法是采用小团队开发小软件的做法,即采用访谈和敏感性分析来帮助风险定量分析。然而我们并不是要反对这种简化做法,只是一定不能在简化的做法之上再次简化或敷衍了事。首先要做的工作是做好需求管理,在建立一组需求输入的时候,一定要将安全性作为一个重要需求考虑进去。有一个比较好的方法是,在软件设计时采用螺旋模型,需求的输入可以在螺旋模型的各个生命周期中进行,而有关安全性的需求输入则最好是在最初的一个螺旋中进行。之后要做的工作是确定最大风险。不可避免的要使用风险定性和风险定量分析的各种技术和方法。这个工作一定要有软件设计师、项目决策者和用户的参与,采用头脑风暴和专家访谈是不错的选择。而这个工作恰恰是现实生活中中小企业乃至客户最容易忽略的。企业要考虑成本问题,而客户的参与往往难以落实,认为软件的设计和开发应该由软件公司负责,客户付款只关心最后软件是否可以使用。而一旦由于软件安全性问题造成了一定后果后将演变成各种纠缠不清的官司,这是企业和客户都不想看到的结果。

5结语

软件安全论文第4篇

一、易用性和安全性之间的关系

在计算机的安全性和易用性设计之间存在权衡,一台不设口令的计算机非常方便使用,但是不安全;但是如果一台计算机每5分钟要求你做一次身份确认,输入口令甚至做血样检验,这样的计算机是安全的,但是不会有人愿意使用。一般说来,安全软件产品的操作要比其他软件产品的操作困难,因为实现机制复杂了,需要配置的参数也多了。

安全性和易用性在设计上有共同点:

(1)都需要从软件的整体考虑;

(2)需要对系统结构、开发团队和市场份额等方面统筹考虑;

(3)都要在系统设计的开始阶段考虑,在系统开发临近结束时无法临时增加;但是由于易用性和安全性是不同的技术,所以建立一个既有安全性又有易用性的系统比较昂贵。

(4)易用性方面出现问题可能会妨碍安全性的效果。

目前安全性和易用性之间的接口成为计算机安全界研究的对象,被称作人机交互和安全性(HCI-SEC)。在2003年ACM人机交互大会召开了HCI-SEC研讨会,随后HCI-SEC的有关问题逐步提了出来。2004年计算机界把易用安全性列为信息安全研究者的“重大挑战”,有下面两个问题:

问题1口令问题。每个人都面临口令问题,安全的口令都是难猜测的,但是难猜测的口令都是难记忆的。同时口令策略一般要求用户口令是唯一的并且要及时更新,如果一个人的帐户比较多,很难想象一个人可以完全凭借记忆牢记十多个不同的口令,并且不断地分别更新。

问题2身份确认问题。当认识到传统的口令字不够安全后,用户需要新的身份确认手段。研究表明,人记忆图像的能力比字符强,因此图像口令字被作为字符口令字的替代方案,研究还发现,用户对图像口令字的选择与种族和性别高度关联。生物测量和硬件令牌也属于用户身份确认的方法,但是现在还缺乏对这些身份确认手段的统一评价和比较方法。

二、易用安全性的实现途径

HCI-SEC的研究课题之一就是如何在某些特定的应用系统中实现易用的安全性,主要有三种类型的方法:

(1)构造不需要用户干预就可以执行相关的安全和私有功能的系统。这种方法的问题是当用户不了解某些方面的安全问题时,他们的操作可能会无意中减弱到位的安全保护。

(2)开发一种安全和私有相关的隐喻模型,让用户自发地正确使用安全和私有软件。目前的钥匙和锁的隐喻模型显然是不完全和不准确的,但是目前也没有出现更具有广泛接受性的其他隐喻模型。

(3)教给用户有效使用私有和安全工具所需要的知识。但是以什么形式把这些信息教给用户,让用户少花时间去学习掌握,还是没有解决好的问题。

很容易想到利用一种基于上述方法混合的方法,但实际上这更困难,因为上述方法的思路和实现根本上就是不同的。

现在有人开始用HCI-SEC的方法对安全系统进行评估,测试结果发现用户在安全决策理解方面存在障碍,从而导致安全配置失误遭受危险,用户往往为了使用方便,而关闭某些安全防护。

JeromeSaltzer和MichaelSchroeder于1975年就在讨论易用性是否是安全系统必要的成分,他们提出了信息保护的8条原则[1],最后一条就是对信息保护系统的“心理可接受性”,但是有些安全系统对这些思想不够重视。此后30年来,HCI技术也有了很大的发展,在技术市场上,开始有人应用HCI设计和评价技术对安全系统进行评价,他们发现最终用户在理解所面临的安全设计和决定方面非常困难,所以非常容易出现误配置的情况,而导致安全风险。很多时候用户为了工作方便停止或者忽略安全功能,例如取消口令或者共享口令,都会把系统置于高安全风险之下。

很多用户习惯将系统安全决策的权利交给系统管理员负责,但是当用户离开自己的工作场所,脱离了所在机构的防火墙保护,在家里或者在路上使用移动设备的时候,就必须根据自己的知识和经验做出安全决定,而不能依靠机构的安全管理员了。因此,需要开发把安全决策权放在用户手中的技术。

1983年,DonNorman指出许多引起数据损失的错误是由于糟糕的界面设计,虽然相关的操作需要用户确认,但是有时候用户确认只是出于习惯的机械点击,因此把系统操作动作设计成可见的和可以取消的并不能完全解决问题。

这里有一个说明问题的例子。在美国PARC研究中心建立无线局域网时,采用了基于PKI的方案,需要给200个用户X.509证书,使用802.1x传输层安全认证协议EAP-TLS进行认证。统计表明许多人觉得PKI不容易理解,技术复杂和不易用。由于PARC中心对于PKI技术熟悉,他们认为有信心成功克服使用困难,但是他们错了。在无线局域网的第一个版本里,每个用户都必须从内部认证中心申请和安装一个X.509证书,然后配置操作系统提供的802.1x客户软件来使用EAP-TLS认证协议。为了提交证书申请,用户必须决定和提供无线网卡的MAC地址和安装内部认证中心的CA根证书。在建立系统过程中,技术管理团队的大量时间花费在管理CA软件和钥匙上。利用MicrosoftWindowsXP提供的GUI802.1x的无线配置软件,用户需要总共完成38步才能完成注册过程,每一步都强迫用户做出决定或者采取行动。为了帮助用户完成这个过程,系统管理员编写了一个详细的注册指南,但是用户很容易脱离这个指南自行其事,最后用户甚至不知道对计算机做了什么操作,如果出错,他们就会不知所措。尽管PKI提供了安全保护,但是降低了用户配置自己机器的能力。

三、易用安全软件的设计考虑

安全敏感的应用软件的设计要求在易用性和安全性之间是平衡的,如果修改现有的系统设计,提高易用性就可能降低安全性,而增强安全性,就有可能让软件难以使用或者难以理解。在设计一个软件系统时,安全性和易用性两者都不能忽略,这两方面的缺陷都可能导致产品无法使用。

1、安全性和易用性统筹考虑

在软件产品的设计过程中要注意将安全性和易用性统筹考虑:

(1)安全和易用的元素不能撒胡椒面,应该把这两个元素合并在一起,贯穿整个设计过程。无论是安全性还是易用性都不能作为附加设计的内容。

(2)设计者要牢记安全性和易用性都是用户需求的一个方面,最后的取舍还是要根据用户的需要,系统的安全状态要和用户头脑中的模型相符合,并且两者都是随时间变化的。

(3)尽量将安全性元素合并到用户现在已经使用的工作流程中,他们已经习惯了这样的工作方式,不容易对安全手段产生厌倦情绪。

2、避免安全性和易用性的冲突

在安全软件产品的设计过程中,安全性和易用性可能会产生冲突:

(1)设计阶段的冲突

1)不恰当的安全性会损害易用性

让差不多要开发结束的产品变得更加安全是设计者可能会遇到的要求,但是设计者会发现在最后一分钟增加安全功能是多么困难和无效。尽管可以通过代码审查发现一些Bug,但是安全则是整个设计更深的属性,JohnViega和GaryMcgraw认为“在一个现存系统上捆绑安全是一个糟糕的主意,安全不是一个在任何时间都能增加到系统上去的属性”[2]。如果不是从设计一开始就考虑安全性问题,就可能不得不增加很多配置设置和提示,这种做法不能根本上解决问题,反而在出现问题的时候,容易将过错推给用户。

2)不适当的易用性会损害安全性

让差不多要开发结束的产品变得更加好用则是设计者可能会遇到的另外一种要求,但是这是同样困难的任务。好的易用性设计强调理解用户需求,在设计过程中溶入某种概念和风格,而不是仅仅玩弄一些表面的特色,比如动画或者界面外表。没有经过慎重考虑的易用性可能会向用户隐藏一些安全相关的决定或者选择松散的缺省设置,另外不容易理解的界面也会增加操作的复杂性和迷惑用户,降低产品的安全性。

3)集成的交互设计

安全性和易用性的研究者都赞成叠代的开发过程,执行重复的分析、设计和评估周期,而不是最后进行安全性测试或者易用性测试,将用户交互和安全手段的设计同时考虑非常重要,叠代提供了检查安全性和易用性相互影响的机会,如果一直割裂两个方面的设计几乎肯定会带来问题。

(2)使用中的冲突

从目标上讲,安全通常是使用户操作变得困难,而易用性是使操作变得更容易,安全性所引起的操作困难的结果通常是用户不情愿接受的,而易用性所带来的结果一般是用户所欢迎的,当系统设计不够好时,这两者可能发生冲突。

安全性对于用户来说永远是第二位的功能,用户使用计算机肯定不是要使用它的安全功能,用户使用计算机是为了使用资源和进行业务系统管理等,要求用户采用额外的安全步骤可能会打断他的工作流程,最后导致用户关闭掉让他烦恼的安全提示。这样自然造成易用性和安全性之间的冲突。解决的办法是尽量从自然的用户交互中提取安全信息,提取的安全信息越多,安全性对用户正常使用的干扰就越少。

(3)安全交互设计的原则

研究者曾经提出安全交互设计的10条原则[3]:

(1)完成一个任务最自然的方式也是最安全的;

(2)用户能够清楚理解授权过程,明确过程中的操作;

(3)用户的交互界面应该能够吸引用户的吸引力;

(4)影响安全决定的用户交互界面应该便于检查;

(5)在任何时候都应该允许撤消做出的安全授权;

(6)用户界面不应该让用户误以为拥有实际上没拥有的权限;

(7)用户与授权实体之间的通讯渠道必须是不能被欺骗和不容易瘫痪;

(8)确认实体与确认操作在界面上应该与其他实体和操作不同;

(9)交互界面应该提供足够的表达能力让用户容易按照自己的目标表达安全决定;

(10)在动作生效前应该让用户清楚授权操作的结果。

现在计算机的构件都被标注成可信的,可信不是一个yes或者no的问题,不明确下述问题“可信”这个词是没有任何意义的。这些问题就是:(1)“被谁信任?”(2)“被信任做什么?”(3)“什么条件下不可信?”(4)“应对的安全风险是什么?”

SimsonGarfinkel和GeneSpafford给出的定义是:“如果你能够依赖一台计算机和它上面的软件做出你期待的行为,就说它是安全的”[3],用户的期待是基于系统的概念模型,这个概念模型的基本元素是“谁”和做“什么”,对应“角色”和“能力”,每个角色有一系列的“能力”(可以影响用户的可能动作),可以通过有限状态机来模拟所有角色的所有可能动作。

安全性和易用性是贯穿软件开发过程的要求,不仅需要早期考虑,还需要同时兼顾。特别在大型系统的开发过程中,负责这两个方面的开发人员需要很好的沟通和交互。

参考文献

[1]J.H.Saltzer和M.DSchroeder,“TheProtectionofInformationinComputerSystems,”Proc.IEEE,vol.63,no.9,1975.

软件安全论文第5篇

1.1计算机软件安全检测的流程

通常计算机软件安全检测的过程中只要有以下几个流程,首先是为了彻底全面的对计算机软件系统当中可能存在的缺陷予以充分的检测和了解,要对软件设计过程中最小的模块进行进行全面的测试,之后是要严格按照设计的标准和要求对组装的系统进行检测,此外还要对与之相关的体系机构进行全面的检查。其次就是要在做好了上述各项功能工作之后,还要对软件自身的有效性和功能性进行详细科学的检测,最后一点就是要对整个系统进行全面的检测,测试整个软件在各种环境下运行的安全性和可靠性。

1.2当前计算机软件安全检测的只要方法

首先是形式化的检测。形式化的安全监测实际上就是根据具体的要求来建立软件应有的数学模型,之后通过对应的标准化语言对其进行格式化的说明。形式化的安全监测通常有两种检测方法,一种是模型检测,一种是定量检测。其次就是在模型基础上的静态安全检测。模型安全监测一方面是通过软件行为和结构构建的一种方式,这样也就形成了一个可供测试的模型,这种模型在运行的过程中一方面可以在计算机上实现读取,在工作的过程中,比较常用的模型安全检测方法有两种,一种是有限状态机检测,一种是马尔科夫链检测、再次就是语法检测。语法检测实际上就是技术人员通过技术措施对软件在不同的输入条件下所产生的反应是否相同。四是基于故障注入的软件安全检测。故障注入的安全检测是应用故障分析树与故障数的最小割集来检测的。五是模糊测试和基于属性的测试。基于白盒的模糊测试较传统的模糊测试技术有很大进步,白盒模糊检测方法有效地结合了传统的模糊测试技术和动态测试用例检测技术的优点。六是混合检测技术。能有效地改善静态技术和动态技术检测存在的一些缺陷,从而更好地对计算机软件的安全进行检测。七是基于Web服务的检测技术。它是一种基于识别内容的分布式Web服务器技术。具有语言中立、互动操作性强等优点,能够将复杂的安全检测分解为子安全类型进行处理,以使其可以更有效地应对复杂的安全检测的需要。

2软件维护的主要类型

2.1改正性维护

改正性维护是指改正在系统开发阶段已发生而系统测试阶段尚未发现的错误。这方面的维护工作量要占整个维护工作量的17%~21%。所发现的错误有的不太重要,不影响系统的正常运行,其维护工作可随时进行:而有的错误非常重要,甚至影响整个系统的正常运行,其维护工作必须制定计划,进行修改,并且要进行复查和控制。

2.2适应性维护

适应性维护是指使用软件适应信息技术变化和管理需求变化而进行的修改。这方面的维护工作量占整个维护工作量的18%~25%。由于计算机硬件价格的不断下降,各类系统软件屡出不穷,人们常常为改善系统硬件环境和运行环境而产生系统更新换代的需求;企业的外部市场环境和管理需求的不断变化也使得各级管理人员不断提出新的信息需求。这些因素都将导致适应性维护工作的产生。进行这方面的维护工作也要像系统开发一样,有计划、有步骤地进行。

3提高软件的可维护性方法

3.1建立明确的软件质量目标

如果要一个可维护性的程序满足可理解的、可靠的、可测试的、可修改的、可移植的、效率高的和可使用的7个全部的要求,要付出很大的代价,甚至是不显示的。但是可理解性和可测试性以及可理解性和可修改性是相互促进的,而效率和可移植性以及效率和可修改性是相互抵触的。因此,要明确软件所追求的质量目标。

3.2使用先进的软件开发技术和工具

利用先进的软件开发技术能够大大提高软件质量和减少软件费用,并且稳定性好,容易修改、容易理解,易于测试和调试,因此可维护性好。

3.3建立明确的质量保证

最有效的方法就是质量保证检查,在软件开发的各个阶段以及软件维护中得到了广泛的应用。

4结束语

软件安全论文第6篇

接连不断的蠕虫病毒使当前安全技术和措施的有效性再次受到质疑。尽管安全是世界上所有机构的头等大事之一,安全攻击事件的数量仍然是逐年攀升,造成的危害一次比一次大。在最近的数年中,大量的投资被用于阻击安全事件的发生,但只有少数公司确保了它们网络的安全。

特别值得一提的是,为了满足用户和业务的需求,时刻保持竞争优势,企业不得不持续扩张网络体系。然而,很多人可能不知道,网络的每一次扩张,即便是一台新计算机、一台新服务器以及软件应用平台,都将给病毒、蠕虫、黑客留下可乘之机,为企业网络带来额外的安全风险。同时,纯病毒时代已经一去不复返,几年前占据着新闻头条的计算机病毒事件在今天看来已经不是什么新闻,取而代之的是破坏程度呈几何增长的新型病毒。这种新型病毒被称为混合型病毒,这种新病毒结合了传统电子邮件病毒的破坏性和新型的基于网络的能力,能够快速寻找和发现整个企业网络内存在的安全漏洞,并进行进一步的破坏,如拒绝服务攻击,拖垮服务器,攻击计算机或系统的薄弱环节。在这种混合型病毒时代,单一的依靠软件安全防护已开始不能满足客户的需求。

网络安全不只是软件厂商的事

今年上半年,网络安全软件及服务厂商——趋势科技与网络业界领导厂商——思科系统公司在北京共同宣布签署了为企业提供综合性病毒和蠕虫爆发防御解决方案的合作协议。该协议进一步扩展了双方此前针对思科网络准入控制(NAC)计划建立的合作关系,并将实现思科网络基础设施及安全解决方案与趋势科技防病毒技术、漏洞评估和病毒爆发防御能力的结合。

根据合作协议,思科首先将在思科IOS路由器、思科Catalyst交换机和思科安全设备中采用的思科入侵检测系统(IDS)软件中添加趋势科技的网络蠕虫和病毒识别码技术。此举将为用户提供高级的网络病毒智能识别功能和附加的实时威胁防御层,以抵御各种已知和未知的网络蠕虫的攻击。

“在抵御网络蠕虫、防止再感染、漏洞和系统破坏的过程中,用户不断遭受业务中断的损失,这导致了对更成熟的威胁防御方案需求的增长。”趋势科技创始人兼首席执行官张明正评论说,“传统的方法已无法满足双方客户的需求。”

“现在的网络安全已不是单一的软件防护,而是扩充到整个网络的防治。”思科全球副总裁杜家滨在接受记者采访时表示:“路由器和交换机应该是保护整个网络安全的,如果它不安全,那它就不是路由器。从PC集成上来看,网络设备应该能自我保护,甚至实现对整个网络安全的保护。”

业界专家指出,防病毒与网络基础设施结合,甚至融入到网络基础架构中,这是网络安全的发展潮流,趋势科技和思科此次合作引领了这一变革,迈出了安全发展史上里程碑式的重要一步。

“软”+“硬”=一步好棋

如果细细品味这次合作的话,我们不难发现这是双方的一步好棋,两家公司都需要此次合作。

作为网络领域的全球领导者,思科一直致力于推动网络安全的发展并独具优势。自防御网络(Self-DefendingNetwork,SDN)计划是思科于今年3月推出的全新的安全计划,它能大大提高网络发现、预防和对抗安全威胁的能力。思科网络准入控制(NAC)计划则是SDN计划的重要组成部分,它和思科的其他安全技术一起构成了SDN的全部内涵。

SDN是一个比较全面、系统的计划,但是它缺乏有效的病毒防护功能。随着网络病毒的日见猖獗,该计划防毒功能的欠缺日益凸显。趋势科技领先的防毒安全解决方案正是思科安全体系所亟需的。

趋势科技作为网络安全软件及服务厂商,以卓越的前瞻和技术革新能力引领了从桌面防毒到网络服务器和网关防毒的潮流。趋势科技的主动防御的解决方案是防毒领域的一大创新,其核心是企业安全防护战略(EPS)。EPS一反过去被动地以防毒软件守护的方式,将主动预防和灾后重建的两大阶段纳入整个防卫计划当中,并将企业安全防护策略延伸至网络的各个层次。

“如果此次与思科合作的不是趋势科技,我们恐怕连觉都睡不好。”张明正的戏言无不透露出趋势科技对此次合作的迫切性和重要性。

更让张明正高兴的是,通过此次合作,趋势科技大大扩充了渠道。“我们的渠道重叠性很小。”张明正表示。而此次“1+1<2”的低成本产品集成将使这次合作发挥更大的空间。

网络安全路在何方?

如今,虽然业界有形形的安全解决方案,网络安全的形势却不断恶化。究其原因,主要是由于现在的网络威胁形式越来越多,攻击手段越来越复杂,呈现出综合的多元化的特征。

软件安全论文第7篇

在网络安全教学中,作为企业网络管理者,最开始我们需要了解的是:(1)公司网络拓扑结构,虽然企业不一定给你最完整的资讯,但是一定会告诉我们有哪些基本的网络设备,我们至少应该知道这些设备可以干什么,然后清楚地意识到在不久的将来我们都需要或多或少的对它进行配置[3]。例如:交换机、路由器、防火墙、VPN、无线AP、VOIP及内容过滤网关等[4]。(2)企业还会告诉我们一些功能服务器,这些也是我们日后需要进行管理的对象。例如:企业AD、DHCP、DNS、FTP、WEB、网络ghost服务器、Share服务器、WSUS服务器和Exchange服务器等等。我们需要记下这些网络设备和功能服务器的IP地址。

2企业网络安全管理的方式

2.1企业网络安全管理可能遇到的问题

作为企业网络安全实验教学,我们需要尽可能的模拟更多的企业网络问题给学生来思考和解决:(1)给你一个IP地址,你能准确地找到这台机器么?你需要什么辅助你?(2)有人说他能上内网,但外网不行,你会想到什么?(3)有人说他QQ还可以聊天,但网页打不开,你怎么想?以上模拟的问题都是企业中最容易出现的,在让学生思考以上问题的同时,以下问题才是需要让学生们在模拟企业网络管理者的时候需要规划的:(1)研发部门的服务器突然增加了,可是给他们的IP地址不够分了,怎么办?(2)财务数据库服务器数据很敏感,可是外地分公司的业务又必须访问,你将制定怎样的策略?(3)规划的网络是固定IP还是自动分配呢?

2.2解决问题的注意事项

2.2.1节点安全

更多的时候我们需要让学生们了解到通过各种软件保障设备的稳定运行是预防节点安全的主要手段。我们可以通过监控系统日志实现对系统信息日志、权限管理日志和资源使用率日志的管理;通过监控硬件状态实现对温度、电压、稳定性和硬件故障的管理;通过异常警报实现对冲突异常、侵入异常、失去功能异常、突发性性能异常等状况的管理;通过容灾实现对硬件损坏、停电、失火、散热失效等的管理。

2.2.2软件安全

最复杂最难管理的就是软件安全,因为我们所有的服务器硬件都是为运行在上面的软件服务的,而软件又都是由人根据需求编写代码开发出来的应用程序。往往一款软件需要很多人的协作开发,由于各种局限性,在开发过程中无法考虑各种情况,因此软件都会有各种各样的缺陷,需要不断的修正。有的缺陷是无伤大雅的,而有的缺陷却是致命的。你不是开发者,这些缺陷对你来说又是不可控的。你只能被动的防范这些缺陷,而往往修补这些缺陷都发生在缺陷产生危害之后。然而装的软件越多,这些缺陷也就越多。更要命的是,病毒、木马它们也是软件,操作系统自身无法识别。杀毒软件可以处理病毒、木马,但是安全软件一不小心也会成为不安全的因素。例如:金山网盾事件、暴风影音事件等。尽管如此,我们依然可以防范,那就是把握以下原则:(1)最少安装原则:提供什么服务就只装什么服务或软件,其他一律屏蔽;(2)最少开放原则:需要什么端口就开放什么端口,其他一律屏蔽;(3)最小特权原则:给予主体“必不可少”的权限,多余的都不开放。

2.2.3数据安全

不论是节点安全还是软件安全,我们最终的目的都是为了保障数据安全。这也是网络安全的终极意义。这是我们在课堂上务必让学习网络安全的学生了解的内容。数据安全其实是数据保管安全,涉及以下4个方面:(1)数据在存储介质上的物理安全。即防范存储介质损坏造成的数据丢失隐患。(2)数据在存储介质上的逻辑安全。即防范因各种操作造成的数据逻辑破坏、删除或丢失的隐患。(3)数据在空间上的安全。即防范因各种灾难造成当地的整个数据完全损毁的隐患。(4)数据在管理上的安全。即防范敏感或机密数据通过公司内部员工人为泄露的隐患。数据传输安全是互联网安全的重点,主要防范重点如下:(1)数据在传输过程中被阻碍(例如,DDOS攻击);(2)数据在传输过程中被窃取(因为无线上网设置不当造成公司资源外泄);(3)数据在传输过程中被修改(网页注入式攻击)。

3结束语