Radware WAF のログを収集する

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

このドキュメントでは、Google Security Operations フォワーダーを使用して Radware ウェブ アプリケーション ファイアウォール(WAF)のログを収集する方法について説明します。パーサーは、grok パターンを使用して Radware ファイアウォール Syslog メッセージからフィールドを抽出し、UDM にマッピングします。さまざまなログ形式を処理し、攻撃の詳細に基づいてセキュリティ結果フィールドに入力し、attack_id に基づいてイベントを分類して、Google SecOps の取り込み用にデータを拡充します。

始める前に

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

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 Agent を構成する

  1. 構成ファイルにアクセスします。

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

    receivers:
      udplog:
        # Replace with your specific IP and port
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Path to the ingestion authentication file
        creds: '/path/to/your/ingestion-auth.json'
        # Your Chronicle customer ID
        customer_id: 'your_customer_id'
        endpoint: malachiteingestion-pa.googleapis.com
        ingestion_labels:
          log_type: SYSLOG
          namespace: radware_waf
          raw_log_field: body
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    
  • 自社のインフラストラクチャでの必要性に応じて、ポートと IP アドレスを置き換えます。
  • <customer_id> は、実際の顧客 ID に置き換えます。
  • /path/to/ingestion-authentication-file.json の値を、Google SecOps の取り込み認証ファイルを取得するで認証ファイルを保存したパスに更新します。

Bindplane Agent を再起動して変更を適用する

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

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

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Radware AppWall WAF を構成する

タスクを完了するには、次の 3 つの構成を行います。

  • Vision Reporter を使用して AppWall スタンドアロンを構成します。
  • Vision Reporter を使用して、Alteon で統合された AppWall を構成します(イベントの詳細に HTTP リクエスト データを含めます)。
  • Bindplane エージェントにログを送信するように Vision Reporter を構成します。

Vision Reporter を使用して AppWall Standalone を構成する

  1. 管理者認証情報を使用して Radware WAF コンソールにログインします。
  2. [設定> サービス> 視覚サポート> ビジョン レポーター] に移動します。
    • [Vision Reporter にイベントを送信する] チェックボックスをオンにして、ロギングを有効にします。
    • Vision Reporter アドレス: Vision Reporter の IP アドレスを入力します。
    • ポート: ポート番号を入力します。
    • プロトコル: UDP または TCP を選択します。
    • HTTP レスポンス データを含めるには、[Vision Reporter に返信を送信する] チェックボックスをオンにします。
  3. [保存] をクリックします。

Vision Reporter を使用して Alteon で統合 AppWall を構成する(HTTP リクエスト データ ロギングに推奨)

  1. 管理者認証情報を使用して Radware WAF コンソールにログインします。
  2. [Configuration] > [Security] > [Web Security] > [Vision Reporter] に移動します。
    • [Vision Reporter にイベントを送信する] チェックボックスをオンにして、ロギングを有効にします。
    • [Vision レポーターにイベントを送信する] チェックボックスをオンにします。
    • Vision Reporter の IP アドレス: Vision Reporter の IP アドレスを入力します。
    • ポート: 高いポート番号を入力します。
    • セキュリティ: [UDP] または [TCP] を選択します。
  3. [保存] をクリックします。

ログを Bindplane エージェントに送信するように Vision Reporter を構成する

  1. Radware Vision Reporter 管理コンソールにログインします。
  2. [構成] > [SIEM と外部ロギング] に移動します。
  3. [+ 新しい SIEM 宛先を追加] をクリックします。
    • [宛先名]: 「Google SecOps Forwarder」と入力します。
    • ログ エクスポート タイプ: 構造化ロギングの場合は、[Syslog](RFC 5424 形式)を選択します。
    • リモート Syslog サーバー IP: Bindplane Agent の IP アドレスを入力します。
    • ポート: Bindplane エージェントがリッスンするポートを入力します(例: UDP の場合は 514、TCP の場合は 601)。
    • プロトコル: Bindplane の構成に応じて、[UDP] または [TCP] を選択します。
  4. [保存] をクリックします。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
action event.idm.read_only_udm.security_result.action action が「drop」の場合は、「BLOCK」に設定します。
attack_desc event.idm.read_only_udm.security_result.description 直接マッピングされます。
attack_type event.idm.read_only_udm.security_result.threat_name 直接マッピングされます。
command event.idm.read_only_udm.principal.process.command_line 直接マッピングされます。
description event.idm.read_only_udm.security_result.description attack_desc が空の場合、直接マッピングされます。
dst_ip event.idm.read_only_udm.target.ip 直接マッピングされます。
dst_port event.idm.read_only_udm.target.port 直接マッピングされ、整数に変換されます。username が存在し、command が存在しない場合は、「MACHINE」に設定されます。未加工ログの collection_time フィールドからコピーされます。デフォルトは「NETWORK_CONNECTION」です。src_ip または dst_ip のいずれかが欠落している場合は、「GENERIC_EVENT」に設定します。username が存在し、command が存在しない場合は、「USER_LOGIN」に設定されます。attack_id に基づくロジックでオーバーライドできます。「RADWARE_FIREWALL」に設定されます。product フィールドからマッピングされます。「Radware」に設定します。
intermediary_ip event.idm.read_only_udm.intermediary.ip 直接マッピングされます。
obv_ip event.idm.read_only_udm.observer.ip 直接マッピングされます。
product event.idm.read_only_udm.metadata.product_name 直接マッピングされます。
protocol_number_src event.idm.read_only_udm.network.ip_protocol parse_ip_protocol.include ロジックを使用して解析されます。
rule_id event.idm.read_only_udm.security_result.rule_id 直接マッピングされます。attack_id の値に基づいて導出されます。値には、ACL_VIOLATION、NETWORK_DENIAL_OF_SERVICE、NETWORK_SUSPICIOUS、NETWORK_RECON があります。
src_ip event.idm.read_only_udm.principal.ip 直接マッピングされます。
src_port event.idm.read_only_udm.principal.port 直接マッピングされ、整数に変換されます。
ts event.idm.read_only_udm.metadata.event_timestamp 解析され、タイムスタンプに変換されます。
username event.idm.read_only_udm.target.user.userid command が存在しない場合、直接マッピングされます。
username event.idm.read_only_udm.principal.user.userid command が存在する場合、直接マッピングされます。

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