Google (en anglais seulement annoncé que leurs constructions distroless répondent au niveau 2 de la Niveaux de la chaîne d’approvisionnement pour les artefacts logiciels (SLSA). Le niveau 2 exige que le processus de construction de ces images soit inviolable. Cela améliore leur version précédente qui a vu toutes les images signées avec cosigne.

Les images sans distribution sont des images réduites avec une surface considérablement réduite. Ces images n’incluent pas les outils courants tels que les shells ou les gestionnaires de packages. La plus petite des images sans distribution est inférieure à 50% de l’équivalent alpine et moins de 2 % des éléments similaires debian image.

Pour atteindre le niveau SLSA 2, l’équipe a mis en œuvre un certain nombre d’améliorations liées au pipeline de construction de ces images sans distribution. Cela inclut de s’assurer que le code source est contrôlé par version, que la génération est scriptée et exécutée à l’aide d’un service de génération, et que la provenance est disponible, authentifiée et générée par le service. Provenance sont des métadonnées sur la façon dont l’artefact a été construit, y compris des informations sur la propriété, les sources, les dépendances et le processus de génération utilisé. Google a déjà publié un preuve de concept GitHub Action qui démontre la provenance de la production conformément au niveau 1 de la SLAS.

Le respect de ces directives a nécessité un certain nombre de modifications du pipeline de génération. L’équipe mise en place Tekton Pipelines et Chaînes Tekton dans un Moteur Google Kubernetes (GKE) pour automatiser la construction d’images et la génération de provenance. Chaque fois qu’un PR est fusionné avec le distroless Dépôt GitHub, le pipeline Tekton est déclenché pour créer l’image. Ensuite, les tekton chains génèrent la provenance signée pour chaque image. Cette provenance est stockée à côté de l’image dans un registre OCI. Un enregistrement de la provenance est également stocké dans le rekor journal de transparence.

Les builds distroless étant entièrement reproductibles avec tous les paramètres de build nécessaires enregistrés dans la provenance, il est possible de reconstruire entièrement l’image. Cela permet aux consommateurs de vérifier que l’image correspond aux résumés d’image fournis. La vérification de l’attestation pour une image sans distribution peut être effectuée avec cosign et la clé publique sans distribution :

Publicité
$ cosign verify-attestation -key cosign.pub gcr.io/distroless/base@sha256:4f8aa0aba190e375a5a53bb71a303c89d9734c817714aeaca9bb23b82135ed91

Verification for gcr.io/distroless/base@sha256:4f8aa0aba190e375a5a53bb71a303c89d9734c817714aeaca9bb23b82135ed91 --
The following checks were performed on each of these signatures:
  - The cosign claims were validated
  - The signatures were verified against the specified public key
  - Any certificates were verified against the Fulcio roots.

La provenance du journal de transparence rekor peut être obtenue pour une image donnée à l’aide de l’icône rekor-cli outil:

$ rekor-cli search --sha sha256:4f8aa0aba190e375a5a53bb71a303c89d9734c817714aeaca9bb23b82135ed91

af7a9687d263504ccdb2759169c9903d8760775045c6e7554e365ec2bf29f6f8

$ rekor-cli get --uuid af7a9687d263504ccdb2759169c9903d8760775045c6e7554e365ec2bf29f6f8 --format json | jq -r .Attestation | base64 --decode | jq

Par défaut, les images distroless ne contiennent pas de shell. Le Dockerfile ENTRYPOINT la commande doit être spécifiée dans vector pour éviter le préfixe d’exécution du conteneur avec un shell. Si nécessaire, il y a un :debug image qui fournit un Shell busybox à des fins de débogage.

Garde-chaîne ont récemment déplacé leur image non distribuée, Wolfi, dans disponibilité générale. Semblable aux images sans distribution, Wolfi est une image minimale qui n’inclut pas de gestionnaire de paquets ni même de noyau. Chaque package inclus dans Wolfi dispose d’une sbOM (Software Bill of Materials) au moment de la construction en standard. Analyses de vulnérabilité à l’aide de Trivy afficher un réduction marquée dans cve compte par rapport aux images traditionnelles basées sur des distributions.

La sécurité de la chaîne d’approvisionnement a fait l’objet d’investissements importants au cours des derniers mois en raison d’un paysage de menaces croissantes. Un récent Rapport Aqua Security ont constaté une augmentation de 300% des attaques de la chaîne d’approvisionnement de 2020 à 2021. Le récent Rapport Google 2022 Accélérer l’état des DevOps a axé son analyse sur la façon dont les organisations sécurisent leur chaîne d’approvisionnement en logiciels. Bien que le rapport ait révélé que de nombreuses pratiques sont bien adoptées, il existe encore un certain nombre de pratiques recommandées qui ne sont pas répandues.

L’équipe a indiqué qu’elle travaillait maintenant à l’atteinte du niveau SLSA 3. Cela nécessitera l’ajout de provenance non falsifiable et de constructions isolées à leur chaîne d’approvisionnement. Les images sans distribution de Google sont disponibles à partir de GitHub (en anglais) et sont libres d’utilisation sous la licence Apache 2.0.

Rate this post
Publicité
Article précédentLa Norvège se prépare à annuler la réduction de la taxe sur l’électricité pour les mineurs de crypto-monnaie – Mining Bitcoin News
Article suivantJoJo’s Bizarre Adventure: Stone Ocean Anime’s 3rd, Final Part lance sur Netflix le 1er décembre – News 24
Avatar
Violette Laurent est une blogueuse tech nantaise diplômée en communication de masse et douée pour l'écriture. Elle est la rédactrice en chef de fr.techtribune.net. Les sujets de prédilection de Violette sont la technologie et la cryptographie. Elle est également une grande fan d'Anime et de Manga.

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici