Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SBOMってなんだ?~最近話題のSBOMを簡単に解説~

 SBOMってなんだ?~最近話題のSBOMを簡単に解説~

koedoyoshida

August 30, 2023
Tweet

More Decks by koedoyoshida

Other Decks in Technology

Transcript

  1. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 SBOMってなんだ?~最近話題のSBOMを簡単に解説~


    サイバートラスト株式会社 OSSプロダクトマネジメント部 富田佑実
  2. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 •

    自己紹介 • SBOMってなんだ? • なぜSBOMが必要なのか? • どんなときに使われるのか? • どんなSBOMがあるのか? • まとめ 目次

  3. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 4

    ソフトウェアの要素の入れ子となるインベントリであり、 ソフトウェアコンポーネントを構成する材料のリスト A “Software Bill of Materials” (SBOM) is a nested inventory for software, a list of ingredients that make up software components. SBOM(Software Bill of Materials)ってなんだ? https://www.ntia.gov/page/software-bill-materials
  4. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 5

    SBOM(Software Bill of Materials)ってなんだ? アプリケーションZの SBOM (json, xml, yamlなど) A社 アプリケーションZ ソフトウェアの提供者? 含まれるコンポーネント名 依存関係にあるコンポーネント名 依存関係にあるコンポーネントのバージョン SBOMの作成者? …
  5. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 6

    SBOM(Software Bill of Materials)ってなんだ? アプリケーションZの SBOM (json, xml, yamlなど) A社 アプリケーションZ B社 コンポーネントX OSSコミュニティC コンポーネントY A社が提供するアプリケーション B社が提供するコンポーネント Xを含む コミュニティCが提供するコンポーネント Yを含む …
  6. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 8

    OSSへのサプライチェーン攻撃の増加 開発者 リポジトリ パッケージ マネジメントツール ユーザ 企業 コミュニティ 個人 … Git PyPI … rpm apt npm … 多様な開発者やオープンなフレームワークなどによってより複雑なものになっている 企業 個人 …
  7. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 9

    コンプライアンス違反 近年のOSSサプライチェーンに関連する問題 依存関係にある コンポーネントの脆弱性 サプライチェーンを 悪用した攻撃 コミュニティの信頼性 • テレビメーカーGPLv2違反による訴訟問題(2022年) • Docker Hubのコンテナイメージに仮想通貨採掘ボットが潜む (2018年) • PHPのGitサーバがクラックされ意図的に脆弱性が混入 (2021年) • NPM left-padの依存解決が破壊される問題 (2016年) • Apache Log4jの脆弱性問題 (2022年) • RubyGems rest-client にマルウェア混入(2019年) • SolarWindsサプライチェーン攻撃(2020年)
  8. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 10

    世界の動き 2021年5月 バイデン米大統領、「Improving the Nation’s Cybersecurity(国家のサイバーセキュリティの 改善に関する大統領令)」に署名 2021年7月 NTIA「The Minimum Elements For a Software Bill of Materials(SBOMの最小構成)」を公 開 2022年1月 OSSソフトウェアサプライチェーン対策のためのホワイトハウスサミットを開催 Linux Foundation、OpenSSF、GAFAなどを招集 2022年2月 OpenSSFはサプライチェーン問題を改善し安全性を高めるための「Alpha-Omega Project」 の開始を発表 サイバートラストでは2021年7月よりOpenSSFプロジェクトに参加 2023年4月 米CISA 「Software Bill of Materials (SBOM) Sharing Lifecycle Report」を公開 米CISA 「Types of Software Bill of Material (SBOM) Documents」を公開
  9. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 11

    日本の動き 2019年 経済産業省「サイバー・フィジカル・セキュリティ確保に向けたソフトウェア管理手法等検討タス クフォース」(ソフトウェアタスクフォース)の設立 2022年8月 Open Source Security Summit Japanを開催 2023年1月 経済産業省米国国土安全保障省とのサイバーセキュリティに関する協力覚書に署名 • 運用面での協力   • 制御システムセキュリティの向上 • インド太平洋地域等の能力向上に関する協力 • サイバーセキュリティ関連規制及びスキームの調和のための対話促進 2023年7月 経済産業省「ソフトウェア管理に向けたSBOM(Software Bill of Materials)の導入に関する手 引」を公開
  10. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 https://www.cybertrust.co.jp/pressrelease/2022/0824-oss-supply-chain-security.html

    日本の動き https://www.linuxfoundation.jp/press-release/2022/08/linux-foundation-openssf- gather-industry-government-leaders-open-source-software-security-summit-jap an/
  11. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 13

    OSSのサプライチェーン問題への対策としてのSBOM ソフトウェアサプライチェーンの透明性 を確保するために ソフトウェアとその部品の⼀覧とライセンス等で構成される SBOM Software Bill of Materials OSSを含むコードの割合が 98% を占める※ 一方で… ライセンス違反やメンテナンス状況を把握していない 依存するパッケージやライブラリを把握していない OSS の普及と問題点 サプライチェーン問題への対策 https://japan.zdnet.com/article/35187721/ コンプライアンス違反 依存関係にある コンポーネントの脆弱性 サプライチェーンを 悪用した攻撃 コミュニティの信頼性
  12. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 15

    ソフトウェアを提供する人 どんなときに使われるのか?Roles and Benefits for SBOM Across the Supply Chain を元に作成 • 脆弱性リスクの把握 • ライセンスマネジメント • プロジェクト情報の把握 ◦ 関連プロジェクトの依存関係、EOL • 顧客へSBOMを提供 A社 アプリケーション Z B社 コンポーネントX OSSコミュニティC コンポーネントY エンドユーザ SBOM
  13. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 16

    どんなときに使われるのか? Roles and Benefits for SBOM Across the Supply Chain を元に作成 ソフトウェアを選定する人 • 調達先の把握 • ポリシーや規制の遵守 • 導入前の調査 ◦ セキュリティの分析 ▪ EOL ▪ 脆弱性 A社 アプリケーション Z B社 コンポーネントX OSSコミュニティC コンポーネントY エンドユーザ SBOM
  14. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 17

    どんなときに使われるのか? Roles and Benefits for SBOM Across the Supply Chain を元に作成 ソフトウェアを運用する人 • システムのセキュリティ評価 • ソフトウェアのEOLの管理 • ソフトウェア管理の効率化 • 影響を最小限に抑えたシステムへの対策 A社 アプリケーション Z B社 コンポーネントX OSSコミュニティC コンポーネントY エンドユーザ SBOM
  15. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 CISAによるSBOMの定義

    Types of Software Bill of Material (SBOM) Documents SBOM TYPE Definition Data Description Design 新しいソフトウェア成果物のためのコンポーネントが含まれる、計画 されたソフトウェアプロジェクトまたはプロダクトのSBOM ソフトウェアの仕様要件書、RFPや初期コンセプト Source ソースコードと関連するSW部品を用い、適切な開発環境から直接 作成されたSBOM SCAなどで生成されたもの Build ソースコード、関連するSW部品、ビルドされたコンポーネント、ビル ドプロセス、および他のSBOMなどのデータから、リリース可能な成 果物を作成するためにソフトウェアを構築するプロセスの一部として 生成されるSBOM ビルドプロセス上で生成 中間製品や完成品である場合が多い Analyzed 構築後の成果物の分析を通じて生成されるSBOM “サードパーティ ”SBOMとも呼ばれる 3rdパーティツールで生成されたもの(Binaryファイルの 解析等) Deployed システム上に存在するソフトウェアのリスト 実装環境で動作する他のSBOMとの組み合わせの場合ある 実装されているソフトウェアのSBOMやConfig情報 Runtime 実行ソフトウェアを計測して生成されたSBOM システム内に存在するコンポーネントだけでなく、外部からの呼び出 しや動的にロードされるコンポーネントも含む 実装環境・実行環境でツールで生成されたもの
  16. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 20

    SBOMのフォーマット フォーマット 組織 規格 形式 SPDX SPDX (Linux Foundation) ISO/IEC 5962:2021 Tag-Value(txt)、RDF 、xls、json、 YAML、xml CycloneDX OWASP - json、xml、Protocol Buffers (protobuf) SWIDタグ NIST ISO/IEC 19770-2:2015 xml SPDX OSS のライセンスコンプライアンスに関する情報を効果的に扱うために開発されたフォーマット CycloneDX OSSのセキュリティ管理のために開発されたフォーマット SWIDタグ 組織が管理対象とするデバイスにインストールされたソフトウェアを追跡するために開発されたフォーマット
  17. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 21

    SBOMの最小構成 NTIA:The Minimum Elements For a Software Bill of Materials データフィールド 説明 Supplier Name (サプライヤー名) コンポーネントの作成、定義、および識別を行うエンティティの名前 Component Name (コンポーネント名) サプライヤーが定義したソフトウェアの単位に割り当てられた名前 Version of the Component (コンポーネントのバージョン) サプライヤーが、以前に特定されたバージョンからのソフトウェアの変更を指定するため に使用する識別子 Other Unique Identifiers (その他の一意な識別子) その他コンポーネントを識別するために使用される識別子、または関連するデータベー スのルックアップキーとして機能する識別子 Dependency Relationship (依存関係) 上流部品XがソフトウェアYに含まれるという関係を特徴づける Author of SBOM Data (SBOM作成者) このコンポーネントの SBOM データを作成するエンティティの名前 Timestamp (タイムスタンプ) SBOMデータ生成時の記録
  18. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 22

    SBOMを生成するツール • Syft ◦ コンテナイメージ、ファイルシステム • Trivy ◦ コンテナイメージ、ファイルシステム、 Kubernetes、git repo(remote)、AWSな どのセキュリティスキャナ • Docker sbom plugin ◦ docker image のSBOMを生成 • meta-spdxscanner ◦ yoctoのSBOM生成レイヤー • alma-sbom ◦ AlmaLinuxのSBOMを生成 SBOMに関連したOSSのツール SBOMを活用するツール • Grype ◦ 脆弱性スキャンツール ◦ Syftと共に利用される • Daggerboard ◦ 脆弱性スキャンツール • SW360 ◦ OSSのライセンスや脆弱性情報を管 理するツール
  19. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 23

    CTJのSBOMを活用した脆弱性管理ツール CPE 情報と紐づけて各コンポーネントの脆弱性管理を行なう SBOM SBOM(SPDXフォーマット) から 依存関係のある構成情報を自動取得 スキャン結果 MIRACLE Vul Hammer
  20. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 SBOMの今後

    • 2023年8月現在、国内ではSBOMに対応するべき政 令はない • SBOMの仕様や政策、ツールの動向をウォッチ ◦ NTIA, CISA, OpenSSF, OpenChain(Linux Foundation) ◦ SPDX, OWASP ◦ 経済産業省 ▪ サイバー・フィジカル・セキュリティ確保に向 けたソフトウェア管理手法等検討タスク フォース ▪ 「ソフトウェア管理に向けたSBOM (Software Bill of Materials)の導入に関す る手引」 まとめ
 ソフトウェアサプライチェーンの透明性 を確保するために ソフトウェアとその部品の⼀覧とライセンス等で構成される SBOM Software Bill of Materials OSSを含むコードの割合が 98% を占める※ 一方で… ライセンス違反やメンテナンス状況を把握していない 依存するパッケージやライブラリを把握していない OSS の普及と問題点 サプライチェーン問題への対策
  21. Copyright Cybertrust Japan Co., Ltd. All rights reserved. 公開 留意事項

    本資料に記載されている会社名、製品名、サービス名は、当社または各社、各団体の商標もしくは登録商標です。 その他本資料に記載されているイラスト・ロゴ・写真・動画・ソフトウェア等は、当社または第三者が有する知的財産権やその他の権利により守られております。 お客様は、当社が著作権を有するコンテンツについて、特に定めた場合を除き、複製、改変、頒布などをすることはできません。 本資料に記載されている情報は予告なしに変更されることがあります。また、時間の経過などにより記載内容が不正確となる場合がありますが、当社は、当該情報を更新す る義務を負うものではありません。