

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon Inspector SBOM 產生器全方位生態系統集合
<a name="sbom-generator-ecosystem-collection"></a>

 Amazon Inspector SBOM 產生器是一種工具，可用來建立軟體物料清單 (SBOM)，以及針對作業系統和程式設計語言中支援的套件執行漏洞掃描。它支援掃描核心作業系統以外的各種生態系統，確保對基礎設施元件進行強大且詳細的分析。透過產生 SBOM，您可以了解現代技術堆疊的組成、識別生態系統元件中的漏洞，以及了解第三方軟體。

## 支援的生態系統
<a name="w2aac37c27b5"></a>

 生態系統集合會將 SBOM 產生延伸到透過作業系統套件管理員安裝的套件之外。這是透過以替代方法部署的應用程式集合來完成，例如手動安裝。Amazon Inspector SBOM 產生器支援掃描下列生態系統：


| 生態系統 | 應用程式 | 
| --- | --- | 
|  7-Zip  |  7-Zip 封存程式 (21.07 版及更新版本）  | 
| Amazon Q Developer | Amazon Q Developer CLI<br />Amazon Q VS Code extension<br />Amazon Q JetBrains plugin | 
| Anthropic | Claude Code CLI | 
| Apache | Apache Cassandra<br />Apache httpd<br />Apache Struts<br />Apache tomcat | 
| Atlassian | Jira Core<br />Confluence<br />Jira Software<br />Jira Service Management | 
| Conda | Miniconda 環境<br />Anaconda 環境<br />Miniforge 環境<br />Mambaforge 環境 | 
| Curl | Curl<br />Libcurl | 
| Docker binaries | docker<br />dockerd<br />containerd<br />runc | 
| Elasticsearch | Elasticsearch | 
| Generic AI/ML Models | `.gguf` – GGUF<br />`.safetensors` – Safetensors<br />`.onnx` – ONNX<br />`.pt` – PyTorch<br />`.pth` – PyTorch<br />`.h5` – Keras / HDF5 | 
| GitHub | GitHub Copilot CLI<br />GitHub Copilot VS Code extension<br />GitHub Copilot JetBrains plugin | 
| Google | Chrome | 
| HuggingFace | HuggingFace CLI Models Cache | 
| Java | JDK<br />JRE<br />Amazon Corretto | 
|  Jenkins  |  Jenkins (2.400.\* 版及更新版本）  | 
| Kiro | Kiro CLI | 
| MariaDB 和 MySQL | MariaDB Server (10.6\+、11.x、12.x)<br />Oracle MySQL Server Server (8.0、8.4、9.4\+) | 
| Microsoft applications | PowerShell<br />NuGet CLI<br />Visual Studio Code<br />Microsoft Edge<br />SharePoint Server<br />Microsoft Defender<br />Exchange Server<br />Visual Studio<br />.NET Core Runtime<br />.NET Framework<br />ASP.NET Core Runtime<br />Microsoft Teams<br />Outlook for Windows<br />Microsoft Office<br />Microsoft 365 | 
| Microsoft SQL Server | Microsoft SQL Server | 
| MongoDB | MongoDB Server (7.0\+、8.0\+) | 
| Nginx | Nginx | 
| Node | Node | 
| Node.JS | node | 
| Ollama | Ollama<br />Ollama Model Collector | 
| OpenSSH | OpenSSH （第 9 版和第 10 版） | 
| OpenSSL | OpenSSL | 
| Oracle | Oracle Database Server | 
|  PHP  |  PHP (8.1 版及更新版本）  | 
|  Redis  |  Redis (7.2 版及更新版本）  | 
| WordPress | core<br />plugin<br />theme | 

## 7-Zip 生態系統集合
<a name="w2aac37c27b7"></a>

**支援的應用程式**
+  7 Zip 封存程式 (21.07 版或更新版本） 

**主要功能**
+  檢查7-Zip二進位檔以擷取內嵌版本資訊。

**注意**  
 具體而言，它會從二進位檔搜尋產品版本值。

**支援的平台 – 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` 

**PURL 範例**  
 以下是 的範例套件 URL7-Zip。

```
pkg:generic/7zip/7zip@25.01
```

## Amazon Q Developer 生態系統集合
<a name="w2aac37c27b9"></a>

**支援的應用程式**
+  Amazon Q Developer CLI 
+  Amazon Q VS Code extension 
+  Amazon Q JetBrains plugin 

**主要功能**
+  檢查內嵌`AmazonQ-For-CLI`身分字串的 `q` CLI 二進位檔，並從 AWS 工具使用者代理程式中繼資料中擷取版本。
+  對於 IDE 延伸模組，剖析 `package.json`(VS 程式碼） 和 `META-INF/plugin.xml`(JetBrains) 以擷取版本。

**支援平台**  
 Amazon Inspector SBOM 產生器會跨平台掃描常見安裝路徑中的安裝：

**Linux 和 macOS**
+  `~/.local/bin/q` 
+  `/usr/local/bin/q` 
+  `~/.vscode/extensions/amazonwebservices.amazon-q-vscode-*/` 
+  `<IDE>/plugins/amazon-q/META-INF/plugin.xml` 

**Windows**
+  `%APPDATA%\npm\q.cmd` 
+  `%USERPROFILE%\.vscode\extensions\amazonwebservices.amazon-q-vscode-*\` 
+  `%APPDATA%\JetBrains\<IDE>\plugins\amazon-q\` 

**PURL 範例**  
 以下是 的範例套件 URLAmazon Q Developer。

```
Sample PURL: pkg:generic/amazon/amazon-q@1.19.7?distro=linux
```

## Apache 生態系統集合
<a name="w2aac37c27c11"></a>

 本節提供有關 Apache Cassandra、Apache Struts、 Apache httpd和 Apache tomcat 應用程式的詳細資訊。

### Apache Cassandra
<a name="w2aac37c27c11b5"></a>

**支援的應用程式**
+  Apache Cassandra 

**主要功能**
+  探索`apache-cassandra-<specific.version>.jar`檔案並解壓縮檔案，以從`META-INF/MANIFEST.MF`檔案內的`Implementation-Version`項目擷取版本字串。

**支援平台**  
 Amazon Inspector SBOM 產生器會跨平台掃描常見安裝路徑中的安裝：

**Linux**
+  `/usr/share/cassandra/lib/` 
+  `/opt/cassandra/lib/` 

**macOS**
+  `/opt/homebrew/Cellar/cassandra/` 
+  `/usr/local/Cellar/cassandra/` 

**Windows**
+  `/Program Files/cassandra/lib/` 
+  `/Program Files/apache-cassandra/lib/` 
+  `/Program Files (x86)/cassandra/lib/` 
+  `/Program Files (x86)/apache-cassandra/lib/` 

**範例 `apache-cassandra-<specific.version>.jar/META-INF/MANIFEST.MF` 檔案**  
 以下是 `apache-cassandra-<specific.version>.jar/META-INF/MANIFEST.MF` 檔案內內容的範例。

```
//truncated

Manifest-Version: 1.0
Implementation-Title: Cassandra
Implementation-Version: 4.1.3
Implementation-Vendor: Apache

//truncated
```

**PURL 範例**  
 以下是 `Apache Cassandra` 應用程式的套件 URL 範例。

```
Sample PURL: pkg:generic/apache/cassandra@4.1.3
```

### Apache httpd
<a name="w2aac37c27c11b7"></a>

**支援的應用程式**
+  Apache httpd 

**注意**  
 漏洞評估僅適用於 Apache httpd 2.0 版和更新版本。

**主要功能**
+  剖析 `/include/ap_release.h` 檔案以擷取安裝巨集，其中包含主要識別符字串、次要識別符字串和修補程式識別符字串。

**支援平台**  
 Amazon Inspector SBOM 產生器會跨平台掃描常見安裝路徑中的安裝：

**Unix**
+  `/usr/local/apache2/include/` 

**Windows**
+  `/Apache24/include/` 
+  `/Program Files/Apache24/include/` 
+  `/Program Files (x86)/Apache24/include/` 

**範例 `ap_release.h` 檔案**  
 以下是 `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
```

**PURL 範例**  
 以下是 `Apache httpd` 應用程式的套件 URL 範例。

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

### Apache Struts
<a name="w2aac37c27c11b9"></a>

**支援的應用程式**
+  Apache Struts 

**主要功能**
+  探索`struts2-core-<specific.version>.jar`檔案 （通常部署在應用程式伺服器上的 Web Java 應用程式`WEB-INF/lib/`目錄內），並解壓縮檔案內的`Implementation-Version`項目擷取版本字串`META-INF/MANIFEST.MF`。

**支援平台**  
 Amazon Inspector SBOM Generator 會跨平台掃描常見Java應用程式伺服器路徑中的安裝：

**Linux**
+  `/opt/tomcat/` 
+  `/usr/share/tomcat/` 
+  `/var/lib/tomcat/` 
+  `/usr/local/tomcat/` 
+  `/opt/wildfly/` 
+  `/opt/jboss/` 
+  `/opt/jetty/` 

**Windows**
+  `/Program Files/Apache Software Foundation/` 
+  `/Program Files (x86)/Apache Software Foundation/` 

**範例 `struts2-core-<specific.version>.jar/META-INF/MANIFEST.MF` 檔案**  
 以下是 `struts2-core-<specific.version>.jar/META-INF/MANIFEST.MF` 檔案內內容的範例。

```
//truncated

Manifest-Version: 1.0
Implementation-Title: Struts 2 Core
Implementation-Version: 6.4.0
Implementation-Vendor: Apache Software Foundation

//truncated
```

**PURL 範例**  
 以下是 `Apache Struts` 應用程式的套件 URL 範例。

```
Sample PURL: pkg:generic/apache/struts@6.4.0
```

### Apache tomcat
<a name="w2aac37c27c11c11"></a>

**支援的應用程式**
+  Apache tomcat 

**注意**  
 漏洞評估僅適用於 9.0 版和更新Apache tomcat版本。

**主要功能**
+  解壓縮 `catalina.jar` 檔案以擷取 `META-INF/MANIFEST.MF` 檔案內的安裝巨集，其中包含版本字串。

**支援平台**  
 Amazon Inspector SBOM 產生器會跨平台掃描常見安裝路徑中的安裝：

**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/` 

**範例 `catalina.jar/META-INF/MANIFEST.MF` 檔案**  
 以下是 `catalina.jar/META-INF/MANIFEST.MF` 檔案內內容的範例。

```
//truncated

Implementation-Title: Apache Tomcat
Implementation-Vendor: Apache Software Foundation
Implementation-Version: 10.1.31

//truncated
```

**PURL 範例**  
 以下是 `Apache tomcat` 應用程式的套件 URL 範例。

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

## Atlassian 生態系統集合
<a name="w2aac37c27c13"></a>

 本節提供有關Atlassian伺服器產品和應用程式的詳細資訊。

### Atlassian Server Products
<a name="w2aac37c27c13b5"></a>

**支援的應用程式**
+ Jira Core
+ Confluence

**主要功能**
+  Jira Core – 從 剖析 Maven POM 屬性`atlassian-jira-webapp`以擷取版本資訊。
+  Confluence – 從 剖析 Maven POM 屬性`confluence-webapp`以擷取版本資訊。

**支援平台**  
 Amazon Inspector SBOM 產生器會掃描常見安裝路徑中的安裝：

**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` 

**PURL 範例**  
 以下是Atlassian伺服器產品的套件 URLs範例。

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

// Confluence
pkg:generic/atlassian/confluence@9.2.7?distro=linux
```

### Atlassian Applications
<a name="w2aac37c27c13b7"></a>

**支援的應用程式**
+ Jira Software
+ Jira Service Management

**主要功能**
+  Jira Software – 透過 `jira-software-application` JAR 偵測並從 Maven POM 屬性擷取版本。
+  Jira Service Management – 透過 `jira-servicedesk-application` JAR 偵測並從 Maven POM 屬性擷取版本。

**支援平台**  
 Amazon Inspector SBOM 產生器會掃描常見安裝路徑中的安裝：

**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` 

**PURL 範例**  
 以下是Atlassian應用程式的範例套件 URLs。

```
// 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
```

## Claude Code 生態系統集合
<a name="w2aac37c27c15"></a>

**支援的應用程式**
+  Claude Code CLI (Anthropic) 

**主要功能**
+  Claude Code 以 npm 套件 (`@anthropic-ai/claude-code`) 形式分佈。掃描器會探索 `claude` CLI 二進位檔，並使用標準 npm `<prefix>/bin/<binary>`進行`<prefix>/lib/node_modules/@anthropic-ai/claude-code/package.json`配置，以解決其`package.json`相關問題。
+  版本是從 的 `Version:` 欄位讀取`package.json`。

**支援平台**  
 Amazon Inspector SBOM 產生器會跨平台掃描常見安裝路徑中的安裝：

**Linux 和 macOS**
+  `/usr/bin/claude` 
+  `/usr/local/bin/claude` 
+  `~/.local/bin/claude` 
+  `~/.npm-global/bin/claude` 

**Windows**
+  `%APPDATA%\npm\claude.cmd` 

**PURL 範例**  
 以下是 的範例套件 URLClaude Code。

```
Sample PURL: pkg:generic/anthropic/claude-code@1.0.5?distro=linux
```

## Conda 生態系統集合
<a name="w2aac37c27c17"></a>

**支援的應用程式**
+  Miniconda 環境 
+  Anaconda 環境 
+  Miniforge 環境 
+  Mambaforge 環境 

**主要功能**
+  剖析每個 conda 環境中由 conda和 撰寫mamba的`conda-meta/*.json`套件記錄。
+  擷取每個 [CEP 26](https://github.com/conda/ceps/blob/main/cep-0026.md) 的套件名稱、版本、建置字串、subdir （目標平台） 和封存類型 (`conda` 或 `tar.bz2`)。
+  產生conda套件 URLs。
+  篩選出macOS資源叉檔案 (`._*`)，並略過名稱或版本空白的記錄。

**支援平台**  
 對於 localhost 掃描，Amazon Inspector SBOM Generator 會掃描下列安裝程式預設和每個使用者路徑的 conda-meta 目錄。對於容器、目錄和封存掃描，Amazon Inspector SBOM 產生器會偵測樹狀目錄中的任何位置`conda-meta/*.json`的記錄。

**Linux**
+  `/opt/conda` 
+  `/opt/miniconda3`, `/opt/anaconda3`, `/opt/miniforge3` 
+  `/root/miniconda3`, `/root/anaconda3`, `/root/miniforge3` 
+  `/home/<user>/miniconda3`, `/home/<user>/anaconda3`, `/home/<user>/miniforge3` 
+  `~/.conda/envs/<env>` 

**macOS**
+  `/opt/miniconda3`, `/opt/anaconda3` 
+  `/opt/homebrew/anaconda3`, `/usr/local/anaconda3` 
+  `/opt/homebrew/Caskroom/miniconda/base`, `/opt/homebrew/Caskroom/miniforge/base` 
+  `/Users/<user>/miniconda3`, `/Users/<user>/anaconda3`, `/Users/<user>/miniforge3` 
+  `~/.conda/envs/<env>` 

**Windows**
+  `C:\ProgramData\miniconda3`, `C:\ProgramData\anaconda3`, `C:\ProgramData\miniforge3` 
+  `C:\Users\<user>\miniconda3`, `C:\Users\<user>\anaconda3`, `C:\Users\<user>\miniforge3` 
+  `C:\Users\<user>\.conda\envs\<env>` 

**範例`conda-meta`記錄路徑**  
 以下是conda套件記錄的範例路徑。

```
/opt/miniforge3/conda-meta/numpy-1.24.0-py311h64a7726_0.json
```

**PURL 範例**  
 以下是平台特定套件和`noarch`conda套件的conda套件 URLs 範例。

```
pkg:conda/numpy@1.24.0?build=py311h64a7726_0&subdir=linux-64&type=conda
pkg:conda/flask@3.0.0?build=pyhd8ed1ab_0&subdir=noarch&type=conda
```

## Curl 生態系統集合
<a name="w2aac37c27c19"></a>

 本節提供有關 Curl和 Libcurl 應用程式的詳細資訊。

### Curl
<a name="w2aac37c27c19b5"></a>

**支援的應用程式**
+  Curl 

**支援平台**
+  Unix–Linux 和 macOS 
  +  /usr/local/bin/curl 

**主要功能 – Curl**
+  檢查curl二進位檔以擷取內嵌版本資訊。

**注意**  
 具體而言，它會在二進位可執行檔`.rodata`區段 （適用於 Linux 上的 ELF 二進位檔）、`.rdata`區段 （適用於 Windows 上的 PE 二進位檔） 或 \_\_cstring 區段 （適用於 macOS 上的 MachO 二進位檔） 中搜尋版本字串。

**Curl version string**  
 以下是內嵌在Curl二進位檔中的版本字串範例：

```
curl/8.14.1
```

 從字串`8.14.1`擷取版本以識別`Curl`版本。

**範例 PURL (Curl)**  
 以下是`Curl`版本檔案的範例套件 URL。

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

### Libcurl
<a name="w2aac37c27c19b7"></a>

**支援的應用程式**
+  Libcurl 

**支援平台**
+  Unix–Linux 和 macOS 
  +  /usr/local/bin/curl/curlver.h 

**主要功能 – Libcurl**
+  檢查curlver.h以擷取 的內嵌版本資訊Libcurl。

**注意**  
 具體而言，它會從定義的 `LIBCURL_VERSION_MAJOR`、 `LIBCURL_VERSION_MINOR`和 `LIBCURL_VERSION_PATCH`變數擷取版本。

**Libcurl version string**  
 以下是 `curlver.h` 檔案中版本變數的範例：

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

 從這些行`8.14.1`擷取版本以識別`Libcurl`版本。

**範例 PURL (Libcurl)**  
 以下是`Libcurl`版本檔案的範例套件 URL。

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

## Docker binaries 生態系統集合
<a name="w2aac37c27c21"></a>

**支援的應用程式**
+  docker (docker version 20.10.18\+) 
+  dockerd (docker version 20.10.18\+) 
+  containerd (docker version 20.10.18\+) 
+  runc (docker version 29.0.0\+) 

**注意**  
 漏洞評估僅適用於 25.0.0\+ Docker版。可能會收集舊版Docker二進位檔，但 不再支援這些二進位檔Docker。

**主要功能**
+  檢查Docker靜態二進位檔以擷取版本資訊。

**支援平台**  
 SBOM 產生器會掃描 Docker 靜態二進位安裝文件中建議的安裝路徑中的二進位檔案：

**Linux**
+  `/usr/bin/` 

**macOS**
+  `/usr/local/bin/` 

**Windows**
+  `C:/Program Files/Docker/` 

**PURL 範例**  
 以下是 的範例套件 URLDocker。

```
pkg:generic/docker/docker@29.4.0
pkg:generic/docker/dockerd@29.4.0
pkg:generic/docker/containerd@2.2.2
pkg:generic/docker/runc@1.3.5
```

## Elasticsearch 生態系統集合
<a name="w2aac37c27c23"></a>

**支援的應用程式**
+  Elasticsearch 

**注意**  
 漏洞評估僅適用於 7.17.0 Elasticsearch版。

**主要功能**
+  **Version** – 解壓縮 `elasticsearch-<specific.version>.jar` 檔案以擷取 `META-INF/MANIFEST.MF` 檔案內的安裝巨集，其中包含Elasticsearch版本字串。

**支援平台**
+  **Linux** – `/etc/elasticsearch/lib`、 `/opt/elasticsearch/lib/`和 `/usr/share/elasticsearch/lib/` 
+  **macOS** – `/usr/local/var/lib/elasticsearch/lib/` 
+  **Windows** – `/elasticsearch/`、 `/Program Files (x86)/Elastic/elasticsearch/lib/`和 `/Program Files/Elastic/elasticsearch/lib/` 

**範例 `elasticsearch-<specific.version>.jar/META-INF/MANIFEST.MF` 檔案**  
 以下是 `elasticsearch-<specific.version>.jar/META-INF/MANIFEST.MF` 檔案的範例。

```
//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
```

**PURL 範例**  
 以下是 `elasticsearch-<specific.version>.jar/META-INF/MANIFEST.MF` 檔案的範例套件 URL。

```
pkg:generic/elastic/elasticsearch@8.19.0-SNAPSHOT
```

## Generic AI/ML Models 生態系統集合
<a name="w2aac37c27c25"></a>

**支援的應用程式**
+  跨通用架構和工具在本機存放 AI/ML 模型檔案 

**主要功能**
+  根據副檔名偵測 AI/ML `.onnx`模型檔案：`.gguf`、`.safetensors`、`.pt`、、 `.pth`和 `.h5`。
+  掃描常用 AI/ML 架構和本機推論工具所使用的常見模型目錄。
+  偵測到的檔案會以具有 元件類型的`machine-learning-model`元件產生。

**注意**  
 此收集器偵測到的元件不會產生 PURL。

**支援平台**  
 Amazon Inspector SBOM 產生器會跨平台掃描常見路徑中的模型檔案：

**Linux 和 macOS**
+  `~/.keras/models` 
+  `~/.cache/lm-studio/models` 
+  `~/.local/share/nomic.ai/GPT4All` 
+  `~/.jan/models` 
+  `~/.cache/llama.cpp` 
+  `~/.tabby/models` 
+  `~/.local/share/localai/models` 
+  `~/text-generation-webui/models` 
+  `~/ComfyUI/models` 
+  `~/stable-diffusion-webui/models` 

## GitHub Copilot 生態系統集合
<a name="w2aac37c27c27"></a>

**支援的應用程式**
+  GitHub Copilot CLI 
+  GitHub Copilot VS Code extension 
+  GitHub Copilot JetBrains plugin 

**主要功能**
+  Copilot 跨三個安裝表面偵測：npm 分佈的 CLI （透過 npm 配置`package.json`從二進位路徑解析）、VS Code 延伸模組 (`package.json``github.copilot-<version>`在目錄中剖析；排除單獨的`github.copilot-chat-*`延伸模組） 和 JetBrains 外掛程式 (`META-INF/plugin.xml``<version>`元素的剖析）。

**支援平台**  
 Amazon Inspector SBOM 產生器會跨平台掃描常見安裝路徑中的安裝：

**Linux 和 macOS**
+  `/usr/bin/github-copilot-cli` 
+  `/usr/local/bin/github-copilot-cli` 
+  `~/.local/bin/github-copilot-cli` 
+  `~/.vscode/extensions/github.copilot-*/` 
+  `<IDE>/plugins/github-copilot/META-INF/plugin.xml` 

**Windows**
+  `%APPDATA%\npm\github-copilot-cli.cmd` 
+  `%USERPROFILE%\.vscode\extensions\github.copilot-*\` 
+  `%APPDATA%\JetBrains\<IDE>\plugins\github-copilot\` 

**PURL 範例**  
 以下是 的範例套件 URLGitHub Copilot。

```
Sample PURL: pkg:generic/github/copilot@0.1.36?distro=linux
```

## Google 生態系統集合
<a name="w2aac37c27c29"></a>

**支援的應用程式**
+  Google Chrome 
+  Puppeteer （支援 puppeteer 程式庫；不包含 puppeteer-core) 

**注意**  
 Puppeteer 支援 puppeteer 程式庫。 Puppeteer核心不包含在內。

**支援的成品**  
 Amazon Inspector 會從下列項目收集Google Chrome資訊：
+  `chrome/VERSION` 檔案 （建置來源） 
+  `chrome.exe` 檔案 (Windows Chrome 安裝） 
+  `puppeteer` 檔案 （安裝） 

 對於每個支援的成品， Sbomgen 會剖析和收集chrome檔案或 puppeteer 檔案。對於 puppeteer 安裝，會根據Chromium版本收集對應的puppeteer版本。如需詳細資訊，請參閱 Puppeteer [網站上的支援的瀏覽器](https://pptr.dev/supported-browsers)。

 當`PUPPETEER_SKIP_CHROMIUM_DOWNLOAD`環境變數設定為 時`true`，會略過評估，並將`skip_chromium_download=true`限定詞新增至Puppeteer套件 URL。

**範例`chrome/VERSION`版本檔案**  
 以下是 `chrome/VERSION`版本檔案的範例。

```
MAJOR=130
MINOR=0
BUILD=6723
PATCH=58
```

**PURL 範例**  
 以下是`chrome/VERSION`版本檔案的範例套件 URL。

```
Sample PURL: pkg:generic/google/chrome@131.0.6778.87
```

**範例`puppeteer`版本檔案**  
 以下是 `puppeteer`版本檔案的範例。

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

**PURL 範例**  
 以下是`puppeteer`版本檔案的範例套件 URL。

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

**PURL 範例**  
 以下是具有`puppeteer`版本檔案略過限定詞的套件 URL 範例。

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

## HuggingFace 生態系統集合
<a name="w2aac37c27c31"></a>

**支援的應用程式**
+  HuggingFace `hf` CLI 

**主要功能**
+  擷取由 安裝的本機快取 AI/ML 模型 HuggingFace 
+  產生HuggingFace套件 URLs 
+  `hf download --local-dir` 目前不支援使用 下載的模型 

**路徑範例**  
 以下是快取HuggingFace模型路徑的範例。

```
/home/ec2-user/.cache/huggingface/hub/models--MiniMaxAI--MiniMax-M2.5/snapshots/<hash>
```

**PURL 範例**  
 以下是HuggingFace模型的範例套件 URL。元件類型為 `machine-learning-model`。

```
pkg:huggingface/MiniMaxAI/MiniMax-M2.5@<hash>
```

## Java 生態系統集合
<a name="w2aac37c27c33"></a>

**支援的應用程式**
+  Oracle JDK 
+  Oracle JRE 
+  Amazon Corretto 

**主要功能**
+  擷取 Java 安裝的字串。
+  識別包含Java執行時間的目錄路徑。
+  將廠商識別為 Oracle JDK、 Oracle JRE和 Amazon Corretto。

 Amazon Inspector SBOM 產生器會掃描下列Java安裝路徑和平台中的安裝：
+  macOS: `/Library/Java/JavaVirtualMachines` 
+  Linux 32-bit: `/usr/lib/jvm` 
+  Linux 64-bit: `/usr/lib64/jvm` 
+  Linux (generic): `/usr/java and /opt/java` 

**範例Java版本資訊**  
 以下是 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"
```

**PURL 範例**  
 以下是 Oracle Java版本的套件 URL 範例。

```
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
```

## Jenkins 生態系統集合
<a name="w2aac37c27c35"></a>

**支援的應用程式**
+  Jenkins 核心 

**注意**  
 漏洞評估適用於 2.400.\* 版及更新Jenkins版本。

**主要功能**
+  `jenkins.war` 透過讀取包含版本字串的檔案，從 `META-INF/MANIFEST.M` 檔案擷取Jenkins版本資訊。

 Amazon Inspector SBOM 產生器會在跨平台的常見安裝路徑中尋找 Jenkins 安裝：

**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` 

**範例檔案**  
 以下是不同版本`jenkins.war/META-INF/MANIFEST.MF`的檔案範例。

```
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
```

**PURLs範例**  
 以下是 Jenkins LTS 版本 2.516.2 版和Jenkins自動化伺服器版本 2.414 版的套件 URLs。

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

## Kiro CLI 生態系統集合
<a name="w2aac37c27c37"></a>

**支援的應用程式**
+  Kiro CLI (Amazon AI 編碼助理） 

**主要功能**
+  檢查二進位 `kiro-cli` （或 `kiro-cli.appimage`) 以擷取內嵌版本資訊。
+  在二進位可執行檔`.rodata`區段 （適用於 上的 ELF 二進位檔Linux) 或`__cstring`區段 （適用於 上的 Mach-O 二進位檔） 中尋找版本字串macOS。版本 擷取自 AWS 工具使用者代理程式字串模式 `Version<X.Y.Z>/`。

**支援平台**  
 Amazon Inspector SBOM 產生器會跨平台掃描常見安裝路徑中的安裝：

**Linux**
+  `~/.local/bin/kiro-cli` 
+  `/usr/bin/kiro-cli` 
+  `~/Applications/kiro-cli.appimage` 

**macOS**
+  `/Applications/Kiro CLI.app/Contents/MacOS/kiro-cli` 
+  `~/.local/bin/kiro-cli` 

**PURL 範例**  
 以下是 的範例套件 URLKiro CLI。

```
Sample PURL: pkg:generic/amazon/kiro@1.29.5?distro=linux
```

## MariaDB 和 MySQL 生態系統集合
<a name="w2aac37c27c39"></a>

### MariaDB
<a name="w2aac37c27c39b3"></a>

**支援的應用程式**
+  MariaDB Server (10.6\+、11.x、12.x) 

**主要功能**
+  使用資料庫特定模式，從資料庫伺服器二進位檔和標頭檔案擷取版本資訊。
+  識別包含資料庫伺服器安裝的目錄路徑。
+  使用資料驅動型檔案類型偵測自動區分 MariaDB和 MySQL 安裝。

 SBOM 產生器會在跨平台的常見MariaDB安裝路徑中尋找安裝：

**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)` 

**PURL 範例**  
以下是MariaDB伺服器的範例套件 URL。

```
# MariaDB Server

pkg:generic/mysql/mariadb-server@10.11.8
```

### MySQL 生態系統集合
<a name="w2aac37c27c39b5"></a>

**支援的應用程式**
+  Oracle MySQL Server Server (8.0、8.4、9.4\+) 

**主要功能**
+  使用資料庫特定模式，從資料庫伺服器二進位檔和標頭檔案擷取版本資訊。
+  識別包含資料庫伺服器安裝的目錄路徑。
+  使用資料驅動型檔案類型偵測自動區分 MySQL和 MariaDB 安裝。

 SBOM 產生器會在跨平台的常見MySQL安裝路徑中尋找安裝：

**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)` 

**PURL 範例**  
以下是MySQL伺服器的範例套件 URL。

```
# Oracle MySQL Server

pkg:generic/mysql/mysql-server@8.0.43
```

## Microsoft applications 生態系統集合
<a name="microsoft-app-ecosystem-collection"></a>

 Amazon Inspector SBOM 產生器會清查下列 Microsoft 應用程式。由於 Microsoft CVRF API 的限制，InspectorScan API 中的偵測僅支援 2021 年 （或更新版本） 發行的這些應用程式版本。調查結果將映射至 Microsoft KBs或 CVEs（如適用）。

**支援的 Microsoft 應用程式 (2021\+)**
+ PowerShell
+ NuGet CLI
+ Visual Studio Code
+ Microsoft Edge
+ SharePoint Server
+ Microsoft Defender
+ Exchange Server
+ Visual Studio
+ .NET Core Runtime
+ .NET Framework
+ ASP.NET Core Runtime
+ Microsoft Teams
+ Outlook for Windows
+ Microsoft Office
+ Microsoft 365

**主要功能**
+  PowerShell – 檢查 `pwsh.exe` 檔案以擷取內嵌版本資訊。
+  NuGet CLI – 檢查 `nuget.exe` 檔案以擷取內嵌版本資訊。
+  Visual Studio Code – 檢查 `Code.exe` 檔案以擷取內嵌版本資訊。
+  Microsoft Edge – 檢查 `msedge.exe` 檔案以擷取內嵌版本資訊。
+  SharePoint Server – 檢查 `Microsoft.SharePoint.dll` 檔案以擷取內嵌版本資訊。
+  Microsoft Defender – 檢查 `MsMpEng.exe` 檔案以擷取內嵌版本資訊。
+  Exchange Server – 檢查 `Exsetup.exe` 檔案以擷取內嵌版本資訊。
+  Visual Studio – 剖析 `state.json` 檔案以從 `catalogInfo.productDisplayVersion` 欄位擷取版本字串。
+ .NET Core Runtime – 搜尋安裝路徑中的`Microsoft.NETCore.App.deps.json`檔案，並從下列檔案路徑模式擷取版本字串。

  ```
  Microsoft.NETCore.App/<VERSION>/Microsoft.NETCore.App.deps.json
  ```
+ .NET Framework – 剖析 Windows 登錄檔並讀取檔案中繼資料，以偵測已安裝的 .NET Framework 版本。掃描器會檢查下列登錄機碼和值，以及 檔案。
  + **Registry Key** (<VERSION\_SUB\_KEY> 代表 .NET Framework 版本，例如 v2.0.50727、 v3.5或 v4\\Full)

    ```
    HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\<VERSION_SUB_KEY>
    ```

    ```
    HKLM\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\<VERSION_SUB_KEY>
    ```
  + **Registry Value**
    + Install – 指出是否已安裝 .NET Framework 版本。
    + Version – 安裝的 .NET Framework 版本 (4.0 版或更低版本）
    + Release – 對應至已安裝 .NET Framework 版本 (4.5 版或更新版本） REG\_DWORD的值
  + **DLL Files**

    掃描器會從 `mscorlib.dll`和 擷取檔案版本`System.dll`。如果這些檔案存在，它們會以巢狀檔案元件的形式新增至 SBOM。對於 .NET Framework 4.5 版或更新版本，檔案間最大的檔案版本會報告為 版本。
+ ASP.NET Core Runtime – 搜尋安裝路徑中的`Microsoft.AspNetCore.App.deps.json`檔案，並從下列檔案路徑模式擷取版本字串。

  ```
  Microsoft.AspNetCore.App/<VERSION>/Microsoft.AspNetCore.App.deps.json
  ```
+ Outlook for Windows – 剖析 Windows 登錄檔，並從下列登錄檔金鑰擷取版本。

  ```
  HKLM\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppModel\PackageRepository\Packages\Microsoft.OutlookForWindows_<VERSION>_<ARCH>__8wekyb3d8bbwe
  ```
+ Microsoft Teams – 剖析 Windows 登錄檔，並從下列登錄檔金鑰擷取版本。

  ```
  HKLM\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppModel\PackageRepository\Packages\MSTeams_<VERSION>_<ARCH>__8wekyb3d8bbwee
  ```
+ Microsoft Office 365 / Microsoft 365 – 剖析 Windows 登錄檔，並從下列登錄機碼和值擷取版本。
  + 登錄機碼

    ```
    HKLM\SOFTWARE\Microsoft\Office\ClickToRun\Configuration
    ```
  + 登錄值
    + VersionToReport – Microsoft Office 版本
    + ProductReleaseIds – 產品 IDs清單。這用於識別已安裝的 Office 產品。如需產品 IDs的詳細資訊，請參閱 [https://learn.microsoft.com/en-us/troubleshoot/microsoft-365-apps/office-suite-issues/product-ids-supported-office-deployment-click-to-run](https://learn.microsoft.com/en-us/troubleshoot/microsoft-365-apps/office-suite-issues/product-ids-supported-office-deployment-click-to-run) Microsoft網站上的 。
+ Microsoft Office Suite – 透過檢查下列可執行檔來收集已安裝的每個 Office 應用程式：
  + `EXCEL.EXE` – Microsoft Excel
  + `WINWORD.EXE` – Microsoft Word
  + `POWERPNT.EXE` – Microsoft PowerPoint
  + `OUTLOOK.EXE` – Microsoft Outlook

   Windows 登錄檔中的版本編號會用作每個已安裝 Office 應用程式的授權版本編號。

**範例 `state.json` 檔案**  
 以下是用來收集已安裝Visual Studio版本`state.json`的檔案範例。

```
{
    "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
```

PURL 範例

 以下是每個 的範例套件 URLMicrosoft 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 Core Runtime
Sample PURL: pkg:generic/microsoft/dotnet@8.0.18

// .NET Framework
Sample PURL: pkg:generic/microsoft/dotnet-framework-v4.8.1@4.8.9320.0

// 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
```

## Microsoft SQL Server 生態系統集合
<a name="w2aac37c27c43"></a>

**支援的應用程式**
+  Microsoft SQL Server 

**主要功能**
+  從Windows登錄檔讀取，以探索已安裝的Microsoft SQL Server執行個體並擷取版本資訊。
+  透過兩步驟程序探索執行個體：讀取`InstalledInstances`值、從`Instance Names\SQL`子索引鍵解析每個執行個體路徑，然後從每個執行個體的`Setup`子索引鍵讀取設定資訊。
+  收集執行個體名稱、基本版本、修補程式層級、版本、Service Pack （如果有） 和登錄機碼路徑。
+  元件版本和 PURL 使用修補程式層級 （完整建置編號）。

**支援的平台 – Windows**  
 Amazon Inspector SBOM 產生器會從下列Windows登錄機碼讀取，以探索已安裝的執行個體：

```
HKLM\SOFTWARE\Microsoft\Microsoft SQL Server
```

 掃描器會讀取 `InstalledInstances`值以列舉執行個體、從`Instance Names\SQL`子索引鍵解析每個執行個體路徑，然後從每個執行個體的`Setup`子索引鍵讀取設定資訊。

**PURL 範例**  
 以下是Microsoft SQL Server執行個體的範例套件 URL。

```
pkg:generic/microsoft/sqlserver@16.0.1000.6
```

## MongoDB 生態系統集合
<a name="w2aac37c27c45"></a>

**支援的應用程式**
+  MongoDB Server (7.0\+、8.0\+) 

**主要功能**
+  檢查mongod二進位檔以擷取內嵌版本資訊。

**注意**  
 mongod 二進位大小可以超過 200 MB。若要掃描 MongoDB，必須將 Amazon Inspector SBOM 產生器檔案大小限制設定為允許超過 200 MB 的檔案。

 Amazon Inspector SBOM 產生器會在跨平台的常見MongoDB安裝路徑中尋找安裝：

**Linux**
+  `/usr/bin/mongod` 
+  `/usr/local/bin/mongod` 

**macOS**
+  `/usr/local/bin/mongod` 
+  `/opt/homebrew/bin/mongod` 

**Windows**
+  `C:\Program Files\MongoDB\Server\bin\mongod.exe` 

**PURL 範例**  
 以下是 的範例套件 URLMongoDB Server。

```
pkg:generic/mongodb/mongodb-server@8.2.4?platform=linux
```

## Nginx 生態系統集合
<a name="w2aac37c27c47"></a>

**支援的應用程式**
+  Nginx 

**支援平台**  
 以下是支援的平台。

**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 是任意版本） 

**macOS**
+  /usr/local/etc/nginx/nginx 

**主要功能**  
 此集合會檢查二進位檔以擷取內嵌版本資訊。它會在二進位可執行檔`.rodata`區段 （適用於 上的 ELF 二進位檔Linux)、`.rdata`區段 （適用於 上的 PE 二進位檔Windows) 或`__ctring`區段 MachO （適用於二進位檔） 中搜尋版本字串。

**範例版本字串**  
 以下是內嵌在 Nginx 二進位檔中的版本字串範例。

```
nginx version: nginx/1.27.5
```

 `1.27.5` 解壓縮版本以識別Nginx版本。

**PURL 範例**  
 以下是 Nginx 的範例套件 URL。

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

## Node.JS 執行時間集合
<a name="w2aac37c27c49"></a>

**支援的應用程式**
+  的 節點執行時間二進位檔 Node.JS 

**支援平台**  
 以下是支援的平台。(\* 是任意版本） 

**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 
+  \~\\AppData\\Roaming\\fnm\\node-versions\\\*\\installation\\node.exe 

**macOS**
+  /opt/homebrew/Cellar/node/\*/bin/node 

**主要功能**  
 此集合會檢查二進位檔以擷取內嵌版本資訊。它會在二進位可執行檔`.rodata`區段 （適用於 上的 ELF 二進位檔Linux)、`.rdata`區段 （適用於 上的 PE 二進位檔Windows) 或`__ctring`區段 MachO （適用於二進位檔） 中搜尋版本字串。

**範例版本字串**  
 以下是內嵌在Node.JS執行時間二進位檔中的版本字串範例。

```
node.js/v24.11.1
```

 `24.11.1` 解壓縮版本以識別Node.JS執行時間版本。

**PURL 範例**  
 以下是 的範例套件 URLNode.JS。

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

## Ollama 生態系統集合
<a name="w2aac37c27c51"></a>

**支援的應用程式**
+  Ollama （本機 LLM 執行時間） 

**主要功能**
+  檢查二進位 `ollama` （或在 `ollama.exe`上Windows) 以擷取內嵌版本資訊。
+  Ollama 是Go二進位檔，其版本會在建置時透過 注入`-ldflags -X`，並在二進位的資料區段中顯示為波狀字首字串 （例如 `~0.21.0`)。在 Homebrew建置macOS的二進位檔上，版本可能會以 的形式出現在Go模組建置資訊中`ollama\tv<version>`。

