Cyber 2.0 IDS のログを収集する

パーサーのバージョン: 2.0

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

このドキュメントでは、Bindplane エージェントを使用して Cyber 2.0 IDS ログを Google Security Operations に取り込む方法について説明します。

Cyber 2.0 IDS は、侵入検知機能と侵入防止機能を統合したエンタープライズ グレードのネットワーク セキュリティを提供します。MX アプライアンスは、Snort 侵入検知エンジンを使用して、ネットワーク トラフィックで悪意のあるアクティビティを監視し、Cisco Talos の脅威インテリジェンスに基づいて IDS アラートを生成します。IDS アラートは、従来の ids-alerts タイプと現在の security_event タイプの 2 つの形式で生成されます。優先度レベルは、Snort シグネチャ分類に基づいて 1(高)から 4(非常に低い)までの範囲で設定されます。

始める前に

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

  • Google SecOps インスタンス
  • Windows Server 2016 以降、または systemd を使用する Linux ホスト
  • Bindplane エージェントと Cyber 2.0 IDS 間のネットワーク接続
  • プロキシの背後で実行する場合は、Bindplane エージェントの要件に従ってファイアウォール ポートが開いていることを確認する
  • Cisco Meraki ダッシュボードに対する管理者権限
  • Advanced Security Edition ライセンスの Cyber 2.0 IDS(IDS/IPS 機能に必要)
  • Meraki MX アプライアンスから Bindplane エージェント ホストへのネットワーク接続(UDP ポート 514 またはカスタムポート)

Bindplane エージェントの Google SecOps 認証情報を取得する

Bindplane エージェントを Google SecOps に対して認証するには、次のいずれかの方法を選択します。

  • 新しいデプロイ: Chronicle API を使用します(オプション 1)。
  • 従来のデプロイ: Ingestion API が 2027 年 7 月 20 日に廃止されるまで、取り込み認証ファイル(オプション 2)を引き続き使用します。
  1. Google Cloud コンソールにログインし、Google SecOps インスタンスにリンクされている Google Cloud プロジェクトを選択します。
  2. [IAM と管理]> [サービス アカウント] に移動します。
  3. [サービス アカウントを作成] をクリックします。
  4. 次の構成情報を指定します。
    • サービス アカウント名: アカウントの名前を入力します(例: bindplane-ingest)。
    • サービス アカウントの説明: 説明を入力します(例: Bindplane agent log ingestion)。
  5. [作成して続行] をクリックします。
  6. [このサービス アカウントにプロジェクトへのアクセスを許可する] セクションで、[ロールを選択] をクリックし、[Chronicle 編集者] を選択します。
  7. [**続行**] をクリックして [**完了**] をクリックします。
  8. 作成したサービス アカウントをクリックし、[キー] タブに移動します。
  9. 鍵を追加 > 新しい鍵を作成 の順にクリックします。
  10. [JSON] を選択し、[作成] をクリックします。キーファイルがパソコンにダウンロードされます。
  11. キーファイルを ingestion-auth.json として Bindplane コレクタ ディレクトリ(Linux の場合は /opt/observiq-otel-collector/ingestion-auth.json、Windows の場合は C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json)に保存するか、保存先のパスに合わせて creds_file_path の config.yaml を更新します。
  12. [IAM と管理][>][設定] に移動し、[プロジェクト番号] をコピーします。エクスポート構成に必要になります。

オプション 2: 取り込み認証ファイルをダウンロードする(レガシー)

  1. Google SecOps コンソールにログインします。
  2. [SIEM 設定] > [収集エージェント] に移動します。
  3. 取り込み認証ファイル をダウンロードします。
  4. Bindplane エージェントをインストールするシステムにファイルを安全に保存します。

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

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

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

次の手順に沿って、Windows または Linux オペレーティング システムに Bindplane エージェントをインストールします。

Windows へのインストール

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

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    
  3. インストールが完了するまでお待ちください。

  4. 次のコマンドを実行して、インストールの内容を確認します。

    sc query observiq-otel-collector
    

    サービス ステータスは「RUNNING 」と表示されるはずです。

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
    
  3. インストールが完了するまでお待ちください。

  4. 次のコマンドを実行して、インストールの内容を確認します。

    sudo systemctl status observiq-otel-collector
    

    サービス ステータスは「active (running) 」と表示されるはずです。

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

その他のインストール オプションとトラブルシューティングについては、Bindplane エージェントのインストール ガイドをご覧ください。

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

