通用漏洞评分系统 (CVSS) 是一个免费开放的行业标准,用于评估计算机系统安全漏洞的严重程度。
漏洞利用预测评分系统 (EPSS) 估计软件漏洞在现实中被利用的可能性。
CISA 发布了一份已知被利用漏洞的列表。
该项目从这三个来源下载信息,并将它们合并到一个列表中。
扫描器会显示 CVE 编号和 CVSS 评分,但通常不会导出完整详细信息,例如“利用性评分”或“是否需要用户交互”。通过添加 EPSS 评分,您有更多选择来决定首先处理哪些漏洞,并根据对您环境有意义的阈值进行筛选。
您可以使用这些信息来丰富您的漏洞扫描器(如 OpenVAS)提供的信息,以优先进行修复。
您可以使用像 PowerBI 这样的工具将漏洞扫描器的结果与该仓库中脚本下载的信息结合起来。
下载后,所需信息将被提取、格式化,并生成输出文件。
CVSS、EPSS 以及包含所有 CVE 信息的合并文件都将可用。输出格式有 JSON 和 CSV。
此外,信息还会被导入到 SQLite 数据库中。
目标不是性能或效率。
相反,脚本编写得很简单。通过多个步骤使其更易于理解和追踪。中间步骤的文件会写入磁盘,以便您更容易根据需求调整命令。
它仅使用 bash、jq 和 sqlite3,非常适合初学者,并演示了 jq 的用法。
该仓库包含一个演示文件夹,其中有一个 PowerBI 模板文件。它会生成一个仪表板,您可以根据需要进行调整。

OpenVAS 报告必须采用 CSV 格式才能导入。

PowerBI 将使用生成的 CVE.json 文件并创建关系:

您可以免费从 https://aka.ms/pbiSingleInstaller 下载 PowerBI,并且无需 Microsoft 帐户即可使用。
您可以等待 cron 按计划执行下载脚本。
或者,您可以通过运行以下命令手动执行下载脚本:
docker exec -it vulnerability-tables-cron bash /opt/scripts/download.sh
有三个 Docker 容器。
cron 容器每周(周一 06:00)下载一次信息,并将文件存储在输出目录中。
它使用 curl 和 wget 下载文件。使用 jq 处理 JSON 数据。
filebeat 容器读取 JSON 文件并将其转发到 logstash 容器。
logstash 容器可用于发送到 OpenSearch 实例、上传到 Azure Log Analytics 或其他支持的输出。
Filebeat 和 logstash 是可选的,仅为了方便而包含。
将生成多个输出文件。以下是一个估算:
316K CISA_known_exploited.csv
452K CISA_known_exploited.json
50M CVSS.csv
179M CVSS.json
206M CVE.json
56M CVE.csv
6.7M EPSS.csv
12M EPSS.json
49M database.sqlite
每个 CVE 您都可以获得以下信息:
grep -i 'CVE-2021-44228' CVE.json | jq
{
"CVE": "CVE-2021-44228",
"CVSS2_accessComplexity": "AV:N/AC:M/Au:N/C:C/I:C/A:C",
"CVSS2_accessVector": "NETWORK",
"CVSS2_authentication": "MEDIUM",
"CVSS2_availabilityImpact": "NONE",
"CVSS2_baseScore": "COMPLETE",
"CVSS2_baseSeverity": "COMPLETE",
"CVSS2_confidentialityImpact": "COMPLETE",
"CVSS2_exploitabilityScore": "9.3",
"CVSS2_impactScore": "null",
"CVSS2_integrityImpact": "8.6",
"CVSS2_vectorString": "10",
"CVSS3_attackComplexity": "null",
"CVSS3_attackVector": "null",
"CVSS3_availabilityImpact": "null",
"CVSS3_baseScore": "null",
"CVSS3_baseSeverity": "null",
"CVSS3_confidentialityImpact": "null",
"CVSS3_exploitabilityScore": "null",
"CVSS3_impactScore": "null",
"CVSS3_integrityImpact": "null",
"CVSS3_privilegesRequired": "null",
"CVSS3_scope": "null",
"CVSS3_userInteraction": "null",
"CVSS3_vectorString": "null",
"CVSS3_acInsufInfo": "null",
"CVSS3_obtainAllPrivilege": "null",
"CVSS3_obtainUserPrivilege": "null",
"CVSS3_obtainOtherPrivilege": "null",
"CVSS3_userInteractionRequired": "null",
"EPSS": "0.97095",
"EPSS_Percentile": "0.99998",
"CISA_dateAdded": "2021-12-10",
"CISA_RequiredAction": "For all affected software assets for which updates exist, the only acceptable remediation actions are: 1) Apply updates; OR 2) remove affected assets from agency networks. Temporary mitigations using one of the measures provided at https://www.cisa.gov/uscert/ed-22-02-apache-log4j-recommended-mitigation-measures are only acceptable until updates are available."
}