Scan hebdomadaire des vulnérabilités avec Trivy #2406
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Cette PR est une étape de plus pour améliorer nos processus en terme de sécurité (conformité/sécurité d'ailleurs), et nous donner de la visibilité sur ces aspects dans le temps.
Dans https://github.com/etalab/transport_deploy/issues/14 j'ai été amené à lancer Trivy, un outil qui permet de scanner des containers Docker notamment, et à vérifier que ça nous permettrait bien de suivre un peu le vieillissement d'une image donnée.
Dans la PR présente, je franchis une étape de plus en lançant un scan hebdomadaire sous forme de GitHub Action.
L'image Docker cible utilisée est directement dynamiquement tirée du
Dockerfile
, de façon à être à jour.Pour l'instant le résultat est simplement affiché sous forme de table (voir https://github.com/etalab/transport-site/runs/6507634995?check_suite_focus=true pour un exemple).
J'utilise l'action directement maintenue par l'équipe de Aquasecurity https://github.com/aquasecurity/trivy-action plutôt qu'un Orb CircleCI comme https://circleci.com/developer/orbs/orb/signavio/trivy, car il fallait autoriser des organisations extérieures côté CircleCI.
On pourra dans un second temps intégrer cela à GitHub code scanning, via la standardisation au format "SARIF", toutefois sur un premier test j'ai eu une erreur liée aux permissions (token etc), donc j'ai préféré écourter (https://github.com/aquasecurity/trivy-action#using-trivy-with-github-code-scanning).