View a markdown version of this page

Générateur SBOM Amazon Inspector - Amazon Inspector

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Générateur SBOM Amazon Inspector

Une nomenclature logicielle (SBOM) est une liste structurée de composants, de bibliothèques et de modules nécessaires à la création d'un logiciel. Le générateur SBOM Amazon Inspector (Sbomgen) est un outil qui produit une SBOM pour les archives, les images de conteneurs, les répertoires, les systèmes locaux, les compilations et les fichiers binaires. Go Rust Sbomgenrecherche les fichiers contenant des informations sur les packages installés. Lorsqu'il Sbomgen trouve un fichier pertinent, il extrait les noms des packages, les versions et d'autres métadonnées. Sbomgentransforme ensuite les métadonnées du package en une CycloneDX SBOM. Vous pouvez l'utiliser Sbomgen pour générer le CycloneDX SBOM sous forme de fichier ou dans STDOUT et envoyer le SBOM à Amazon Inspector pour qu'il détecte les vulnérabilités. Vous pouvez également l'utiliser dans le Sbomgen cadre de l' CI/CD intégration, qui analyse automatiquement les images des conteneurs dans le cadre de votre pipeline de déploiement.

Amazon Inspector utilise Sbomgen plusieurs fonctionnalités de numérisation gérées. Lorsqu'Amazon Inspector effectue une analyse d'images de conteneurs Amazon ECR, une analyse de la fonction AWS Lambda et une analyse sans agent des instances Amazon Elastic Compute Cloud via l'analyse des volumes Amazon EBS, il invoque les coulisses pour générer l'Sbomgeninventaire logiciel utilisé pour l'évaluation des vulnérabilités. L'Sbomgenoutil autonome décrit sur cette page fournit la même technologie sous-jacente, ce qui vous permet d'intégrer la génération de SBOM directement dans vos flux de travail.

Types de packages pris en charge

Sbomgencollecte l'inventaire des types de colis suivants :

  • Alpine APK

  • Debian/Ubuntu DPKG

  • Red Hat RPM

  • C#

  • Go

  • Java

  • Node.js

  • PHP

  • Python

  • Ruby

  • Rust

Vérifications de configuration des images de conteneurs prises en charge

Sbomgenpeut scanner des Dockerfiles autonomes et créer un historique à partir d'images existantes pour des problèmes de sécurité. Pour plus d'informations, consultez Amazon Inspector Dockerfile checks.

Installation Sbomgen

Sbomgenn'est disponible que pour les systèmes d'exploitation Linux.

Vous devez l'avoir Docker installé si vous Sbomgen souhaitez analyser des images mises en cache localement. Dockern'est pas nécessaire pour analyser les images exportées sous forme de .tar fichiers ou d'images hébergées dans des registres de conteneurs distants.

Amazon Inspector vous recommande de l'exécuter Sbomgen à partir d'un système présentant au moins les caractéristiques matérielles suivantes :

  • Processeur 4 cœurs

  • 8 Go de RAM

