The Hacker Newsはこのほど、「Defending Your Commits From Known CVEs With GitGuardian SCA And Git Hooks」において、GitGuardianのソフトウェアコンポジション分析(SCA: Software Composition Analysis)がGit Hooksで利用できるようになったと伝えた。この機能を活用することで、既知の脆弱性を運用環境に追加してしまう問題を防止できるという。

  • Defending Your Commits From Known CVEs With GitGuardian SCA And Git Hooks

    Defending Your Commits From Known CVEs With GitGuardian SCA And Git Hooks

ソフトウェアコンポジション分析

ソフトウェアコンポジション分析(SCA)はソフトウェアに含まれるオープンソースソフトウェア(OSS: Open Source Software)やライブラリを特定し、それらに含まれる脆弱性を検出するツール。近年のソフトウェアはオープンソースコンポーネントを組み合わせて開発されており、脆弱性の多くはオープンソースコンポーネントに起因するとされる。

このような脆弱性の影響を回避するため、開発者はソフトウェアのリリース前にソフトウェアコンポジション分析を使用し、脆弱性を検出して対処する。コードセキュリティプラットフォームの「GitGuardian」にはソフトウェアコンポジション分析機能があり、開発者は手動で問題をスキャンすることができる。

Git Hooksへの対応

The Hacker Newsによると、GitGuardianのソフトウェアコンポジション分析がGitのコミット前フェーズ、またはプッシュ前フェーズにおける自動実行に対応した。

Git Hooksでソフトウェアコンポジション分析を使用する場合は、通常の「ggshield sca scan all」コマンドではなく、「ggshield sca scan pre-commit」コマンドを使用する。このコマンドはスキャンを現在の作業ディレクトリー(最後の変更点のみ)に制限して実行し、依存関係にある新しい脆弱性だけを特定する。

GitGuardianは脆弱性の対処は開発初期に行うことでコストを削減できるとし、ソフトウェアコンポジション分析をコミット前フェーズで使用することを推奨している。また、GitGuardianはソフトウェアコンポジション分析の問い合わせを受け付けており、簡単な会話で2週間無料トライアルが可能。