De plus en plus d'entreprises reconnaissent l'importance d'un SBOM à jour dans le cadre de chaque produit et nouvelle version. La NSA même publié un document encourager les entreprises à adopter cet outil pour accroître la sensibilisation à la cybersécurité et mieux protéger leurs chaînes d'approvisionnement en logiciels. Même si vous concluez que générer un SBOM est la bonne chose à faire, vous ne savez peut-être pas comment s'y prendre, quels outils utiliser ou comment les mettre en œuvre. Il existe plusieurs outils de génération SBOM sur le marché, certains sont propriétaires, d'autres gratuits et d'autres sont des outils open source. Dans cet article, nous aborderons les fonctionnalités clés que votre outil de génération SBOM devrait avoir pour qu'il soit adapté à vos besoins.
Formats SBOM
Il y a deux principaux Formats SBOM utilisés sur le marché aujourd'hui : SPDX et CycloneDX.
Échange de données de progiciels (SPDX) est un projet SBOM open source et lisible par machine de la fondation Linux. La dernière version du SPDX a été conçue conformément à la norme de la NTIA pour 'Éléments minimaux pour une nomenclature logicielle.' Il répertorie les composants, les droits d'auteur, les licences et les références de sécurité d'un logiciel.
CycloneDX (CDX) est également un format SBOM open source et lisible par machine développé par la communauté Open Web Application Security Project (OWASP). En tant que format de nomenclature, CycloneDX a d'autres applications au-delà de la préparation de nomenclatures logicielles. Il peut également être utilisé pour compiler des composants, des vulnérabilités et des services de matériel et de systèmes cloud.
Avant de commencer à consulter les différents outils, réfléchissez au format qui répondrait le mieux à vos besoins. Il est préférable de tenir compte non seulement de l'heure actuelle, mais également de vos besoins futurs, car une fois que vous vous engagez dans un certain format, il vous sera probablement plus facile de vous y tenir. Considérez les utilisations que vos SBOM vont voir et les outils que vous utiliserez pour analyser les données. Si vous ne savez pas quel format rechercher, recherchez un outil capable de générer les deux formats.
Caractéristiques principales des outils SBOM
Voici quelques fonctionnalités que vous devriez rechercher dans un bon outil de génération SBOM :
Collection SBOM à partir du SCM et du produit final – Obtenir une couverture complète de votre produit est la clé d’un bon SBOM. Il est bien connu qu'au cours de la phase de développement, vous ne récupérez pas toujours toutes les dépendances et ne les intégrez pas dans le projet – c'est quelque chose qui se fait généralement uniquement lors de la compilation finale à la fin de votre pipeline CI/CD. Obtenir un SBOM de votre SCM et de votre produit final vous permet de comparer les deux et également de vous assurer qu'aucune modification indésirable n'a été apportée aux fichiers ou dossiers entre les étapes. La comparaison de fichiers et de dossiers entre SBOM peut être effectuée en comparant les valeurs de hachage calculées pour chacun. Avoir un outil capable de le faire automatiquement vous ferait gagner beaucoup de temps et d’inquiétude.
Analyse SBOM – Le SBOM est un fichier contenant beaucoup de données. Il est préférable de disposer d'un logiciel conçu pour l'analyser en fonction des informations que vous souhaitez recevoir. Bien sûr, créer soi-même un tel logiciel est lent et prend du temps, il est donc préférable d'obtenir un outil qui inclut déjà le logiciel d'analyse afin de pouvoir vérifier les rapports résultants plutôt que d'essayer de faire des têtes ou des queues d'un fichier SBOM de plusieurs milliers de lignes. . Certains rapports que vous pourriez envisager sont des rapports de vulnérabilité complets pour toutes les dépendances, un rapport sur tout composant obsolète utilisé dans votre logiciel, un rapport sur toutes les licences open source utilisées et un rapport sur la santé relative des licences open source. composants sources utilisés. Ce dernier pourrait utiliser des éléments comme le Tableau de bord OpenSSF donner une note impartiale à chaque package utilisé.
Automatisation SBOM et stockage sécurisé – Une partie des principes du cadre de sécurité SLSA consiste à rendre chaque fonctionnalité de sécurité aussi automatique et aussi difficile à manipuler que possible. L'idée est que permettre aux utilisateurs de manipuler les résultats des fonctionnalités de sécurité ne ferait que laisser une ouverture pour l'annulation ou la manipulation de cette fonctionnalité si le besoin s'en fait sentir. Dans le cadre de ce concept, vous pouvez rechercher un outil SBOM qui peut être entièrement automatisé pour s'exécuter indépendamment sur chaque pipeline CI/CD ou exécution de compilation sans nécessiter aucune intervention humaine. De plus, recherchez un outil SBOM qui stocke les preuves dans un emplacement sécurisé afin que seul le personnel correctement validé puisse y accéder. Cela garantirait que les preuves du SBOM ne pourraient pas être manipulées ou supprimées, quelles que soient les circonstances.
Analyse SBOM continue – Un autre avantage potentiel du stockage de vos SBOM par un tiers est de permettre à ce tiers de les analyser en permanence à la recherche de nouvelles vulnérabilités. De nouvelles vulnérabilités sont constamment découvertes et signalées et même un package réputé propre aujourd’hui pourrait ne pas le rester demain. Disposer d'une fonctionnalité SBOM qui analyse en permanence tous vos SBOM et recherche de nouvelles vulnérabilités, vous informant de toute découverte, garantirait que même si vous ne créez pas un nouveau SBOM chaque jour, semaine ou mois, vous ne seriez toujours pas pris au dépourvu par une nouvelle vulnérabilité dans un package précédemment propre que vous avez inclus dans votre produit.
Partage intelligent SBOM – L’une des principales raisons d’avoir un bon SBOM, outre le fait de disposer d’une source permettant de vérifier d’éventuels problèmes de chaîne d’approvisionnement en logiciels, est de le partager avec d’autres. Vous souhaiterez peut-être partager les informations avec d'autres équipes internes, avec des clients, des sous-traitants tiers ou des auditeurs. Bien sûr, vous pouvez toujours simplement envoyer un fichier SBOM par courrier électronique à une partie intéressée, mais compte tenu des mises à jour logicielles fréquentes et donc des nouveaux SBOM fréquents, cela pourrait devenir très fastidieux très rapidement. Il est de loin préférable d'avoir un outil doté d'une capacité de partage intégrée afin que vous puissiez définir une liste d'abonnés et que les nouveaux SBOM avec ou sans leurs rapports d'accompagnement seraient automatiquement partagés en fonction du projet, de ses abonnés, de leur niveau d'intérêt, etc. .
Avis SBOM – Comme nous l'avons déjà mentionné, un SBOM peut inclure des milliers de dépendances. S’attendre à un bilan de santé impeccable – zéro vulnérabilité – n’est pas réaliste. Vous aurez toujours des vulnérabilités. La grande question est la suivante : ces vulnérabilités sont-elles exploitables dans la configuration exacte de votre produit ? Seuls les développeurs peuvent répondre à cette question, mais vous devez vous assurer que votre outil SBOM dispose d'une fonctionnalité vous permettant de partager ces résultats. Vous ne voulez pas avoir à répondre 1000 XNUMX fois à la même question de vulnérabilité. Avoir la possibilité d'ajouter des avis à votre SBOM en notant l'état exact de chaque vulnérabilité trouvée vous permettrait à la fois de montrer à vos clients et partenaires que vous êtes dans le coup et de partager les résultats une fois que vos développeurs auront vérifié qu'une vulnérabilité particulière est ne sauraient exploitable dans votre produit.
Par où commencer avec votre outil de génération SBOM
Il existe de nombreuses autres fonctionnalités que vous pouvez rechercher et trouver dans un outil de génération SBOM, mais je pense que notre liste de fonctionnalités montre clairement qu'un bon outil SBOM est plus qu'un élément solitaire. Il est préférable de trouver un système complet intégrant la génération SBOM, l'analyse (à la fois ponctuelle et continue), les rapports et le partage.
Compte tenu de l'attention croissante des éléments de réglementation aux États-Unis, il semble qu'il ne faudra pas longtemps avant qu'un SBOM associé devienne une norme pour chaque nouvelle version de logiciel. Lorsque cela se produit, vous souhaitez déjà que le meilleur outil soit sélectionné et intégré à votre SDLC. Je voudrais également souligner qu'un SBOM ne peut pas porter atteinte à votre adresse IP – il ne « regarde » aucun code et analyse uniquement les noms de fichiers, les versions, etc. Cela signifie que le partage de SBOM ou leur stockage dans un emplacement sécurisé par un tiers de confiance ne met en aucun cas en danger votre sécurité ou votre IP.
Des services tels que la plate-forme Scribe Security peuvent vous offrir toutes les fonctionnalités couvertes dans cet article, avec davantage de fonctionnalités ajoutées à tout moment. N'hésitez pas à consulter notre plateforme et à découvrir les autres fonctionnalités incluses par notre outil de génération SBOM qui pourraient bénéficier à vous et à votre organisation.