通用漏洞评分系统 (CVSS) 是一个公共框架 ,用于评估软件中安全漏洞的严重性。这是一个中立的评分系统,让所有企业能够使用相同的评分框架对各种软件产品(从操作系统、数据库再到 Web 应用程序)的 IT 漏洞进行评分。

为什么企业要采用 CVSS

在没有 CVSS 以前,软件供应商使用自己的方法对软件漏洞进行评分,但是他们通常没有详细说明分数是如何计算的。这给安全人员带来了一个难题:首先修复严重性为“高”的漏洞,还是修复等级为 5 的漏洞?为了解决这个问题,美国国家基础设施保障委员会 (NIAC) 开发了 CVSS 来简化一致分数的生成,该分数可以准确反映漏洞对特定 IT 环境的严重性和影响。

作为一个公开的评分框架,企业可以自由访问用于生成分数的参数,清楚地了解任何漏洞分数背后的原理和差异。这让安全团队更容易评估漏洞对其系统的影响,并优先考虑首先修复哪些漏洞。CVSS 还可以帮助组织满足各种标准的安全合规要求。

目前,CVSS 已被广泛采用,并被美国国土安全部 (DHS)、美国计算机应急响应小组 (CERT) 和许多其他机构使用。Cisco、Qualys、Oracle 和 SAP 等大型企业也会生成 CVSS 分数,以告知用户在其产品中发现的漏洞的严重性。软件开发人员还可以使用 CVSS 分数来确定安全测试的优先级,以确保在开发过程中修复或缓解已知的严重漏洞。

如何理解 CVSS 分数

许多安全团队使用 CVSS 来确定漏洞管理活动的优先级,例如事件响应流程、缺陷跟踪和解决,或缓解控制的实施。

最新版本 CVSS v3.1 中,通过对受利用过程和影响的因素进行评估,从而得出最终的严重性分数。当企业在没有相关环境信息的情况下设置漏洞的某些属性时,CVSS 分数就是一个可参考的“客观”信息。以下是 Spring4Shell 漏洞 的 CVSS 示例,其严重性评分为 9.8 CRITICAL。



图片来源:Sysdig

基本指标

CVSS 的基础分数(Base Score)由以下变量计算得出:

攻击向量 (Attack Vector) : 该指标反映了可能利用漏洞的环境。攻击者距离越远(例如远程利用漏洞发起攻击),基本得分越高。

攻击复杂度 (Attack complexity) : 该指标反映了利用漏洞的复杂/容易程度。在高复杂度的情况下,需要攻击者花费大量的努力来准备或执行针对易受攻击的组件。最不复杂的攻击,基本得分最高。

所需特权 (Privileges Required) : 决定了攻击者成功利用漏洞所必须拥有的特权级别。共有三个选项 None/Low/High。None 是指无需身份验证即可利用漏洞。在没有特权的情况下,基本分数最高。

用户交互 (User Interaction) :这一项描述了是否可以在没有单独用户参与的情况下利用漏洞。这在用户需要与威胁(恶意软件)交互以破坏其设备的移动应用程序中很常见。另一个例子,类似于网络钓鱼攻击,本身并没有风险,但攻击者使用社交工程来让受害者点击链接并受到攻击。

范围 (Scope):度量捕获一个易受攻击组件中的漏洞是否会影响超出其安全范围的组件中的资源,当范围没有发生变化时,基本分数最低。

CIA (机密性、完整性和可用性) : 该模型是构成安全系统和策略开发的权威安全模型基础。这三个影响指标反映了成功利用漏洞的影响和后果。

基本分数是一个客观值,随着时间的推移保持稳定并且在各企业之间保持一致。作为补充还有两个指标,分别为时间和环境。这些值会带来更多的评分复杂性,因此在企业进行漏洞管理早期可能不会关注。

时间指标

时间指标根据漏洞的当前状态作为已知漏洞来衡量漏洞的各个方面,因此代表了漏洞的随时间变化的属性,例如官方补丁的发布。它还包括报告置信度指标,该指标衡量对漏洞存在的置信度以及证明漏洞真实且可利用的已知技术细节的可信度。因此会随着漏洞的生命周期而改变。

环境指标

环境指标让安全人员可以根据受影响的 IT 资产对其的重要性来自定义 CVSS 分数。该指标提供了漏洞在企业内部的真实环境(包括受漏洞影响的资产关键性、缓解控制识别和相关资产使用)。

具体 CVSS 分数计算示例见参考链接。

CVSS 补充评分系统

在评估系统的安全性时,以下的衍生评分系统能够对 CVSS 进行有效补充。比如:

通用误用评分系统 (CMSS):这是一组衡量具有误用漏洞的软件的严重性指标。该分数可以帮助公司提供用于对系统的整体安全状况进行定量评估的数据。

通用配置评分系统 (CCSS):CCSS 基于 CVSS 和 CMSS。CCCS将基准指标的可利用性分为主动或被动。主动利用是指攻击者执行操作以利用错误配置,而被动利用指的是通过配置缺陷使授权机制失效。

通用弱点评分系统 (CWSS):从概念上讲,CVSS 和 CWSS 非常相似。通过对弱点的描述方法进行标准化,用户可以通过CWSS的攻击面指标和环境指标,使用业务环境的上下文信息来评价软件功能所面临的风险,以便精准地进行安全决策。CWSS 可以应用在发布新漏洞的早期过程中。