**支援平台**  
 Amazon Inspector SBOM 產生器會跨平台掃描常見安裝路徑中的安裝：

**Linux**
+  `/usr/local/bin/ollama` 
+  `/usr/bin/ollama` 
+  `~/.local/bin/ollama` 

**macOS**
+  `/Applications/Ollama.app/Contents/MacOS/ollama` 
+  `/usr/local/bin/ollama` 
+  `/opt/homebrew/bin/ollama` 

**Windows**
+  `%LOCALAPPDATA%\Programs\Ollama\ollama.exe` 
+  `%ProgramFiles%\Ollama\ollama.exe` 

**範例版本字串**  
 以下是內嵌在 Ollama 二進位檔中的版本字串範例。

```
~0.21.0
```

 `0.21.0` 解壓縮版本以識別Ollama版本。

**PURL 範例**  
 以下是 的範例套件 URLOllama。

```
Sample PURL: pkg:generic/ollama/ollama@0.21.0?distro=linux
```

## Ollama Model Collector 生態系統集合
<a name="w2aac37c27c53"></a>

**支援的應用程式**
+  Ollama CLI 

**主要功能**
+  擷取由 安裝的本機快取 AI/ML 模型 Ollama 
+  產生Ollama套件 URLs 

**路徑範例**  
 以下是快取Ollama模型路徑的範例。

