Tout sur CycloneDX 1.5
9 juil. 2023
Interlynk
CycloneDX est l'une des trois spécifications SBOM recommandées par l'NTIA/CISA.
L'équipe de CycloneDX a publié sa dernière version - 1.5, le 26 juin. Cette version regorge de fonctionnalités qui couvrent de nouveaux cas d'utilisation de SBOM et développe les capacités existantes.
Creusons un peu.
xBOM Expansion

Source: Capacités de CycloneDX
CycloneDX est connu pour sa flexibilité à prendre en charge une variété de types de BOM, tels que SBOM, SaaSBOM et HBOM. CycloneDX 1.5 élargit les cas d'utilisation dans quatre directions :
ML-BOM : SBOM pour les applications utilisant l'apprentissage automatique
MBOM : BOM classique en tant que CycloneDX aux côtés des processus et des tests
KBOM : SBOM pour les clusters Kubernetes
SBOM pour les applications low-code
ML-BOM
Cette version prend en charge la création d'une liste de matériaux d'apprentissage automatique (ML-BOM) en tant que document CycloneDX. Avec la version 1.5, CycloneDX peut aider à documenter les modèles d'apprentissage automatique et les ensembles de données comme partie des composants SBOM. Les documents ML-BOM peuvent aider à documenter et à partager les méthodes, les contraintes et les préoccupations liées au modèle, telles que l'IA éthique ou la confidentialité des données.
Dans la spécification, les fonctionnalités ML-BOM sont créées en incluant machine-learning-model et data au type du nœud composants de CycloneDX 1.4. La spécification inclut également externalReferences le nouveau type model-card. Cette référence décrit l'utilisation prévue d'un modèle d'apprentissage automatique, des limitations potentielles, des biais, des considérations éthiques, des paramètres d'entraînement et d'autres données de transparence ML.
MBOM
Cette version peut décrire comment un produit est fabriqué, appelé la liste de matériaux de fabrication (MBOM). C'est une amélioration par rapport à la BOM classique (liste des composants de fabrication) car le MBOM, aux côtés des composants, inclut toutes les pièces, y compris le matériel, le firmware, le logiciel, les processus et les tests.
Les fonctionnalités du MBOM sont l'inclusion de nouveaux types au nœud components :
platform
device-driverdata
Le MBOM utilise également le nœud formulation nouvellement introduit pour décrire comment un composant ou un service a été fabriqué ou déployé. Ce nœud prend en charge l'inclusion de détails pour les formules, les tâches, les étapes et tous services. De plus, chaque composant peut spécifier sa formulation également, permettant une formulation récursive tout au long du processus de construction.
Enfin, les types de externalReferences sont étendus pour inclure de nouveaux types pour evidence, formulation, quality-metrics et codified-infrastructure.
KBOM
Le scanner de sécurité open-source Trivy d'Aqua utilise CycloneDX 1.5 pour générer la liste de matériaux Kubernetes (KBOM). KBOM peut être utilisé pour documenter la composition d'un cluster, les manifests des composants, les versions et les images.

Source : Présentation de KBOM — Liste de matériaux Kubernetes
KBOM utilise CycloneDX 1.5 pour diviser le cluster en entités logiques "Plan de contrôle", "Nœuds" et "Extensions" — permettant une analyse hors ligne du cluster ainsi que son suivi de vulnérabilité et de sécurité.
SBOM pour les applications low-code
La complexité des applications low-code est cachée derrière les plateformes low-code. Cette version de CycloneDX permet à une plateforme low-code de documenter l'état de chaque application séparément.
Expansion des fonctionnalités

Source : Guide autoritaire d'OWASP sur SBOM : Phases de cycle de vie
CycloneDX 1.5 améliore la couverture existante de SBOM avec des améliorations spécifiques à la documentation :
Étape du cycle de vie SDLC pour la création de SBOM
Licences commerciales
Modèle de maturité BOM
Qualité de SBOM
Inconnues connues dans les composants
Preuve de concept pour la vulnérabilité
Étape du cycle de vie
CycloneDX définit sept étapes du cycle de vie : Conception, Pré-construction, Construction, Post-construction, Opérations, Découverte et Mise hors service. De plus, le même champ peut être utilisé pour définir une phase de cycle de vie personnalisée avec la description d'une telle phase. Le Guide autoritaire de SBOM appelle le cycle de vie utile pour la gestion des actifs logiciels (SAM) et la gestion des actifs informatiques (ITAM). Les étapes de cycle de vie pré-définies montrent les types de documents SBOM de CISA basés sur le point de création.
CycloneDX 1.5 inclut le cycle de vie comme partie du nœud metadata qui incluait auparavant un horodatage, des outils, des fournisseurs, des licences et des auteurs.
Licences commerciales
Cette version ajoute également un support pour la documentation des licences commerciales dans le SBOM. Cela, aux côtés du support des licences open-source hérité de CycloneDX 1.4, fournit un mécanisme robuste pour documenter toutes les licences au sein d'un produit. La gestion des licences, y compris le suivi de l'utilisation des licences, des renouvellements et des violations potentielles, permet au SBOM de répondre aux exigences SAM et ITAM.

Source : Expression de licence commerciale dans CycloneDX 1.5
Modèle de maturité BOM
La norme de vérification des composants logiciels d'OWASP (SCVS) évalue la maturité de la chaîne d'approvisionnement des logiciels d'une organisation. Les trois niveaux de SCVS permettent d'évaluer l'inventaire, SBOM, environnement de construction, gestion des packages, analyse des composants et l'ascendance, ainsi que la provenance des composants.
Le modèle de maturité BOM dérivé de SCVS permet d'évaluer le SBOM par rapport à des politiques prédéfinies. Une telle évaluation peut fournir un retour d'information aux générateurs de SBOM tels que les outils SBOM ou les fournisseurs de composants.
Qualité de SBOM

Source : Expression de licence commerciale dans CycloneDX 1.5
Le Guide autoritaire de SBOM décrit toutes les nouvelles fonctionnalités de CycloneDX 1.5. Le même document établit « la qualité » de SBOM comme un construct multidimensionnel pour la largeur, la profondeur, les cycles de vie, les techniques et la confiance.
Les champs lifecycle et evidence jouent un rôle clé dans la spécification de la qualité du SBOM. evidence fournit la capacité de documenter les preuves collectées par divers formes d'extraction ou d'analyse.
Dans la spécification de CycloneDX, evidence est enregistré sur les composants > nœud evidence par composant. Les valeurs peuvent inclure la confiance dans la preuve, les outils utilisés et la pile d'appels pour la preuve.
Inconnues connues pour les composants

Source : Guide autoritaire de SBOM
CycloneDX 1.5 améliore l'enregistrement de l'intégralité de SBOM en introduisant de nouveaux champs dans le nœud compositions > aggregate pour clarifier l'intégralité des composants — de première et de troisième partie, propriétaires et open-source.
Preuve de concept pour la vulnérabilité
La divulgation et la gestion des vulnérabilités se sont également améliorées avec CycloneDX 1.5. La spécification permet l'enregistrement du nœud proofOfConcept sous Vulnerabilities qui peut capturer — les étapes de reproduction, l'environnement et le matériel de support pour toute preuve de concept connue.
Le nœud vulnerabilities prend également en charge l'enregistrement de rejected comme la date et l'heure (timestamp) à laquelle l'enregistrement de vulnérabilité a été rejeté (le cas échéant).
CycloneDX continue de progresser vers l'amélioration de la couverture du SBOM et d'améliorer la manière dont les données doivent être interprétées et utilisées.
TABLE DES MATIÈRES
