1.3 信息安全评估准则的发展
1.3.1 可信计算机系统评估准则
业界一般认为1983年美国国防部发布的可信计算机系统评估准则(Trusted Computer System Evaluation Criteria,TCSEC)是CC的主要源头。事实上,国际上对信息技术安全评估准则相关内容的研究还要再早十年。美国国防部(DoD)在1973年1月就针对其自动数据处理(ADP)系统发布了《ADP安全手册-资源安全共享实现、关闭、测试和评估的ADP安全保密技术和规程(DoD 5200.28-M)》。该手册是第一批计算机系统安全评估标准之一,其内容覆盖计算机数据处理系统的设计、编制、实现、评估、运营、停运、杀毒等方面的安全评估规则。在DoD 5200.28-M规范中有9部分内容,与安全测试和评估相关内容有以下3项。
(1)应编制计算机自动数据处理系统的安全功能分析、测试和评估的方法、技术和标准。
(2)应通过授权的指定机构来帮助ADP系统编制者对其安全功能进行分析、测试和评估,以确保自动数据处理系统安全控制措施的有效性。
(3)应提供安全测试和评估工具和设备的相互认可和共享使用,最大限度地减少重复和重叠劳动,改进安全评估操作的有效性和经济性。
针对第一条有关“安全功能分析、测试和评估方法、技术和标准”,《ADP安全手册(DoD 5200.28-M)》中声明“将在附加测试和协调之后出版”。因此,美国国防部设在美国国家安全局的计算机安全评估中心于1983年推出了TCSEC。这个准则在1985年12月被确定为美国国防部计算机系统安全评估标准(DoD-STD-5200.28),通常称为橙皮书(Orange Book,1983—1999)。TCSEC最初只是美国的军用标准,国防部撰写的5200.28指令《自动化信息系统(AIS)的安全要求》在国防部所有范围内使用《国防部可信计算机系统评估准则》,后来该标准进一步延伸至民用领域。
橙皮书提出了评估计算机系统安全等级分类的方法,这与美国国防部在卡内基-梅隆大学设立的软件工程研究所(SEI)在21世纪初提出的评估软件工程过程鲁棒性的分级方法——能力成熟度模型(CMM)相似。橙皮书将计算机安全等级由低到高分为4类(D、C、B和A)7级(D1、C1、C2、B1、B2、B3和A1)。级别A1是最高安全级,包括了各个安全级别的所有安全控制措施,并附加了一个安全系统的引用监控器(RM)设计要求,所有构成系统的部件必须经过形式化安全分析。级别D1是计算机安全的最低级,不要求对用户进行身份鉴别(如微软的磁盘操作系统MS-DOS)就可使用计算机系统,因此,D1级别的计算机系统是不可信任的,硬件和软件都易被侵袭。这些安全等级(如表1.2所示)提供了计算机安全保护范围。此外,橙皮书还引入了引用监控器、安全策略模型、可信计算基、安全保障等安全概念,为后续其他相关标准的制定提供了借鉴。
表1.2 橙皮书中的可信计算机系统评估准则(TCSEC)
由于当时信息技术与计算机应用的局限性,TCSEC所提出的安全要求主要是针对没有外部连接的多用户操作系统。随着20世纪80年代网络技术的发展,特别是90年代基于互联网技术的IT系统的广泛应用,安全评估人员很难将TCSEC指导手册解释或应用到网络应用系统或数据库管理系统(DBMS)中去。因此,作为橙皮书的补充,美国计算机安全中心(NCSC)针对网络安全的系统和数据库的安全评估需求又推出了3类解释性文件,即可信网络解释(Trusted Network Interpretation,TNI)、计算机安全系统解释(Trusted Computer Interpretation,TCI)和可信数据库解释(Trusted Database Interpretation,TDI)。例如可信数据库解释定义了DBMS的设计与实现中需满足的、用以进行TCSEC 4类7个安全性级别评估的技术要求。由于每种解释类标准文件都有一个不同颜色的封面,所以围绕TCSEC相关的总计约四十来个补充文件共同组成了美国国防部《可信计算机系统评测标准》的“彩虹系列”丛书。彩虹系列是国际上第一代全面的、系统的计算机安全评估标准,对信息技术安全评估理论和技术的发展产生了深远的影响。“彩虹系列”标准的努力和发展主要由以下3个因素驱动。
(1)信息技术发展的推动:信息技术的高速发展导致通信安全(COMSEC)和计算机安全(COMPUSEC)概念的融合需求。
(2)信息技术的广泛应用:在国防等敏感信息处理应用领域以外的关于信息技术更普遍的使用,需要给用户提供采购IT产品和系统的安全要求描述、安全方案的可信度判断等需求。
(3)降低IT产品安全评估成本:信息技术安全评估作为一个产业,必须发展一种物有所值的信息安全技术要求开发和IT产品安全评估的商业方法,以适用于多个工业领域。
当然针对后来的安全评估要求,美国国防部又发布了很多附件,例如针对数据库安全评估中的推理通道和聚合安全问题、多级安全DBMS中的实体和参照完整性、多级安全DBMS中的多态问题、安全DBMS中的审计问题和高安全保障DBMS中的自由访问控制问题,发布了基于可信数据库解释TDI的5本附件文档。
从1992年开始,美国国家标准技术研究所(NIST)和美国国家安全局(NSA)开始对TCSEC进行补充和修改。首先,针对TCSEC的C2级要求提出了适用于商业组织和政府部门的最小安全功能要求(MSFR)。后来,在MSFR和加拿大可信计算机产品评估准则的基础上,美国在1992年底公布了供美国政府、民用和商用使用的联邦信息技术安全准则(FC)草案1.0版。它是结合北美和欧洲有关评估准则概念的另一个国家级安全评估标准。在FC中引入了“保护轮廓”这一重要概念,通过产品功能要求、产品开发保障要求和安全评估要求三部分内容来描述IT产品和系统的安全要求。
FC草案与TCSEC另一个不同点是分级方式不同,FC吸取了欧洲的信息技术安全评估准则(ITSEC)和加拿大可信计算机系统评估准则(CTCPEC)的优点,在评估级别的定义上提供了更多的指导,但仍然保留一定的灵活性。使用与具体产品实现无关的PP文档来描述用户对IT产品和系统的安全要求,这能克服橙皮书中对IT安全要求严格的僵化结构。FC草案中的PP文档包括5部分。
(1)描述的元素:PP文档的名字,包括要解决的安全问题的描述。
(2)基本原理:PP文档结构合理性基本判断,包括威胁、运行环境和使用假设,要解决的安全目的等更详细的描述,和遵从该PP文档的产品支持的安全策略指南。
(3)安全功能要求:建立TOE安全功能列表和保护边界,这样在边界内可以使用这些安全控制措施抵御预期的安全威胁。
(4)开发保障要求:从初始设计到实现的所有阶段,包括开发过程、开发环境、操作支持、开发证据等安全保障要求。
(5)评估保障要求:说明IT产品和系统的安全评估的类型、范围和深度。
FC草案是从美国广泛的社会化公开标准修改而来的,描述了文件处理、加密算法和其他信息技术相关的IT产品和IT系统的安全要求,但由于信息技术及其应用的快速发展,加之其标准内容的不完备性,以及ISO/IEC 15408《信息技术 安全技术IT安全评估准则》编制工作的推进,FC只短暂地存在了一段时间,未能在美国联邦政府应用中推广。
1.3.2 区域性的信息安全评估准则
在美国TCSEC的影响和信息技术发展趋势的推动下,在20世纪80年代后期,法国、英国等欧洲国家和加拿大纷纷着手开发自己的信息技术安全评估准则。1990—1993年,欧盟委员会、欧洲计算机制造商协会(ECMA)、经济合作与发展组织(OECD)、英国通信电子安全工作组、加拿大通信安全机构都发布了相关的计算机安全标准或者安全技术报告。例如,英国在1991年3月发布了信息技术安全评估方案;法国、德国、荷兰和英国联合行动,于1990年提出面向欧共体的信息技术安全评估准则(ITSEC,1991—2001)。ITSEC作为欧洲多国互认的区域性安全评估标准的综合产物,适用于军队、政府和商业部门的各种信息系统。欧洲的ITSEC以超越美国的TCSEC为目的,将IT产品和系统的安全要求分为“功能”和“保障”两部分。其中,“功能”指为满足安全要求而采取的一系列技术安全控制措施,如访问控制、安全审计、用户鉴别、数字签名等;“保障”则指为确保安全“功能”正确实现及其实现有效性的安全控制措施。在ITSEC中还首次提出了目前在CC标准中采用的“安全目标(ST)”的概念,即对具体被评估的IT产品和系统的安全功能、安全方案(即安全规范)及其使用环境的描述。
加拿大于1988年就开始制定《可信计算机产品评估准则》(CTCPEC),于1993年公布了第三版(v3.0)。作为ITSEC和TCSEC的结合,这个版本的CTCPEC将IT安全要求分为功能要求和保障要求两部分。功能要求分为保密性、完整性、可用性、可控性等几个大类。在每种安全要求下,CTCPEC又分成很多等级以体现IT产品安全性上的差别,按保障要求程度的不同,CTCPEC将保障级别分为0~5级。
1994年1月,美国国家标准技术研究所(NIST)发布了密码模块的安全要求(FIPS PUB 140-1)。在吸收自FIPS 140-1发布以来相关标准和技术的变化,并考虑来自厂商、实验室和用户团体的不同意见与建议的基础上,NIST于2001年发布了FIPS 140-2,以取代FIPS 140-1。此系列标准提供了包括密码模块规范、密码模块端口和接口、角色、服务和鉴别、有限状态机等11个类别的安全要求,以便IT产品与IT系统保护敏感但是非绝密的信息。FIPS 140系列标准提供了4种渐增的安全级别,可以覆盖很大范围内各种密码模块的潜在应用场景。因此FIPS 140系列标准可和CC配套使用,以便对各种类型的计算机与通信系统中的密码模块进行安全测评。
自FIPS 140-2发布以后,NIST曾经多次发起对FIPS 140-2的版本更新工作(最新版本是2014年的FIPS PUB 140-3草案)。在此过程中,NIST在ISO/IEC JTC1/SC27的层面上推进FIPS 140-2的更新工作,分别于2006年和2012年将最新内容以ISO/IEC 19790《信息技术 安全技术 密码模块的安全要求》的形式进行了发布。此外,ISO/IEC 19790的配套标准ISO/IEC 24759《信息技术 安全技术 密码模块的测试要求》在2017年进行了更新发布,对密码模块非侵入式攻击测试方法的ISO/IEC 17825—2016《信息技术 安全技术密码模块非侵入性攻击缓解技术的测试方法》标准也在2016年发布。为了满足美国对应用密码模块的安全要求,目前基于ISO/IEC 19790的密码模块安全测评已在美国本土之外也得到了采用,从FIPS 140-2官方网站来看,至2018年底全世界范围内已有300多家密码模块厂商的2000多种产品通过了测评。
1.3.3 通用评估准则及其发展历程
通用评估准则代表着西方发达国家多年以来发展“信息技术安全评估标准”的新高度。表1.3概括了CC发展过程中的代表性事件。从表1.3可看出,通常认为计算机和网络安全评估是在20世纪90年代互联网的发展驱动下产生的,这一见解并不太正确。事实上,对计算机安全的需求以及人们对信息安全的关注始于计算机诞生年代。在那个时期,国防、情报等国家敏感领域相关部门是计算机的主要用户,他们比较关注计算机安全技术及其测试与评估技术,以防止非授权人员对国家重要信息或机密信息的蓄意或无意的访问,或者是对会导致组织机密信息泄露的计算机及其外围设备的非授权操作。
表1.3 CC发展过程中的主要事件
由于信息技术安全评估的复杂性和IT国际贸易的迅速发展,单靠一个国家或地区自行制定并实行的信息技术安全评估标准无法满足测评结果国际互认的要求。因此,西方多个国家安全机构与组织决定集结他们的资源以应付信息技术发展带来的各种安全挑战,提出了制定统一的IT产品和IT系统安全评估标准的方案。在此方面,原欧共体的信息技术安全评估准则(ITSEC)为多国共同制定区域性信息安全标准开了先河。为了紧紧把握IT市场的主导权,美国在ITSEC标准发布之后立即倡议欧美6个国家的7个组织(即英、法、德、荷、加这五国的国家安全相关机构,加上美国国家安全局(NSA)和国家标准技术研究所(NIST))共同制定信息技术安全评估准则(即CC),这6个国家被称为CC发起人。于1993年6月成立了CC编辑理事会(CCEB),正式启动了CC的编制工作,通过与ISO/IEC JTC1/SC27中负责制定安全评估标准的工作组(WG3)合作,在1994年启动了CC项目的国际化工作,以便将CC及其配套标准以ISO/IEC国际标准的形式进行发布和维护。
1.ISO/IEC 15408(CC)的制定情况
CCEB于1996年1月发布了CC v1.0,并在1996年4月成了ISO/IEC委员会草案(CD)。依据各国在试用中提出的反馈意见和公众建议,CC执行理事会(CCIB)对CC v1.0进行了大量修订,并在1997年10月形成了CC v2.0测试版。其后CCIB接收了来自WG3专家和ISO/IEC投票国家团体的一系列反馈意见,并针对这些反馈建议做出了修订,最终在1998年5月发布了CC v2.0正式版。ISO/IEC JTC1/SC27经过评议和投票之后,将CC正式定名为ISO/IEC 15408《信息技术 安全技术 信息技术安全评估准则》。1999年12月,国际标准ISO/IEC 15408:1999正式发布,内容上对应于CC项目组织发布的CC v2.1(因此国际上仍将ISO/IEC 15408简称为CC)。从此,CC成为事实上的国际认可的信息技术安全评估准则。图1.2对CC与其他信息技术安全评估标准之间的继承关系进行了直观的描述。
图1.2 CC与GB/T 18336发展简史
TCSEC是业界公认的ISO/IEC 15408的主要源头之一。随着信息技术的发展,ISO/IEC 15408全面考虑了与信息安全技术有关的各种因素,采用了欧盟ITSEC中的“安全功能要求”和“安全保障要求”的模式来分类IT产品的安全要求,并采用安全组件方式来规范化表达IT产品不同类型和不同保障程度的安全要求。此外,ISO/IEC 15408还采用FC中的保护轮廓(PP)结构作为描述某类IT产品安全要求的文档结构,采用欧盟ITSEC的安全目标(ST)来描述IT厂商的具体IT产品安全方案。因此,相对于TCSEC,基于CC编制的PP/ST结构既分离了IT产品安全功能要求与安全保障要求,又为不同IT产品用户(消费者、提供商和评估机构)提供了描述评估对象安全要求(PP)及其安全方案(ST)的方法和规范。换句话说,在ISO/IEC 15408中,IT产品消费者和开发者可通过选择标准化的安全组件,并对组件元素进行操作来构建TCSEC中各种等级的安全要求,说明IT产品相关的安全概要规范(TSS)。
2004年1月,ISO/IEC JTC1/SC27发布了CC v2.2,同时针对CC第1部分附录中有关PP/ST的内容的更详细论述,也以ISO/IEC技术报告的形式进行了发布,即ISO/IEC TR 15446《信息安全技术 保护轮廓和安全目标的产生指南》。该报告给出PP/ST文档内容的概述、示例目录清单和目标用户最关心的其他内容解释,并陈述了PP和ST之间的关系,以及PP/ST的开发编写过程,为CC使用者编写PP/ST文档提供指导。2005年8月ISO/IEC JTC1/SC27发布基于CC v2.3的ISO/IEC 15408:2005。
为避免重复的评估活动,CC开发理事会试图对CC v2.2内容进行简化,他们于2005年7月发布了CC v3.0征求意见稿。CC v3.0在第二部分安全功能组件上做了最大可能的简化,例如第二部分的长度由CC v2.2的354页缩减为130页,将安全功能要求中安全审计、通信、密码支持等11个安全类合并为安全审计、通信、数据保护和隐私等6个安全类,将CC v2.2第2部分中67个安全功能族压缩为45个安全功能族。为了适应当时IT产品的安全评估需求,CC v3.0第3部分安全保障要求部分几乎重写了一遍。例如针对各个测评机构普遍遇到的组合IT产品测试需求,CC v3.0增加了安全保障类ACO,给出了包括组合TOE的基本原理、开发证据、组件之间的依赖性、基础TOE测试和组合脆弱性测试等保障要求。CC v3.0期望能够比较合理地判断组合IT产品的安全性,最大可能地降低评估活动的重复劳动。另外针对IT厂商和测评机构对开发保障类(ADV)反映的最为激烈的问题,CC v3.0拉开了不同评估保障级别(EAL)之间对ADV要求的差距,增加了对IT产品安全架构进行描述的保障要求,删除了一些在安全评估过程中很难实现或工作量不合理的安全保障要求。再如针对CC v2.1X中的配置管理/交付和运行/指南类文件/生命周期支持(ACM/ADO/ADG/ALC)4个保障类保障要求之间的界限不明,在CC v3.0中整合成了两个保障类:ALC类和ADG类。前者侧重于发生在开发场所的有关开发过程的保障要求,后者则侧重于发生在用户场所的运行操作保障要求。但CC v3.0因多种原因最终并没有提交至ISO/IEC JTC1/SC27的标准化过程,保障部分中的大部分建议修改内容并入了同年发布的CC v2.3中,还有一些内容是在CC v3.1中体现的。
在综合了2005年的CC v2.3和2006年的CC v3.0的基础上,CC v3.1 r1在2006年9月发布。CC v3.1 r1综合了CC v2.3第2部分安全功能组件和CC v3.0第3部分安全保障组件要求的优点,主要变化是将CC v2.3第2部分中难以评估的安全功能要求放到第3部分安全保障要求中,对第2部分的安全保障(EAL)4~6级的ADV_FSP、ADV_TDS、ATE_DPT.2、ATE_IND和ALC保障要求进行了相应的修订。
2007年9月,在第八届国际CC技术大会(ICCC)上,来自全球各地的信息安全专家针对CC v3.1 r1的内容发表自己的看法和意见,会后不久发布了CC v3.1 r2修订稿。2009年9月,CC v3.1官方发布了第3次修订版,其中很多生效的变更来自于最终用户、开发者、评估者和其他专家小组的反馈,这些来自实践用户单位的反馈建议说明CC v3.1已经在信息技术安全评估领域发挥了相当重要的作用。
作为对CC v2.3版的一次较大变更,CC v3.1的主要目标是:删除冗余的评估活动;减少或删除那些对IT产品和系统提供最终安全保障贡献较小的评估活动;明确CC术语,将评估对象仅限于IT产品,以减少对TOE的误解;支持组合IT产品的安全评估和认证;增加对可兼容的组合产品的安全评估方法。更具体地说,CC v3.1的主要优点有以下几点。
(1)安全要求更加明确和清晰:CC v3.1在内容上有了较大的调整,使用的术语比较统一,且都给出了明确的定义。CC第1部分中术语和定义,包括CC中一般的术语和定义、开发类(ADV)、指南类(AGD)、生命周期支持类(ALC)、脆弱性评定类(AVA)和组合保障类(ACO)相关的术语和定义共6个方面。这样,在使用中用户对任何的CC术语都不会出现分歧和模棱两可的情况。
(2)结构合理,重点突出,易于理解:为了提高CC的实用性和IT安全评估的工作效率,对第3部分做了较大的调整,不仅从结构上对ACM/ADO/AGD/ALC/ADV/AVA(配置管理/交付和运行/指导性文档/生命周期支持/开发/脆弱性评定)6个类及其组件进行了调整,而且对其内容也做了很大的更新,删除了在评估过程中多次重复的相似的过程,删除了那些对IT产品提供最终安全保障贡献较小的一些活动,这样能让TOE开发者或评估者把更多的精力放在对安全保障影响较大的一些问题上。另外,为了便于CC读者的阅读和理解,新版本对一些晦涩难懂或难以区分的概念进行了简单化。例如,AGD类中将以前的“管理员指南”和“用户指南”统一为“操作用户指南”,这样做能使TOE评估者易于理解IT产品安全架构和安全功能。
(3)支持组合产品保障要求评估:为了适应新一代IT产品的安全评估需求,CC v3.1增加了“组合保障包”的概念(即ACO类),以支持对可兼容的组合IT产品的安全评估认证,这一点对于以下两种情形非常的重要,一种是IT产品在过去某个时间已经通过了评估,现在需要重新评估;另一种是IT产品或IT子系统的部分已经通过了评估,现在需要对组合IT产品进行整体评估。新版本不仅使以上这两种情形的安全评估认证效果得到了保证,而且使得进行这种测评是有据可依的,同时有效地提高了测评认证工作效率。
2008年,CC v3.1第2部分和第3部分都被ISO接受为ISO/IEC 15408-2:2008、ISO/IEC 15408-3:2008进行了发布,CC v3.1第1部分在2009年被ISO接受为ISO/IEC 15408-1:2009。2012年和2017年,CCEB又分别发布了CC v3.1 r4和CC v3.1 r5。
另一方面,围绕2014发布的新版CCRA协定文件,CC开发理事会(CCDB)在2015年提出了编修新版CC的建议,并在ISO/IEC JTC1/SC27层面得到了响应。自2016年建立研究项目以来,在CC v3.1 r4的基础上,新版ISO/IEC 15408标准(编辑组内部称之为CC v4.0)的编修已进入CD1(第一个委员会草案)阶段。与现有的CC v3.1版本相比,新版ISO/IEC 15408在评估概念及评估方法等方面均进行了翻新,与当前的CC应用框架有了明显的变化,以便支持合作性保护轮廓(cPP)和模块化保护轮廓等测评观念,推进按新版CCRA文件进行测评和互认的工作(读者可参考1.4.2节的内容了解更多)。
2.ISO/IEC 18045(CEM)的制定情况
与CC开发工作并发进行的是CC评估方法的开发工作,由CC评估方法编辑理事会(CEMEB)负责,其目的是制定一套通用准则评估方法(CEM),使得不同的测评机构能尽可能地采用统一的测试和评估方法,实现测评过程的可重复性和客观性。CEM的开发和修订进程可谓伴随CC而前进,具体地说,CEM的制定情况如下。
(1)CEM-97/017(1997年11月):信息技术安全评估通用方法,第1部分为引言和通用模型,定义了评估基本原则,并且描述了TOE发起方、开发者、评估者和国际评估组织的角色,以及通用准则评估的一般模型。
(2)CEM-99/0.45(1999年8月):信息技术安全评估通用方法,第2部分为评估方法,主要讲述评估的一般任务、PP评估、ST评估以及TOE保障级别EAL 1~EAL 4级的安全评估内容及证据。第2部分详细说明了这些评估内容相关的评估者任务、子任务、活动、子活动、行为和工作单元的评估方法,这些评估内容都可映射到CC第3部分中的保障类、族和组件。
(3)CEM-2001/0015(2002年2月):信息技术安全评估通用方法,第2部分为评估方法,增加了对缺陷修复(ALC_FLR)组件安全评估的附录,提供了缺陷修复(ALC_FLR)组件的评估指南。
随着CEM日趋成熟,CC执行理事会在2004年1月将上述3份文档进行整合,形成了与CC v2.1配套的CEM v1.2《信息技术 安全技术IT安全性评估方法》。2005年8月CEM采用与CC v2.3相同的版本号与其一起发布,并作为ISO/IEC标准ISO/IEC 18045:2005《信息技术 安全技术IT安全评估方法》与CEM v2.3一起发布。从此以后,CEM内容也跟随CC内容一起调整发布。目前CEM最新版本是CCEB在2017年5月发布的CEM v3.1 r5。
3.CC/CEM的技术优点
由前文可知,CC/CEM是在早期多种信息技术安全评估相关标准(如TCSEC、ITSEC、CTCPEC、FC等)的基础上开发和不断完善的,相比之下CC/CEM的优势体现在其安全要求表达结构的开放性、表达方式的通用性、表达结构的内在逻辑完备性以及标准的实用性这几个方面,这些特点是CC/CEM不断扩大应用范围、取得应用成效的主要原因。由于这些特点对树立读者理解和应用CC/CEM的信心有直观重要的影响,我们不妨更细致地逐条分解。不过,由于CC/CEM的技术内容将在后续章节逐渐铺开,读者可暂时略读,待掌握后续章节的内容后,再返回理解以下优点。
(1)安全要求表达结构的开放性:CC推行标准化的安全组件描述方法及开放的组件元素操作,这使得在通过PP/ST描述IT产品安全要求时选择安全组件或对安全组件元素进一步细化和扩展,使之更适合信息技术和信息安全技术的发展要求。
(2)安全要求表达方式的通用性:CC推行基于“类、族、组件和元素”的安全要求通用表达方式,这使得IT产品的消费者、开发者、评估者和认证者可以采用同样的标准技术语言来描述和理解IT产品的安全功能要求和评估保障要求,有助于实现测评结果的国际互认。
(3)表达结构的内在逻辑完备性:当采取了合适的环境安全保障措施时,IT产品所实现的安全功能应有助于解决其面临的所有安全问题,在逻辑层面上实现威胁抵抗的完备性。在CC中,这种完备性的分析具体体现在PP/ST文档的编制过程中,使用PP/ST描述IT产品的安全要求时要求编制人员首先明确TOE类型、基本功能和安全功能、安全边界等,在此基础上定义IT产品面临的风险,明确TOE的安全目的,再导出其安全功能要求和安全保障要求。在编制PP/ST时,CC要求待评估对象所实现的安全功能要求和保障要求必须满足IT产品期望达到的安全目的,同时后者可以抵抗已知的各种风险(以安全威胁的形式来体现),因此可以保护预期使用环境中IT产品的各种资产。这种方法有助于理解IT产品安全功能和安全保障要求的目的和必要性,且当使用了合适的组织安全策略时,所有已知威胁都能被抵抗。
(4)CC的实用性和可操作性:CC的实用性具体体现在面向应用的PP/ST的编制上。PP的编制,有助于为相同类型的IT产品规范一套通用的安全要求,为同类型产品的开发提供统一的指导,从而提高安全保护的完备性和有效性;而ST在PP的基础上,通过细化安全要求,有利于体现类似IT产品在不同品牌和不同版本上的安全特点,这些特点便于将CC的安全要求具体应用到IT产品的开发、生产、测试、评估和信息系统的集成、运行、评估和管理中,并为IT产品选型工作规划统一的比较平台。
4.GB/T 18336及相关标准的制定情况
在CC编辑委员会与ISO/IEC JTC1/SC27 WG3工作组合作前,国内的学者就跟踪区域性信息技术安全评估标准的研制工作。在CC成为ISO/IEC标准后,由中国信息安全测评中心牵头,与上海交通大学、中国科学院等机构合作对ISO/IEC 15408:1999标准进行了翻译和转标处理,在2001年完成了等同采用ISO/IEC 15408:1999的国家推荐标准GB/T 18336—2001《信息技术 安全技术 信息技术安全评估准则》,包含以下3个部分。
(1)GB/T 18336.1(ISO/IEC 15408-1):信息技术 安全技术 信息技术安全评估准则—第1部分:简介和一般模型。
(2)GB/T 18336.2(ISO/IEC 15408-2):信息技术 安全技术 信息技术安全评估准则—第2部分:安全功能组件。
(3)GB/T 18336.3(ISO/IEC 15408-3):信息技术 安全技术 信息技术安全评估准则—第3部分:安全保障组件。
为推动GB/T 18336在国内的应用,我国在2006年将ISO/IEC TR 15446:2004技术报告转化为国家指导性技术文件GB/Z 20283 《信息技术 安全技术 保护轮廓和安全目标产生指南》。参照这个指南,信安标委也编制了多种IT产品安全技术要求(即保护轮廓),并结合我国IT产品的分级测评业务,指导IT厂商编写了他们相关IT产品的安全目标等安全评估文档。
根据ISO/IEC 15408和ISO/IEC 18045的发展情况,信安标委也分别于2007年和2012年先后两次组织相关单位对GB/T 18336—2001标准进行如下修订。
(1)依据ISO/IEC 15408:2005的标准修订:2007年,中国信息安全测评中心牵头依据ISO/IEC 18045:2005对GB/T 18336标准进行修订工作。但由于ISO/IEC 15408:2005和ISO/IEC 18045:2005对应于CC v2.3/CEM v2.3,且在GB/T 18336—2008修订期间,CC v3.0和CC v3.1 r1分别于2006年和2007年发布,所以作为过渡性国家推荐标准,GB/T 18336—2008仍旧依照CC v2.3进行编译,而未对应CC v3.1,因此该修订未形成报批稿就被终止。
(2)依据ISO/IEC 15408:2008/2009的标准修订:由于缺少与最新ISO/IEC 15408对应的国家标准版本,2012年中国信息安全测评中心牵头负责对国家标准GB/T 18336进行第三次修订。2015年,根据ISO/IEC 15408:2008/2009标准修订的国家标准GB/T 18336—2015发布实施,该标准与国际在用的ISO/IEC 15408对应,将在我国各行业的IT产品安全测评工作中继续发挥着基础性的与国际信息技术安全评估接轨的价值。
近二十年来,我国基于GB/T 18336开发了一系列配套标准,包括一些解释性的规范以及针对代表性的产品类型开发的安全技术要求和测试方法相关的指导文件,这些标准、规范和指导文件有助于GB/T 18336目标用户在基础性标准之上开展IT产品的安全设计、开发和评估工作。表1.4对已发布的部分GB/T 18336相关标准进行了总结。
表1.4 我国基于CC的安全评估相关标准