多因素漏洞评价方法研究
2022-12-11杨一未
杨一未
(中国信息安全测评中心,北京 100085)
0 引 言
2020年,发生过多起网络信息安全事件,黑客组织“海莲花”对中国29个省市的重要卫生医疗机构、应急管理机构等目标对象发起网络间谍活动[1];4月,美国跨国IT服务商Cognizant公司遭到Maze勒索软件攻击,造成其为客户提供的支持员工远程办公的系统和服务中断;6月,日本汽车制造商本田的服务器遭到Ekans勒索软件攻击,影响了本田的计算机服务器;8月,Maze勒索软件针对美国和外国政府组织、教育实体、私营公司和卫生机构发起攻击;9月,阿根廷移民局遭Ryuk勒索软件攻击,影响其中央数据中心和分布式服务器的基于MS Windows的系统文件[2]。可以看到信息系统运营者和安全技术人员正面临着前所未有的压力,这些安全事件背后或多或少都有信息安全漏洞使用的痕迹。所以信息系统运营者和安全技术人员首先应关注那些漏洞,漏洞危害排序问题变得尤为突出。
目前,使用最为广泛的漏洞风险量化评估方法,是通用漏洞评分体系CVSS(Common Vulnerability Scoring System)[3],该评分体系是美国国家标准与技术研究院(National Institute of Standards and Technology,NIST)开发,由FIRST(Forum of Incident Response and Security Teams)维护。该方法由基本组、时间组和环境组三个度量组组成,每一组均含有一套度量指标。基本组的评分范围为0至10,反映漏洞技术指标;时间组反映的是漏洞披露后随着时间的推移、漏洞细节的公布、补丁或修复方案的出现、利用手段的成熟对漏洞危害程度的影响;环境组是供安全人员根据实际场景进行调整的指标,CVSS只给出了概念性建议。NVD[4]采用该标准,并在其网站上给出漏洞CVSS基础组评分。
中国《GB/T 30279-2020网络安全漏洞分类分级指南》[5]的网络安全漏洞分级指标,主要包括被利用性指标、影响程度指标和环境因素指标等三类。网络安全漏洞分级根据漏洞分级的场景不同,分为技术分级和综合分级,每种分级方式均包括超危、高危、中危和低危四个等级。超危漏洞可以非常容易地对目标对象造成特别严重的后果;高危漏洞可以容易地对目标对象造成严重后果;中危漏洞可以对目标对象造成一般后果;低危漏洞可以对目标对象造成轻微后果。其中,技术分级反映特定产品或系统的漏洞危害程度,主要针对漏洞分析人员、产品开发人员等特定产品或系统漏洞的评估工作。综合分级反映在特定时期特定环境下的漏洞危害程度,用于在特定场景下对漏洞危害等级进行划分,主要针对用户对产品或系统在特定网络环境中的漏洞评估工作。漏洞分级过程主要包括指标赋值、指标分级和分级计算三个步骤,其中,指标赋值是将具体漏洞的每个漏洞分级指标进行人工赋值;指标分级是根据指标赋值结果分别对被利用性、影响程度和环境因素等三个指标类进行分级;分级计算是根据指标分级,计算产生技术分级或综合分级的结果。技术分级结果由被利用性和影响程度两个指标类计算产生,综合分级由被利用性、影响程度和环境因素三个指标类计算产生。CNNVD[6]给出的是依照此标准得出技术分级,该级别与NVD给出的CVSS基础组评分存在一定的对应关系。
然而,CVSS和GB/T 30279-2020对于信息系统运营者和安全技术人员来讲,在确定环境因素分值上基本采用的都是主观定性打分后进行定量计算的方法,并且这些环境指标变量取决于特定组织机构和特定系统,无法自动生成。该文给出了一种多因素漏洞评价方法(Multi-factor Vulnerability Scoring System,MVSS),并通过实例分析展示了该方法的计算过程。选取2021年CNNVD发布的若干条公开漏洞,以CVSS基础组评分为例,对相同环境指标和不同环境指标下的MVSS指数变化曲线、不同漏洞评分数量分布、排序对比情况等进行了统计分析。分析结果表明:同一环境因素下CVSS基础组评分曲线与MVSS评分曲线波动相同;同一环境因素下CVSS基础组评分漏洞数量分布与MVSS漏洞评分数量分布相同;在CVSS基础组评分分值和环境因素风险度排序相反的情况下,与多因素漏洞评价分值呈反向交叉等现象。但在不同环境因素指标下,呈现出高风险系统中低危漏洞MVSS分值高于低风险系统高危漏洞的现象,可见多因素漏洞评价方法可以有效地供信息系统运营者和安全技术人员用于漏洞危害消控排的量化评估。
1 相关研究
桑迪亚国家实验室与美国国土安全部合作发布的《优先考虑网络脆弱性的关键基础设施设备和缓解战略方法》[7-8]报告,给出一套易受网络攻击的信息资产评价流程,试图寻求最大限度降低这些资产受到攻击带来的损失。Gartner[9]于2017年和2019年分别发布了两个版本的《开发和实施漏洞管理指导框架》[10-11],特别是在2019年的版本中首次提出了漏洞优先级算法的概念,并指出漏洞优先级计算的重要元素应包括漏洞危害等级、资产暴露情况、威胁上下文、对业务的潜在影响等,但并未给出具体的操作方法。卡耐基梅隆大学的Jonathan等人提出了一种可测试的,特定于利益相关者的漏洞分类(Stakeholder-Specific Vulnerability Categorization,SSVC)[12],它对不同的漏洞管理域,采用决策树的形式,分别向补丁开发者和补丁使用者给出漏洞消控紧急程度建议,建议分为推迟(Defer)、排期(Scheduled)、外协(Out-of-Band)、立即(Immediate)四个等级。2021年4月,Jonathan等人将SSVC升级为2.0版本[13],2.0版本中加入了协调利益相关者(Coordinator Stakeholder)角色、调整了术语定义、给出了更为详细的SSVC计算方法说明和示例。Dale Peterson针对工业控制系统(Industrial Control System,ICS)对SSVC进行了一定修改,命名为“ICS- patch”[14]版本定义为0.5,表明其需要进一步完善的态度,该方法可视为SSVC在ICS领域的实践。SSVC和ICS-patch方法过于依赖专家判断,定性评价项过多,缺乏实际操作性,也较难实现工程化。黄家辉等人将漏洞风险评估量化指标分为漏洞利用难度和漏洞危害性,同时给出漏洞利用难度打分和漏洞危害性打分,变定性评价为定量指标,利用攻击图来对系统的拓扑结构进行建模分析,以研究每条攻击路径的脆弱性为目标,计算攻击过程中每一步的攻击期望从而得到每条路径的总攻击期望,进而判断漏洞风险[15],但该方法未考虑漏洞固有技术属性和用户群体规模等因素,同时需要确定攻击链后对漏洞攻击图进行分析,分析周期长不利于快速聚焦需关重的漏洞范围。
该文提出的漏洞评价方法,除将漏洞技术评价指标作为漏洞危害消控重要程度考虑因素之外,又加入了计算机系统分级类评价、网络防护与联通性、资产使用率、利益相关者风险承受度四个指标因素,以定量和定性相结合的方法生成信息资产上漏洞危害消控排序,与已有的研究比较更能满足实践要求。
2 评价方法与实例
2.1 MVSS评价方法
该文提出的多因素漏洞评价方法,通过综合计算机系统分级类评价、网络防护与联通性、资产使用率、利益相关者风险承受度、漏洞技术评价等五类指标,计算得出漏洞消控优先级排序。同时该方法在实际使用过程中漏洞风险评估者还可以根据具体实际情况对评估项进行增减。
表1 多因素漏洞评价方法(MVSS)指标描述及示例
计算机系统分级评价指标是指对信息和信息载体按照重要性等级分级别进行保护而确定的等级,中国普遍使用的是《GB/T 22239-2019信息安全技术 网络安全等级保护基本要求》[16]系列标准,美国则可追溯到由国家计算安全中心(National Computer Security Center,NCSC)制定的可信计算机系统评估准则[17](Trusted Computer System Evaluation Criteria,TCSEC)。该准则于2014年3月14日重新发布为DoDI 8500.02[18],最终由国际标准化组织ISO颁布为《ISO/IEC 15408:2009 Information technology - Security techniques — Evaluation criteria for IT security》系列标准[19-21],该系列标准目前也正在进行改版。网络防护与联通性指标是指信息资产与互联网的连接方式和所采取的防护措施,该指标代表了漏洞通过网络进行攻击的难易程度。资产使用率指标是指某一信息系统使用人员占总人数或使用该系统资产占总资产的比例关系,在某一组织内部,结合资产探测、身份鉴别、上网准入等技术手段该数据可实现自动化统计。利益相关者风险承受度指标是指系统遭到破坏后,信息系统所有者、运营者、用户等的承受度,该指标是MVSS统计中唯一定性评价指标。漏洞技术评价指标是指排除环境因素外的漏洞自身危害等级,CVSS基础组评分就是较好反映漏洞技术评价指标的参考数据值之一,该指标可反映出漏洞的利用难度和攻击者关注程度,同样GB/T 30279-2020所给出的漏洞技术分级也可等效使用。MVSS的详细计算步骤如下:
(1)漏洞评价考虑因素集合为X(X≠∅),不同漏洞评价因素初始权重值Mi(i≤|X|,且i∈N) ,对漏洞危害等级度Ri进行基准化处理:
(1)
(2)以考虑因素排序最后一项K|X|为基准,令其为1,自下而上依次计算其他评价项目的Kj值:
Ki=Ki+1×Ri
(2)
(3)将Ki归一化处理,得到权重Wi:
(3)
(4)
(5)
(6)
(7)计算漏洞危害消控优先级排序指数Vj:
(7)
(8)对Vj(j≤|Y|,且j∈N) 从大到小排序,得到漏洞消控优先级排序结果,也可在此基础上划定阈值,对高于该阈值的漏洞重点关注或优先消控。
2.2 评价示例
本节以Microsoft,CNNVD编号为CNNVD-202101-538、CNNVD-202101-792、CNNVD-202101-820、CNNVD-202102-678的四个漏洞为例,模拟实际环境计算MVSS评分,分析MVSS在生产环境漏洞风险评估中的有效性。
CNNVD-202101-538(CVE-2020-24003)是Microsoft Skype授权问题漏洞,该漏洞允许本地进程获取未经提示的麦克风和摄像头访问,CVSS得分3.3,CNNVD漏洞技术分级为低危;CNNVD-202101-792(CVE-2021-1713)是Microsoft Excel缓冲区错误漏洞,CVSS得分7.8,CNNVD漏洞技术分级为高危;CNNVD-202101-820(CVE-2021-1694)是Microsoft Windows Update Stack提权漏洞,CVSS得分9.8,CNNVD漏洞技术分级为超危;CNNVD-202102-678(CVE-2021-24085)是Microsoft Exchange Server安全漏洞,CVSS得分5.5,CNNVD漏洞技术分级为中危。
现假设上述四个漏洞在不同的四个生产系统中被发现,多因素漏洞评价方法选择的评估指标和漏洞评价因素初始权重如表2所示。
表2 漏洞评价因素初始权重
根据公式(1)~公式(3),计算Ri后,将Ki归一化处理,得到权重Wi,如表3所示。
表3 漏洞评价初始权重归一化
假设不同资产上漏洞的评价项目指标及对应指标值如表4所示。
表4 漏洞评价指标值
表5 漏洞权重归一化
根据公式(7),计算漏洞危害消控优先级排序指数Vj,如表6所示。
表6 漏洞危害消控优先级排序指数
从表6可以看出,最先应关注的漏洞是CNNVD-202101-792(高危);CNNVD-202101-820(超危)漏洞由于等保定级仅为一级,且在复杂保护的互联网访问之下等因素,是较为不受关注的漏洞;CNNVD-202102-678(中危)漏洞,由于处于物理隔离的网络环境中,虽然等保定级也较高,但使用人数较少同时利益相关者风险承受度较高,所以排在最后处理的位置;CNNVD-202101-538(低危)漏洞由于处于无保护的互联网环境之下、使用人数较多,利益相关者风险承受度也比较低等因素,反而成为需要给予较多关注的漏洞。这一漏洞风险评价结果,比单纯使用NVD给出的CVSS基础组评分或CNNVD给出的漏洞技术分级更为客观。
3 统计分析
3.1 相同环境指标的评分
本节收集了2021年1月开始CNNVD发布的100条公开漏洞,使用与评价示例中漏洞评价因素相同的初始权重,假设信息资产等级保护等级为三级,网络防护与联通性是复杂保护的互联网访问,具有80%的资产使用率,利益相关者风险承受度低。在此环境指标基础上,CNNVD 100条公开漏洞CVSS静态分值变化,如图1中浅色曲线。MVSS计算得出的漏洞危害消控优先级排序指数曲线,如图1中深色曲线。可以看出两条曲线区别仅在于波动振幅,峰谷波动趋势相同。在相同环境指标下CVSS基础组评分与MVSS评分漏洞数量分布上完全一致,如图2所示。
图1 CVSS与MVSS曲线对比
图2 CVSS与MVSS数量分布对比
上述两项统计分析说明,MVSS评价方法本身不会改变漏洞固有CVSS基础组评分的相对位置,在同一系统中安全防护人员首先应关注的还是CVSS基础组评分较高的漏洞,这一点符合漏洞防护的基本规律。
3.2 不同环境指标的评分
本节选取了CNNVD不同CVSS静态分值的漏洞22个,分别以降序和升序的顺序排列,计算出环境因素风险等级由高到低情况下的MVSS分值。环境风险指标与漏洞CVSS静态分值对比,如图3所示。
图3 环境风险指标与漏洞CVSS基础组评分对比
可以看出,漏洞CVSS基础组评分与环境因素指标同为降序情况下,MVSS评分与CVSS基础组评分走势相同;漏洞CVSS基础组评分与环境因素指标排序方式相反时,MVSS评分与CVSS基础组评分也相反,此时MVSS给出的漏洞危害消控优先级排序结果显示,更应关注的是高风险环境下的CVSS基础组评分较低的漏洞。
4 结束语
该文给出的多因素漏洞评价方法,是将计算机系统分级评价、网络防护与联通性、资产使用率、利益相关者风险承受度和漏洞技术评价指标综合纳入量化评估范围。通过算法生成的MVSS指数可供信息系统运营者和安全技术人员评判漏洞消控优先级。选取CNNVD-202101-538、CNNVD-202101-792、CNNVD-202101-820、CNNVD-202102-678四条漏洞,以CVSS基础组评分为基础进行分析,展现了MVSS方法计算的全过程。并对2021年CNNVD发布的100条漏洞在不同环境因素下的情况进行了统计分析。分析结果表明,CVSS评分体系适用于对漏洞开展技术研究、厂商漏洞定级、公众漏洞库漏洞批露等领域,MVSS评分方法则更加侧重于信息系统运营者在开展漏洞消控工作中的漏洞评级,系统运营者和安全技术人员使用MVSS方法可得出漏洞在实际环境中诸多因素影响下量化后的危害评估结果,对信息安全漏洞管理工作提供辅助决策依据。