漏洞检测与EPSS评分

EPSS (利用预测评分系统)是为了测量特定的漏洞在野外被利用的可能性。EPSS 得分范围从0% (最低的利用概率)到100% (最高的利用概率)。此外,由于仅从概率得分很难推断出真正的意义,EPSS 还提供百分位排名; 百分位排名衡量 EPSS 概率相对于所有其他 EPSS 得分。概率和百分位数的组合可以实现高级的优先级输入。

EPSS 的存在是为了解决一个安全从业者非常清楚的问题: 我们正在淹没在 CVE 中(包括许多高严重性的 CVE) ,但大多数 CVE 实际上并不可利用。当然,这会使得对漏洞补救工作进行优先排序变得困难。 

通过提供可利用性可能性的客观测量,EPSS 与其他外部数据点如 CVSS (通用漏洞评分系统)和 VEX (漏洞可利用性 exchange)一起,可以成为漏洞优先级排序的有价值的输入。

在本文中,我们将深入研究 EPSS 模型的细节,讨论它与 CVSS 和 VEX 的区别,并简要介绍如何将 EPSS 评分集成到一个全面的漏洞管理程序中。

EPSS历史与数据模型

EPSS 由事故应对和安全小组论坛(FIRST)与一系列公共和私有部门捐助者合作管理。EPSS 评分系统的第一个版本于2021年4月发布。版本2.0发布于2022年2月,当前的版本3.0发布于2023年3月。

每当一个新的 CVE 出版,一个相应的 EPSS 分数将被公布。评分旨在传达“未来30天内利用漏洞的可能性”。

根据该模型的网站,EPSS 目前正在从多个来源收集数据,例如:

  1. 来自 Mitre 的 CVE 名单
  2. CVE 出版的天数
  3. Metasploit、 ExploritDB 和/或 GitHub 中发布的开发代码
  4. 多个安全扫描工具
  5. 在国家脆弱性数据库(NVD)中公布的基础评分中的 CVSS v3向量
  6. NVD 中公布的 CPE 数据

EPSS 总共接受了超过1000个变量的训练。为了更全面地解释 EPSS 模型,我们建议您访问 FIRST 的网站。

(https://www.first.org/epss/model?ref=fossa.com)

EPSS是如何产生的?

EPSS 使用机器学习模型来产生分数。为了训练该模型,EPSS 从多个数据源收集数据。这包括关于已知漏洞、相关漏洞和其他可能影响可利用性的因素的数据。数据源包括 MITRE CVE 列表、 NVD (国家漏洞数据库)以及各种威胁情报源,如 Metasploit 和 ExploritDB。

然后将这些数据结合起来训练 EPSS 预测模型,并确保它能够成功地预测利用新的、以前未见的脆弱性的可能性。随着新的漏洞和利用数据的出现,模型会进行更新,以确保其准确性和相关性。 

该模型的第一个版本于2021年发布,对 EPSS 的最新更新于2023年3月发布(EPSS v3或 v2023.03.01)。最新的模型提供了显著的预测结果与改进的效率。 

EPSS vs. CVSS

与 EPSS 一样,CVSS (通用漏洞评分系统)也是由 FIRST 管理的,这两个模型在帮助安全从业人员理解漏洞和确定漏洞优先级方面有着相似的目标。但是 EPSS 主要关注漏洞的可利用性,而 CVSS 主要关注漏洞的严重性。

例如,Log4J 漏洞 CVE-2021-44228的严重性等级为10.0,这是可能的最高等级。

CVSS 评分表示“一个漏洞的内在特性随着时间和用户环境的变化而变化”,例如完整性影响、可用性影响、攻击向量等等。 

CVSS 的其他元素考虑了 a)随时间变化的因素,比如利用代码成熟度,以及 b)特定于用户环境的因素。但是这些并不是 CVSS 评分的一部分。

EPSS vs. VEX

EPSS 不是评估漏洞可利用性的唯一资源。VEX (漏洞可利用性交换)也寻求帮助度量可利用性,但它的工作方式与 EPSS 非常不同。

VEX 信息由软件供应商根据内部输入提供。当使用 VEX 时,供应商为漏洞分配一个状态(受影响的,未受影响的,正在调查的,或固定的)以及一个状态理由。例如,如果漏洞已被修补,供应商可能会分配一个“固定”状态。或者,如果漏洞的模块没有包含在生产部署中,供应商可能会给出一个“ Not Affected”的状态,并以“ Component _ Not _ current”作为理由。

