明白漏洞评分可能是一项艰巨的任务,但是一个好的开始是首先了解风险,并能够区分风险和漏洞。多年来,人们都在交替使用这两种方法。

漏洞是指由于系统功能,配置或结构的某些方面的问题,使这些资源成为了潜在被滥用,利用或拒绝服务的目标。

风险则是威胁成为一个特定漏洞的可能性

有很多方法可用于对漏洞进行排序,决定它们的风险等级。通用漏洞评分系统(Common Vulnerability Scoring System, CVSS)是其中最广泛使用的行业标准。该系统现在有三个版本:CVSSv1, CVSSv2 和CVSSv3。CVSSv1发布于2005年,CVSSv2于2007年,而当前版本CVSSv3则发布于2015年。

为了更好地理解CVSS,我们需要知道评分系统是如何演变的。

图1: CVSSv1 三个维度

CVSSv1旨在对信息系统漏洞进行排序,为终端用户提供一个综合评分,代表该漏洞的严重程度和风险。CVSS采用了模块化评分体系,包含三个部分:基本维度(Base Metric Group),时间维度(Temporal Metric Group)和环境维度(Environmental Metric Group)。由这三个部分分别计算所得的分数,组成了一个0到10分的漏洞总体得分,10分代表最严重。

图1.1 CVSSv1 基本维度

基本维度奠定了漏洞得分的基础。基本维度包含访问类型(Access Vector),完整性影响(Integrity Impact),影响偏差(Impact Bias),访问复杂性(Access Complexity),保密性影响(Confidentiality Impact),可用性影响(Availability Impact)和身份验证要求(Authentication)。这些核心特性不会随时间而改变,即使添加了不同的目标环境,它们也不会改变。

图1.2 CVSSv1 时间维度

时间维度包含了可利用性(Exploitability),修复级别(Remediation Level)和报告水平(Report Confidence)这些动态因素,会随着时间推移而影响一个漏洞的紧迫程度。

图1.3 CVSSv1 环境维度

环境维度决定了被发现的漏洞对组织机构和其利益相关者可能产生什么样的影响。这一维度根据漏洞潜在附带损害和目标分布来评估其风险。

顾名思义,基本维度是漏洞得分的基础,时间维度和环境维度在此基础上起到提高或降低分数的作用。CVSS SIG(Special Interest Group, 特别利益小组)后来指出CVSS存在严重的问题。最大的问题来自部分类别,零分和自变量。这些问题最终导致了不稳定或模棱两可的风险得分。随后2007年发布的CVSS2考虑了CVSS1存在的缺陷,并试图改进它们。

CVSSv3则对CVSSv2存在的缺陷进行了改进。例如在CVSSv2中,漏洞评分是基于该漏洞对主平台的总体影响,而在CVSSv3中,漏洞评分是基于对特定组件的影响。另一个常见的对CVSS的不满是,人们认为CVSS没有考虑漏洞暴露给攻击者的时间。这个时间因素影响了一个漏洞被攻击者利用进行攻击的可能性。

安全公司Tripwire的评分系统则根据漏洞的年龄对其进行评分。

此外CVSSv2和v3的评分系统因为受限于两个或三个“无”,低”或“高”选项,缺乏精确度。这意味着最终出现的分数总是那么几个。这使得许多关于风险优先级的问题没有得到解答,因为几乎总是会有许多得分相同的漏洞出现。

Tripwire通过一个漏洞公开发布的天数(t),风险类别(r)和能成功执行攻击的能力(s)来计算该漏洞的风险。风险类型(r)的得分为0到6分,0意味着“暴露”,而6代表了一个漏洞具有“远程访问权限”。

风险类别通过阶乘来加大其权重。最后攻击能力(s)的评分为1到6分,1分代表“自动利用”,6分则代表“没有已知的利用能力”。攻击能力的得分将进行平方,已获得更精确的分数。

和CVSS相比,Tripwire漏洞评分能够更准确地表示漏洞的风险。

图3:Tripwire 方法

为了展示CVSSv2、CVSSv3和Tripwire的评分差异,我们选择了2017年的10个漏洞。CVSSv2的平均得分为8.6,CVSSv3也是8.6,而Tripwire得分为13858。

图4:Tripwire 评分数据

上图的数据显示了10个漏洞,以及其CVSS和Tripwire评分。CVE-2017-0920是一个很好的例子,说明了CVSS评分有时会极大地夸大一个漏洞相对于另一个漏洞的风险。

为了进一步比较三种评分系统,从上述图表中截取了图“A”和图“B”中的CVE进行说明。

图5(A):CVE-2017-0290    图5(B):VE-2017-10271

图A是一个Microsoft恶意软件保护引擎远程代码执行漏洞,Tripwire给了它3943分,CVSSv2得分为9.3,CVSSv3为7.8。根据标准,CVSS将这个漏洞评为“高”。Tripwire得分是3943,代表低风险。

图B是一个Oracle WebLogic漏洞,CVSSv2得分为5,CVSSv3为7.5。这个得分介于“中等”和“高”之间。Tripwire给这个漏洞打了13099分,因为CVE-2017-10271被记录为一个可以远程自动执行的漏洞。

Tripwire对这两个漏洞评分的区别在于,Microsoft漏洞虽然确实可能被利用,但是需要用户进行一些操作才能执行攻击,例如让用户打开邮件点击一个链接。相比之下,Oracle WebLogic漏洞具有自动攻击的特性,无需和用户互动,因此得分更高。

Tripwire漏洞评分系统为衡量企业网络中的IT风险,提供了合理和有效的标准。这很重要,因为根据得分,组织机构可以通过将IT资源集中在优先级最高的目标上,有效地的进行降低网络安全风险的工作。

声明:本文来自安全牛,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。