これをお読みのあなたがソフトウェアコンプライアンスマネージャーでも、DevOpsアーキテクトでも、ソフトウェアエンジニアでも、あるいは法務コンサルタントであっても、セキュリティリスクおよび法的リスクから知的所有権を守るために理解しておくべきことは何かを知ってください。
サイバーレジリエンス法とは
サイバーレジリエンス法(CRA)は、2024年の早いうちに施行される予定です。(注:2024年8月時点:2024年3月に欧州議会で承認され、今後所定の手続きを経て、正式に施行される見通し)このEU法令は、サプライチェーン全体を通じてハードウェアおよびソフトウェア製品のサイバーセキュリティおよび透明性を強化することを意図しています。CRAは、デジタル要素を持つすべての製品内のコンポーネントを識別するためにソフトウェア部品表(SBOM)を作成するよう製造者に要求しています。SBOMとは、含まれるすべてのソフトウェアコンポーネント、依存関係、セキュリティ脆弱性、使用ライセンスをリスト化したレポートです。
CRAによるSBOM(ソフトウェア部品表)要件はいつから適用されるのか
CRAは複数のコンポーネントで構成されていますが、その大部分は施行後3年、つまり2027年の早いうちに(注:2024年8月時点では施行されていない)適用可能になる予定です。SBOMに関しては、EUで市販されるデジタル要素を持つ製品(PDE)に対して次の記述が適用されます。
ソフトウェア部品表 (SBOM): 製造者は、製品の少なくとも最上位レベルの依存関係のソフトウェア部品表(SBOM)を作成することなどによって、製品のコンポーネントおよび脆弱性を識別し、文書化しなければならない [Annex I, Part II (1)]。SBOMは、公開される必要はない [Recital 37]。
CRAはアメリカ国内のビジネスにどのような影響を持つか
法令はEUで施行されますが、CRAは世界中のソフトウェアおよびコネクテッドデバイスの製造業者にとって大きな意味を持ちます。また、アメリカでも正式名称を「Ensuring Responsible Development of Digital Assets」という大統領令14067を制定し、信頼性の高いデジタルアセットの開発を推進しています。大統領令14067も、企業がSBOMをデリバリーする必要があることを強調し、「ソフトウェア構築に使用されるさまざまなコンポーネントの詳細およびサプライチェーン関係を含む正式な記録」とSBOMを定義しています。National Telecommunications and Information Administration (NTIA)は「The Minimum Elements for a Software Bill of Materials (SBOM)」を公開しています。
(注:EUで販売されるデジタル機器が対象だが、それらに含まれる部品類も対象のため、日本企業においても対応の検討が必要)
SBOMには何を含める必要があるか
SBOMは最終的なソフトウェア製品の構築に使用されるソフトウェアコンポーネントの包括的な目録を提示する必要があります。これには、以下が含まれます。
- オープンソースのライブラリおよび依存関係
- 商用/プロプラエタリのライブラリおよびモジュール
- ライブラリおよびコンポーネントのバージョン
- コンポーネント間の関係
- セキュリティ脆弱性
- ライセンス情報
SBOMの共通規格として、以下の3つがあります。
- Linux FoundationのSoftware Package Data Exchange (SPDX)
- OWASPのCycloneDX (CDX)
- International Organization for Standardization (ISO)のSoftware Identification (SWID)
SBOMの生成を難しくする要因は何か
複雑で分散化されているというソフトウェアサプライチェーンの性質が、正確で効率的なSBOM管理を難しくしています。サードパーティのソース間で文書が矛盾していたり、文書が不足していたりすること、幅広いライセンス種類があること、ソフトウェア構成解析(SCA)ツールがパッケージマニフェストで宣言されたコードだけを対象としていたり、コンポーネントのスニペットを識別できなかったりすることが、SBOM管理を特に困難にしています。
オープンソースコードの普及が続いていることや、コードスニペットおよびAI生成コードの利用が複雑性を増大させ、規模の拡大に対応できる高度なSCAツールだけでなく、コピーライトやオープンソースライセンスの種類の機微に精通したオープンソース監査者という形での専門知識の必要性を生み出しています。
CRAに備えてどのようにSBOM管理を強化できるか
あなたの組織にはおそらくすでにSBOMプロセスが存在するでしょうが、強化が必要です。より完全で、より正確で、より時間がかからないものにする必要があります。以下は、SBOM強化およびCRA対応計画を進めるのに役立つ作業リストです。
情報収集を怠らない: 公式の政府サイト、サイバーセキュリティフォーラム、業界向け刊行物を定期的にチェックし、サイバーレジリエンス法およびソフトウェア部品表に関する最新情報を集めます。どのような影響があるかを説明できる、信頼できるソフトウェア構成解析パートナーと協力します。
SBOM標準を調査する: ソフトウェア部品表(SBOM)標準および仕様を確認しておきます。SBOMのフォーマットと構造を理解し、要件に確実に準拠できるようにします。
セキュリティチームと協働する: 組織のサイバーセキュリティチームと密接に連携し、セキュリティのベストプラクティスやコンプライアンス要件とソフトウェア開発プラクティスの整合性を確保します。
開発プロセスにSBOMを組み込む: ソフトウェア構成解析(SCA)をソフトウェア開発ライフサイクル(SDLC)に統合します。ソフトウェア製品に正確な最新のSBOM情報が含まれるようにします。
SBOMツール、自動化: SBOMの効率的な取り込み、生成、管理に役立つソフトウェア構成解析ツールおよびSBOM自動生成ソリューションを探します。そうすることで、コンプライアンスプロセスが簡略化され、エラーのリスクが低減されます。
SBOMの専門的知見を求める: SBOM管理に「銀の弾丸」的ツールはありません。プロセスは専門知識を必要としますが、社内には識者がいない場合もあります。さまざまなレベルのオープンソース監査サービスを提供できるSCAプロバイダーを見つけ、部分マッチによってコンポーネントを識別したり、ライセンスの限定性を判断したりといった複雑な状況を乗り切れるようにします。
参考資料
- https://www.cyberresilienceact.eu/
- https://www.cisa.gov/sbom
- https://www.ntia.doc.gov/files/ntia/publications/sbom_minimum_elements_report.pdf
- https://spdx.dev/
- https://owasp.org/www-project-cyclonedx/
- https://csrc.nist.gov/Projects/Software-Identification-SWID/
FossID チーム
FossID チームによるこの記事は、チームとしての活動を反映したものです。10年近くにわたってオープンソース監査サービスを行ってきた知見を持つFossIDは、ソフトウェア監査およびコンプライアンスという重要分野におけるパイオニアです。FossIDのソフトウェア構成解析(SCA)ツール、Workbench、プロフェッショナルサービスは、ソフトウェア開発において包括的なオープンソースコンプライアンスおよびセキュリティを確保することを目的としています。
この記事は、FOSSID Blog 「Are You Ready to Meet the SBOM Requirements of the Cyber Resilience Act?」投稿記事をFOSSID社の許可を得て翻訳したものです。)