mirror of
https://github.com/fkie-cad/nvd-json-data-feeds.git
synced 2025-07-11 16:13:34 +00:00
192 lines
7.8 KiB
Markdown
192 lines
7.8 KiB
Markdown
# nvd-json-data-feeds
|
|
|
|
Community reconstruction of the soon-to-be deprecated JSON NVD Data Feeds.
|
|
[Releases](https://github.com/fkie-cad/nvd-json-data-feeds/releases/latest) each day at 00:00 AM UTC.
|
|
Repository synchronizes with the NVD every 2 hours.
|
|
|
|
## Repository at a Glance
|
|
|
|
### Last Repository Update
|
|
|
|
```plain
|
|
2023-06-20T22:00:27.192145+00:00
|
|
```
|
|
|
|
### Most recent CVE Modification Timestamp synchronized with NVD
|
|
|
|
```plain
|
|
2023-06-20T21:22:02.110000+00:00
|
|
```
|
|
|
|
### Last Data Feed Release
|
|
|
|
Download and Changelog: [Click](https://github.com/fkie-cad/nvd-json-data-feeds/releases/latest)
|
|
|
|
```plain
|
|
2023-06-20T00:00:13.608301+00:00
|
|
```
|
|
|
|
### Total Number of included CVEs
|
|
|
|
```plain
|
|
218171
|
|
```
|
|
|
|
### CVEs added in the last Commit
|
|
|
|
Recently added CVEs: `6`
|
|
|
|
* [CVE-2023-32274](CVE-2023/CVE-2023-322xx/CVE-2023-32274.json) (`2023-06-20T20:15:09.413`)
|
|
* [CVE-2023-33869](CVE-2023/CVE-2023-338xx/CVE-2023-33869.json) (`2023-06-20T20:15:09.493`)
|
|
* [CVE-2023-35166](CVE-2023/CVE-2023-351xx/CVE-2023-35166.json) (`2023-06-20T20:15:09.563`)
|
|
* [CVE-2023-35885](CVE-2023/CVE-2023-358xx/CVE-2023-35885.json) (`2023-06-20T20:15:09.687`)
|
|
* [CVE-2023-3220](CVE-2023/CVE-2023-32xx/CVE-2023-3220.json) (`2023-06-20T20:15:09.737`)
|
|
* [CVE-2023-34563](CVE-2023/CVE-2023-345xx/CVE-2023-34563.json) (`2023-06-20T21:15:09.883`)
|
|
|
|
|
|
### CVEs modified in the last Commit
|
|
|
|
Recently modified CVEs: `33`
|
|
|
|
* [CVE-2023-32010](CVE-2023/CVE-2023-320xx/CVE-2023-32010.json) (`2023-06-20T20:20:49.773`)
|
|
* [CVE-2023-32009](CVE-2023/CVE-2023-320xx/CVE-2023-32009.json) (`2023-06-20T20:25:14.137`)
|
|
* [CVE-2023-32008](CVE-2023/CVE-2023-320xx/CVE-2023-32008.json) (`2023-06-20T20:27:01.550`)
|
|
* [CVE-2023-29373](CVE-2023/CVE-2023-293xx/CVE-2023-29373.json) (`2023-06-20T20:27:52.463`)
|
|
* [CVE-2023-29371](CVE-2023/CVE-2023-293xx/CVE-2023-29371.json) (`2023-06-20T20:28:47.430`)
|
|
* [CVE-2023-3159](CVE-2023/CVE-2023-31xx/CVE-2023-3159.json) (`2023-06-20T20:29:24.710`)
|
|
* [CVE-2023-29370](CVE-2023/CVE-2023-293xx/CVE-2023-29370.json) (`2023-06-20T20:30:08.680`)
|
|
* [CVE-2023-29372](CVE-2023/CVE-2023-293xx/CVE-2023-29372.json) (`2023-06-20T20:34:25.470`)
|
|
* [CVE-2023-29358](CVE-2023/CVE-2023-293xx/CVE-2023-29358.json) (`2023-06-20T20:34:44.957`)
|
|
* [CVE-2023-29357](CVE-2023/CVE-2023-293xx/CVE-2023-29357.json) (`2023-06-20T20:35:11.730`)
|
|
* [CVE-2023-3203](CVE-2023/CVE-2023-32xx/CVE-2023-3203.json) (`2023-06-20T20:39:12.493`)
|
|
* [CVE-2023-3201](CVE-2023/CVE-2023-32xx/CVE-2023-3201.json) (`2023-06-20T20:39:44.083`)
|
|
* [CVE-2023-3200](CVE-2023/CVE-2023-32xx/CVE-2023-3200.json) (`2023-06-20T20:40:07.300`)
|
|
* [CVE-2023-3198](CVE-2023/CVE-2023-31xx/CVE-2023-3198.json) (`2023-06-20T20:40:27.623`)
|
|
* [CVE-2023-29355](CVE-2023/CVE-2023-293xx/CVE-2023-29355.json) (`2023-06-20T20:48:16.660`)
|
|
* [CVE-2023-3047](CVE-2023/CVE-2023-30xx/CVE-2023-3047.json) (`2023-06-20T20:48:20.030`)
|
|
* [CVE-2023-29353](CVE-2023/CVE-2023-293xx/CVE-2023-29353.json) (`2023-06-20T20:48:59.790`)
|
|
* [CVE-2023-28620](CVE-2023/CVE-2023-286xx/CVE-2023-28620.json) (`2023-06-20T20:54:26.943`)
|
|
* [CVE-2023-32020](CVE-2023/CVE-2023-320xx/CVE-2023-32020.json) (`2023-06-20T21:02:38.020`)
|
|
* [CVE-2023-29352](CVE-2023/CVE-2023-293xx/CVE-2023-29352.json) (`2023-06-20T21:05:34.610`)
|
|
* [CVE-2023-29351](CVE-2023/CVE-2023-293xx/CVE-2023-29351.json) (`2023-06-20T21:13:19.193`)
|
|
* [CVE-2023-29346](CVE-2023/CVE-2023-293xx/CVE-2023-29346.json) (`2023-06-20T21:19:38.503`)
|
|
* [CVE-2023-24938](CVE-2023/CVE-2023-249xx/CVE-2023-24938.json) (`2023-06-20T21:21:33.567`)
|
|
* [CVE-2023-21569](CVE-2023/CVE-2023-215xx/CVE-2023-21569.json) (`2023-06-20T21:21:52.057`)
|
|
* [CVE-2023-21565](CVE-2023/CVE-2023-215xx/CVE-2023-21565.json) (`2023-06-20T21:22:02.110`)
|
|
|
|
|
|
## Download and Usage
|
|
|
|
There are several ways you can work with the data in this repository:
|
|
|
|
### 1) Release Data Feed Packages
|
|
|
|
The most straightforward approach is to obtain the latest Data Feed release packages [here](https://github.com/fkie-cad/nvd-json-data-feeds/releases/latest).
|
|
|
|
Each day at 00:00 AM UTC we package and upload JSON files that aim to reconstruct the legacy NVD CVE Data Feeds.
|
|
Those are aggregated by the `year` part of the CVE identifier:
|
|
|
|
```
|
|
# CVE-<YEAR>.json
|
|
CVE-1999.json
|
|
CVE-2001.json
|
|
CVE-2002.json
|
|
CVE-2003.json
|
|
[...]
|
|
CVE-2023.json
|
|
```
|
|
|
|
We also upload the well-known `Recent` and `Modified` feeds.
|
|
Furthermore, we provide the `All` feed, which contains a recent snapshot of all NVD records.
|
|
Once your local copy is synchronized and the last synchronization is no older than 8 days, you can rely on these to stay up to date:
|
|
|
|
```plain
|
|
CVE-Recent.json # CVEs that were added in the previous eight days
|
|
CVE-Modified.json # CVEs that were modified or added in the previous eight days
|
|
```
|
|
|
|
Note that all feeds are distributed in `xz`-compressed format to save storage and bandwidth.
|
|
For decompression execute:
|
|
|
|
```sh
|
|
xz -d -k <feed>.json.xz
|
|
```
|
|
|
|
|
|
#### Automation using Release Data Feed Packages
|
|
|
|
You can fetch the latest releases for each package with the following static link layout:
|
|
|
|
```sh
|
|
https://github.com/fkie-cad/nvd-json-data-feeds/releases/latest/download/CVE-<YEAR>.json.xz
|
|
```
|
|
|
|
Example:
|
|
|
|
```sh
|
|
wget https://github.com/fkie-cad/nvd-json-data-feeds/releases/latest/download/CVE-2023.json.xz
|
|
xz -d -k CVE-2023.json.xz
|
|
```
|
|
|
|
### 2) Clone the Repository (with Git History)
|
|
|
|
As you can see by browsing this repository, there is a slight difference between the release packages format and the repository folder structure.
|
|
This is because we want to maintain explorability of the dataset.
|
|
|
|
Each CVE gets its own JSON file, e.g., `CVE-1999-0001.json`.
|
|
Here, each file is put into a folder layout that first sorts by CVE `year` identifier part and then by `number` part.
|
|
We mask (`xx`) the last two digits to create easily navigable folders that hold a maximum of 100 CVE JSON files:
|
|
|
|
```plain
|
|
.
|
|
├── CVE-1999
|
|
│ ├── CVE-1999-00xx
|
|
│ │ ├── CVE-1999-0001.json
|
|
│ │ ├── CVE-1999-0002.json
|
|
│ │ └── [...]
|
|
│ ├── CVE-1999-01xx
|
|
│ │ ├── CVE-1999-0101.json
|
|
│ │ └── [...]
|
|
│ └── [...]
|
|
├── CVE-2000
|
|
│ ├── CVE-2000-00xx
|
|
│ ├── CVE-2000-01xx
|
|
│ └── [...]
|
|
└── [...]
|
|
```
|
|
|
|
A byproduct of managing and continuously updating this dataset via Git is that we can track changes over time through the Git history.
|
|
|
|
If you are interested in having the NVD data as organized above, including the historical data of changes, just clone this repository (large!):
|
|
|
|
```sh
|
|
git clone https://github.com/fkie-cad/nvd-json-data-feeds.git
|
|
```
|
|
|
|
### 3) Clone the Repository (without Git History)
|
|
|
|
Don't need the history? Then create a shallow copy:
|
|
|
|
```sh
|
|
git clone --depth 1 -b main https://github.com/fkie-cad/nvd-json-data-feeds.git
|
|
```
|
|
|
|
## Motivation
|
|
|
|
As of September 2023, the NIST will retire all [JSON-based NVD Data Feeds](https://nvd.nist.gov/vuln/data-feeds#divRetirementBanner-1).
|
|
The new [NVD CVE API 2.0](https://nvd.nist.gov/developers/vulnerabilities) is, without a doubt, a great way to obtain CVE information.
|
|
However, we from [Fraunhofer FKIE - Cyber Analysis and Defense](https://www.fkie.fraunhofer.de/en/departments/cad.html) believe that the API does not cover a variety of use cases.
|
|
|
|
The legacy NVD Data Feeds provided a convenient way to quickly obtain a complete, file-based offline database snapshot; just download the `CVE-<YEAR>.tar.gz`, decompress it, and use it as you please, e.g.:
|
|
|
|
* Put the JSON feed into a document-based database and quickly leverage upon that data in your software project, ...
|
|
* Parse and analyze it using your favorite programming language, ...
|
|
* Put it on a USB stick and transfer it to a system without internet access, or ...
|
|
* Query the file using `jq`!
|
|
|
|
Unfortunately, the new NVD API 2.0 adds complexity to this process.
|
|
We want to preserve ease of use by reconstructing these data sources.
|
|
|
|
## Non-Endorsement Clause
|
|
|
|
This project uses and redistributes data from the NVD API but is not endorsed or certified by the NVD. |