SBOM(Software Bill of Materials)について 2024/03/27 技術勉強会発表資料

1K Views

May 17, 24

スライド概要

ソフトウェアの依存管理、脆弱性管理に役立つ!
話題の SBOM(Software Bill of Materials)とは?

ベガシステム技術勉強会の発表資料です。

profile-image

ベガシステムは、創業1990年、30年以上続くIT企業です。 お客様との対話を大切にし、新たな価値を創造し続けます。

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

https://www.vega-net.co.jp/ SBOMについて 2024年3月27日 株式会社ベガシステム

2.

■アジェンダ 1.前回の復習 2.SBOMとは何か? 3.SBOMのフォーマット 4.SBOMの作成の理想と現実 5.何故SBOMが必要なのか?Log4J事件 6.まとめ © 2024 VEGA Systems Inc. 1

3.

■前回の復習 ■パッケージマネージャーとは パッケージを管理するソフトウェアやシステムのこと。 パッケージ間の依存関係を管理しているため、インストールやアップグレード時に依存関係を自動的に解決。 ・パッケージ:一つのソフトウェアを構成する実行プログラムやソースコード、設定ファイル、 データファイル、ドキュメント、依存関係などを含めた一連のファイル群。 ・依存関係:パッケージを動作させるための前提条件として別のパッケージが必要となること。 パッケージマネージャーではパッケージ間の依存関係を自動で解決してくれる! © 2024 VEGA Systems Inc. 2

4.

■SBOMとは何か? ■SBOM 【Software Bill of Materials】 ・ソフトウェア部品表 ・ソフトウェアがどのような構成要素(モジュール、ライブラリなど)から成り立っているかが一覧で記載されたリスト。 ・ソフトウェアの構成部品群の情報を専用のデータベースなどに記録し、 開発元、バージョン、ライセンス、依存関係などを後から簡単に一覧、参照できるようにするのがSBOMの考え方。 © 2024 VEGA Systems Inc. 3

5.

■SBOMの要素 このような部品を使って作りましたという 部品一覧リスト SBOMとは?3つのフォーマットと日本企業の関心の背景にある脆弱性対策の必要性 https://staff.persol-xtech.co.jp/hatalabo/mono_engineer/629.html © 2024 VEGA Systems Inc. 4

6.

■SBOMのフォーマット ・ SBOMには「SPDX」「SWIDタグ」「Cyclone DX」等のフォーマットがあり、ソフトウェアに関する情報を効率的に管理できる ・ SPDX SPDXとは、SBOMに記載されている情報の共有と利用方法の標準化を目的として生まれたフォーマット ・ SWIDタグ SWIDタグとは、ソフトウェアの構成要素を識別するために標準化されたフォーマット > Corpus Tags:プレインストールソフトウェアを識別・説明するためのタグ > Primary Tags:インストール後のソフトウェア製品を識別・説明するためのタグ > Patch Tags:パッチを識別・説明するためのタグ > Supplemental Tags:ライセンスキーや関係者の連絡先などの関連情報を提供するためのタグ ・ Cyclone DX Cyclone DXは、比較的軽量のSBOMフォーマット。 アプリケーションのセキュリティの背景やサプライチェーンのコンポーネント分析に使用するために設計されている © 2024 VEGA Systems Inc. 5

7.

■SBOMの作成の理想と現実 ・ 理想 ソフトウェアの各コンポーネントを提供するサプライヤー毎にSBOMを作成・提供し、 製品としてソフトウェアを販売するベンダーがそれらをマージしたSBOMを作成する。 しかし実際は、SBOMを作成しているサプライヤーは少なく、全てのコンポーネントのSBOMを取得することは非常に困難。 ・ 現実 ベンダーがソフトウェア構成分析(SCA)ツールを用いて、全てのコンポーネントを集約してスキャンを行い、 SBOMを作成する。作成したSBOMは、ユーザ(開発エンジニア・企業などの顧客)が特定のソフトウェアが組み込まれた製品に 脆弱性がないかを確認したい時に、ベンダーがそれをユーザに渡して活用する。 © 2024 VEGA Systems Inc. 6

