performing-cloud-forensics-with-aws-cloudtrail について
AWS CloudTrail を使ったクラウドセキュリティインシデントのフォレンジックガイドです。不審な API 操作や認証情報の露出を調べるインシデント対応チーム向けに、ログ検索、異常活動の抽出、時系列の再構成、報告書の作成を説明します。
主な機能
- 01boto3 による CloudTrail イベント検索
- 02Athena による S3 の履歴ログ分析
- 03ユーザーエージェント、IP、イベントで絞り込み
- 04攻撃行動の時系列再構成
- 05データアクセスと IAM 変更の確認
- 06フォレンジックレポートの作成
活用シーン
- 01AWS アカウント侵害の疑いを調査
- 02不正な API 呼び出しや認証情報の露出を追跡
- 03S3 データ流出や IAM 権限昇格を分析
- 04API 操作からインシデントの時系列を再構成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ mukul975/ anthropic-cybersecurity-skills --skill performing-cloud-forensics-with-aws-cloudtrailインストール後、Claude Code で/performing-cloud-forensics-with-aws-cloudtrailを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
LICENSEreferences/api-reference.mdscripts/agent.py詳細
AWS CloudTrail によるクラウドフォレンジックの実施
使用する場面
- AWS アカウントの侵害が疑われる場合
- 不正な API 呼び出しや認証情報の漏えいを検知した後
- クラウドインフラに関するインシデント対応中
- S3 データの持ち出しや IAM 権限昇格を分析する場合
- インシデント後のフォレンジックタイムラインを再構築する場合
前提条件
- CloudTrail(管理イベントとデータイベント)が有効になっている AWS アカウント
- cloudtrail:LookupEvents、s3:GetObject、athena:StartQueryExecution の IAM 権限
- boto3 Python SDK がインストールされていること
- CloudTrail ログが S3 に配信され、必要に応じて Athena テーブルが設定されていること
- 適切な認証情報で AWS CLI が設定されていること
ワークフロー
- 調査範囲の特定:期間、影響を受けたアカウント、侵害された認証情報を特定します。
- CloudTrail のクエリ:boto3 の lookup_events または Athena を使用して、関連する API イベントを取得します。
- インジケーターによる絞り込み:不審なユーザーエージェント、送信元 IP、イベント名を検索します。
- タイムラインの再構築:API 呼び出しから攻撃者の行動を時系列順に整理します。
- アクセスパターンの分析:データアクセス、IAM の変更、リソースの変更を特定します。
- 永続化の特定:新しい IAM ユーザー、アクセスキー、ロール、Lambda 関数がないか確認します。
- レポートの作成:調査結果と修復手順を含むフォレンジックタイムラインを作成します。
主要な概念
| 概念 | 説明 |
|---|---|
| LookupEvents | 管理イベントを照会する CloudTrail API(直近 90 日間) |
| Athena Queries | 過去の分析用に、S3 内の CloudTrail ログを対象とする SQL クエリ |
| User Agent Analysis | ツールの識別情報(AWS CLI、SDK、コンソール、カスタム)を特定します |
| AccessKeyId | 特定の IAM アクセスキーごとにアクティビティを追跡します |
| EventName | AWS API のアクション名(例:GetObject、CreateUser、AssumeRole) |
| sourceIPAddress | 地理的位置分析に使用する API 呼び出し元の IP |
ツールとシステム
| ツール | 用途 |
|---|---|
| boto3 CloudTrail client | プログラムから CloudTrail イベントを検索します |
| AWS Athena | S3 の CloudTrail ログを SQL ベースで分析します |
| AWS CLI | コマンドラインから CloudTrail をクエリします |
| jq | CloudTrail イベントの解析に使用する JSON 処理 |
| CloudTrail Lake | SQL クエリに対応した高度なイベントデータストア |
出力形式
Forensic Report: AWS-IR-[DATE]-[SEQ]
Account: [AWS Account ID]
Timeframe: [Start] to [End]
Compromised Credentials: [Access Key IDs]
Suspicious Events: [Count]
Source IPs: [List of attacker IPs]
Actions Taken: [API calls by attacker]
Data Accessed: [S3 objects, secrets, etc.]
Persistence Mechanisms: [New users, keys, roles]
コメント
Markdown 対応