```
/usr/share/ollama/.ollama/models/manifests/registry.ollama.ai/library/gemma4/latest
```

**PURL 範例**  
 以下是 Ollama模型的範例套件 URL。元件類型為 `machine-learning-model`。

```
pkg:ollama/gemma4@<hash>
```

## OpenSSH 生態系統集合
<a name="w2aac37c27c55"></a>

**支援的應用程式**
+  OpenSSH （第 9 版） 
+  OpenSSH （第 10 版） 

**支援的平台 Linux/macOS**
+  `/usr/sbin/sshd` 
+  `/usr/local/sbin/sshd` 

**支援的平台 Windows**
+  `C:/Windows/System32/OpenSSH/sshd.exe` 
+  `C:/Program Files/OpenSSH/sshd.exe` 
+  `C:/Program Files (x86)/OpenSSH/sshd.exe` 
+  `C:/OpenSSH/sshd.exe` 

**主要功能**
+  檢查`sshd`二進位檔以擷取內嵌版本資訊。
+  在二進位可執行檔`.rodata`區段 （適用於 上的 ELF 二進位檔Linux、`__cstring`區段 （適用於 上的 Mach-O 二進位檔MacOs) 或`.rdata`區段 （適用於 上的 PE 二進位檔） 中尋找版本字串Windows。

