Raccolta completa di ecosistemi Amazon Inspector SBOM Generator - 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à.

Raccolta completa di ecosistemi Amazon Inspector SBOM Generator

Amazon Inspector SBOM Generator è uno strumento per creare una distinta base del software (SBOM) ed eseguire la scansione delle vulnerabilità per i pacchetti supportati dai sistemi operativi e dai linguaggi di programmazione. Supporta la scansione di vari ecosistemi oltre ai sistemi operativi principali, garantendo un'analisi solida e dettagliata dei componenti dell'infrastruttura. Generando una SBOM, è possibile comprendere la composizione degli stack tecnologici moderni, identificare le vulnerabilità nei componenti dell'ecosistema e ottenere visibilità sul software di terze parti.

Ecosistemi supportati

La raccolta di ecosistemi estende la generazione di SBOM oltre ai pacchetti installati tramite gestori di pacchetti del sistema operativo. Ciò avviene attraverso la raccolta di applicazioni distribuite con metodi alternativi, come l'installazione manuale. Il generatore SBOM di Amazon Inspector supporta la scansione per i seguenti ecosistemi:

Ecosistemi Applicazioni

7-Zip

7-Ziparchiviatore (versione 21.07 e successive)

Apache

Apache httpd

Apache tomcat

Atlassian

Jira Core

Confluence

Jira Software

Jira Service Management

Curl

Curl

Libcurl

Elasticsearch Elasticsearch

Google

Chrome

Java

JDK

JRE

Amazon Corretto

Jenkins

Jenkins(versione 2.400.* e successive)

MariaDB e MySQL

MariaDB Server(10.6+, 11.x, 12.x)

Oracle MySQL Server Server(8,0, 8,4, 9,4+)

Microsoft applications

PowerShell

NuGet CLI

Visual Studio Code

Microsoft Edge

SharePoint Server

Microsoft Defender

Exchange Server

Visual Studio

.NET Runtime

ASP.NET Core Runtime

Microsoft Teams

Outlook for Windows

Microsoft Office

Microsoft 365

Nginx

Nginx

Node

Node

Node.JS

node

OpenSSH

OpenSSH(versioni 9 e 10)

OpenSSL

OpenSSL

Oracle

Oracle Database Server

PHP

PHP(versione 8.1 e successive)

WordPress

core

plugin

theme

7-Zipcollezione ecosistemica

Applicazioni supportate
  • 7 Zip archiver (versione 21.07 o successiva)

Funzionalità principali
  • Esamina i 7-Zip file binari per estrarre le informazioni sulla versione incorporata.

Nota

In particolare, cerca il valore della versione del prodotto dal file binario.

Piattaforme supportate: Windows
  • C:/Program Files/7-Zip/7z.exe

  • C:/Program Files/7-Zip/7za.exe

  • C:/Program Files/7-Zip/7zz.exe

  • C:/Program Files/7-Zip/7zr.exe

  • C:/Program Files (x86)/7-Zip/7z.exe

  • C:/Program Files (x86)/7-Zip/7za.exe

  • C:/Program Files (x86)/7-Zip/7zz.exe

  • C:/Program Files (x86)/7-Zip/7zr.exe

Esempio: PURL

Di seguito è riportato un esempio di URL del pacchetto per7-Zip.

pkg:generic/7zip/7zip@25.01

Apacheraccolta di ecosistemi

Questa sezione fornisce dettagli sulle applicazioni Apache httpd e Apache tomcat.

Apache httpd

Applicazioni supportate
  • Apache httpd

Nota

La valutazione delle vulnerabilità si applica solo a Apache httpd versione 2.0 e successive.

Funzionalità principali
  • Analizza il /include/ap_release.h file per estrarre le macro di installazione, che contengono stringhe di identificazione principali, stringhe di identificatori minori e stringhe di identificazione delle patch.

Piattaforme supportate

Amazon Inspector SBOM Generator esegue la scansione delle installazioni in percorsi di installazione comuni su più piattaforme:

Unix
  • /usr/local/apache2/include/

Windows
  • /Apache24/include/

  • /Program Files/Apache24/include/

  • /Program Files (x86)/Apache24/include/

Esempio di file ap_release.h

Di seguito è riportato un esempio di contenuto all'interno di un file. ap_release.h

//truncated #define AP_SERVER_BASEVENDOR "Apache Software Foundation" #define AP_SERVER_BASEPROJECT "Apache HTTP Server" #define AP_SERVER_BASEPRODUCT "Apache" #define AP_SERVER_MAJORVERSION_NUMBER 2 #define AP_SERVER_MINORVERSION_NUMBER 4 #define AP_SERVER_PATCHLEVEL_NUMBER 1 #define AP_SERVER_DEVBUILD_BOOLEAN 0 //truncated
Esempio: PURL

Di seguito è riportato un esempio di URL di pacchetto per un'Apache httpdapplicazione.

Sample PURL: pkg:generic/apache/httpd@2.4.1

Apache tomcat

Applicazioni supportate
  • Apache tomcat

Nota

La valutazione delle vulnerabilità si applica solo alla Apache tomcat versione 9.0 e successive.