相比之下,EPSS 分数是通过前面章节中描述的外部数据输入得到的。 

因此,VEX 和 EPSS 是相辅相成的,可以协同使用,以帮助确定补救工作的优先次序。

如何使用 EPSS 分数

可以通过以下几种方式使用 EPSS 分数:

  1. 使用 SCA (软件组合分析)工具,该工具利用 EPSS 分数来帮助您过滤和优先考虑漏洞。
  2. 直接从 EPSS 网站(通过可下载的 CSV)

EPSS分数目前广泛应用于国外多种SCA工具,最有代表性的是MEND和FOSSA。

FOSSA:

MEND:

走向更全面的风险评估模式

EPSS 估计漏洞被利用的可能性。但是,除了了解 EPSS 是什么,了解 EPSS 不是什么也很重要。 

EPSS 没有考虑到其他环境因素,也没有估计漏洞在被利用时的影响。因此,正如 EPSS SIG 本身所述,EPSS“不是,也不应该被视为风险的完整图景”。还值得指出的是,虽然 EPSS SIG 在记录项目方面做了令人印象深刻的工作,但模型本身并不完全透明,无法进行更密切的评价。不过,EPSS 可以而且应该成为评估脆弱性构成的风险和确定优先级时使用的风险因素之一,这就是为什么我们决定逐步将它添加到我们的漏洞数据中。 

展望未来,UniSCA正在研究一种新的风险评估模式,该模式将纳入一个更加详细和全面的风险评估模式。这一模式将包括CVSS和EPSS,但也包括一长串额外的背景风险因素,这些因素共同说明漏洞被利用的可能性以及一旦确实被利用时的影响,从而提供一个更加全面和基于风险的优先排序和问题管理办法。 

原文链接:EPSS

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/157879.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt无边框设计

//指定窗口为无边框 this->setWindowFlags(Qt::FramelessWindowHint | Qt::WindowMinMaxButtonsHint);重写鼠标事件: void mousePressEvent(QMouseEvent* event) override;

Python算法——树的路径和算法

Python算法——树的路径和算法 树的路径和算法是一种在树结构中寻找从根节点到叶节点的所有路径,其路径上的节点值之和等于给定目标值的算法。这种算法可以用Python语言实现,本文将介绍如何使用Python编写树的路径和算法,并给出一些示例代码…

事关Django的静态资源目录设置与静态资源文件引用(Django的setting.py中的三句静态资源(static)目录设置语句分别是什么作用?)

在Django的setting.py中常见的三句静态资源(static)目录设置语句如下: STATICFILES_DIRS [os.path.join(BASE_DIR, static_list)] # 注意这是一个列表,即可以有多个目录的路径 STATIC_ROOT os.path.join(BASE_DIR, static_root) STATIC_URL /static-url/本文介…

vue前端项目如何配置后端项目的请求地址

在 Vue 前端项目中配置后端项目的访问地址可以通过修改项目的配置文件来实现。Vue 常用的配置文件是 vue.config.js,你可以按照以下步骤进行配置: 在 Vue 项目的根目录下,创建或编辑 vue.config.js 文件。 在 vue.config.js 中,可…

PCS7中如何实现DB块变量的自动上传

问题:如何实现PCS7中DB块中变量的自动上传? 解答:PCS7下,所有CFC中的变量都通过编译的方式自动上传的OS项目中,针对自定义的DB块同样也可以通过设置相关属性自动上传的OS中,具体操作如下: 插入一个全局数据块。 注意:数据块号必须符合要求,可以参考PCS7中定义的预留DB…

【代数学习题4.1】从零理解范数与迹 —— 求极小多项式

从零理解范数与迹 —— 求极小多项式 写在前面概念解释题目解答 1. 极小多项式极小多项式的求法1. 对 α \alpha α 的极小多项式python求解 2. 对 α 1 \alpha 1 α1 的极小多项式python找到多项式python找到极小多项式 3. 对 α 2 α 1 \alpha^2 \alpha 1 α2α1 的…

Android : ListView + BaseAdapter-简单应用

​​容器与适配器:​​​​​ http://t.csdnimg.cn/ZfAJ7 示例图: 实体类 News.java package com.example.mylistviewbaseadapter.entity;public class News {private String title;private String content;private int img;public News(Str…

