ソフトウェアの依存関係とシステムレイヤーの複雑化が進む中、サイバーセキュリティリスクの高まりや多発するインシデントを受け、米国では大統領令が発令、欧州連合(EU)では「サイバーレジリエンス法案」が公表されるなど、世界的に「ソフトウェア部品表」(Software Bill of Materials、以下SBOM)の普及が進んでいます。国内でも、ソフトウェアの脆弱(ぜいじゃく)性管理、SBOM対応必須化の波が押し寄せており、今後さまざまな業界で対応を迫られるでしょう。
この記事では、それらが必要とされる背景を解説するとともに、それぞれのセキュリティガイドライン、レギュレーションの概要と、脆弱性管理、SBOM対応に関連する部分について解説していきます。
脆弱性管理やSBOM対応が必要とされる背景
はじめにSBOMとは、ソフトウェアの構成表であり、製品、ソフトウェア、ITシステムの内部のソフトウェア部品を把握するための仕組みです。近年、脆弱性管理とSBOM対応が必要とされる背景として、下記が挙げられます。
1.既知の脆弱性をついたサイバー攻撃の脅威
サイバー攻撃の手法が進化し、ますます巧妙になってきています。脆弱性を突かれた場合、サイバー攻撃のリスクが高まるため、脆弱性の管理が重要です。
特にITサプライチェーンを突いた攻撃が増加しており、「Log4Shell」などのソフトウェアサプライチェーンや、ベンダー管理になっているネットワーク機器が標的となる事例が多発しています。成功した攻撃のうち既知の脆弱性を突いたものは8割以上とも言われており、正しく対処をしていれば攻撃を防ぐことができるのです。
2.ソフトウェアの複雑化とソフトウェア依存の増加
現代のソフトウェアは、多くのライブラリーやサードパーティーのコンポーネントに依存しています。これらのコンポーネントに脆弱性があると、ソフトウェア全体のセキュリティが脅かされることになりますが、1つのソフトウェア・製品・ITシステムで数万から数十万のコンポーネントに依存しているため、正確に管理することは困難です。そこでSBOMは、ソフトウェアに含まれる全てのコンポーネントやそのバージョンを明確にすることで、脆弱性の把握と管理を容易にします。
「Log4j」脆弱性の分析
3.ソフトウェアサプライチェーンのリスク管理
ソフトウェアのサプライチェーンは、多くの異なる組織やサプライヤーが関与しているため、複数のリスクが複雑に入り組んでいる状態です。SBOMでサプライチェーンにおける全てのコンポーネントを把握し、それらのセキュリティ状態を追跡することで、リスクを早期に検出し、対応することが可能になります。
ソフトウェアの脆弱性管理やSBOM対応は、セキュリティの強化、リスク管理、ソフトウェアの品質向上にとって不可欠なものになっており、SBOMを利用することで、複雑になり過ぎたソフトウェア製品やITサービス内部のコンポーネントを正確に把握し、リスク管理を行えるようになると期待されています。