

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon Inspector SBOM Generator
<a name="sbom-generator"></a>

 ソフトウェア部品表 (SBOM) は、ソフトウェアの構築に必要な[コンポーネント、ライブラリ、モジュールの正式に構造化されたリスト](https://docs.aws.amazon.com/whitepapers/latest/practicing-continuous-integration-continuous-delivery/software-bill-of-materials-sbom.html)です。Amazon Inspector SBOM Generator (Sbomgen) は、アーカイブ、コンテナイメージ、ディレクトリ、ローカルシステム、コンパイル済み Go および Rust バイナリ用の SBOM を生成するツールです。Sbomgen は、インストールされたパッケージに関する情報を含むファイルをスキャンします。Sbomgen は、関連ファイルを見つけると、パッケージ名、バージョン、およびその他のメタデータを抽出します。その後、Sbomgen はパッケージメタデータを CycloneDX SBOM に変換します。Sbomgen を使用して CycloneDX SBOM をファイルとして生成または STDOUT で生成したり、脆弱性検出のために SBOM を Amazon Inspector に送信したりできます。また、デプロイパイプラインの一部としてコンテナイメージを自動的にスキャンする [CI/CD 統合](https://docs.aws.amazon.com/inspector/latest/user/scanning-cicd.html)の一部として、Sbomgen を使用できます。

 Amazon Inspector は、複数のマネージドスキャン機能Sbomgenに を使用します。Amazon Inspector が Amazon EBS ボリューム分析を通じて Amazon [ECR コンテナイメージスキャン](https://docs.aws.amazon.com/inspector/latest/user/scanning-ecr.html)、[AWS Lambda 関数スキャン](https://docs.aws.amazon.com/inspector/latest/user/scanning-lambda.html)、および Amazon Elastic Compute Cloud インスタンスの[エージェントレススキャン](https://docs.aws.amazon.com/inspector/latest/user/scanning-ec2.html#agentless)を実行すると、Sbomgenバックグラウンドで を呼び出して脆弱性評価に使用されるソフトウェアインベントリを生成します。このページで説明されているスタンドアロンSbomgenツールは、基盤となるのと同じテクノロジーを提供するため、SBOM 生成をワークフローに直接統合できます。

## サポートされているパッケージタイプ
<a name="sbomgen-supported"></a>

 Sbomgen は、次のパッケージタイプのインベントリを収集します。
+  Alpine APK 
+  Debian/Ubuntu DPKG 
+  Red Hat RPM 
+  C\# 
+  Go 
+  Java 
+  Node.js 
+  PHP 
+  Python 
+  Ruby 
+  Rust 

## サポートされているコンテナイメージ設定チェック
<a name="sbomgen-supported-configuration"></a>

 Sbomgen は、スタンドアロンの Dockerfile をスキャンし、既存のイメージからセキュリティ上の問題がないか履歴を構築できます。詳細については、「[Amazon Inspector Dockerfile チェック](https://docs.aws.amazon.com/inspector/latest/user/dockerfile-checks.html)」を参照してください。

## Sbomgen のインストール
<a name="install-sbomgen"></a>

 Sbomgen は、Linux オペレーティングシステムでのみ利用できます。

 Sbomgen でローカルにキャッシュされたイメージを分析する場合は、Docker がインストールされている必要があります。リモートコンテナレジストリでホストされる `.tar` ファイルまたはイメージとしてエクスポートされたイメージを分析するために、Docker は必要はありません。

 Amazon Inspector では、少なくとも次のハードウェア仕様のシステムから Sbomgen を実行することをお勧めします。
+ 4x Core CPU
+ 8 GB RAM

**Sbomgen をインストールするには**

1.  使用しているアーキテクチャの正しい URL から最新の Sbomgen zip ファイルをダウンロードします。

    Linux AMD64: [https://amazon-inspector-sbomgen.s3.amazonaws.com/latest/linux/amd64/inspector-sbomgen.zip](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](https://amazon-inspector-sbomgen.s3.amazonaws.com/latest/linux/arm64/inspector-sbomgen.zip) 

    または、[以前のバージョンの Amazon Inspector SBOM Generator の zip ファイル](https://docs.aws.amazon.com/inspector/latest/user/sbom-generator-versions.html)をダウンロードすることもできます。

1.  次のコマンドを使用して、ダウンロードした zip ファイルを解凍します。

    `unzip inspector-sbomgen.zip` 

1.  抽出されたディレクトリで次のファイルを確認します。
   +  `inspector-sbomgen` – SBOM を生成するために実行するツールです。
   +  `README.txt` — Sbomgen の使用に関するドキュメントです。
   +  `LICENSE.txt` — このファイルには、Sbomgen のソフトウェアライセンスが含まれています。
   +  `licenses` — このフォルダには、Sbomgen が使用するサードパーティパッケージのライセンス情報が含まれています。
   +  `checksums.txt` – このファイルは Sbomgen ツールのハッシュを提供します。
   +  `sbom.json` – Sbomgen ツールの CycloneDX SBOM です。
   +  `WhatsNew.txt` – このファイルには、要約された変更ログが含まれているため、Sbomgen バージョン間の大きな変更や改善点をすばやく確認できます。

1.  (オプション) 以下のコマンドを使用して、ツールの信頼性と整合性を検証します。

    `sha256sum < inspector-sbomgen` 

   1.  結果を `checksums.txt` ファイルの内容と比較します。

1.  以下のコマンドを使用して、ツールに実行権限を付与します。

    `chmod +x inspector-sbomgen` 

1.  以下のコマンドを実行して、Sbomgen が正常にインストールされたことを確認します。

    `./inspector-sbomgen --version` 

    次のような出力が表示されます。

    `Version: 1.X.X ` 

## Sbomgenの使用
<a name="using-sbomgen"></a>

 このセクションでは、Sbomgen を使用するさまざまな方法を示します。Sbomgen の使用方法の詳細については、組み込みの例を参照してください。これらの例を表示するには、`list-examples` コマンドを実行します。

```
./inspector-sbomgen list-examples
```

### コンテナイメージの SBOM の生成と結果の出力
<a name="w2aac37c13b7"></a>

 コンテナイメージの SBOM を生成し、結果をファイルに出力するには、Sbomgen を使用できます。この機能は、`container` サブコマンドを使用して有効にできます。

**コマンドの例**  
 次のスニペットでは、{{`image:tag`}} をイメージの ID に、{{`output_path.json`}} を保存する出力へのパスに置き換えることができます。

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

**注記**  
 スキャン時間とパフォーマンスは、イメージサイズと、レイヤーの数の少なさによって異なります。イメージを小さくすると、Sbomgen のパフォーマンスが向上するだけでなく、潜在的なアタックサーフェスも減少します。イメージを小さくすると、イメージの構築、ダウンロード、アップロードの時間も短縮されます。

 Sbomgen で を使用する場合[https://docs.aws.amazon.com/inspector/v2/APIReference/API_scan_ScanSbom.html](https://docs.aws.amazon.com/inspector/v2/APIReference/API_scan_ScanSbom.html)、Amazon Inspector スキャン API は 5,000 個を超えるパッケージを含む SBOMs を処理しません。このシナリオでは、Amazon Inspector スキャン API は HTTP 400 レスポンスを返します。

 イメージにバルクメディアファイルまたはディレクトリが含まれている場合は、`--skip-files` 引数を使用して Sbomgen からそれらを除外することを検討してください。

**例: 一般的なエラーケース**  
 コンテナイメージのスキャンは、次のエラーが原因で失敗することがあります。
+  `InvalidImageFormat` – 破損した TAR ヘッダー、マニフェストファイル、または設定ファイルを含む不正形式のコンテナイメージをスキャンした場合に発生します。
+  `ImageValidationFailure` – Content-Length ヘッダーの不一致、不正なマニフェストダイジェスト、SHA256 checksum 検証の失敗など、コンテナイメージコンポーネントの checksum または content-length の検証が失敗した場合に発生します。
+  `ErrUnsupportedMediaType` – イメージコンポーネントにサポートされていないメディアタイプが含まれている場合に発生します。サポートされているメディアタイプについては、「[サポートされているオペレーティングシステムとメディアタイプ](https://docs.aws.amazon.com/inspector/latest/user/scanning-ecr.html#ecr-supported-media)」を参照してください。

 Amazon Inspector は `application/vnd.docker.distribution.manifest.list.v2+json` メディアタイプをサポートしていません。ただし、Amazon Inspector はマニフェストリストをサポートしています。マニフェストリストを使用するイメージをスキャンする場合、 `--platform` 引数で使用するプラットフォームを明示的に指定できます。`--platform` 引数を指定しない場合、Amazon Inspector SBOM Generator は実行中のプラットフォームに基づいてマニフェストを自動的に選択します。

### ディレクトリとアーカイブからの SBOM の生成
<a name="w2aac37c13b9"></a>

 Sbomgen を使用して、ディレクトリとアーカイブから SBOM を生成できます。この機能は、`directory` または `archive` サブコマンドを使用して有効にできます。Amazon Inspector では、ダウンロードした git リポジトリなどのプロジェクトフォルダから SBOM を生成するときに、この機能を使用することをお勧めしています。

**コマンドの例 1**  
 次のスニペットは、ディレクトリファイルから SBOM を生成するサブコマンドを示しています。

```
# generate SBOM from directory
./inspector-sbomgen directory --path /path/to/dir -o /tmp/sbom.json
```

**コマンドの例 2**  
 次のスニペットは、アーカイブファイルから SBOM を生成するサブコマンドを示しています。現在サポートされているアーカイブ形式は `.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
```

### Go または Rust のコンパイル済みバイナリからの SBOM の生成
<a name="w2aac37c13c11"></a>

 Sbomgen を使用して、コンパイル済み Go および Rust バイナリから SBOM を生成できます。この機能は、`binary` サブコマンドを使用して有効にできます。

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

### マウントされたボリュームから SBOM を生成する
<a name="w2aac37c13c13"></a>

 Amazon Inspector SBOM Generator を使用して、マウントされたボリュームから SBOM を生成できます。この機能は、`volume` サブコマンドを使用して有効にできます。システムにマウントされている Amazon EBS ボリュームなどのストレージボリュームを分析する場合は、この機能を使用することを推奨します。ディレクトリのサブコマンドとは異なり、マウントされたボリュームスキャンは OS パッケージと OS 情報を検出します。

 Amazon EBS ボリュームをスキャンするには、Amazon Inspector SBOM Generator がインストールされている Amazon EC2 インスタンスにアタッチし、そのインスタンスにマウントします。他の Amazon EC2 インスタンスで現在使用されている Amazon EBS ボリュームの場合、ボリュームの Amazon EBS スナップショットを作成し、そのスナップショットから新しい Amazon EBS ボリュームをスキャン目的で作成できます。Amazon EBS の詳細については、「*Amazon Elastic Block Store ユーザーガイド*」の「[Amazon EBS とは？](https://docs.aws.amazon.com/ebs/latest/userguide/what-is-ebs.html)」を参照してください。

**コマンドの例**  
 次のスニペットは、マウントされたボリュームから SBOM を生成するサブコマンドを示しています。`--path` 引数は、ボリュームがマウントされているルートディレクトリを指定する必要があります。

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

**コマンドの例**  
 次のスニペットは、 `--exclude-suffix` 引数を持つ特定のファイルパスを除外しながら、マウントされたボリュームから SBOM を生成するサブコマンドを示しています。`--exclude-suffix` 引数は、ボリュームにバルクファイル (ログファイルやメディアファイルなど) が含まれている場合に特に便利です。パスが指定されたサフィックスで終わるファイルとディレクトリはスキャンから除外されるため、スキャンにかかる時間とメモリ使用量を抑えることができます。

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

 ターゲットボリューム内のすべてのファイルパスは、元のパスに正規化されます。例えば、`/mnt/volume` にマウントされたボリュームをスキャンし、その中に `/mnt/volume/var/lib/rpm/rpmdb.sqlite` のファイルが含まれる場合、生成される SBOM ではパスは `/var/lib/rpm/rpmdb.sqlite` に正規化されます。

### 脆弱性特定のための SBOM の Amazon Inspector への送信
<a name="w2aac37c13c15"></a>

 SBOM の生成に加えて、Amazon Inspector スキャン API から 1 つのコマンドを使用してスキャンのために SBOM を送信できます。Amazon Inspector は、検出結果を Sbomgen に返す前に、SBOM の内容を評価して脆弱性がないかを確認します。入力に応じて、検出結果を表示またはファイルに書き込むことができます。

**注記**  
 この機能`InspectorScan-ScanSbom`を使用するには、 への読み取りアクセス許可 AWS アカウント を持つアクティブな が必要です。

 この機能を有効にするには、`--scan-sbom` 引数を Sbomgen CLI に渡します。`--scan-sbom` 引数は、`archive`、`binary`、`container`、`directory`、`localhost` のいずれかの Sbomgen サブコマンドに渡すこともできます。

**注記**  
 Amazon Inspector スキャン API は、5,000 個を超えるパッケージを含む SBOMs を処理しません。このシナリオでは、Amazon Inspector スキャン API は HTTP 400 レスポンスを返します。

 AWS プロファイルまたは IAM ロールを使用して、次の AWS CLI 引数を使用して Amazon Inspector を認証できます。

```
--aws-profile {{profile}}
--aws-region {{region}}
--aws-iam-role-arn {{role_arn}}
```

 Sbomgen に次の環境変数を指定することで、Amazon Inspector に対して認証を行うこともできます。

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

 レスポンス形式を指定するには、`--scan-sbom-output-format cyclonedx` 引数または `--scan-sbom-output-format inspector` 引数を使用します。

**コマンドの例 1**  
 このコマンドは、最新の Alpine Linux リリースの SBOM を作成し、その SBOM をスキャンして、脆弱性の結果を 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
```

**コマンドの例 2**  
 このコマンドは、環境変数として AWS 認証情報を使用して Amazon Inspector を認証します。

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

**コマンドの例 3**  
 このコマンドは、IAM ロールの ARN を使用して Amazon Inspector に対して認証を行います。

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

### 追加のスキャナーを使用して検出機能を強化する
<a name="w2aac37c13c17"></a>

 Amazon Inspector SBOM Generator は、使用されているコマンドに基づいて事前定義されたスキャナーを適用します。

**デフォルトのスキャナーグループ**  
 各 Amazon Inspector SBOM Generator サブコマンドは、次のデフォルトのスキャナーグループを自動的に適用します。
+  `directory` サブコマンドの場合: binary、programming-language-packages、dockerfile スキャナーグループ 
+  `localhost` サブコマンドの場合: os、programming-language-packages、extra-ecosystems スキャナーグループ 
+  `container` サブコマンドの場合: os、programming-language-packages、extra-ecosystems、dockerfile、binary スキャナーグループ 

**特殊スキャナー**  
 デフォルトのスキャナーグループ以外にもスキャナーを含めるには、 `--additional-scanners` オプションを使用し、追加するスキャナーの名前を指定します。以下は、これを実行するコマンドの例です。

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

 以下は、カンマ区切りリストで複数のスキャナーを追加する方法を示すコマンドの例です。

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

### スキャンする最大ファイルサイズを調整してコンテナスキャンを最適化する
<a name="w2aac37c13c19"></a>

 コンテナイメージを分析して処理すると、Sbomgen はデフォルトで 200 MB 以下のファイルをスキャンします。200 MB を超えるファイルには、パッケージメタデータが含まれることはほとんどありません。200 MB を超える Go または Rust バイナリのインベントリを作成すると、エラーが発生する可能性があります。サイズ制限を調整するには、 `--max-file-size` 引数を使用します。これにより、大きなファイルを含めるように制限を増やしたり、大きなファイルを除外してリソース使用量を減らしたりできます。

**例**  
 次の例は、 `--max-file-size` 引数を使用してファイルサイズを増やす方法を示しています。

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

 この設定を調整すると、ディスク使用量、メモリ消費量、全体的なスキャン期間を制御できます。

### 進行状況インジケータの無効化
<a name="w2aac37c13c21"></a>

 Sbomgen は、回転する進行状況インジケータを表示しますが、それにより CI/CD 環境で過剰なスラッシュ文字が発生する可能性があります。

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

 `--disable-progress-bar` 引数を使用すると、この進行状況インジケータを無効にすることができます。

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

## Sbomgen を使用したプライベートレジストリへの認証
<a name="authenticating-private-registry"></a>

 プライベートレジストリの認証情報を指定することで、プライベートレジストリでホストされているコンテナから SBOM を生成できます。これらの認証情報は、次のメソッドで提供できます。

### キャッシュされた認証情報を使用した認証 (推奨)
<a name="w2aac37c15b5"></a>

 この方法では、コンテナレジストリに対して認証を行います。例えば、Docker を使用している場合は、以下の Docker ログ記録コマンドを使用してコンテナレジストリに対して認証を行うことができます: `docker login`。

1.  コンテナレジストリに対して認証を行います。例えば、Docker を使用している場合は、以下の Docker `login` コマンドを使用してレジストリに対して認証を行うことができます。

1.  コンテナレジストリに対して認証を行ったら、レジストリにあるコンテナイメージで Sbomgen を使用します。以下の例を使用するには、{{`image:tag`}} を、スキャンするイメージの名前に置き換えてください。

```
./inspector-sbomgen container --image {{image:tag}}
```

### インタラクティブ方式を使用した認証
<a name="w2aac37c15b7"></a>

 この方法では、ユーザー名をパラメータとして指定すると、Sbomgen から必要に応じて安全なパスワードの入力を求められます。

 以下の例を使用するには、{{`image:tag`}} をスキャンするイメージの名前に置き換え、{{`your_username`}} をその画像にアクセスできるユーザー名に置き換えます。

```
./inspector-sbomgen container --image {{image:tag}} --username {{your_username}}
```

### 非インタラクティブなメソッドを使用した認証
<a name="w2aac37c15b9"></a>

 このメソッドでは、パスワードまたはレジストリトークンを `.txt` ファイルに保存します。

**注記**  
 現在のユーザーは、このファイルの読み取りのみが可能です。また、ファイルには、パスワードまたはトークンが 1 行にまとめられます。

 以下の例を使用するには、{{`your_username`}} をユーザー名に置き換え、{{`password.txt`}} をパスワードまたはトークンを 1 行に含む `.txt` ファイルに置き換え、{{`image:tag`}} をスキャンするイメージの名前に置き換えます。

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

## Sbomgen からの出力例
<a name="sbom-examples"></a>

Sbomgen を使用してインベントリが作成されたコンテナイメージの SBOM の例を以下に示します。

### コンテナイメージの SBOM
<a name="container-sbom-example"></a>

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