Symantec VIP Enterprise Gateway のログを収集する

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

このドキュメントでは、Bindplane を使用して Symantec VIP Enterprise Gateway ログを Google Security Operations に取り込む方法について説明します。パーサー コードは、まず入力ログ メッセージを JSON オブジェクトとして処理しようとします。この処理が失敗すると、syslog 形式と見なされ、正規表現(grok パターン)を使用して、タイムスタンプ、IP アドレス、ユーザー名、イベントの説明などの関連フィールドが抽出されます。最後に、抽出された情報を統合データモデル(UDM)フィールドにマッピングして、セキュリティ イベントの表現を標準化します。

始める前に

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

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

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 ではインストール ディレクトリにあります。
    • テキスト エディタ(nanovi、メモ帳など)を使用してファイルを開きます。
  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: 'SYMANTEC_VIP'
                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
    

Symantec VIP Enterprise Gateway で Syslog を構成する

  1. Symantec VIP Gateway ウェブ UI にログインします。
  2. [Logs] > [Syslog Configuration] に移動します。
  3. Syslog を初めて構成する場合は、Syslog 設定を構成するように求められます。[はい] をオンにします。
  4. Syslog をすでに構成している場合は、ページの下部にある [編集] をクリックします。
  5. 次の構成の詳細を指定します。
    • Syslog Facility: [LOG_LOCAL0] を選択します。
    • Syslog ホスト: Bindplane エージェントの IP アドレスを入力します。
    • Syslog ポート: Bindplane エージェントのポート番号を入力します(例: UDP の場合は 514)。
  6. [保存] をクリックします。
  7. [設定>コンソール設定] に移動します。
  8. 次の構成の詳細を指定します。
    • ロギングレベル: [情報] を選択します。
    • Enable Syslog: [Yes] を選択します。
  9. [送信] をクリックします。
  10. [Settings] > [Health Check Settings] に移動します。
  11. [はい] を選択して、ヘルスチェック サービスを有効にします。
  12. 次の構成の詳細を指定します。
    • ロギングレベル: [情報] を選択します。
    • Enable Syslog: [Yes] を選択します。
  13. [送信] をクリックします。
  14. [User Store] > [LDAP Directory Synchronization] に移動します。
  15. 次の構成の詳細を編集します。
    • ログレベル: [情報] を選択します。
    • Enable Syslog: [Yes] を選択します。
  16. [送信] をクリックします。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
アプリケーション read_only_udm.principal.application 値は、json フィルタによって抽出された application フィールドから取得されます。
コマンド read_only_udm.target.process.command_line 値は、Grok パターンによって抽出された command フィールドから取得されます。
credentialType このフィールドは UDM に直接マッピングされません。これは、read_only_udm.extensions.auth.mechanism の値の導出に使用されます。
データ このフィールドは UDM に直接マッピングされません。他のフィールドを抽出するために解析されます。
data2 このフィールドは UDM に直接マッピングされません。他のフィールドを抽出するために解析されます。
datetime read_only_udm.metadata.event_timestamp.seconds
read_only_udm.metadata.event_timestamp.nanos
datetime フィールドから抽出されたエポックからの秒数とナノ秒数。
降順 read_only_udm.metadata.description 値は、json フィルタによって抽出された desc フィールドから取得されます。
説明 read_only_udm.security_result.description 値は、json フィルタによって抽出された description フィールドから取得されます。
filename read_only_udm.target.process.file.full_path 値は、Grok パターンによって抽出された filename フィールドから取得されます。
hostname read_only_udm.principal.hostname 値は、json フィルタによって抽出された hostname フィールドから取得されます。
host_name read_only_udm.intermediary.hostname 値は、json フィルタによって抽出された host_name フィールドから取得されます。
log_level このフィールドは UDM に直接マッピングされません。read_only_udm.security_result.severity の値の導出に使用されます。
log_type read_only_udm.metadata.product_event_type 値は、json フィルタによって抽出された log_type フィールドから取得されます。
msg このフィールドは UDM に直接マッピングされません。他のフィールドを抽出するために解析されます。
オペレーション read_only_udm.security_result.summary 値は、Grok パターンによって抽出された operation フィールドから取得されます。
processid read_only_udm.target.process.pid 値は、Grok パターンによって抽出された processid フィールドから取得されます。
product read_only_udm.metadata.product_name 値は、json フィルタによって抽出された product フィールドから取得されます。
reason read_only_udm.metadata.description 値は、Grok パターンによって抽出された reason フィールドから取得されます。
request_id read_only_udm.target.resource.id 値は、Grok パターンによって抽出された request_id フィールドから取得されます。
src_ip read_only_udm.principal.ip 値は、Grok パターンによって抽出された src_ip フィールドから取得されます。
ステータス read_only_udm.metadata.description 値は、Grok パターンによって抽出された status フィールドから取得されます。
概要 read_only_udm.security_result.summary 値は、json フィルタによって抽出された summary フィールドから取得されます。
timestamp.nanos read_only_udm.metadata.event_timestamp.nanos 元のログのタイムスタンプのナノ秒。
timestamp.seconds read_only_udm.metadata.event_timestamp.seconds 元のログのタイムスタンプからの秒数。
時間 このフィールドは UDM に直接マッピングされません。これは、read_only_udm.metadata.event_timestamp.seconds と read_only_udm.metadata.event_timestamp.nanos の値を導出するために使用されます。
ユーザー read_only_udm.target.user.userid 値は、JSON フィルタまたは Grok パターンによって抽出された user フィールドから取得されます。
vendor read_only_udm.metadata.vendor_name 値は、json フィルタによって抽出された vendor フィールドから取得されます。
read_only_udm.extensions.auth.mechanism credentialType フィールドによって決定されます。credentialTypeSMS_OTP または STANDARD_OTP の場合、OTP が使用されます。credentialType が正規表現 PASSWORD と一致する場合、USERNAME_PASSWORD が使用されます。
read_only_udm.extensions.auth.type reason フィールドが正規表現 LDAP と一致する場合、SSO が使用されます。それ以外の場合は、AUTHTYPE_UNSPECIFIED が使用されます。
read_only_udm.metadata.event_type 特定のフィールドの有無によって決まります。user または processid が空でない場合、USER_LOGIN が使用されます。user が空で、src_ip が空でないか 0.0.0.0 の場合、STATUS_UPDATE が使用されます。それ以外の場合は、GENERIC_EVENT が使用されます。
read_only_udm.metadata.log_type SYMANTEC_VIP にハードコードされています。
read_only_udm.security_result.action status フィールドによって決定されます。statusAuthentication SuccessGRANTEDAuthentication CompletedAfter Services Authenticate callCHALLENGED のいずれかの場合、ALLOW が使用されます。statusDENIEDAcces-RejectUnknown ErrorService UnavailableFAILED のいずれかの場合、BLOCK が使用されます。statusPUSH request sent for user または Trying to fetch attribute の場合、QUARANTINE が使用されます。
read_only_udm.security_result.severity log_level フィールドによって決定されます。log_levelDEBUGINFOAUDIT のいずれかの場合、INFORMATIONAL が使用されます。log_levelERROR の場合、ERROR が使用されます。log_levelWARNING の場合、MEDIUM が使用されます。

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