Pour installer Sbomgen
  1. Téléchargez le dernier fichier Sbomgen zip à partir de l'URL correspondant à votre architecture :

    Linux AMD64 : https://amazon-inspector-sbomgen.s3.amazonaws.com/latest/linux/amd64/inspector-sbomgen.zip

    Linux ARM64 : https://amazon-inspector-sbomgen.s3.amazonaws.com/latest/linux/arm64/inspector-sbomgen.zip

    Vous pouvez également télécharger les versions précédentes du fichier zip Amazon Inspector SBOM Generator.

  2. Décompressez le téléchargement à l'aide de la commande suivante :

    unzip inspector-sbomgen.zip

  3. Vérifiez la présence des fichiers suivants dans le répertoire extrait :

    • inspector-sbomgen— C'est l'outil que vous allez exécuter pour générer des SBOM.

    • README.txt— Il s'agit de la documentation d'utilisationSbomgen.

    • LICENSE.txt— Ce fichier contient la licence logicielle pourSbomgen.

    • licenses— Ce dossier contient les informations de licence des packages tiers utilisés parSbomgen.

    • checksums.txt— Ce fichier contient les hachages de l'Sbomgenoutil.

    • sbom.json— Il s'agit d'un CycloneDX SBOM pour l'Sbomgenoutil.

    • WhatsNew.txt— Ce fichier contient un journal des modifications résumé, qui vous permet de visualiser rapidement les principales modifications et améliorations entre Sbomgen les versions.

  4. (Facultatif) Vérifiez l'authenticité et l'intégrité de l'outil à l'aide de la commande suivante :

    sha256sum < inspector-sbomgen

    1. Comparez les résultats avec le contenu du checksums.txt fichier.

  5. Accordez des autorisations d'exécution à l'outil à l'aide de la commande suivante :

    chmod +x inspector-sbomgen

  6. Vérifiez que l'installation Sbomgen est réussie à l'aide de la commande suivante :

    ./inspector-sbomgen --version

    Le résultat devrait être similaire à ce qui suit :

    Version: 1.X.X

Utilisation Sbomgen

Cette section décrit les différentes méthodes que vous pouvez utiliserSbomgen. Vous pouvez en savoir plus sur l'utilisation Sbomgen grâce à des exemples intégrés. Pour consulter ces exemples, exécutez la list-examples commande :

./inspector-sbomgen list-examples

Générez une SBOM pour une image de conteneur et affichez le résultat

Vous pouvez les utiliser Sbomgen pour générer des SBOM pour les images de conteneurs et afficher le résultat dans un fichier. Cette fonctionnalité peut être activée à l'aide de la container sous-commande.

Exemple de commande

Dans l'extrait suivant, vous pouvez le remplacer par image:tag l'ID de votre image et par le chemin output_path.json d'accès à la sortie que vous souhaitez enregistrer.

# generate SBOM for container image ./inspector-sbomgen container --image image:tag -o output_path.json
Note

La durée et les performances de numérisation dépendent de la taille de l'image et du nombre de couches. Des images plus petites améliorent non seulement Sbomgen les performances, mais réduisent également la surface d'attaque potentielle. Les images plus petites améliorent également les temps de création, de téléchargement et de chargement des images.

Lorsqu'elle est Sbomgen utilisée avec ScanSbom, l'API Amazon Inspector Scan ne traite pas les SBOM contenant plus de 5 000 packages. Dans ce scénario, l'API Amazon Inspector Scan renvoie une réponse HTTP 400.

Si une image inclut des fichiers multimédia ou des répertoires en masse, pensez à les exclure de Sbomgen l'utilisation de l'--skip-filesargument.

Exemple : cas d'erreur courants

La numérisation des images du conteneur peut échouer en raison des erreurs suivantes :

  • InvalidImageFormat— Se produit lors de l'analyse d'images de conteneurs mal formées contenant des en-têtes TAR, des fichiers manifestes ou des fichiers de configuration corrompus.

  • ImageValidationFailure— Se produit lorsque la validation de la somme de contrôle ou de la longueur du contenu échoue pour les composants de l'image du conteneur, tels que des Content-Length en-têtes incompatibles, des résumés de manifeste incorrects ou un échec de la vérification de la somme de contrôle SHA256.

  • ErrUnsupportedMediaType— Se produit lorsque les composants de l'image incluent des types de média non pris en charge. Pour plus d'informations sur les types de supports pris en charge, consultez Systèmes d'exploitation et types de supports pris en charge.

Amazon Inspector ne prend pas en charge ce type de application/vnd.docker.distribution.manifest.list.v2+json support. Amazon Inspector prend toutefois en charge les listes de manifestes. Lorsque vous scannez des images qui utilisent des listes de manifestes, vous pouvez spécifier explicitement la plate-forme à utiliser avec l'--platformargument. Si l'--platformargument n'est pas spécifié, le générateur Amazon Inspector SBOM sélectionne automatiquement le manifeste en fonction de la plate-forme sur laquelle il s'exécute.

