Watch 5 Star 3 Fork 4

openEuler / security-committee

Create your Gitee Account
Explore and code with more than 5 million developers,Free private repositories !:)
Sign up
This repository doesn't specify license. Without author's permission, this code is only for learning and cannot be used for other purposes.
the Repository of Security Committee spread retract

Clone or download
security-evaluation.md 5.75 KB
Copy Edit Web IDE Raw Blame History
Yang.Li authored 2020-03-16 18:02 . move the file to this repo

严重性评估——我们如何进行漏洞评分

本文主要介绍openEuler对安全问题采用的严重性评估方案和典型案例。

安全问题的定义

安全问题是一类漏洞,是指系统在设计、实现、操作和管理中的缺陷或弱点,可被外部威胁所利用来违反系统的安全策略,并对系统的机密性、完整性、可用性造成影响。攻击者可以利用这些漏洞拒绝用户使用计算资源,或者在用户的计算机上执行任意的代码。由于病毒和蠕虫可以利用这些漏洞在计算机之间传播,所以安全问题会给用户带来极大的风险。安全问题可以分成两个基本类型:

  • 拒绝服务
  • 允许执行任意代码

拒绝服务

拒绝用户使用计算资源的问题属于拒绝服务类安全问题,比如此类问题导致所运行的程序崩溃,或消耗大量内存,磁盘空间或CPU时间等。但是需要注意,程序包含各种问题,有时这些问题也会导致程序崩溃,但崩溃的现象不能以一个一致的方式重现,那么这些问题也不会被视为拒绝服务的安全问题。拒绝服务的安全问题是可以“一致”和“可靠”重现的问题,攻击者可以使用它故意使正在运行的程序崩溃。

拒绝服务的安全类问题的典型案例
  • 使客户端崩溃的特制电子邮件
  • 使看护程序崩溃的特定网络数据
  • 使游览器崩溃的特定HTML
非拒绝服务的安全类问题的典型案例
  • 通过执行非常复杂的用户输入操作使文本编辑器崩溃
  • 通过物理访问的操作或动作使计算机崩溃

允许任意代码执行

一般而言,允许任意代码执行带来的安全问题比拒绝服务带来的问题更加严重。允许任意代码执行可能会允许恶意用户获取对计算机的控制,或者允许病毒或蠕虫传播。在程序的正常执行过程中,会有可预期的执行流程,然而恶意的输入程序可能会改变执行流程并运行攻击者选择的代码。

  • 远程执行代码:每当计算机连接到网络时,远程攻击者就有可能远程利用任意代码执行问题来执行恶意代码。这意味着攻击者不必靠近或登录被攻击的计算机。比如蠕虫病毒通过Internet感染到无数连接到Internet的计算机。恶意的破解程序通常还会利用远程代码执行问题来获取对计算机系统的未授权访问。
  • 本地代码执行:本地代码执行问题时一种可能导致攻击者在用户执行特定命令时运行的代码,或者利用SUID程序提升特权的问题。

通常来说,在各种命令中都会发现这类问题,但是如果需要要求用户执行某些特定命令,那么这些错误不会被认为是安全性问题。比如某个本地命令执行需要提升特权才能运行代码。

openEuler 安全问题等级

openEuler的产品安全问题等级使用常见的漏洞评分系统(CVSS)来评估在openEuler 中发现的安全问题的影响。按照优先级的风险评估,可以帮助您了解和升级系统,从而针对这些问题做出适合您运行环境的明智决策。

通用漏洞评分(CVSS)

通用漏洞评分系统(CVSS)为漏洞的基本评分提供了指导,并通过对漏洞的各个方面进行评分来描述详细的严重程度,包括:访问量、访问复杂性、机密性、完整性和可用性。CVSS等级作为一个准则来识别缺陷的关键指标,但openEuler不仅仅会直接使用CVSS等级来确定修复缺陷的优先级。对于那些已经修复的缺陷的优先级,openEuler会参考四点量表综合考虑全局影响给出评分。

CVSS v3基础指标涵盖了对漏洞影响性评估的各个方面

  • 攻击向量(AV):攻击的 “远程能力”以及在该能力下漏洞会被如何利用
  • 攻击复杂度(AC):攻击的难度以及成功进行攻击所需要的因素的获取难度
  • 用户交互(UI):确定攻击是否是自动进行的,或者需要人参与
  • 所需权限(PR):成功进行攻击所需要的用户身份验证级别
  • 范围(S):确定攻击者是否可以影响具有不同权限级别的组件
  • 机密性(C):确定是否可以将数据公开给非授权方;如果可以,公开到什么级别
  • 完整性(I):衡量数据的可信度以及未经授权的用户不会修改数据的可信度
  • 可用性(A)::获得授权的用户在需要访问数据或服务时是否可获得 公式将这些度量转换成单个数字评分,范围从0.0(无风险)到10.0(最高风险)。有关基础指标的详细说明,请参考通用漏洞评分系统v3.0:用户指南

NVD和openEuler分数之间的差异

由于软件包是由多个供应商提供的,而CVSS基础评分与这些供应商提供的版本号,提供的方式,平台以及软件的编译方式相关,所以对openEuler来说,直接采用第三方漏洞库(例如NVD)的评分有时候是比较困难的,因为这些评分只为每一个漏洞提供了单个CVSS的基础分数,适用到openEuler可能会出现较大差异。

比如,由于Firefox应用程序也可用于Microsoft Windows(用户通常以管理员权限运行Firefox),因此NVD将Firefox的漏洞评为具有最高影响力。但openEuler 的版本会采用低影响度评分,因为Firefox一般以非特权用户的方式运行。出于以上这些原因,我们建议您尽量采用openEuler提供的CVSS基础分数。

如果您认为特定的漏洞CVSS v3基础分数不正确,请告诉我们,我们很高兴就此问题进行讨论并在需要的时候更新分数。

典型案例说明

待补充

1
https://gitee.com/openeuler/security-committee.git
git@gitee.com:openeuler/security-committee.git
openeuler
security-committee
security-committee
master

Search

231008 48f1a665 1899542 231017 9a6720c6 1899542