SBOMとソフトウェアの関連付け#
インポートされた SBOM ファイルとソフトウェア情報、脆弱性✕タスクの関係性について説明します。
下記の例では、画像の SBOM サーバを例として説明します。
アプリケーションとSBOMファイルの関連付け#
Source: SBOM のアプリケーションの詳細を見ると、SBOM ファイルの情報が表示されます。
上のアプリケーション webapp/ruby/Gemfile.lock
は isucon6
という SBOM ファイルから登録されたものとわかります。
アプリケーション名の後ろに追記された UUID は、FutureVuls 内部での SBOM ファイルを特定するための識別子です。 同じ UUID を持つアプリケーションは同じ SBOM ファイルから登録されたものです。
上の例の、isucon6
というSBOMファイルから登録されたアプリケーションはすべてc30a4802-5139-703f-79ee-ff24578633d3
というUUIDを持ちます。
サーバ詳細画面に戻りSBOMファイルをダウンロードするとファイル名からUUIDが確認できます。
(例: c30a4802-5139-703f-79ee-ff24578633d3.cyclonedx.json
)
ソフトウェア情報とSBOMファイルの関連付け#
SBOM により登録されたソフトウェアは以下の方法で SBOM ファイルを特定できます。
ソフトウェア種別:pkg#
ソフトウェア種別:pkg は OS パッケージを意味します。OS 情報と OS パッケージはサーバ SBOM からしか登録されません。 該当サーバが SBOM サーバの場合、OS パッケージはすべてサーバ SBOM ファイルから登録されたソフトウェアです。
上の OS パッケージ一覧はすべてサーバ SBOM である inspector
から登録されたものです。
ソフトウェア種別:library#
ソフトウェア種別:library は依存ライブラリを意味します。依存ライブラリはそれを含むアプリケーションから SBOM ファイルを特定できます。
上のライブラリ org.apache.tomcat:tomcat-jdbc
は一覧の location 列にある Java application | e5dc48cc-09f7-c1df-f7dd-259f39eaa360
というアプリケーションに含まれています。
location
列について
ソフトウェア一覧の location 列では、ライブラリを含むアプリケーション・Lockfile・Github リポジトリ・AWS Lambda 関数などの情報を表示しています。
アプリケーション Java application | e5dc48cc-09f7-c1df-f7dd-259f39eaa360
は keycloak
という SBOM ファイルから登録されたものとわかります。
脆弱性✕タスクとSBOMファイルの関連付け#
タスク詳細の関連するソフトウェア一覧を見ると、ライブラリの場合 location 列にアプリケーション情報が表示されます。 関連するソフトウェアに location がない場合は、OS パッケージとなり、サーバ SBOM ファイルから登録されたソフトウェアです。
上のタスクの関連するソフトウェア cryptography
の locationvol-0c61f6f97b2a2727d:/p1:home/ubuntu/integration/data/lockfile/poetry.lock
をアプリケーションから特定します。
アプリケーション vol-0c61f6f97b2a2727d:/p1:home/ubuntu/integration/data/lockfile/poetry.lock
は inspector
という SBOM ファイルから登録されたものとわかります。