1. À quoi sert un SBOM ? #
Savoir ce qui tourne.
Le principe #
Un SBOM (Software Bill of Materials) liste tous les composants d'une image, avec leurs versions et licences. Le jour où une faille comme Log4Shell est publiée, il répond en quelques secondes à la question « quelles images sont touchées ? », sans tout rescanner. Il est aussi demandé par les réglementations récentes, comme le Cyber Resilience Act européen.
2. Générer et exploiter un SBOM #
Avec Trivy.
Générer #
trivy image --format cyclonedx -o sbom.cdx.json monimage:1.0
trivy image --format spdx-json -o sbom.spdx.json monimage:1.0Sur l'image nginx officielle, Trivy a produit un SBOM CycloneDX 1.7 de 154 composants.
Rescanner sans reconstruire #
trivy sbom sbom.cdx.json
trivy sbom --severity CRITICAL sbom.cdx.jsonConservez le SBOM de chaque version déployée : quand une nouvelle CVE sort, rescannez les SBOM plutôt que les images.
Formats et outils #
| Élément | Rôle |
|---|---|
| CycloneDX | Format orienté sécurité (OWASP) |
| SPDX | Format normalisé (ISO/IEC 5962), orienté licences |
| Syft | Générateur de SBOM d’Anchore |
| docker buildx --sbom | Attestation SBOM jointe à l’image au build |
Aller plus loin. Signez l'image et son SBOM (Cosign, Notation) pour prouver leur provenance : c'est la base d'une chaîne d'approvisionnement de confiance.
Sources #
SBOM généré avec Trivy 0.76.2.
Mon suivi
Connectez-vous pour suivre votre progression et prendre des notes. Se connecter
💬 Questions sur cette leçon
Aucune question pour l'instant : soyez le premier à demander de l'aide ou à partager votre configuration.
Glossaire de la formation
Micro-services
Architecture où une application est divisée en plusieurs petits services indépendants, souvent déployés dans le Cloud.
Docker
Outil permettant de virtualiser et packager des applications à l'intérieur de conteneurs légers pour un déploiement optimal.Exemple de déploiement d'u...
Prometheus
Système open source de surveillance et d'alerte, particulièrement adapté pour la collecte de métriques dans des environnements dynamiques (comme Kuber...
Kubernetes
Plateforme open source d'orchestration de conteneurs permettant d'automatiser le déploiement, la mise à l'échelle et la gestion des applications conte...
CI/CD
Intégration Continue et Déploiement Continu. Pratiques DevOps visant à automatiser les tests et le déploiement des applications pour livrer plus rapid...
Terraform
Outil d'Infrastructure as Code (IaC) permettant de définir et de provisionner des ressources d'infrastructure cloud et on-premise via des fichiers de ...
Métriques
Mesures numériques collectées à intervalles réguliers (ex: CPU, RAM, temps de réponse) utilisées pour évaluer l'état de santé global d'un système au f...
DevOps
Culture, mouvement et pratiques visant à unifier le développement logiciel (Dev) et l'administration des infrastructures informatiques (Ops).Découvrir...
API Gateway
Passerelle servant de point d'entrée unique pour l'ensemble des requêtes vers des architectures micro-services. Elle gère le routage, la sécurité et l...
Architecture
Conception globale et structurelle d'un système informatique, définissant ses différents composants, leurs relations et les principes guidant son évol...
Artefact (Artifact)
Résultat final d'un processus de compilation ou de construction logicielle (build), tel qu'un fichier .jar, une archive zip ou une image Docker, prêt ...
Repository
Dépôt de stockage centralisé. Peut désigner un dépôt de code source (ex: Git) ou un dépôt d'artefacts et binaires (ex: Harbor, Nexus, Artifactory).
Ansible
Outil open source d'automatisation informatique (IaC) permettant la gestion des configurations, le déploiement d'applications et l'orchestration, fonc...
Articles recommandés
Scanner ses images Docker : Trivy, Grype et Docker Scout
Détecter les vulnérabilités et erreurs de configuration des images avec Trivy, lire les résultats...
Container registry : choisir et sécuriser son registre d'images (Docker Hub, Harbor, GHCR, ECR)
Comprendre les registres de conteneurs : Docker Hub, GitHub Container Registry, registres cloud (...
DevSecOps : sécuriser la chaîne logicielle de bout en bout
Intégrer la sécurité dans le pipeline DevOps : shift-left, modélisation des menaces, détection de...
Bonnes pratiques Docker : images, exécution, sécurité et exploitation
Les bonnes pratiques Docker : Dockerfile et builds multi-étapes, images minimales et reproductibl...
Images durcies : réduire la surface d'attaque de ses conteneurs
Choisir une image de base durcie : slim, distroless, Docker Hardened Images, Chainguard ; non-roo...
Aide-mémoire Docker : Les commandes essentielles
Un guide pratique regroupant toutes les commandes indispensables pour manipuler les images, les c...
Linter ses Dockerfile avec Hadolint et docker build --check
Repérer les erreurs et mauvaises pratiques d'un Dockerfile avant la construction : Hadolint, ses ...
Docker : vue d'ensemble, architecture et premiers pas
Découvrir Docker : conteneurs vs machines virtuelles, architecture client/daemon/registre, images...
Sécurité réseau des conteneurs (container network security) et networking Kubernetes
Sécuriser le réseau des conteneurs : fonctionnement du networking Docker et Kubernetes, CNI, Netw...