
Überwacht die kryptografische Integrität von Container-Images, Releases und Git-Tags für die Lieferkettensicherheit und verifiziert Sigstore-cosign-Signaturen mit dem Rekor-Transparenzlog.
Externe Überwachung der Lieferketten-Integrität für Open-Source-Projekte von Aqua Security.
Dieses Repository überwacht kontinuierlich die Integrität der veröffentlichten Artefakte von Aqua Security – Container-Images, GitHub-Releases, Git-Tags und Release-Assets –, indem es kryptografische Digests im Laufe der Zeit aufzeichnet und verifiziert. Für signierte Artefakte verifiziert es außerdem Sigstore-Cosign-Signaturen gegen das Rekor-Transparenzlog.
Ein geplanter GitHub-Actions-Workflow läuft alle 10 Minuten und vergleicht die aktuellen Artefakt-Digests mit dem zuvor aufgezeichneten Zustand. Wenn sich ein Digest unerwartet geändert hat, schlägt der Workflow fehl und erstellt ein GitHub-Issue mit Details.
Angriffe auf die Software-Lieferkette zielen häufig auf Vertriebskanäle ab:
Diese Angriffe sind innerhalb des Ziel-Repositorys schwer zu erkennen, da ein Angreifer mit ausreichendem Zugriff auch die Überwachung im Repository deaktivieren kann. Externe Überwachung aus einem separaten Repository ist dagegen immun.
.sig-Tags) als auch das neuere Sigstore-Bundle-Format (OCI-Referrers-API und .sigstore.json-Release-Assets).| Modus | Zeitplan | Was geprüft wird |
|---|---|---|
| Quick | Alle 10 Minuten | Aktuelle Image-Tags, alle Releases/Tags, ohne Cosign |
| Full | Alle 6 Stunden | Alle Image-Tags, Cosign-Prüfung, tiefgehende Asset-Prüfung |
Der Zustand wird als TSV-Dateien im Verzeichnis state/ gespeichert (eine pro Ziel). Jede Zeile erfasst den Typ eines Artefakts, die Kennung, den Digest, den Signaturstatus und das Erstellungsdatum. Änderungen an den Statusdateien werden vom Workflow committet und bieten so einen vollständigen Audit-Trail über die Git-Historie.
Wenn eine Integritätsverletzung erkannt wird, führt der Workflow Folgendes aus:
| Projekt | Releases | Tags | Container-Images | Cosign | Status |
|---|
| trivy | Ja | Ja | GHCR, ECR Public, Docker Hub | Ja | state/trivy.tsv |
| trivy-action | Ja | Ja | — | — | state/trivy-action.tsv |
| setup-trivy | Ja | Ja | — | — | state/setup-trivy.tsv |
| trivy-operator | Ja | Ja | GHCR, Docker Hub | Ja | state/trivy-operator.tsv |
| kube-bench | Ja | Ja | Docker Hub | — | state/kube-bench.tsv |
| tfsec | Ja | Ja | GHCR, Docker Hub | — | state/tfsec.tsv |
| tracee | Ja | Ja | Docker Hub | Ja | state/tracee.tsv |
| kube-hunter | Ja | Ja | Docker Hub | — | state/kube-hunter.tsv |
| k8s-node-collector | Ja | Ja | GHCR | Ja | state/k8s-node-collector.tsv |