すべての製品や新しいリリースの一部として最新の SBOM の重要性を認識する企業が増えています。 NSAさえも 論文を発表 サイバー意識を高め、ソフトウェア サプライ チェーンをより適切に保護するために、企業にこのツールを採用するよう奨励します。 SBOM を生成することが正しいことであると結論付けたとしても、それをどのように実行するか、どのツールを使用するか、どのように実装するかがわからない場合があります。市場には複数の SBOM 生成ツールがあり、プロプライエタリなツール、無料のツール、オープンソース ツールもあります。この記事では、SBOM 生成ツールをニーズに合ったものにするために必要な主要な機能について説明します。
SBOMフォーマット
XNUMXつの主要なものがあります SBOM形式 現在市場で使用されているのは、SPDX と CycloneDX です。
ソフトウェア パッケージ データ交換 (SPDX) Linux 財団によるオープンソースの機械可読 SBOM プロジェクトです。 SPDX の最新バージョンは、NTIA の「」標準に沿って設計されました。ソフトウェア部品表の最小要素。」ソフトウェアのコンポーネント、著作権、ライセンス、セキュリティ参照がリストされています。
サイクロンDX(CDX) これは、Open Web Application Security Project (OWASP) コミュニティによって開発された、オープンソースで機械可読な SBOM 形式でもあります。 CycloneDX は BOM フォーマットとして、ソフトウェア部品表の作成以外にも応用できます。また、ハードウェアやクラウド システムのコンポーネント、脆弱性、サービスをコンパイルするためにも使用できます。
さまざまなツールをチェックアウトする前に、どの形式がニーズに最も適しているかを検討してください。現在の時間だけでなく、将来のニーズも考慮することが最善です。一度特定の形式にコミットすると、おそらくその形式を使い続けるのが容易になるためです。 SBOM の用途と、データの分析に使用するツールを検討してください。どちらの形式を選択すればよいかわからない場合は、両方の形式を生成できるツールを探してください。
SBOM ツールの主な機能
優れた SBOM 生成ツールに求められる機能をいくつか示します。
SCM と最終製品の両方からの SBOM コレクション – 製品を完全に網羅することが、優れた SBOM の鍵となります。開発段階では、必ずしもすべての依存関係を取り込んでプロジェクトに統合するとは限らないことはよく知られています。通常、これは CI/CD パイプラインの最後の最終コンパイルでのみ行われます。 SCM と最終製品から SBOM を取得すると、2 つを比較し、その間の段階でファイルやフォルダーに不要な変更が加えられていないことを確認できます。 SBOM 間のファイルとフォルダーの比較は、それぞれに対して計算されたハッシュ値を比較することで実行できます。それを自動的に実行できるツールがあれば、多くの時間と心配を節約できます。
SBOM分析 – SBOM は大量のデータを含むファイルです。得たい洞察を得るためにソフトウェアを分析するために構築するのが最善です。もちろん、このようなソフトウェアを自分で構築するのは遅くて時間がかかります。そのため、数千行の SBOM ファイルの先頭や末尾を作成しようとするよりも、分析ソフトウェアがすでに含まれているツールを入手して、結果のレポートを確認できるようにする方がはるかに優れています。 。考慮すべきレポートには、すべての依存関係に関する包括的な脆弱性レポート、ソフトウェアで使用されている古いコンポーネントに関するレポート、使用されているすべてのオープンソース ライセンスに関するレポート、およびオープンソースの相対的な健全性に関するレポートなどがあります。使用されるソースコンポーネント。最後のものでは、次のような要素を利用できます。 OpenSSF スコアカード 使用される各パッケージに公平なスコアを与えます。
SBOMの自動化と安全なストレージ – SLSA セキュリティ フレームワーク原則の一部は、各セキュリティ機能を自動化し、可能な限り操作を困難にすることです。ユーザーがセキュリティ機能の結果を操作できるようにすると、必要に応じてその機能をキャンセルしたり操作したりできる余地が残るだけになる、という考えです。そのコンセプトの一環として、人的介入を必要とせずに、各 CI/CD パイプラインまたはコンパイル実行で独立して実行できるように完全に自動化できる SBOM ツールを探すことができます。さらに、適切に検証された担当者のみがアクセスできるように、証拠を安全な場所に保存する SBOM ツールを探してください。そうすれば、いかなる状況であっても、SBOM の証拠が操作されたり削除されたりすることは不可能になります。
継続的なSBOM分析 – SBOM をサードパーティに保管することのもう 1 つの潜在的な利点は、そのサードパーティが新しい脆弱性を継続的にスキャンできることです。新しい脆弱性は常に発見され、報告されており、今日はクリーンであることが知られているパッケージでも、明日もそのままではない可能性があります。すべての SBOM を継続的にスキャンして新しい脆弱性を探し、発見があれば通知する SBOM 機能があれば、毎日、毎週、または毎月新しい SBOM を作成しなくても、気付かないうちに脆弱性が発見されることはありません。製品に含まれていた以前はクリーンなパッケージに新たな脆弱性があった場合。
SBOMスマートシェアリング – 優れた SBOM を作成する主な理由の 1 つは、ソフトウェア サプライ チェーンの問題の可能性をチェックするためのソースを用意すること以外に、それを他のユーザーと共有することです。他の社内チーム、クライアント、サードパーティ請負業者、または監査人と情報を共有したい場合があります。もちろん、いつでも SBOM ファイルを関係者に電子メールで送信することもできますが、ソフトウェアの更新が頻繁に行われること、つまり新しい SBOM が頻繁に発行されることを考慮すると、すぐに非常に面倒になってしまう可能性があります。共有機能が組み込まれたツールを使用すると、サブスクライバーのリストを定義でき、付随するレポートの有無にかかわらず、プロジェクト、そのサブスクライバー、関心のレベルなどに基づいて新しい SBOM が自動的に共有されるため、ツールを使用する方がはるかに優れています。 。
SBOM勧告 – すでに述べたように、SBOM には数千の依存関係が含まれる場合があります。脆弱性がゼロのクリーンな健康状態を期待することは現実的ではありません。常に脆弱性が存在します。大きな疑問は、それらの脆弱性が製品の正確な構成で悪用可能かどうかということです。この質問に答えることができるのは開発者だけですが、SBOM ツールにこれらの調査結果を共有できる機能があることを確認する必要があります。同じ脆弱性の質問に 1000 回も回答する必要はありません。見つかった各脆弱性の正確なステータスを示すアドバイザリを SBOM に追加できると、クライアントやパートナーに自社が順調に進んでいることを示し、開発者が特定の脆弱性が問題であることを確認したら結果を共有することができます。 製品で悪用される可能性があります。
SBOM 生成ツールをどこから始めるべきか
SBOM 生成ツールには、探して見つけられる機能が他にもたくさんありますが、機能のリストを見ると、優れた SBOM ツールが単独の要素以上のものであることが明らかだと思います。 SBOM の生成、分析 (スポットおよび継続の両方)、レポート、共有を組み込んだ完全なシステムを見つけるのが最善です。
米国の規制当局からの注目の高まりを考慮すると、新しいソフトウェア リリースごとに付随する SBOM が標準となるまで、そう長くはかからないと思われます。そのような場合は、最適なツールを選択して SDLC に組み込んでおく必要があります。また、SBOM は IP を侵害できないことも指摘しておきたいと思います。SBOM はコードを「調べ」ず、ファイル名やバージョンなどをスキャンするだけです。つまり、SBOM を共有したり、信頼できる第三者が安全な場所に保存したりしても、セキュリティや IP が危険にさらされることはありません。
Scribe Security プラットフォームのようなサービスは、この記事で説明されているすべての機能を提供し、さらに多くの機能が常に追加されています。ぜひ当社のプラットフォームをチェックして、当社の SBOM 生成ツールに含まれるその他の機能があなたやあなたの組織に利益をもたらす可能性があるかを確認してください。