Fetch CVEs per application from NVD (CVE API 2.0)
Project description
CVE Finder
Fetch CVEs per application from NVD (National Vulnerability Database) API 2.0.
Installation
pip3 install cve-finder-cli
Or install from source (editable):
pip install -e .
Or from the directory:
python -m pip install .
Usage
After installation, use the cve-finder command:
# Using CPE (exact match)
cve-finder --cpe "cpe:2.3:a:gitlab:gitlab:16.7:*:*:*:*:*:*:*" --json output.json
# Using keyword search
cve-finder --app "nginx" --version "1.24.0" --csv nginx.csv
# Filter by severity and date (case-insensitive)
cve-finder --app "openssl" --severity critical --since 2024-01-01 --max 50
# Multiple severities (repeat flag or comma-separated)
cve-finder --app "jira" --severity CRITICAL --severity MEDIUM
cve-finder --app "jira" --severity CRITICAL,MEDIUM
# Print to console (no file output)
cve-finder --app "tomcat" --version "9.0.0"
Direct script usage
You can also run the entry script directly:
# Best (exact): use a CPE name
python main.py --cpe "cpe:2.3:a:nginx:nginx:1.24.0:*:*:*:*:*:*:*" --csv nginx_1.24.0.csv
# Keyword search (fuzzier)
python main.py --app "nginx" --version "1.24.0" --json out.json
# Keyword search, no version
python main.py --app "openssl" --since 2024-01-01 --max 200 --csv openssl.csv
Options
--cpe- Exact CPE name for precise matching--app- Application name for keyword search--version- Optional version (with --app)--since- Filter CVEs published since date (YYYY-MM-DD)--until- End date for published window--severity- Filter by severity (case-insensitive). Repeat flag or use comma-separated list (LOW, MEDIUM, HIGH, CRITICAL)--max- Maximum CVEs to fetch (default: 1000)--page-size- Results per page (max 200)--timeout- HTTP timeout seconds--json- Save results to JSON file--csv- Save results to CSV file--format- Output format to stdout: json or csv
API Key
Set NVD_API_KEY environment variable to reduce rate limiting:
export NVD_API_KEY="your_key_here"
Get your API key at: https://nvd.nist.gov/developers/request-an-api-key
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cve_finder_cli-1.0.0.tar.gz.
File metadata
- Download URL: cve_finder_cli-1.0.0.tar.gz
- Upload date:
- Size: 13.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df9ca43f0a1000eb59b26daabcbe8173f832f29516d119fe40535525c1484780
|
|
| MD5 |
afcdea819be6d2d7bd7a9bcc1572d5ea
|
|
| BLAKE2b-256 |
db2bc1d2ecc91de9a5215992176296dda831d4c64515b6fec2b0ca97a11a74bb
|
File details
Details for the file cve_finder_cli-1.0.0-py3-none-any.whl.
File metadata
- Download URL: cve_finder_cli-1.0.0-py3-none-any.whl
- Upload date:
- Size: 16.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9262b785b06749137c5d42db2ffde79ff5de91b3a68f88e00d207de3e61715ca
|
|
| MD5 |
a2c123c6653a94df02d39bcc89d686bd
|
|
| BLAKE2b-256 |
dc0970164152008ea5943dda10f9f7f6a21985bb346e34581539d1736dc71816
|