Amazon AWS S3 REST API プロトコルの構成オプション
Amazon AWS S3 REST API プロトコルは、 Amazon S3 バケットから AWS CloudTrail ログを収集するアクティブなアウトバウンド・プロトコルです。
以下のファイル・パスについて考えてみます。
<Name>test-bucket</Name><Prefix>MyLogs/</Prefix><Marker>MyLogs/2018-8-9/2018-08-09T23-5925.955097.log.g</Marker><MaxKeys>1000</MaxKeys><IsTruncated>false</IsTruncated></ListBucketResult>
マーカーにおけるファイルの絶対パス名は MyLogs/2018-8-9/2018-08-09T23-59-25.955097.log.gz であり、フォルダー名は 2018-08-09 ではなく、2018-8-9 と表記されています。 この日付形式では、2018 年 9 月 10 日のデータが出現した場合に問題が発生します。 ソートするとき、日付は 2018-8-10 と表示されるため、ファイルは日時順にソートされず、以下のようになります。
2018-10-1
2018-11-1
2018-12-31
2018-8-10
2018-8-9
2018-9-1
2018 年 8 月 9 日のデータが IBM QRadarに到着した後は、日付形式で先行ゼロが使用されていないため、2018 年 9 月 1 日までデータは表示されません。 9 月以降は、2019 年になるまでデータが表示されません。 日付に先行ゼロを使用すれば (ISO 9660)、この問題は発生しません。
先行ゼロを使用すると、ファイルおよびフォルダーは日時順にソートされ、以下のようになります。
2018-08-09
2018-08-10
2018-09-01
2018-10-01
2018-11-01
2018-12-01
ログ・ソースは 1 つのリージョンからのみデータを取得できるため、リージョンごとに別のログ・ソースを使用します。 ディレクトリー接頭部イベント収集方式を使用してログ・ソースを構成する場合は、 Directory Prefix 値のファイル・パスに領域フォルダー名を含めます。
| パラメーター | 説明 |
|---|---|
| プロトコル構成 | Amazon AWS S3 REST API |
| ログ・ソース ID | ログ・ソースの固有名を入力します。 「ログ・ソース ID」には、任意の有効な値を使用でき、特定のサーバーを参照する必要はありません。 「ログ・ソース ID」は、「ログ・ソース名」と同じ値にすることもできます。 DSM ごとに複数の構成済みログ・ソースがある場合は、それぞれに固有の名前を付けてください。 |
| 認証方法 |
|
| アクセス・キー | 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。 この値は、役割が属するアカウントの管理者から取得します。 この値は、パスフレーズ、GUID、アカウント番号など、任意のストリングにすることができます。 詳しくは、 How to use an external ID when 認可 access to your AWS resources to a third party (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html) を参照してください。 「IAM 役割を想定します」を有効にした場合、 「役割外部 ID を想定します」 パラメーターが表示されます。 |
| S3 収集方式 |
|
| 領域名 | SQS キューまたは AWS S3 バケットが含まれているリージョン。 例: us-east-1、eu-west-1、ap-northeast-3 |
| イベント・フォーマット | ファイルに含まれるイベントの形式を選択します。
|
| ヘッダー行を含むCSVデータ | S3 にエクスポートされたログには、CSVヘッダー行が含まれます。 このオプションはCisco SSEログでは必須ですが、レガシーなCisco Umbrellaのdnsログ、proxylog、iplogではオプションです。 |
| CSV 区切り文字 | ソース CSV データの区切り文字。 Event Format パラメータで Generic CSVを選択すると、このパラメータを設定できます。 |
| 出力フォーマット | 出力をキーと値でどのようにフォーマットするかを選択する。 JSONフォーマットは、ヘッダー名と値のフラットなJSONの出力をサポートする。 例: { "header1" : "value1",
"header2" : "value2" }。 Name-Valueフォーマットは、タブで区切られたname=valueのペアを生成する。 例: header1=value1<tab>header2=value2イベント形式パラメータで W3C または汎用 CSV を選択した場合、このパラメータを設定できます。 |
| 空のフィールドの抑制 | すべてのフィールドの名前を生成するには、このオプションをfalseに設定します。 このオプションは、出力サイズを小さくするために、値が空とみなされるフィールドを出力から省略する。 これには、空文字列、空白のみを含む値、ハイフン1つ(-)の値などが含まれる。 イベント形式パラメータで W3C または汎用 CSV を選択した場合、このパラメータを設定できます。 |
| フロー宛先ホスト名 | VPC フロー・ログまたは AWS ネットワーク・ファイアウォール・フロー・ログが送信されるフロー・プロセッサーのホスト名。 「イベント・フォーマット」 パラメーターで AWS VPC フロー・ログ または AWS ネットワーク・ファイアウォール を選択した場合は、このパラメーターを構成できます。 |
| フロー宛先ポート | VPC フロー・ログまたは AWS ネットワーク・ファイアウォール・フロー・ログが送信されるフロー・プロセッサー・ポート。 「イベント・フォーマット」 パラメーターで AWS VPC フロー・ログ または AWS ネットワーク・ファイアウォール を選択した場合は、このパラメーターを構成できます。 |
| ゲートウェイ・ログ・ソースとして使用 (Use as a Gateway Log Source) | 収集されたイベントが QRadar トラフィック分析エンジンを通過し、 QRadar が 1 つ以上のログ・ソースを自動的に検出するようにするには、このオプションを選択します。 このオプションを選択すると、オプションでログ・ソース ID パターンを使用して、処理中のイベントのカスタムログ・ソース IDを定義できます。 |
| ログ・ソース ID パターン (Log Source Identifier Pattern) | ゲートウェイ・ログ・ソースとして使用を選択した場合は、処理中のイベントのカスタム・ログ・ソース ID と、該当する場合に自動的に検出されるログ・ソースのカスタム・ログ・ソース ID を定義できます。 ログ・ソース ID パターン を構成しない場合、QRadar は、不明な汎用ログ・ソースとしてイベントを受け取ります。 カスタム・ログ・ソース ID を定義するには、キーと値のペアを使用します。 このキーは ID フォーマット・ストリングであり、生成されたソース値またはオリジン値です。 この値は、現在のペイロードを評価するために使用される、関連付けられた正規表現パターンです。 この値は、キーをさらにカスタマイズするために使用できるキャプチャー・グループもサポートします。 各パターンを新しい行に入力して、複数のキーと値のペアを定義します。 複数のパターンは、リストされている順序で評価されます。 一致が見つかると、カスタム・ログ・ソース ID が表示されます。 次の例では複数のキーと値のペアの機能を示します。
|
| 予測解析を使用 | このパラメーターを有効にすると、アルゴリズムはイベントごとに正規表現を実行せずにイベントからログ・ソース ID パターンを抽出するため、解析速度が向上します。 ヒント: まれに、アルゴリズムが誤った予測を行うことがあります。 予測解析は、高いイベント率を受け取ることが予想され、より高速な解析を必要とするログ・ソース・タイプに対してのみ有効にします。
|
| 詳細オプションを表示 | このオプションは、イベント・データをカスタマイズする場合に選択します。 |
| ファイル・パターン | このオプションは、「詳細オプションを表示」が「はい」に設定されている場合に有効になります。 プルするファイルに一致するファイル・パターンの正規表現を入力します (例: .*?\.json\.gz)。 |
| ローカル・ディレクトリー (Local Directory) | このオプションは、「詳細オプションを表示」が「はい」に設定されている場合に有効になります。 ターゲット・イベント・コレクターのローカル・ディレクトリー。 このディレクトリーは、AWS S3 REST API プロトコルがイベントの取得を試行する前に存在している必要があります。 |
| S3 エンドポイントの URL (S3 Endpoint URL) | このオプションは、「詳細オプションを表示」が「はい」に設定されている場合に有効になります。 AWS S3 REST API の照会に使用されるエンドポイント URL。 エンドポイント URL がデフォルトと異なる場合は、エンドポイント URL を入力します。 デフォルトは https://s3.amazonaws.comです。 |
| S3 パス形式アクセスの使用 (Use S3 Path-Style Access) | パス形式アクセスを使用することを S3 要求に強制します。 この方法は、AWS によって非推奨になっています。 ただし、他の S3 互換 API を使用する場合に、この方法が必要になることがあります。 例えば、バケット名にピリオド (.)が含まれている場合は、 https://s3.region.amazonaws.com/bucket-name/key-name パス・スタイルが自動的に使用されます。 したがって、このオプションは必須ではありませんが、使用することができます。 |
| プロキシーの使用 (Use Proxy) | QRadar がプロキシーを使用して Amazon Web サービスにアクセスする場合は、 「プロキシーの使用」を有効にします。 プロキシーが認証を必要とする場合、「プロキシー・サーバー」、「プロキシー・ポート」、「プロキシー・ユーザー名」、「プロキシー・パスワード」の各フィールドを構成します。 プロキシーが認証を必要としない場合、「プロキシー IP またはホスト名 (Proxy IP or Hostname)」フィールドを構成します。 |
| 繰り返し (Recurrence) | 新しいデータの有無を確認するスキャンのためにポーリングが行われる頻度。 SQS イベント収集方式を使用している場合、「SQS イベント通知 (SQS Event Notifications)」には最小値の 10(秒) を指定できます。 SQS キューのポーリングはより頻繁に行われる場合があるため、より小さい値を使用できます。 ディレクトリー接頭部イベント収集方式を使用している場合、「特定の接頭部の使用 (Use a Specific Prefix)」には最小値の 60 (秒) または 1M が指定されます。 AWS S3 バケットに対して listBucket 要求が行われるたびに、そのバケットを所有するアカウントに対して費用が発生するため、「繰り返し (Recurrence)」の値を小さくするほど、費用が増加します。 新しいデータに対してポーリングが行われる頻度を決定する時間間隔を入力します。 時間間隔には時間数 (H)、分数 (M)、または日数 (D) の値を含めることができます。 例えば、2H = 2 時間、15M = 15 分、30 = 30 秒です。 |
| EPS スロットル | QRadar が取り込む 1 秒当たりのイベントの最大数。 データ・ソースが EPS スロットルを超える場合、データ収集は遅延されます。 データは引き続き収集され、データ・ソースが EPS スロットルを超えて停止すると取り込まれます。 デフォルトは 5000 です。 |
以下の表では、ディレクトリー接頭部収集方式を使用して監査イベントを収集するための固有のパラメーター値について説明します。
| パラメーター | 説明 |
|---|---|
| S3 収集方式 | 「特定の接頭部を使用」を選択します。 |
| バケット名 | ログ・ファイルが格納されている AWS S3 バケットの名前。 |
| ディレクトリー接頭部 (Directory Prefix) | CloudTrail ログの取得元となる AWS S3 バケット上のルート・ディレクトリー・ロケーション (例: AWSLogs/<AccountNumber>/CloudTrail/<RegionName>/)。 バケットのルート・ディレクトリーからファイルをプルするには、 「ディレクトリー接頭部」 ファイル・パスにスラッシュ (/) を使用する必要があります。 注:
|
以下の表では、SQS イベント収集方式を使用して監査イベントを収集するために固有の値を必要とするパラメーターについて説明します。
| パラメーター | 説明 |
|---|---|
| S3 収集方式 | 「SQS イベント通知 (SQS Event Notifications)」を選択します。 |
| SQS キューの URL (SQS Queue URL) | S3 から ObjectCreated イベントに関する通知を受信するようにセットアップされた SQS キューの https:// で始まる完全な URL。 |