Générer un SBOM à partir de répertoires et d'archives

Vous pouvez l'utiliser Sbomgen pour générer des SBOM à partir de répertoires et d'archives. Cette fonctionnalité peut être activée à l'aide des archive sous-commandes directory ou. Amazon Inspector recommande d'utiliser cette fonctionnalité lorsque vous souhaitez générer un SBOM à partir d'un dossier de projet, tel qu'un référentiel git téléchargé.

Exemple de commande 1

L'extrait suivant montre une sous-commande qui génère une SBOM à partir d'un fichier de répertoire.

# generate SBOM from directory ./inspector-sbomgen directory --path /path/to/dir -o /tmp/sbom.json
Exemple de commande 2

L'extrait suivant montre une sous-commande qui génère un SBOM à partir d'un fichier d'archive. Les seuls formats d'archive pris en charge sont .zip.tar, et.tar.gz.

# generate SBOM from archive file (tar, tar.gz, and zip formats only) ./inspector-sbomgen archive --path testData.zip -o /tmp/sbom.json

Générez un SBOM à partir de Go or Rust binaires compilés

Vous pouvez l'utiliser Sbomgen pour générer des SBOM à partir de compilés Go et de Rust fichiers binaires. Vous pouvez activer cette fonctionnalité à l'aide de la binary sous-commande :

./inspector-sbomgen binary --path /path/to/your/binary

Génération d'un SBOM à partir des volumes montés

Vous pouvez utiliser Amazon Inspector SBOM Generator pour générer des SBOM à partir de volumes montés. Cette fonctionnalité peut être activée à l'aide de la volume sous-commande. Nous vous recommandons d'utiliser cette fonctionnalité lorsque vous souhaitez analyser des volumes de stockage, tels que des volumes Amazon EBS montés sur votre système. Contrairement à la sous-commande directory, l'analyse des volumes montés détecte les packages du système d'exploitation et les informations du système d'exploitation.

Vous pouvez scanner un volume Amazon EBS en le connectant à une instance Amazon EC2 sur laquelle Amazon Inspector SBOM Generator est installé et en le montant sur cette instance. Pour les volumes Amazon EBS actuellement utilisés par d'autres instances Amazon EC2, vous pouvez créer un instantané Amazon EBS du volume, puis créer un nouveau volume Amazon EBS à partir de cet instantané à des fins de numérisation. Pour plus d'informations sur Amazon EBS, consultez Qu'est-ce qu'Amazon EBS ? dans le guide de l'utilisateur d'Amazon Elastic Block Store.

Exemple de commande

L'extrait suivant montre une sous-commande qui génère une SBOM à partir d'un volume monté. L'--pathargument doit spécifier le répertoire racine dans lequel le volume est monté.

# generate SBOM from mounted volume ./inspector-sbomgen volume --path /mount/point/of/volume/root
Exemple de commande

L'extrait suivant montre une sous-commande qui génère une SBOM à partir d'un volume monté tout en excluant des chemins de fichiers spécifiques avec l'argument. --exclude-suffix L'--exclude-suffixargument est particulièrement utile lorsqu'un volume contient des fichiers en masse (tels que des fichiers journaux ou des fichiers multimédia). Les fichiers et les répertoires dont les chemins se terminent par les suffixes spécifiés seront exclus de l'analyse, ce qui peut réduire la durée de l'analyse et l'utilisation de la mémoire.

# generate SBOM from mounted volume with exclusions ./inspector-sbomgen volume --path /mount/point/of/volume/root \ --exclude-suffix .log \ --exclude-suffix cache

Tous les chemins de fichiers du volume cible sont normalisés par rapport à leur chemin d'origine. Par exemple, lors de l'analyse d'un volume monté sur /mnt/volume qui contient un fichier à/mnt/volume/var/lib/rpm/rpmdb.sqlite, le chemin sera normalisé /var/lib/rpm/rpmdb.sqlite dans la SBOM générée.

