コンテンツにスキップ

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フロー

使用リソース

  • Debian 11.x (bullseye)にインストールされたFluentdhttps://fluentd-example-domain.comで利用可能です

  • Linux Red HatにインストールされたQRadar V7.3.3がIPアドレスhttps://109.111.35.11:514で利用可能です

  • EU cloudのWallarm Consoleへの管理者アクセスでFluentd統合を設定します

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
34.141.230.156
34.91.138.113
34.90.114.134
35.204.127.78

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へ転送されます
    • FluentdのログはSyslog標準に従い、JSON形式で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ログを容易に見つけることができ、さらにログのフィルタリングにも利用できます。ログソースは以下のように設定されます:

  • ログソース名: Fluentd

  • ログソースの説明: Fluentdからのログ

  • ログソースの種類: Syslog標準で使用される受信ログパーサの種類 Universal LEEF

  • プロトコルの設定: ログ転送の標準 Syslog

  • ログソース識別子: 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における新規ユーザのログ

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

FluentdからのQRadarにおける新規ユーザカード