構成ファイルを探す

  • Linux:

    sudo nano /opt/observiq-otel-collector/config.yaml
    
  • Windows:

    notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
    

構成ファイルを編集する

  1. config.yaml の内容全体を次の構成に置き換えます。

    receivers:
      udplog:
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/meraki_ids:
        protocol: https
        # Region of your instance, for example us, europe, asia-southeast1
        location: <LOCATION>
        # Project number of the Google Cloud project linked to the instance
        project: '<PROJECT_NUMBER>'
        compression: gzip
        creds_file_path: '<CREDS_FILE_PATH>'
        customer_id: '<CUSTOMER_ID>'
        endpoint: chronicle.googleapis.com
        log_type: CYBER_2_IDS
        raw_log_field: body
        ingestion_labels:
          vendor: cisco_meraki
          product: mx_security_appliance
    
    service:
      pipelines:
        logs/meraki_to_chronicle:
          receivers:
            - udplog
          exporters:
            - chronicle/meraki_ids
    
  2. 各プレースホルダを次のように置き換えます。

    • レシーバーの構成:

      • レシーバーは、UDP ポート 514(標準 syslog ポート)のすべてのインターフェース(0.0.0.0)でリッスンするように構成されています。
      • ポート 514 がすでに使用されている場合や、Linux で root 以外のユーザーとして実行する必要がある場合は、ポートを 1514 または別の使用可能なポートに変更します。
    • エクスポーターの構成:

      • <CREDS_FILE_PATH>: サービス アカウント JSON キーファイルのフルパス(オプション 1):

        • Linux: /opt/observiq-otel-collector/ingestion-auth.json
        • Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
      • <CUSTOMER_ID>: 前の手順でコピーしたお客様 ID

      • location: <LOCATION> を Google SecOps インスタンスのリージョン(us、europe、asia-southeast1 など)に置き換えます。エクスポーターは、chronicle.googleapis.com の前にこの値を付けます。完全なリストについては、リージョン エンドポイントをご覧ください。

      • project: <PROJECT_NUMBER> を [IAM と管理] > [設定] のプロジェクト番号に置き換えます。

      • endpoint: chronicle.googleapis.com に設定したままにします。

      • log_type: Cisco Meraki IDS アラートの場合は CYBER_2_IDS に設定します。

      • ingestion_labels: Google SecOps でログを分類するためのオプションのラベル。

構成の例

receivers:
  udplog:
    listen_address: "0.0.0.0:514"

exporters:
  chronicle/meraki_ids:
    protocol: https
    # Region of your instance, for example us, europe, asia-southeast1
    location: <LOCATION>
    # Project number of the Google Cloud project linked to the instance
    project: '<PROJECT_NUMBER>'
    compression: gzip
    creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json'
    customer_id: 'a1b2c3d4-e5f6-g7h8-i9j0-k1l2m3n4o5p6'
    endpoint: chronicle.googleapis.com
    log_type: CYBER_2_IDS
    raw_log_field: body
    ingestion_labels:
      vendor: cisco_meraki
      product: mx_security_appliance
      environment: production

service:
  pipelines:
    logs/meraki_to_chronicle:
      receivers:
        - udplog
      exporters:
        - chronicle/meraki_ids

従来の Ingestion API エクスポーター

  • オプション 2 の取り込み認証ファイルを使用する場合は、exporters ブロックを次のように置き換えます。creds_file_path を取り込み認証ファイルのパスに設定します。インスタンスが米国以外にある場合は、malachiteingestion-pa.googleapis.com を リージョン エンドポイント(europe-malachiteingestion-pa.googleapis.com など)に置き換えます。

    exporters:
      chronicle/meraki_ids:
        compression: gzip
        creds_file_path: '<CREDS_FILE_PATH>'
        customer_id: '<CUSTOMER_ID>'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: CYBER_2_IDS
        raw_log_field: body
        ingestion_labels:
          vendor: cisco_meraki
          product: mx_security_appliance
    

構成ファイルを保存する

編集が完了したら、ファイルを保存します。

  • Linux: Ctrl+O、Enter、Ctrl+X を押します。
  • Windows: [ファイル] > [保存] をクリックします。

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

  • Linux で Bindplane エージェントを再起動するには:

    1. 次のコマンドを実行します。

      sudo systemctl restart observiq-otel-collector
      
    2. サービスが実行されていることを確認します。

      sudo systemctl status observiq-otel-collector
      
    3. ログでエラーを確認します。

      sudo journalctl -u observiq-otel-collector -f
      
  • Windows で Bindplane エージェントを再起動するには:

    1. 次のいずれかのオプションを選択します。

      • 管理者としてコマンド プロンプトまたは PowerShell を実行する:

        net stop observiq-otel-collector && net start observiq-otel-collector
        
      • サービス コンソール:

        1. Win+R を押して「services.msc」と入力し、Enter キーを押します。
        2. [observIQ OpenTelemetry Collector] を探します。
        3. 右クリックして [再起動] を選択します。
    2. サービスが実行されていることを確認します。

      sc query observiq-otel-collector
      
    3. ログでエラーを確認します。

      type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
      

