Amazon GuardDuty でデータソースを使用する方法 - Amazon GuardDuty

Amazon GuardDuty でデータソースを使用する方法

AWS 環境での予期されない不正なアクティビティを検出するために、GuardDuty は、このトピックで説明されているソースからのデータを分析および処理します。GuardDuty は、これらのデータソースを使用して、IAM アクセスキー、EC2 インスタンス、S3 バケット、および Amazon EKS リソースという AWS リソースタイプに関連する異常を検出します。これらのデータソースからGuardDuty への通信中、ログデータはすべて暗号化されます。GuardDuty は、プロファイリングや異常の検出用のログから様々なフィールドを抽出して、そのログを破棄します。

次のセクションでは、GuardDuty でサポートされている各データソースを使用する方法を説明します。

AWS CloudTrail イベントログ

AWS CloudTrail は、アカウントの AWS API コールの履歴を提供します。これには、AWS マネジメントコンソール、AWS SDK、コマンドラインツール、特定の AWS のサービスを使用した API コールが含まれます。CloudTrail では、CloudTrail をサポートするサービス用の AWS API を呼び出したユーザーとアカウント、呼び出し元のソース IP アドレス、および呼び出しの発生日時を特定することもできます。詳細については、「AWS CloudTrail ユーザーガイド」を参照してください。GuardDuty は CloudTrail 管理イベントと、オプションで S3 用の CloudTrail データイベントの両方をモニタリングできます。

GuardDuty を有効にすると、直ちに CloudTrail イベントログの分析が開始されます。CloudTrail 管理および S3 データイベントを CloudTrail から直接、独立イベントストリームと重複イベントストリームで消費します。GuardDuty で CloudTrail イベントへのアクセスには追加料金はかかりません。

GuardDuty は CloudTrail イベントを管理したり、いかなる方法にでも既存の CloudTrail 設定に影響を与えたりすることはありません。CloudTrail イベントのアクセスと保持を直接管理するには、CloudTrail サービスコンソールまたは API を使用する必要があります。詳細については、「CloudTrail Event 履歴でのイベントの表示」を参照してください。

GuardDuty が AWS CloudTrail グローバルイベントを処理する方法

GuardDuty が CloudTrail をデータソースとして使用する方法に関するもう 1 つの重要な点は、CloudTrail グローバルイベントの取扱いと処理です。ほとんどのサービスの場合、イベントはアクションが発生したリージョンで記録されます。IAM、AWS Security Token Service、Amazon S3、Amazon CloudFront、Route 53 などのグローバルサービスに関して、イベントはグローバルサービスを含む追跡に配信され、米国東部 (バージニア北部) リージョンで発生したとログに記録します。詳細については、「About Global Service Events」(グローバルサービスイベントについて) を参照してください。

GuardDuty は、CloudTrail がすべてのリージョンに送信するグローバルイベントを含むリージョンに届くすべてのイベントを処理します。これにより、GuardDuty はリージョンこどにユーザープロファイルとロールプロファイルを維持し、リージョンを超えて使用される悪意のある認証情報を正確に検出できます。

AWS は、サポートされているすべてのリージョンで GuardDuty を有効にすることを強くお勧めします。このように設定することで、GuardDuty はアクティブに使用されていないリージョンでも、許可されていないアクティビティや異常なアクティビティに関する検出結果を生成できます。これにより、GuardDuty がグローバルな AWS のサービス用の AWS CloudTrail イベントをモニタリングできます。GuardDuty がサポートされているすべてのリージョンで有効になっていない場合、グローバルサービスに関連するアクティビティを検出する機能は低下します。

AWS CloudTrail 管理イベント

管理イベントは、コントロールプレーンイベントとも呼ばれます。これらのイベントでは、AWS アカウントのリソースで実行される管理オペレーションについてのインサイトが得られます。

次は、GuardDuty がモニタリングする CloudTrail 管理イベントの例です。
  • セキュリティの設定 (IAM AttachRolePolicy API オペレーション)

  • データをルーティングするルールの設定 (Amazon EC2 CreateSubnet API オペレーション)

  • ログ記録の設定 (AWS CloudTrail CreateTrail API オペレーション)

S3 の AWS CloudTrail データイベント

