TAAFT
Free mode
100% free
Freemium
Free Trial
Deals

google / osv.dev

Open source vulnerability DB and triage service.

2,534 293 Language: Python License: Apache-2.0 Updated: 6h ago

README

<picture>
<source srcset="docs/images/osv_logo_dark-full.svg" media="(prefers-color-scheme: dark)">

<img src="docs/images/osv_logo_light-full.svg">

</picture>


OpenSSF Scorecard

Documentation

Comprehensive documentation is available here.
API documentation is available here.

Data Dump

We have data dumps available from a GCS bucket at gs://osv-vulnerabilities. For more information check out our documentation.

Viewing the web UI

An instance of OSV's web UI is deployed at https://osv.dev.

Using the scanner

We provide a Go based tool that will scan your dependencies, and check them against the OSV database for known vulnerabilities via the OSV API.

Currently it is able to scan various lockfiles, debian docker containers, SPDX and CycloneDB SBOMs, and git repositories.

The scanner is located in its own repository.

This repository

This repository contains all the code for running https://osv.dev on GCP. This
consists of:

directory what
bindings/ Language bindings for the OSV API (currently Go only)
deployment/ Terraform & Cloud Deploy config files <br /> A few Cloud Build config yamls
docker/ CI docker files (ci, deployment, terraform) <br /> worker-base docker image for gcp/workers/worker
docs/ Jekyll files for https://google.github.io/osv.dev/ <br /> build_swagger.py and tools.go
gcp/api OSV API server files (including files for the local ESP server) <br /> protobuf files in /v1
gcp/datastore The datastore index file (index.yaml)
gcp/functions The Cloud Function for publishing PyPI vulnerabilities (maintained, but not developed)
gcp/indexer The determine version indexer
gcp/website The backend of the osv.dev web interface, with the frontend in frontend3 <br /> Blog posts (in blog)
gcp/workers/ Workers for bisection and impact analysis (worker, importer, alias) <br /> cron/ jobs for database backups and processing oss-fuzz records
go/ Go module for shared libraries and commands (cmd/exporter, cmd/recordchecker)
osv/ The core OSV Python library, used in basically all Python services <br /> OSV ecosystem package versioning helpers in ecosystems/ <br /> Datastore model definitions in models.py
tools/ Misc scripts/tools, mostly intended for development (datastore stuff, linting) <br /> The indexer-api-caller for indexer calling
vulnfeeds/ Go module for (mostly) the NVD CVE conversion <br /> The Alpine feed converter (cmd/alpine) <br /> The Debian feed converter (tools/debian, which is written in Python)

You'll need to check out submodules as well for many local building steps to
work:

git submodule update --init --recursive

Contributing

Contributions are welcome!

Learn more about code, data, and documentation contributions.
We also have a mailing list.

Do you have a question or a suggestion? Please open an issue.

Third party tools and integrations

There are also community tools that use OSV. Note that these are community built
tools and as such are not supported or endorsed by the core OSV maintainers. You may wish
to consult the OpenSSF's Concise Guide for Evaluating Open Source Software
to determine suitability for your use. Some popular third party tools are:

0 AIs selected
Clear selection
#
Name
Task