参考链接:

https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator

通用漏洞评分系统 (CVSS)系统入门指南的更多相关文章

  1. 漏洞风险评估:CVSS介绍及计算

    CVSS 通用弱点评价体系(CVSS)是由NIAC开发.FIRST维护的一个开放并且能够被产品厂商免费采用的标准.利用该标准,可以对弱点进行评分,进而帮助我们判断修复不同弱点的优先等级. CVSS : ...

  2. 分布式消息系统Jafka入门指南之二

    分布式消息系统Jafka入门指南之二 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 三.Jafka的文件夹结构 1.安装tree命令 $ sudo yu ...

  3. 分布式消息系统Jafka入门指南

    分布式消息系统Jafka入门指南 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 一.JafkaMQ简单介绍 JafkaMQ是一个分布式的公布/订阅消息系 ...

  4. Windows Server 2008 R2服务器系统安全设置参考指南

    Server 2008 R2服务器系统安全设置参考指南  重点比较重要的几部 1.更改默认administrator用户名,复杂密码 2.开启防火墙 3.安装杀毒软件 1)新做系统一定要先打上补丁(升 ...

  5. Linux FC/iSCSI存储设备管理系列(一):Linux系统设备驱动入门

    Linux FC/iSCSI存储设备管理系列(一):Linux系统设备驱动入门 转载请在文首保留原文出处:EMC中文支持论坛 - https://community.emc.com/go/chines ...

  6. L017-linux系统定时任务crond入门小节

    L017-linux系统定时任务crond入门小节 oh my god!how old are you? 怎么老是你?没错,我又来了,哈哈哈,今天是我的生日呢,在这么重要的日子里,必须要更一篇学习小节 ...

  7. Linux平台上DPDK入门指南

    1. 简介 本文档包含DPDK软件安装和配置的相关说明.旨在帮助用户快速启动和运行软件.文档主要描述了在Linux环境下编译和 运行DPDK应用程序,但是文档并不深入DPDK的具体实现细节. 1.1. ...

  8. Web API 入门指南 - 闲话安全

    Web API入门指南有些朋友回复问了些安全方面的问题,安全方面可以写的东西实在太多了,这里尽量围绕着Web API的安全性来展开,介绍一些安全的基本概念,常见安全隐患.相关的防御技巧以及Web AP ...

  9. Microsoft Orleans 之 入门指南

    Microsoft Orleans 在.net用简单方法构建高并发.分布式的大型应用程序框架. 原文:http://dotnet.github.io/orleans/ 在线文档:http://dotn ...

  10. WebSphere MQ 入门指南

    WebSphere MQ 入门指南这是一篇入门指南.我们从最基本的概念说起: 基础概念 对于MQ,我们需要知道4个名词:队列管理器.队列.消息.通道:对于编程设计人员,通常更关心消息和队列,对于维护管 ...

随机推荐

  1. 数据库系列:InnoDB下实现高并发控制

    数据库系列:MySQL慢查询分析和性能优化 数据库系列:MySQL索引优化总结(综合版) 数据库系列:高并发下的数据字段变更 数据库系列:覆盖索引和规避回表 数据库系列:数据库高可用及无损扩容 数据库 ...

  2. JUC并发编程学习笔记(十七)彻底玩转单例模式

    彻底玩转单例模式 单例中最重要的思想------->构造器私有! 恶汉式.懒汉式(DCL懒汉式!) 恶汉式 package single; //饿汉式单例(问题:因为一上来就把对象加载了,所以可 ...

  3. SNN_LIF模型

    LIF模型 Leaky integrity-Fire(LIF)模型 输入信号直接影响神经元的状态,即神经元膜电位,只有当膜电位上升到阈值的时候,才会产生输出信号. 膜电位:细胞膜两侧的电位差.只有当膜 ...

  4. 容器中sh脚本明明存在,为何会报"no such file or directory"的错误?

    小伙伴碰到一起奇怪的事故,从gitlab上拉取的docker镜像项目,在本地开发机上进行docker build后,启动容器会报错如下: exec /app/run.sh : no such file ...

  5. 生成伪随机数 rand;srand函数

    1 相关内容来自鱼c论坛https://fishc.com.cn/forum.php?mod=viewthread&tid=84363&extra=page%3D1%26filter% ...

  6. Util应用框架基础(七) - 缓存

    本节介绍Util应用框架如何操作缓存. 概述 缓存是提升性能的关键手段之一. 除了提升性能,缓存对系统健壮性和安全性也有影响. 不同类型的系统对缓存的依赖程度不同. 对于后台管理系统,由于是给管理人员 ...

  7. springboot集成mybatis-plus

    集成mybatis-plus 1.添加pom.xml <!--mp逆向工程 --> <dependency> <groupId>org.projectlombok& ...

  8. excel柱状图自定x轴y轴

    在Excel中,柱状图是一种常用的数据可视化方式,可以直观地展示不同数据之间的比较关系.默认情况下,Excel会根据数据自动生成X轴和Y轴的刻度和标签.然而,如果你想要自定义X轴和Y轴,在柱状图中显示 ...

  9. SpringBoot接口开发

    依赖的jar包<dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...

  10. springBoot——多环境开发

    不常用的application.properties版的 常用的:application.yml版 #多环境开发,设置启用环境 spring: profiles: active: test --- # ...