Funzionalità principali
  • Decomprime il catalina.jar file per estrarre le macro di installazione all'interno del META-INF/MANIFEST.MF file, che contiene la stringa della versione.

Piattaforme supportate

Amazon Inspector SBOM Generator esegue la scansione delle installazioni in percorsi di installazione comuni su più piattaforme:

Linux
  • /opt/tomcat/lib/

  • /usr/share/tomcat/lib

  • /var/lib/tomcat/lib/

macOS
  • /Library/Tomcat/lib/

  • /usr/local/tomcat/lib

Windows
  • /Program Files/Apache Software Foundation

  • /Program Files (x86)/Apache Software Foundation/

Esempio di file catalina.jar/META-INF/MANIFEST.MF

Di seguito è riportato un esempio di contenuto all'interno di un file. catalina.jar/META-INF/MANIFEST.MF

//truncated Implementation-Title: Apache Tomcat Implementation-Vendor: Apache Software Foundation Implementation-Version: 10.1.31 //truncated
Esempio: PURL

Di seguito è riportato un esempio di URL di pacchetto per un'Apache tomcatapplicazione.

Sample PURL: pkg:generic/apache/tomcat@10.1.31

Atlassianraccolta di ecosistemi

Questa sezione fornisce dettagli sui prodotti e le applicazioni Atlassian server.

Atlassian Server Products

Applicazioni supportate
  • Jira Core

  • Confluence

Funzionalità principali
  • Jira Core— Analizza le proprietà POM di Maven atlassian-jira-webapp per estrarre informazioni sulla versione.

  • Confluence— Analizza le proprietà POM di Maven per estrarre le informazioni sulla versione. confluence-webapp

Piattaforme supportate

Amazon Inspector SBOM Generator esegue la scansione delle installazioni in percorsi di installazione comuni:

Linux
  • /opt/atlassian/jira/atlassian-jira/META-INF/maven/com.atlassian.jira/atlassian-jira-webapp/pom.properties

  • /opt/atlassian/confluence/confluence/META-INF/maven/com.atlassian.confluence/confluence-webapp/pom.properties

Esempio: PURL

Di seguito è riportato un pacchetto di esempio URLs per prodotti Atlassian server.

// Jira Core pkg:generic/atlassian/jira-core@10.0.1?distro=linux // Confluence pkg:generic/atlassian/confluence@9.2.7?distro=linux

Atlassian Applications

Applicazioni supportate
  • Jira Software

  • Jira Service Management

Funzionalità principali
  • Jira Software— Rileva tramite jira-software-application JAR ed estrae la versione dalle proprietà POM di Maven.

  • Jira Service Management— Rileva tramite jira-servicedesk-application JAR ed estrae la versione dalle proprietà POM di Maven.

Piattaforme supportate

Amazon Inspector SBOM Generator esegue la scansione delle installazioni in percorsi di installazione comuni:

Linux
  • /opt/atlassian/jira/atlassian-jira/WEB-INF/application-installation/jira-software-application/jira-software-application-*.jar

  • /opt/atlassian/jira/atlassian-jira/WEB-INF/application-installation/jira-servicedesk-application/jira-servicedesk-application-*.jar

Esempio: PURL

Di seguito sono riportati alcuni esempi di pacchetti URLs per Atlassian applicazioni.

// Jira Software pkg:generic/atlassian/jira-software@10.3.9?distro=linux // Jira Service Management pkg:generic/atlassian/jira-service-management@10.3.9?distro=linux

Curlraccolta di ecosistemi

Questa sezione fornisce dettagli sulle Libcurl applicazioni Curl e.

Curl

Applicazioni supportate
  • Curl

Piattaforme supportate
  • Unix: Linux e macOS

    • /usr/local/bin/curl

Caratteristiche principali: Curl
  • Esamina i curl file binari per estrarre le informazioni sulla versione incorporata.

Nota

In particolare, cerca le stringhe di versione nella .rodata sezione eseguibile binaria (per i binari ELF su Linux), .rdata nella sezione (per i binari PE su Windows) o nella sezione __cstring (per i binari MaCHo su macOS).

Curl version string

Di seguito è riportato un esempio di stringa di versione incorporata in un file binario: Curl

curl/8.14.1

8.14.1La versione viene estratta dalla stringa per identificare la Curl versione.

Esempio PURL (Curl)

Di seguito è riportato un esempio di URL del pacchetto per un file di Curl versione.

Sample PURL: pkg:generic/curl/curl@8.14.1

Libcurl

Applicazioni supportate
  • Libcurl

Piattaforme supportate
  • Unix: Linux e macOS

    • /usr/local/bin/curl/curlver.

Caratteristiche principali: Libcurl
  • Esamina curlver.h per cui estrarre le informazioni sulla versione incorporata perLibcurl.

Nota

In particolare, estrae la versione dalle variabili definite LIBCURL_VERSION_MAJOR LIBCURL_VERSION_MINOR eLIBCURL_VERSION_PATCH.

Libcurl version string

Di seguito è riportato un esempio delle variabili di versione in un curlver.h file:

#define LIBCURL_VERSION_MAJOR 8 #define LIBCURL_VERSION_MINOR 14 #define LIBCURL_VERSION_PATCH 1

8.14.1La versione viene estratta da queste righe per identificare la Libcurl versione.

Esempio PURL (Libcurl)

Di seguito è riportato un esempio di URL del pacchetto per un Libcurl file di versione.

Sample PURL: pkg:generic/curl/libcurl@8.14.1

Elasticsearchraccolta ecosistemica

Applicazioni supportate
  • Elasticsearch

Nota

La valutazione delle vulnerabilità si applica solo alla Elasticsearch versione 7.17.0.

Funzionalità principali
  • Version— Decomprime il elasticsearch-<specific.version>.jar file per estrarre le macro di installazione all'interno dei META-INF/MANIFEST.MF file, che contengono la stringa della versione. Elasticsearch

Piattaforme supportate
  • Linux/etc/elasticsearch/lib, e /opt/elasticsearch/lib/ /usr/share/elasticsearch/lib/

  • macOS/usr/local/var/lib/elasticsearch/lib/

  • Windows/elasticsearch//Program Files (x86)/Elastic/elasticsearch/lib/, e /Program Files/Elastic/elasticsearch/lib/

Esempio di file elasticsearch-<specific.version>.jar/META-INF/MANIFEST.MF

Di seguito è riportato un esempio di elasticsearch-<specific.version>.jar/META-INF/MANIFEST.MF file.

//truncated Manifest-Version: 1.0 Module-Origin: git@github.com:elastic/elasticsearch.git X-Compile-Elasticsearch-Version: 8.19.0-SNAPSHOT X-Compile-Lucene-Version: 9.12.1 X-Compile-Elasticsearch-Snapshot: true //truncated
Esempio: PURL

Di seguito è riportato un esempio di URL del pacchetto per un elasticsearch-<specific.version>.jar/META-INF/MANIFEST.MF file.

pkg:generic/elastic/elasticsearch@8.19.0-SNAPSHOT

Googleraccolta di ecosistemi

Applicazioni supportate
  • Google Chrome

  • Puppeteer(supporta la libreria puppeteer; puppeteer-core non è incluso)

Nota

Puppeteersupporta la libreria puppeteer. Puppeteeril core non è incluso.

Artefatti supportati

Amazon Inspector raccoglie Google Chrome informazioni da quanto segue:

  • Il chrome/VERSION file (sorgente della build)

  • Il chrome.exe file (Windows Chromeinstallazione)

  • Il puppeteer file (installazione)

Per ciascuno degli elementi supportati, Sbomgen analizza e raccoglie il chrome file o il file. puppeteer Per le puppeteer installazioni, la Chromium versione corrispondente viene raccolta in base alla versione. puppeteer Per ulteriori informazioni, consulta Browser supportati sul sito Web di Puppeteer.

Quando la variabile di PUPPETEER_SKIP_CHROMIUM_DOWNLOAD ambiente è impostata sutrue, la valutazione viene ignorata e il skip_chromium_download=true qualificatore viene aggiunto all'URL del pacchetto. Puppeteer

File di versione di esempio chrome/VERSION

Di seguito è riportato un esempio del file di chrome/VERSION versione.

MAJOR=130 MINOR=0 BUILD=6723 PATCH=58
Esempio: PURL

Di seguito è riportato un esempio di URL del pacchetto per un file di chrome/VERSION versione.

Sample PURL: pkg:generic/google/chrome@131.0.6778.87
File di puppeteer versione di esempio

Di seguito è riportato un esempio del file di puppeteer versione.

{ "name": "puppeteer", "version": "23.9.0", "description": "A high-level API to control headless Chrome over the DevTools Protocol", "keywords": [ "puppeteer", "chrome", "headless", "automation" ] }
Esempio: PURL

Di seguito è riportato un esempio di URL del pacchetto per un file di puppeteer versione.

Sample PURL: pkg:generic/google/puppeteer@23.9.0
Esempio: PURL

Di seguito è riportato un esempio di URL di pacchetto con il qualificatore skip per un file di versione. puppeteer

pkg:generic/google/puppeteer@22.15.0?distro=linux&skip_chromium_download=true

Javaraccolta ecosistemica

Applicazioni supportate
  • Oracle JDK

  • Oracle JRE

  • Amazon Corretto

Funzionalità principali
  • Estrae la stringa dell'Javainstallazione.

  • Identifica il percorso della directory che contiene il Java runtime.

  • Identifica il fornitore comeOracle JDK, Oracle JRE e. Amazon Corretto

Amazon Inspector SBOM Generator esegue la scansione delle Java installazioni sui seguenti percorsi e piattaforme di installazione:

  • macOS: /Library/Java/JavaVirtualMachines

  • Linux 32-bit: /usr/lib/jvm

  • Linux 64-bit: /usr/lib64/jvm

  • Linux (generic): /usr/java and /opt/java

JavaInformazioni sulla versione di esempio

Di seguito è riportato un esempio di release. Oracle Java

