Sécurité
DevSecOps

Scanner vos images Docker et Kubernetes avec Trivy

15 juillet 2025

3 min de lecture

La sécurité des conteneurs est cruciale pour toute infrastructure modernisée. Trivy est un scanner de vulnérabilités Open Source qui analyse les images Docker, les manifestes Kubernetes et plus encore, pour détecter les failles de sécurité et proposer des correctifs.

Prérequis

  • Docker installé (version ≥20.10)
  • Kubectl configuré pour votre cluster Kubernetes
  • CI/CD (GitLab CI, GitHub Actions, Jenkins…)

Installation de Trivy

Debian / Ubuntu
sudo apt install wget gnupg -y
wget -qO - https://aquasecurity.github.io/trivy-repo/deb/public.key | gpg --dearmor | sudo tee /usr/share/keyrings/trivy.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/trivy.gpg] https://aquasecurity.github.io/trivy-repo/deb generic main" | sudo tee /etc/apt/sources.list.d/trivy.list
sudo apt update && sudo apt install trivy -y
RHEL / CentOS / Rocky
sudo tee /etc/yum.repos.d/trivy.repo << 'EOF'
[trivy]
name=Trivy repository
baseurl=https://aquasecurity.github.io/trivy-repo/rpm/releases/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://aquasecurity.github.io/trivy-repo/rpm/public.key
EOF
sudo yum install trivy -y

Scan d’une image Docker

trivy image myapp:latest
  • Résumé des vulnérabilités par sévérité (CRITICAL, HIGH, MEDIUM, LOW)
  • Détails et CVE associés

Intégration CI/CD

Exemple avec GitLab CI
stages:
  - scan

trivy_scan:
  stage: scan
  image: aquasec/trivy:latest
  script:
    - trivy image --exit-code 1 --severity CRITICAL,HIGH myapp:latest
Exemple avec GitHub Actions
name: trivy-scan
on: [push]
jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Run Trivy scan
        uses: aquasec/trivy-action@master
        with:
          image-ref: 'myapp:latest'
          severity: 'CRITICAL,HIGH'
          exit-code: '1'

Scan de manifestes Kubernetes

Scan de fichiers YAML locaux
trivy config ./deploy/
Scan d'un cluster Kubernetes
trivy k8s --report summary cluster
  • Analyse des images référencées dans les manifestes
  • Détection des vulnérabilités et des risques de configuration (misconfigurations)

Automatisation et reporting

  • Slack notifications via Webhook
  • Génération de rapports HTML/JSON
  • Gatekeeping : refus des builds en cas de vulnérabilités critiques

Bonnes pratiques

  • Mettre à jour fréquemment la base de données de vulnérabilités (trivy image --download-db-only)
  • Scanner à chaque build et deployment
  • Surveiller les nouvelles CVE et corriger rapidement
  • Utiliser des policies avec OPA/Gatekeeper pour renforcer la sécurité

Avantages

  • Simple à installer et à utiliser
  • Supporte Docker, Kubernetes, fichiers système, Git, etc.
  • Rapide et léger
  • Communauté active et mises à jour régulières

Limites

  • Dépendance à la base de vulnérabilités de GitHub
  • Faux positifs possibles
  • Pas de remédiation automatique (nécessite scripts ou outils complémentaires)

Compléments

Améliorez votre sécurité conteneur en combinant Trivy avec Harbor pour une registry sécurisée, le hardening Docker, et OPA Gatekeeper pour bloquer les images vulnérables. Intégrez-le dans votre pipeline CI/CD GitLab pour une automatisation complète.

Conclusion

Intégrer Trivy dans votre pipeline DevSecOps vous permet de détecter rapidement les vulnérabilités, de renforcer la sécurité de vos conteneurs et de réduire les risques avant déploiement en production.

Besoin d'aide sur ce sujet ?

Notre équipe d'experts est là pour vous accompagner dans vos projets d'infrastructure et d'infogérance.

Contactez-nous

Articles similaires