Skip to main content

AppThreat's vulnerability database and package search library with a built-in file based storage. OSV, CVE, GitHub, npm are the primary sources of vulnerabilities.

Project description

Introduction

This repo is a vulnerability database and package search for sources such as Aqua Security vuln-list, OSV, NVD, GitHub, and NPM. Vulnerability data are downloaded from the sources and stored in a custom file based storage with indexes to allow offline access and quick searches.

Vulnerability Data sources

  • Linux vuln-list (Forked from AquaSecurity)
  • OSV (1)
  • NVD (2)
  • GitHub
  • NPM

1 - We exclude linux and oss-fuzz feeds by default. Set the environment variable OSV_INCLUDE_FUZZ to include them.

2 - We exclude hardware (h) by default. Set the environment variable NVD_EXCLUDE_TYPES to exclude additional types such as OS (o) or application (a). An empty value means include all categories. Comma separated values are allowed. Eg: o,h

Linux distros

  • AlmaLinux
  • Debian
  • Alpine
  • Amazon Linux
  • Arch Linux
  • RHEL/CentOS
  • Rocky Linux
  • Ubuntu
  • OpenSUSE/SLES
  • Photon
  • Chainguard
  • Wolfi OS

Installation

pip install appthreat-vulnerability-db

Usage

This package is ideal as a library for managing vulnerabilities. This is used by dep-scan, a free open-source dependency audit tool. However, there is a limited cli capability available with few features to test this tool directly.

Download pre-built database

Use the ORAS cli to download a pre-built database containing all application and OS vulnerabilities.

export VDB_HOME=$HOME/vdb
oras pull ghcr.io/appthreat/vdb:v5 -o $VDB_HOME

Cache vulnerability data

Cache application vulnerabilities

vdb --cache

Typical size of this database is over 1.1 GB.

Cache application and OS vulnerabilities

vdb --cache-os

Note the size of the database with OS vulnerabilities is over 3.1 GB.

Cache from just OSV

vdb --cache --only-osv

It is possible to customise the cache behaviour by increasing the historic data period to cache by setting the following environment variables.

  • NVD_START_YEAR - Default: 2018. Supports upto 2002
  • GITHUB_PAGE_COUNT - Default: 2. Supports upto 20

Periodic sync

To periodically sync the latest vulnerabilities and update the database cache.

vdb --sync

Basic search

It is possible to perform simple search using the cli.

vdb --search android:8.0

vdb --search google:android:8.0

vdb --search android:8.0,simplesamlphp:1.14.11

vdb --search pkg:pypi/xml2dict@0.2.2

Syntax is package:version,package:version or vendor : package : version (Without space)

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

appthreat_vulnerability_db-5.8.0.tar.gz (47.1 kB view details)

Uploaded Source

Built Distribution

appthreat_vulnerability_db-5.8.0-py3-none-any.whl (54.3 kB view details)

Uploaded Python 3

File details

Details for the file appthreat_vulnerability_db-5.8.0.tar.gz.

File metadata

File hashes

Hashes for appthreat_vulnerability_db-5.8.0.tar.gz
Algorithm Hash digest
SHA256 27a6354e88fc91f9d2f3faaad81f22749f985ed8bf876511e978c5f058583066
MD5 968a3269b5c39b77a035bedd7c6a17df
BLAKE2b-256 2e635ff33794200ddfee1cc934a4513825d507a2d0e4307dcb48aab0a45787fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for appthreat_vulnerability_db-5.8.0.tar.gz:

Publisher: pythonpublish.yml on AppThreat/vulnerability-db

Attestations:

File details

Details for the file appthreat_vulnerability_db-5.8.0-py3-none-any.whl.

File metadata

File hashes

Hashes for appthreat_vulnerability_db-5.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 394a93353d1c339b342e596c76e34917d06af47308f232c0529e389a06401577
MD5 28fcffc80e7ece5a0735ecc6ee50aa0b
BLAKE2b-256 d831e92e214ba560fbc1e3a91a5439c29c6a3f7f401f10e2f8c58493920d8bd7

See more details on using hashes here.

Provenance

The following attestation bundles were made for appthreat_vulnerability_db-5.8.0-py3-none-any.whl:

Publisher: pythonpublish.yml on AppThreat/vulnerability-db

Attestations:

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page