This repository is a prototype of the Go Vulnerability Database. Read the Draft Design.
Neither the code, nor the data, nor the existence of this repository is to be considered stable until an approved proposal.
Important: vulnerability entries in this repository are represented in an internal, unstable format that can and will change without notice.
Database clients must not rely on the contents of this repository. Instead, they can access the tree of JSON entries rooted at
https://storage.googleapis.com/go-vulndb/
An index.json
file maps package names to last modified timestamps. For each
package name, a NAME.json
file contains a list of vulnerability entries.
Note that this path and format are provisional and likely to change until an approved proposal.
Some of these packages can probably be coalesced, but for now are easier to work on in a more segmented fashion.
report
provides a package for parsing and linting TOML reportsosv
provides a package for generating OSV-style JSON vulnerability entries from areport.Report
client
contains a client for accessing HTTP/fs based vulnerability databases, as well as a minimal caching implementationcmd/gendb
provides a tool for converting TOML reports into JSON databasecmd/genhtml
provides a tool for converting TOML reports into a HTML websitecmd/linter
provides a tool for linting individual reportscmd/report2cve
provides a tool for converting TOML reports into JSON CVEs
Unless otherwise noted, the Go source files are distributed under the BSD-style license found in the LICENSE file.
Database entries available at https://storage.googleapis.com/go-vulndb/ are distributed under the terms of the CC-BY 4.0 license.