【Linux】Linux中的基本概念

Linux中的基本概念 1. 路径分隔符/2. 当前目录 .3. 返回上级目录 . .目录结构:多叉树 4. 路径5. 路径 { 绝对路径 相对路径 }6. * 通配符 指定路径下的所有文件7. 同级目录下,不允许存在同名文件,或者同名目录8. 命令的本质就是可执行文件9…

第三方模块远程注入到软件中引发软件异常的若干实战案例分享

目录 1、概述 2、老版本的输入法导致软件CPU频繁跳高(导致软件出现卡顿)的问题 3、QQ拼音输入法注入到安装包进程中,导致安装包主线程卡死问题 3.1、多线程死锁分析 3.2、进一步研究 4、安全软件注入到软件中,注入模块发生了…

什么是图神经网络

当这两种技术融合在一起时,就可以创造出一些新颖、奇妙的东西——比如手机和浏览器融合在一起,产生了智能手机。 如今,科研人员正在将人工智能发现模式的能力应用于存储各种数据点之间关系信息的大型图数据库。与此同时,就产生了…

基金项目申请撰写思路

随着社会经济发展和科技进步,基金项目对创新性的要求越来越高。申请人需要提出独特且有前瞻性的研究问题,具备突破性的科学思路和方法。因此,基金项目申请往往需要进行跨学科的技术融合。申请人需要与不同领域结合,形成多学科交叉…

FreeRTOS源码阅读笔记4--semphr.h

信号量是特殊的队列--无法存储消息的队列,相关的接口函数声明在semphr.h中,通过宏定义替换队列函数实现。 4.1创建二值信号量xSemaphoreCreateBinary() 4.1.1函数原型 queueQUEUE_TYPE_BINARY_SEMAPHORE:一个宏,表示创建队列的…

这是一棵适合搜索二叉树

🎈个人主页:🎈 :✨✨✨初阶牛✨✨✨ 🐻强烈推荐优质专栏: 🍔🍟🌯C的世界(持续更新中) 🐻推荐专栏1: 🍔🍟🌯C语言初阶 🐻推荐专栏2: 🍔…

JAVA编程思想N刷

Random 默认是系统时间,所有每次随机数都不一样。给random添加一个种子,Random(2),多次调用生成的随机数是一样的对象继承时,类加载过程。先执行父类的静态属性,执行当前类静态属性,…

单链表OJ题--9.环形链表

9.环形链表 141. 环形链表 - 力扣(LeetCode) /* 解题思路: 定义快慢指针fast,slow, 如果链表确实有环,fast指针一定会在环内追上slow指针。 */typedef struct ListNode Node; bool hasCycle(struct ListNode *head) {Node* slow …

wsl-ubuntu 系统端口总被主机端口占用问题解决

wsl-ubuntu 系统端口总被主机端口占用问题解决 0. 问题描述1. 解决方法 0. 问题描述 wsl-ubuntu 子系统中的服务,总是启动失败,错误信息是端口被占用。 用一些命令查看,被占用的端口也没有用服务启动。 1. 解决方法 运行, ne…

硬技能之上的软技巧(三)

在硬技能的基础上,如何运用软技巧来进一步提升个人能力和职业发展。在之前的讨论中,我们提到了硬技能和软技巧的基本概念,以及如何运用软技巧来提升个人能力和职业发展。本篇文章将进一步探讨软技巧中的一些重要方面,包括自我管理…

全网最全Django面试题整理(二)

什么是 Django ORM?它的作用是什么? Django ORM(Object-Relational Mapping)是Django框架中的一个重要组成部分,用于简化与数据库的交互。它提供了一种将数据库中的数据映射到Python对象的方法,使得开发者…

深信服技术认证“SCSA-S”划重点:渗透测试工具使用

为帮助大家更加系统化的学习网络安全知识,尽快通过深信服安全服务认证工程师认证,深信服推出“SCSA-S认证备考秘笈”共十期内容,“考试重点”内容框架,帮助大家快速get重点知识~ 划重点来啦 深信服安全服务认证工程师(…

【开源】基于Vue和SpringBoot的创意工坊双创管理系统

项目编号: S 049 ,文末获取源码。 \color{red}{项目编号:S049,文末获取源码。} 项目编号:S049,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 管理员端2.2 Web 端2.3 移动端 三、…