2023-04-27 15:02:47 +02:00
# nvd-json-data-feeds
2023-04-24 14:55:30 +02:00
2023-12-15 13:00:27 +00:00
Community reconstruction of the deprecated JSON NVD Data Feeds.
2023-05-17 08:57:59 +00:00
[Releases ](https://github.com/fkie-cad/nvd-json-data-feeds/releases/latest ) each day at 00:00 AM UTC.
2023-04-27 16:00:24 +02:00
Repository synchronizes with the NVD every 2 hours.
2023-04-24 14:55:30 +02:00
2023-04-27 16:00:24 +02:00
## Repository at a Glance
2023-04-24 14:55:30 +02:00
2023-04-27 16:00:24 +02:00
### Last Repository Update
2023-04-24 14:55:30 +02:00
```plain
2023-12-21 23:00:28 +00:00
2023-12-21T23:00:25.161980+00:00
2023-04-24 14:55:30 +02:00
```
2023-04-27 16:00:24 +02:00
### Most recent CVE Modification Timestamp synchronized with NVD
2023-04-24 14:55:30 +02:00
```plain
2023-12-21 23:00:28 +00:00
2023-12-21T22:15:15.773000+00:00
2023-04-24 14:55:30 +02:00
```
2023-04-27 16:00:24 +02:00
### Last Data Feed Release
2023-04-24 14:55:30 +02:00
2023-05-17 08:57:59 +00:00
Download and Changelog: [Click ](https://github.com/fkie-cad/nvd-json-data-feeds/releases/latest )
2023-04-24 14:55:30 +02:00
```plain
2023-12-21 17:00:28 +00:00
2023-12-21T15:02:34.756081+00:00
2023-04-24 14:55:30 +02:00
```
2023-04-27 16:00:24 +02:00
### Total Number of included CVEs
2023-04-24 14:55:30 +02:00
2023-04-27 15:02:47 +02:00
```plain
2023-12-21 23:00:28 +00:00
234038
2023-04-24 14:55:30 +02:00
```
2023-04-27 16:00:24 +02:00
### CVEs added in the last Commit
2023-04-24 14:55:30 +02:00
2023-12-21 23:00:28 +00:00
Recently added CVEs: `31`
* [CVE-2023-48685 ](CVE-2023/CVE-2023-486xx/CVE-2023-48685.json ) (`2023-12-21T21:15:09.867` )
* [CVE-2023-48686 ](CVE-2023/CVE-2023-486xx/CVE-2023-48686.json ) (`2023-12-21T21:15:10.200` )
* [CVE-2023-48687 ](CVE-2023/CVE-2023-486xx/CVE-2023-48687.json ) (`2023-12-21T21:15:10.507` )
* [CVE-2023-48688 ](CVE-2023/CVE-2023-486xx/CVE-2023-48688.json ) (`2023-12-21T21:15:10.830` )
* [CVE-2023-48689 ](CVE-2023/CVE-2023-486xx/CVE-2023-48689.json ) (`2023-12-21T21:15:11.130` )
* [CVE-2023-48690 ](CVE-2023/CVE-2023-486xx/CVE-2023-48690.json ) (`2023-12-21T21:15:11.437` )
* [CVE-2023-48716 ](CVE-2023/CVE-2023-487xx/CVE-2023-48716.json ) (`2023-12-21T21:15:11.710` )
* [CVE-2023-48717 ](CVE-2023/CVE-2023-487xx/CVE-2023-48717.json ) (`2023-12-21T21:15:12.013` )
* [CVE-2023-48718 ](CVE-2023/CVE-2023-487xx/CVE-2023-48718.json ) (`2023-12-21T21:15:12.297` )
* [CVE-2023-48719 ](CVE-2023/CVE-2023-487xx/CVE-2023-48719.json ) (`2023-12-21T21:15:12.590` )
* [CVE-2023-48720 ](CVE-2023/CVE-2023-487xx/CVE-2023-48720.json ) (`2023-12-21T21:15:12.870` )
* [CVE-2023-48722 ](CVE-2023/CVE-2023-487xx/CVE-2023-48722.json ) (`2023-12-21T21:15:13.160` )
* [CVE-2023-51379 ](CVE-2023/CVE-2023-513xx/CVE-2023-51379.json ) (`2023-12-21T21:15:13.480` )
* [CVE-2023-51380 ](CVE-2023/CVE-2023-513xx/CVE-2023-51380.json ) (`2023-12-21T21:15:13.757` )
* [CVE-2023-6690 ](CVE-2023/CVE-2023-66xx/CVE-2023-6690.json ) (`2023-12-21T21:15:14.053` )
* [CVE-2023-6746 ](CVE-2023/CVE-2023-67xx/CVE-2023-6746.json ) (`2023-12-21T21:15:14.303` )
* [CVE-2023-6802 ](CVE-2023/CVE-2023-68xx/CVE-2023-6802.json ) (`2023-12-21T21:15:14.570` )
* [CVE-2023-6803 ](CVE-2023/CVE-2023-68xx/CVE-2023-6803.json ) (`2023-12-21T21:15:14.800` )
* [CVE-2023-6804 ](CVE-2023/CVE-2023-68xx/CVE-2023-6804.json ) (`2023-12-21T21:15:15.020` )
* [CVE-2023-6847 ](CVE-2023/CVE-2023-68xx/CVE-2023-6847.json ) (`2023-12-21T21:15:15.340` )
* [CVE-2023-27319 ](CVE-2023/CVE-2023-273xx/CVE-2023-27319.json ) (`2023-12-21T22:15:13.100` )
* [CVE-2023-37519 ](CVE-2023/CVE-2023-375xx/CVE-2023-37519.json ) (`2023-12-21T22:15:13.930` )
* [CVE-2023-48723 ](CVE-2023/CVE-2023-487xx/CVE-2023-48723.json ) (`2023-12-21T22:15:14.823` )
* [CVE-2023-7050 ](CVE-2023/CVE-2023-70xx/CVE-2023-7050.json ) (`2023-12-21T22:15:15.397` )
* [CVE-2023-7051 ](CVE-2023/CVE-2023-70xx/CVE-2023-7051.json ) (`2023-12-21T22:15:15.773` )
2023-12-15 00:55:29 +00:00
2023-12-18 23:00:28 +00:00
2023-12-20 03:00:29 +00:00
### CVEs modified in the last Commit
2023-12-19 23:00:27 +00:00
2023-12-21 23:00:28 +00:00
Recently modified CVEs: `28`
* [CVE-2022-27218 ](CVE-2022/CVE-2022-272xx/CVE-2022-27218.json ) (`2023-12-21T21:53:32.773` )
* [CVE-2022-28135 ](CVE-2022/CVE-2022-281xx/CVE-2022-28135.json ) (`2023-12-21T21:53:55.317` )
* [CVE-2022-27208 ](CVE-2022/CVE-2022-272xx/CVE-2022-27208.json ) (`2023-12-21T21:53:59.197` )
* [CVE-2022-27212 ](CVE-2022/CVE-2022-272xx/CVE-2022-27212.json ) (`2023-12-21T21:54:02.937` )
* [CVE-2022-29044 ](CVE-2022/CVE-2022-290xx/CVE-2022-29044.json ) (`2023-12-21T21:54:07.530` )
* [CVE-2022-30945 ](CVE-2022/CVE-2022-309xx/CVE-2022-30945.json ) (`2023-12-21T21:54:14.583` )
* [CVE-2022-25183 ](CVE-2022/CVE-2022-251xx/CVE-2022-25183.json ) (`2023-12-21T21:54:23.297` )
* [CVE-2022-29047 ](CVE-2022/CVE-2022-290xx/CVE-2022-29047.json ) (`2023-12-21T21:54:31.177` )
* [CVE-2022-29045 ](CVE-2022/CVE-2022-290xx/CVE-2022-29045.json ) (`2023-12-21T21:54:37.523` )
* [CVE-2022-29049 ](CVE-2022/CVE-2022-290xx/CVE-2022-29049.json ) (`2023-12-21T21:54:41.677` )
* [CVE-2022-30949 ](CVE-2022/CVE-2022-309xx/CVE-2022-30949.json ) (`2023-12-21T21:54:57.407` )
* [CVE-2022-27217 ](CVE-2022/CVE-2022-272xx/CVE-2022-27217.json ) (`2023-12-21T21:55:10.330` )
* [CVE-2022-3172 ](CVE-2022/CVE-2022-31xx/CVE-2022-3172.json ) (`2023-12-21T22:15:08.130` )
* [CVE-2023-38140 ](CVE-2023/CVE-2023-381xx/CVE-2023-38140.json ) (`2023-12-21T21:49:53.360` )
* [CVE-2023-36803 ](CVE-2023/CVE-2023-368xx/CVE-2023-36803.json ) (`2023-12-21T21:49:57.347` )
* [CVE-2023-1194 ](CVE-2023/CVE-2023-11xx/CVE-2023-1194.json ) (`2023-12-21T22:15:08.460` )
* [CVE-2023-22329 ](CVE-2023/CVE-2023-223xx/CVE-2023-22329.json ) (`2023-12-21T22:15:08.750` )
* [CVE-2023-25756 ](CVE-2023/CVE-2023-257xx/CVE-2023-25756.json ) (`2023-12-21T22:15:11.410` )
* [CVE-2023-28376 ](CVE-2023/CVE-2023-283xx/CVE-2023-28376.json ) (`2023-12-21T22:15:13.493` )
* [CVE-2023-34055 ](CVE-2023/CVE-2023-340xx/CVE-2023-34055.json ) (`2023-12-21T22:15:13.760` )
* [CVE-2023-3893 ](CVE-2023/CVE-2023-38xx/CVE-2023-3893.json ) (`2023-12-21T22:15:14.160` )
* [CVE-2023-3955 ](CVE-2023/CVE-2023-39xx/CVE-2023-3955.json ) (`2023-12-21T22:15:14.280` )
* [CVE-2023-41993 ](CVE-2023/CVE-2023-419xx/CVE-2023-41993.json ) (`2023-12-21T22:15:14.453` )
* [CVE-2023-43665 ](CVE-2023/CVE-2023-436xx/CVE-2023-43665.json ) (`2023-12-21T22:15:14.690` )
* [CVE-2023-4809 ](CVE-2023/CVE-2023-48xx/CVE-2023-4809.json ) (`2023-12-21T22:15:15.217` )
2023-04-24 14:55:30 +02:00
## Download and Usage
There are several ways you can work with the data in this repository:
### 1) Release Data Feed Packages
2023-05-24 12:00:30 +00:00
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 ).
2023-04-24 14:55:30 +02:00
2023-04-27 16:00:24 +02:00
Each day at 00:00 AM UTC we package and upload JSON files that aim to reconstruct the legacy NVD CVE Data Feeds.
2023-04-24 14:55:30 +02:00
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
```
2023-04-27 15:02:47 +02:00
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.
2023-04-27 16:00:24 +02:00
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:
2023-04-24 14:55:30 +02:00
```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
```
2023-04-27 16:00:24 +02:00
Note that all feeds are distributed in `xz` -compressed format to save storage and bandwidth.
2023-04-24 14:55:30 +02:00
For decompression execute:
```sh
xz -d -k < feed > .json.xz
```
#### Automation using Release Data Feed Packages
2023-04-27 16:00:24 +02:00
You can fetch the latest releases for each package with the following static link layout:
2023-04-24 14:55:30 +02:00
```sh
2023-04-27 15:02:47 +02:00
https://github.com/fkie-cad/nvd-json-data-feeds/releases/latest/download/CVE-< YEAR > .json.xz
2023-04-24 14:55:30 +02:00
```
Example:
```sh
2023-04-27 15:02:47 +02:00
wget https://github.com/fkie-cad/nvd-json-data-feeds/releases/latest/download/CVE-2023.json.xz
2023-04-24 14:55:30 +02:00
xz -d -k CVE-2023.json.xz
```
2023-12-21 15:00:28 +00:00
2023-04-27 16:00:24 +02:00
### 2) Clone the Repository (with Git History)
2023-04-24 14:55:30 +02:00
2023-04-27 16:00:24 +02:00
As you can see by browsing this repository, there is a slight difference between the release packages format and the repository folder structure.
2023-04-24 14:55:30 +02:00
This is because we want to maintain explorability of the dataset.
2023-04-27 16:00:24 +02:00
Each CVE gets its own JSON file, e.g., `CVE-1999-0001.json` .
2023-04-24 14:55:30 +02:00
Here, each file is put into a folder layout that first sorts by CVE `year` identifier part and then by `number` part.
2023-04-27 16:00:24 +02:00
We mask (`xx` ) the last two digits to create easily navigable folders that hold a maximum of 100 CVE JSON files:
2023-04-24 14:55:30 +02:00
```plain
.
├── CVE-1999
│ ├── CVE-1999-00xx
│ │ ├── CVE-1999-0001.json
│ │ ├── CVE-1999-0002.json
│ │ └── [...]
│ ├── CVE-1999-01xx
2023-04-25 17:08:25 +02:00
│ │ ├── CVE-1999-0101.json
│ │ └── [...]
2023-04-24 14:55:30 +02:00
│ └── [...]
├── CVE-2000
│ ├── CVE-2000-00xx
│ ├── CVE-2000-01xx
│ └── [...]
└── [...]
```
2023-04-27 16:00:24 +02:00
A byproduct of managing and continuously updating this dataset via Git is that we can track changes over time through the Git history.
2023-04-24 14:55:30 +02:00
2023-04-27 16:00:24 +02:00
If you are interested in having the NVD data as organized above, including the historical data of changes, just clone this repository (large!):
2023-04-24 14:55:30 +02:00
```sh
2023-04-27 15:02:47 +02:00
git clone https://github.com/fkie-cad/nvd-json-data-feeds.git
2023-04-24 14:55:30 +02:00
```
2023-12-21 15:00:28 +00:00
#### (Optional) Meta Files
Similar to the old official feeds, we provide meta files with each release. They can be fetched for each feed via:
```sh
https://github.com/fkie-cad/nvd-json-data-feeds/releases/latest/download/CVE-< YEAR > .meta
```
The structure is as follows:
```plain
lastModifiedDate:1970-01-01T00:00:00.000+00:00 # ISO 8601 timestamp of last CVE modification
size:1000 # size of uncompressed feed (bytes)
xzSize:100 # size of lzma-compressed feed (bytes)
sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 # sha256 hexdigest of uncompressed feed
```
2023-04-27 16:00:24 +02:00
### 3) Clone the Repository (without Git History)
2023-04-24 14:55:30 +02:00
Don't need the history? Then create a shallow copy:
```sh
2023-04-27 15:02:47 +02:00
git clone --depth 1 -b main https://github.com/fkie-cad/nvd-json-data-feeds.git
2023-04-24 14:55:30 +02:00
```
## Motivation
2023-12-15 13:00:27 +00:00
On 2023-12-15, the NIST deprecated all [JSON-based NVD Data Feeds ](https://nvd.nist.gov/vuln/data-feeds#divRetirementBanner-1 ).
2023-04-24 14:55:30 +02:00
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.:
2023-04-27 16:00:24 +02:00
* Put the JSON feed into a document-based database and quickly leverage upon that data in your software project, ...
2023-04-24 14:55:30 +02:00
* 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` !
2023-04-27 16:00:24 +02:00
Unfortunately, the new NVD API 2.0 adds complexity to this process.
2023-04-24 14:55:30 +02:00
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.