画面と設定から理解するDatadog CSM
はじめに
この記事はDatadog Advent Calendar 2024の13日目の記事です。
2024年、業務でDatadog Cloud Security Management(以下、Datadog CSM)を導入しました。
Datadog CSMは複数の機能群から構成されるため、最初は全体像を掴むのに苦労しましたが、設定をする中で理解を進めることができました。
この記事ではDatadog CSMの画面と対応する設定を切り口にDatadog CSMを紹介していきます。
Datadog CSMの概要
Datadogが提供するセキュリティプロダクトはDatadog CSM、Datadog ASM(Application Security Management)、Datadog SIEM(Security Information and Event Management)の3つで構成されます。
そのうちDatadog CSMはクラウドインフラを対象に脅威や脆弱性を検出し可視化します。
公式ドキュメントから説明を引用します。
- Threats: 環境全体のファイル、ネットワーク、プロセスのアクティビティを監視し、インフラストラクチャーへの脅威をリアルタイムで検出します。
- Misconfigurations: 本番環境のセキュリティ衛生およびコンプライアンスポスチャを追跡し、監査証拠の収集を自動化し、攻撃に対する脆弱性を残す誤構成を修正できます。
- Identity Risks: 組織の AWS IAM リスクを詳細に視覚化し、アイデンティティリスクの継続的な検出と解決を可能にします。[1]
- Vulnerabilities: インフラストラクチャーの観測可能性を活用し、組織のコンテナやホストの脆弱性を検出、優先順位付け、管理します。
CNAPPとの対応関係
いわゆるCNAPP(Cloud Native Application Protection Platform)を構成する要素をDatadog CSMの機能に対応させると以下のようになります。[2]
要素名 | 役割 | Datadogの機能名 |
---|---|---|
CSPM(Cloud Security Posture Management) | クラウド設定の保護 | Misconfigurations |
CIEM(Cloud Infrastructure Entitlement Management) | クラウドアイデンティティの保護 | Identity Risks |
CWPP(Cloud Workload Protection Platform) | クラウドワークロードの保護 | Threats |
KSPM(Kubernetes Security Posture Management) | Kubernetesの保護 | Misconfigurations/Threats |
IaC(Infrastructure as Code) | インフラのコード化とその保護 | IaC Scanning[3] |
画面ごとに見る
CSMの機能がどのリソースを対象にしているかは公式ドキュメントにも対応表があります。
私は最初、この表だけでは画面と機能の対応関係がつかめなかったため、Datadog CSMの画面を示しながら解説していきます。
Datadog CSMのヘッダ
Signals画面
Signals画面はThreatsの機能に対応しています。
Linuxホストの場合この機能を利用するためにはホストにインストールしたDatadog Agentの設定のうちruntime_security_config
を有効にします。[4]
/etc/datadog-agent/datadog.yaml
/etc/datadog-agent/security-agent.yaml
/etc/datadog-agent/system-probe.yaml
上記3ファイルで有効にする必要がある点に注意です。
Datadog Agentのインストールコマンドに環境変数を設定することでも有効化できます。
DD_COMPLIANCE_CONFIG_ENABLED=true DD_RUNTIME_SECURITY_CONFIG_ENABLED=true DD_API_KEY=<DATADOG_API_KEY> DD_SITE="datadoghq.com" bash -c "$(curl -L https://install.datadoghq.com/scripts/install_script_agent7.sh)"
Datadog Agentを設定することからこの機能は、Linuxなどホストのアクティビティを監視して、不審な挙動をSignalsとして検出する機能であることが分かります。
Explorers画面
ExplorersのサブカテゴリがそのままDatadog CSMの機能名に一致しています。
Misconfigurations画面
Misconfigurationsはクラウドインテグレーションからリソースの設定を取得し問題がないかをチェックします。[5]
例としてAWSインテグレーションの設定ポイントを挙げます。
Datadog Integrationを作成するCloudFormationかStackSetsのどちらでもCloud Security Posture Managementの項目を有効にします。
個人的に初見でわかりにくいと感じたポイントで、この設定項目がMisconfigurationsに対応しています。
CloudFormationを展開後、AWS Integrationの設定画面からEnable Cloud Security Managementにチェックを入れると完了です。[6]
Vulnerabilities画面
VulerabilitiesはLinuxホストやコンテナの脆弱なパッケージや依存を検出し、可視化します。
クラウドインテグレーションから設定されるMisconfigurationsとIdentity Risksの間に挟まれていますが、この機能はDatadog Agent経由で情報を収集します。[7]
ここは個人的に混乱しやすいポイントと考えています。
Signals(Threats)の設定と同様に/etc/datadog-agent/datadog.yaml
のsbom
を有効にします。[8]
Identity Risks画面
Identity Risksはクラウドインテグレーションで取得するリソースの内、IAMに特化して問題を検出します。
Misconfigurationsと同様のクラウドインテグレーションに加えて、Identity RisksはDatadog CSMの最上位プランであるEnterpriseプランでのみ利用できます。[9]
ここまでDatadog CSMのプランと費用には触れていませんでしたが、Identity RisksのみEnterpriseプランで提供され、料金が異なることを覚えておきましょう。
その他の画面
ここまで設定すれば全ての機能が利用できます。
その他の画面は調査や監査に役立つ画面のため、軽く紹介します。
- Overview画面: CSM全体を俯瞰できる画面です。
- Inbox画面: 発見された問題の個別項目を一覧できる画面です。
- Catalogs画面: リソースごとに情報を閲覧できる画面です。
- Compliance画面: CISなどのコンプライアンスの準拠状況を閲覧できる画面です。
まとめ
Datadog CSMの機能に対応する画面と設定方法をそれぞれ見てきました。
公式ドキュメント、料金ページ、画面で用語が異なる場合に、どの機能を指しているかを理解するには設定方法から逆算するのが効果的です。
また、すでにDatadogを導入済みのユーザーは既存の設定を少し追加するだけで機能を有効化でき、Datadog CSMの導入が非常に容易な点に気づかれていることでしょう。
これからDatadog CSMを利用して得られた知見は別の記事にしたいです。
-
日本語ドキュメントの表記をそのまま引用していますが、2024年12月現在はAWS IAM以外にも対応しています ↩︎
-
CNAPPを構成する要素の定義はいくつかあり、よく挙がる機能を記載しています ↩︎
-
2024年12月現在Private Previewでの提供 ↩︎
-
ECSやKubernetesに導入する際も類似の設定項目を有効化します。 ↩︎
-
クラウドインテグレーションは今年のアドベントカレンダーで詳細な解説記事が書かれているので、公式ドキュメントと合わせて参照することをお勧めします。https://qiita.com/AoTo0330/items/33d7b58a3cfddcbd3fe2 ↩︎
-
または、Datadog CSMの設定画面からもトグルで有効化できます ↩︎
-
AWSではエージェント不要でリソースをスキャンできるAgentless Scannerも提供されています ↩︎
-
こちらもECSやKubernetesに導入する際、類似の設定項目を有効化します。 ↩︎
-
2024年12月現在、英語版の料金ページはCSM Proでも利用できると表記されていました。最新の情報が確認でき次第反映します。https://www.datadoghq.com/pricing/?product=cloud-security-management#products ↩︎
Discussion