Brocade ServerIron のログを収集する

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

このパーサーは、正規表現のマッチングを使用して Brocade ServerIron syslog メッセージからフィールドを抽出し、統合データモデル(UDM)にマッピングします。ネットワーク ステータス、ユーザー認証、セキュリティ イベントなど、さまざまなログ形式を処理します。また、必要に応じてデータ型の変換と拡充を行います。

始める前に

  • Google Security Operations インスタンスがあることを確認します。
  • Windows 2016 以降、または systemd を使用した Linux ホストを使用していることを確認します。
  • プロキシの背後で実行している場合は、ファイアウォールのポートが開いていることを確認します。
  • Brocade ServerIron インスタンスに対する特権アクセス権があることを確認します。

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

  1. Google SecOps コンソールにログインします。
  2. [SIEM 設定] > [コレクション エージェント] に移動します。
  3. Ingestion Authentication File をダウンロードします。

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

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

BindPlane Agent をインストールする

  1. Windows へのインストールの場合は、次のスクリプトを実行します。
    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
  2. Linux へのインストールの場合は、次のスクリプトを実行します。
    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
  3. その他のインストール オプションについては、こちらのインストール ガイドをご覧ください。

Syslog を取り込んで Google SecOps に送信するように BindPlane Agent を構成する

  1. BindPlane がインストールされているマシンにアクセスします。
  2. config.yaml ファイルを次のように編集します。

    receivers:
        tcplog:
            # Replace the below port <54525> and IP <0.0.0.0> with your specific values
            listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: Brocade_ServerIron
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. BindPlane Agent を再起動して変更を適用します。

    sudo systemctl restart bindplane
    

Brocade ServerIron ADX から Syslog Export を構成する

  1. ADX デバイスにログインし、グローバル構成モードに入ります。

    enable
    configure terminal
    
  2. Syslog ロギングを有効にします。

    logging on
    
  3. 目的のプロトコル(Bindplane)を含む、Syslog サーバーの IP アドレスまたはホスト名とポートを指定します。

    logging host <syslog-server-ip> [udp | tcp] port <port-number>
    

    ポート 54525 の TCP の例:

      logging host 10.10.10.10 tcp port 54525
    
  4. 省略可: Syslog Facilitylocal0local7)を設定します。

    logging facility local0
    
  5. Syslog サーバーに送信するログの最小重大度レベルを定義します。

    logging trap <severity-level>
    
  6. 構成を保存します。

    write memory
    

UDM マッピング テーブル

ログフィールド UDM マッピング 論理
%{GREEDYDATA} metadata.description %{GREEDYDATA} フィールドは、「-- %{GREEDYDATA} --」パターンと一致する場合、metadata.description にマッピングされます。
%{GREEDYDATA:auth_result} security_result.description %{GREEDYDATA:auth_result} フィールドは、%{GREEDYDATA:desc} フィールドと連結され、%{GREEDYDATA:desc} が存在する場合は security_result.description を形成します。
%{GREEDYDATA:desc} security_result.description %{GREEDYDATA:desc} フィールドは、security_result.description フィールドに入力するために使用されます。元のログ形式に応じて、他のフィールドと連結できます。
%{GREEDYDATA:login_to} security_result.description %{GREEDYDATA:login_to} フィールドは、%{GREEDYDATA:desc} フィールドと連結され、%{GREEDYDATA:desc} が存在する場合は security_result.description を形成します。
%{GREEDYDATA:user} target.user.userid %{GREEDYDATA:user} フィールドは target.user.userid にマッピングされます。
%{HOST:principal_host} principal.hostname %{HOST:principal_host} フィールドは principal.hostname にマッピングされます。
%{HOST:target_host} target.hostname %{HOST:target_host} フィールドは target.hostname にマッピングされます。
%{INT:http_port} additional.fields.value.string_value %{INT:http_port} フィールドは、キー「HTTP Port」で additional.fields.value.string_value にマッピングされます。
%{INT:target_port} target.port %{INT:target_port} フィールドは target.port にマッピングされ、整数に変換されます。
%{INT:telnet_port} additional.fields.value.string_value %{INT:telnet_port} フィールドは、キー「Telnet Port」で additional.fields.value.string_value にマッピングされます。
%{INT:tftp_port} additional.fields.value.string_value %{INT:tftp_port} フィールドは、キー「TFTP Port」で additional.fields.value.string_value にマッピングされます。
%{IP:principal_ip} principal.ip %{IP:principal_ip} フィールドは principal.ip にマッピングされます。
%{IP:target_ip} target.ip %{IP:target_ip} フィールドは target.ip にマッピングされます。
%{IPV4:principal_ip} principal.ip %{IPV4:principal_ip} フィールドは principal.ip にマッピングされます。
%{IPV4:target_ip} target.ip %{IPV4:target_ip} フィールドは target.ip にマッピングされます。
%{MAC:principal_mac} principal.mac %{MAC:principal_mac} フィールドは、[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2} 形式に変換された後、principal.mac にマッピングされます。
%{USERNAME:target_host} target.hostname %{USERNAME:target_host} フィールドは target.hostname にマッピングされます。
%{USERNAME:user} target.user.userid %{USERNAME:user} フィールドは target.user.userid にマッピングされます。
%{WORD:auth_result} security_result.description %{WORD:auth_result} フィールドは、%{GREEDYDATA:desc} フィールドと連結され、%{GREEDYDATA:desc} が存在する場合は security_result.description を形成します。
%{WORD:proto} network.application_protocol %{WORD:proto} フィールドの値が「SSH」の場合、このフィールドは network.application_protocol にマッピングされます。
timestamp metadata.event_timestamp タイムスタンプ フィールドは、grok パターンを使用して未加工のログデータから解析され、タイムスタンプ オブジェクトに変換されます。
extensions.auth.type proto フィールドが空でなく、かつ auth_action フィールドが「logout」または「login」のどちらかである場合、値は「MACHINE」に設定されます。
metadata.description このフィールドには、「metadata_description」フィールドの値が入力されます(空でない場合)。
metadata.event_type このフィールドには、条件付きロジックを使用して他のフィールドの値に基づいて値が入力されます。
- STATUS_STARTUP: target_port_status が「up」の場合。
- STATUS_SHUTDOWN: target_port_status が「down」の場合。
- USER_LOGOUT: proto が空ではなく、auth_action が「logout」の場合。
- USER_LOGIN: proto が空ではなく、auth_action が「login」の場合。
- STATUS_UPDATE: metadata_description が「state changed」と一致する場合。
- GENERIC_EVENT: 上記の条件がいずれも満たされない場合。
metadata.log_type この値は「BROCADE_SERVERIRON」にハードコードされています。
metadata.product_name この値は「ServerIron」にハードコードされています。
metadata.vendor_name この値は「Brocade」にハードコードされています。
security_result.action desc フィールドに「fail」が含まれている場合、または auth_result フィールドに「fail」または「rejected」が含まれている場合、値は「BLOCK」に設定されます。

変更

2022-01-13

  • 新しく追加されたパーサー。

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