LayerX エンジニアブログ

LayerX の エンジニアブログです。

ログ一元管理の本質とSIEMの限界 - データ基盤への道

三井物産デジタル・アセットマネジメントで、ガバナンス・コンプラエンジニアリングをしている 鈴木 (@ken5scal )です。

いきなりですが、ログ管理はどの職種どの場面でも重要です。セキュリティにおいても、古生代よりサーバー、ネットワーク機器、アプリケーションなどから出力されるログを一元的に収集し、監視や分析を行うことで、セキュリティインシデントの早期発見や対応、コンプライアンス要件の達成が可能になります。

このようなログ一元管理を実現する代表的なソリューションは、そう、皆様よくご存知のSIEM。我らが「Security Information and Event Management」であります。

私はSIEMを、新卒で入社した大手企業でSOC(Security Operation Center)として触れ、その後ユーザー企業でもOSSやAWS GuardDuty(?)などの形で利用する機会がありました。

本日は、ユーザー企業に入社した際に大いに参考にさせていただいたブログの著者、星(@kani_b)さんがLayerXに入社したことを記念して、私見を述べさせていただきます。当時のことを振り返りながら、現在のSIEMについて意見を述べさせていただきたいと思います。

techlife.cookpad.com

ログ一元管理は難しい

しかし、ログを一元管理するという目的のためには、様々な機能とプロセスが必要になります。ログ一元管理を「取得・転送」「保管」「分析」の3つの機能に分類してみると、その複雑さが浮き彫りになります。

取得・転送

ログを一元的に収集するには、様々なシステムからログを取得・転送する仕組みが必要になります。ログをプルする場合は、各システムにコレクターをインストールするか、手動で収集する必要があります。ログをプッシュする場合は、フォワーダーやアグリゲーターといった専用のコンポーネントを用意する必要があります。

また、大量のログを収集する場合、ネットワークの帯域幅を十分に確保し、転送コストを考慮する必要があります。

保管

ログを保管するためには、まず保管期間を法令や組織のポリシーに応じて適切な期間を決める必要があります。長期間の保管かあるいは永続化させる場合は、データ量の増加に伴うパフォーマンス低下を防ぐためのメンテナンスが欠かせませんし、金銭的なコストも非線形的に増加していきます。

永続化しない場合は、ログのローテーションを行う必要があります。しかし、それには定期的なアーカイブ作業や、必要に応じてログを取り出すための運用プロセスも欠かせません。

上記に加え、保管したログの完全性と整合性を常に保証しなければなりません。

分析

収集したログを有効に活用するには、分析が不可欠です。まず、様々な形式のログを正規化し、パースする必要があります。その上で、各ログのフィールド群を識別し、分類する作業が求められます。フィールド群の特性に合わせて適切なクエリを作成・管理し、ダッシュボードを構築する必要があります。

リアルタイムでのログ分析を行う場合は、さらに高い負荷がかかります。パフォーマンスを確保するためには、高スペックなリソースを投入する必要があり、コスト増が避けられません。

このように、ログの一元管理には多くの複雑さが伴います。 そのためSIEM導入によって、ログの一元管理を達成できる!と考えるのは、運用リスクが高くなるでしょう。一方、ではSIEMはその偉大な役割を終えたのでしょうか。

SIEMの強み

それでも、SIEMには明確な強みがあります。

第一に、SIEMには多くのセキュリティベンダー製品との豊富な統合機能があり、多様なログソースに対応できます。これにより、各システムにコレクターをインストール・自作する必要がなくなるというメリットがあります。

第二に、SIEMは収集したログの構造を分析し、自動でパースを行います。これにより、ユーザーはログの正規化や構造の把握に頭を悩ませる必要がなくなります。

第三に、SIEMには既存の攻撃手法や脅威とのマッピングルールが用意されています。Mitre ATT&CKなどの脅威フレームワークに沿ったルールが備わっており、攻撃の検知に役立ちます。

SIEMの限界

一方で、SIEMには限界もあります。

まず、永続的なログの保管を行う場合、保管サイズが非常に大きくなり、それに伴うコストも高額になる可能性があります。次に、長期間のログ分析には適していません。数年分、数十年分のログを効率的に分析することは難しくなります。これは、3つの機能を維持していくための保守・運用が重くなっていくからです

さらに、既存のクエリでは見つけられないこともしばしばあるため、新種の攻撃やより高度な脅威に対応するには、さらなるログを「管理」していく必要があります。既存のルールにマッチしないインシデントを検知するには、機械学習などの高度な分析手法が必要となるためです。

また、ログの主体を詳しくしるために、外部のデータに頼る必要がでます。例えば、端末の情報やIDaaS上のユーザーとの紐付けなどです。こういったログ以外のデータと照合する分析にSIEMは対応していません。

では、その限界の先には何があるのでしょうか。

データ基盤への道

このようにSIEMにはメリットとデメリットがあり、ログ一元管理の取り組みにはある程度の限界があります。長期的な視点に立つと、単にSIEMだけに頼るのではなく、より強力なデータ基盤への移行を目指すべきでしょう。

ここでいうデータ基盤とは、企業のデータ資産を一元的に管理し、活用するための基盤のことです。構造化データと非構造化データを統合的に扱え、高度な分析とガバナンスが可能になります。セキュリティログも、この豊富なデータ資産の一部として扱うことができます。

データ基盤を構築することで、長期的なログの保管と分析が現実的になります。過去のログを機会学習モデルに学習させれば、新種の脅威への対応力も高まります。さらに、セキュリティログだけでなく、様々な業務データとの相関分析が行えるようになり、より高度な洞察を得ることができます。

そういった効用に期待ができます。

しかし、データ基盤への移行は簡単ではありません。データガバナンスの確立、アナリティクス基盤の整備、オペレーションの構築など、さまざまな課題に直面することになります。また、ログのデータ基盤への取り込みには、移行プロセスとコストがかかります。

そのため、我々は、当面はSIEMなどの既存ソリューションを活用しながら、段階的にデータ基盤への移行を目指しています。そうすることで、現在の課題にも対応しつつ、将来のニーズにも対応できる強固なセキュリティ基盤を構築することができるはずです。

そういったことをしていきたい仲間をLayerX CTO室と、LayerX Fintech事業部は募集しています。