Amazon Detective 入門 - セキュリティインシデントの調査と分析
「GuardDutyからアラートが来た。いつ、誰が、どのAPIを使って、どのIPアドレスから攻撃したのか?」 こうした疑問に答えるための調査作業は、ログの収集・整理・相関分析など非常に時間がかかるものです。 Amazon Detectiveは、AWS上のログデータを自動的に収集・分析し、インシデント調査を効率化するサービスです。
Amazon Detective とは
Amazon Detectiveは、VPC Flow Logs, CloudTrail, EKS Audit Logsなどのログデータを自動的に収集し、機械学習とグラフ理論を用いて「振る舞いグラフ(Behavior Graph)」を作成します。 これにより、セキュリティアナリストは複雑なクエリを書くことなく、インタラクティブなグラフを通じてインシデントの根本原因を調査できます。
主な特徴
- 自動データ収集とETL: ログの有効化やETLパイプラインの構築は不要です。Detectiveを有効にするだけで、自動的に分析が開始されます。
- インタラクティブな可視化: 通信の急増や、普段行わないAPIコールなどの異常検知を、視覚的なチャートで確認できます。
- 長期保存: 元のログ設定に関わらず、Detective内で調査用データを最大1年間保持します。
GuardDuty との関係
Detectiveは単独で使うよりも、Amazon GuardDutyと組み合わせて使うことが一般的です。
- Amazon GuardDuty: 「何かおかしい」を検知する(アラーム)
- Amazon Detective: 「何が起きたのか」を調査する(原因究明)
GuardDutyのコンソールには「Detectiveで調査する」というボタンがあり、クリックすると対象の期間・リソースに絞り込まれた状態でDetectiveグラフが開きます。これにより、シームレスな調査フローが実現します。
調査できることの例
1. 侵害された可能性のあるEC2インスタンスの調査
- そのインスタンスは、いつから不審なIPと通信を始めたか?
- 通常の通信パターンとどう違うか?(送信バイト数の急増など)
- そのインスタンスで使用されたIAMロールは何か?
2. IAMユーザーの乗っ取り調査
- 普段アクセスしないリージョンからのAPIコールはないか?
- 「不可能な移動(Impossible Travel)」が検出されていないか?
- そのユーザーが実行したAPIアクションの履歴(時系列)
導入のメリット
スキル不要の相関分析
高度なSQLやログ解析ツールの知識がなくても、GUIベースで「IPアドレス A と通信したインスタンス B」といった関係性を追跡できます。
インシデント対応時間の短縮
生ログをgrepするのとは異なり、整理されたグラフ情報からスタートできるため、初動対応(トリアージ)の時間を大幅に短縮できます。
まとめ
Amazon Detectiveは、セキュリティインシデントが発生した際の「ドリルダウン調査」を強力に支援します。 GuardDutyを有効にしている環境であれば、併せてDetectiveも有効化しておくことで、万が一の際の調査能力を大きく向上させることができます。 最初の30日間は無料トライアルが利用可能です。