commit | 5381d12c6fe96256d91e462be3e5c3a7e1e505ac | [log] [tgz] |
---|---|---|
author | Jonathan Amsterdam <jba@google.com> | Fri Mar 11 16:11:26 2022 -0500 |
committer | Julie Qiu <julie@golang.org> | Wed Mar 23 20:32:16 2022 +0000 |
tree | c117ec85f149fb31e3eb18e456aba90657b8d969 | |
parent | b749fb1239457c420c24938dfbe733e9e75625b8 [diff] |
cmd/govulncheck: select representative symbols more carefully Instead of using the entries (top of call stacks) as the symbols to show to the user, use the lowest symbols on the call stacks from the packages under analysis. This can greatly reduce the number of symbols. For example, in k8s.io/kubernetes, many functions call k8s.io/kubernetes/pkg/util/selinux.SELinuxEnabled, which then calls a vulnerable symbol in github.com/opencontainers/selinux/go-selinux. In this particular case, this CL reduces the number of symbols from 2,384 to 2. Cherry-picked: https://go-review.googlesource.com/c/exp/+/391894 Change-Id: Ib191cb8ec6a09e607673af7ccdcb34ea121a5b69 Reviewed-on: https://go-review.googlesource.com/c/vuln/+/395240 Trust: Julie Qiu <julie@golang.org> Run-TryBot: Julie Qiu <julie@golang.org> Reviewed-by: Jonathan Amsterdam <jba@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
This repository contains code for hosting the Go Vulnerability Database. The actual reports can be found at x/vulndb.
Neither the code, nor the data, nor the existence of this repository is to be considered stable. See the Draft Design for details on this project.
The Go vulnerability database is rooted at https://storage.googleapis.com/go-vulndb
and provides data as JSON. We recommend using client.Client to read data from the Go vulnerability database.
Do not rely on the contents of the x/vulndb repository. The YAML files in that repository are maintained using an internal format that is subject to change without warning.
The endpoints the table below are supported. For each path:
https://storage.googleapis.com/go-vulndb
).GO-2021-1234
)Path | Description |
---|---|
$base/index.json | List of module paths in the database mapped to its last modified timestamp (link). |
$base/$module.json | List of vulnerability entries for that module (example). |
$base/ID/index.json | List of all the vulnerability entries in the database |
$base/ID/$vuln.json | An individual Go vulnerability report |
Note that these paths 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.
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.