
Erstellen und verwalten Sie Trivy-Schwachstellendatenbanken, indem Sie Sicherheitshinweise von NVD, Red Hat, Debian und weiteren Quellen aggregieren. Ein CLI-Tool und eine Bibliothek für die Erstellung, Komprimierung und Verteilung von Datenbanken.
Trivy verwendet trivy-db intern zur Manipulation der Schwachstellen-Datenbank. Diese DB enthält Schwachstelleninformationen von NVD, Red Hat, Debian usw.
Das CLI-Tool trivy-db erstellt Schwachstellen-Datenbanken. Ein GitHub-Actions-Workflow
erstellt regelmäßig eine frische Version der Schwachstellen-Datenbank mit trivy-db und lädt sie in die GitHub
Container Registry hoch (siehe Schwachstellen-Datenbank herunterladen unten).
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
Um trivy-db lokal zu erstellen, kannst du die folgende Befehlsreihenfolge aus dem Makefile verwenden:
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
Um das trivy-db-Image zu erstellen und in eine Registry zu pushen, musst du die Oras CLI verwenden.
Zum Beispiel für 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
Die Trivy-DB wird alle 6 Stunden erstellt. Standardmäßig beträgt das in der Metadatendatei angegebene Aktualisierungsintervall 24 Stunden. Wenn du die Trivy-DB häufiger aktualisieren musst, kannst du manuell eine neue Trivy-DB hochladen.
Die Trivy-DB v1 hat im Februar 2023 das Ende des Supports erreicht. Bitte aktualisiere Trivy auf v0.23.0 oder höher.
Weitere Informationen zur Einstellung der Trivy-DB v1 findest du in der Diskussion.
Die Trivy-DB v2 wird auf GHCR gehostet.
Obwohl GitHub standardmäßig den Befehl docker pull anzeigt, beachte bitte, dass sie nicht mit docker pull heruntergeladen werden kann, da es sich nicht um ein Container-Image handelt.
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
Die Datenbank kann für Air-Gapped-Umgebungen verwendet werden.