AWS Session Manager のログを収集する
このドキュメントでは、AWS Session Manager ログを Google Security Operations に取り込む方法について説明します。AWS Session Manager は、Amazon EC2 インスタンスとオンプレミス サーバーへの安全で監査可能なアクセスを提供します。ログを Google SecOps に統合することで、セキュリティ体制を強化し、リモート アクセス イベントを追跡できます。
始める前に
次の前提条件を満たしていることを確認します。
- Google SecOps インスタンス
- AWS への特権アクセス
AWS IAM と S3 を構成する
- バケットの作成のユーザーガイドに沿って、Amazon S3 バケットを作成します。
- 後で使用するために、バケットの名前とリージョンを保存します。
- IAM ユーザーの作成のユーザーガイドに沿って、ユーザーを作成します。
- 作成した [ユーザー] を選択します。
- [セキュリティ認証情報] タブを選択します。
- [アクセスキー] セクションで [アクセスキーを作成] をクリックします。
- [ユースケース] として [サードパーティ サービス] を選択します。
- [次へ] をクリックします。
- 省略可: 説明タグを追加します。
- [アクセスキーを作成] をクリックします。
- [CSV ファイルをダウンロード] をクリックして、[アクセスキー] と [シークレット アクセスキー] を保存し、後で使用できるようにします。
- [完了] をクリックします。
- [権限] タブを選択します。
- [権限ポリシー] セクションで、[権限を追加] をクリックします。
- [権限を追加] を選択します。
- [ポリシーを直接アタッチする] を選択します。
- AmazonS3FullAccess ポリシーを検索して選択します。
- [次へ] をクリックします。
- [権限を追加] をクリックします。
AWS Session Manager を構成して S3 にログを保存する方法
- AWS Systems Manager コンソールに移動します。
- ナビゲーション パネルで [Session Manager] を選択します。
- [設定] タブをクリックします。
- [編集] をクリックします。
- [S3 ロギング] で、[有効にする] チェックボックスをオンにします。
- [暗号化された S3 バケットのみを許可する] チェックボックスをオフにします。
- アカウントにすでに作成されている Amazon S3 バケットを選択して、セッションログデータを保存します。
- セッション ログデータを保存するためにアカウントにすでに作成されている Amazon S3 バケットの名前を入力します。
- [保存] をクリックします。
フィードを設定する
Google SecOps プラットフォームでフィードを設定するには、次の 2 つのエントリ ポイントがあります。
- [SIEM 設定] > [フィード]
- [Content Hub] > [Content Packs]
[SIEM 設定] > [フィード] でフィードを設定する
このプロダクト ファミリー内で異なるログタイプに対して複数のフィードを構成するには、プロダクトごとにフィードを構成するをご覧ください。
1 つのフィードを設定する手順は次のとおりです。
- [SIEM 設定] > [フィード] に移動します。
- [Add New Feed] をクリックします。
- 次のページで、[単一フィードを設定] をクリックします。
- [フィード名] フィールドに、フィードの名前を入力します(例: AWS Session Manager Logs)。
- [ソースタイプ] として [Amazon S3] を選択します。
- [Log type] で [AWS Session Manager] を選択します。
- [次へ] をクリックします。
次の入力パラメータの値を指定します。
- リージョン: Amazon S3 バケットが配置されているリージョン。
- S3 URI: バケット URI。
s3://your-log-bucket-name/
your-log-bucket-name
は、実際の S3 バケットの名前に置き換えます。
- URI is a: バケット構造に応じて、[ディレクトリ] または [サブディレクトリを含むディレクトリ] を選択します。
Source deletion options: 取り込みの設定に応じて削除オプションを選択します。
アクセスキー ID: S3 バケットから読み取る権限を持つユーザーのアクセスキー。
シークレット アクセスキー: S3 バケットから読み取る権限を持つユーザーのシークレット キー。
アセットの名前空間: アセットの名前空間。
Ingestion labels: このフィードのイベントに適用されるラベル。
[次へ] をクリックします。
[Finalize] 画面で新しいフィードの設定を確認し、[送信] をクリックします。
コンテンツ ハブからフィードを設定する
次のフィールドに値を指定します。
- リージョン: Amazon S3 バケットが配置されているリージョン。
- S3 URI: バケット URI。
s3://your-log-bucket-name/
your-log-bucket-name
は、実際の S3 バケットの名前に置き換えます。
- URI is a: バケット構造に応じて、[ディレクトリ] または [サブディレクトリを含むディレクトリ] を選択します。
- Source deletion options: 取り込みの設定に応じて削除オプションを選択します。
アクセスキー ID: S3 バケットから読み取る権限を持つユーザーのアクセスキー。
シークレット アクセスキー: S3 バケットから読み取る権限を持つユーザーのシークレット キー。
詳細オプション
- フィード名: フィードを識別する事前入力された値。
- ソースタイプ: Google SecOps にログを収集するために使用される方法。
- Asset Namespace: フィードに関連付けられた名前空間。
- Ingestion Labels: このフィードのすべてのイベントに適用されるラベル。
UDM マッピング テーブル
ログフィールド | UDM マッピング | 論理 |
---|---|---|
--cid |
metadata.description | ログに存在する場合の説明フィールドの一部 |
--collector.filesystem.ignored-mount-points |
metadata.description | ログに存在する場合の説明フィールドの一部 |
--collector.vmstat.fields |
metadata.description | ログに存在する場合の説明フィールドの一部 |
--message-log |
metadata.description | ログに存在する場合の説明フィールドの一部 |
--name |
metadata.description | ログに存在する場合の説明フィールドの一部 |
--net |
metadata.description | ログに存在する場合の説明フィールドの一部 |
--path.procfs |
metadata.description | ログに存在する場合の説明フィールドの一部 |
--path.rootfs |
metadata.description | ログに存在する場合の説明フィールドの一部 |
--path.sysfs |
metadata.description | ログに存在する場合の説明フィールドの一部 |
-v /:/rootfs:ro |
metadata.description | ログに存在する場合の説明フィールドの一部 |
-v /proc:/host/proc |
metadata.description | ログに存在する場合の説明フィールドの一部 |
-v /sys:/host/sys |
metadata.description | ログに存在する場合の説明フィールドの一部 |
CID |
metadata.description | ログに存在する場合の説明フィールドの一部 |
ERROR |
security_result.severity | Grok パターン マッチングを使用してログ メッセージから抽出されます。 |
falconctl |
metadata.description | ログに存在する場合の説明フィールドの一部 |
ip-1-2-4-2 |
principal.ip | Grok パターン マッチングを使用してログ メッセージから抽出され、標準の IP アドレス形式に変換されます。 |
ip-1-2-8-6 |
principal.ip | Grok パターン マッチングを使用してログ メッセージから抽出され、標準の IP アドレス形式に変換されます。 |
java |
target.process.command_line | Grok パターン マッチングを使用してログ メッセージから抽出されます。 |
Jun13 |
metadata.event_timestamp.seconds | ログにタイムスタンプ フィールドが存在する場合、その一部が month_date フィールドと time_stamp フィールドと組み合わされます。 |
[kworker/u16:8-kverityd] |
target.process.command_line | Grok パターン マッチングを使用してログ メッセージから抽出されます。 |
root |
principal.user.userid | Grok パターン マッチングを使用してログ メッセージから抽出されます。 |
metadata.event_type | 他のフィールドの有無と値に基づいて決定されます。 - src_ip が存在する場合は「STATUS_UPDATE」。 - src_ip と dest_ip の両方が存在する場合は「NETWORK_CONNECTION」。 - user_id が存在する場合は「USER_UNCATEGORIZED」。 - それ以外の場合は「GENERIC_EVENT」。 |
|
metadata.log_type | 「AWS_SESSION_MANAGER」に設定します。 | |
metadata.product_name | 「AWS Session Manager」に設定します。 | |
metadata.vendor_name | Amazon に設定します。 | |
target.process.pid | Grok パターン マッチングを使用してログ メッセージから抽出されます。 |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。