Aller au contenu
Sécurité medium

Build sécurisé & provenance (SOCLE INT)

6 min de lecture

Le build transforme le code et ses dépendances en artefact : il doit être tracé et prouvable. Cette famille (I3, domaine Intégration) impose un build sur plateforme hébergée et tracée, une provenance SLSA générée et attachée (builder, source, paramètres), et au souverain un build hermétique et isolé (niveau L3).

Un artefact construit sur un poste ou une plateforme opaque est invérifiable : on ignore où et comment il a été produit. Builder sur une plateforme hébergée, tracée et isolée qui émet une provenance (builder, source, paramètres) rend l'origine reconstituable et vérifiable par les consommateurs. Au plus haut niveau, un build hermétique (dépendances pré-fetchées, sans accès réseau non maîtrisé) et reproductible ferme la dernière porte : ce qui entre est connu d'avance, et toute divergence du résultat se détecte, donc toute injection survenue pendant la construction.

Concrètement, ces exigences parent : le build pollué ou opaque dont l'origine est invérifiable, la dépendance substituée ou l'exfiltration via un build non hermétique, et l'artefact pirate indistinguable du légitime faute de provenance attachée et vérifiable. Quatre exigences, des renforcées (R2) aux souveraines (R3).

L'enjeu

Un build sans isolation ni provenance peut être piégé sans laisser de preuve.

Les erreurs les plus fréquentes sur ce périmètre :

build avec accès réseau non maîtrisé
pas de provenance attachée
résultat non reproductible
Comment lire R1R2R3du fondamental au souverain Doitobligatoire Devraitrecommandé Chaque carte porte son énoncé, le pourquoi, la preuve attendue et ses correspondances aux standards.
Afficher
SOCLE-INT-BLD-1 R2 Doit

build sur plateforme hébergée, tracée et isolée, générant une provenance.#

Un build qui partage son environnement peut être pollué par les autres ; opaque, il est invérifiable. Builder sur une plateforme hébergée, tracée et isolée qui émet une provenance garantit que chaque artefact a été produit dans des conditions connues et reconstituables, fondation des niveaux SLSA.

Preuve attendue
Plateforme de build hébergée et tracée ; provenance générée.
Outillage
slsa-github-generator
Correspondances & menaces parées 3 standards · 1 menace
Menaces parées

Le build est lancé depuis une source ou un fork non officiel, produisant un artefact d'apparence légitime à partir de code non vérifié. L'origine du build n'est pas garantie sans provenance liant artefact et source SLSA (D) SLSA (E).

SOCLE-INT-BLD-2 R2 Doit

provenance d'artefact générée et attachée (in-toto), vérifiable par les consommateurs.#

Une provenance qui reste chez le producteur ne protège pas le consommateur. Générer et attacher une attestation in-toto à l'artefact, vérifiable par ceux qui l'installent, leur permet de confirmer eux-mêmes son origine et son intégrité avant de l'exécuter, sans faire confiance sur parole.

Preuve attendue
Attestation de provenance in-toto attachée et vérifiable.
Outillage
slsa-github-generator
Correspondances & menaces parées 2 standards · 2 menaces
Correspondance
Menaces parées

Le build est lancé depuis une source ou un fork non officiel, produisant un artefact d'apparence légitime à partir de code non vérifié. L'origine du build n'est pas garantie sans provenance liant artefact et source SLSA (D) SLSA (E). L'attestation de provenance est forgée ou altérée pour faire croire qu'un artefact provient d'un build légitime. Sans provenance non falsifiable (build isolé, signature), la traçabilité est trompeuse SLSA (verification).

SOCLE-INT-BLD-3 R3 Doit Souverain

build hermétique et isolé (dépendances pré-fetchées, pas d'accès réseau non maîtrisé) pour les artefacts sensibles.#

Un build qui accède librement au réseau peut tirer une dépendance substituée ou exfiltrer en cours de route. Un build hermétique (dépendances pré-fetchées, pas d'accès réseau non maîtrisé) supprime cette surface pour les artefacts sensibles : ce qui entre est connu d'avance, ce qui sort est l'artefact attendu.

Preuve attendue
Preuve de build hermétique/isolé (dépendances pré-fetchées, réseau maîtrisé).
Outillage
Bazel
Correspondances & menaces parées 2 standards · 2 menaces
Correspondance
Menaces parées

Un attaquant écrit dans un cache partagé du CI (dépendances, couches d'image, artefacts intermédiaires) une charge réutilisée par d'autres builds. Le cache, supposé sûr, propage la compromission entre exécutions ou projets CICD-SEC-4. Le build est lancé depuis une source ou un fork non officiel, produisant un artefact d'apparence légitime à partir de code non vérifié. L'origine du build n'est pas garantie sans provenance liant artefact et source SLSA (D) SLSA (E).

SOCLE-INT-BLD-4 R2 Devrait

build reproductible (résultat déterministe vérifiable).#

Si rebâtir le même code donne un binaire différent, impossible de prouver qu'un artefact correspond à ses sources. Un build reproductible (résultat déterministe) permet à un tiers de reconstruire à l'identique et de détecter toute divergence, donc toute injection survenue pendant la construction.

Preuve attendue
Attestation de reproductibilité du build.
Outillage
slsa-github-generator
Correspondances & menaces parées 2 standards · 1 menace
Correspondance
Menaces parées

Un installeur officiel et signé est modifié à la source ou au build pour embarquer une charge, distribué via le canal légitime (cas CCleaner, 3CX). La signature valide endort la méfiance CNCF Trust & Signing.

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn