View a markdown version of this page

Generatore SBOM Amazon Inspector - Amazon Inspector

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Generatore SBOM Amazon Inspector

Una distinta base software (SBOM) è un elenco formalmente strutturato di componenti, librerie e moduli necessari per creare un software. Amazon Inspector SBOM Generator (Sbomgen) è uno strumento che produce un SBOM per archivi, immagini di contenitori, directory, sistemi locali, compilati e binari. Go Rust Sbomgenanalizza i file che contengono informazioni sui pacchetti installati. Quando Sbomgen trova un file pertinente, estrae i nomi dei pacchetti, le versioni e altri metadati. Sbomgenquindi trasforma i metadati del pacchetto in una SBOM. CycloneDX Puoi utilizzarlo Sbomgen per generare la CycloneDX SBOM come file o in STDOUT e inviare SBOM ad Amazon Inspector per il rilevamento delle vulnerabilità. Puoi anche utilizzarlo Sbomgen come parte dell' CI/CD integrazione, che scansiona automaticamente le immagini dei container come parte della tua pipeline di distribuzione.

Amazon Inspector utilizza diverse funzionalità di scansione Sbomgen gestite. Quando Amazon Inspector esegue la scansione delle immagini dei container Amazon ECR, la scansione della funzione AWS Lambda e la scansione senza agente delle istanze Amazon Elastic Compute Cloud tramite l'analisi dei volumi di Amazon EBS, richiama l'attenzione Sbomgen dietro le quinte per generare l'inventario software utilizzato per la valutazione delle vulnerabilità. SbomgenLo strumento autonomo descritto in questa pagina fornisce la stessa tecnologia di base, che consente di integrare la generazione SBOM direttamente nei flussi di lavoro.

Tipi di pacchetti supportati

Sbomgenraccoglie l'inventario per i seguenti tipi di pacchetti:

  • Alpine APK

  • Debian/Ubuntu DPKG

  • Red Hat RPM

  • C#

  • Go

  • Java

  • Node.js

  • PHP

  • Python

  • Ruby

  • Rust

Controlli di configurazione dell'immagine del contenitore supportati

Sbomgenpuò scansionare file Dockerfile autonomi e creare una cronologia a partire da immagini esistenti per problemi di sicurezza. Per ulteriori informazioni, consulta Amazon Inspector Dockerfile checks.

Installazione Sbomgen

Sbomgenè disponibile solo per i sistemi operativi Linux.

È necessario averlo Docker installato se si desidera analizzare Sbomgen le immagini memorizzate nella cache locale. Dockernon è necessario per analizzare le immagini esportate come .tar file o immagini ospitate in registri di contenitori remoti.

Amazon Inspector consiglia di eseguire l'operazione Sbomgen da un sistema con almeno le seguenti specifiche hardware:

  • CPU 4x core

  • 8 GB RAM

Per installare Sbomgen
  1. Scarica il file Sbomgen zip più recente dall'URL corretto per la tua architettura:

    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

    In alternativa, puoi scaricare le versioni precedenti del file zip Amazon Inspector SBOM Generator.

  2. Decomprimi il download utilizzando il seguente comando:

    unzip inspector-sbomgen.zip

  3. Verificate la presenza dei seguenti file nella directory estratta:

    • inspector-sbomgen— Questo è lo strumento che eseguirai per generare SBOM.

    • README.txt— Questa è la documentazione per l'utilizzoSbomgen.

    • LICENSE.txt— Questo file contiene la licenza software perSbomgen.

    • licenses— Questa cartella contiene informazioni sulla licenza per i pacchetti di terze parti utilizzati daSbomgen.

    • checksums.txt— Questo file fornisce gli hash dello Sbomgen strumento.

    • sbom.json— Questa è una distinta CycloneDX base per lo strumento. Sbomgen

    • WhatsNew.txt— Questo file contiene un registro delle modifiche riepilogativo, in modo da poter visualizzare rapidamente le principali modifiche e miglioramenti tra le Sbomgen versioni.

  4. (Facoltativo) Verifica l'autenticità e l'integrità dello strumento utilizzando il seguente comando:

    sha256sum < inspector-sbomgen

    1. Confronta i risultati con il contenuto del checksums.txt file.

  5. Concedi le autorizzazioni eseguibili allo strumento utilizzando il seguente comando:

    chmod +x inspector-sbomgen

  6. Verificate che Sbomgen sia stato installato correttamente utilizzando il seguente comando:

    ./inspector-sbomgen --version

    Dovresti vedere l'output simile al seguente:

    Version: 1.X.X

Utilizzo Sbomgen

Questa sezione descrive diversi modi di utilizzo. Sbomgen Puoi saperne di più su come usare Sbomgen attraverso esempi integrati. Per visualizzare questi esempi, esegui il list-examples comando:

./inspector-sbomgen list-examples

Genera una SBOM per un'immagine del contenitore e visualizza il risultato

È possibile utilizzarlo Sbomgen per generare SBOM per le immagini dei contenitori e inviare il risultato in un file. Questa funzionalità può essere abilitata utilizzando il container sottocomando.

Esempio di comando

Nel frammento seguente, puoi sostituirlo image:tag con l'ID della tua immagine e output_path.json con il percorso dell'output che desideri salvare.

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

Il tempo e le prestazioni di scansione dipendono dalle dimensioni dell'immagine e dal numero ridotto di livelli. Le immagini più piccole non solo migliorano Sbomgen le prestazioni, ma riducono anche la potenziale superficie di attacco. Le immagini più piccole migliorano anche i tempi di creazione, download e caricamento delle immagini.

Se utilizzata Sbomgen con ScanSbom, l'API Amazon Inspector Scan non elaborerà gli SBOM che contengono più di 5.000 pacchetti. In questo scenario, l'API Amazon Inspector Scan restituisce una risposta HTTP 400.

Se un'immagine include file o directory multimediali di massa, valuta la possibilità di escluderli dall'Sbomgenuso dell'argomento. --skip-files

Esempio: casi di errore comuni

La scansione delle immagini del contenitore può fallire a causa dei seguenti errori:

  • InvalidImageFormat— Si verifica durante la scansione di immagini di contenitori non valide con intestazioni TAR, file manifest o file di configurazione danneggiati.

  • ImageValidationFailure— Si verifica quando la convalida del checksum o della lunghezza del contenuto non riesce per i componenti dell'immagine del contenitore, ad esempio Content-Length intestazioni non corrispondenti, digest del manifest errati o verifica del checksum SHA256 non riuscita.

  • ErrUnsupportedMediaType— Si verifica quando i componenti dell'immagine includono tipi di file multimediali non supportati. Per informazioni sui tipi di file multimediali supportati, vedere Sistemi operativi e tipi di supporti supportati.

Amazon Inspector non supporta il tipo di application/vnd.docker.distribution.manifest.list.v2+json supporto. Tuttavia, Amazon Inspector supporta gli elenchi di manifesti. Durante la scansione di immagini che utilizzano elenchi di manifesti, puoi specificare esplicitamente quale piattaforma utilizzare con l'--platformargomento. Se l'--platformargomento non è specificato, Amazon Inspector SBOM Generator seleziona automaticamente il manifest in base alla piattaforma su cui è in esecuzione.

Genera un SBOM da directory e archivi

È possibile utilizzarlo Sbomgen per generare SBOM da directory e archivi. Questa funzionalità può essere abilitata utilizzando i sottocomandi directory orarchive. Amazon Inspector consiglia di utilizzare questa funzionalità quando desideri generare un SBOM da una cartella di progetto, ad esempio un repository git scaricato.

Esempio di comando 1

Il frammento seguente mostra un sottocomando che genera un SBOM da un file di directory.

# generate SBOM from directory ./inspector-sbomgen directory --path /path/to/dir -o /tmp/sbom.json
Esempio di comando 2

Il frammento seguente mostra un sottocomando che genera un SBOM da un file di archivio. Gli unici formati di archivio supportati sono, e. .zip .tar .tar.gz

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

Genera una SBOM da Go or Rust binari compilati

È possibile utilizzarlo Sbomgen per generare SBOM da file Go compilati e binari. Rust È possibile abilitare questa funzionalità tramite il sottocomando: binary

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

Genera una SBOM dai volumi montati

Puoi utilizzare Amazon Inspector SBOM Generator per generare SBOM da volumi montati. Questa funzionalità può essere abilitata utilizzando il sottocomando. volume Ti consigliamo di utilizzare questa funzionalità quando desideri analizzare i volumi di storage, ad esempio i volumi Amazon EBS che sono stati montati sul tuo sistema. A differenza del sottocomando directory, la scansione dei volumi montati rileva i pacchetti del sistema operativo e le informazioni sul sistema operativo.

Puoi scansionare un volume Amazon EBS collegandolo a un'istanza Amazon EC2 in cui è installato Amazon Inspector SBOM Generator e montandolo su tale istanza. Per i volumi Amazon EBS attualmente utilizzati da altre istanze Amazon EC2, puoi creare un'istantanea Amazon EBS del volume e quindi creare un nuovo volume Amazon EBS da tale istantanea per scopi di scansione. Per ulteriori informazioni su Amazon EBS, consulta Cos'è Amazon EBS? https://docs.aws.amazon.com/ebs/latest/userguide/what-is-ebs.htmlnella Guida per l'utente di Amazon Elastic Block Store.

Esempio di comando

Lo snippet seguente mostra un sottocomando che genera una SBOM da un volume montato. L'--pathargomento deve specificare la directory principale in cui è montato il volume.

# generate SBOM from mounted volume ./inspector-sbomgen volume --path /mount/point/of/volume/root
Esempio di comando

Il frammento seguente mostra un sottocomando che genera una SBOM da un volume montato escludendo percorsi di file specifici con l'argomento. --exclude-suffix L'--exclude-suffixargomento è particolarmente utile quando un volume contiene file in blocco (come file di registro o file multimediali). I file e le directory i cui percorsi terminano con i suffissi specificati verranno esclusi dalla scansione, il che può ridurre i tempi di scansione e l'utilizzo della memoria.

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

Tutti i percorsi dei file nel volume di destinazione vengono normalizzati ai percorsi originali. Ad esempio, quando si esegue la scansione di un volume montato su /mnt/volume cui è contenuto un file/mnt/volume/var/lib/rpm/rpmdb.sqlite, il percorso verrà normalizzato /var/lib/rpm/rpmdb.sqlite nella SBOM generata.

Invia un SBOM ad Amazon Inspector per l'identificazione delle vulnerabilità

Oltre a generare un SBOM, puoi inviare un SBOM per la scansione con un solo comando dall'API Amazon Inspector Scan. Amazon Inspector valuta il contenuto dell'SBOM per individuare eventuali vulnerabilità prima di restituire i risultati a. Sbomgen A seconda dei dati inseriti, i risultati possono essere visualizzati o scritti in un file.

Nota

È necessario disporre di un account attivo Account AWS con autorizzazioni di lettura InspectorScan-ScanSbom per utilizzare questa funzionalità.

Per abilitare questa funzionalità, si passa l'--scan-sbomargomento alla Sbomgen CLI. Puoi anche passare l'--scan-sbomargomento a uno dei seguenti Sbomgen sottocomandi:archive,,binary, containerdirectory,localhost.

Nota

L'API Amazon Inspector Scan non elabora gli SBOM con più di 5.000 pacchetti. In questo scenario, l'API Amazon Inspector Scan restituisce una risposta HTTP 400.

Puoi autenticarti ad Amazon Inspector tramite un AWS profilo o un ruolo IAM con i seguenti argomenti: AWS CLI

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

Puoi anche autenticarti su Amazon Inspector fornendo le seguenti variabili di ambiente a. Sbomgen

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

Per specificare il formato della risposta, utilizza l'--scan-sbom-output-format cyclonedxargomento o --scan-sbom-output-format inspector l'argomento.

Esempio di comando 1

Questo comando crea un SBOM per l'ultima Alpine Linux release, analizza l'SBOM e scrive i risultati della vulnerabilità in un file 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
Esempio di comando 2

Questo comando esegue l'autenticazione in Amazon Inspector utilizzando AWS le credenziali come variabili di ambiente.

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
Esempio di comando 3

Questo comando esegue l'autenticazione su Amazon Inspector utilizzando l'ARN per un ruolo 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

Utilizza scanner aggiuntivi per migliorare le capacità di rilevamento

Amazon Inspector SBOM Generator applica scanner predefiniti in base al comando utilizzato.

Gruppi di scanner predefiniti

Ogni sottocomando Amazon Inspector SBOM Generator applica automaticamente i seguenti gruppi di scanner predefiniti.

  • Per il directory sottocomando: binary, programming-language-packages, dockerfile scanner groups

  • Per il sottocomando: os, programming-language-packages, localhost extra-ecosystems scanner groups

  • Per il container sottocomando: os, programming-language-packages, extra-ecosystems, dockerfile, binary scanner groups

Scanner speciali

Per includere scanner oltre ai gruppi di scanner predefiniti, utilizzate l'--additional-scannersopzione seguita dal nome dello scanner da aggiungere. Di seguito è riportato un comando di esempio che mostra come eseguire questa operazione.

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

Di seguito è riportato un comando di esempio che mostra come aggiungere più scanner con un elenco separato da virgole.

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

Ottimizza le scansioni dei contenitori regolando la dimensione massima del file da scansionare

Quando analizzi ed elabori un'immagine del contenitore, Sbomgen esegue la scansione di file di dimensioni pari o inferiori a 200 MB per impostazione predefinita. I file di dimensioni superiori a 200 MB raramente contengono i metadati dei pacchetti. È possibile che si verifichino errori nell'inventario di un file binario Go o di un Rust file binario che supera i 200 MB. Per modificare il limite di dimensione, usa l'argomento. --max-file-size Ciò consente di aumentare il limite per includere file di grandi dimensioni e diminuire il limite per ridurre l'utilizzo delle risorse escludendo i file di grandi dimensioni.

Esempio

L'esempio seguente mostra come utilizzare l'--max-file-sizeargomento per aumentare le dimensioni del file.

# 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

La regolazione di questa impostazione consente di controllare l'utilizzo del disco, il consumo di memoria e la durata complessiva della scansione.

Limita la dimensione di estrazione dell'immagine del contenitore

Quando si esegue la scansione di un'immagine contenitore, è possibile rifiutare un'immagine sovradimensionata prima di Sbomgen scaricare qualsiasi livello. Sbomgenlegge le dimensioni compresse di ogni livello dal manifesto dell'immagine e le confronta con i limiti impostati, in modo che un'immagine che supera un limite viene rifiutata senza scaricarne i livelli. Utilizzate gli --layer-max-pull-size argomenti --image-max-pull-size e per impostare questi limiti in byte.

  • --image-max-pull-size— Rifiuta l'immagine quando le dimensioni compresse di tutti i suoi livelli superano il numero di byte specificato.

  • --layer-max-pull-size— Rifiuta l'immagine quando la dimensione compressa di un singolo livello supera il numero di byte specificato.

Nota

Entrambi gli argomenti si applicano solo alle scansioni dei contenitori e sono indipendenti l'uno dall'altro. Ciascuno ha come impostazione predefinita0, il che disabilita il limite.

Esempio

L'esempio seguente rifiuta l'immagine se le dimensioni compresse dei relativi livelli ammontano a più di 50 GiB (53687091200byte) o se la dimensione compressa di un singolo livello supera i 10 GiB (byte). 10737418240

# 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

Rileva le immagini scratch con l'euristica del file system

Quando non Sbomgen riesci a identificare il sistema operativo di un'immagine contenitore, puoi utilizzare l'--enable-scratch-heuristicsargomento per ispezionare il filesystem alla ricerca di segnali che indicano un'immagine. scratch Se sono presenti almeno due segnali, Sbomgen etichetta il componente del sistema operativo invece di. scratch unknown Un sistema operativo identificato non viene mai rietichettato.

Nota

Questo argomento è sperimentale, si applica solo alle scansioni dei container ed è disabilitato per impostazione predefinita.

