OpenCVE:一款自动收集NVD、MITRE等多源知名漏洞库的开源工具,累计收录CVE 27万+

漏洞库在企业中扮演着至关重要的角色,不仅提升了企业的安全防护能力,还支持了安全决策、合规性要求的满足以及智能化管理的发展。前期博文《业界十大知名权威安全漏洞库介绍》介绍了主流漏洞库,今天给大家介绍一款集成了多款漏洞库的开源漏洞预警平台。

1. 什么是OpenCVE

OpenCVE是一个开源项目,旨在帮助用户跟踪和管理其软件和系统中的安全漏洞。它的核心原理是通过集成多个漏洞数据库,自动化地收集和更新漏洞信息,并允许我们根据各种条件搜索、过滤和组织他们,从而为用户提供实时的安全态势感知。

OpenCVE漏洞界面

我在写这篇文章时,OpenCVE刚好完成了v2版本的发布,这个新版本是对v1的完全重构,具有新的技术栈、增强的功能和改进的可扩展性。相比v1版本,主要变化点如下:

  • 升级的技术栈:从Flask过渡到Django,从Celery过渡到Airflow,实现了强大的可扩展性和工作流编排。
  • 组织和项目:引入了对组织和项目的支持,以帮助隔离订阅(供应商和产品)并更有效地组织通知。
  • Webhook集成:添加了Webhook支持,将OpenCVE通知集成到外部系统和工作流中。
  • 增强的漏洞源:将CVE更新与MITRE、NVD、RedHat和VulnEnrichment的丰富数据进行交叉引用,提供全面和最新的漏洞见解。

截止2024.12.15,OpenCVE已经收录了27.3W+个CVE漏洞。

项目地址

https://github.com/opencve/opencve

项目网站

https://www.opencve.io/

2. OpenCVE主要功能介绍

通过多源漏洞库集成、漏洞监控及API支持,OpenCVE可帮助组织提高对安全漏洞的响应速度,降低其潜在的安全风险。

2.1. 漏洞监控

用户可以通过OpenCVE按供应商或产品来监控特定软件或库的漏洞,系统会自动通知用户相关的安全更新和漏洞信息,这些通知可以通过电子邮件或Webhook发送。

邮件订阅

2.2. 集成多源数据

OpenCVE交叉引用来自多个可靠来源的信息,如MITRE、Vulnrichment、NVD和RedHat。这确保了漏洞数据保持准确和最新,即使其中一个源暂时不可用,也不影响整个流程。

漏洞元数据界面

2.3. 自定义配置

用户可以根据自己的需求自定义监控的项目和接收通知的方式,灵活适应不同的安全管理策略。

自定义配置

2.4. API支持

OpenCVE提供API接口,方便开发者将其集成到其他安全管理工具中,提升整体的安全防护能力。

比如,如下为获取CVE列表的接口

$ curl -u username:password https://app.opencve.io/api/cve?page=10
{
  "count": 262939,
  "next": "https://app.opencve.io/api/cve?page=11",
  "previous": "https://app.opencve.io/api/cve?page=9",
  "results": [
    ...
  ]
}

要想了解更多接口的调用方式,可能参阅官网https://docs.opencve.io/api/。

3. 如何使用OpenCVE

大家可以根据自身情况选择如下两种使用方式:

  • 自托管:可以使用Docker在自己的服务器上安装和配置OpenCVE,这种方式提供了对实例的完全控制;
  • SaaS版本:或者可以使用OpenCVE的免费SaaS版本,网址为https://www.opencve.io。此选项不需要设置,可以开箱即用,需要在平台注册账户方可使用更多功能。

4. 如何搭建私有化OpenCVE

克隆OpenCVE存储库并进入docker目录,然后运行 install.sh 脚本:

git clone https://github.com/opencve/opencve.git
cd docker
./install.sh

启动OpenCVE

它将准备环境并运行OpenCVE所需的所有服务。由于依赖的组件较多,需求实时联网下载依赖文件,整个安装启动过程耗时约30min。

安装完成

安装完成后可以用默认的密码登录。

默认密码信息

比如,我们可以登录到Airflow(OpenCVE利用其进行漏洞源采集)的后台查看漏洞采集的任务信息。

Airflow后台

Airflow是一个可编程,调度和监控的开源工作流平台,基于有向无环图(DAG),Airflow可以定义一组有依赖的任务,按照依赖依次执行。


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

《Redis设计与实现》读书笔记-客户端

目录 1.Client简介 2.客户端属性 1)(本文重点)比较通用的属性 2)(后续分享)另外一类是和特定功能相关的属性 2.1套接字文件描述符 2.2名字 2.3标志(flag) 2.4输入缓冲区 2.…

Oracle Database 21c Express Edition数据库 和 Sqlplus客户端安装配置

目录 一. 前置条件二. Win10安装配置Oracle数据库2.1 数据库获取2.2 数据库安装2.3 数据库配置确认2.4 数据库访问 三. Win10配置Oracle数据库可对外访问3.1 打开文件和打印机共享3.2 开放1521端口 四. 端口与地址确认4.1 查看监听器的状态4.2 Win10查看1521端口是否被监听4.3 …

10篇--图像噪点消除

概念 何为噪点? 噪点:指图像收到的一些干扰因素,通常是由图像采集设备、传输信道等因素造成的,表现为图像中随机的亮度,也可以理解为有那么一些点的像素值与周围的像素值格格不入。 常见的噪声类型 高斯噪声&#…

【开源免费】基于Vue和SpringBoot的渔具租赁系统(附论文)

本文项目编号 T 005 ,文末自助获取源码 \color{red}{T005,文末自助获取源码} T005,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 渔…

Linux网络基础-----传输层UDP协议

目录 端口号: 查询各类服务的端口号 加深理解端口号: UDP协议 UDP协议特点: 关于缓冲区: 内核层面理解UDP报文 端口号: 知名端口号:0 ~ 1023:被HTTP、SSH等应用层协议广泛使用的端口号&…

XXE靶场

XXE-lab 靶场 靶场网址&#xff1a;http://172.16.0.87/ 第一步我们看到网站有登录框我们试着用 bp 去抓一下包 将抓到的包发到重放器中 然后我们构建palody <!DOCTYPE foo [ <!ENTITY xxe SYSTEM "php://filter/readconvert.base64-encode/resourceC:/flag/fla…

ubuntu+ros新手笔记(三):21讲没讲到的MoveIt2

1 安装MoveIt2 安装参照在ROS2中&#xff0c;通过MoveIt2控制Gazebo中的自定义机械手 安装 MoveIt2可以选择自己编译源码安装&#xff0c;或者直接从二进制安装。 个人建议直接二进制安装&#xff0c;可以省很多事。 sudo apt install ros-humble-moveitmoveit-setup-assistan…

运维 mysql、redis 、RocketMQ性能排查

MySQL查看数据库连接数 1. SHOW STATUS命令-查询当前的连接数 MySQL 提供了一个 SHOW STATUS 命令&#xff0c;可以用来查看服务器的状态信息&#xff0c;包括当前的连接数。 SHOW STATUS LIKE Threads_connected;这个命令会返回当前连接到服务器的线程数&#xff0c;即当前…

jmeter连接mysql

查询mysql数据库版本 SELECT VERSION(); 下载jmeter mysql 驱动jar包&#xff0c;版本低于mysql版本&#xff0c;放在jmeter的lib 路径下 MySQL :: Download MySQL Connector/J (Archived Versions) 添加JDBC Connection Configuration 填写 variable name 及数据库信息 注意…

Docker的容器

目录 1. 什么是容器&#xff1f;2. 容器的生命周期2.1 容器处理OOM事件2.2 容器异常退出2.3 容器暂停 3. 容器命令详解3.1 容器命令清单3.2 docker create命令3.3 docker run命令3.4 docker ps命令3.5 docker logs命令3.6 docker attach命令3.7 docker exec命令3.8 docker stat…

JAVA题目笔记(二十六)反射

一、保存信息 Student类&#xff1a; package testpackage;import java.io.IOException;public class Student {private String name;private String area;public String testfield;private int age;public Student() {}public Student(String name, String area, int age) {t…

python 配置 oracle instant client

1.问题描述 想用python连接oracle数据库&#xff0c;百度得知需要cx_Oracle这个第三方库 import cx_Oracle# 设置Oracle数据源名称 dsn cx_Oracle.makedsn(host, port, service_nameservice_name)# 创建数据库连接 connection cx_Oracle.connect(userusername, passwordpas…

皮肤伤口分割数据集labelme格式248张5类别

数据集格式&#xff1a;labelme格式(不包含mask文件&#xff0c;仅仅包含jpg图片和对应的json文件) 图片数量(jpg文件个数)&#xff1a;284 标注数量(json文件个数)&#xff1a;284 标注类别数&#xff1a;5 标注类别名称:["bruises","burns","cu…

Ollama配置与webUI本地部署-学习记录

Ollama 前言一、Ollama的下载与安装设置(windows)1.下载2.安装与配置1.查看环境变量&#xff1a;2.设置环境变量&#xff1a;3.设置变量 二、使用步骤1.查找模型2.使用Ollama1.下载模型2.使用 三、WebUI部署WebUI 总结 前言 Ollama是一款可以开始使用本地的大型语言模型。启动…

vscode不同项目使用不同插件

转载请注明出处&#xff1a;小帆的帆的博客 在使用vscode开发不同项目时可能会用到不同的插件。手动管理不够优雅&#xff0c;本文介绍使用Profiles的方式的来管理不同项目的插件。 手动管理不同项目的插件 本来vscode安装了有三个插件 这时需要新建一个项目&#xff0c;新…

数据结构 ——前缀树查词典的实现

数据结构 ——前缀树查词典的实现 一、前缀树的概念 前缀树是一种多叉树结构&#xff0c;主要用于存储字符串。每个节点代表一个字符&#xff0c;路径从根节点到叶节点表示一个完整的字符串。前缀树的关键特征是 共享前缀&#xff0c;也就是说&#xff0c;如果两个字符串有相…

H5 中 van-popup 的使用以及题目的切换

H5 中 van-popup 的使用以及题目的切换 在移动端开发中&#xff0c;弹窗组件是一个常见的需求。vant 是一个轻量、可靠的移动端 Vue 组件库&#xff0c;其中的 van-popup 组件可以方便地实现弹窗效果。本文将介绍如何使用 van-popup 实现题目详情的弹窗展示&#xff0c;并实现…

leetcode 36.有效的数独

1.题目要求: 2.题目步骤: 写好判断函数 3.题目代码: class Solution { public:bool isvalid(vector<vector<char>>& board,char num,int row,int col){//先找左下标int leftrow row - 1;while(leftrow > 0){if(board[leftrow][col] num){return fals…

ElasticSearch中的深度分页问题

在使用 ElasticSearch 进行搜索时&#xff0c;很多小伙伴会遇到“深度分页”问题。当需要获取大量的分页数据时&#xff0c;查询性能会急剧下降&#xff0c;甚至导致集群负载过高。这篇文章将深入剖析 ElasticSearch 深度分页的成因、危害&#xff0c;并提供一些常用的优化方案…

Eureka学习笔记-服务端

Eureka学习笔记 服务端 模块设计 Resources &#xff1a;这部分对外暴露了一系列的 Restful 接口。Eureka Client 的注册、心跳、获取服务列表等操作都需要调用这些接口。另外&#xff0c;其他的 Server 在同步 Registry 时也需要调用这些接口。Controller &#xff1a;这里提…