Azure VPN ログを収集する
このガイドでは、Azure Storage アカウントを使用して Azure VPN ログを Google Security Operations にエクスポートする方法について説明します。パーサーは、JSON 形式の Azure VPN ログからフィールドを抽出し、Grok パターンを使用して properties.message フィールドから詳細情報を抽出します。最後に、抽出された情報を統合データモデル(UDM)の標準化されたフィールドにマッピングします。
始める前に
次の前提条件を満たしていることを確認します。
- Google SecOps インスタンス
- アクティブな Azure テナント
- Azure への特権アクセス
Azure Storage アカウントを構成する
- Azure コンソールで、[ストレージ アカウント] を検索します。
- [+ 作成] をクリックします。
- 次の入力パラメータの値を指定します。
- Subscription: サブスクリプションを選択します。
- リソース グループ: リソース グループを選択します。
- Region: リージョンを選択します。
- パフォーマンス: パフォーマンスを選択します(標準が推奨されます)。
- 冗長性: 冗長性(GRS または LRS を推奨)を選択します。
- ストレージ アカウント名: 新しいストレージ アカウントの名前を入力します。
 
- [Review + create] をクリックします。
- アカウントの概要を確認して、[作成] をクリックします。
- [ストレージ アカウントの概要] ページで、[セキュリティとネットワーキング] の [アクセスキー] サブメニューを選択します。
- [key1] または [key2] の横にある [Show] をクリックします。
- [クリップボードにコピー] をクリックして、キーをコピーします。
- 後で使用できるように、キーを安全な場所に保存します。
- [ストレージ アカウントの概要] ページで、[設定] の [エンドポイント] サブメニューを選択します。
- [クリップボードにコピー] をクリックして、Blob サービス エンドポイント URL(例: https://<storageaccountname>.blob.core.windows.net)をコピーします。
- 後で使用できるように、エンドポイント URL を安全な場所に保存します。
Azure VPN Gateway ログのログ エクスポートを構成する方法
- 特権アカウントを使用して Azure Portal にログインします。
- モニタリング対象のサブスクリプションを選択します。
- そのサブスクリプションのリソース リストで、VPN ゲートウェイを見つけます(通常はリソースタイプが Virtual Network Gateway になります)。
- ゲートウェイをクリックします。
- [モニタリング> 診断サービス] を選択します。
- [+ 診断設定を追加] をクリックします。- 診断設定のわかりやすい名前を入力します。
 
- [allLogs] を選択します。
- 移行先として [ストレージ アカウントにアーカイブする] チェックボックスをオンにします。- サブスクリプションとストレージ アカウントを指定します。
 
- [保存] をクリックします。
フィードを設定する
Google SecOps プラットフォームでフィードを設定するには、次の 2 つのエントリ ポイントがあります。
- [SIEM 設定] > [フィード] > [新しいフィードを追加]
- Content Hub > Content Packs > Get Started
Azure VPN フィードを設定する方法
- [Azure Platform] パックをクリックします。
- [Azure VPN] ログタイプを見つけて、[新しいフィードを追加] をクリックします。
- 次のフィールドに値を指定します。 - ソースタイプ: Microsoft Azure Blob Storage V2。
- Azure URI: Blob エンドポイントの URL。- ENDPOINT_URL/BLOB_NAME- 次のように置き換えます。
- ENDPOINT_URL: BLOB エンドポイント URL(- https://<storageaccountname>.blob.core.windows.net)
- BLOB_NAME: blob の名前(- <logname>-logsなど)
 
 
- 次のように置き換えます。
 
- Source deletion options: 取り込みの設定に応じて削除オプションを選択します。 
- ファイルの最大経過日数: 指定した日数以内に変更されたファイルを含めます。デフォルトは 180 日です。 
- 共有キー: Azure Blob Storage へのアクセスキー。 
 - 詳細オプション - フィード名: フィードを識別する事前入力された値。
- Asset Namespace: フィードに関連付けられた名前空間。
- Ingestion Labels: このフィードのすべてのイベントに適用されるラベル。
 
- [フィードを作成] をクリックします。 
このプロダクト ファミリー内の異なるログタイプに対して複数のフィードを構成する方法については、プロダクト別にフィードを構成するをご覧ください。
UDM マッピング テーブル
| ログフィールド | UDM マッピング | 論理 | 
|---|---|---|
| category | security_result.category_details | 未加工ログの categoryフィールドから直接マッピングされます。 | 
| IV_PLAT | security_result.detection_fields.value | 未加工ログの IV_PLATフィールドから直接マッピングされます。detection_fields 配列内の Key-Value ペアの一部。キーはIV_PLATです。 | 
| IV_PLAT_VER | security_result.detection_fields.value | 未加工ログの IV_PLAT_VERフィールドから直接マッピングされます。detection_fields 配列内の Key-Value ペアの一部。キーはIV_PLAT_VERです。 | 
| IV_PROTO | security_result.detection_fields.value | 未加工ログの IV_PROTOフィールドから直接マッピングされます。detection_fields 配列内の Key-Value ペアの一部。キーはIV_PROTOです。 | 
| IV_VER | security_result.detection_fields.value | 未加工ログの IV_VERフィールドから直接マッピングされます。detection_fields 配列内の Key-Value ペアの一部。キーはIV_VERです。 | 
| level | security_result.severity | 未加工ログの levelフィールドからマッピングされます。levelがInformationalの場合、severityはINFORMATIONALに設定されます。 | 
| local_ip | target.ip | Grok パターンを使用して properties.messageフィールドから抽出され、ターゲット IP アドレスにマッピングされます。 | 
| local_port | target.port | Grok パターンを使用して properties.messageフィールドから抽出され、ターゲット ポート番号にマッピングされます。整数型に変換されます。 | 
| operationName | metadata.product_event_type | 未加工ログの operationNameフィールドから直接マッピングされます。 | 
| properties.message | metadata.description | Grok パターンを使用して properties.messageフィールドから抽出されます。メッセージ形式によっては、desc2フィールドから抽出された追加の詳細が説明に含まれることがあります。 | 
| remote_ip | principal.ip | Grok パターンを使用して properties.messageフィールドから抽出され、プリンシパルの IP アドレスにマッピングされます。 | 
| remote_port | principal.port | Grok パターンを使用して properties.messageフィールドから抽出され、プリンシパル ポート番号にマッピングされます。整数型に変換されます。 | 
| resourceid | target.resource.product_object_id | 未加工ログの resourceidフィールドから直接マッピングされます。 | 
| 時間 | timestamp, metadata.event_timestamp | RFC 3339 形式を使用して未加工ログの timeフィールドから解析され、イベント タイムスタンプと UDM タイムスタンプの両方にマッピングされます。 | 
| metadata.log_type | AZURE_VPNにハードコードされています。 | |
| metadata.vendor_name | AZUREにハードコードされています。 | |
| metadata.product_name | VPNにハードコードされています。 | |
| metadata.event_type | IP アドレスの有無に基づいて動的に設定されます。 remote_ipとlocal_ipの両方が存在する場合はNETWORK_CONNECTIONに設定され、それ以外の場合はUSER_RESOURCE_ACCESSに設定されます。 | |
| extensions.auth.type | VPNにハードコードされています。 | 
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。