CVSS有助于了解某事是否危险。但是,添加一些有关该危险的上下文会更有帮助。对什么或对谁有危险?危险的地方?它会造成什么样的损害,在什么情况下?
例如,在个人健康领域,生活在北方气候中的人们不必担心传播潜在致命疾病但只生活在赤道地区的昆虫。这是一个真实的、严重的威胁,但对加拿大的某个人来说却不是。在运输领域,如果您不飞行,您不必担心飞机或劫机者的缺陷。
类似的原则也适用于软件漏洞的排名。了解它们是微不足道的还是严重的,这还不够。根据组织的工作、使用其应用程序和系统的方式以及其防御能力,被列为严重漏洞可能无需担心。或者,评级为中等的漏洞可能很严重。
这就是最新版本的通用漏洞评分系统 (CVSS) 标准旨在解决的问题。CVSS 是一个“用于传达软件漏洞的特征和严重性的开放框架”,范围从 0 到 10,根据拥有和管理它的事件响应和安全团队论坛 (FIRST) 的说法。CVSS 4.0 是 FIRST 于 11 月初推出的八年多来对该标准的首次重大改革。
这个最新版本提供的不仅仅是数字严重性排名。考虑到每周发现的软件漏洞数量从 450 到 600 个不等,也许太多了——稍后会详细介绍。
根据FIRST的一份声明,CVSS 4.0“旨在为行业和公众提供最高保真度的漏洞评估”,并补充说,“随着威胁形势的日益复杂,这个新版本的CVSS将成为该行业的游戏规则改变者。
这种更高的保真度以多种方式添加上下文的形式出现。其中一些来自以所谓的“基本指标”以外的方式评估的漏洞,该指标是指“漏洞的内在品质,这些品质在一段时间内和用户环境中保持不变”。
在 CVSS 4.0 中,还有其他三个“指标组”,包括
- 环境的:用户数字环境特有的漏洞特征。
- 威胁:漏洞的特征可能会随时间而变化。
- 补足的:不影响最终分数但可以更深入地了解漏洞特征的其他信息。根据 FIRST 的说法,一个例子是“立即恢复的拒绝服务 (DoS) 漏洞与 DoS 漏洞具有相同的数字分数,该漏洞使系统在管理员重新启动系统之前不可用。但是,服务影响的长度可能会有很大差异,消费者在规划补救资源时可以考虑这些因素。
但这些只是FIRST在漏洞描述中所说的“更精细的粒度”的一个要素。事实上,这种粒度最终可能会变成一个冗长的列表,其中包含十几个或更多的缩写,用于漏洞可能的不同特征和影响。
首先,FIRST表示,必须根据用于生成漏洞的指标来识别漏洞。因此,使用基本和环境指标的漏洞必须标记为 CVSS-BE;使用基本和威胁指标作为 CVSS-BT 的指标;以及那些使用基础、威胁和环境作为 CVSS-BTE 的人。
严重性不一定是风险
FIRST还指出,用户应该明白,严重性并不一定等于风险。根据其用户指南,基本分数“不应单独用于评估风险”。
并不是说基本指标没有用。它的分数来自对攻击者利用它的难易程度以及它可能对目标产生的影响的评估。
但 CVSS 4.0 需要六种其他评估方法,包括
- 安全:当系统“具有与安全相一致的预期用途或适用性”时。
- 自动化:当漏洞允许自动攻击时,例如未经身份验证的远程代码执行或命令注入。
- 恢复:系统或组件在遭受攻击后恢复其性能和可用性的能力。它有三个级别:自动、用户(需要手动干预)和不可恢复。
- 值密度:如果漏洞影响大量用户(电子邮件或银行帐户),则该漏洞被视为“分散性”漏洞,如果该漏洞影响操作员运行的组件或系统,则该漏洞被视为“集中性”漏洞。
- 漏洞响应工作:这是指消费者对其基础架构中已部署的产品和服务的漏洞影响做出初步响应的难度。
- 提供者的紧迫性:这是指通过产品安全公告向消费者提供补充严重性评级的供应商。
还有更多——更多。评估漏洞的其他方法包括攻击媒介;攻击复杂度;攻击要求;是否有必要进行用户交互;漏洞对数据的机密性、完整性和可用性的影响;以及对连接到易受攻击系统的所谓“后续系统”的可能影响。
那么,这在更精细的粒度上是不是有点过火了?这要视情况而定。以前版本的 CVSS 的用户抱怨没有足够的指标。如前所述,对一个组织来说可能是微不足道的事情对另一个组织来说可能至关重要。影响关键基础设施的因素将比影响单个组织的影响大得多。
漏洞的严重性还可能取决于攻击目标的防御、检测和响应能力的质量。正如用户指南中关于一个假设的漏洞所说,“在传统操作系统上,此漏洞的攻击复杂性(攻击者利用它的难度)为低。但是,具有新的固有保护功能的较新操作系统会将攻击复杂性更改为“高”。这种差异最终导致两个操作系统上同一漏洞的CVSS-B得分不同。
任何事情都不简单
尽管如此,漏洞的标签数量可能会让用户感到害怕,除非他们是专家或旁边有一个列表来提醒他们所有缩写的含义——尤其是当 FIRST 的既定目标之一是“简化威胁指标”时。用户指南中假设漏洞排名的一个例子看起来并不简单。它产生以下结果: CVSS-B 分数:8.8 (CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N)
CVSS:4.0 之后的 11 个缩写是什么意思?这是一个粗略的翻译,在斜线标记之间一次一个。
AV:N — 攻击可以远程完成,不需要物理或本地访问。
AC:L — 攻击复杂度低 — 对攻击者来说是一个优势。
AT:N — 无攻击要求,这意味着攻击者可以在所有或大多数实例中利用漏洞。
PR:N — 无需特权 — 攻击者的另一个优势。
UI:N — 无需用户交互,这也使攻击更容易。
VC:N — 对机密性没有影响,这意味着不会泄露任何信息。
VI:N — 对数据完整性没有影响。
VA:H — 失去可用性的风险很高,这意味着攻击者可以拒绝受害者访问其数据。
SC:N — 在连接到易受攻击系统的后续系统中没有丢失机密性的风险。
SI:N — 没有数据完整性丢失到后续系统的风险。
SA:N — 对后续系统中的数据没有可用性影响。
所有这些都为基本得分为 8.8 的严重漏洞提供了有用的上下文。但所有这些也可能使该标准的用户有点头晕。假设大多数用户将能够为成百上千个漏洞翻译这样的“向量字符串”,而无需每次都查找所有内容,这是否可行?
FIRST没有回应置评请求。
Synopsys Software Integrity Group的软件工程高级经理Ray Kelly表示,他还没有深入研究CVSS 4.0,但他同意“这些指标看起来确实很详细。我想这一切都将归结为最终分数的有效性,以及用户是否信任该评级。