Envoyer un SBOM à Amazon Inspector pour identifier les vulnérabilités

Outre la génération d'un SBOM, vous pouvez envoyer un SBOM à des fins de numérisation à l'aide d'une seule commande depuis l'API Amazon Inspector Scan. Amazon Inspector évalue le contenu de la SBOM à la recherche de vulnérabilités avant de renvoyer les résultats à. Sbomgen En fonction de votre saisie, les résultats peuvent être affichés ou enregistrés dans un fichier.

Note

Vous devez disposer d'un utilisateur actif Compte AWS avec des autorisations de lecture InspectorScan-ScanSbom pour utiliser cette fonctionnalité.

Pour activer cette fonctionnalité, vous devez transmettre l'--scan-sbomargument à la Sbomgen CLI. Vous pouvez également transmettre l'--scan-sbomargument à l'une des Sbomgen sous-commandes suivantes :archive,binary, containerdirectory,localhost.

Note

L'API Amazon Inspector Scan ne traite pas les SBOM contenant plus de 5 000 packages. Dans ce scénario, l'API Amazon Inspector Scan renvoie une réponse HTTP 400.

Vous pouvez vous authentifier auprès d'Amazon Inspector via un AWS profil ou un rôle IAM à l'aide des arguments suivants : AWS CLI

--aws-profile profile --aws-region region --aws-iam-role-arn role_arn

Vous pouvez également vous authentifier auprès d'Amazon Inspector en fournissant les variables d'environnement suivantes àSbomgen.

AWS_ACCESS_KEY_ID=$access_key \ AWS_SECRET_ACCESS_KEY=$secret_key \ AWS_DEFAULT_REGION=$region \ ./inspector-sbomgen arguments

Pour spécifier le format de réponse, utilisez l'--scan-sbom-output-format cyclonedxargument ou l'--scan-sbom-output-format inspectorargument.

Exemple de commande 1

Cette commande crée une SBOM pour la dernière Alpine Linux version, analyse la SBOM et écrit les résultats de la vulnérabilité dans un fichier JSON.

./inspector-sbomgen container --image alpine:latest \ --scan-sbom \ --aws-profile your_profile \ --aws-region your_region \ --scan-sbom-output-format cyclonedx \ --outfile /tmp/inspector_scan.json
Exemple de commande 2

Cette commande permet de s'authentifier auprès d'Amazon Inspector en utilisant les AWS informations d'identification comme variables d'environnement.

AWS_ACCESS_KEY_ID=$your_access_key \ AWS_SECRET_ACCESS_KEY=$your_secret_key \ AWS_DEFAULT_REGION=$your_region \ ./inspector-sbomgen container --image alpine:latest \ -o /tmp/sbom.json \ --scan-sbom \ --scan-sbom-output-format inspector
Exemple de commande 3

Cette commande permet de s'authentifier auprès d'Amazon Inspector à l'aide de l'ARN d'un rôle IAM.

./inspector-sbomgen container --image alpine:latest \ --scan-sbom \ --aws-profile your_profile \ --aws-region your_region \ --outfile /tmp/inspector_scan.json --aws-iam-role-arn arn:aws:iam::123456789012:role/your_role

Utiliser des scanners supplémentaires pour améliorer les capacités de détection

Le générateur Amazon Inspector SBOM applique des scanners prédéfinis en fonction de la commande utilisée.

Groupes de scanners par défaut

Chaque sous-commande Amazon Inspector SBOM Generator applique automatiquement les groupes de scanners par défaut suivants.

  • Pour la directory sous-commande : binaire, packages de langage de programmation, groupes de scanners Dockerfile

  • Pour la localhost sous-commande : os, packages de langage de programmation, groupes de scanners extra-écosystèmes

  • Pour la container sous-commande : os, packages en langage de programmation, extra-écosystèmes, dockerfile, groupes de scanners binaires

Scanners spéciaux