// Amazon Corretto IMPLEMENTOR="Amazon.com Inc." IMPLEMENTOR_VERSION="Corretto-17.0.11.9.1" JAVA_RUNTIME_VERSION="17.0.11+9-LTS" JAVA_VERSION="17.0.11" JAVA_VERSION_DATE="2024-04-16" LIBC="default" MODULES="java.base java.compiler java.datatransfer java.xml java.prefs java.desktop java.instrument java.logging java.management java.security.sasl java.naming java.rmi java.management.rmi java.net.http java.scripting java.security.jgss java.transaction.xa java.sql java.sql.rowset java.xml.crypto java.se java.smartcardio jdk.accessibility jdk.internal.jvmstat jdk.attach jdk.charsets jdk.compiler jdk.crypto.ec jdk.crypto.cryptoki jdk.dynalink jdk.internal.ed jdk.editpad jdk.hotspot.agent jdk.httpserver jdk.incubator.foreign jdk.incubator.vector jdk.internal.le jdk.internal.opt jdk.internal.vm.ci jdk.internal.vm.compiler jdk.internal.vm.compiler.management jdk.jartool jdk.javadoc jdk.jcmd jdk.management jdk.management.agent jdk.jconsole jdk.jdeps jdk.jdwp.agent jdk.jdi jdk.jfr jdk.jlink jdk.jpackage jdk.jshell jdk.jsobject jdk.jstatd jdk.localedata jdk.management.jfr jdk.naming.dns jdk.naming.rmi jdk.net jdk.nio.mapmode jdk.random jdk.sctp jdk.security.auth jdk.security.jgss jdk.unsupported jdk.unsupported.desktop jdk.xml.dom jdk.zipfs" OS_ARCH="x86_64" OS_NAME="Darwin" SOURCE=".:git:7917f11551e8+" // JDK IMPLEMENTOR="Oracle Corporation" JAVA_VERSION="19" JAVA_VERSION_DATE="2022-09-20" LIBC="default" MODULES="java.base java.compiler java.datatransfer java.xml java.prefs java.desktop java.instrument java.logging java.management java.security.sasl java.naming java.rmi java.management.rmi java.net.http java.scripting java.security.jgss java.transaction.xa java.sql java.sql.rowset java.xml.crypto java.se java.smartcardio jdk.accessibility jdk.internal.jvmstat jdk.attach jdk.charsets jdk.zipfs jdk.compiler jdk.crypto.ec jdk.crypto.cryptoki jdk.dynalink jdk.internal.ed jdk.editpad jdk.hotspot.agent jdk.httpserver jdk.incubator.concurrent jdk.incubator.vector jdk.internal.le jdk.internal.opt jdk.internal.vm.ci jdk.internal.vm.compiler jdk.internal.vm.compiler.management jdk.jartool jdk.javadoc jdk.jcmd jdk.management jdk.management.agent jdk.jconsole jdk.jdeps jdk.jdwp.agent jdk.jdi jdk.jfr jdk.jlink jdk.jpackage jdk.jshell jdk.jsobject jdk.jstatd jdk.localedata jdk.management.jfr jdk.naming.dns jdk.naming.rmi jdk.net jdk.nio.mapmode jdk.random jdk.sctp jdk.security.auth jdk.security.jgss jdk.unsupported jdk.unsupported.desktop jdk.xml.dom" OS_ARCH="x86_64" OS_NAME="Darwin" SOURCE=".:git:53b4a11304b0 open:git:967a28c3d85f"
Esempio: PURL

Di seguito è riportato un esempio di URL del pacchetto per una Oracle Java versione.

Sample PURL: # Amazon Corretto pkg:generic/amazon/amazon-corretto@21.0.3 # Oracle JDK pkg:generic/oracle/jdk@11.0.16 # Oracle JRE pkg:generic/oracle/jre@20

Jenkinsraccolta di ecosistemi

Applicazioni supportate
  • Jenkins core

Nota

La valutazione delle vulnerabilità si applica alla Jenkins versione 2.400.* e successive.

Funzionalità principali
  • Estrae le informazioni sulla versione dal jenkins.war file leggendo il META-INF/MANIFEST.M file, che contiene la stringa della versione. Jenkins

Amazon Inspector SBOM Generator cerca le installazioni Jenkins in percorsi di installazione comuni su più piattaforme:

Linux
  • /usr/share/jenkins/jenkins.war

  • usr/share/java/jenkins/.war

macOS
  • /opt/homebrew/opt/jenkins-lts/libexec/jenkins.war

Windows
  • /Program Files/Jenkins/Jenkins.war

  • /Program Files (x86)/Jenkins/Jenkins.war

File di esempio

Di seguito sono riportati alcuni esempi di jenkins.war/META-INF/MANIFEST.MF file per diverse versioni.

Manifest-Version: 1.0 Created-By: Maven WAR Plugin 3.4.0 Build-Jdk-Spec: 21 Implementation-Title: Jenkins war Main-Class: executable.Main Implementation-Version: 2.516.2 Jenkins-Version: 2.516.2
Manifest-Version: 1.0 Jenkins-Version: 2.414.1 Implementation-Title: Jenkins Implementation-Version: 2.414.1 Built-By: kohsuke Created-By: Apache Maven 3.8.6
Esempio PURLs

