sbomasm : Assemblage SBOM pour les produits logiciels
16 juil. 2023
Interlynk
Établir le logiciel de facturation des matériaux, ou "SBOM" — aux côtés du logiciel lui-même — est une bonne pratique pour surveiller les vulnérabilités de jour zéro ou répondre aux besoins réglementaires et de conformité.
Le SBOM est également prêt pour les exigences de transparence logicielle émergentes dans des domaines bien réglementés tels que les finances, les soins de santé et les agences fédérales.
Des outils commerciaux et open-source existent pour construire des SBOM pour des projets logiciels dans la plupart des écosystèmes logiciels et à partir de binaires d'application et de firmware.
Cependant, un produit logiciel typiquement disponible dans le commerce ou un appareil connecté est construit comme une collection de logiciels et de matériel projets assemblés à partir de plusieurs composants matériels, bibliothèques, services, ou même la distribution directe d'exécutables.
Pour des exemples :
Une application mobile inclut des bibliothèques tierces pour des besoins de marketing, d'authentification ou de publicité — toutes provenant de fournisseurs tiers.
Un dispositif médical peut inclure des composants programmables de divers fournisseurs, chacun avec ses propres versions et cycles de mise à niveau.
Une application de bureau peut avec certains exécutables tiers qu'elle appelle pour des fonctionnalités spécifiques.
Dans ces cas, le SBOM pour des projets et bibliothèques peut être construit avec le projet mais la combinaison de ceux-ci dans le produit SBOM final nécessite une compréhension plus profonde des formats et des limitations du SBOM.
Construire un produit SBOM final en combinant le projet SBOM résout plusieurs problèmes, y compris :
Fournir un seul produit SBOM au lieu de nombreux projet SBOM
Suivre la version du produit par rapport aux versions spécifiques des projets
Suivre le produit final avec un seul SKU dans les systèmes de gestion SBOM
Mapper les vulnérabilités nouvellement divulguées à des projets spécifiques
sbomasm — Assembleur pour SBOM
L'outil gratuit et open-source d'Interlynk - sombasm est la solution à ce problème d'assemblage de SBOM.
sbomasm est un utilitaire en ligne de commande conçu pour fonctionner sur les versions modernes de Windows, Mac et Linux. C'est la façon la plus simple de combiner des SBOM de plusieurs projets en un SBOM produit avec le nom commercial du produit, la version, la licence et d'autres métadonnées.
sbomasm dispose d'une entrée configurable qui peut être utilisée dans la plupart des pipelines CI/CD pour automatiser ce processus à chaque publication de produit.
sbomasm s'occupe de nombreuses complexités, telles que la préservation des relations entre les composants et des sommes de contrôle pour le suivi des vulnérabilités des composants, la gestion de la duplication des composants ou des sous-composants et l'activation des spécifications multi-formats.
Fonctionnalités
sbomasm prend en charge :
formats d'entrée et de sortie CycloneDX et SPDX
interface de ligne de commande et fichier de configuration comme entrée
disponible sur la plupart des versions modernes de Windows, Linux et Mac
fusion plate (pas de hiérarchie) ou fusion hiérarchique
indicateur d'utilisation du produit final (déclaration de package principal SBOM)
options pour automatiser la génération de SBOM du produit
Exemples
Dans sa forme la plus simple, sbomasm peut être utilisé pour combiner des SBOM de deux projets différents en un produit final :
Projets
Moteur Docker — v24.0.2 : Fichier SBOM : engine.spdx.tv
Docker Compose — v2.19.1 : Fichier SBOM : compose.spdx.tv
Produit
Docker Desktop — v4.21.2 : Fichier SBOM souhaité desktop.spdx.tv
Commande
C'est tout !
Une fois terminé, le fichier SBOM desktop.spdx.tv décrira un produit nommé Docker Desktop de version v4.21.2 et de type application composé de trois parties — moteur docker v24.0.2, docker compose v2.19.1
Tous les composants conservent leurs licences et sommes de contrôle d'origine, garantissant que les vérifications futures respectent les exigences.
Toute vulnérabilité de jour zéro contre un composant de Docker Engine v24.0.1 apparaîtra dans Docker Desktop v4.21.2 ainsi que sous le nom du composant — Docker Engine v24.0.1 (préservation de la relation)
Configuration
sbomasm prend en charge la configuration la plus courante à partir du fichier de configuration aussi. Le modèle pour un tel fichier peut être généré avec
Le fichier de configuration peut être modifié pour personnaliser plusieurs options et peut être utilisé avec une simple commande pour n'importe quel nombre de projets SBOM :
Fonctionnalités supplémentaires
sbomasm les fonctionnalités sont incluses dans la plateforme SBOM d'Interlynk. Elle peut être mise à niveau vers une version commerciale pour d'autres fonctionnalités, telles que :
Importation automatique de SBOM à partir des projets
Extraction de chaque SBOM de projet du SBOM produit
Interface visuelle et modèles intégrés pour l'assemblage automatique de SBOM
Support pour les licences commerciales
Suppression du nom du fournisseur ou du composant du SBOM produit
Avenir
sbomasm est l'un des outils open source en pleine expansion de la suite d'outils open source d'Interlynk initiative.
Notre mission est de rendre facile pour tous les systèmes CI/CD de produire des SBOM et de les rendre utiles pour les consommateurs.
Nous faisons évoluer continuellement tous les outils. N'hésitez pas à nous contacter à hello@interlynk.io si vous souhaitez utiliser sbomasm ou d'autres outils,
sbomqspour l'évaluation de la qualité des SBOM,sbomgrpour la recherche de SBOM ousbomexpour une exploration des formats et spécifications de SBOM,
Nous sommes impatients d'aider et d'élargir les fonctionnalités de ces outils.