Pour inclure des scanners au-delà des groupes de scanners par défaut, utilisez l'--additional-scannersoption suivie du nom du scanner à ajouter. Voici un exemple de commande qui montre comment procéder.

# Add WordPress installation scanner to directory scan ./inspector-sbomgen directory --path /path/to/directory/ --additional-scanners wordpress-installation -o output.json

L'exemple de commande suivant montre comment ajouter plusieurs scanners avec une liste séparée par des virgules.

./inspector-sbomgen container --image image:tag --additional-scanners scanner1,scanner2 -o output.json

Optimisez les scans de conteneurs en ajustant la taille maximale des fichiers à scanner

Lorsque vous analysez et traitez une image de conteneur, Sbomgen scanne les fichiers dont la taille est inférieure ou égale à 200 Mo par défaut. Les fichiers de plus de 200 Mo contiennent rarement des métadonnées de package. Vous pouvez rencontrer des erreurs lorsque vous inventoriez un Rust fichier binaire Go ou un fichier binaire supérieur à 200 Mo. Pour ajuster la limite de taille, utilisez l'--max-file-sizeargument. Cela vous permet d'augmenter la limite pour inclure des fichiers volumineux et de la diminuer pour réduire l'utilisation des ressources en excluant les fichiers volumineux.

Exemple

L'exemple suivant montre comment utiliser l'--max-file-sizeargument pour augmenter la taille du fichier.

# Increase the file size limit to scan files up to 300 MB ./inspector-sbomgen container --image alpine:latest \ --outfile /tmp/sbom.json \ --max-file-size 300000000

Le réglage de ce paramètre permet de contrôler l'utilisation du disque, la consommation de mémoire et la durée globale de l'analyse.

Limiter la taille d'extraction de l'image du conteneur

Lorsque vous numérisez une image de conteneur, vous pouvez rejeter une image surdimensionnée avant de Sbomgen télécharger une couche. Sbomgenlit la taille compressée de chaque couche à partir du manifeste de l'image et la compare aux limites que vous avez définies. Ainsi, une image dépassant une limite est rejetée sans avoir téléchargé ses couches. Utilisez les --layer-max-pull-size arguments --image-max-pull-size et pour définir ces limites en octets.

  • --image-max-pull-size— Rejette l'image lorsque les tailles compressées de toutes ses couches dépassent le nombre d'octets spécifié.

  • --layer-max-pull-size— Rejette l'image lorsque la taille compressée d'une couche dépasse le nombre d'octets spécifié.

Note

Les deux arguments s'appliquent uniquement aux scans de conteneurs et sont indépendants l'un de l'autre. Chacune est définie par défaut sur0, ce qui désactive la limite.

Exemple

L'exemple suivant rejette l'image si la taille compressée de ses couches est supérieure à 50 GiB (53687091200octets) ou si la taille compressée d'une couche dépasse 10 GiB (10737418240octets).

# Reject an oversized image before downloading any layer ./inspector-sbomgen container --image image:tag \ --outfile /tmp/sbom.json \ --image-max-pull-size 53687091200 \ --layer-max-pull-size 10737418240

Détectez les images scratch à l'aide de l'heuristique des systèmes de fichiers

Lorsque vous ne Sbomgen pouvez pas identifier le système d'exploitation d'une image de conteneur, vous pouvez utiliser --enable-scratch-heuristics cet argument pour inspecter le système de fichiers à la recherche de signaux indiquant une scratch image. Si au moins deux signaux sont présents, étiquetez le Sbomgen composant scratch du système d'exploitation à la place de. unknown Un système d'exploitation identifié n'est jamais réétiqueté.

Note

Cet argument est expérimental, s'applique uniquement aux scans de conteneurs et est désactivé par défaut.

