Amazon Web Services プロトコルおよび Kinesis データ・ストリームを使用した Amazon CloudFront ログ・ソースの追加

Amazon CloudFront ログを Amazon Kinesis データ・ストリームから収集する場合は、 Amazon Web Services プロトコルを使用して Amazon CloudFront が QRadar と通信できるように、 QRadar Console でログ・ソースを追加します。

手順

  1. 以下の表には、 Amazon Web Services プロトコルを使用して Amazon CloudFront から監査イベントを収集するために固有の値を必要とするパラメーターの説明が示されています。
    表 1. Amazon Kinesis データ・ストリームの Amazon Web Services ログ・ソース・パラメーター
    パラメーター 説明
    プロトコル構成 「プロトコル構成」リストから「Amazon Web Services」を選択します。
    認証方法
    アクセス・キー ID (Access Key ID)/ 秘密鍵 (Secret Key)
    どの場所からでも使用できる標準認証。
    EC2 インスタンス IAM ロール (EC2 Instance IAM Role)
    QRadar 管理対象ホストが AWS EC2 インスタンスで実行されている場合、このオプションを選択すると、認証のためにインスタンスに割り当てられたメタデータの IAM 役割が使用されます。 鍵は必要ありません。 この方法は、AWS EC2 コンテナー内で実行されている管理対象ホストに対してのみ動作します。
    アクセス・キー

    AWS ユーザー・アカウント用のセキュリティー資格情報を構成したときに生成されたアクセス・キー ID。

    「アクセス・キー ID (Access Key ID)/ 秘密鍵 (Secret Key)」または「IAM ロールの指定」を選択した場合は、「アクセス・キー (Access Key)」パラメーターが表示されます。

    秘密鍵

    AWS ユーザー・アカウント用のセキュリティー資格情報を構成したときに生成された秘密鍵。

    「アクセス・キー ID (Access Key ID)/ 秘密鍵 (Secret Key)」または「IAM ロールの指定」を選択した場合は、「秘密鍵 (Secret Key)」パラメーターが表示されます。

    IAM ロールの指定 アクセス・キーまたは EC2 インスタンス IAM ロールで認証するには、このオプションを有効にします。 これにより、アクセス用の IAM ロールを一時的に指定することができます。
    ロール ARN の指定 (assume Role ARN) 指定するロールのフル ARN。 先頭は arn: でなければならず、先頭や末尾にスペースや ARN 内のスペースを含めることはできません。

    「IAM ロールの指定」を有効にすると、「ロール ARN の指定 (assume Role ARN)」パラメーターが表示されます。

    ロール・セッション名を想定 指定するロールのセッション名。 デフォルトは QRadarAWSSessionです。 変更する必要がない場合は、デフォルトのままにしてください。 このパラメーターで使用できる文字は、英数字の大文字と小文字、アンダースコアー、および =,.@- のみです。

    「IAM ロールの指定」を有効にすると、「ロール・セッション名の指定 (Assume Role Session Name)」パラメーターが表示されます。

    ロール外部 ID を想定

    「ロール外部 ID を想定」 は、別のアカウントのロールを引き受けるために必要なオプションの ID です。

    役割が属するアカウント管理者から外部 ID が提供された場合は、その値を 「役割外部 ID を想定」 パラメーターに挿入します。

    この値には、ストリング、パスフレーズ、GUID、またはアカウント番号のいずれかを指定できます。 詳しくは、 AWS の資料「 Using an external ID for third-Party access」を参照してください。

    リージョン ログの収集元の Amazon Web Service に関連付けられている各リージョンを切り替えます。
    AWS サービス 「AWS サービス」 リストから、 「Kinesis データ・ストリーム (Kinesis Data Streams)」を選択します。
    Kinesis データ・ストリーム (Kinesis Data Streams)

    データの取り込み元の Kinesis データ・ストリーム。

    Kinesis 拡張オプションを有効にする (Enable Kinesis Advanced Options) 以下のオプションの拡張構成値を有効にします。 拡張オプション値は、このオプションが選択されている場合にのみ使用されます。それ以外の場合は、デフォルト値が使用されます。
    ストリームの初期位置 (Initial Position in Stream)
    このオプションは、新規に構成されたログ・ソースでプルするデータを制御します。 使用可能な最新のデータをプルするには、「最新」を選択します。 使用可能な最も古いデータをプルするには、「水平トリム (Trim Horizon)」を選択します。
    Kinesis ワーカー・スレッド数 (Kinesis Worker Thread Count)
    Kinesis データ・ストリームの処理に使用するワーカー・スレッドの数。 各ワーカー・スレッドは、レコード・サイズとシステム負荷に応じて 1 秒あたり約 10000 から 20000 イベントを処理できます。 ログ・ソースがストリーム内の新規データを処理できない場合は、ここでスレッドの数を最大 16 まで増やすことができます。 許可される範囲は 1 から 16 です。 デフォルト値は 2 です。
    チェックポイント間隔 (Checkpoint Interval)
    データ・シーケンス番号のチェックポイントを指定する間隔 (秒単位)。 Kinesis データ・ストリームのシャードからの各レコードには、シーケンス番号があります。 位置のチェックポイントを指定すると、処理が失敗した場合やサービスが再始動した場合に、このシャードは同じ時点から処理を再開できます。 この間隔を頻繁にするほど、データの重複は減少しますが、Amazon Dynamo DB の使用量が増加します。 許可される範囲は 1 から 3600 秒です。 デフォルトは 10 秒です。
    Kinesis アプリケーション (Kinesis Application)
    このログ・ソースが Kinesis データ・ストリームのすべての使用可能なシャードのデータをコンシュームするようにするには、このオプションをブランクのままにします。 複数のイベント・プロセッサーの複数のログ・ソースで、損失や重複なしにログの取り込みを拡大するには、それらのログ・ソースで共通の Kinesis アプリケーションを使用します (例: ProdKinesisConsumers)。
    区画 (Partition)
    パーティション名を指定して Kinesis データ・ストリームの特定のパーティションからデータを収集するには、このオプションを選択します。
    元のイベントの抽出 (Extract Original Event)

    Kinesis データ・ストリームに追加された元のイベントのみを転送します。

    Kinesis ログは、受信したイベントを追加のメタデータでラップします。 AWS に送信された元のイベントのみを収集し、Kinesis での追加のストリーム・データは不要な場合は、このオプションを選択します。

    元のイベントは、Kinesis ログから抽出されるメッセージ・キーの値です。 次の Kinesis ログ・イベントの例では、Kinesis ログから抽出された元のイベントが強調表示されたテキストで示されています。

    {"owner":"123456789012","subscriptionFilters":["allEvents"],
    "logEvents":[{"id":"35093963143971327215510178578576502306458824699048362100",
    "message":"{\"eventVersion\":\"1.05\",\"userIdentity\":{\"type\":\"AssumedRole\",
    \"principalId\":\"ARO1GH58EM3ESYDW3XHP6:test_session\",\"arn\":\"arn:aws:sts::123456789012:assumed-role\/CVDevABRoleToBeAssumed\/test_visibility_session\",
    \"accountId\":\"123456789012\",\"accessKeyId\":\"ASIAXXXXXXXXXXXXXXXX\",\"sessionContext\":{\"sessionIssuer\":{\"type\":\"Role\",\"principalId\":\"AROAXXXXXXXXXXXXXXXXX\",
    \"arn\":\"arn:aws:iam::123456789012:role\/CVDevABRoleToBeAssumed\",\"accountId\":\"123456789012\",
    \"userName\":\"CVDevABRoleToBeAssumed\"},\"webIdFederationData\":{},\"attributes\":{\"mfaAuthenticated\":\"false\",
    \"creationDate\":\"2019-11-13T17:01:54Z\"}}},\"eventTime\":\"2019-11-13T17:43:18Z\",\"eventSource\":\"cloudtrail.amazonaws.com\",
    \"eventName\":\"DescribeTrails\",\"awsRegion\":\"ap-northeast-1\",\"sourceIPAddress\":\"192.0.2.1\",\"requestParameters\":null,\"responseElements\":null,
    \"requestID\":\"41e62e80-b15d-4e3f-9b7e-b309084dc092\",\"eventID\":\"904b3fda-8e48-46c0-a923-f1bb2b7a2f2a\",\"readOnly\":true,\"eventType\":\"AwsApiCall\",
    \"recipientAccountId\":\"123456789012\"}","timestamp":1573667733143}],"messageType":"DATA_MESSAGE","logGroup":"CloudTrail\/DefaultLogGroup","logStream":"123456789012_CloudTrail_us-east-2_2"}
    ゲートウェイ・ログ・ソースとして使用 (Use as a Gateway Log Source)

    収集されたイベントが QRadar トラフィック分析エンジンを通過し、 QRadar が 1 つ以上のログ・ソースを自動的に検出するようにするには、このオプションを選択します。

    このオプションを選択すると、オプションでログ・ソース ID パターンを使用して、処理中のイベントのカスタムログ・ソース IDを定義できます。

    ログ・ソース ID パターン (Log Source Identifier Pattern)

    ゲートウェイ・ログ・ソースとして使用を選択した場合は、処理中のイベントのカスタム・ログ・ソース ID と、該当する場合に自動的に検出されるログ・ソースのカスタム・ログ・ソース ID を定義できます。 ログ・ソース ID パターン を構成しない場合、QRadar は、不明な汎用ログ・ソースとしてイベントを受け取ります。

    カスタム・ログ・ソース ID を定義するには、キーと値のペアを使用します。 このキーは ID フォーマット・ストリングであり、生成されたソース値またはオリジン値です。 この値は、現在のペイロードを評価するために使用される、関連付けられた正規表現パターンです。 この値は、キーをさらにカスタマイズするために使用できるキャプチャー・グループもサポートします。

    各パターンを新しい行に入力して、複数のキーと値のペアを定義します。 複数のパターンは、リストされている順序で評価されます。 一致が見つかると、カスタム・ログ・ソース ID が表示されます。

    次の例では複数のキーと値のペアの機能を示します。
    パターン
    VPC=\sREJECT\sFAILURE
    $1=\s(REJECT)\sOK
    VPC-$1-$2=\s(ACCEPT)\s(OK)
    イベント
    {LogStreamName: LogStreamTest,Timestamp: 0,Message: ACCEPT OK,IngestionTime: 0,EventId: 0}
    結果としてのカスタム・ログ・ソース ID
    VPC-ACCEPT-OK
    予測解析を使用 このパラメーターを有効にすると、アルゴリズムはイベントごとに正規表現を実行せずにイベントからログ・ソース ID パターンを抽出するため、解析速度が向上します。
    ヒント: まれに、アルゴリズムが誤った予測を行うことがあります。 予測解析は、高いイベント率を受け取ることが予想され、より高速な解析を必要とするログ・ソース・タイプに対してのみ有効にします。
    プロキシーの使用 (Use Proxy)

    QRadar がプロキシーを使用して Amazon Web Service にアクセスする場合は、このオプションを選択します。

    プロキシーが認証を必要とする場合、「プロキシー・サーバー」「プロキシー・ポート」「プロキシー・ユーザー名」「プロキシー・パスワード」の各フィールドを構成します。

    プロキシーが認証を必要としない場合、「プロキシー IP またはホスト名 (Proxy IP or Hostname)」フィールドを構成します。

    EPS スロットル

    QRadar が取り込む 1 秒当たりのイベントの最大数。

    データ・ソースが EPS スロットルを超える場合、データ収集は遅延されます。 データは引き続き収集され、データ・ソースが EPS スロットルを超えて停止すると取り込まれます。

    デフォルトは 5000 です。

  2. QRadar が正しく構成されていることを確認するには、以下の表を参照して、構文解析されたイベント・メッセージの例を確認してください。

    実際の CloudFront ログは、Kinesis データ・ストリームのタブ区切り値 (TSV) ペイロードでラップされます。

    表 2. Amazon CloudFront DSM でサポートされる Kinesis データ・ストリーム・サンプル・メッセージ
    イベント名 下位カテゴリー サンプル・ログ・メッセージ
    HIT_OK 要求が成功しました
    1663583003.838	2001:DB8:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF	timeToFirstByte	status	scbytes	GET	https	host	/uri	csbytes	xEdgeLocation	xedgeRequestId	xHostHeader	timeTaken	csProtocolVersion	cIpversion	userAgent	csReferer	cs-cookie	csUriQuery	xEdgeResultResponseType	xForwardedFor	sslProtocol	sslCipher	xEdgeResultType	fleEncryptedFields	fleStatus	scContentType	scContentLen	scRangeStart	scRangeEnd	80	xEdgeDetailedResultType	country	csAcceptEncoding	csAccept	cacheBehaviour	csHeader	csHeaderName	csHeaderCount