コンテンツにスキップ

Fluentd経由でのIBM QRadar

本手順では、WallarmをデータコレクターFluentdと統合し、イベントをQRadar SIEMシステムへ転送するための統合例を示します。

The most common logging scheme in complex systems consists of the following components:

  • Data collector: accepts logs from several sources and forwards logs to the SIEM system

  • SIEM system or log management systems: used to analyze logs and monitor the system status

Webhookのフロー

使用リソース

Wallarm Cloud IP addresses

To provide Wallarm Cloud access to your system, you may need a list of its public IP addresses:

35.235.66.155
34.102.90.100
34.94.156.115
35.235.115.105
34.94.85.217
34.94.51.234
34.102.59.122
34.94.238.72
35.235.100.79
34.102.45.38
34.94.241.21
34.102.90.100
34.94.203.193
34.94.238.221
34.94.9.23
34.141.230.156
34.91.138.113
34.90.114.134
35.204.127.78
34.90.24.155

FluentdおよびQRadarサービスへのリンクは例として記載しているため、応答しません。

Fluentdの設定

WallarmはWebhookを介して中間データコレクターFluentdにログを送信するため、Fluentdの設定は次の要件を満たす必要があります:

  • POSTまたはPUTリクエストを受け付ける必要があります

  • HTTPSリクエストを受け付ける必要があります

  • 公開URLで到達可能である必要があります

  • ログをIBM QRadarへ転送する必要があります。この例ではログ転送にremote_syslogプラグインを使用します

Fluentdはtd-agent.confファイルで設定します:

  • 受信Webhookの処理はsourceディレクティブで設定します:

    • トラフィックはポート9880に送信されます
    • FluentdはHTTPS接続のみを受け付けるように設定します
    • 公開信頼されたCAで署名されたFluentdのTLS証明書は/etc/ssl/certs/fluentd.crtにあります
    • TLS証明書の秘密鍵は/etc/ssl/private/fluentd.keyにあります
  • QRadarへのログ転送とログ出力はmatchディレクティブで設定します:

    • すべてのイベントログがFluentdからコピーされ、IPアドレス https://109.111.35.11:514 のQRadarへ転送されます
    • ログはSyslog標準に従ってJSON形式でFluentdからQRadarへ転送されます
    • QRadarとの接続はTCPで確立します
    • Fluentdのログは追加でコマンドラインにJSON形式で出力します(コード19~22行)。この設定は、イベントがFluentd経由で記録されていることを確認するために使用します
<source>
  @type http # HTTP/HTTPSトラフィック用の入力プラグイン
  port 9880 # 受信リクエスト用ポート
  <transport tls> # 接続処理の設定
    cert_path /etc/ssl/certs/fluentd.crt
    private_key_path /etc/ssl/private/fluentd.key
  </transport>
</source>
<match **>
  @type copy
  <store>
      @type remote_syslog # Syslog経由でFluentdからログを転送するための出力プラグイン
      host 109.111.35.11 # ログの転送先IPアドレス
      port 514 # ログの転送先ポート
      protocol tcp # 接続プロトコル
    <format>
      @type json # 転送するログの形式
    </format>
  </store>
  <store>
     @type stdout # Fluentdのログをコマンドラインに出力するための出力プラグイン
     output_type json # コマンドラインに出力するログの形式
  </store>
</match>

設定ファイルのより詳細な説明はFluentdの公式ドキュメントにあります。

Fluentd設定のテスト

Fluentdのログが作成されQRadarに転送されることを確認するために、FluentdへPUTまたはPOSTリクエストを送信できます。

リクエスト例:

curl -X POST 'https://fluentd-example-domain.com' -H "Content-Type: application/json" -d '{"key1":"value1", "key2":"value2"}'

Fluentdのログ:
Fluentdのログ

QRadarのログ:
QRadarのログ

QRadarのログペイロード:
QRadarのログ

QRadarの設定(任意)

QRadarではログソースを設定します。これにより、QRadar内のすべてのログ一覧からFluentdのログを容易に見つけられ、さらにログのフィルタリングにも使用できます。ログソースの設定は以下のとおりです:

  • Log Source Name: Fluentd

  • Log Source Description: Logs from Fluentd

  • Log Source Type: Syslog標準で使用する受信ログのパーサータイプ Universal LEEF

  • Protocol Configuration: ログ転送の標準 Syslog

  • Log Source Identifier: FluentdのIPアドレス

  • その他の設定はデフォルト

QRadarのログソース設定のより詳細な説明はIBMの公式ドキュメントにあります。

Fluentd用のQRadarログソース設定

Fluentdインテグレーションの設定

  • Webhooks are sent to https://fluentd-example-domain.com

  • Webhooks are sent via POST requests

  • The webhook integration has default advanced settings

  • Webhooks sent to Webhook URLs are all available events: hits, system events, vulnerabilities, scope changes

FluentdとのWebhookインテグレーション

Fluentdインテグレーションの設定の詳細

テスト例

To test the configuration, a new user is added in Wallarm Console:

Adding user

Fluentdはイベントを次のように記録します:

FluentdからQRadarへの新規ユーザーに関するログ

QRadarのログペイロードには、次のJSON形式のデータが表示されます:

Fluentdからの新規ユーザーカード(QRadar)