Sbomgenévalue les signaux suivants et enregistre chaque signal détecté en tant que amazon:inspector:sbom_generator:scratch:heuristic:* propriété du composant du système d'exploitation :

  • missing_lib_dir— Le /lib répertoire est absent.

  • missing_bin_dir— Le /bin répertoire est absent.

  • missing_var_dir— Le /var répertoire est absent.

  • missing_shell— Aucun shell interactif n'est présent (aucun desh,bash,ash, dashzsh, ou ne busybox se trouve sous /bin ou/usr/bin).

Exemple

L'exemple suivant montre comment utiliser --enable-scratch-heuristics cet argument.

# enable scratch image detection heuristics ./inspector-sbomgen container --image image:tag \ --outfile /tmp/sbom.json \ --enable-scratch-heuristics
Note

Ce comportement est heuristique et peut produire des faux positifs. Il ne modifie que le composant du système d'exploitation.

Collecter les métadonnées des processus en cours

Lorsque vous scannez un hôte local, vous pouvez utiliser --collect-processes cet argument pour baliser les composants avec des métadonnées relatives aux processus en cours d'exécution qui sont collectées Sbomgen auprès de l'hôte. Cela vous permet de corréler un composant inventorié avec les processus qui s'exécutent à partir de celui-ci.

Note

Cet argument est facultatif, désactivé par défaut et s'applique uniquement aux scans des hôtes locaux. Si vous le fournissez pour un autre type de scan, Sbomgen enregistre un avertissement et l'ignore.

Lorsqu'un composant correspond à un processus en cours, Sbomgen ajoute les propriétés suivantes à ce composant, où pid est l'ID du processus :

  • amazon:inspector:sbom_generator:host:process_id:pid:path— Le chemin exécutable du processus en cours d'exécution correspondant, par exemple/usr/sbin/sshd.

  • amazon:inspector:sbom_generator:host:process_id:pid:started_at— L'heure à laquelle le processus a commencé, au format RFC 3339 (UTC), par exemple. 2026-08-26T15:43:40Z

Exemple

L'exemple suivant montre comment utiliser --collect-processes cet argument.

# Tag components with running process metadata ./inspector-sbomgen localhost \ --outfile /tmp/sbom.json \ --collect-processes

Désactiver l'indicateur de progression

Sbomgenaffiche un indicateur de progression de rotation qui peut entraîner la présence excessive de barres obliques dans CI/CD les environnements.

INFO[2024-02-01 14:58:46]coreV1.go:53: analyzing artifact | \ / | \ / INFO[2024-02-01 14:58:46]coreV1.go:62: executing post-processors

Vous pouvez désactiver l'indicateur de progression à l'aide de l'--disable-progress-barargument suivant :

./inspector-sbomgen container --image alpine:latest \ --outfile /tmp/sbom.json \ --disable-progress-bar

Authentification auprès de registres privés avec Sbomgen

En fournissant vos informations d'authentification de registre privé, vous pouvez générer des SBOM à partir de conteneurs hébergés dans des registres privés. Vous pouvez fournir ces informations d'identification par le biais des méthodes suivantes :

Authentifiez-vous à l'aide des informations d'identification mises en cache (recommandé)

Pour cette méthode, vous vous authentifiez auprès de votre registre de conteneurs. Par exemple, si vous utilisezDocker, vous pouvez vous authentifier auprès de votre registre de conteneurs à l'aide de la commande de Docker journalisation :. docker login

  1. Authentifiez-vous auprès de votre registre de conteneurs. Par exemple, si vous utilisezDocker, vous pouvez vous authentifier auprès de votre registre à l'aide de la Docker login commande :

  2. Après vous être authentifié auprès de votre registre de conteneurs, utilisez-le Sbomgen sur une image de conteneur qui se trouve dans le registre. Pour utiliser l'exemple suivant, remplacez image:tag par le nom de l'image à numériser :

./inspector-sbomgen container --image image:tag

Authentifiez-vous à l'aide de la méthode interactive

Pour cette méthode, entrez votre nom d'utilisateur en tant que paramètre et vous Sbomgen serez invité à saisir un mot de passe sécurisé si nécessaire.

