コンテンツにスキップ

SBOMとソフトウェアの関連付け#

インポートされたSBOMファイルとソフトウェア情報、脆弱性✕タスクの関係性について説明します。

SBOMサーバ

下記の例では、画像のSBOMサーバを例として説明します。

アプリケーションとSBOMファイルの関連付け#

Source: SBOMのアプリケーションの詳細を見ると、SBOMファイルの情報が表示されます。

SBOMアプリケーション

上のアプリケーションwebapp/ruby/Gemfile.lockisucon6という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パッケージ

上の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関数などの情報を表示しています。

SBOMアプリケーション

アプリケーションJava application | e5dc48cc-09f7-c1df-f7dd-259f39eaa360keycloakというSBOMファイルから登録されたものとわかります。

脆弱性✕タスクとSBOMファイルの関連付け#

タスク詳細の関連するソフトウェア一覧を見ると、ライブラリの場合location列にアプリケーション情報が表示されます。 関連するソフトウェアにlocationがない場合は、OSパッケージとなり、サーバSBOMファイルから登録されたソフトウェアです。

タスク

上のタスクの関連するソフトウェアcryptographyのlocationvol-0c61f6f97b2a2727d:/p1:home/ubuntu/integration/data/lockfile/poetry.lockをアプリケーションから特定します。

SBOMアプリケーション

アプリケーションvol-0c61f6f97b2a2727d:/p1:home/ubuntu/integration/data/lockfile/poetry.lockinspectorというSBOMファイルから登録されたものとわかります。