SIEMのコスト削減とパフォーマンス向上(誤検知防止)の技-その3.転送レート制限(Message throttle)

螺子です。本連載記事では、「SIEMのコスト削減とパフォーマンス向上(誤検知防止)の技」と題して、SSBの機能を利用して、SIEMのコストを削減する方法およびSIEMのパフォーマンスを向上(誤検知防止)させる方法について、何回かにわたって投稿しています。

はじめに

セキュリティインシデント対策として、ログを長期間保存すると共にSIEMに転送しているお客様は数多くいるのではないでしょうか?

SIEMの中にはEPS(1秒当たりのイベント数)に基づいて課金されるものがあります。EPSは1秒間にSIEMに取り込まれるイベント(ログ)の数、つまり、受信レートを意味します。

ログが常に一定のレート(EPS)で発生していれば良いのですが、一時的に増えるログ(例えば、始業時の一時的なログ量増加など)により、そのレートで定常的に課金されるのには不満をお持ちの方もいるのではないでしょうか?

SSBでは、SIEMへのログ転送時に転送レート(1秒間にディスティネーションへ送信するメッセージの最大数)を制限できます。

これにより、一時的に増えたログを一定のレートでSIEMへ転送でき、SIEMのEPS(受信レート)を抑えることでコストを削減できます。

なお、受信したログ量で課金されるSIEMの場合、本記事の内容は有効ではありません。なぜなら、転送レートを抑えたとしても、最終的に転送されるログ量は変わらないからです。この場合、フィルターを使用し、ログ量を削減することが有効な手段となります。過去記事、「Add filter」および「Custom filter」を参照ください。

転送レート制限(`Message throttle`)設定

SSBで、SIEMへの転送レートを制限する設定(`Message throttle`)を以下に示します。

※なお、本ブログ執筆時点では`Spoof source address`を有効にした場合、`Message throttle`は正しく機能しない問題があることにご注意ください。

ここでは、ログをSIEMへ転送する設定(パス、ディスティネーションなど)は既に設定済みであるものとします。転送設定については、過去記事「次世代ファイアウォールPalo Alto(Prisma)のログをSOCへ転送!」が参考になりますので、ご参照ください。

[Log]>[Destinations]でSIEMへログを転送するディスティネーションのをクリックします。設定ページが展開されます。

`Message throttle`フィールドに、転送レート(1秒間にディスティネーションへ送信するメッセージの最大数)を設定(ここでは、1,000メッセージ/秒)します。

また、受信したログと転送するログの差分のログメッセージをバッファリングするのに`Output disk buffer`フィールドを設定(ここでは、30MiB)します。例えば、10,000EPS受信して、1000EPS転送する場合、1秒間に9000(10,000-1,000)メッセージ分をバッファリングする必要があります。

図1. Message throttleおよびOutput disk buffer設定例

※ここでは、メッセージサイズ200byteのログを1秒間に1万メッセージ送信します。30MiBは、約15秒間(10000msg/s * 200byte * 15s = 30MB)のログをバッファリングできます。

ログ転送の確認

それでは、受信したログを確認・比較してみます。

ここでは、ログメッセージを1秒間に1万メッセージ送信(10,000EPS)しています。

`Message throttle`(転送レート)未設定時のログ受信の結果は以下のようになります。

図1. `Message throttle`未設定時のログ受信例

ログの受信タイムスタンプ(Processed timestamp)を確認すると、最初のログ受信時刻は”2024-01-15 09:45:57″、最後のログ受信は”2024-01-15 09:45:57″で1秒間に10,000メッセージ受信しています。

図2. `Message throttle`未設定時のログ受信時間例

`Message throttle`(転送レート)設定時のログ受信の結果は以下のようになります。

図3. `Message throttle`設定時のログ受信例

ログの受信タイムスタンプ(Processed timestamp)を確認すると、最初のログ受信時刻は”2024-01-15 09:45:57″、最後のログ受信は”2024-01-15 09:46:09″で12秒間に亘って10,000メッセージ受信しています。

つまり、平均840EPS(10,000÷12≒833)でログを受信しており、転送レートを1,000EPS以下に抑えていることがわかります。

図4. `Message throttle`設定時のログ受信時間例

ただし、これはSIEMへのログ受信が12秒遅れるので、SIEMでのセキュリティ検知がその分遅れることを意味します。

許容する遅延時間などを十分にご検討頂き、`Message throttle`(転送レート)を設定してください。

おわりに

いかがでしたでしょうか。`Message throttle`機能を利用してSIEMへの転送レートを一時的に抑えることでができるようになりました。これにより、SIEMコストの削減ができる可能性があることがわかりました。

冒頭でも説明していますが、受信したログ量で課金されるSIEMの場合、本記事の内容は有効ではありません。なぜなら、転送レートを抑えたとしても、最終的に転送されるログ量は変わらないからです。この場合、フィルターを使用し、ログ量を削減することが有効な手段となります。過去記事、「Add filter」および「Custom filter」を参照ください。

SSBでは、リアルタイムですべてのログを長期的に保存します。SSBは、データディスクなどに必要な保存容量を割り当てることでログを長期保存でき、保存したログにインデックス付けすることで高速検索が可能です。そうすることで、実際にログが発生した時間でログを閲覧・検索および横断的に調査できます。

ログの長期保存と高速検索の必要性

ログを長期的に保存することは有益です。
標的型攻撃等では、最初の攻撃から認知までに1年近くを要する場合もあり、インシデント発生時に原因究明を適切に行うために、過去に遡った調査も必要にることからログは十分な期間保存しておくことが必要だからです。
また、ログを迅速に検索できないと、サイバー攻撃やその他の脅威への対応に時間がかかる可能性があります。

SSBの機能

本記事で使用したSSBの機能は以下の通りです。

  • Message throttle
  • Output disk buffer

参考資料

`Message throttle`および`Output disk buffer`設定の詳細については、syslog-ng Store Box 7 LTS管理者ガイドの「9.3 リモートサーバーへのログメッセージ転送」を参照してください。

「SIEMのコスト削減とパフォーマンス向上(誤検知防止)の技」連載記事リスト

「リモートアクセスログを調査」連載記事リスト

「syslog-ng Store Box大活用連載企画」連載記事リスト



SSBは、高信頼ログ管理アプライアンスです。様々なデバイスおよびアプリケーションからログメッセージを収集、分類、フィルタリング、正規化して安全に保存可能です。ログデータの信頼性を担保し、膨大なログが発生する高負荷環境、あるいはログロストが許されない企業・組織のログ管理に最適です。

syslog-ng Store Boxについての詳細は、製品紹介ページ・製品ガイドをご参照ください。

こんな記事も読まれています

最新記事

おすすめ記事

  1. 産業スパイを発見し、防ぐ方法とは

  2. Flexible NetFlowとは?を5分で理解する

  3. WinSyslog 使い方ガイド#2 受信時刻とデバイスタイムスタンプ両方を出力する

製品カテゴリー

JTC IT用語集
TOP