TOPNetwork > DevSecOps時代に重要なシークレット管理(後)

Network

DevSecOps時代に重要なシークレット管理(後)

2022/04/28

Chris Hughes CSO

 DevSecOpsを取り入れる動きが広がりつつある。開発、セキュリティー、運用の隔たりをなくし、クラウドネイティブ・アーキテクチャーを活用して、セキュアなソフトウエアの実現を目指す動きだ。だがその中で、シークレット管理の問題が広く見られる。

前回から続く)

オープンソースツールと商用ツール

Credit: kristina flour; modified by IDG Comm.
Credit: kristina flour; modified by IDG Comm.

 リポジトリやCI/CDパイプラインにシークレットが紛れ込まないようチェックする手段としては、オープンソースのツールや商用のソリューションがある。オープンソースの主なツールは、GitleaksやTrufflehogが挙げられる。どちらも、Gitリポジトリをスキャンしてシークレットが含まれていないかを確認できる機能を持つ。GitHubやGitLabなど、主要なCIプラットフォームと連携して、シークレットがパイプラインを通じてリポジトリやランタイム環境に入り込むのを防げるほか、pre-commitフックにも対応しており、コミット前にチェックを実行できる。

 こうしたツールで検出できるシークレットには、パスワードやAPIキー、アクセストークンなどがある。また、標準装備のルールのほか、独自に作成したルールを使った検出にも対応でき、組織として防御すべき特定の種類のデータがある場合に役立つ。

 こうしたツールで重要なのはチューニングだ。誤検知があまりに多く混じっていると、膨大な検出結果の中から本当の問題を選別する必要が生じ、開発チームの作業が非常に煩雑になる可能性がある。

 商用ソリューションを扱うベンダーに関しては、このジャンルの代表的な企業の1つになりつつあるのがGitGuardianだ。本記事の冒頭で取り上げたレポートの作成元である。GitGuardianの製品を、バージョン管理システムやDevOpsツール、IaCと連携し、所定のポリシーに基づいてコードのセキュリティーをチェックすることで、シークレットの流出を防ぐことができる。また同社は、GitHubの公開リポジトリに対し、すべてのコミットをチェックする対応も行っている。GitHubのアクティブユーザーは7000万以上いる。その全員が公開リポジトリを使用しているわけではないが、GitGuardianのこうしたモニタリングを通じて、シークレットスプロールの現状について、冒頭で取り上げたレポートにあるようなデータが導き出され、この問題の大きさが浮き彫りになっている。

↑ページ先頭へ