Les SBOM générés par Snyk incluent désormais les informations de licence des bibliothèques open source de vos projets
9 décembre 2024
0 minutes de lectureNous sommes ravis d’annoncer que les SBOM (nomenclatures logicielles) générés par les outils Snyk incluront des informations de licence ! Cette nouvelle fonctionnalité s’inscrit dans le cadre de nos efforts continus autour de notre solution de sécurité de la chaîne d’approvisionnement logicielle. Les outils de cette solution, conçus pour les développeurs, vous aident à mieux comprendre la chaîne d’approvisionnement de vos applications, à repérer les risques potentiels et à prendre les mesures nécessaires pour les anticiper.
Le rôle essentiel des SBOM dans la sécurisation de la chaîne d’approvisionnement logicielle
La plupart des logiciels modernes sont composés d’éléments open source préexistants, ce qui peut accélérer le développement, mais aussi introduire des vulnérabilités et des risques pour la chaîne d’approvisionnement. En réponse aux directives réglementaires visant à atténuer ces menaces, de nombreuses organisations adoptent la pratique consistant à créer des nomenclatures logicielles (SBOM), des inventaires détaillés des composants et dépendances de leurs applications.
Un SBOM est comparable à une nomenclature de fabrication : il fournit des informations essentielles aux acheteurs et aux outils en aval. Des formats standardisés comme CycloneDX et SPDX facilitent la création de rapports lisibles et exploitables. Pour les équipes AppSec, cette visibilité est indispensable pour comprendre et contrer les attaques visant la chaîne d’approvisionnement, tout en respectant les exigences réglementaires.
Cependant, intégrer la création de SBOM au processus de développement peut s’avérer difficile pour les développeurs. Heureusement, des outils comme Snyk simplifient cette tâche en permettant de générer facilement des SBOM. Vous obtenez ainsi une vision claire des éléments constitutifs de votre application (par exemple, ses composants open source) et de leurs interactions.
À retenir : la création d’un SBOM ne doit pas freiner l’innovation. Elle doit plutôt permettre aux développeurs de concilier sécurité et temps consacré au développement et, au final, aider les organisations à réduire les risques.
Les risques liés aux licences dans le développement logiciel
Les SBOM ne servent pas uniquement à répertorier le contenu d’un logiciel : ils sont tout aussi essentiels pour comprendre les risques associés aux licences open source. L’un des principaux problèmes concerne les accords de licence qui ne protègent pas suffisamment votre propriété intellectuelle. Par exemple, l’utilisation d’une licence telle que la MIT License peut vous exposer à des risques potentiels de violation du droit d’auteur. Comme elle exige uniquement une attribution et ne limite ni l’utilisation ni la distribution, la MIT License peut être à double tranchant : elle offre de la flexibilité, mais permet aussi plus facilement à d’autres personnes de réutiliser votre code sans autorisation.
Connaître les types de licences utilisés par les dépendances de vos applications vous permet de vérifier de manière proactive si celles-ci présentent des risques liés à des licences inconnues. Les métadonnées de licence désormais incluses dans les SBOM générés par Snyk peuvent aider les équipes juridiques, risques et audit à gérer la conformité des licences. Les SBOM sont souvent stockés ou traités par des outils en aval, par exemple des moteurs de politiques personnalisés ou des outils de génération de rapports destinés à des équipes comme le service juridique. Les données de licence peuvent également aider à déterminer les mentions d’attribution requises.
Les informations de licence dans vos SBOM avec Snyk
Jusqu’à présent, les utilisateurs devaient recourir à des solutions de contournement, comme modifier ou annoter les SBOM, ou les enrichir avec des données provenant d’autres outils. Snyk propose l’outil open source parlay, qui permet d’enrichir les SBOM à partir de sources tierces, comme ecosyste.ms, qui fournit des informations sur les licences associées à chaque dépendance. Snyk fournit déjà des données de licence dans d’autres parties de son produit, notamment dans son interface en ligne de commande (CLI) et son interface web. Il était donc logique de les intégrer directement aux SBOM générés.
En effet, les informations de licence figurent parmi les éléments clés que le National Institute of Standards and Technology (NTIA) recommande d’inclure dans les SBOM et constituent également un champ obligatoire pour la FDA. Elles sont donc essentielles à la conformité. Les développeurs et les équipes AppSec ont ainsi dû recourir à des annotations manuelles ou à des solutions de contournement utilisant des API ou des outils comme Parlay pour fournir ces informations essentielles, désormais disponibles directement dans les SBOM de Snyk.
Cet exemple présente un extrait des informations sur les dépendances figurant dans les SBOM générés par Snyk avant cette modification.
Extrait de SBOM, avant l’ajout des informations de licence :
Dans cette dernière mise à jour, Snyk inclut désormais les informations de licence des écosystèmes pris en charge dans tous les SBOM générés. Cette nouvelle fonctionnalité utilise des expressions SPDX pour présenter clairement les données de licence et détecter aussi bien les licences uniques que les licences multiples, y compris lorsqu’elles sont combinées à l’aide d’opérateurs logiques.
Les métadonnées de licence ajoutées figurent à deux emplacements : dans les SBOM CycloneDX, sous components.licenses.expression, et dans les SBOM SPDX, sous packages.licenseConcluded. Cette approche simplifiée améliore l’utilité globale des artefacts SBOM de Snyk. Les utilisateurs en aval peuvent ainsi mieux comprendre les dépendances d’un actif et prendre des décisions éclairées en matière de conformité des licences.
Voici à quoi ressemble désormais l’extrait ci-dessus avec les informations de licence :
Extrait de SBOM après l’ajout des informations de licence, les modifications étant indiquées par > :
Comment inclure les informations de licence dans les SBOM générés par Snyk ?
Lorsque vous générez un SBOM avec Snyk, les métadonnées de licence sont automatiquement incluses par défaut pour tous les écosystèmes pris en charge et dans tous les environnements. Vous n’avez donc rien à modifier pour inclure ces métadonnées dans vos SBOM aux formats CycloneDX et SPDX. Cette fonctionnalité est disponible pour les SBOM générés avec la CLI Snyk ou les différentes API de génération de SBOM.
Découvrez l’état de la sécurité des logiciels open source
Découvrez les tendances et les approches actuelles en matière de logiciels open source et de sécurité de la chaîne d’approvisionnement.