Pour utiliser l'exemple suivant, remplacez image:tag par le nom de l'image que vous souhaitez numériser et your_username par un nom d'utilisateur ayant accès à l'image :

./inspector-sbomgen container --image image:tag --username your_username

Authentifiez-vous à l'aide de la méthode non interactive

Pour cette méthode, enregistrez votre mot de passe ou votre jeton de registre dans un .txt fichier.

Note

L'utilisateur actuel ne doit pouvoir lire que ce fichier. Le fichier doit également contenir votre mot de passe ou votre jeton sur une seule ligne.

Pour utiliser l'exemple suivant, remplacez your_username par votre nom d'utilisateur, password.txt par le .txt fichier contenant votre mot de passe ou votre jeton sur une seule ligne et image:tag par le nom de l'image à numériser :

INSPECTOR_SBOMGEN_USERNAME=your_username \ INSPECTOR_SBOMGEN_PASSWORD=`cat password.txt` \ ./inspector-sbomgen container --image image:tag

Exemples de sorties de Sbomgen

Voici un exemple de SBOM pour une image de conteneur inventoriée à l'aide de. Sbomgen

{ "bomFormat": "CycloneDX", "specVersion": "1.5", "serialNumber": "urn:uuid:828875ef-8c32-4777-b688-0af96f3cf619", "version": 1, "metadata": { "timestamp": "2023-11-17T21:36:38Z", "tools": [ { "vendor": "Amazon Web Services, Inc. (AWS)", "name": "Amazon Inspector SBOM Generator", "version": "1.0.0", "hashes": [ { "alg": "SHA-256", "content": "10ab669cfc99774786301a745165b5957c92ed9562d19972fbf344d4393b5eb1" } ] } ], "component": { "bom-ref": "comp-1", "type": "container", "name": "fedora:latest", "properties": [ { "name": "amazon:inspector:sbom_generator:image_id", "value": "sha256:c81c8ae4dda7dedc0711daefe4076d33a88a69a28c398688090c1141eff17e50" }, { "name": "amazon:inspector:sbom_generator:layer_diff_id", "value": "sha256:eddd0d48c295dc168d0710f70364581bd84b1dda6bb386c4a4de0b61de2f2119" } ] } }, "components": [ { "bom-ref": "comp-2", "type": "library", "name": "dnf", "version": "4.18.0", "purl": "pkg:pypi/dnf@4.18.0", "properties": [ { "name": "amazon:inspector:sbom_generator:source_file_scanner", "value": "python-pkg" }, { "name": "amazon:inspector:sbom_generator:source_package_collector", "value": "python-pkg" }, { "name": "amazon:inspector:sbom_generator:source_path", "value": "/usr/lib/python3.12/site-packages/dnf-4.18.0.dist-info/METADATA" }, { "name": "amazon:inspector:sbom_generator:is_duplicate_package", "value": "true" }, { "name": "amazon:inspector:sbom_generator:duplicate_purl", "value": "pkg:rpm/fedora/python3-dnf@4.18.0-2.fc39?arch=noarch&distro=39&epoch=0" } ] }, { "bom-ref": "comp-3", "type": "library", "name": "libcomps", "version": "0.1.20", "purl": "pkg:pypi/libcomps@0.1.20", "properties": [ { "name": "amazon:inspector:sbom_generator:source_file_scanner", "value": "python-pkg" }, { "name": "amazon:inspector:sbom_generator:source_package_collector", "value": "python-pkg" }, { "name": "amazon:inspector:sbom_generator:source_path", "value": "/usr/lib64/python3.12/site-packages/libcomps-0.1.20-py3.12.egg-info/PKG-INFO" }, { "name": "amazon:inspector:sbom_generator:is_duplicate_package", "value": "true" }, { "name": "amazon:inspector:sbom_generator:duplicate_purl", "value": "pkg:rpm/fedora/python3-libcomps@0.1.20-1.fc39?arch=x86_64&distro=39&epoch=0" } ] } ] }