Di seguito sono riportati i pacchetti URLs per la versione 2.516.2 della versione Jenkins LTS e la versione 2.414 della versione del server di automazione. Jenkins

LTS: pkg:generic/jenkins/jenkins-core-lts@2.516.2.1 Regular: pkg:generic/jenkins/jenkins-core@2.414

MariaDBe raccolta di ecosistemi MySQL

MariaDB

Applicazioni supportate
  • MariaDB Server(10.6+, 11.x, 12.x)

Funzionalità principali
  • Estrae le informazioni sulla versione dai file binari del server di database e dai file di intestazione utilizzando modelli specifici del database.

  • Identifica il percorso della directory contenente l'installazione del server di database.

  • Distingue automaticamente tra MySQL installazioni MariaDB e installazioni utilizzando il rilevamento del tipo di file basato sui dati.

SBOM Generator cerca MariaDB l'installazione in percorsi di installazione comuni tra piattaforme:

Linux
  • /usr/bin/mariadbd

  • /usr/sbin/mariadbd

  • /usr/local/bin/mariadbd

macOS
  • C:/Program Files (x86)/MariaDB/include/mysql/mariadb_version.h (MariaDB)

  • C:/Program Files/MariaDB/include/mysql/mariadb_version.h (MariaDB)

Windows
  • C:/Program Files (x86)/MariaDB/include/mysql/mariadb_version.h (MariaDB)

  • C:/Program Files/MariaDB/include/mysql/mariadb_version.h (MariaDB)

Esempio: PURL

Di seguito è riportato un esempio di URL di pacchetto per un MariaDB server.

# MariaDB Server pkg:generic/mysql/mariadb-server@10.11.8

MySQLraccolta di ecosistemi

Applicazioni supportate
  • Oracle MySQL Server Server(8.0, 8.4, 9.4+)

Funzionalità principali
  • Estrae le informazioni sulla versione dai file binari del server di database e dai file di intestazione utilizzando modelli specifici del database.

  • Identifica il percorso della directory contenente l'installazione del server di database.

  • Distingue automaticamente tra MariaDB installazioni MySQL e installazioni utilizzando il rilevamento del tipo di file basato sui dati.

SBOM Generator cerca MySQL l'installazione in percorsi di installazione comuni tra piattaforme:

Linux
  • /usr/local/bin/mysqld

  • /usr/bin/mysqld

  • /usr/sbin/mysqld

macOS
  • /usr/local/mysql/include/mysql_version.h (MySQL)

Windows
  • C:/Program Files/MySQL/MySQL Server/include/mysql_version.h (MySQL)

  • C:/Program Files (x86)/MySQL/MySQL Server/include/mysql_version.h (MySQL)

Esempio: PURL

Di seguito è riportato un esempio di URL di pacchetto per un MySQL server.

# Oracle MySQL Server pkg:generic/mysql/mysql-server@8.0.43

Microsoft applicationsraccolta di ecosistemi

Applicazioni Microsoft supportate
  • PowerShell

  • NuGet CLI

  • Visual Studio Code

  • Microsoft Edge

  • SharePoint Server

  • Microsoft Defender

  • Exchange Server

  • Visual Studio

  • .NET Runtime

  • ASP.NET Core Runtime

  • Microsoft Teams

  • Outlook for Windows

  • Microsoft Office

  • Microsoft 365

Funzionalità principali
  • PowerShell— Esamina il pwsh.exe file per estrarre le informazioni sulla versione incorporata.

  • NuGet CLI— Esamina il nuget.exe file per estrarre le informazioni sulla versione incorporata.

  • Visual Studio Code— Esamina il Code.exe file per estrarre le informazioni sulla versione incorporata.

  • Microsoft Edge— Esamina il msedge.exe file per estrarre le informazioni sulla versione incorporata.

  • SharePoint Server— Esamina il Microsoft.SharePoint.dll file per estrarre le informazioni sulla versione incorporata.

  • Microsoft Defender— Esamina il MsMpEng.exe file per estrarre le informazioni sulla versione incorporata.

  • Exhange Server— Esamina il Exsetup.exe file per estrarre le informazioni sulla versione incorporata.

  • Visual Studio— Analizza il state.json file per recuperare la stringa della versione dal campo. catalogInfo.productDisplayVersion

  • .NET Runtime— Cerca Microsoft.NETCore.App.deps.json il file nei percorsi di installazione ed estrae la stringa della versione dal seguente schema di percorso del file.

    Microsoft.NETCore.App/<VERSION>/Microsoft.NETCore.App.deps.json
  • ASP.NET Runtime— Cerca Microsoft.AspNetCore.App.deps.json il file nei percorsi di installazione ed estrae la stringa della versione dal seguente schema di percorso del file.

    Microsoft.AspNetCore.App/<VERSION>/Microsoft.AspNetCore.App.deps.json
  • Outlook for Windows— Analizza il registro di Windows ed estrae la versione dalla seguente chiave di registro.

    HKLM\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppModel\PackageRepository\Packages\Microsoft.OutlookForWindows_<VERSION>_<ARCH>__8wekyb3d8bbwe
  • Microsoft Teams— Analizza il registro di Windows ed estrae la versione dalla seguente chiave di registro.

    HKLM\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppModel\PackageRepository\Packages\MSTeams_<VERSION>_<ARCH>__8wekyb3d8bbwee
  • Microsoft Office 365 / Microsoft 365— Analizza il registro di Windows ed estrae la versione dalla chiave e dal valore di registro seguenti.

    • Chiave di registro

      KEY_LOCAL_MACHINES\SOFTWARE\Microsoft\Office\ClickToRun\Configuration
    • Valore del registro

      • VersionToReport— Versione Microsoft Office

      • ProductReleaseIds— Elenco dei prodotti IDs. Viene utilizzato per identificare i prodotti Office installati. Per ulteriori informazioni sul prodotto IDs, vedere product IDsil Microsoft sito Web.

  • Microsoft Office Suite— Raccoglie tutte le applicazioni Office installate esaminando i seguenti file eseguibili:

    • EXCEL.EXE – Microsoft Excel

    • WINWORD.EXE – Microsoft Word

    • POWERPNT.EXE – Microsoft PowerPoint

    • OUTLOOK.EXE – Microsoft Outlook

    Il numero di versione nel registro di Windows viene utilizzato come numero di versione autorevole per ogni applicazione di Office installata.

