Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
klar — Integration von Clair und Docker Registry | Kitploit
Tools/GitHubGitHub/optiopay/klar
SchwachstellenscannerContainer-SicherheitKonfigurationsprüfungDevSecOps
GitHuboptiopay/klar

klar

Integration von Clair und Docker Registry

Repository anzeigen
503134vor 2 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Klar

Integration von Clair und Docker Registry (unterstützt sowohl Clair API v1 als auch v3)

Klar ist ein einfaches Werkzeug, um Bilder, die in einer privaten oder öffentlichen Docker-Registry gespeichert sind, mit Clair auf Sicherheitslücken zu analysieren https://github.com/coreos/clair. Klar ist als Integrationstool konzipiert und basiert daher auf Umgebungsvariablen. Es ist eine einzelne Binärdatei, die keine Abhängigkeiten benötigt.

Klar fungiert als Client, der die Bildprüfungen zwischen der Docker-Registry und Clair koordiniert.

Binäre Installation

Der einfachste Weg ist, die neueste Version (für OSX und Linux) von https://github.com/optiopay/klar/releases/ herunterzuladen und die Binärdatei in einen Ordner in Ihrem PATH zu legen (stellen Sie sicher, dass sie Ausführungsberechtigung hat).

Installation aus dem Quellcode

Stellen Sie sicher, dass Sie den Go-Sprachcompiler installiert und konfiguriert haben https://golang.org/doc/install

Dann führen Sie aus

root@kitploit:~
go get github.com/optiopay/klar

stellen Sie sicher, dass Ihr Go-Binärordner in Ihrem PATH ist (z.B. export PATH=$PATH:/usr/local/go/bin)

Verwendung

Der Klar-Prozess gibt 0 zurück, wenn die Anzahl der erkannten Schwachstellen mit hohem Schweregrad in einem Bild kleiner oder gleich einem Schwellenwert ist (siehe unten), und 1, wenn es mehr waren. Er gibt 2 zurück, wenn ein Fehler die Analyse des Bildes verhindert hat.

Klar kann über die folgenden Umgebungsvariablen konfiguriert werden:

  • CLAIR_ADDR - Adresse des Clair-Servers. Sie hat die Form protocol://host:port - protocol und port standardmäßig http bzw. 6060 und können weggelassen werden. Sie können auch eine Basisauthentifizierung in der URL angeben: protocol://login:password@host:port.

  • CLAIR_OUTPUT - Schwellenwert für den Schweregrad, Schwachstellen mit einem Schweregrad höher oder gleich diesem Schwellenwert werden ausgegeben. Unterstützte Stufen sind Unknown, Negligible, Low, Medium, High, Critical, . Standard ist .

Verwendung:

root@kitploit:~
CLAIR_ADDR=localhost CLAIR_OUTPUT=High CLAIR_THRESHOLD=10 DOCKER_USER=docker DOCKER_PASSWORD=secret klar postgres:9.5.1

Debug-Ausgabe

Sie können eine ausführlichere Ausgabe aktivieren, indem Sie KLAR_TRACE auf true setzen.

  • führen Sie export KLAR_TRACE=true aus, um es zwischen den Ausführungen zu speichern.

Dockerisierte Version

Klar kann dockerisiert werden. Gehen Sie zu $GOPATH/src/github.com/optiopay/klar und bauen Sie Klar im Projektstammverzeichnis. Wenn Sie auf Linux sind:

root@kitploit:~
CGO_ENABLED=0 go build -a -installsuffix cgo .

Wenn Sie auf einem Mac sind, vergessen Sie nicht, es für Linux zu bauen:

root@kitploit:~
GOOS=linux go build .

Um das Docker-Image zu bauen, führen Sie im Projektstammverzeichnis aus (ersetzen Sie klar ggf. durch den vollqualifizierten Namen):

root@kitploit:~
docker build -t klar .

Übergeben Sie dann Umgebungsvariablen als separate --env-Argumente oder erstellen Sie eine Env-Datei und übergeben Sie sie als --env-file-Argument. Beispielsweise speichern Sie Umgebungsvariablen als my-klar.env:

