InfraFenceInfraFence

Live Security Operations

Loslegen

Ein Release prüfen

Prüfen, ob ein Binary, Container-Image oder Helm-Chart des InfraFence-Agenten das offizielle signierte Release ist: SHA-256-Prüfsummen, Cosign-Signaturen, GitHub-Build-Provenienz und die GPG-Signatur des Charts.

Zuletzt aktualisiert:

Jedes Release wird von GitHub Actions aus dem öffentlichen Repository gebaut. Jedes Binary wird mit einer SHA-256-Prüfsumme und einer Cosign-Signatur veröffentlicht, das Container-Image ist per Digest signiert, und das Helm-Chart ist mit einem separaten GPG-Schlüssel signiert. Der Agent selbst lehnt jedes Update ab, dessen Prüfsumme oder Signatur die Prüfung nicht besteht.

Release-Dateien

Datei Was
infrafence-agent-linux-amd64, infrafence-agent-linux-arm64 Die statischen Binaries.
infrafence-agent-linux-amd64-k8s, infrafence-agent-linux-arm64-k8s Dieselben, mit Kubernetes-Unterstützung.
<binary>.sha256, <binary>.sig Prüfsumme und Cosign-Signatur jedes Binarys.
checksums.txt, checksums.txt.sig Alle Prüfsummen, signiert.
install.sh Der Installer.
waf-catalog.json Die eingebauten Muster der Web-Firewall.

Prüfsumme

bash
curl -sL https://github.com/infrafence/infrafence-agent/releases/latest/download/checksums.txt
sha256sum /usr/local/bin/infrafence-agent

Nimm das Release, das zur installierten Version passt (infrafence-agent version gibt sie ab 1.0.34 aus, infrafence-agent check in jeder Version): Ersetze latest/download durch download/v<version>.

Cosign-Signatur

bash
cosign verify-blob \
  --key https://raw.githubusercontent.com/infrafence/infrafence-agent/main/cosign.pub \
  --signature https://github.com/infrafence/infrafence-agent/releases/latest/download/infrafence-agent-linux-amd64.sig \
  /usr/local/bin/infrafence-agent

Ohne Cosign geht dieselbe Prüfung mit OpenSSL (die Signatur ist eine ECDSA-P-256-Signatur, Base64-kodiert):

bash
curl -sLO https://raw.githubusercontent.com/infrafence/infrafence-agent/main/cosign.pub
curl -sL https://github.com/infrafence/infrafence-agent/releases/latest/download/infrafence-agent-linux-amd64.sig | base64 -d > agent.sig.der
openssl dgst -sha256 -verify cosign.pub -signature agent.sig.der /usr/local/bin/infrafence-agent

Build-Provenienz

bash
gh attestation verify infrafence-agent-linux-amd64 --repo infrafence/infrafence-agent

Container-Image

Das Image ghcr.io/infrafence/infrafence-agent ist mit demselben Schlüssel signiert, per Digest:

bash
cosign verify --key https://raw.githubusercontent.com/infrafence/infrafence-agent/main/cosign.pub ghcr.io/infrafence/infrafence-agent:latest

Helm-Chart

Das Chart ist mit einem eigenen GPG-Schlüssel signiert, getrennt vom Cosign-Schlüssel:

bash
curl -sL https://raw.githubusercontent.com/infrafence/infrafence-agent/main/infrafence-helm-signing-key.asc | gpg --import
helm verify infrafence-agent-<version>.tgz