Esempio di file state.json

Di seguito è riportato un esempio di state.json file da utilizzare per raccogliere la versione installataVisual Studio.

{ "icon": { "mimeType": "image/svg+xml", "fileName": "product.svg" }, "updateDate": "2025-11-06T05:05:35.6517471Z", "installDate": "2025-11-06T05:05:35.6527436Z", "enginePath": "C:\\Program Files (x86)\\Microsoft Visual Studio\\Installer\\resources\\app\\ServiceHub\\Services\\Microsoft.VisualStudio.Setup.Service", "installationName": "VisualStudio/17.14.19+36623.8", "catalogInfo": { "id": "VisualStudio/17.14.19+36623.8", "buildBranch": "d17.14", "buildVersion": "17.14.36623.8", "localBuild": "build-lab", "manifestName": "VisualStudio", "manifestType": "installer", "productDisplayVersion": "17.14.19", // truncated

Esempio: PURL

Di seguito è riportato un esempio di URL del pacchetto per ciascunoMicrosoft Applications.

// PowerShell Sample PURL: pkg:generic/microsoft/powershell@7.5.3 // NuGet CLI Sample PURL: pkg:generic/microsoft/nuget@6.14.0 // Visual Studio Code Sample PURL: pkg:generic/microsoft/visualstudiocode@1.104.2 // Microsoft Edge Sample PURL: pkg:generic/microsoft/edge@140.0.3485.94 // SharePoint Server Sample PURL: pkg:generic/microsoft/sharepoint@23.38.219.1 // Microsoft Defender Sample PURL: pkg:generic/microsoft/defender@4.18.23110.3 // Exchange Server Sample PURL: pkg:generic/microsoft/exchangeserver@15.2.2562.17 // Visual Studio Sample PURL: pkg:generic/microsoft/visualstudio@17.14.19 // .NET Runtime Sample PURL: pkg:generic/microsoft/dotnet@8.0.18 // ASP.NET Core Runtime Sample PURL: pkg:generic/microsoft/aspdotnet@8.0.18 // Microsoft Teams Sample PURL: pkg:generic/microsoft/teams@25241.203.3947.4411 // Outlook for Windows Sample PURL: pkg:generic/microsoft/outlookforwindows@1.2025.916.400 // Microsoft 365 / Office 365 Sample PURL: pkg:generic/microsoft/office@16.0.19127.20264?product_ids=O365HomePremRetail // Microsoft Word Sample PURL: pkg:generic/microsoft/word@16.0.19127.20264 // Microsoft Excel Sample PURL: pkg:generic/microsoft/excel@16.0.19127.20264 // Microsoft PowerPoint Sample PURL: pkg:generic/microsoft/powerpoint@16.0.19127.20264 // Microsoft Outlook Sample PURL: pkg:generic/microsoft/outlook@16.0.19127.20264

Nginxraccolta di ecosistemi

Applicazioni supportate
  • Nginx

Piattaforme supportate

Le seguenti sono le piattaforme supportate.

Linux
  • /usr/sbin/nginx

  • /usr/local/nginx

  • /usr/local/etc/nginx

  • /usr/local/nginx/nginx

  • /usr/local/nginx/sbin/nginx

  • /etc/nginx/nginx

Windows
  • C:\nginx\nginx.exe

  • C:\nginx-x.y.z\nginx.exe (x.y.z è una versione arbitraria)

macOS
  • /usr/local/etc/nginx/nginx

Funzionalità principali

Questa raccolta esamina i file binari per estrarre le informazioni sulle versioni incorporate. Cerca le stringhe di versione nella .rodata sezione eseguibile binaria (per i binari ELF attiviLinux), nella .rdata sezione (per i binari PE su) o __ctring nella sezione (per i binariWindows). MachO

Stringa di versione di esempio

Di seguito è riportato un esempio di stringa di versione incorporata in un Nginx file binario.

nginx version: nginx/1.27.5

La versione 1.27.5 viene estratta per identificare la Nginx versione.

Esempio: PURL

Quello che segue è un esempio di URL del pacchetto per Nginx.

Sample PURL: pkg:generic/nginx/nginx@1.27.5

Node.JSraccolta runtime

Applicazioni supportate
  • node runtime binario per Node.JS

Piattaforme supportate

Le seguenti sono le piattaforme supportate. (* è una versione arbitraria)

Linux
  • /usr/local/bin/node

  • /usr/bin/node

  • /nodejs/bin/node

  • ~/.nvm/versions/node/*/bin/node

  • ~/.local/share/fnm/node-versions/*/installation/bin/node

  • ~/.asdf/installs/nodejs/*/bin/node

  • ~/.local/share/mise/installs/node/*/bin/node

  • ~/.volta/tools/image/node/*/bin/node

Windows
  • C:\Program Files\nodejs\node.exe

  • C:\Program Files (x86)\nodejs\node.exe

  • ~\\ RoamingAppData\ fnm\node-versions\ *\ installation\node.exe

macOS
  • /opt/homebrew/Cellar/node/*/bin/node

Funzionalità principali

Questa raccolta esamina i file binari per estrarre le informazioni sulle versioni incorporate. Cerca le stringhe di versione nella .rodata sezione eseguibile binaria (per i binari ELF attiviLinux), nella .rdata sezione (per i binari PE su) o __ctring nella sezione (per i binariWindows). MachO

Stringa di versione di esempio

Di seguito è riportato un esempio di stringa di versione incorporata in un file binario Node.JS di runtime.

node.js/v24.11.1

24.11.1La versione viene estratta per identificare la versione Node.JS di runtime.

Esempio: PURL

Di seguito è riportato un esempio di URL del pacchetto perNode.JS.

Sample PURL: pkg:generic/nodejs/node@24.11.1

Raccolta di ecosistemi OpenSSH

Applicazioni supportate
  • OpenSSH(Versione 9)

  • OpenSSH(Versione 10)

Piattaforme supportate Linux/macOS
  • /usr/sbin/sshd

  • /usr/local/sbin/sshd

Piattaforme supportate Windows
  • C:/Windows/System32/OpenSSH/sshd.exe

  • C:/Program Files/OpenSSH/sshd.exe

  • C:/Program Files (x86)/OpenSSH/sshd.exe

  • C:/OpenSSH/sshd.exe

Funzionalità principali
  • Esamina i sshd file binari per estrarre le informazioni sulla versione incorporata.

  • Cerca le stringhe di versione nella .rodata sezione eseguibile binaria (per i binari ELF attivati)Linux, __cstring nella sezione (per i binari Mach-O attivati) o nella sezione (per i binari MacOs PE attivi). .rdata Windows

Stringa di versione di esempio

Di seguito è riportato un esempio di stringa di versione incorporata in un OpenSSH file binario.

OpenSSH_9.9p2

La versione 9.9p2 viene estratta per identificare la OpenSSH versione.

Esempio: PURL

Di seguito è riportato un esempio di URL del pacchetto perOpenSSH.

Sample PURL: pkg:generic/openssh/openssh@9.9p2

Collezione di ecosistemi OpenSSL

Applicazioni supportate

Il supporto per le librerie e i pacchetti di sviluppo OpenSSL è limitato al software creato con OpenSSL ufficiale per le versioni 3.0.0 e successive. Il software deve inoltre seguire il controllo delle versioni semantiche. Le varianti e le versioni OpenSSL personalizzate o biforcate precedenti alla 3.0.0 non sono supportate.

Amazon Inspector SBOM Generator estrae le informazioni chiave sui pacchetti per ogni istanza OpenSSL installata.

Funzionalità principali
  • Estrae la stringa della versione SEMVER di base dal file di intestazione OpenSSL

  • Identifica il percorso della directory contenente l'installazione di OpenSSL

Amazon Inspector SBOM Generator cerca le installazioni OpenSSL eseguendo la scansione del file in percorsi di installazione comuni su più opensslv.h piattaforme.

Esempio di percorso di installazione per Linux/Unix

Quello che segue è un esempio di percorso di installazione per Linux/Unix.

/usr/local/include/openssl/opensslv.h /usr/local/ssl/include/openssl/opensslv.h /usr/local/openssl/include/openssl/opensslv.h /usr/local/opt/openssl/include/openssl/opensslv.h /usr/include/openssl/opensslv.h

Amazon Inspector SBOM Generator estrae le informazioni sulla versione analizzando il opensslv.h file e cercando le definizioni delle versioni.

# define OPENSSL_VERSION_MAJOR 3 # define OPENSSL_VERSION_MINOR 4 # define OPENSSL_VERSION_PATCH 0
Esempio: PURL

Di seguito è riportato un esempio di URL del pacchetto per la versione OpenSSL.

Sample PURL: pkg:generic/openssl/openssl@3.4.0

Collezione Oracle Database Server

Applicazioni supportate
  • Oracle Database

Piattaforme supportate Linux
  • /opt/oracle

  • /u01/app/oracle

Nota

La valutazione delle vulnerabilità si applica solo alla versione 19 e successive di Oracle Database Server.

Funzionalità principali
  • Esamina i Oracle file binari per estrarre le informazioni sulla versione incorporata.

  • Cerca le stringhe di versione nella .rodata sezione eseguibile binaria (attiva i binari ELF). Linux

  • Le informazioni sulla versione seguono un formato specifico che include la stringa della versione RDBMS.

Stringa di versione di esempio

Di seguito è riportato un esempio di stringa di versione incorporata in un Oracle Database file binario:

RDBMS_23.7.0.25.01DBRU_LINUX.X64_240304

La versione 23.7.0.25.01 viene estratta per identificare la Oracle Database versione.

Esempio: PURL

Di seguito è riportato un esempio di URL del pacchetto perOracle Database.

Sample PURL: pkg:generic/oracle/database@23.7.0.25.01

PHPraccolta di ecosistemi

Applicazioni supportate
  • PHP(versione 8.1 e successive)

Funzionalità principali
  • Estrae le informazioni sulla versione dagli eseguibili PHP binari utilizzando stringhe di versione incorporate.

  • Identifica il percorso della directory contenente il file binario. PHP

  • Rileva automaticamente sia i PHP file binari standard che le installazioni con versione, ad esempio, e. php8.1 php8.2 php8.3

Amazon Inspector SBOM Generator cerca le PHP installazioni in percorsi di installazione comuni su più piattaforme:

Linux
  • usr/bin/php8.1 through /usr/bin/php8.9

  • /usr/sbin/php8.1 through /usr/sbin/php8.9

  • /usr/local/bin/php, /usr/bin/php, /usr/sbin/php

  • /usr/local/bin/php8.1 through /usr/local/bin/php8.9(file binari con versione)

macOS
  • /opt/homebrew/bin/php

  • /usr/bin/php

  • /usr/local/bin/php

Windows
  • C:/php/php.exe

  • C:/php8.1/php.exe through C:/php8.9/php.exe(directory con versione)

Esempio PHP di estrazione della versione

Amazon Inspector SBOM Generator estrae le informazioni sulla versione dai PHP file binari cercando stringhe di versione incorporate utilizzando lo schema seguente.

X-Powered-By: PHP/8.4.12

8.4.12viene estratto da questo schema per identificare la versione. PHP

Esempio: PURL

Di seguito è riportato un esempio di URL di pacchetto per un PHP pattern.

pkg:generic/php/php@8.4.12

WordPressraccolta di ecosistemi

Componenti supportati
  • WordPress core

  • WordPressplugin

  • WordPresstemi

Funzionalità principali
  • WordPresscore — analizza il /wp-includes/version.php file per estrarre il valore della versione dalla variabile $wp_version.

  • WordPressplugins: analizza il /wp-content/plugins/<WordPress Plugin>/readme.txt file o il /wp-content/plugins/<WordPress Plugin>/readme.md file per estrarre il tag come stringa della versione. Stable

  • WordPressthemes: analizza il /wp-content/themes/<WordPress Theme>/style.css file per estrarre la versione dai metadati della versione.

Esempio di file version.php

Di seguito è riportato un esempio di file WordPress principaleversion.php.

// truncated /** * The WordPress version string. * * Holds the current version number for WordPress core. Used to bust caches * and to enable development mode for scripts when running from the /src directory. * * @global string $wp_version */ $wp_version = '6.5.5'; // truncated
Esempio: PURL

Di seguito è riportato un esempio di URL del pacchetto per WordPress core.

Sample PURL: pkg:generic/wordpress/core/wordpress@6.5.5
Esempio di file readme.txt

Di seguito è riportato un esempio di readme.txt file di WordPress plugin.

=== Plugin Name === Contributors: (this should be a list of wordpress.org userid's) Donate link: https://example.com/ Tags: tag1, tag2 Requires at least: 4.7 Tested up to: 5.4 Stable tag: 4.3 Requires PHP: 7.0 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html // truncated
Esempio: PURL

Quello che segue è un esempio di URL di pacchetto per un WordPress plugin.

Sample PURL: pkg:generic/wordpress/plugin/exclusive-addons-for-elementor@1.0.0
Esempio di file style.css

Di seguito è riportato un esempio di style.css file WordPress tematico.

/* Author: the WordPress team Author URI: https://wordpress.org Description: Twenty Twenty-Four is designed to be flexible, versatile and applicable to any website. Its collection of templates and patterns tailor to different needs, such as presenting a business, blogging and writing or showcasing work. A multitude of possibilities open up with just a few adjustments to color and typography. Twenty Twenty-Four comes with style variations and full page designs to help speed up the site building process, is fully compatible with the site editor, and takes advantage of new design tools introduced in WordPress 6.4. Requires at least: 6.4 Tested up to: 6.5 Requires PHP: 7.0 Version: 1.2 License: GNU General Public License v2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html Text Domain: twentytwentyfour Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news */
Esempio: PURL

Di seguito è riportato un esempio di URL del pacchetto per un WordPress tema.

Sample PURL: pkg:generic/wordpress/theme/avada@1.0.0