root@kitploit:~
CLAIR_ADDR=localhost
CLAIR_OUTPUT=High
CLAIR_THRESHOLD=10
DOCKER_USER=docker
DOCKER_PASSWORD=secret

Dann führen Sie aus

root@kitploit:~
docker run --env-file=my-klar.env klar postgres:9.5.1

Amazon ECR-Unterstützung

Es gibt keinen permanenten Benutzernamen/Passwort für Amazon ECR, die Anmeldedaten müssen mit aws ecr get-login abgerufen werden und sind 12 Stunden gültig. Hier ist ein Beispielskript, das verwendet werden kann, um Klar mit ECR-Anmeldedaten zu versorgen:

root@kitploit:~
DOCKER_LOGIN=`aws ecr get-login --no-include-email`
PASSWORD=`echo $DOCKER_LOGIN | cut -d' ' -f6`
REGISTRY=`echo $DOCKER_LOGIN | cut -d' ' -f7 | sed "s/https:\/\///"`
DOCKER_USER=AWS DOCKER_PASSWORD=${PASSWORD} ./klar ${REGISTRY}/my-image

Google GCR-Unterstützung

Für die Authentifizierung gegenüber GCR (Google Cloud Registry) ist der einfachste Weg, die application default credentials zu verwenden. Diese funktionieren nur, wenn Klar von GCP aus ausgeführt wird. Die einzige Voraussetzung ist das Google Cloud SDK.

root@kitploit:~
DOCKER_USER=oauth2accesstoken
DOCKER_PASSWORD="$(gcloud auth application-default print-access-token)"

Mit Docker:

root@kitploit:~
DOCKER_USER=oauth2accesstoken
DOCKER_PASSWORD="$(docker run --rm google/cloud-sdk:alpine gcloud auth application-default print-access-token)"
Tool herunterladen
Defcon1
Unknown
  • CLAIR_THRESHOLD - wie viele ausgegebene Schwachstellen Klar tolerieren kann, bevor es 1 zurückgibt. Standard ist 0.

  • CLAIR_TIMEOUT - Zeitüberschreitung in Minuten, bevor Klar das Scannen des Bildes abbricht. Standard ist 1

  • DOCKER_USER - Name des Docker-Registry-Kontos.

  • DOCKER_PASSWORD - Passwort des Docker-Registry-Kontos.

  • DOCKER_TOKEN - Token des Docker-Registry-Kontos. (Kann anstelle von DOCKER_USER und DOCKER_PASSWORD verwendet werden.)

  • DOCKER_INSECURE - Erlaubt Klar, auf Registries mit ungültigen SSL-Zertifikaten zuzugreifen. Standard ist false. Clair muss mit -insecure-tls gestartet werden, damit dies funktioniert.

  • DOCKER_TIMEOUT - Zeitüberschreitung in Minuten beim Versuch, Schichten von einer Docker-Registry abzurufen.

  • DOCKER_PLATFORM_OS - Das Betriebssystem des Docker-Images. Standard ist linux. Dies muss nur gesetzt werden, wenn das angegebene Bild auf eine Docker-Manifestliste anstelle eines üblichen Manifests verweist.

  • DOCKER_PLATFORM_ARCH - Die Architektur, für die das Docker-Image optimiert ist. Standard ist amd64. Dies muss nur gesetzt werden, wenn das angegebene Bild auf eine Docker-Manifestliste anstelle eines üblichen Manifests verweist.

  • REGISTRY_INSECURE - Erlaubt Klar, auf unsichere Registries zuzugreifen (nur HTTP). Standard ist false.

  • JSON_OUTPUT - Ausgabe als JSON, nicht als Klartext. Standard ist false.

  • FORMAT_OUTPUT - Ausgabeformat der Schwachstellen. Unterstützte Formate sind standard, json, table. Standard ist standard. Wenn JSON_OUTPUT auf true gesetzt ist, wird diese Option ignoriert.

  • WHITELIST_FILE - Pfad zur YAML-Datei mit der CVE-Whitelist. Schauen Sie sich whitelist-example.yaml für das Dateiformat an.

  • IGNORE_UNFIXED - Zählen Sie Schwachstellen ohne Fix nicht zum Schwellenwert.