8.

■何故SBOMが必要なのか? ■Log4J事件 - Log4Jとは:Javaで書かれたオープンソースのログ記録ユーティリティ、アプリケーションのログ管理に広く使用されている。 - 脆弱性の発見: 2021年12月、リモートからの任意コード実行を可能にする深刻な脆弱性(CVE-2021-44228、通称 「Log4Shell」)が発見された。 - 影響の範囲: Log4Jは世界中で広範囲にわたって使用されているため、多くの組織が速やかな対応を迫られた。 - 対応策: Apacheソフトウェア財団は、脆弱性に対処するために、更新されたバージョンのLog4Jを迅速にリリース。セキュリ ティ専門家や組織は、対策のガイドラインを提供し、システムの更新やパッチの適用を促しました。 - 影響がとても大きい脆弱性が発見されて、即時対応する必要が出てきた。 しかし、自分の使っているソフトがLog4Jを使っているものなのか、よく分からない人が多かった © 2024 VEGA Systems Inc. 7

9.

■まとめ ・SBOMがあれば、複雑な依存関係やライセンスの関係が一覧で分かる SBOMを導入していない場合 SBOMを導入している場合 脆弱性の発見が遅れ、初動対応が遅れてしまう SBOMを管理するツールを用いて新たな脆弱性をリ アルタイムで検出、初動対応期間を短縮する 脆弱性の発生に気付かず、脆弱性が残留してしまう ツールを用いて、脆弱性情報とSBOMの情報を突合 し、脆弱性を検出することで脆弱性が残留するリス クを低減する 部品表を手動で管理するため管理コストがかかる ツールを用いた自動管理で管理コストを削減する 【初心者向け】SBOM(Software Bill of Materials)を解説 https://staff.persol-xtech.co.jp/corporate/security/article.html?id=225 © 2024 VEGA Systems Inc. 8

10.

■まとめ ■とはいえ、デメリットも無い訳では無い ①導入工数やコスト SBOMツールを導入する場合、コスト負担が新たに発生。学習コストも必要。 運用設計、体制作りなど、サプライチェーン の規模が大きいほど複雑かつ、利害関係などの調整要素も多く、コストがかかる。 ②ソフトウェア製品の部品をどこまでSBOMで管理すべきか明確な指標がない 製品に関わる全ての部品を100%網羅しようとすると、部品の全てをソースコードレベルでレビューすることが必要となってしま い、規模の大きな製品ではあまり現実的でない可能性も。 ③ツール性能が不十分な物もあったり、情報が古い場合もある 部品の検出精度もツールによってまちまちであり、結局ツールが検出したものが正しいかどうか手動で確認しなければいけな い、といった本末転倒な事が起こる可能性すらあって、ユーザ側としてはまだまだ扱い辛い部分がある。 また、ソフトウェアのコンポーネントに変更があった場合は、速やかにSBOMも修正する必要がある。 © 2024 VEGA Systems Inc. 9

11.

■世界的には導入に積極的 ■安全性の向上はとても大事 複雑化するソフトウェアのどこに脆弱性があるのか、どのサプライヤーが何のソフトウェアをどのように使用しているかを明確化できる リスク管理 & コンプライアンスの徹底 → 是非導入していきたい ■導入を推進する出来事 ・2021年5月、バイデン米国大統領が署名した「国家のサイバーセキュリティ改善に関する大統領令」においても SBOMは言及され、米国においてもサイバーセキュリティの重要性が非常に高まっていることが示唆されている。 ・2023年5月、日米豪印の政府首脳が集まる会合「Quad(クアッド)」でも、ソフトウェアセキュリティの共同原則において、 SBOMを用いることが明記された。 ・2023年7月、日本でも、経済産業省が「ソフトウェア管理に向けたSBOM(Software Bill of Materials)の導入に関す る手引」という資料を発表した。 © 2024 VEGA Systems Inc. 10