Data sources

Table of contents

Current data sources

This is an ongoing project. We encourage open source ecosystems to adopt the Open Source Vulnerability format to enable open source users to easily aggregate and consume vulnerabilities across all ecosystems. See our blog post for more details.

The following ecosystems have vulnerabilities encoded in this format:

Converted data

Additionally, the OSV.dev team maintains a conversion pipeline for:

Covered Ecosystems

Between the data served in OSV and the data converted to OSV the following ecosystems are covered.

  • AlmaLinux
  • Alpine
  • Android
  • Bitnami
  • crates.io
  • Curl
  • Debian GNU/Linux
  • Git (including C/C++)
  • GitHub Actions
  • Go
  • Haskell
  • Hex
  • Linux kernel
  • Maven
  • npm
  • NuGet
  • OSS-Fuzz
  • Packagist
  • Pub
  • PyPI
  • Python
  • R (CRAN and Bioconductor)
  • Rocky Linux
  • RubyGems
  • SwiftURL
  • Ubuntu OS

Data Quality

The quality of the data in OSV.dev is very important to us. The minimum quality bar for OSV records acceptable for import is documented here

Data dumps

For convenience, these sources are aggregated and continuously exported to a GCS bucket maintained by OSV: gs://osv-vulnerabilities

This bucket contains a zip file with all vulnerabilities across all ecosystems (including withdrawn records) at gs://osv-vulnerabilities/all.zip. This is the easiest way to download the entire OSV database.

Individual vulnerability records can be found at gs://osv-vulnerabilities/<ECOSYSTEM>/<ID>.json. A zip containing all vulnerabilities for each ecosystem is available at gs://osv-vulnerabilities/<ECOSYSTEM>/all.zip. Vulnerabilities without an ecosystem (typically withdrawn ones) are exported to the gs://osv-vulnerabilities/[EMPTY]/ directory.

E.g. for PyPI vulnerabilities:

# Or download over HTTP via https://osv-vulnerabilities.storage.googleapis.com/PyPI/all.zip
gsutil cp gs://osv-vulnerabilities/PyPI/all.zip .

Some ecosystems contain a : separator in the name (e.g. Alpine:v3.17). For these ecosystems, the data dump will always contain an ecosystem directory without the :.* suffix (e.g. Alpine). This will contain all the advisories of the ecosystem with the same prefix (e.g. All Alpine:.*).

A list of all current ecosystems is available at gs://osv-vulnerabilities/ecosystems.txt

Note: OSV.dev has stopped exporting entries for ecosystems with prefixes (e.g. All Alpine:.*). Please refer only to the main ecosystem, the one without the :.* suffix, for all vulnerabilities of that ecosystem.

Contributing Data

If you a work with a project such as a Linux distribution and would like to contribute your security advisories, please follow the steps outlined in CONTRIBUTING.md

Data can be supplied either through a public Git repository, a public GCS bucket or to REST API endpoints.