ソフトウェア構成分析 (SCA) とは?
ソフトウェア構成分析 (SCA) は、アプリケーション内で使用されるサードパーティライブラリのリスクを特定し管理するためのセキュリティプロセスです。
現代のアプリケーションは、オープンソースライブラリ、サードパーティコンポーネント、またはフレームワークに大きく依存しています。これらの依存関係に存在する脆弱性は、アプリケーション全体を攻撃者にさらす可能性があります。
SCAツールは、依存関係をスキャンして脆弱性、古いパッケージ、およびライセンスリスクを見つけます。
サイバーセキュリティにおけるSCAの重要性
今日のアプリケーションは、サードパーティコンポーネントやオープンソースライブラリで構築されています。攻撃者はしばしばこのコンポーネントを攻撃して脆弱性を悪用します。これは、Log4jの脆弱性のような注目のケースで見られます。
SCAの利点
ソフトウェア構成分析 (SCA) は、組織が以下を行うのを助けます:
- 本番環境に到達する前に使用中のライブラリの脆弱性を検出する
- 法的リスクを避けるためにオープンソースライセンスライブラリを追跡する
- サプライチェーン攻撃のリスクを軽減する
- PCI DSSやNISTなどのセキュリティフレームワークに準拠する
SCAの仕組み
- アプリケーションの依存関係ツリーをスキャンする
- 既知の脆弱性のデータベース(例:NVD)とコンポーネントを比較する
- 古いまたはリスクのあるパッケージにフラグを立て、開発者に更新やパッチを提案する
- オープンソースライセンスの使用状況を可視化する
SCAによって検出される一般的な問題
- 脆弱なオープンソースライブラリ(例:Log4J)
- セキュリティ欠陥のある古い依存関係
- ライセンスの競合(GPL、Apacheなど)
- 公開リポジトリにおける悪意のあるパッケージのリスク
例
開発チームが古いバージョンのログライブラリを使用してウェブアプリケーションを構築します。SCAツールがスキャンし、このバージョンがリモートコード実行(RCE)攻撃に対して脆弱であることを発見します。チームは本番環境にアプリケーションが移行する前に、安全なライブラリに依存関係を更新します。
関連用語
- SAST (静的アプリケーションセキュリティテスト)
- DAST (動的アプリケーションセキュリティテスト)
- IAST (インタラクティブアプリケーションセキュリティテスト)
- アプリケーションセキュリティテスト
- SBOM (ソフトウェア部品表)
- サプライチェーン攻撃