Sbomgenvaluta i seguenti segnali e registra ciascuno di essi come amazon:inspector:sbom_generator:scratch:heuristic:* proprietà sul componente del sistema operativo:

  • missing_lib_dir— L'/libelenco è assente.

  • missing_bin_dir— L'/binelenco è assente.

  • missing_var_dir— L'/varelenco è assente.

  • missing_shell— Non è presente alcuna shell interattiva (nessuna trash,bash,ash, dashzsh, o busybox si trova sotto /bin o/usr/bin).

Esempio

L'esempio seguente mostra come utilizzare l'--enable-scratch-heuristicsargomento.

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

Questo comportamento è euristico e può produrre falsi positivi. Cambia solo il componente del sistema operativo.

Raccogli i metadati dei processi in esecuzione

Quando si esegue la scansione di un localhost, è possibile utilizzare l'--collect-processesargomento per etichettare i componenti con metadati sui processi in esecuzione raccolti dall'host. Sbomgen Ciò consente di correlare un componente inventariato con i processi in esecuzione da esso.

Nota

Questo argomento è opt-in, disabilitato per impostazione predefinita e si applica solo alle scansioni di localhost. Se lo fornisci per qualsiasi altro tipo di scansione, Sbomgen registra un avviso e lo ignora.

Quando un componente corrisponde a un processo in esecuzione, Sbomgen aggiunge le seguenti proprietà a quel componente, dove pid è l'ID del processo:

  • amazon:inspector:sbom_generator:host:process_id:pid:path— Il percorso eseguibile del processo in esecuzione corrispondente, ad esempio/usr/sbin/sshd.

  • amazon:inspector:sbom_generator:host:process_id:pid:started_at— L'ora di inizio del processo, ad esempio nel formato RFC 3339 (UTC). 2026-08-26T15:43:40Z

Esempio

L'esempio seguente mostra come utilizzare l'argomento. --collect-processes

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

Disattiva l'indicatore di avanzamento

Sbomgenvisualizza un indicatore di avanzamento rotante che può generare una barra eccessiva negli CI/CD ambienti.

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

È possibile disattivare l'indicatore di avanzamento utilizzando l'--disable-progress-barargomento:

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

Autenticazione in registri privati con Sbomgen

Fornendo le credenziali di autenticazione private del registro, è possibile generare SBOM da contenitori ospitati in registri privati. È possibile fornire queste credenziali tramite i seguenti metodi:

Effettua l'autenticazione utilizzando le credenziali memorizzate nella cache (consigliato)

Per questo metodo, ti autentichi nel registro del contenitore. Ad esempio, se si utilizzaDocker, è possibile autenticarsi nel registro dei contenitori utilizzando il comando Docker loging:. docker login

  1. Effettua l'autenticazione nel registro dei contenitori. Ad esempio, se lo usiDocker, puoi autenticarti nel tuo registro usando il Docker login comando:

  2. Dopo l'autenticazione nel registro del contenitore, utilizzalo Sbomgen su un'immagine del contenitore presente nel registro. Per utilizzare l'esempio seguente, sostituiscilo image:tag con il nome dell'immagine da scansionare:

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

Effettua l'autenticazione utilizzando il metodo interattivo

Per questo metodo, fornisci il tuo nome utente come parametro e ti Sbomgen chiederà di inserire una password sicura quando necessario.

Per utilizzare l'esempio seguente, sostituiscilo image:tag con il nome dell'immagine da scansionare e your_username con un nome utente che abbia accesso all'immagine:

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

Effettua l'autenticazione utilizzando il metodo non interattivo

Per questo metodo, memorizza la password o il token di registro in un .txt file.

Nota

L'utente corrente dovrebbe essere in grado di leggere solo questo file. Il file deve inoltre contenere la password o il token su una sola riga.

Per utilizzare l'esempio seguente, sostituiscilo your_username con il tuo nome utente, password.txt con il .txt file che include la password o il token su una sola riga e image:tag con il nome dell'immagine da scansionare:

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

Esempi di output di Sbomgen

Di seguito è riportato un esempio di SBOM per un'immagine di contenitore inventariata utilizzando. 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" } ] } ] }