《信息技术 软件安全性保障规范》
(征求意见稿) 编制说明
一、 任务来源
根据国家标准化管理委员会2008年下达的第3批标准制修订计划,国家标准《信息技术 软件安全性规范》由电子技术标准化研究院、复旦大学、总装备部武器装备论证研究中心、浙江省电子信息产品检验所、北京东方通科技股份有限公司、上海计算机软件技术开发中心、万达信息技术有限公司、装备学院共同起草。其标准计划编号是20081350-T-469。
二、 编制背景及原则
软件安全性问题一直是一个大家关注的问题,特别是随着信息技术的发展,商业现货软件的出现为系统的组合和架构提供了简便、快捷的方式,缩短了系统研发的周期,但是随之而来的问题是:如何评价这些商业现货软件的安全性?在软件生存周期的各阶段,如何确保软件的安全性?从哪些角度来分析软件安全性?因此有必要制定一个从软件安全性活动、数据和软件的采购和研发等方面进行规范并提供相应的指导原则。在国内软件安全性标准方面,仅有国军标GJB/Z142-2005提供军用软件安全性分析的指南,还没有对安全攸关系统中的安全攸关软件的采购、研发等安全活动进行规范的标准。
美国美国航空航天局NASA针对航空航天工程制定了一系列软件安全性方面的规范,并且有大量的实际应用案例。本标准在编制过程中参照了美国
精品
可编辑
NASA-STD-8719.13B(SOFTWARE SAFETY STANDARD)、NASA-GB-8719.13(Software Safety Guidebook)和NASA—STD-8739.8(Standard for Software Assurance),并根据国内的实际情况进行了裁剪,以适应国内的实际应用。
三、 编制过程
根据标准计划要求,于2009年10月成立了由研究机构、高校和企业单位共同参与的标准编制小组。由于国际上ISO/IEC JTC1 SC27重点关注的是信息安全技术,SC7则关注的是软件开发和工程实施过程中的一些标准。我们在研究的过程中发现,为了保证安全攸关软件的安全性,不仅要保证系统集成过程中的安全性,更要关注软件在开发过程中一些重要环节,从而确保软件在集成后,能够不因自己的软件安全性而影响系统的安全性。
本标准在研究与编制过程中,查阅了大量的相关技术文献。国际标准化组织的标准中没有直接可以参考的资料,美国NASA在此方面有一些标准可以借鉴。为此标准起草组首先对NASA的相关标准进行了翻译,并多次组织研究人员进行认真的讨论,数易其稿。在此基础上根据国内的实情情况,对翻译的标准进行了适应性的裁剪,于2011年2月形成了本标准初稿。
针对本标准的初稿,利用标准研讨会的形式,邀请软件安全方面的专家进行了多次研究、讨论和修改,从技术内容上保证了标准的质量。组织信息技术中心及软件研究室内部标准化方面的专家对初稿进行了3次研讨和修改,从标准要求和格式等方面进行了修改。于2012年12月形成了征求意见稿。
精品
可编辑
四、 有关内容说明
1、本标准的适用范围
本标准规定了获取或开发一个安全攸关系统中的软件所必需的软件安全性活动、数据和文档。本标准适用于安全攸关软件的开发和获取过程,也适用于驻留在硬件中的软件(固件),同样适用于COTS软件和任何可复用的软件。
2、本标准的主要内容
在安全攸关系统中,软件的安全性对系统的安全运行和任务的顺利完成起着重要的作用。本标准针对这类安全攸关软件的安全性进行了规范。主要内容有第4章的安全攸关软件的确定(确定过程、安全性分析)、第5章的软件安全性管理(软件安全性计划、人员认证及培训、软件生存周期、文档要求、可追踪性、软件配置管理活动、软件保障活动、工具支持与批准、现货软件、合同管理、认证过程、放弃/偏离、安全保密性)、第6章的软件开发的安全性需求分析和第7章的软件的运行使用。这些内容涉及到软件的界定、管理、开发和使用等各个方面,是对安全攸关软件的一个全生命周期的规范。
3、其他说明
3.1关于修改标准名称的说明
在标准编制计划中标准的名称是《软件安全性规范》。在标准编制过程中,发现名称与标准内容不是十分相符。在专家提议下,经过标准编制小组的研究决定,把标准名称修改为《软件安全性保障规范》,以与标准内容更符合、更准确。
3.2对于原标准的引用的问题
NASA—STD-8739.13B第2章相关文件中包含了ISO标准、IEEE标准、NASA标准和
精品
可编辑
其它文件。参照其它国标的惯例,建议将第2章改为“引用文件”,其内容只包括ISO标准和IEEE标准,并删去文中对其他文件的引用,相关的文字作适当的调整。如果IEEE标准有对应的国标或ISO标准(如“软件生存周期过程”),则采用国标或ISO标准。在3.1节的术语和定义中,如果二者语义上基本相同,则将原引用的文字改为国标或ISO标准中的相应文字;如果二者有较大差异,则仍保留对IEEE标准的引用,原引用的文字不改。
3.3关于对原有标准中的一些称谓的修改
在编制过程中,由于NASA—STD-8739.13B标准中涉及到很多NASA本身的一些机构和管理方式,为此在标准中将一些原标准相关机构名称改为对我国具有普适意义的组织机构称谓。如“中心SMA”和“工程SMA组织”都更改为“安全机构”,“变更控制委员会(CCB ,Change Control Board)”更改为“变更控制小组”,“中心项目安全组织”更改为“项目安全机构”。
3.4 关于缩略语及其全称的使用
对原有标准缩略语根据标准文本的修改对相关的缩略语进行了裁剪,特别是与NASA相关的缩略语(如Code Q、GB、GOTS、NASA、NPD、NPR)删去或用其他缩略语替代。
3.5 对于NASA等美国标准相关的引用内容的修改
文中与NASA等美国标准相关的引用内容大体可分以下几类:
1)与NASA其他标准有关的描述。如果该描述不影响对上下文的理解,做了删除处理;对于描述与上下文有一定关系,则做了适当修改。
做删除处理的有:
精品
可编辑
①1.1节“NASA-GB-8719.13(软件安全性指南)提供了相关的附加信息,说明了如何以一种与软件在系统安全性中的角色相一致的方式实现软件安全性以及软件安全性相关活动。”
②1.2节“NASA安全性手册(NPR 8715.3)介绍了用于确定系统是否属于安全攸关系统的方法。本软件安全性标准定义了一个安全攸关系统中的软件也是安全攸关的。”(本标准3.1节和4.1.1中第2节的定义中已体现了“安全攸关系统中的软件也是安全攸关的”意思)
③1.2节“NASA软件安全性指南(NASA-GB - 8719.13)宜被用于创建一组裁剪的活动和分析,以符合本标准的要求。”
④3.1节“政府现货(GOTS)软件典型的是指由需要这些软件的政府机构内的技术人员开发的软件。”(根据国情,国内没有GOTS软件的提法,为此删去)
⑤5.10节“NASA-STD-8739.8(NASA软件保障标准)同样适用于安全攸关软件。”
做修改的有:
①1.3节“本标准覆盖的任何软件同样也在NASA软件保障标准(NASA-STD-8793.8)所覆盖的范围内。”改为“本标准覆盖的任何软件同样也在安全攸关软件保障相关标准所覆盖的范围内。”
②5.1.1节“本标准假设中心SMA机构将执行以下动作。对中心SMA机构的要求是通过NPD和NPR等文件规定的。这里将相关要求列在下面是为了对所期望的活动以及它们与方案、项目和设施的交互进行提醒。”改为“本标准假设中心SMA机构将执行以下动作。”
精品
可编辑
③5.15.1“在任何安全攸关软件项目中,如果本标准中所包含的一个或多个要求(即带编号的“应……”的陈述)无法被满足,应由软件安全专家准备一个放弃/偏移包,并且按照NPR 8715.3进行审批。”改为“在任何安全攸关软件项目中,如果本标准中所包含的一个或多个要求(即带编号的“应……”的陈述)无法被满足,应由软件安全专家准备一个放弃/偏移包,并由相关部门审批。”
2)引用NASA某标准中的内容。对这类问题,由于将引用的文件中的相关内容补充到本标准中有一定的困难,为此进行了删除处理。
①1.2节“COST软件宜在使用前进行评估,并在其所在的系统内进行验证,以确保COST软件不会因疏忽而造成危害(参见NASA-GB - 8719.13 NASA软件安全性指南)。”
②4.2节“对于软件安全性方案计划以及与其他项目活动集成方面的细节描述见NASA安全指南NASA-GB-8719.13。”(NASA-GB-8719.13中与软件安全性方案相关的内容在第4章,这部分内容有50多页,相关性不明确,难以抽取相关内容,删去引用)
③5.1节“安全系统及其软件元素的开发责任由方案/项目经理与当地的安全及任务保障机构共同承担(参见NPR8715.3的3.2.3节)。”
④5.1.2.1.3“包括受过培训的软件安全人员(按照NASA方针进行培训)”。(因没有NASA方针,所以删去引用)
⑤5.16节“保密安全性受破坏会影响安全攸关系统,因此NPD 2810.1(信息技术保密安全性标准)以及相关的指南NPR 2810.1宜在安全攸关软件中考虑。”
精品
可编辑
⑥6.2.1.4节“软件设计应在可能的范围内将设计中与安全性相关的方面进行模块化[见NASA-GB-8719.13软件安全性指南]。” ( NASA-GB-8719.13中与“安全性方面的模块化设计”相关的内容不明确,难以抽取相关内容,删去引用)
⑦6.3.1.1节“软件编码标准应明确要求在源代码注释中清晰地标识安全攸关代码及数据,强烈阻止不安全的语言特性(如指针或快速内存拷贝),并要求一旦使用了这些特性就要将它们明确地标识和记录[见NASA-GB-8719.13, NASA软件安全性手册中的检查表];”
⑧6.2.1.4节“软件设计应在可能的范围内将设计中与安全性相关的方面进行模块化[见NASA-GB-8719.13软件安全性指南]。”(模块化概念对软件人员是一个相当基本的概念,不必再参见什么标准,删去引用)
3.6对附录处理的说明
附录A是一个关于在国际空间站载荷工程中实现标准要求的案例,对于我们的软件安全性规范应用没有太多参考价值,为此删去。附录B在我们的实际中也没有使用,为此删去。
五、 专利说明
本标准目前不涉及专利问题。 . . .
精品
因篇幅问题不能全部显示,请点此查看更多更全内容