螺子です。本連載記事では、「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)メッセージ分をバッファリングする必要があります。
※ここでは、メッセージサイズ200byteのログを1秒間に1万メッセージ送信します。30MiBは、約15秒間(10000msg/s * 200byte * 15s = 30MB)のログをバッファリングできます。
ログ転送の確認
それでは、受信したログを確認・比較してみます。
ここでは、ログメッセージを1秒間に1万メッセージ送信(10,000EPS)しています。
`Message throttle`(転送レート)未設定時のログ受信の結果は以下のようになります。
ログの受信タイムスタンプ(Processed timestamp)を確認すると、最初のログ受信時刻は”2024-01-15 09:45:57″、最後のログ受信は”2024-01-15 09:45:57″で1秒間に10,000メッセージ受信しています。
`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以下に抑えていることがわかります。
ただし、これは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のコスト削減とパフォーマンス向上(誤検知防止)の技」連載記事リスト
「リモートアクセスログを調査」連載記事リスト
- (その1)「フィルターログスペースを使用して必要なログのみ検索・抽出してみる!」
- (その2)「マルチログスペースを使用してログを集約してみる!」
- (その3)「リモートログスペースを使用して他のSSBに保存したログを検索・抽出してみる!」
- (その4)「サービス残業させていない?リライトを使用して日時を指定して検索してみる!」
- (その5)「サービス残業させていない?業務時間外勤務の実態をグラフで見やすく!」
- (その6)「サービス残業させていない?レポートを日ごと、週ごと、月ごとに定期的に送信!」
- (その7)「不正アクセスされていない?アクセス元IPアドレスから国・都市・ASNの調査!」
- (その8)「不正アクセスされていない?認証エラーの確認はしなくて大丈夫?」
- (その9)「不正アクセスされていない?認証エラーのログを見逃さない!(コンテンツベースアラート)」
- (その10)「不正アクセスされていない?認証エラーのログを見逃さない!(パターンデータベースアラート)」
- (その11)「不正アクセスされていない?認証エラーのログを見逃さない!(メッセージレートアラート)」
- (その12)「不正アクセスされていない?認証エラーログを可視化(平常時の確認)」
「syslog-ng Store Box大活用連載企画」連載記事リスト
- 第1回「syslog-ng Store Boxを知る」
- 第2回「syslog-ng Store Boxを仮想環境にインストールする」
- 第3回「syslog-ng Store Boxで出来ることまとめ」
- 第4回「Wiresharkでsyslogプロトコルパケットを覗く」
- 第5回「Ciscoスイッチ、FortigateファイアウォールログをSSBで受信!よりログを検索しやすく」
- 第6回「RPC APIを使ってみる、自社システムに統合!ログ検索の自動化!」
- 第7回「Active Directoryと連携して、Active Directoryユーザー認証!」
- 第8回「SSBをHA(High Availability)構成で構築してみる!」
- 第9回「ログをバイナリおよびテキスト形式で保存、違いを比較してみる」
- 第10回「ログファイルを共有して、外部ホストからアクセスしてみる!」
- 第11回「フィルターを使用して、必要なログのみ保存してみる!」
- 第12回「SSBの監視とアラート!SNMPマネージャーで監視およびSNMPトラップを受信してみる」
- 第13回「コンテンツベースアラート。重要なログを見逃さない!」
- 第14回「設定変更履歴。コンプライアンスにも対応!」
- 第15回「トラブルシューティングに役立つ機能。問題を迅速に解決!」
- 第16回「ユーザーアクセス制御。アクセス権限とタイプを設定してみる!」
- 第17回「リライト機能。ログの整形や正規化!」
- 第18回「バックアップリストア。システムデータおよびログデータをバックアップ、リストアしてみる!」
- 第19回「アーカイブ/クリーンアップ。ログデータをアーカイブ、クリーンアップしてみる!」
- 第20(最終)回「SSBの有効活用および安定稼働のためのポイントを紹介!」
SSBは、高信頼ログ管理アプライアンスです。様々なデバイスおよびアプリケーションからログメッセージを収集、分類、フィルタリング、正規化して安全に保存可能です。ログデータの信頼性を担保し、膨大なログが発生する高負荷環境、あるいはログロストが許されない企業・組織のログ管理に最適です。
syslog-ng Store Boxについての詳細は、製品紹介ページ・製品ガイドをご参照ください。