Amazon CloudFront ログを収集する

以下でサポートされています。

このドキュメントでは、Google Security Operations フィードを設定して Amazon CloudFront のログを収集する方法について説明します。

詳細については、Google Security Operations へのデータの取り込みの概要をご覧ください。

取り込みラベルによって、未加工のログデータを構造化 UDM 形式に正規化するパーサーが識別されます。このドキュメントの情報は、取り込みラベル AWS_CLOUDFRONT が付加されたパーサーに適用されます。

始める前に

Amazon S3 バケットが作成されていることを確認します。詳細については、 最初の S3 バケットを作成するをご覧ください。

Amazon CloudFront を構成する

  1. AWS マネジメント コンソールにログインします。
  2. Amazon S3 コンソールにアクセスし、Amazon S3 バケットを作成します。
  3. [オン] をクリックしてロギングを有効にします。
  4. [ログのバケット] フィールドに、Amazon S3 バケット名を指定します。
  5. [ログの接頭辞] フィールドに、必要に応じて接頭辞を指定します。
  6. ログファイルが Amazon S3 バケットに保存されたら、SQS キューを作成して Amazon S3 バケットに関連付けます。

接続のエンドポイントを特定する

S3、SQS、KMS に必要な Identity and Access Management ユーザーと KMS 鍵ポリシーを確認します。

サービスとリージョンに基づいて、次の AWS ドキュメントを参照して接続のエンドポイントを特定します。

フィードを設定する

Google SecOps プラットフォームでフィードを設定するには、次の 2 つのエントリ ポイントがあります。

  • [SIEM Settings] > [Feeds] > [Add New]
  • [Content Hub] > [Content Packs] > [Get Started]

AWS CloudFront フィードを設定する方法

  1. [Amazon Cloud Platform] パックをクリックします。
  2. [AWS CloudFront] ログタイプを見つけます。
  3. 次のフィールドに値を指定します。

    • ソースタイプ: Amazon SQS V2
    • キュー名: 読み取る SQS キュー名
    • S3 URI: バケット URI。
      • s3://your-log-bucket-name/
        • your-log-bucket-name は、実際の S3 バケット名に置き換えます。
    • ソース削除オプション: 取り込みの設定に応じて削除オプションを選択します。

    • ファイルの最大経過時間: 過去数日間に変更されたファイルを含めます。デフォルトは 180 日です。

    • SQS キュー アクセスキー ID: 20 文字の英数字文字列であるアカウント アクセスキー。

    • SQS キュー シークレット アクセスキー: 40 文字の英数字文字列であるアカウント アクセスキー。

    詳細オプション

    • フィード名: フィードを識別する事前入力済みの値。
    • アセット Namespace: フィードに関連付けられた Namespace。
    • 取り込みラベル: このフィードのすべてのイベントに適用されるラベル。
  4. [フィードを作成] をクリックします。

このプロダクト ファミリー内の異なるログタイプに複数のフィードを構成する方法については、プロダクトごとにフィードを構成するをご覧ください。

フィールド マッピング リファレンス

このパーサーは、AWS CloudFront ログから SYSLOG 形式または JSON 形式でフィールドを抽出し、UDM に正規化します。grok パターンを使用してメッセージ文字列を解析し、さまざまなデータ変換(型変換、名前変更など)を処理し、ユーザー エージェントの解析やアプリケーション プロトコルの識別などの追加コンテキストでデータを強化します。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
c-ip principal.ip 直接マッピングされます。principal.asset.ip にもマッピングされます。
c-port principal.port 直接マッピングされます。
cs(Cookie) additional.fields[].key: "cookie"
additional.fields[].value.string_value: 直接マッピングされます。
cs(Cookie) が存在し、agent に「://」が含まれていない場合は、条件付きでマッピングされます。
cs(Host) principal.hostname 直接マッピングされます。principal.asset.hostname にもマッピングされます。 他の URL フィールドが使用できない場合は、target.url の構築に使用されます。
cs(Referer) network.http.referral_url 直接マッピングされます。
cs(User-Agent) network.http.user_agent 直接マッピングされます。network.http.parsed_user_agent にもマッピングされ、「://」が含まれていない場合はコンポーネントに解析されます。
cs-bytes network.sent_bytes 直接マッピングされます。符号なし整数に変換されます。
cs-method network.http.method 直接マッピングされます。
cs-protocol network.application_protocol 大文字に変換された後にマッピングされます。値が標準のアプリケーション プロトコルとして認識されず、cs-protocol-version に「HTTP」が含まれている場合、network.application_protocol は「HTTP」に設定されます。
dport target.port 直接マッピングされます。整数に変換されます。
edge_location principal.location.name 直接マッピングされます。
fle-encrypted-fields additional.fields[].key: "fle-encrypted-fields"
additional.fields[].value.string_value: 直接マッピングされます。
存在する場合は条件付きでマッピングされます。
fle-status additional.fields[].key: "fle-status"
additional.fields[].value.string_value: 直接マッピングされます。
存在する場合は条件付きでマッピングされます。
host principal.hostnameprincipal.asset.hostname 直接マッピングされます。
id principal.asset_id 接頭辞「id: 」付きで直接マッピングされます。
ip target.iptarget.asset.ip 直接マッピングされます。
log_id metadata.product_log_id 直接マッピングされます。
resource additional.fields[].key: "resource"
additional.fields[].value.string_value: 直接マッピングされます。
存在する場合は条件付きでマッピングされます。
result_type additional.fields[].key: "result_type"
additional.fields[].value.string_value: 直接マッピングされます。
存在する場合は条件付きでマッピングされます。
sc-bytes network.received_bytes 直接マッピングされます。符号なし整数に変換されます。
sc-content-len additional.fields[].key: "sc-content-len"
additional.fields[].value.string_value: 直接マッピングされます。
存在する場合は条件付きでマッピングされます。
sc-content-type additional.fields[].key: "sc-content-type"
additional.fields[].value.string_value: 直接マッピングされます。
存在する場合は条件付きでマッピングされます。
sc-status network.http.response_code 直接マッピングされます。整数に変換されます。
ssl-cipher network.tls.cipher 直接マッピングされます。
ssl-protocol network.tls.version 直接マッピングされます。
timestamp metadata.event_timestamp 使用可能な場合は解析されてマッピングされます。 さまざまな形式がサポートされています。
ts metadata.event_timestamp 使用可能な場合は解析されてマッピングされます。ISO8601 形式が想定されています。
url target.url 直接マッピングされます。
url_back_to_product metadata.url_back_to_product 直接マッピングされます。
x-edge-detailed-result-type additional.fields[].key: "x-edge-detailed-result-type"
additional.fields[].value.string_value: 直接マッピングされます。
存在する場合は条件付きでマッピングされます。
x-edge-location additional.fields[].key: "x-edge-location"
additional.fields[].value.string_value: 直接マッピングされます。
存在する場合は条件付きでマッピングされます。
x-edge-request-id additional.fields[].key: "x-edge-request-id"
additional.fields[].value.string_value: 直接マッピングされます。
存在する場合は条件付きでマッピングされます。
x-edge-response-result-type additional.fields[].key: "x-edge-response-result-type"
additional.fields[].value.string_value: 直接マッピングされます。
存在する場合は条件付きでマッピングされます。
x-edge-result-type additional.fields[].key: "x-edge-result-type"
additional.fields[].value.string_value: 直接マッピングされます。
存在する場合は条件付きでマッピングされます。
x-forwarded-for target.iptarget.asset.ip 直接マッピングされます。複数の IP が存在する場合(カンマ区切り)、分割されてそれぞれの UDM フィールドにマージされます。
x-host-header target.hostnametarget.asset.hostname 直接マッピングされます。ip または x-forwarded-forhttp_verb のいずれかが存在する場合は、「NETWORK_HTTP」に設定されます。それ以外の場合は、「GENERIC_EVENT」に設定されます。「AWS_CLOUDFRONT」にハードコードされています。「AWS CloudFront」にハードコードされています。「AMAZON」にハードコードされています。ログエントリが Google Security Operations に取り込まれた時刻。

さらにサポートが必要な場合コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。