ソフトウェアサプライチェーンとは、ソフトウェア成果物を開発、構築、公開するために使用されるコンポーネント、ライブラリ、ツール、およびプロセスのことです。[ 1 ]
ソフトウェア部品表(SBOM )は、オープンソースおよびプロプライエタリなソフトウェアコンポーネントを含む、ソフトウェア成果物の構築に使用されるコンポーネントの在庫を宣言します。[ 2 ] [ 3 ]これは、サプライチェーン管理の一部として使用される従来の製造部品表のソフトウェア版です。[ 4 ] SBOMは、ソフトウェアサプライチェーンの透明性を向上させるための戦略です。
ソフトウェアサプライチェーン攻撃は、広く使用されているライブラリ、ビルドツール、配布チャネルなどの上流コンポーネントを侵害し、そのコンポーネントのすべての下流ユーザーに同時に影響を与えます。SolarWinds攻撃のような注目度の高い事件は、このような攻撃の規模と範囲を示しました。研究者たちは、ソースコードの貢献からパッケージの配布までのすべての段階を網羅する分類体系に攻撃対象領域を分類し、攻撃ベクトルを実際の事件とそれに対応する安全対策にリンクさせています。[ 5 ]
ソフトウェアサプライチェーンにおけるもう1つの重要な概念はプロベナンスです。署名付き証明書は、ソフトウェア成果物がどこから来たのか、どのソースと依存関係が使用されたのか、ビルドパイプラインのどのステップでそれが生成されたのかを記録できます。in -totoなどのプロベナンスフレームワークは、下流のユーザーがリリースが想定されたプロセスで構築されたことを検証し、ソースの取得、ビルド、配布の間の改ざんを検出するのに役立ちます。[ 6 ]
SBOM を使用すると、開発者はオープンソースおよびサードパーティのソフトウェア コンポーネントが最新の状態であることを確認し、新しい脆弱性に迅速に対応できます。[ 7 ]購入者やその他の利害関係者は、SBOM を使用して脆弱性またはライセンス分析を実行でき、これは製品のリスクを評価および管理するために使用できます。[ 8 ] [ 9 ] [ 10 ]
多くの企業が一般的なBOM管理にスプレッドシートを使用していますが、スプレッドシートに書き込まれたSBOMには、脆弱性データを自動的に追加したり、セキュリティツールチェーンに統合したりできないなど、追加のリスクと問題があります。[ 11 ] SBOMは、他の自動化システムの一部となり、他のアプリケーションから簡単にクエリできるリポジトリにまとめて保存するのがベストプラクティスです。[ 12 ]
TRACS 2025 を含むサイバーセキュリティの透明性に関する調査では、SBOM の入手可能性が情報セキュリティ ソリューションを購入する際に使用される基準の 1 つとして挙げられています。[ 13 ]しかし、すべてのエンタープライズ セキュリティ製品が公開されている SBOM を提供しているわけではありません。オープンソースエコシステムに関する調査によると、ポリシー主導の SBOM は実際にはまだまれです。ある大規模な調査では、人気のあるGitHubリポジトリの約 0.56% だけが、正式なセキュリティ ポリシーまたはコンプライアンス ポリシーに従って作成された SBOM を含んでいることがわかりました。[ 14 ]また、他の調査によると、テストされたソフトウェア プロジェクトのうち、リリースに SBOM が含まれているのは半分以下であり、それらの SBOM の多くは不完全であるか、確立された標準に完全に準拠していません。[ 15 ] Javaエコシステムでは、6 つの SBOM 生成ツールを評価した調査で、実際に使用されているコンポーネントを過剰に報告する肥大化した依存関係リストなど、不正確な結果が頻繁に生成されることがわかりました。[ 16 ]同時に、企業レベルの調査によると、 企業の約 60 ~ 76 % がサプライヤーから SBOM を要求しているか、SBOM を調達およびサプライチェーンのリスク管理プロセスに統合していると報告されています。[ 17 ]
2014 年のサイバーサプライチェーン管理および透明性法[ 18 ]は、政府機関が購入するすべての新製品の SBOM を取得すること、および「米国政府が使用するすべてのソフトウェア、ファームウェア、または製品」の SBOM を取得することを義務付けることを提案した米国の立法 (法案) でしたが、失敗に終わりました。この法律は、2017 年の「モノのインターネットサイバーセキュリティ改善法」などの後の立法を促しました。 [ 19 ] [ 20 ]
2021年5月12日に米国大統領ジョー・バイデンが発令した国家サイバーセキュリティ強化に関する大統領令14028号は、 NISTとNTIAに対し、SBOMを含むソフトウェアサプライチェーン管理のガイドラインを策定するよう命じた。[ 21 ] NTIAは、SBOMの最小要素として、データフィールド(各ソフトウェアコンポーネントに関する基本情報)、自動化サポート(機械可読形式と人間可読形式でSBOMを生成する機能)、およびプラクティスとプロセス(組織がSBOMを生成する方法とタイミング)の3つの大まかなカテゴリを概説している。[ 22 ]「自動化サポート」の要件は、「自動生成」の必要性を規定しており、これはソフトウェア構成分析(SCA)ソリューションを使用することで可能となる。[ 23 ]