**範例版本字串**  
 以下是內嵌在 OpenSSH 二進位檔中的版本字串範例。

```
OpenSSH_9.9p2
```

 `9.9p2` 解壓縮版本以識別OpenSSH版本。

**PURL 範例**  
 以下是 的範例套件 URLOpenSSH。

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

## OpenSSL 生態系統集合
<a name="w2aac37c27c57"></a>

**支援的應用程式**  
 對 OpenSSL 程式庫和開發套件的支援僅限於使用適用於 3.0.0 及更高版本之官方 OpenSSL 建置的軟體。軟體也必須遵循語意版本控制。不支援自訂或分叉的 OpenSSL 變體和低於 3.0.0 的版本。

 Amazon Inspector SBOM 產生器會擷取每個已安裝 OpenSSL 執行個體的金鑰套件資訊。

**主要功能**
+  從 OpenSSL 標頭檔案擷取基本 SEMVER 版本字串 
+  識別包含 OpenSSL 安裝的目錄路徑 

 Amazon Inspector SBOM 產生器會在跨平台的常見安裝路徑中掃描 `opensslv.h` 檔案，以尋找 OpenSSL 安裝。

**Linux/Unix 的範例安裝路徑**  
 以下是 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 產生器會剖析`opensslv.h`檔案並尋找版本定義，以擷取版本資訊。

