Datadog GitHub Action で脆弱性分析を自動化 | Datadog

Datadog GitHub Action で脆弱性分析を自動化

Author Abilash Ravikumar

Published: 12月 9, 2020

この度、脆弱性分析の拡張と自動化に役立つ Datadog Vulnerability Analysis GitHub Actionがローンチされたことをここでご報告します。このアクションはアプリケーション、Datadog Continuous Profiler、および Snyk の脆弱性分析データベース間のスムーズなインテグレーションを構成し、実用的なセキュリティヒューリスティックを提供します。アクションは GitHub Marketplace から直接インストール可能で、その他のスクリプトやインフラストラクチャーの管理も不要です。お使いの CI/CD パイプラインに直接追加して、わずか数分ですべての新しい環境に対する脆弱性分析を自動化することができます。

アプリケーションのセキュリティを実装する場合、従来の方法だとインスツルメンテーションが困難、大規模すぎる、高額といったいずれかの問題が発生していました。このため、チームは開発プロセスでセキュリティを重視したくてもなかなか難しいという状況に陥っていました。これを効率化するために、使いやすく実用的なセキュリティ機能が求められていたのです。

多くのチームでは既に GitHub Actions を使用してリポジトリからワークフローのオートメーションを実行しています。使い慣れたツールであることから、初回導入のハードルも下がるといえます。Datadog GitHub Action だと従来型の脆弱性分析ツールをインストールする複雑なステップは不要で、Marketplace から迅速かつシームレスにインストールを完了させることができます。

インストールが完了したら、Datadog Continuous Profiler が、本番環境で見られる脆弱性に関する有益なインサイトを収集し、その内容をすばやく表示します。たとえば、Continuous Profiler の集計ビューを確認し、脆弱性がどのぐらいの頻度で現れたかを追跡することができます。

Datadog GitHub のアクションをインストール後、どのぐらいの頻度で脆弱性が生じたかを Datadog Continuous Profiler の集計ビューで追跡できます。

Continuous Profiler での継続的な脆弱性分析

時に、チームが既知の脆弱性に対してはじめてアプリケーションをスキャンした場合、潜在的な露出が長いリストで出てくることに驚くかもしれません。この結果に落胆し、アプリケーションのクリーンアップさえやめたいと感じてしまうこともあるでしょう。しかし、良好なセキュリティ衛生を確立するためには、潜在的な問題を洗い出した一覧ではなく、実用的なアクションに結びつくセキュリティヒューリスティックが必要です。

Datadog Continuous Profiler はどの部分でアプリケーションが実行されているのか、およびその頻度や継続時間に至るまで、システムの詳細をメソッドレベルで可視化することができます。Snyk の脆弱性分析の上に Profiler のデータをレイヤー化することで、Datadog は本番環境で外部ユーザーにより取り込まれた、実際に手の届く範囲にある脆弱性の一覧を提供します。

Datadog GitHub Action の仕組み

GitHub Action では簡単に環境を設定し、 Datadog で脆弱性分析を有効化するために必要なスクリプトを実行することができます。新たなデプロイが行われるたびに、Datadog Vulnerability Analysis GitHub Action がアプリケーションに存在するパッケージとメソッドの一覧をまとめた依存関係のグラフを生成します。これは 最高水準といわれる Snyk の脆弱性データベースにより生成されるもので、結果的にデータベースとアプリケーションの依存関係間のマッピングが作成されます。デプロイごとに新しい依存関係グラフが生成されるため、脆弱性分析も常に最新の状態となります。その後、依存関係グラフは脆弱性分析の起点となる Datadog Continuous Profiler にアップロードされます。

Datadog Github アクションは各デプロイについての新しい依存関係グラフを自動生成し、脆弱性分析を常に最新の状態に保ちます。

Datadog GitHub Action をぜひご利用ください

Datadog Continuous Profiler とネイティブ連携された脆弱性分析を使用することで、本番環境で脆弱性のあるメソッドが呼び出された場合にすばやくそれを検知し、その脆弱性をコードプロファイルからの呼び出しデータと合わせて包括的な調査を行うことができます。GitHub Marketplace を直接開いて Datadog Vulnerability Analysis GitHub Action をインストールするか、Datadog をまだご利用でない場合はにお申し込みください。