Cyber 2.0 IDS syslog 転送を構成する

  1. https://dashboard.meraki.com でCisco Meraki ダッシュボード にログインします。
  2. 左上の組織プルダウン メニューから組織を選択します。
  3. ネットワーク プルダウン メニューから、MX セキュリティ アプライアンスを含むネットワークを選択します。
  4. [Network-wide] > [Configure] > [General] に移動します。
  5. [Reporting] セクションまで下にスクロールします。
  6. [Syslog サーバー] で [Add a syslog server] をクリックします。
  7. 次の設定で syslog サーバーを構成します。
    • サーバー IP: Bindplane エージェント ホストの IP アドレスを入力します(例: 192.168.1.100)。
    • ポート: 514 と入力します(Bindplane エージェントで別のカスタムポートが構成されている場合は、そのポートを入力します)。
    • Roles: 次のロールを選択して IDS アラートを転送します:
      • [IDS alerts] をオンにします(従来の ids-alerts 形式のイベントの場合)。
      • [セキュリティ イベント] をオンにします(IDS アラートや AMP マルウェア検出など、現在の security_event 形式のイベントの場合)。
  8. ページの下部にある [変更を保存] をクリックします。
  9. MX セキュリティ アプライアンスで IDS/IPS が有効になっていることを確認します。
    1. [Security & SD-WAN] > [Configure] > [Threat protection] に移動します。
    2. [Mode] が [Detection](IDS)または [Prevention](IPS)に設定されていることを確認します。
    3. セキュリティ要件に基づいて、ルールセット([Connectivity]、[Balanced]、[Security])を選択します。
    4. [変更を保存] をクリックします。
  10. テスト トラフィックを生成して、ログ転送を確認します。

    1. [Security & SD-WAN][>][Monitor][>][Security center] に移動します。
    2. IDS アラートが生成されていることを確認します。
    3. Bindplane エージェント ログを確認して、イベントが受信され、Google SecOps に転送されていることを確認します。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
time1、monthnum+day+time2、time metadata.event_timestamp イベントが発生したときのタイムスタンプ
app_version about.resource.attribute.labels リソース属性の Key-Value ペアのリスト
prod_event_type metadata.product_event_type プロダクト固有のイベントタイプ
グループ principal.group.group_display_name グループの表示名
app_name、app_version、hostname、principal_ip、md5_value 約 イベントに関する情報
inter_host intermediary.hostname 仲介者のホスト名
説明 metadata.description イベントの説明
プロトコル network.ip_protocol ネットワーク接続で使用される IP プロトコル
方向 network.direction ネットワーク トラフィックの方向
ソース principal.port プリンシパルのポート番号
宛先 target.port ターゲットのポート番号
SourceIP、principal_ip principal.ip プリンシパルの IP アドレス
SourceIP、principal_ip principal.asset.ip プリンシパルのアセットの IP アドレス
DestinationIP target.ip ターゲットの IP アドレス
DestinationIP target.asset.ip ターゲットのアセットの IP アドレス
HostName、hostname principal.hostname プリンシパルのホスト名
HostName、hostname principal.asset.hostname プリンシパルのアセットのホスト名
ApplicationName target.application ターゲットのアプリケーション名
UserName principal.user.userid プリンシパルのユーザー ID
FullPath target.file.full_path ファイルのフルパス
ステータス security_result.action セキュリティ システムによって実行されたアクション
pid principal.process.pid プロセス ID
src_application principal.application プリンシパルのアプリケーション名
SubSeqNumber、FlowHandle、ClientZValue、MACAddress、State、IsXCast、FlowState、DLLMode security_result.detection_fields セキュリティ結果の検出フィールド
重要度 security_result.severity セキュリティ結果の重要度
DB、NewApps、UniqueApps、Computers、Duration additional.fields その他のフィールド
metadata.event_type イベントのタイプ
metadata.product_name 商品名
metadata.vendor_name ベンダー名

変更ログ

このパーサーの変更ログを表示する

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