データプレーンオペレーションとして知られるデータイベントは、リソース上またはリソース内で実行したリソースオペレーションに関するインサイトを提供します。それらは、多くの場合、高ボリュームのアクティビティです。

次は、GuardDuty がモニタリングできる S3 の CloudTrail データイベントの例です。
  • GetObject API オペレーション

  • PutObject API オペレーション

  • ListObjects API オペレーション

  • DeleteObject API オペレーション

S3 データイベントモニタリングは、新しいアカウントで、デフォルトで有効となっています。ただし、このデータソースはオプションで、任意のアカウントまたはリージョンでいつでも有効または無効にできます。データソースとしての Amazon S3 の設定の詳細については、「Amazon GuardDuty における Amazon S3 保護」を参照してください。

Kubernetes 監査ログ

Kubernetes 監査ログは、ユーザー、Kubernetes API を使用するアプリケーション、コントロールプレーンからのアクティビティなど、Amazon EKS クラスター内のシーケンシャルアクションをキャプチャします。監査ログは、すべての Kubernetes クラスターのコンポーネントです。詳細については、Kubernetes ドキュメントの「監査」を参照してください。

Amazon EKS を使用すると、EKS コントロールプレーンのログ記録機能を通じて、Kubernetes 監査ログを Amazon CloudWatch Logs として取り込むことができます。GuardDuty で Kubernetes 保護を有効にすると、GuardDuty は、直ちに Amazon EKS リソースの Kubernetes 監査ログの分析を開始します。フローログの独立かつ重複ストリーミングを通じて、Amazon EKS コントロールプレーンログ機能から直接、監査ログイベントを使用します。このプロセスでは、追加の設定は不要で、既存の Amazon EKS コントロールプレーンのログ設定 (存在する場合) に影響はありません。

GuardDuty は、Amazon EKS コントロールプレーンのログ記録を管理したり、アカウントの Kubernetes 監査ログをアクセス可能な状態にしたりしません (Amazon EKS 向けに有効にしていない場合)。Kubernetes 監査ログへのアクセスと保持期間を管理するには、Amazon EKS コントロールプレーンのログ機能を設定する必要があります。詳細については、Amazon EKS ドキュメントの「コントロールプレーンログの有効化と無効化」を参照してください。

Kubernetes 監査ログモニタリングは、すべての GuardDuty アカウントで、デフォルトで有効になっています。ただし、このデータソースはオプションで、任意のアカウントまたはリージョンでいつでも有効または無効にできます。データソースの Kubernetes 監査ログの設定の詳細については、「Amazon GuardDuty での Kubernetes 保護」を参照してください。

VPC フローログ

Amazon VPC の VPC フローログ機能により、環境内のネットワークインターフェイスとの間で送受信される IP トラフィックに関する情報がキャプチャされます。

GuardDuty を有効にすると、すぐに VPC フローログのデータの分析が開始されます。GuardDuty は、フローログの単独ストリームおよび重複ストリームを通じて、VPC フローログ機能から直接、VPC フローログイベントを消費します。このプロセスによる既存のフローログ設定への影響はありません。

GuardDuty はフローログを管理したり、アカウントへのアクセスを可能にしたりしません。フローログのアクセスと保持期間を管理するには、VPC フローログ機能を設定する必要があります。

フローログへの GuardDuty アクセスには追加料金はかかりません。ただし、保持するフローログを有効にするか、アカウントで使用した場合は、既存の料金表が適用されます。詳細については、「VPC flow logs」(VPC フローログ) を参照してください。

DNS ログ

Amazon EC2 インスタンス (デフォルト設定) で AWS DNS リゾルバーを使用している場合、GuardDuty は、内部の AWS DNS リゾルバーを介して、リクエストと応答の DNS ログにアクセスして処理することができます。OpenDNS や GoogleDNS などの別の DNS リゾルバーを使用している場合、または独自の DNS リゾルバーを設定している場合、GuardDuty は、このデータソースのデータにアクセスして処理できません。

GuardDuty を有効にすると、独立データストリームから DNS ログの分析がすぐに開始されます。このデータストリームは、Route 53 リゾルバークエリログ記録機能を通じて提供されるデータとは別のものです。この機能の設定は、GuardDuty の解析には影響しません。