```
# define OPENSSL_VERSION_MAJOR  3
# define OPENSSL_VERSION_MINOR  4
# define OPENSSL_VERSION_PATCH  0
```

**PURL 範例**  
 以下是 OpenSSL 版本的範例套件 URL。

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

## Oracle 資料庫伺服器集合
<a name="w2aac37c27c59"></a>

**支援的應用程式**
+  Oracle Database 

**支援的平台 Linux**
+  `/opt/oracle` 
+  `/u01/app/oracle` 

**注意**  
 漏洞評估僅適用於 Oracle Database Server 第 19 版及更新版本。

**主要功能**
+  檢查Oracle二進位檔以擷取內嵌版本資訊。
+  在二進位可執行檔`.rodata`區段中尋找版本字串 （適用於 上的 ELF 二進位檔Linux)。
+  版本資訊遵循包含 RDBMS 版本字串的特定格式。

**範例版本字串**  
 以下是內嵌在 Oracle Database 二進位檔中的版本字串範例：

```
RDBMS_23.7.0.25.01DBRU_LINUX.X64_240304
```

 `23.7.0.25.01` 解壓縮版本以識別Oracle Database版本。

**PURL 範例**  
 以下是 的範例套件 URLOracle Database。

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

## PHP 生態系統集合
<a name="w2aac37c27c61"></a>

