1
0
Fork
You've already forked cvedb
0
No description
Find a file
kelsey 1972831775 Update Python source to align with Rust schema v2
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026年05月18日 13:42:13 -07:00
.github/workflows Update the action name 2021年02月23日 13:47:49 -05:00
cvedb Update Python source to align with Rust schema v2 2026年05月18日 13:42:13 -07:00
src Port to Rust 2026年05月18日 13:37:46 -07:00
test Randomly generate CPEs for testing 2021年03月01日 11:23:36 -05:00
.gitignore Port to Rust 2026年05月18日 13:37:46 -07:00
Cargo.lock Port to Rust 2026年05月18日 13:37:46 -07:00
Cargo.toml Port to Rust 2026年05月18日 13:37:46 -07:00
CODEOWNERS Add CODEOWNERS file 2023年04月11日 14:07:22 -04:00
LICENSE Added the license 2021年02月22日 16:23:10 -05:00
README.md Port to Rust 2026年05月18日 13:37:46 -07:00
setup.py Update Python source to align with Rust schema v2 2026年05月18日 13:42:13 -07:00

CVEdb

Downloads, stores, and searches CVE data from the National Vulnerability Database.

⚠️ This is the Rust version. The original Python implementation has been superseded. All users should use the Rust binary.

Features

  • Search CVEs by keyword, date range, vendor, or software version
  • Colorized terminal output with severity badges
  • Incremental database updates via the NVD REST API 2.0
  • SQLite-backed storage with WAL mode for concurrent access
  • Full CVE database (~350K CVEs) downloaded on first update

Installation

$ cargo build --release
$ cp target/release/cvedb ~/bin/

Or run directly from the project directory:

$ cargo run --release -- --help

Usage

$ cvedb --help

Search by keyword:

$ cvedb heartbleed
$ cvedb log4j

Filter by date:

$ cvedb --after 2021年01月01日 --before 2021年12月31日 log4j

Search by vendor or software version:

$ cvedb --vendor apache
$ cvedb --vendor apache --software-version 2.4.0

Update the database:

$ NVD_API_KEY=your-key cvedb --update

Show feed status:

$ cvedb --data-version

NVD API Key

An NVD API key is strongly recommended. Without one, the full fetch is rate-limited to a crawl.

  • With API key: 2,000 results per page, higher rate limits (full fetch ~1-2 minutes)
  • Without API key: 50 results per page, 5 requests per 30 seconds (full fetch ~6+ hours)

Get a free API key at https://nvd.nist.gov/developers/request-an-api-key.

Set it via the NVD_API_KEY environment variable:

$ export NVD_API_KEY=your-api-key-here
$ cvedb --update

Database

The database is stored at ~/.config/cvedb/cvedb.sqlite by default. Delete it and re-run cvedb --update to start fresh.