【えすぼむ】

SBOM(エスボム) とは?

最終更新:
💡 ソフトウェアの「成分表示ラベル」

ソフトウェアの構成部品を、名前・バージョン・依存関係などとともに記録した「部品表」。脆弱性情報やライセンスの確認に役立つ。

📌 このページのポイント
ソフトウェアの構成を記録する アプリ v2 Library A Library B 生成 SBOM:部品表 A / 3.2.1 / MIT B / 1.0.4 / Apache 依存関係なども記録 脆弱性情報と照合 影響や対応を調べる 脆弱性情報 部品表だけで安全を保証しない
架空の部品・版・ライセンスの例。SBOMの生成と脆弱性情報との照合は別の工程。
ひよこ ひよこ
SBOMって何のためにあるの?
ペンギン先生 ペンギン先生
ソフトウェアの中で使っているライブラリなどを調べるための部品表だよ。名前やバージョン、依存関係を記録しておくと、ある部品に脆弱性が見つかったとき、自分のソフトウェアに含まれるか確認する手がかりになるんだ。
ひよこ ひよこ
部品表を見れば、安全かどうか分かるの?
ペンギン先生 ペンギン先生
部品表だけでは分からないよ。脆弱性情報との照合や、実際の使われ方の調査が必要なんだ。記録の対象や内容も確認しよう。SBOMを作っただけで、問題の修正が済むわけではないよ。
ひよこ ひよこ
どうやって作るの?
ペンギン先生 ペンギン先生
たとえばSyftは、コンテナイメージやファイルから部品情報を調べてSBOMを生成するツールだよ。SPDXやCycloneDXは、その情報を表すための形式なんだ。ツールと形式を分けて考えると分かりやすいね。
ひよこ ひよこ
一度作っておけばいい?
ペンギン先生 ペンギン先生
ソフトウェアの版や構成が変わったら、対応するSBOMも更新する必要があるよ。どの版を調べた一覧なのか分かるようにし、ビルドや公開の工程で生成・管理する方法を考えるんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「SBOM」って出てきたら「ソフトウェアの部品とバージョンなどを記録した一覧」と思えばだいたいOK!
📖 おまけ:英語の意味
「Software Bill of Materials」 = ソフトウェア部品表
💬 Bill of Materialsは「部品表」という意味。ソフトウェアを構成するライブラリなどの情報をまとめるので、この名前なんだ。

参考資料

← 用語集にもどる