Microsoft LAPS ログを収集する
このドキュメントでは、Bindplane エージェントを使用して Microsoft Windows LAPS(Local Administrator Password Solution)ログを Google Security Operations に取り込む方法について説明します。
Windows LAPS は、ドメインに参加しているデバイスのローカル管理者アカウントのパスワードを管理し、パスワードのローテーション、ポリシー処理、管理オペレーションのイベントログ エントリを生成します。パーサーは、Windows イベントログ XML 形式からフィールドを抽出し、Unified Data Model(UDM)にマッピングします。
始める前に
次の前提条件を満たしていることを確認してください。
- Google SecOps インスタンス
- Bindplane エージェントがインストールされている Windows Server 2016 以降
- プロキシの背後で実行している場合は、Bindplane エージェントの要件に従ってファイアウォール ポートが開いていることを確認する
- Windows LAPS が環境に構成、デプロイされている
Google SecOps の取り込み認証ファイルを取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [収集エージェント] に移動します。
- Ingestion Authentication File をダウンロードします。
Bindplane エージェントをインストールするシステムにファイルを安全に保存します。
Google SecOps のお客様 ID を取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [プロファイル] に移動します。
[組織の詳細情報] セクションから [お客様 ID] をコピーして保存します。
Bindplane エージェントをインストールする
- 管理者としてコマンド プロンプト または PowerShell を開きます。
次のコマンドを実行します。
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quietインストールが完了するまでお待ちください。
次のコマンドを実行して、インストールの内容を確認します。
sc query observiq-otel-collectorサービスは RUNNING と表示されます。
その他のインストール リソース
その他のインストール オプションとトラブルシューティングについては、Bindplane エージェントのインストール ガイドをご覧ください。
Windows イベントログを取り込んで Google SecOps に送信するように Bindplane エージェントを構成する
構成ファイルを探す
次の構文を使用して構成ファイルを探します。
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
構成ファイルを編集する
config.yamlの内容全体を次の構成に置き換えます。receivers: windowseventlog/laps_operational: channel: Microsoft-Windows-LAPS/Operational max_reads: 100 poll_interval: 5s raw: true start_at: end processors: batch: exporters: chronicle/laps: creds_file_path: 'C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: WINDOWS_LAPS override_log_type: false raw_log_field: body service: pipelines: logs/laps: receivers: - windowseventlog/laps_operational processors: [batch] exporters: [chronicle/laps]
構成パラメータ
各プレースホルダを次のように置き換えます。
レシーバーの構成:
channel: 読み取る Windows イベントログ チャネル(Microsoft-Windows-LAPS/Operational)max_reads: ポーリング サイクルごとに読み取るログエントリの最大数poll_interval: 新しいイベントをポーリングする頻度start_at: 読み取りを開始する場所(新しいイベントのみの場合はend)
エクスポータの構成:
creds_file_path: 取り込み認証ファイルのフルパス(C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json)customer_id: Google SecOps コンソールからコピーしたお客様 IDendpoint: リージョン エンドポイント URL:- 米国:
malachiteingestion-pa.googleapis.com - ヨーロッパ:
europe-malachiteingestion-pa.googleapis.com - アジア:
asia-southeast1-malachiteingestion-pa.googleapis.com - 完全なリストについては、リージョン エンドポイントをご覧ください。
- 米国:
構成ファイルを保存する
[ファイル] > [保存] をクリックします。
Bindplane エージェントを再起動して変更を適用する
管理者としてコマンド プロンプトまたは PowerShell を開きます。
net stop observiq-otel-collector && net start observiq-otel-collectorサービス コンソール:
Win+Rを押してservices.mscと入力し、Enter キーを押します。- [observIQ OpenTelemetry Collector] を探します。
右クリックして [再起動] を選択します。
サービスが実行されていることを確認します。
sc query observiq-otel-collectorログでエラーを確認します。
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
Microsoft Windows LAPS を構成する
- 昇格したコマンド プロンプト で
eventvwr.mscと入力して Enter キーを押し、イベント ビューア を開きます。 - [アプリケーションとサービス ログ]> [Microsoft]> [Windows]> [LAPS] に移動します。
- [LAPS] を開きます。
- [LAPS] を右クリックして、[プロパティ] をクリックします。
- [Enable logging] チェックボックスをオンにします。
- ログが有効になっているかどうかを確認するメッセージが表示されたら、[OK] をクリックします。
- [OK] をクリックします。
UDM マッピング テーブル
| ログフィールド | UDM マッピング | ロジック |
|---|---|---|
| チャンネル | read_only_udm.additional.fields.key | 値は未加工ログの Channel フィールドから取得され、key フィールドに割り当てられます。 |
| チャンネル | read_only_udm.additional.fields.value.string_value | 値は未加工ログの Channel フィールドから取得され、string_value フィールドに割り当てられます。 |
| コンピュータ | read_only_udm.principal.hostname | 値は未加工ログの Computer フィールドから取得されます。 |
| コンピュータ | read_only_udm.principal.asset.hostname | 値は未加工ログの Computer フィールドから取得されます。 |
| EventData.%1 | read_only_udm.additional.fields.value.string_value | 値は未加工ログの EventData.%1 フィールドから取得され、string_value フィールドに割り当てられます。 |
| EventId | read_only_udm.metadata.product_event_type | 値は未加工ログの EventId フィールドから取得されます。 |
| EventId | read_only_udm.security_result.rule_name | 値は未加工ログの EventId フィールドから取得され、EventID: に追加されます。 |
| EventRecordID | read_only_udm.metadata.product_log_id | 値は未加工ログの EventRecordID フィールドから取得されます。 |
| キーワード | read_only_udm.additional.fields.key | 値は未加工ログの Keywords フィールドから取得され、key フィールドに割り当てられます。 |
| キーワード | read_only_udm.additional.fields.value.string_value | 値は未加工ログの Keywords フィールドから取得され、string_value フィールドに割り当てられます。 |
| レベル | read_only_udm.security_result.severity | 値は未加工ログの Level フィールドから取得され、INFO、Informational、Information、Normal、NOTICE の場合は INFORMATIONAL に、ERROR、Error の場合は ERROR に、Critical の場合は CRITICAL にマッピングされます。 |
| オペコード | read_only_udm.additional.fields.key | 値は未加工ログの Opcode フィールドから取得され、key フィールドに割り当てられます。 |
| オペコード | read_only_udm.additional.fields.value.string_value | 値は未加工ログの Opcode フィールドから取得され、string_value フィールドに割り当てられます。 |
| ProcessID | read_only_udm.principal.process.pid | 値は未加工ログの ProcessID フィールドから取得されます。 |
| ProviderName | read_only_udm.metadata.product_name | 値は未加工ログの ProviderName フィールドから取得されます。 |
| タスク | read_only_udm.additional.fields.key | 値は未加工ログの Task フィールドから取得され、key フィールドに割り当てられます。 |
| タスク | read_only_udm.additional.fields.value.string_value | 値は未加工ログの Task フィールドから取得され、string_value フィールドに割り当てられます。 |
| ThreadID | read_only_udm.additional.fields.key | 値は未加工ログの ThreadID フィールドから取得され、key フィールドに割り当てられます。 |
| ThreadID | read_only_udm.additional.fields.value.string_value | 値は未加工ログの ThreadID フィールドから取得され、string_value フィールドに割り当てられます。 |
| TimeCreated | read_only_udm.metadata.event_timestamp | 値は未加工ログの TimeCreated フィールドから取得され、UNIX_MS タイムスタンプとして解析されます。 |
| TimeCreated | events.timestamp | 値は未加工ログの TimeCreated フィールドから取得され、UNIX_MS タイムスタンプとして解析されます。 |
| バージョン | read_only_udm.additional.fields.key | 値は未加工ログの Version フィールドから取得され、key フィールドに割り当てられます。 |
| バージョン | read_only_udm.additional.fields.value.string_value | 値は未加工ログの Version フィールドから取得され、string_value フィールドに割り当てられます。 |
| read_only_udm.additional.fields.key | 値 EventData_P1 が割り当てられます。 |
|
| read_only_udm.metadata.event_type | EventId が 7 または 2 の場合は STATUS_UNCATEGORIZED が割り当てられ、それ以外の場合は GENERIC_EVENT が割り当てられます。 |
|
| read_only_udm.metadata.vendor_name | 値 Microsoft が割り当てられます。 |
さらにサポートが必要な場合コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。