Que faire avec un SBOM enrichi ? Guide de démarrage rapide de parlay
7 juin 2023
0 minutes de lectureNous venons de publier parlay, un nouvel outil open source qui enrichit les SBOM avec des informations supplémentaires. Pour en savoir plus, consultez l’article d’annonce. Nous avons brièvement expliqué dans cet article pourquoi ces données sont importantes pour prendre des décisions fondées sur les SBOM, mais nous avons pensé que quelques exemples rapides pourraient vous intéresser.
parlay peut ajouter de nombreuses informations à un SBOM, que nous pouvons ensuite utiliser pour rédiger des règles plus puissantes. Même si le nombre de lignes JSON n’est pas un indicateur parfait, cet exemple montre que la taille du SBOM a augmenté de plus de 400 % — ce qui ouvre la voie à de nombreux cas d’usage.
Règles de licence
Un SBOM contenant uniquement les éléments minimaux ne fournit aucune information sur les licences applicables aux packages inclus. Utilisons Parlay et les données d’Ecosyste.ms pour ajouter ces informations.
Maintenant que notre SBOM est plus complet, nous pouvons rédiger des règles plus puissantes. Dans cet exemple, nous allons utiliser Open Policy Agent et son puissant langage de programmation Rego. Nous allons créer deux listes de règles : l’une pour bloquer et l’autre pour émettre un avertissement.
Poursuivons notre passion pour les tubes Unix et utilisons Conftest pour appliquer cette règle au SBOM enrichi.
Dans le projet d’exemple, cette commande a généré une série d’avertissements concernant certains packages et les licences qui leur sont associées.
Règles de sécurité
Essayons quelque chose d’un peu plus complexe. Écrivons une règle qui signale les vulnérabilités dont le score CVSS dépasse un certain seuil dans les dépendances directes. C’est un bon exemple de cas où vous avez besoin des données sur les packages, les dépendances et les vulnérabilités.
Nous pouvons ensuite générer ou récupérer notre SBOM, l’enrichir avec les données de vulnérabilité de Snyk, puis appliquer notre règle à l’aide de Conftest.
Ici, nous voyons un rapport signalant une vulnérabilité qui répond à nos critères.
N’oubliez pas qu’il ne s’agit que d’un exemple. Le langage Rego utilisé par Open Policy Agent permet de décrire une logique complexe, si nécessaire. Et si vous préférez un autre outil de gestion des règles, cela devrait également fonctionner.
Qui est l’auteur de ce logiciel ?
Un dernier exemple rapide. L’exemple suivant utilise parlay pour enrichir notre SBOM, puis jq et awk pour afficher des informations utiles. Ici, nous extrayons le nom de l’auteur de chaque package. Là encore, cette information ne figure souvent pas dans un SBOM contenant uniquement les éléments minimaux.
Les données enrichies des SBOM permettent de faire bien d’autres choses, et il existe de nombreuses autres données utiles pour enrichir les SBOM. Dites-nous ce que vous aimeriez voir, et n’hésitez pas à partager des exemples de vos expérimentations avec parlay.
