概要

このトピックでは、Application Security Management (ASM) における脅威インテリジェンスについて説明します。

Datadog は、ASM 向けに組み込みの脅威インテリジェンスデータセットを提供しており、これによりセキュリティ活動に対する追加の証拠が得られ、一部のビジネスロジック検出のしきい値が低減されます。

さらに、ASM は Bring Your Own Threat Intelligence (BYOTI) をサポートしており、この機能により、ビジネス特有の脅威インテリジェンスで検出が強化されます。

ベストプラクティス

Datadog は、脅威インテリジェンスの活用方法として以下を推奨しています。

  1. クレデンシャルスタッフィングなどのビジネスロジックに対する脅威の検出ルールのしきい値を低く設定すること。ユーザーは、デフォルトのクレデンシャルスタッフィングルールを複製し、ニーズに応じてカスタマイズすることができます。
  2. セキュリティ活動において、脅威インテリジェンスをレピュテーションの指標として活用すること。

Datadog は、以下を推奨しません。

  1. セキュリティ活動に対応していない脅威インテリジェンスのトレースをブロックすること。IP アドレスの背後には多くのホストが存在する可能性があり、住宅用プロキシが検出された場合、その IP アドレスの背後にあるホストが関連する活動を行っていたことを示しますが、そのホストがマルウェアやプロキシを実行しているホストと、あなたのサービスと通信しているホストが同一であることを保証するものではありません。
  2. すべての脅威インテリジェンスカテゴリーに対してブロックを行うこと。これにより、企業の VPN からの良性のトラフィックや悪意のないトラフィックもブロックされる可能性があります。

ASM の脅威インテリジェンスのフィルタリング

ユーザーは、Signal Explorer と Traces Explorer 上でファセットや検索バーを使用して脅威インテリジェンスをフィルタリングできます。

特定のソースによってフラグ付けされたすべてのトレースを検索するには、次のクエリをソース名と共に使用します。

@threat_intel.results.source.name:<SOURCE_NAME> 

任意のソースからの脅威インテリジェンスを含むすべてのトレースを検索するには、次のクエリを使用します。

@appsec.threat_intel:true 

Bring Your Own Threat Intelligence

Join the Beta!

Bring Your Own Threat Intelligence (BYOTI) は非公開ベータ版です。

ASM は、Datadog リファレンステーブルに格納された脅威インテリジェンスの侵害指標を使用して、トレースの拡充と検索をサポートします。リファレンステーブルを使用すると、Datadog にすでに存在する情報とメタデータを組み合わせることができます。

侵害指標をリファレンステーブルに格納

脅威インテリジェンスは CSV 形式でサポートされ、4 列が必要です。

CSV 構造

フィールドデータ説明必須
ip_addressテキストIPv4 のドット表記形式のリファレンステーブルのプライマリキー。true192.0.2.1
additional_datajsonトレースを強化するための追加データ。false{"ref":"hxxp://example.org"}
categoryテキスト脅威インテリジェンスのカテゴリー。これは、すぐに使える検出ルールで使用されます。trueresidential_proxy
intentionテキスト脅威インテリジェンスの意図。すぐに使える検出ルールで使用されます。true悪意がある
sourceテキストソースの名前とそのサイトへのリンク (例: あなたのチームとチームの Wiki)。true{"name":"internal_security_team", "url":"https://teamwiki.example.org"}

サポートされているカテゴリーと意図の全リストは、Threat Intelligence Facets で確認できます。

CSV 内の JSON には二重引用符が必要です。以下はその例です。
ip_address,additional_data,category,intention,source
192.0.2.1,"{""ref"":""hxxp://example.org""}",scanner,suspicious,"{""name"":""internal_security_team"", ""url"":""https://teamwiki.example.org""}"
192.0.2.2,"{""ref"":""hxxp://example.org""}",scanner,suspicious,"{""name"":""internal_security_team"", ""url"":""https://teamwiki.example.org""}"
192.0.2.3,"{""ref"":""hxxp://example.org""}",scanner,suspicious,"{""name"":""internal_security_team"", ""url"":""https://teamwiki.example.org""}"

独自の脅威インテリジェンスをアップロードして有効化する

新しいリファレンステーブルページで、

  1. テーブルに名前を付けます。この名前は ASM の Threat Intel 構成で参照されます。

  2. CSV をアップロードします。

  3. テーブルスキーマをプレビューし、IP アドレスをプライマリキーとして選択します。

    新しいリファレンステーブル
  4. テーブルを保存します。

  5. Threat Intel で新しいテーブルを見つけ、トグルを選択して有効にします。

    有効なリファレンステーブル

リファレンステーブルとリストを結合してトレースをフィルタリングする

Datadog では、トレーステーブルをリファレンステーブルと結合することで、ASM トレースをフィルタリングできます。

リファレンステーブルをトレースクエリと結合するには、Datadog のトレーステーブルとリファレンステーブルの関連する列に基づいて、それらのテーブルの行を結合します。トレースクエリは、両方のテーブルで一致するものがあるトレースのみを返します。

リファレンステーブルとの結合を使用することで、既存のトレースとの過去の一致を検索し、強化前の影響を評価することができます。

IP アドレスに限らず、任意のフィールドを使用できます。たとえば、リファレンステーブルの特定の URL とセキュリティトレースを関連付けることで、アプリケーションのどの部分が攻撃の標的となっているかを特定できます。これにより、アプリケーション内の脆弱性やリスクの高い領域を正確に特定できます。

例:

  • 調査とインシデント対応。攻撃の IP アドレスやその他のフィールドをアップロードして結合し、そのインシデントに関連するトラフィックを確認することができます。
  • リファレンステーブルの IP アドレスとセキュリティトレースを結合し、例えば IP アドレスを地理的な場所や組織の詳細と関連付けることで、セキュリティチームは攻撃の試みに関するより優れたコンテキストを得ることができます。これにより、攻撃の起源や潜在的な動機を理解するのに役立ちます。

リファレンステーブルにトレースを結合するには

  1. 独自の脅威インテリジェンスをアップロードして有効化するで説明されているように、使用するリファレンステーブルをアップロードします。
  2. トレースをリファレンステーブルと結合するには、TracesAdd を選択し、その後 Join with Reference Table を選択します。
  3. Inner join with reference table で使用するリファレンステーブルを選択します。
  4. where field で、結合に使用する Datadog トレースフィールドを選択します。
  5. column では、結合に使用するリファレンステーブルのフィールドを選択します。
イメージの説明

検出ルール用のトレースの強化

トレースの強化には、侵害の兆候が ASM トレース内の http.client_ip キーの値と一致する場合に、ASM トレースに脅威インテリジェンス属性を含めることが含まれます。これにより、既存のファセットを使用して脅威インテリジェンスと一致するトレースを検索したり、脅威インテリジェンスを検出ルールで活用したりすることが可能になります。

ユーザーインターフェイスにおける脅威インテリジェンス

ASM Traces Explorer でトレースを表示すると、@appsec 属性の下に脅威インテリジェンスデータが表示されます。category 属性と security_activity 属性の両方が設定されています。

脅威インテリジェンスデータを含む appsec 属性の例

@threat_intel.results の下には、どのソースから一致したかの詳細が常に表示されます。

脅威インテリジェンスデータを含む threat_intel 属性の例

その他の参考資料

PREVIEWING: may/unit-testing