Amazon Detective
VPC Flow Logs、CloudTrail、GuardDuty の検出結果を自動的に収集・分析し、セキュリティインシデントの根本原因調査を効率化するサービス
概要
Amazon Detective は、AWS 環境のログデータを自動的に収集してグラフモデルを構築し、セキュリティインシデントの調査と根本原因分析を支援するサービスです。VPC Flow Logs、CloudTrail 管理イベント、GuardDuty の検出結果、EKS 監査ログを統合的に分析し、IP アドレス、IAM プリンシパル、AWS アカウント間の関係性を視覚化します。機械学習によるベースライン分析で通常の行動パターンからの逸脱を検出し、調査の優先順位付けを支援します。
グラフモデルによるセキュリティ調査の革新
従来のセキュリティ調査では、CloudTrail のログを Athena でクエリし、VPC Flow Logs を別途分析し、GuardDuty の検出結果と手動で突き合わせるという作業が必要でした。Detective はこれらのデータソースを自動的に取り込み、エンティティ (IP アドレス、IAM ユーザー、ロール、EC2 インスタンスなど) 間の関係性をグラフデータベースとして構築します。たとえば「不審な API 呼び出しを行った IAM ロールは、どの EC2 インスタンスから AssumeRole されたか」「そのインスタンスはどの IP アドレスと通信していたか」といった調査を、グラフの辿りとして直感的に実行できます。データの取り込みと分析は完全に自動化されており、ユーザーがクエリを書いたりインデックスを設計したりする必要はありません。Detective は最大 12 か月分のデータを保持し、過去のイベントとの相関分析も可能です。Azure Sentinel も同様のセキュリティ分析基盤を提供していますが、Detective は AWS ネイティブのデータソースとの統合が深く、セットアップが数クリックで完了する手軽さが特徴です。
GuardDuty 検出結果からの調査ワークフロー
Detective の最も一般的な利用パターンは、GuardDuty が検出したセキュリティ脅威の深掘り調査です。GuardDuty のコンソールから検出結果を選択し「Detective で調査」をクリックすると、関連するエンティティのプロファイルページに直接遷移します。プロファイルページでは、そのエンティティの過去の API 呼び出しパターン、ネットワーク通信量、地理的なアクセス元の分布がタイムラインとグラフで表示されます。機械学習によるベースラインとの比較により、「通常は東京リージョンからのみアクセスするロールが、突然バージニアリージョンから大量の S3 GetObject を実行した」といった異常を即座に把握できます。クラウドセキュリティ調査の関連書籍 (Amazon) では、インシデントレスポンスの体系的なアプローチが解説されています。調査結果は Finding Group として関連する検出結果をまとめて表示でき、複数の GuardDuty アラートが実は同一の攻撃キャンペーンに属していることを可視化します。
マルチアカウント運用とコスト最適化の実務
Organizations 環境では、Detective の管理者アカウントがメンバーアカウントのデータを集約して分析する構成が推奨されます。GuardDuty と同様に委任管理者を設定でき、セキュリティチームの専用アカウントから組織全体のセキュリティ調査を一元的に実施できます。新規メンバーアカウントの追加時には自動的にデータ取り込みが開始されるため、運用の手間は最小限です。コスト面では、Detective の料金は取り込んだデータ量に基づく従量課金です。VPC Flow Logs と CloudTrail のデータ量が大きい環境ではコストが増加するため、不要なデータソースの除外や、VPC Flow Logs のサンプリング設定を検討する必要があります。30 日間の無料トライアルが提供されており、トライアル期間中に実際のデータ量とコストを確認してから本番導入を判断できます。Detective は Security Hub とも統合されており、Security Hub の検出結果から直接 Detective の調査画面に遷移するワークフローも構築できます。GuardDuty、Security Hub、Detective の 3 サービスを組み合わせることで、検出 → 優先順位付け → 調査の一連のセキュリティ運用フローが完成します。