**支援的應用程式**
+  PHP (8.1 版及更新版本） 

**主要功能**
+  使用內嵌版本字串從PHP二進位可執行檔擷取版本資訊。
+  識別包含PHP二進位的目錄路徑。
+  自動偵測標準PHP二進位檔和版本控制的安裝，例如 `php8.1`、 `php8.2`和 `php8.3`。

 Amazon Inspector SBOM 產生器會在跨平台的常見PHP安裝路徑中尋找安裝：

**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` （版本的二進位檔） 

**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` （版本目錄） 

**範例PHP版本擷取**  
 Amazon Inspector SBOM 產生器會使用下列模式搜尋內嵌版本字串，從PHP二進位檔擷取版本資訊。

```
X-Powered-By: PHP/8.4.12
```

 `8.4.12` 會從此模式擷取，以識別PHP版本。

**PURL 範例**  
 以下是PHP模式的範例套件 URL。

```
pkg:generic/php/php@8.4.12
```

## Redis 生態系統集合
<a name="w2aac37c27c63"></a>

**支援的應用程式**
+  Redis (7.2 版及更新版本） 

**主要功能**
+  使用內嵌版本字串從Redis`redis-server`二進位可執行檔擷取版本資訊。
+  在二進位可執行檔`.rodata`區段 （適用於 上的 ELF 二進位檔Linux) 或`__cstring`區段 （適用於 上的 Mach-O 二進位檔） 中搜尋版本字串macOS。

 Amazon Inspector SBOM 產生器會在跨平台的常見Redis安裝路徑中尋找安裝：

**Linux**
+  `/usr/bin/redis-server` 
+  `/usr/local/bin/redis-server` 

**macOS**
+  `/opt/homebrew/bin/redis-server` 
+  `/usr/local/bin/redis-server` 

**範例版本字串**  
 以下是內嵌在Redis二進位檔中的版本字串範例。

```
redis-7.2.6
```

 `7.2.6` 解壓縮版本以識別Redis版本。

**PURL 範例**  
 以下是 的範例套件 URLRedis。

```
pkg:generic/redis/redis@7.2.6
```

## WordPress 生態系統集合
<a name="w2aac37c27c65"></a>

**支援的元件**
+  WordPress 核心 
+  WordPress 外掛程式 
+  WordPress 佈景主題 

**主要功能**
+  WordPress 核心 – 剖析 `/wp-includes/version.php` 檔案以從 $wp\_version 變數擷取版本值。
+  WordPress 外掛程式 – 剖析`/wp-content/plugins/<WordPress Plugin>/readme.txt`檔案`/wp-content/plugins/<WordPress Plugin>/readme.md`，將`Stable`標籤擷取為版本字串。
+  WordPress 佈景主題 – 剖析 `/wp-content/themes/<WordPress Theme>/style.css` 檔案，以從版本中繼資料中擷取版本。

**範例 `version.php` 檔案**  
 以下是WordPress核心`version.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
```

**PURL 範例**  
 以下是 WordPress核心的範例套件 URL。

```
Sample PURL: pkg:generic/wordpress/core/wordpress@6.5.5
```

**範例 `readme.txt` 檔案**  
 以下是WordPress外掛程式`readme.txt`檔案的範例。

```
=== 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
```

**PURL 範例**  
 以下是WordPress外掛程式的範例套件 URL。

```
Sample PURL: pkg:generic/wordpress/plugin/exclusive-addons-for-elementor@1.0.0
```

**範例 `style.css` 檔案**  
 以下是WordPress佈景主題`style.css`檔案的範例。

```
/*
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
*/
```

**PURL 範例**  
 以下是WordPress主題的範例套件 URL。

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