Varonis のログを収集する

以下でサポートされています。

このドキュメントでは、Bindplane を使用して Varonis ログを Google Security Operations に取り込む方法について説明します。パーサーは、grok パターンを使用してログ(SYSLOG + KV(CEF)、LEEF)からフィールドを抽出し、CEF、LEEF、その他の Varonis 固有の形式を特別に処理します。次に、抽出されたフィールドを統合データモデル(UDM)にマッピングし、さまざまなデータ形式とエッジケースを処理して、一貫した表現を確保します。

始める前に

次の前提条件を満たしていることを確認します。

  • Google SecOps インスタンス
  • Windows 2016 以降、または systemd を使用する Linux ホスト
  • プロキシの背後で実行されている場合、ファイアウォール ポートが開いている
  • Varonis への特権アクセス

Google SecOps の取り込み認証ファイルを取得する

  1. Google SecOps コンソールにログインします。
  2. [SIEM 設定] > [コレクション エージェント] に移動します。
  3. Ingestion Authentication File をダウンロードします。Bindplane をインストールするシステムにファイルを安全に保存します。

Google SecOps のお客様 ID を取得する

  1. Google SecOps コンソールにログインします。
  2. [SIEM 設定] > [プロファイル] に移動します。
  3. [組織の詳細情報] セクションから [お客様 ID] をコピーして保存します。

Bindplane エージェントをインストールする

Windows のインストール

  1. 管理者として コマンド プロンプトまたは PowerShell を開きます。
  2. 次のコマンドを実行します。

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Linux のインストール

  1. root 権限または sudo 権限でターミナルを開きます。
  2. 次のコマンドを実行します。

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

その他のインストール リソース

その他のインストール オプションについては、インストール ガイドをご覧ください。

Syslog を取り込んで Google SecOps に送信するように Bindplane エージェントを構成する

  1. 構成ファイルにアクセスします。
    • config.yaml ファイルを見つけます。通常、Linux では /etc/bindplane-agent/ ディレクトリに、Windows ではインストール ディレクトリにあります。
    • テキスト エディタ(nano、vi、メモ帳など)を使用してファイルを開きます。
  2. config.yaml ファイルを次のように編集します。

    receivers:
        udplog:
            # Replace the port and IP address as required
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the path to the credentials file you downloaded in Step 1
            creds: '/path/to/ingestion-authentication-file.json'
            # Replace with your actual customer ID from Step 2
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # Add optional ingestion labels for better organization
            ingestion_labels:
                log_type: 'VARONIS'
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. 自社のインフラストラクチャでの必要性に応じて、ポートと IP アドレスを置き換えます。

  4. <customer_id> は、実際の顧客 ID に置き換えます。

  5. /path/to/ingestion-authentication-file.json の値を、Google SecOps の取り込み認証ファイルを取得するで認証ファイルを保存したパスに更新します。

Bindplane エージェントを再起動して変更を適用する

  • Linux で Bindplane エージェントを再起動するには、次のコマンドを実行します。

    sudo systemctl restart bindplane-agent
    
  • Windows で Bindplane エージェントを再起動するには、Services コンソールを使用するか、次のコマンドを入力します。

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Varonis で Syslog エクスポートを構成する

  1. Varonis ウェブ UI にログインします。
  2. [Tools] > [DatAlert] > [Select DatAlert] に移動します。
  3. [構成] を選択します。
  4. 次の構成の詳細を指定します。
    • Syslog メッセージの IP アドレス: Bindplane エージェントの IP アドレスを入力します。
    • ポート: Bindplane エージェントのポート番号を入力します(例: UDP の場合は 514)。
    • 施設名: 施設を選択します。
  5. [適用] をクリックします。

Varonis で Syslog 形式を構成する

  1. [ツール] > [DatAlert] > [アラート テンプレート] に移動します。
  2. [アラート テンプレートを編集] をクリックし、[外部システムのデフォルト テンプレート] を選択します。
  3. [アラート方法に適用] で、リストから [Syslog メッセージ] を選択します。
  4. メニューから [ルール > アラート方法] を選択します。
  5. [Syslog メッセージ] を選択します。
  6. [OK] をクリックします。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
