
Surveille l'intégrité cryptographique des images de conteneurs, des versions et des tags Git pour la sécurité de la chaîne d'approvisionnement, en vérifiant les signatures cosign de Sigstore avec le journal de transparence Rekor.
Surveillance externe de l'intégrité de la chaîne d'approvisionnement pour les projets open source Aqua Security.
Ce dépôt surveille en continu l'intégrité des artefacts publiés par Aqua Security — images de conteneurs, releases GitHub, tags Git et artefacts de release — en enregistrant et en vérifiant les digests cryptographiques au fil du temps. Pour les artefacts signés, il vérifie également les signatures cosign Sigstore par rapport au journal de transparence Rekor.
Un workflow GitHub Actions planifié s'exécute toutes les 10 minutes et compare les digests actuels des artefacts à l'état précédemment enregistré. Si un digest a changé de manière inattendue, le workflow échoue et crée une issue GitHub avec les détails.
Les attaques de la chaîne d'approvisionnement logicielle ciblent souvent les canaux de distribution :
Ces attaques sont difficiles à détecter depuis l'intérieur du dépôt cible, car un attaquant disposant d'un accès suffisant peut également désactiver la surveillance dans le dépôt. La surveillance externe depuis un dépôt séparé n'est pas vulnérable à cela.
| Projet | Releases | Tags | Images conteneur | Cosign | État |
|---|---|---|---|---|---|
| trivy | Oui | Oui | GHCR, ECR Public, Docker Hub | Oui | state/trivy.tsv |
| trivy-action | Oui | Oui | — | — | state/trivy-action.tsv |
| setup-trivy | Oui | Oui | — | — | state/setup-trivy.tsv |
| trivy-operator | Oui | Oui | GHCR, Docker Hub | Oui | state/trivy-operator.tsv |
| kube-bench | Oui | Oui | Docker Hub | — | state/kube-bench.tsv |
| tfsec | Oui | Oui | GHCR, Docker Hub | — | state/tfsec.tsv |
| tracee | Oui | Oui | Docker Hub | Oui | state/tracee.tsv |
| kube-hunter | Oui | Oui | Docker Hub | — | state/kube-hunter.tsv |
.sig) et le format de bundle Sigstore plus récent (API OCI Referrers et artefacts .sigstore.json des releases).| Mode | Planification | Ce qui est vérifié |
|---|---|---|
| Rapide | Toutes les 10 min | Tags d'images récents, toutes les releases/tags, sans cosign |
| Complet | Toutes les 6 heures | Tous les tags d'images, vérification cosign, contrôle approfondi des artefacts |
L'état est stocké sous forme de fichiers TSV dans le répertoire state/ (un par cible). Chaque ligne enregistre le type d'artefact, son identifiant, son digest, le statut de signature et la date de création. Les modifications des fichiers d'état sont validées par le workflow, offrant ainsi une piste d'audit complète via l'historique Git.
Lorsqu'une violation d'intégrité est détectée, le workflow :
| k8s-node-collector | Oui | Oui | GHCR | Oui | state/k8s-node-collector.tsv |