2.4 信息安全风险评估规范GB/T 20984
2.4.1 我国信息安全风险评估发展历程
我国的信息化建设起步较晚。2003年7月,国务院信息化工作办公室(以下简称国信办)委托国家信息中心牵头组建“信息安全风险评估课题组”,提出将信息安全风险评估工作作为提高我国信息安全保障水平的重要举措。课题组对我国信息安全风险评估工作现状进行了全面深入的了解,提出开展信息安全风险评估的对策和办法。先后完成了《信息安全风险评估调查报告》《信息安全风险评估研究报告》和《关于加强信息安全风险评估工作建议的报告》三份报告。
2004年1月,全国信息安全保障工作会议在北京召开。会议将信息安全风险评估列为我国信息安全保障体系建设要抓的五项基础性工作之一。2004年3月,国信办启动风险评估相关标准的制定工作。同年9月完成《信息安全风险评估指南》和《信息安全风险管理指南》两个国家标准草稿。
2005年2月,国信办启动信息安全风险评估试点工作,成立了风险评估试点工作领导小组、专家组和文件起草组。2005年7月,基本完成了《信息安全风险评估规范》标准草案。同年,在有关主管部门具体指导和支持下,由国家信息技术安全研究中心、中国信息安全测评中心等多家国家指定的专业检测机构承担,组织开展了信息安全风险评估试点工作,并取得了很好的效果。2005年9月,国信办在上海召开的总结大会上对试点工作的成绩给予高度评价。
2006年1月,国信办发布《关于开展信息安全风险评估工作的意见》。意见明确了信息安全风险评估工作的内容、原则、基本要求和有关安排,标志着我国信息安全领域一项基础性、全局性工作正式启动。
在前期一系列工作的基础上,2007年6月,国家标准化管理委员会颁布国家标准:GB/T 20984—2007《信息安全技术 信息安全风险评估规范》,为政府部门、金融机构等国家信息网络基础设施和重要信息系统提供信息安全风险评估指南。信息安全风险评估工作在全国范围内全面展开。
2017年6月1日,《中华人民共和国网络安全法》实施。其中第二章第十七条指出:“国家推进网络安全社会化服务体系建设,鼓励有关企业、机构开展网络安全认证、检测和风险评估等安全服务”。风险评估以法律的形式明确下来。
随着技术的发展和普及,GB/T 20984—2007已无法充分满足信息安全需求,无法全面评价信息安全风险。为了提出有针对性的抵御威胁的防护对策和整改措施,防范和化解信息安全风险,将风险控制在可接受的水平,2018年国家标准化管理委员会启动了对GB/T 20984—2007的修订。相较于2007版,GB/T 20984的修订版不仅包含了风险评估的基本概念、风险要素关系、风险分析原理、风险评估实施流程,还提出了基于业务、面向信息系统生命周期(规划、设计、实施、运行维护和废弃)的风险评估方法,分析了业务及支撑的信息系统所面临的威胁及其存在的脆弱性,全面评估安全事件造成的危害程度。
风险评估是风险管理的重要组成部分。我国在制定适合我国国情的风险评估规范的同时,也参考国际标准制定了一系列与风险管理相关的标准,表2-2列出了部分标准。
表2-2 我国关于风险管理的部分标准
2.4.2 GB/T 20984规范主要内容
2.4.2.1 风险评估框架
在GB/T 20984中,规定了风险评估的要素及其相关关系,如图2-12所示。
图2-12 风险评估各要素关系图
在图2-12中,风险评估的基本要素包括战略、业务、资产、威胁、脆弱性、安全措施和风险,并基于以上要素开展风险评估。
在对风险评估的7个要素进行分析时,应考虑这些要素的以下关系:
(1)组织的发展战略依赖业务实现,业务重要性与其在战略中所处的地位相关。
(2)业务的开展需要资产作为支撑,而资产会暴露出脆弱性。
(3)安全措施的实施要考虑需保障的业务,以及所应对的威胁。
(4)风险的分析与计算应综合考虑业务、资产、脆弱性、威胁和安全措施等基本因素。
在风险评估框架中,基于图2-12中所示的风险评估的各个要素,需要综合分析信息安全面临的风险,主要考虑两个方面:一是安全事件发生的可能性;二是安全事件发生后造成的损失。根据安全事件发生的可能性,以及安全事件发生后造成的损失,确定被评估对象面临的风险。
安全事件发生的可能性主要从以下四个方面考虑:
(1)依据业务种类、业务重要性及其业务所处内外部环境,结合威胁的来源、种类和动机,确定威胁的行为和能力。
(2)依据威胁的行为,综合考虑威胁发生的时机、频率、能力,确定威胁出现的可能性。
(3)对脆弱性与已实施的安全措施进行关联分析后确定脆弱性被利用的可能性。
(4)根据威胁出现的可能性及脆弱性被利用的可能性确定安全事件发生的可能性。
而安全事件发生后造成的损失主要从以下三个方面考虑:
(1)综合考虑业务在发展战略中所处的地位,确定业务重要性。
(2)根据资产在业务开展中的作用,结合业务重要性确定资产重要性。
(3)根据脆弱性的严重程度及其作用的资产重要性确定安全事件发生后对被评估对象造成的损失。
2.4.2.2 风险评估流程
前面提到了风险评估的七要素,即战略、业务、资产、威胁、脆弱性、安全措施和风险,介绍了风险分析的原理。在具体进行风险评估时,必须遵守恰当的评估流程,才能正确实现风险评估。因此,GB/T 20984给出了信息安全风险评估的实施流程,如图2-13所示。
图2-13 信息安全风险评估的实施流程
风险评估流程包括以下内容:
(1)评估准备;
(2)风险识别;
(3)风险分析;
(4)风险评价。
其中,评估准备阶段应包括以下内容:
(1)确定风险评估的目标;
(2)确定风险评估的对象、范围和边界;
(3)组建评估团队;
(4)开展前期调研;
(5)确定评估依据;
(6)制定评估方案。
组织应形成完整的风险评估实施方案,并获得组织最高管理者的支持和批准。
风险识别阶段应包括以下内容:
(1)发展战略和业务识别;
(2)资产识别;
(3)威胁识别;
(4)脆弱性识别;
(5)已有安全措施识别。
风险分析阶段应包括以下内容:
(1)风险分析;
(2)风险计算。
风险评价阶段根据风险分析阶段的分析与计算,得出被评估对象的风险等级。
风险沟通和评估过程文档管理贯穿于整个风险评估过程。风险评估工作是持续性的活动,当被评估对象的政策环境、外部威胁环境、业务目标、安全目标等发生变化时,应重新开展风险评估。
2.4.2.3 风险评估实施
根据前面的信息安全风险评估实施流程,风险评估实施包括以下六个过程。
1.风险评估准备
组织实施风险评估是一种战略性的考虑,其结果将受到组织战略、业务、业务流程、安全需求、系统规模和结构等方面的影响。因此,风险评估准备的工作包括:确定风险评估目标、组件评估团队、开展前期调研、确定评估依据、制定评估方案、获得最高管理者支持。
2.风险识别
风险识别的工作包括:发展战略和业务识别、资产识别、威胁识别、脆弱性识别、已有安全措施识别。
(1)发展战略识别是风险评估的重要环节,识别内容包括组织的属性及职能定位、发展目标、业务规划、竞争关系,发展战略识别时的数据应来自管理人员或者熟悉组织整体业务情况的人员。
(2)业务识别是风险评估的关键环节,识别内容包括业务的定位、业务关联性识别和业务完整性。
(3)资产识别包括资产识别内容和资产重要性等级赋值两个方面。
(4)威胁识别包括识别威胁的来源、种类、动机和频率,然后对威胁可能性等级进行赋值。
(5)脆弱性识别可从技术和管理两个方面进行审视,以资产为核心,依据国际或国家安全标准,或者行业规范、应用流程的安全要求,进行脆弱性识别,采用等级方式对已识别的脆弱性的可利用性和严重程度进行赋值。
(6)已有安全措施识别:以威胁为核心识别组织已有安全措施,在进行威胁识别的同时,评估人员应对已采取的安全措施进行识别。安全措施可以分为预防性安全措施和保护性安全措施两种。可通过比对分析方式、漏洞扫描、渗透测试等方式对脆弱性和已有安全措施进行关联分析。
3.风险分析和计算
风险分析和计算是在风险识别的基础上开展的。风险分析包括确定安全事件发生的可能性、确定安全事件发生后的损失、确定被评估对象面临的风险;风险计算指采取适当的方法与工具确定安全事件发生的可能性和损失。
4.风险评价
首先根据国家法律法规要求及行业环境建立风险评价准则,然后根据所采用的风险计算方法,得出资产的风险等级、业务的风险等级。
5.风险沟通
风险评估实施团队在风险评估过程中与内部相关方和外部相关方保持沟通,并对沟通内容予以记录。
6.风险评估文档记录
按照风险评估文档记录要求,记录风险评估过程产生的过程文档和结果文档。
2.4.2.4 风险评估的工作形式
1.检查评估
检查评估是指被评估对象上级管理部门组织的或国家有关职能部门开展的风险评估。
检查评估可依据GB/T 20984的要求,实施完整的风险评估过程。也可在自评估实施的基础上,对关键环节或重点内容实施抽样评估,包括但不限于以下内容:
● 自评估队伍及技术人员审查;
● 自评估方法的检查;
● 自评估过程控制与文档记录检查;
● 自评估资产列表审查;
● 自评估威胁列表审查;
● 自评估脆弱性列表审查;
● 现有安全措施有效性检查;
● 自评估结果审查与采取相应措施的跟踪检查;
● 自评估技术技能限制未完成项目的检查评估;
● 上级关注或要求的关键环节和重点内容的检查评估;
● 软硬件维护制度及实施管理的检查;
● 突发事件应对措施的检查。
检查评估也可委托风险评估服务技术支持方实施,但评估结果仅对检查评估的发起单位负责。由于检查评估代表了主管机关,涉及的评估对象也往往较多,因此,要对实施检查评估机构的资质进行严格管理。
2.自评估
自评估是指被评估对象的拥有、运营或使用单位发起的对本单位进行的风险评估。自评估应在GB/T 20984的指导下,结合被评估对象特定的安全要求实施。周期性进行的自评估可以在评估流程上适当简化,重点针对自上次评估后被评估对象发生变化后引入的新威胁,以及脆弱性的完整识别,以便于两次评估结果的对比。当被评估对象发生重大变更时,应依据GB/T 20984进行完整的评估。
自评估可由发起方实施或委托风险评估服务技术支持方实施。由发起方实施的评估可以降低实施的费用、提高相关人员的安全意识,但可能由于发起方缺乏风险评估的专业技能,其结果不够深入准确;同时,受到组织内部各种因素的影响,其评估结果的客观性易受影响。委托风险评估服务技术支持方实施的评估,过程比较规范、评估结果的客观性比较好,可信程度较高;但由于受到行业知识技能及业务知识的限制,导致对被评估对象的了解,尤其是在业务方面存在一定的局限。由于引入风险评估服务技术支持方本身就是一个风险因素,因此,对其背景与资质、评估过程与结果的保密要求等方面应进行控制。
此外,为保证风险评估的实施,被评估对象的相关方也应配合,以防止给其他方的使用带来困难或引入新的风险。
2.4.2.5 风险评估在被评估对象生命周期不同阶段的不同要求
风险评估应贯穿于被评估对象生命周期的各阶段。被评估对象生命周期各阶段中涉及的风险评估的原则和方法是一致的,但由于各阶段实施的内容、对象、安全需求不同,使得风险评估的对象、目的、要求等方面也有所不同。在规划设计阶段,通过风险评估以确定被评估对象的安全目标;在建设验收阶段,通过风险评估以确定被评估对象的安全目标达成与否;在运行维护阶段,要持续的实施风险评估以识别被评估对象面临的不断变化的风险和脆弱性,从而确定安全措施的有效性,确保安全目标得以实现。因此,每个阶段风险评估的具体实施应根据该阶段的特点有所侧重地进行。
1.规划阶段的风险评估
规划阶段进行风险评估的目的是,识别被评估对象的业务战略,以支撑被评估对象安全需求及安全战略等。规划阶段的评估应能够描述被评估对象建成后对现有业务模式的作用,包括技术、管理等方面,并根据其作用确定被评估对象建设应达到的安全目标。在本阶段评估中,资产、脆弱性不需要识别;威胁应根据未来应用对象、应用环境、业务状况、操作要求等方面进行分析。评估着重在以下六个方面:
(1)是否依据相关规则,建立了与战略相一致的安全规划,并得到最高管理者的认可;
(2)是否建立了与业务相契合的安全策略,并得到最高安全管理者的认可;
(3)系统规划中是否明确被评估对象开发的组织、业务变更的管理、开发优先级;
(4)系统规划中是否考虑被评估对象的威胁、环境,并制定总体的安全方针;
(5)系统规划中是否描述被评估对象预期使用的信息,包括预期的信息系统、资产的重要性、潜在的价值、可能的使用限制、对业务的支持程度等;
(6)系统规划中是否描述所有与被评估对象安全相关的运行环境,包括物理和人员的安全配置,以及明确相关的法规、组织安全策略、专门技术和知识等。
规划阶段的评估结果应体现在被评估对象整体规划报告或项目建议书中。
2.设计阶段的风险评估
设计阶段的风险评估需要根据规划阶段所明确的运行环境、业务重要性、资产重要性,提出安全功能需求设计阶段的风险评估结果应对设计方案中所提供的安全功能符合性进行判断,作为采购过程风险控制的依据。
在本阶段评估中,应详细评估设计方案中对系统面临威胁的描述,将被评估对象使用的具体设备、软件等资产及其安全功能需求列在表中。对设计方案的评估着重在以下方面:
(1)设计方案是否符合被评估对象建设规划,并得到最高管理者的认可;
(2)设计方案是否对被评估对象建设后面临的威胁进行了分析,重点分析来自物理环境和自然的威胁,以及由于内部破坏、外部入侵等造成的威胁;
(3)设计方案中的安全需求是否符合规划阶段的安全目标,并基于对威胁的分析制定被评估对象的总体安全策略;
(4)设计方案是否采取了一定的手段来应对可能的故障;
(5)设计方案是否对设计原型中的技术实现,以及人员、组织管理等方面的脆弱性进行评估,包括设计过程中的管理脆弱性和技术平台固有的脆弱性;
(6)设计方案是否考虑随着其他系统接入而可能产生的风险;
(7)系统性能是否满足用户需求,并考虑到峰值的影响,是否在技术上考虑了满足系统性能要求的方法;
(8)应用系统(含数据库)是否根据业务需要进行了安全设计;
(9)设计方案是否根据开发的规模、时间及系统的特点选择开发方法,并根据设计开发计划及用户需求,对系统涉及的软件、硬件与网络进行分析和选型;
(10)设计活动中所采用的安全控制措施、安全技术保障手段对风险的影响。在安全需求变更和设计变更后,也需要重复这项评估。
设计阶段的评估可以以安全建设方案评审的方式进行,判定方案所提供的安全功能与信息技术安全技术标准的符合性。评估结果应体现在被评估对象需求分析报告或建设实施方案中。
3.实施阶段的风险评估
实施阶段的风险评估,目的是根据安全需求和运行环境对系统开发、实施过程进行风险识别,并对建成后的安全功能进行验证。根据设计阶段分析的威胁和制定的安全措施,在实施及验收时进行质量控制。
基于设计阶段的资产列表、安全措施,实施阶段应对规划阶段的安全威胁进行进一步细分,同时评估安全措施的实现程度,从而确定安全措施能否抵御现有威胁、脆弱性的影响。实施阶段风险评估主要对业务及其相关信息系统的开发、技术与产品获取,系统交付实施两个过程进行评估。开发、技术与产品获取过程的评估要点如下:
(1)法律、政策、适用标准和指导方针:直接或间接影响被评估对象安全需求的特定法律;影响被评估对象安全需求、产品选择的政府政策、国际或国家标准;
(2)被评估对象的功能需要:安全需求是否有效地支持系统的功能;
(3)成本效益风险:是否根据被评估对象的资产、威胁和脆弱性的分析结果,在符合相关法律、政策、标准和功能需要的前提下最合适的安全措施;
(4)评估保证级别:是否明确系统建设后应进行的测试和检查,从而确定评估满足项目建设、实施规范的要求。
系统交付实施过程的评估要点如下:
(1)根据实际建设的系统,详细分析资产、面临的威胁和脆弱性;
(2)根据系统建设目标和安全需求,对系统的安全功能进行验收测试;评价安全措施能否抵御安全威胁;
(3)评估是否建立了与整体安全策略一致的组织管理制度;
(4)对系统实现的风险控制效果与预期设计的符合性进行判断,如存在较大的不符合,应重新进行被评估对象安全策略的设计与调整。
本阶段风险评估可以采取对照实施方案和标准要求的方式,对实际建设结果进行测试、分析。
4.运行阶段的风险评估
运行维护阶段的风险评估的目的是了解和控制运行过程中的安全风险,是一种较为全面的风险评估。评估内容包括真实运行环境中的战略、业务、资产、威胁、脆弱性等方面。
(1)战略评估:对真实运行的发展战略进行评估,包括属性及职能定位、发展目标、业务规划、竞争关系;
(2)业务评估:对运行的业务进行评估,包括业务定位、业务关联性、完整性、业务流程分析;
(3)资产评估:在真实环境下较为细致的评估,包括实施阶段采购的软硬件资产、系统运行过程中生成的信息资产、相关的人员与服务等,本阶段资产识别是前期资产识别的补充与增加;
(4)威胁评估:应全面地分析威胁的可能性和影响程度,对威胁导致安全事件的评估可以参照威胁来源动机、能力和安全事件的发生频率;
(5)脆弱性评估:是全面的脆弱性评估,包括运行环境中物理、网络、系统、应用、安全保障设备、管理等方面的脆弱性。技术脆弱性评估可以采取核查、扫描、案例验证、渗透性测试的方式实施;安全保障设备的脆弱性评估,应考虑安全功能的实现情况和安全保障设备本身的脆弱性;管理脆弱性评估可以采取文档和记录核查等方式进行验证;
(6)风险计算:采用标准介绍的相关方法,对风险进行定性或定量的风险分析,描述不同业务、资产的风险高低状况。
运行维护阶段的风险评估应定期执行。当组织的业务流程、系统状况发生重大变更时,也应进行风险评估。重大变更包括以下情况(但不限于):
(1)增加新的应用或应用发生较大变更;
(2)网络结构和连接状况发生较大变更;
(3)技术平台大规模的更新;
(4)系统扩容或改造;
(5)发生重大安全事件后,或基于某些运行记录怀疑将发生重大安全事件;
(6)组织结构发生重大变动对系统产生了影响。
5.废弃阶段的风险评估
废弃阶段风险评估着重在以下四个方面:
(1)确保硬件、软件等资产及残留信息得到了适当的处置,并确保系统组件被合理地丢弃或更换。
(2)如果被废弃的系统是某个系统的一部分,或与其他系统存在物理或逻辑上的连接,还应考虑系统废弃后与其他系统的连接是否被关闭。
(3)如果在系统变更中废弃部分资产,除对废弃部分外,还应对变更的部分进行评估,以确定是否会增加风险或引入新的风险。
(4)是否建立了流程,确保更新过程在一个安全、系统化的状态下完成。
本阶段应重点对废弃资产对组织的影响进行分析,并根据不同的影响制定不同的处理方式。对由于系统废弃可能带来的新的威胁进行分析,并改进新系统或管理模式。对废弃资产的处理过程应在有效的监督之下实施,同时对废弃的执行人员进行安全教育,被评估对象的维护技术人员和管理人员均应该参与此阶段的评估。
2.4.3 GB/T 20984与ISO 31000和ISO/IEC 27005的关系
GB/T 20984、ISO 31000和ISO/IEC 27005三个标准之间的关系如下。
1.都与风险相关
GB/T 20984是信息安全风险评估规范,ISO 31000是风险管理标准,ISO/IEC 27005是信息安全风险管理标准。
2.制定机构不同
GB/T 20984是我国制定的国家标准,由SAC/TC 260制定;ISO 31000是国际标准化组织ISO/TC 262制定,ISO/IEC 27005是ISO和IEC联合技术委员会ISO/IEC JTC1 SC 27制定,参见2.1节。
3.应用范围不同
GB/T 20984是我国的国家标准,它针对信息安全风险评估,不能用于信息安全风险管理;ISO 31000适用于“任何组织、任何类型、全寿命周期、任何活动”,强调标准在风险管理领域的普遍适用性;ISO/IEC 27005是ISO 31000在信息安全领域的应用,同时考虑ISO/IEC 27000系列标准中的其他信息安全标准。