act security_result.summary CEF メッセージの act フィールドの値。
cn1 security_result.rule_id CEF メッセージの cn1 フィールドの値。
cs1 network.email.to CEF メッセージの cs1 フィールドの値(メールの受信者)。
cs2 security_result.rule_name CEF メッセージの cs2 フィールドの値。
device_version metadata.product_version CEF メッセージの device_version フィールドの値。
dhost principal.hostname CEF メッセージの dhost フィールドの値。プリンシパル ホスト名を表します。file_server が存在し、「DirectoryServices」でない場合は、この値が上書きされます。
duser target.user.userid CEF メッセージの duser フィールドの値。gsub 変換が行われ、バックスラッシュが削除されて target.user.useridtarget.administrative_domain に分割されます。
dvchost target.hostname CEF メッセージの dvchost フィールドの値。
filePath target.file.full_path CEF メッセージの filePath フィールドの値。
rt metadata.event_timestamp CEF メッセージの rt フィールドの値。タイムスタンプとして解析されます。
severity security_result.severity CEF メッセージまたは LEEF メッセージの severity フィールドの値。大文字に変換されました。数値またはキーワードに基づいて、UDM の重大度値(LOW、INFORMATIONAL、MEDIUM、HIGH、CRITICAL)にマッピングされます。
Acting Object target.user.user_display_name キー値データの Acting Object フィールドの値。「\」で分割して表示名を抽出します。
Acting Object SAM Account Name target.user.userid キー値データの Acting Object SAM Account Name フィールドの値。
Device hostname target.hostname キー値データの Device hostname フィールドの値。
Device IP address target.ip キー値データの Device IP address フィールドの値。
Event Time metadata.event_timestamp Key-Value データの Event Time フィールドの値。タイムスタンプとして解析されます。
Event Type target.applicationmetadata.event_type キー値データの Event Type フィールドの値。metadata.event_type(FILE_OPEN、USER_CHANGE_PERMISSIONS、USER_CHANGE_PASSWORD、USER_UNCATEGORIZED)の導出に使用されます。
File Server/Domain principal.hostname キー値データの File Server/Domain フィールドの値。「DirectoryServices」でない場合は、dhost から派生した principal.hostname を上書きします。
Path target.file.full_path キー値データの Path フィールドの値。
Rule Description metadata.description キー値データの Rule Description フィールドの値。
Rule ID security_result.rule_id キー値データの Rule ID フィールドの値。
Rule Name security_result.rule_name キー値データの Rule Name フィールドの値。
intermediary_host intermediary.hostname Grok によって抽出された値。仲介ホスト名を表します。
log_type metadata.log_type VARONIS にハードコードされています。
metadata.event_type metadata.event_type evt_typactfilepath の値に基づいて導出されます。event_type が GENERIC_EVENT で principal_hostname が存在する場合、デフォルトは STATUS_UPDATE です。
metadata.product_name metadata.product_name VARONIS にハードコードされていますが、LEEF メッセージの product_name フィールドで上書きできます。
metadata.vendor_name metadata.vendor_name VARONIS にハードコードされていますが、LEEF メッセージの vendor フィールドで上書きできます。
prin_host principal.hostname Grok によって抽出された値。プリンシパルのホスト名を表します。
product_name metadata.product_name LEEF メッセージの値。
security_result.action security_result.action result フィールドまたは Event Status フィールドから派生します。結果が Success の場合は「ALLOW」に設定し、それ以外の場合は BLOCK に設定します。
timestamp timestampmetadata.event_timestamp イベントのタイムスタンプは、可用性に基づいてさまざまなフィールド(datetime1event_timestart_datetimedatetime2)から取得されます。未加工ログの create_time はフォールバックとして使用され、他のタイムスタンプ フィールドが使用できない場合は timestampmetadata.event_timestamp の両方にマッピングされます。
vendor metadata.vendor_name LEEF メッセージの値。

さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。