Analyse d'images Docker Scout
Lorsque vous activez l'analyse d'images pour un dépôt, Docker Scout analyse automatiquement les nouvelles images que vous poussez vers ce dépôt.
L'analyse d'images extrait la Nomenclature du Logiciel (SBOM) et d'autres métadonnées d'image, et l'évalue contre les données de vulnérabilité des avis de sécurité.
Si vous exécutez l'analyse d'images comme une tâche ponctuelle en utilisant la CLI ou Docker Desktop, Docker Scout ne stockera aucune donnée sur votre image. Cependant, si vous activez Docker Scout pour vos dépôts d'images de conteneurs, Docker Scout sauvegarde un instantané de métadonnées de vos images après l'analyse. Lorsque de nouvelles données de vulnérabilité deviennent disponibles, Docker Scout recalibre l'analyse en utilisant l'instantané de métadonnées, ce qui signifie que votre statut de sécurité pour les images est mis à jour en temps réel. Cette évaluation dynamique signifie qu'il n'y a pas besoin de ré-analyser les images lorsque de nouvelles informations CVE sont divulguées.
L'analyse d'images Docker Scout est disponible par défaut pour les dépôts Docker Hub. Vous pouvez également intégrer des registres tiers et d'autres services. Pour en apprendre plus, voir Intégrer Docker Scout avec d'autres systèmes.
Activer Docker Scout sur un dépôt
Docker Personnel vient avec 1 dépôt Scout activé. Vous pouvez mettre à niveau votre abonnement Docker si vous avez besoin de dépôts supplémentaires. Voir Abonnements et fonctionnalités pour apprendre combien de dépôts Scout activés viennent avec chaque niveau d'abonnement.
Avant de pouvoir activer l'analyse d'images sur un dépôt dans un registre tiers, le registre doit être intégré avec Docker Scout pour votre organisation Docker. Docker Hub est intégré par défaut. Pour plus d'informations, voir Intégrations de registre de conteneurs
NoteVous devez avoir le rôle Éditeur ou Propriétaire dans l'organisation Docker pour activer l'analyse d'images sur un dépôt.
Pour activer l'analyse d'images :
- Allez aux Paramètres de dépôt dans le Tableau de bord Docker Scout.
- Sélectionnez les dépôts que vous voulez activer.
- Sélectionnez Activer l'analyse d'images.
Si vos dépôts contiennent déjà des images, Docker Scout tire et analyse automatiquement les dernières images.
Analyser les images de registre
Pour déclencher l'analyse d'images pour une image dans un registre, poussez l'image vers un registre intégré avec Docker Scout, vers un dépôt où l'analyse d'images est activée.
NoteL'analyse d'images sur la plateforme Docker Scout a une limite de taille de fichier d'image maximale de 10 GB, sauf si l'image a une attestation SBOM. Voir Taille maximale d'image.
-
Connectez-vous avec votre Docker ID, soit en utilisant la commande
docker login
soit le bouton Se connecter dans Docker Desktop. -
Construisez et poussez l'image que vous voulez analyser.
$ docker build --push --tag <org>/<image:tag> --provenance=true --sbom=true .
Construire avec les drapeaux
--provenance=true
et--sbom=true
attache des attestations de construction à l'image. Docker Scout utilise les attestations pour fournir des résultats d'analyse plus précis.NoteLe pilote
docker
par défaut ne prend en charge les attestations de construction que si vous utilisez le magasin d'images containerd. -
Allez à la page Images dans le Tableau de bord Docker Scout.
L'image apparaît dans la liste peu après que vous la poussez vers le registre. Cela peut prendre quelques minutes pour que les résultats d'analyse apparaissent.
Analyser les images localement
Vous pouvez analyser les images locales avec Docker Scout en utilisant Docker Desktop ou les
commandes docker scout
pour la CLI Docker.
Docker Desktop
NoteL'indexation en arrière-plan de Docker Desktop prend en charge les images jusqu'à 10 GB de taille. Voir Taille maximale d'image.
Pour analyser une image localement en utilisant l'interface graphique Docker Desktop :
-
Tirez ou construisez l'image que vous voulez analyser.
-
Allez à la vue Images dans le Tableau de bord Docker.
-
Sélectionnez une de vos images locales dans la liste.
Cela ouvre la vue de détails d'image, montrant une répartition des paquets et vulnérabilités trouvées par l'analyse Docker Scout pour l'image que vous avez sélectionnée.
CLI
Les commandes CLI docker scout
fournissent une interface en ligne de commande pour utiliser Docker
Scout depuis votre terminal.
docker scout quickview
: résumé de l'image spécifiée, voir Aperçu rapidedocker scout cves
: analyse locale de l'image spécifiée, voir CVEdocker scout compare
: analyse et compare deux images
Par défaut, les résultats sont imprimés sur la sortie standard. Vous pouvez également exporter les résultats vers un fichier dans un format structuré, tel que le Format d'Échange de Résultats d'Analyse Statique (SARIF).
Aperçu rapide
La commande docker scout quickview
fournit un aperçu des
vulnérabilités trouvées dans une image donnée et son image de base.
$ docker scout quickview traefik:latest
✓ SBOM de l'image déjà mis en cache, 311 paquets indexés
Votre image traefik:latest │ 0C 2H 8M 1L
Image de base alpine:3 │ 0C 0H 0M 0L
Si votre image de base est obsolète, la commande quickview
montre également comment
mettre à jour votre image de base changerait l'exposition aux vulnérabilités de votre image.
$ docker scout quickview postgres:13.1
✓ Tirée
✓ Image stockée pour indexation
✓ 187 paquets indexés
Votre image postgres:13.1 │ 17C 32H 35M 33L
Image de base debian:buster-slim │ 9C 14H 9M 23L
Image de base rafraîchie debian:buster-slim │ 0C 1H 6M 29L
│ -9 -13 -3 +6
Image de base mise à jour debian:stable-slim │ 0C 0H 0M 17L
│ -9 -14 -9 -6
CVE
La commande docker scout cves
vous donne une vue complète de toutes les
vulnérabilités dans l'image. Cette commande prend en charge plusieurs drapeaux qui vous permettent de
spécifier plus précisément quelles vulnérabilités vous intéressent, par exemple,
par gravité ou type de paquet :
$ docker scout cves --format only-packages --only-vuln-packages \
--only-severity critical postgres:13.1
✓ SBOM de l'image déjà mis en cache, 187 paquets indexés
✗ 10 paquets vulnérables détectés avec un total de 17 vulnérabilités
Nom Version Type Vulnérabilités
───────────────────────────────────────────────────────────────────────────
dpkg 1.19.7 deb 1C 0H 0M 0L
glibc 2.28-10 deb 4C 0H 0M 0L
gnutls28 3.6.7-4+deb10u6 deb 2C 0H 0M 0L
libbsd 0.9.1-2 deb 1C 0H 0M 0L
libksba 1.3.5-2 deb 2C 0H 0M 0L
libtasn1-6 4.13-3 deb 1C 0H 0M 0L
lz4 1.8.3-1 deb 1C 0H 0M 0L
openldap 2.4.47+dfsg-3+deb10u5 deb 1C 0H 0M 0L
openssl 1.1.1d-0+deb10u4 deb 3C 0H 0M 0L
zlib 1:1.2.11.dfsg-1 deb 1C 0H 0M 0L
Pour plus d'informations sur ces commandes et comment les utiliser, consultez la documentation de référence CLI :
Évaluation de la gravité des vulnérabilités
Docker Scout assigne une note de gravité aux vulnérabilités basée sur les données de vulnérabilité des sources d'avis. Les avis sont classés et priorisés selon le type de paquet qui est affecté par une vulnérabilité. Par exemple, si une vulnérabilité affecte un paquet OS, le niveau de gravité assigné par le mainteneur de distribution est priorisé.
Si la source d'avis préférée a assigné une note de gravité à un CVE, mais
pas un score CVSS, Docker Scout retombe sur l'affichage d'un score CVSS d'une
autre source. La note de gravité de l'avis préféré et le score CVSS
de l'avis de fallback sont affichés ensemble. Cela signifie qu'une
vulnérabilité peut avoir une note de gravité FAIBLE
avec un score CVSS de 9.8, si
l'avis préféré assigne une note FAIBLE
mais aucun score CVSS, et un avis de fallback
assigne un score CVSS de 9.8.
Les vulnérabilités qui n'ont pas reçu de score CVSS dans aucune source sont catégorisées comme Non spécifiées (U).
Docker Scout n'implémente pas un système propriétaire de métriques de vulnérabilité. Toutes les métriques sont héritées des avis de sécurité avec lesquels Docker Scout s'intègre. Les avis peuvent utiliser différents seuils pour classer les vulnérabilités, mais la plupart d'entre eux adhèrent à la spécification CVSS v3.0, qui mappe les scores CVSS aux notes de gravité selon le tableau suivant :
Score CVSS | Note de gravité |
---|---|
0.1 – 3.9 | Faible (L) |
4.0 – 6.9 | Moyenne (M) |
7.0 – 8.9 | Élevée (H) |
9.0 – 10.0 | Critique (C) |
Pour plus d'informations, voir Métriques de Vulnérabilité (NIST).
Notez que, étant donné la priorisation d'avis et le mécanisme de fallback décrits plus tôt, les notes de gravité affichées dans Docker Scout peuvent dévier de ce système de notation.
Taille maximale d'image
L'analyse d'images sur la plateforme Docker Scout, et l'analyse déclenchée par l'indexation en arrière-plan dans Docker Desktop, a une limite de taille de fichier d'image de 10 GB (non compressé). Pour analyser des images plus grandes que cela, vous pouvez soit :
- Attacher des attestations SBOM au moment de la construction
- Utiliser la CLI pour analyser l'image localement
Les images analysées localement avec la CLI et les images avec des attestations SBOM n'ont aucune taille de fichier maximale.