1.4 通用评估准则应用框架
由于前文提到的CC/CEM的技术优点,应用CC/CEM进行安全评估能给IT产品消费者和开发者带来实质性的好处。在基于CC的测评和认证框架中,IT产品通过独立的第三方测试实验室[通常称为CC测试实验室(CCTL)]的严格测评,不仅可让IT产品开发者持续改进其产品的设计和实现安全,提升IT产品开发质量,还给IT产品消费者带来了关于IT产品安全性的信心,让用户相信他们采购的IT产品满足相关的安全标准和期望的安全需求;在此基础上,通过对各种IT产品安全性的广泛认可,不同产品的组合应用安全也可以得到保证。更具体地说,国际互认的IT安全评估准则可用于以下几个方面。
(1)统一定义用户对IT产品的安全要求:IT产品消费者可依据CC的安全功能和安全保障类、族、组件、元素等标准化安全技术术语,通过规范化的保护轮廓(PP)结构来描述他们所需IT产品的安全要求,并依此更明确地实施IT产品采购、IT系统安全集成和安全控制措施。
(2)规范化IT厂商的产品安全方案描述:IT产品开发商依据CC基本概念,针对依据的PP中规定的IT产品安全要求,通过编写规范化的安全目标(ST)文档来论述他们提供的IT产品安全技术架构及具体解决安全解决方案,在此基础上编写并提供更多的评估准备证据给CC测试实验室,以便其可以有效地开展测评工作,输出标准化的测评技术报告。
(3)安全评估结果的互认:CC测评体系中的认证机构根据测评机构提交的有效测评技术报告,可以颁布IT产品的CC认证证书。具体地说,依据ST文档、测评技术报告和认证证书,IT产品用户可以判断产品的安全性是否满足其安全要求,从而决定他们的产品采购和上线使用程序。从对IT产品应用市场的影响来说,CC测评认证框架对CC认证证书在一定范围内的互认提供了保障,对国际社会管控IT产品在全球应用领域的供应链安全性创造了条件。
为了更好地展示CC的应用框架和目标,下面将对上述描述中所涉及的有关CC用户、CC互认协议(CCRA)、国家评估体制等内容进行更详细的论述。
1.4.1 CC用户和职责
CC用户可从标准的读者和标准使用者所处的组织机构背景这两个不同的角度来划分,这种划分方法有助于理解CC的应用框架。为此,本书将CC用户分为CC的读者(或一般用户)和CC应用机构这两类,他们之间有一定的映射关系,其详细角色和职责如表1.5所示。下面从两个不同角度来谈CC用户应用CC/CEM的角色和职责。
表1.5 CC/CEM用户的角色和职责
1.CC读者群体
通用评估准则的读者一般包括以下群体。
(1)消费者:提出某类IT产品的安全要求。
(2)开发者:描述某个具体IT产品的安全能力,给出其安全概要规范。
(3)评估者:度量IT产品安全要求描述或安全方案的置信程度。
(4)认证监管者:按照国家评估体制对认证产品和认证过程进行管理。
消费者是指对获得一个满足他们具体安全需求的IT产品安全方案感兴趣的那些组织和个人。一般来讲,消费者使用CC规定的保护轮廓(PP)结构和CC定义的安全组件语言来表达他们所需IT产品的安全要求(当然更多情况下安全要求是由IT产品客户、开发者、评估者等一起来讨论得到的),即通过PP来声明他们想采购IT产品的安全功能和安全保障要求;可以用CC测试实验室的评估结果来比较不同的评估对象安全功能(TSF)或安全保障程度,以决定IT产品是否满足他们的安全要求。PP文档被用作与潜在开发者交流,通过这种方式传递客户需求,以及关于一个IT产品将怎样被TOE评估者适用的信息。当然客户可以在PP里通过扩展组件形式提出他们对IT产品在安全方面的一些特殊要求。
开发者是设计、构建IT产品的组织和个人,同时为方便论述售卖IT产品的组织和个人也包含在内。CC为开发者在确定其IT产品所要满足的安全要求方面提供支持。因此,开发者以一个与实现相关的安全方案的安全目标(ST)文档的方式来响应客户规定的安全需求(PP),并且开发者还通过ST的评估对象概要规范(TSS)来论述其所依据的PP中的所有需求都已经被满足。CC/CEM为开发者准备评估证据和协助对其IT产品的评估提供支持,开发人员可以通过其准备的辅助评估证据来证实IT产品的安全功能满足了特定的安全要求。当然PP中提出的安全功能要求可被开发者实现在其IT产品中,这可促进IT产品开发者的安全技术进步。最后CC/CEM中的保障要求及其评估方法可以帮助开发者规范IT产品研制、开发、生产、集成等过程,并提高其安全管理能力。
评估者通过使用CC/CEM执行PP、ST和TOE的独立评估,尤其使用CEM中描述的TOE评估活动对IT产品进行安全评估。基于CEM规范化的评估体系,评估者可以有效地、科学地判断IT产品在安全方面与ST中描述的TOE安全要求的一致性,以及TOE样品实现的正确性和有效性,这就使得评估结果具有可重复性和客观性。评估的结果会被正式归档并分发给合适的组织机构与个体。因此,用户不必只依赖开发者的IT产品安全功能描述,他们可参照独立评估机构的评估结果来分析比较他们关心的IT产品。
认证监管者主要是对评估者提交的IT产品测评文档和评估证据编制各类认证文档。IT产品认证所需文档会根据所申请的评估保障级别的不同而略有差异。但是一些常见的评估证据文档,如ST、操作指南、功能规范、安全架构等评估过程中的基本文档对所有保障级别的安全评估都是必需的。
图1.3给出了CC的4类读者在CC应用中的角色及其任务。该图做了一定程度的简化,如实际情况下,PP通常由所有读者群体的代表联合开发。
图1.3 CC读者及其在CC/CEM安全评估中的任务
2.CC应用群体
CC互认协定(CCRA)文件按照角色和职责定义了下列标准应用群体,见表1.5。
(1)客户或终端用户:指定某类IT产品安全功能和安全保障要求。
(2)IT产品开发者或供应商:编制某个IT产品的ST和开发符合ST的TOE。
(3)TOE提供商(评估发起人):启动某个PP、ST或TOE的安全评估,准备TOE评估辅助证据材料。
(4)CC测试实验室(CCTL):完成TOE安全评估,提交评估技术报告(ETR)。
(5)国家认证机构:颁发关于CC标准实践和评估过程的指南,监控评估结果以审查其可重复性和与CC/CEM的一致性。
(6)CC解释管理理事会(CCIMB):维护CC/CEM的当前版本并且协调与ISO/IEC JTC1/SC27 WG3标准之间的一致性,监督国家评估机构,并响应CC用户的各种解释要求(RI),以及CCRA执行情况。
客户或终端用户相当于CC读者中的IT产品消费者,他们在PP中指定某类IT产品安全功能和安全保障要求,告知IT产品开发者将如何评估他们开发的TOE安全能力。这样,客户或终端用户就可使用PP、ST和TOE评估结果来比较不同开发者提供的IT产品,决定哪一个最符合他们的具体要求,并且在他们特定的生产环境中工作效果最好。
IT产品供应商相当于CC里的开发者角色。他们响应客户的需求,开发ST和符合ST的TOE。另外,他们还应按照CEM提供PP/ST里指明的所有安全功能和保障需求已经被他们的ST和TOE满足的评估证据。这些凭据和相关的TOE开发文档将被交付给评估发起人用于联系相关的CC测试实验室进行安全评估。
评估发起人是由CCRA引入的一个新角色。评估发起人找到一个恰当的CC测试实验室并且与实验室签订合同以开展IT产品的评估。评估发起人负责交付PP、ST或TOE和相关文档给CC测试实验室,以及协调所有预评估活动。评估发起人可能代表着客户或IT产品供应商或是一个中立的第三方,例如一个系统集成者。
CCRA将评估者角色分为3个层次:CC测试实验室、国家评估机构和CC解释管理理事会。CC测试实验室必须符合认证认可标准并且服从常规审计和监督要求,以确保他们的测评服务符合CC/CEM。CC测试实验室从评估发起人接收PP、ST或TOE以及相关的文档。他们根据CC/CEM和PP/ST中指明的安全保障级别引导针对PP、ST或TOE的正式评估。一旦在一个评估过程中发现了缺少的、模糊的或不正确的信息,CC测试实验室会上交一个观察报告(OR)给评估发起人要求说明原因。问题及其回复结果将被归档在评估技术报告(ETR)中,ETR将会和IT产品被认证(或未被认证)的建议书一起被发送到国家评估机构。
国家认证机构给CC测试实验室颁发关于标准实践和安全评估过程的指南,监控IT产品安全评估结果以审查其可重复性和与CC/CEM的一致性。如果国家认证机构同意CC测试实验室的建议,将颁发官方CC证书。另外,国家认证机构还将维护通过评估的IT产品列表,并维护相关产品安全要求(注册PP)。图1.4说明了CC/CEM主要应用机构之间的交互。
图1.4 CC应用机构之间的交互流程
每个CCRA成员国都有一个国家认证机构。CCRA认可的国家认证机构可能是以下两种形式的一种——证书使用者或证书签发者。证书使用者认可由其他国家认证机构签发的CC证书,但其本身并不能签发IT产品的认证证书。CCRA同意一个国家首先成为一个证书使用者,当这个国家建立了符合CCRA要求的国家评估体制,并且在本国建立并授权了一些CC测试实验室之后,这个国家认证机构才可以转换为一个证书签发者。CCIMB由CCRA参与者的国家代表人组成,每个CCRA参与者有一位委员。CCIMB对促进在所有CC测试实验室和国家认证机构之间的CC/CEM连续解释和应用负最终责任。因此,CCIMB监督国家认证机构,并响应CC用户的各种解释要求(RI)。最后,CCIMB维护CC/CEM的当前版本并且协调ISO/IEC JTC1/SC27 WG3以及CCRA参与者维护CC/CEM新版本和相关标准。
1.4.2 CC互认协定
为了维护统一的信息技术安全评估标准,推行国际范围的IT产品安全评估结果的互认,CC及其CCRA互认成员的组织方式和其他许多国际技术性标准不同,带有较浓厚的政治气息,这和信息安全是国家安全的重要组成因素的事实相契合。借鉴政治同盟的一般做法,签署CCRA互认协定是黏合或聚集与CC相关的各个国家利益的基本保证。由CC标准及其ISO/IEC 15408标准的发展历程可以看到,合作编写CC的各参与方在1998年签订了第一份CC互认协定(CCRA),协定第一条就规定了参与成员应为代表国家政府的机关或机构,目前CCRA成员代表均为各国信息安全主管机关。
截至2019年10月,包括美国、英国、法国、德国等国在内,全球已有30多个国家共同签署了CCRA(参见附录A)。1998年CCRA协定签订时只有加拿大、法国、德国、英国和美国,新西兰和澳大利亚于1999年加入,2000年芬兰、希腊、以色列、意大利、荷兰、挪威和西班牙也成为CCRA成员。CCRA成员国的性质有两种,一种称为证书发行国,除了接受CC评估结果互认之外还拥有自己的信息技术安全评估认证体系,能够进行IT产品认证证书的颁发,此类国家目前共有17个,分别是澳大利亚、加拿大、法国、德国、印度、意大利、日本、马来西亚、荷兰、新西兰、挪威、韩国、新加坡、西班牙、瑞典、土耳其和美国;一种称为证书消费国,只接受和认可来自上述国家颁发的认证结果,这14个国家分别是奥地利、捷克、丹麦、埃塞俄比亚、芬兰、希腊、匈牙利、印度尼西亚、以色列、巴基斯坦、波兰、卡塔尔、斯洛伐克和英国。值得注意的是CCRA成员国往往会根据自身的信息安全认证和检测需要而调整其在CCRA的角色或状态,例如英国在作了近20年的CCRA证书签发国后于2019年10月转换为证书消费国。
制定CCRA互认协定的主要目的如下。
(1)确保各参与成员对IT产品能够按照高度一致的标准进行评估,并且信任经过评估的IT产品和PP/ST。
(2)消除不同国家的IT产品重复评估认证,不断提高IT产品和PP/ST评估认证过程的效率和成本效益。
(3)对于已经通过CC认证的IT产品和PP/ST,根据该协定,可以不通过进一步评估,即可在CCRA参与国被应用,从而提高了IT产品认证的效率。
(4)该协定通过对执行IT产品认证的认证机构进行严格要求,使各认证机构达到高度统一的认证标准,来建立一个可信的IT产品安全评估基础平台。
CCRA组织结构如图1.5所示,其高层管理机构是管理委员会(简称为CCMC),所有CCRA的签约国都在CCMC中有自己的代表,在对CC相关的事务进行表决时,每个国家有一票的投票权。CCMC的主要任务是对成员国的管理,如新成员的申请和对申请者的资格审查,以及对CC互认协定本身条款的扩充和执行。CCMC设有一个主席职位,由成员国代表轮流担任。CCMC下设置了执行委员会(简称为CCES),处理成员国的日常事务和提供技术建议指导,其中CCRA的CC/CEM文档的更新和发展是由CCES下的CC开发理事会(CCDB)负责。CCDB负责制订工作计划来促进CC和CEM不断发展,同时保证CCRA各成员国在CC和CEM使用的方法体系上达成一致。
图1.5 CCRA组织结构
为了达成这一目标,CCDB下设CC维护理事会(简称CCMB)和若干个工作组(WG)。CCMB的主要任务是处理各国根据在使用CC和CEM中发现的需求而提出修改建议。
在2013年的CC国际技术会议(ICCC 2013)上,在CCRA各参与方同意下,决定由CCMC和CCDB牵头成立各种安全技术相关的国际技术社区(iTC),以针对各种类型的IT产品建立多国互认的安全要求,目的是降低IT产品终端用户和所有者的安全风险,提高IT产品的使用价值。这些互认的安全要求将以CC合作性保护轮廓(cPP)的形式来体现。因此,iTC的一个主要目标是创建与各种IT产品对应的cPP和安全评估相关的支持文件。当前各个iTC的技术活动在CC用户论坛(https://www.commoncriteriaportal.org/CCUF)这个平台上开展,来自全世界的技术专家(无论是否归属CCRA成员国)都可及时参与和分享IT产品安全设计和测评方面的经验,并建立和维护相应的cPP,以应对未来信息技术发展所带来的各种威胁(见附录B对iTC的建立原则和发展状况的更详细论述。)
各个iTC都由一组技术专家组成,包括CCRA参与方、CC认证机构、安全评估机构、IT产品开发者和用户,他们做如下工作。
(1)以一种促进公平竞争的方式工作。
(2)在某些特定技术领域合作,以共同完成cPP编制。
(3)进一步建立关于cPP所必需的CC和CEM应用解释的支持文件。
2014年7月,发布修订的CCRA协定文件,其工作模式为从基础协议层面支持iTC。在新版的CCRA文件中,TOE安全评估结果互认要求发生了以下变化。
(1)若评估是依据cPP进行的,在CCRA所有成员国内最高可互认至EAL 4级,同时需要在安全保障包中加上ALC_FLR族组件。
(2)若评估是依据PP进行的,在CCRA所有成员国内最高互认至EAL 2级。
需要指出的是,我国虽然未加入CCRA,但中国信息安全测评中心依据CC开展了十多年的安全评估工作,自2015年以来参与了多个iTC的技术活动,不仅在网络基础设备iTC等平台上发挥技术价值,还于2017年代表我国首次参与了CC最新版本的编辑工作,对促进我国理解、掌握和应用CC相关技术的发展有较大意义。
1.4.3 国家评估体制
IT产品安全评估需要通过TOE提供者和评估者合作,以共同确认被评估IT产品抵抗潜在安全风险的能力,其评估结论也是IT产品用户决定是否实施额外的安全控制(如操作规范、制度建设等)以进一步降低IT产品在未来应用中的安全风险的重要依据。IT产品安全评估前提是要有一套完整的评估体制,以确定国家级统一的安全评估准则、安全评估方法、评估结果认证机制等。在CC术语中,评估体制(Evaluation Scheme)定义如下:
“一种行政管理和监督管理框架,在此框架下评估授权机构在特定群体中应用通用评估准则。”
更具体地说,评估体制是国家评估机构建立的一组规章制度,包括执行信息安全技术测试所需的规程和方法。因此CC框架下的国家评估体制是由CCRA成员国制定的面向IT产品安全评估所遵循的原则/规则,用于监控TOE评估过程中参与者的评估质量,并管理安全评估技术工具和评估者必须遵循的一系列规程/规则。按照CCRA文件规定,CC要求CCRA证书签发国必须定义一个国家评估体制,而对于使用CC认证的证书消费国没有要求。国家评估机构发布的评估体制建立在CC和CEM这两个标准基础上,通过列举如何进行和管理评估过程的细节,形成了一套IT产品安全评估的过程规范与评估规则,使得IT产品安全评估结果具备客观性、可重现性和更好的可比性。显然,国家评估体制相关的评估方法和过程可以在CEM的基础上增加要求,但不能减少。
实际上,国外从20世纪80年代就已开展IT产品和IT系统安全评估体制的建设。为了使读者更好地认识基于CC的评估体制,下面以美国建立的CC评估和认证制度(CCEVS)为例进行讨论,由于各国的评估体制存在较大的相似性,讨论的内容对于后续理解其他具体的评估体制将有所裨益。
在美国,评估体制是由国家信息安全保障合作组织(NIAP)负责管理的。具体而言,NIAP出版了如下6个与CC评估与认证体制(CCEVS)相关的文件。
(1)CCEVS文件1:操作的组织、管理和概念,在1999年5月发布。该文档提供了一个对CCEVS的目的和行为、NIAP、国家实验室自愿认证程序(NVLAP)、CCTL和评估发起者的角色和责任的总体概述。
(2)CCEVS文件2:验证标准操作程序,在2000年5月发布。该文档提供了对NIAP的角色、责任、组织、管理和操作的详细描述。
(3)CCEVS文件3:安全评估监管者指导手册,在2002年2月发布。该文档提供了对CCEVS确认和验证过程的详细讨论和NIAP、NVLAP和CCTL中的相关角色和责任;提供了对CEM工作单元和格式的指导手册和为评估记录指定的格式规范。
(4)CCEVS文件4:CCEVS认可的CCTL指导手册,在2001年3月发布。该文档详细介绍了成为CCTL的过程,CCTL评估前、评估时和评估后的责任,同时还提供了一系列模板,如CCEVS评估工作计划模板和为NIAP、CCTL和评估发起者的启动会议提出的评估日程计划模板。
(5)CCEVS文件5:IT产品安全评估发起者指导手册,在2000年8月发布。该文档详细介绍了在评估前、评估时和评估后评估发起者的责任。
(6)CCEVS文件6:认证维护程序(CMP),在2000年8月发布。该文档就如何在运行和维护阶段维持CC认证和相关评估保障级(EAL),为TOE评估发起者、开发者和评估者提供了IT产品认证维护的指导手册。
1.评估准备任务
按照NIAP的CCEVS,IT产品的评估和认证一般分为准备、执行和总结3个阶段。表1.6总结了CCEVS准备阶段的任务及相关的输入和输出。评估发起者通过准备PP、ST和TOE安全评估的需求(如招标要求、市场宣传需要),启动IT产品安全评估的初始化准备工作。
表1.6 评估准备阶段(CCEVS)
在与选定的CC测试实验室签订合同后,评估发起者将PP、ST和TOE,以及相关辅助评估证据一同递交给CC测试实验室。CC测试实验室审查相关的评估工件后,起草一个评估后的可交付列表和一个评估工作计划。评估工作计划应遵循CEM要求,列出了CC测试实验室执行的活动、子活动、工作单元、任务和子任务。可交付列表给出了CC测试实验室执行评估工作计划所需的从TOE评估发起者那里应该得到的所有评估输入材料。该列表应指出评估发起者提供的CC证据指标。评估工作计划日程重点说明评估任务间的依赖关系及其主要里程碑。表1.6中第5个任务是CC测试实验室提交3个输出报告给国家认证机构(如NIAP),以便开展对CC测试实验室测评结果的认可工作。一旦认可,国家认证机构将正式接受TOE评估工作,按国家评估体制(如CCEVS)生成评估验证计划。验证计划描述了评估过程中NIAP监管者、主要监管者和CCEVS主管的角色。最后,召开CC测试实验室、NIAP和评估发起者的评估启动会议,签署接受PP、ST和TOE的协议,同时签署将评估展示在NIAP网站上的同意书。会议记录保存在由NIAP撰写的备忘录记录(MFR)中。
评估发起者接着货比三家,找到一个合适的CC测试实验室。各国家认证机构在它们的管辖区内维护认可的CC测试实验室列表。CC官方网站也列出了CCRA参与国认可的CC测试实验室列表。
2.评估执行任务
在国家认证机构授予CC测试实验室评估权限后,CC测试实验室在依据实验室程序、CEM和CCEVS要求的情况下开展对TOE的实际测试工作。表1.7总结了CCTL在评估执行阶段的任务及相关的输入和输出。如果有任何需要澄清的疑问或在评估过程中发现的问题,CC测试实验室会提交一个观察报告(OR)给国家评估机构(如NIAP)和TOE评估发起者。
表1.7 评估执行阶段(CCEVS)
作为CC测试实验室测试评估的一个并行活动,NIAP监管者将评估过程写成如表1.8所示的月度总结报告。该报告也指出了到目前为止随同评估过程及相关报告成果在技术上、管理上或日程上的思考。评估完成时,CC测试实验室将评估结果和观察报告、评估结论、TOE修改建议等写成相应的评估技术报告(ETR),同时将这些文档发给NIAP和评估发起者。CC测试实验室执行的各评估行为元素会得到一个裁决(通过、不确定或失败)。根据CEM,如果之前这些裁决中有一个失败,那么总的裁决也将失败。根据总的裁决,CC测试实验室将决定关于PP、ST或TOE的评估结果是否应该向国家认证机构作出认证推荐。国家认证机构总结ETR报告,以决定是否应将评估工作推进到下一阶段;这可能包括询问CC测试实验室或评估发起者一些与评估工作相关的问题。
表1.8 月度总结报告内容
3.评估总结任务
表1.9给出了CC评估和认证体制总结阶段的任务及相关的输入和输出。基于CC测试实验室的ETR,国家认证机构将生成一个验证报告(VR)草案,发送给CC测试实验室和评估发起者以进行评议。
表1.9 评估总结阶段(CCEVS)
表1.10展示了验证报告(VR)的内容。VR是将要公开的ETR的简化版。发布VR的目的是:①确认CC测试实验室的审核结果;②提供额外的背景信息以帮助潜在客户知情,并做出关于在他们的运行环境中是否适合使用该TOE的决定。VR由NIAP监管者、主监管者和CCEVS主管签字。同时,NIAP给CC测试实验室和评估发起者发布TOE认证结果,并在国家已评估产品列表(EPL)中进行登记和管理。注意CC认证和国家评估机构的VR没有任何法律地位。
表1.10 验证报告(VR)内容
CCEVS中明确说明:“CC认证和VR并不能代表任何实质的或程序性的CCRA成员的权利、债务、责任、授权、保证或认可。”
最后,NIAP和CC测试实验室应一起召开TOE评估和认证总结会议,对IT产品评估过程遇到的问题及其解决过程进行研讨,形式TOE评估总结报告。
由前文对评估体制的讨论,CC认证机构将在测评工作结束后颁发认证证书。表1.11和表1.12分别展示了美国国家评估体制颁发的PP和TOE的认证证书的基本内容。
表1.11 PP的认证证书相关内容(CCEVS)
表1.12 TOE的认证证书相关内容(CCEVS)