
Создавайте и управляйте базами данных уязвимостей Trivy, агрегируя бюллетени безопасности из NVD, Red Hat, Debian и других источников. CLI-инструмент и библиотека для создания, сжатия и распространения баз данных.
trivy-db — это CLI-инструмент и библиотека для работы с Trivy DB.
Trivy использует trivy-db внутри себя для работы с базой данных уязвимостей. Эта база содержит информацию об уязвимостях из NVD, Red Hat, Debian и других источников.
CLI-инструмент trivy-db собирает базы данных уязвимостей. GitHub Actions workflow
периодически собирает свежую версию базы данных уязвимостей с помощью trivy-db и загружает её в GitHub Container Registry (см. Загрузка базы данных уязвимостей ниже).
NAME:
trivy-db - Trivy DB builder
USAGE:
main [global options] command [command options] image_name
VERSION:
0.0.1
COMMANDS:
build build a database file
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--help, -h show help
--version, -v print the version
Чтобы собрать trivy-db локально, можно использовать следующую последовательность команд из Makefile:
make db-fetch-langs db-fetch-vuln-list # To download all advisories and other required files (`./cache` dir by default)
make build # Build `trivy-db` binary
make db-build # Build database (`./out` dir by default)
make db-compact # Compact database (`./assets` dir by default)
make db-compress # Compress database into `db.tar.gz` file
Чтобы собрать образ trivy-db и отправить его в реестр, нужно использовать Oras CLI.
Например, для ghcr:
./oras push --artifact-type application/vnd.aquasec.trivy.config.v1+json \
"ghcr.io/aquasecurity/trivy-db:2" \
db.tar.gz:application/vnd.aquasec.trivy.db.layer.v1.tar+gzip
Trivy DB собирается каждые 6 часов. По умолчанию интервал обновления, указанный в файле метаданных, составляет 24 часа. Если вам нужно обновлять Trivy DB чаще, вы можете загрузить новую Trivy DB вручную.
Срок поддержки Trivy DB v1 закончился в феврале 2023 года. Пожалуйста, обновите Trivy до v0.23.0 или более поздней версии.
Подробнее о прекращении поддержки Trivy DB v1 читайте в обсуждении.
Trivy DB v2 размещается в GHCR.
Хотя GitHub по умолчанию показывает команду docker pull, обратите внимание, что её нельзя загрузить с помощью docker pull, поскольку это не образ контейнера.
Вы можете загрузить саму скомпилированную базу данных через Trivy или Oras CLI.
Trivy:
TRIVY_TEMP_DIR=$(mktemp -d)
trivy --cache-dir $TRIVY_TEMP_DIR image --download-db-only
tar -cf ./db.tar.gz -C $TRIVY_TEMP_DIR/db metadata.json trivy.db
rm -rf $TRIVY_TEMP_DIR
oras >= v0.13.0:
$ oras pull ghcr.io/aquasecurity/trivy-db:2
oras < v0.13.0:
$ oras pull -a ghcr.io/aquasecurity/trivy-db:2
База данных может использоваться в изолированной среде.