ソフトウェア・サプライチェーン

ソフトウェア・サプライチェーンは、ソフトウェアの成果物を開発、構築、公開するために使用されるコンポーネント、ライブラリ、ツール、プロセスで構成される

ソフトウェア・ベンダーは、オープンソースや商用ソフトウェアのコンポーネントを組み合わせて製品を作成することが多い。ソフトウェア部品表 (SBOM) は、ソフトウェアアプリケーションのようなソフトウェア成果物を構築するために使用されるコンポーネントの目録を公表する。 アレルギー, を引き起こす可能性のある食品を避けるためにラベルを参照するように、SBOMは、組織または個人に害を及ぼす可能性のあるソフトウェアの使用を避けるのに役立てることができる。

BOMの概念は、サプライチェーン・マネジメントの一環として、従来の製造業で定着している。 メーカーはBOMを使用して、製品を作るために使用する部品を追跡する。後から特定の部品に欠陥が見つかった場合、BOMを使えば、影響を受けた製品を簡単に見つけることができる。

使用法 
SBOMは、ソフトウェア製品の構築者（製造者）と購入者（顧客）の両方にとって有用である。構築者は、製品を作成するために、利用可能なオープンソースやサードパーティのソフトウェアコンポーネントを活用することが多い。SBOMにより、構築者は、それらのコンポーネントが最新であることを確認し、新しい脆弱性に迅速に対応することができる。 購入者は、SBOMを利用して脆弱性 や利用許諾の分析を行うことができ、どちらも製品のリスク評価に使える。

多くの企業が一般的な部品表管理にスプレッドシートを使用しているが、スプレッドシートに書き込まれたSBOMにはさらなるリスクと問題がある。SBOMは、他のオートメーションシステムの一部となり、他のアプリケーションから簡単に照会できるリポジトリにまとめて保存されると、より大きな価値を得る。自動化されたSBOM処理のためのこのニーズは、Software Package Data Exchange (SPDX) オープンスタンダードにより処理される。

ソフトウェアのサプライチェーンを理解し、SBOMを入手し、これを用いて既知の脆弱性を分析することは、リスクマネージメントにおいて極めて重要である。

法令 
2014年のサイバー・サプライ・チェーン管理および透明性法 は、政府機関が新たに購入するすべての製品についてSBOMの取得を義務付けることを提案した米国の法律である。 また、「米国政府によって使用されているあらゆるソフトウェア、ファームウェア、製品」についてもSBOMの取得を義務付けるものであった。 最終的には通過しなかったが、この法律は政府に認識をもたらし、2017年のIoTサイバーセキュリティ改善法のような後の法律に拍車をかけた。

2021年5月12日の米国サイバーセキュリティ改善に関する大統領令は、NISTに対し、”ソフトウェアのサプライチェーンのセキュリティを強化する”ために、”購入者に各製品のソフトウェア部品表（SBOM）を提供する”など、いくつかのテーマについて「基準、手順、または基準を含む」ガイダンスを90日以内に発行するよう命じた。また、NTIA が60日以内に "SBOMの最小要素を公表する "ことも義務付けた。

NTIAの最小要素は2021年7月12日に公表され、"ソフトウェアのサプライチェーンにおける透明性を高めるためのSBOMの使用事例を説明するとともに、将来の進化のための選択肢を示している"。 最小要素は、データフィールド（各ソフトウェアコンポーネントに関するベースライン情報）、自動化サポート（機械および人間が読み取り可能な形式でSBOMを生成する能力）、およびプラクティスとプロセス（組織がSBOMを生成する方法とタイミング）の3つの大まかなカテゴリで構成されている。”自動化サポート”要件は、”自動生成”の必要性を規定しており、これは ソフトウェア構成分析 (SCA) ソリューションを使用することで可能となる。

関連項目 

 Reproducible builds
 Software Package Data Exchange
 Software toolchain
 Supply chain attack
 Manifest file
 Dependency hell

脚注 

ソフトウェア開発工程
ソフトウェアプロジェクト管理
サプライチェーン管理