JP6616045B2 - 異種混在アラートのグラフベース結合 - Google Patents

異種混在アラートのグラフベース結合 Download PDF

Info

Publication number
JP6616045B2
JP6616045B2 JP2019502545A JP2019502545A JP6616045B2 JP 6616045 B2 JP6616045 B2 JP 6616045B2 JP 2019502545 A JP2019502545 A JP 2019502545A JP 2019502545 A JP2019502545 A JP 2019502545A JP 6616045 B2 JP6616045 B2 JP 6616045B2
Authority
JP
Japan
Prior art keywords
alerts
host
alert
graph
hosts
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019502545A
Other languages
English (en)
Other versions
JP2019514315A (ja
Inventor
ルーアン タン、
ジェンジャン チェン、
グオフェイ ジアン、
ジチュン リ、
ハイフォン チェン、
健治 吉平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Laboratories America Inc
Original Assignee
NEC Laboratories America Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US15/477,603 external-priority patent/US10476749B2/en
Application filed by NEC Laboratories America Inc filed Critical NEC Laboratories America Inc
Publication of JP2019514315A publication Critical patent/JP2019514315A/ja
Application granted granted Critical
Publication of JP6616045B2 publication Critical patent/JP6616045B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0604Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time
    • H04L41/0609Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time based on severity or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Debugging And Monitoring (AREA)

Description

この出願は、2016年4月4日に出願された米国仮特許出願第62/317,781号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
本発明は、コンピュータ及びネットワークセキュリティに関し、特にそのようなネットワークのノードコミュニティ及び役割の統合された発見(integrated discovery)に関する。
企業ネットワークは、企業における重要なシステムであり、ミッションクリティカルな情報の大部分を搬送する。そのような重要性の結果として、これらのネットワークはしばしば攻撃の標的となる。それゆえ、企業ネットワークにおける通信は、攻撃を検出するステップとして、異常なネットワーク通信を検出するために頻繁にモニタされて分析される。
コンピュータ及び他のデバイスをモニタするため、多数の検出器が企業ネットワークで使用されている。これらの検出器はモニタリングデータに基づいて異なる種類のアラートを生成する。しかしながら、異なる検出器は、異なるセマンティクス(semantics)のレポートを生成する可能性がある。例えば、ネットワーク検出器は、ネットワーク接続のトポロジをモニタし、疑わしいクライアントが安定したサーバへ接続するときにアラートを生成する。プロセスファイル検出器は、見知らぬプロセスが機密ファイルへアクセスするときにアラートを生成する。これら異種混在(heterogeneous)アラートの管理は難題である。
さらに、実際のセキュリティインシデントは、異なる検出器にわたって多数のアラートを引き起こす可能性がある。しかしながら、複数のアラートは、時間的及び空間的な差を意味する、同時にまたは同じホストによって報告されない可能性がある。加えて、企業システムの複雑さのために、単一の検出器の精度が非常に低いことがあり、多くのアラートが人のオペレータにフィルタ処理の負担をかける誤検出となる。侵入検出では時間が重要であるため、いかなる遅延もシステム及びセキュリティ担当者による対応する能力の妨げになる。
既存のセキュリティシステムは、正常な動作と異常な動作の判別に用いる良好な訓練データも欠いている。報告されたアラートの大規模なセットを手作業でラベル付けするのは、コストがかかり、間違いを起こしやすい。加えて、ほとんどの実際のアラートは未知の攻撃であり、エンドユーザはアラートパターンに関する知識がなく、事前に有用なモデルを定義することができない。
異常イベントを報告するための方法は、ネットワークにおけるプロセスレベルイベントの状態をモデル化するプロセスグラフに基づいてアラートのセットをホスト内でクラスタリングすることを含む。隠れた関係性でクラスタリングすることが、それぞれのクラスタにおけるアラート間の隠れた関係性に基づいてホスト内でクラスタ化されたアラートに実行される。ホスト間でクラスタリングすることが、ネットワークにおける接続イベント間の送信元及び宛先の関係性をモデル化するトポロジグラフに基づいて隠れた関係性でクラスタ化されたアラートに実行される。信用度の閾値を超える、ホスト間でクラスタ化されたアラートが報告される。
異常イベントを報告するためのシステムは、ネットワークにおけるプロセスレベルイベントの状態をモデル化するプロセスグラフに基づいてアラートのセットにホスト内でクラスタリングを実行し、それぞれのクラスタにおけるアラート間の隠れた関係性に基づいてホスト内のクラスタ化されたアラートに隠れた関係性でクラスタリングを実行し、ネットワークにおける接続イベント間の送信元及び宛先の関係性をモデル化するトポロジグラフに基づいて隠れた関係性でクラスタ化されたアラートにホスト間クラスタリングを実行するように構成されたプロセッサを有するクラスタリングモジュールを含む。ユーザインタフェースは、信用度の閾値を超える、ホスト間でクラスタ化されたアラートを報告するように構成される。
これら及び他の特徴並びに利点は、以下の典型的な実施形態の詳細な説明を添付の図面と併せて読むことで明らかになるであろう。
本開示では、後述するように、以下の図面を参照しながら好ましい実施形態について詳細に説明する。
図1は、本原理による自動セキュリティインテリジェンスシステム構成に関するブロック/流れ図である。
図2は、本原理による侵入検出エンジン構成に関するブロック/流れ図である。
図3は、ネットワーク分析モジュール構成に関するブロック/流れ図である。
図4は、本発明の一実施形態によるトポロジブループリントグラフを構築する方法のブロック/流れ図である。
図5は、本発明の一実施形態によるプロセスブループリントグラフを構築する方法のブロック/流れ図である。
図6は、本発明の一実施形態による複数のアラートをクラスタ化する方法のブロック/流れ図である。
図7は、本発明の一実施形態によるホスト内でアラートをクラスタリングする方法のブロック/流れ図である。
図8は、本発明の一実施形態によるアラート間の隠れた関係性を見出す方法のブロック/流れ図である。
図9は、本発明の一実施形態によるホスト間でアラートをクラスタリングする方法のブロック/流れ図である。
図10は、本発明の一実施形態によるアラートのクラスタの信用度を計算する方法のブロック/流れ図である。
図11は、本発明の一実施形態によるネットワーク分析システムのブロック図である。
図12は、本発明の1つの実施形態による処理システムのブロック図である。
本原理によれば、本実施形態の検出は、大規模なセキュリティシステムにおけるアラートを結合するグラフベースアラート結合エンジンを用いてアラートの結合及び管理を行う。本実施形態は、企業内のホスト間のネットワーク接続状況を記録するトポロジグラフと、プロセスとその対象(例えば、ファイル、他のプロセスまたはインターネットソケット)との関係性を記録するプロセスグラフとの2種類のブループリントグラフを含む、ブループリントグラフモデルを用いる。両方のグラフは、ストリーミングデータを介して構築されて動的に維持される。
新しいアラートが報告されると、本実施形態は、ブループリントグラフ情報に基づいて新しいアラートを既存の最近のアラートとクラスタリングすることを試みる。次に、本実施形態は、アラート毎に信用度スコアを計算し、このスコアに基づいてアラートをランク付けする。そして、本実施形態は、誤アラートをフィルタ除去し、レポートに応答してセキュリティ管理活動を実行する。
したがって、本実施形態は、異なるセマンティクスを有し、異なる種類の検出器から生じる異種混在アラートをリアルタイムで統合し、いかなる事前定義されたモデルまたは訓練データセットも無しに運用できる。アラートは、それらが到着したときに分類され、評価されて、ストリーミング方式で統合される。本実施形態は、さらに誤アラート率を低減し、侵入/異常検出タスクの精度を向上させる。
ここで、同じ数字が同一または同様の要素を表す図面、まず図1を詳細に参照すると、図1には自動セキュリティインテリジェンスシステム(ASI:Automatic Security Intelligence)構成が示されている。ASIシステムは3つの主要構成要素を含む。すなわち、動作データを収集するために企業ネットワークの各マシンにエージェント10がインストールされ、バックエンドサーバ200がエージェント10からデータを受信し、該データを前処理し、該前処理されたデータを分析サーバ30に送信し、分析サーバ30がセキュリティアプリケーションプログラムを実行してデータを分析する。
各エージェント10は、エージェントマネージャ11、エージェントアップデータ12及びエージェントデータ13を含み、エージェントデータ13は、アクティブプロセス、ファイルアクセス、ネットソケット、1サイクル当たりの命令数及びホスト情報に関する情報を含んでもよい。バックエンドサーバ20は、エージェントアップデータサーバ21及び監視データ記憶装置を含む。分析サーバ30は、侵入検出31、セキュリティポリシーコンプライアンス評価32、インシデントバックトラック及びシステム復旧33、並びに集中型脅威探索及びクエリ34を含む。
次に図2を参照すると、図2には侵入検出31に関するさらなる細部が示されている。侵入検出エンジンには5つのモジュールがある。すなわち、侵入検出エンジンは、バックエンドサーバ20からデータを受信し、対応するデータをネットワークレベルモジュール42及びホストレベルモジュール43に分配するデータ分配器41と、ネットワーク通信(TCP及びUDPを含む)を処理し、異常な通信イベントを検出するネットワーク分析モジュール42と、ユーザ対プロセスイベント、プロセス対ファイルイベント及びユーザ対レジストリイベントを含む、ホストレベルイベントを処理するホストレベル分析モジュール43と、ネットワークレベル異常とホストレベル異常とを統合し、それらの結果を信用できる侵入イベントにリファイン(refine)するオンラインアラート結合モジュール44と、検出結果をエンドユーザに出力する可視化モジュール45とを有する。
次に図3を参照すると、図3には、ネットワーク分析モジュール42に関するさらなる細部が示されている。ネットワーク分析モジュール42は、少なくとも2つの主要構成要素を有する。すなわち、ネットワーク分析モジュール42は、企業ネットワークの通信のストリーミングイベント51から構築された異種混在グラフであって、グラフのノードが企業ネットワークのマシンを表し、エッジがノード間の正常な通信パターンを表す、ブループリントグラフ52と、送信元からの様々な異種混在アラートを入力し、ブループリントグラフに基づいて分析を実施し、信用できるアラートレポートを出力するオンラインアラート結合及びランク付けモジュール54とを含む。ブループリントグラフ52は、特にトポロジグラフ及びプロセスグラフを含む。トポロジグラフは、オンライン異常検出のためにネットワーク分析モジュール42で用いられてもよい。
ASIエージェント10は、企業ネットワークのホストにインストールされ、分析サーバ30による分析のために全てのネットワーク接続イベントを収集する。エージェント10は、作業負荷を軽減し、プライバシを維持するために軽いソフトウェアであってもよく、その場合、エージェント10は、ネットワーク接続のコンテンツ及びトラヒックサイズに関する情報を収集しない。典型的なネットワークイベントeは、7タプルとして以下の情報を含む。すなわち、ネットワークイベントeは、e=<src−ip,src−port,dst−ip,dst−port,connecting−process,protocol−num,timestamp>を含む。用語src−ip及びsrc−portは、ネットワークイベントのための送信元ホストのIPアドレス及びポートを示し、用語dst−ip及びdst−portは、宛先ホストのIPアドレス及びポートを示し、connecting−processは、接続を初期化するプロセスであり、protocol−numは、接続のプロトコルを示し、timestampは、接続時間を記録する。
表1は、2016年2月29日の11:30AMで始まり、12:05PMで終わる期間のネットワークイベントサンプルの典型的なリストを示している。ネットワークイベントは、dst−ipに基づいて2つのカテゴリに分類できる。dst−ipがローカルネットワークのIPアドレス(例えば、10.15.xx.xx)の範囲内にある場合、ネットワークイベントは該ネットワークの2つのホスト間の内部接続と考えられる。dst−ipがネットワークの範囲内にない場合、ネットワークイベントは内部ホストと外部ホストとの間の外部接続と考えられる。表において、e、e、e及びe6は内部接続であり、e及びeは外部接続である。
Figure 0006616045
外部接続のdst−ip値は非常に多様になることがあるが、内部接続のdst−ip値は規則的であり、パターンに従う。例えば、同じグループに属するホストは該グループの全てのプライベートサーバに接続するが、他のグループのプライベートサーバにはほとんど接続しない。この所見に基づき、本実施形態は、ブループリントグラフ52を用いて正常なイベント状態をモデル化する。トポロジグラフは、特にネットワーク内部における接続イベントの送信元及び宛先の関係性をモデル化するために用いられる。
トポロジブループリントグラフは、G=<V,E>で定義される。ここで、Vは企業ネットワークの内部の複数のホストのノードセットであり、Eは前記ノード間の複数のエッジのセットである。ホストノードνは、ν=<host−id,ip,last−connection−time>の3タプルで定義され、エッジlは、l=<edge−id,src−ip,dst−ip,last−connection−time>の4タプルで定義される。用語last−connection−timeは、ノード/エッジの最新のネットワーク接続のタイムスタンプを記録する。この測定値は、ブループリントグラフ52を更新するために使用される。所定の期間に関して(例えば、2ヶ月)、ノード/エッジに接続イベントが無い場合、システムは、ブループリントグラフ52を最新の状態で保持するためにそのようなノード/エッジを除去する。
ネットワーク内部の1対のホスト間に新しいネットワーク接続がある場合、エッジが2つのホストノード間のトポロジグラフに追加される。ノードとエッジの両方のlast−connection−timeが、接続イベントのタイムスタンプとして更新される。トポロジグラフは、1対のノード間の接続イベントの総数を保存する必要はない。ASIエージェント10は、ネットワーク接続のコンテンツ及びトラヒックをモニタしないため、接続の総数は意味がなく、誤解を招くことさえある。実際のアプリケーションでは、プロセスが同じエッジを介して1秒間に何千ものネットワーク接続イベントを初期化することがある。総数における大きい数値は、そのエッジに沿った高いトラヒックを示していないと思われる。
次に図4を参照すると、図4には、トポロジグラフを更新する方法が示されている。ブロック402は、複数のASIエージェント10のうちの1つから新しいネットワーク接続イベントを受信する。ブロック404は、トポロジグラフが既に送信元ホストノードと宛先ホストノードの両方を含んでいるか否かを判定し、これらのノードがまだ存在しない場合、ブロック406は、これらのノードをトポロジグラフに追加する。ブロック408は、トポロジグラフが既に送信元ノードと宛先ノード間にエッジを含んでいるか否かを判定し、エッジがまだ存在しない場合、ブロック410は、エッジをトポロジグラフに追加する。ブロック412は、何らかの影響を受けたノード及びエッジの最終接続時間値(last-connection-time value)を更新し、ブロック413は、所定の最大存続期間を越えている、十分に古い最終接続時間を有するノードまたはエッジを除去する。ブロック414は、更新されたトポロジグラフを出力する。
この同じプロセスを使用して、最初にトポロジグラフを構築し、新しい接続イベントが到着したときに更新されたトポロジグラフを保持する。ブループリントグラフ52は不揮発性記憶装置にセーブされていてもよく、最新のトポロジ情報を利用するために異なる分析エンジンでロードされていてもよい。例えば、ユーザは、ある企業ネットワークからブループリントグラフ52を構築し、セーブされたブループリントグラフ52を他の企業ネットワークにロードしてもよい。トポロジグラフは、動作中に自動で更新され、ネットワークに関する特定の情報を提供するのにユーザの介入を必要としないため、本実施形態は実際のネットワークにおける迅速な導入に使用される。
ネットワーク接続イベントに加えて、ASIエージェント10は、プロセスがファイルにアクセスするとき、ソケットを開くとき、または他のプロセスに分岐するとき等のプロセスレベルイベントを収集する。プロセスレベルイベントeは、e=<host−id,user−id,process,object,timestamp>の5タプルである。ここで、host−idは、エージェント10がインストールされているホストを示し、user−idは、プロセスを実行しているユーザを識別し、timestampは、イベント時間を記録し、processは、イベントの主題であり、objectは、イベントの対象である。対象は、例えば、ファイル、他のプロセスまたは接続情報を含むソケット等がある。プロセスレベルイベントは、対象のタイプに応じて、プロセス−ファイルイベント、プロセス−ソケットイベント及びプロセス−プロセスイベントの3つのカテゴリに分類できる。
表2は、ある日の時間11:30AMと12:05PMとの間のプロセスレベルイベントの典型的なリストを示している。IPアドレスはホストの識別子として用いられる。以下では、イベントe及びeが、プロセス−ファイルイベントであり、e及びeが、プロセス−ソケットイベントであり、eが、プロセス−プロセスイベントである。
Figure 0006616045
プロセス及びその対象は、さらに若干のパターンに従う。例えば、あるプロセスは、特定のフォルダ内の複数のファイルのセットにアクセスするだけであり、他のプロセスは、特定の宛先のソケットに接続するだけである。この所見に基づき、プロセスグラフは企業ネットワークにおけるプロセスレベルイベントの正常状態をモデル化する。
プロセスブループリントグラフは、G=<V,E>で定義される。ここで、Vは、ノードセットであり、Eは、エッジセットである。Vにおけるノードνは、ν=<node−id,type,last−event−time>の3タプルで定義され、エッジlは、l=<edge−id,src−node−id,dst−node−id,last−event−time>の4タプルで定義される。プロセスグラフには3つのタイプのノードがあり、プロセスノード、ファイルノード及びソケットノードが含まれる。node−id値は、アイデンティティ情報を表す。例えば、ノードがファイルである場合、node−idは、ファイル経路を保存する。last−event−time値は、ノード/エッジの最新のイベントのタイムスタンプを記録する。この測定値は、期限切れのノード及びエッジを除去するために使用される。プロセスグラフは、ホスト毎に構築される。エージェント10がホストにインストールされると、エージェント10は、ホストで生じる全てのプロセスレベルイベントを継続的に送信し、システムは、最初のイベントをそのホストから受信すると、直ぐにプロセスグラフを構築する。
次に図5を参照すると、図5にはプロセスグラフを構築し、更新する方法が示されている。ブロック502は、プロセスレベルイベントpを受信する。ブロック504は、プロセスレベルイベントのホストがそれに関連するプロセスグラフGを既に有しているか否かを判定する。有していない場合、ブロック506は、該ホストのための新しいプロセスグラフを作成する。ブロック508は、Gがプロセスレベルイベントで識別されるプロセスのためのノードを含んでいるか否かを判定する。含んでいない場合、ブロック510は、新しいプロセスノードをGに追加する。ブロック512は、Gがプロセスの対象に関するノードを含んでいるか否かを判定する。含んでいない場合、ブロック514は、適切な対象ノードをGに追加する。ブロック516は、Gがプロセスイベントに関するエッジを含んでいるか否かを判定する。含んでいない場合、ブロック518は、そのようなエッジをGに追加する。
トポロジグラフG及びプロセスグラフGは、共にブループリントグラフ52を示している。これらのブループリントグラフモデルは、異常イベントを検出するためにネットワーク分析モジュール42及びホストレベル分析モジュール43によって使用される。加えて、ブループリントグラフ52は、メモリ内の複数の履歴アラート候補のセットを維持するアラート結合モジュール44のみによって使用される。履歴アラート候補は、アラート結合システムに報告されたが、信用度が低いために出力されない過去のアラートである。結合モジュール44は、新しく報告されたアラートと履歴アラート候補の両方を入力として取り込む。
次に図6を参照すると、図6にはアラート結合のための方法が示されている。ブロック602は、グラフ情報に基づいてホスト内でクラスタリングを実行する。このステップにおいて、ブロック602は、個々のホストによって報告された関連するアラートをクラスタリングする。ホスト内クラスタリングは、2つのアラート間の距離測定を利用する。2つのプロセスイベントでは、e=<h,u,p,o,t>及びe=<h,u,p,o,t>であり、h及びhは、host−idであり、u及びuは、user−idであり、p及びpは、イベントのプロセスであり、o及びoは、対象であり、t及びtは、イベントタイムスタンプである。eとe間のプロセス距離は、以下の式で定義される。ここで、SP(p→p|G)は、プロセスグラフGにおけるpからpまでの最短経路である。
Figure 0006616045
この式には以下の3つの異なる条件がある。
1.e及びeが異なるホストからのものである場合、距離は無限大である。
2.e及びeが同じホスト及び同じプロセスからのものである場合、距離はゼロである。
3.e及びeが、同じホスト及び異なるプロセスからのものである場合、プロセス距離はpからpまでの最短経路の長さである。
ホスト内クラスタリングの細部は、以下でより詳細に説明する。
ブロック604は、アラート間の関係性を見出す。アラートには、明白な関係性の他に隠れた関係性もある。例えば、2つのアラート間のプロセス距離は大きいが、それらのアラートが短い期間に報告された場合、あるいは両方のアラートのuser−idが同じである場合、それらのアラートは関係付けてもよい。
アラートとして報告された2つのプロセスイベント、e=<h,u,p,o,t>及びe=<h,u,p,o,t>に関して、e及びeが以下の条件を満たす場合に限り、eとeとに隠れた関係性があると定義できる。
=h
=u
|t−t|<δ
ここで、δは時間閾値である。このようにして、アラートのプロセスが短い期間に同じユーザによって実行された場合、隠れた関係性が同じホスト上のアラートに指定される。隠れた関係性に基づくクラスタリングのさらなる詳細は、以下で提供される。
実際のシナリオでは、多くの侵入またはマルウェアインシデントが、多数のホストにわたって生じる。したがって、ブロック606は、異なるホストからのアラートを統合するためにホスト間でクラスタリングを実行する。アラートとして報告された2つのプロセスイベント、e=<h,u,p,o,t>及びe=<h,u,p,o,t>では、e及びeは、h≠hである場合に限り、|t−t|<δであり、トポロジGにおいてhとhとの間にエッジがあり、かつ|last_connection_time(l)−t|<δまたは|last_connection_time(l)−t|<δである場合、ホスト間に関係性があると規定できる。
ホスト間の関係性は、両方のアラートに同じhost−idまたはuser−idを有することを要求しない。しかしながら、そのようなアラートは短い期間に報告されるべきであり、アラートのホストはトポロジグラフに接続されているべきである。加えて、2つのホスト間のエッジの最新の接続タイムスタンプは、アラートが報告された期間で2つのホストがネットワーク接続を有するように、アラートタイムスタンプと近いものであるべきである。ホスト間の関係性についてのさらなる詳細は以下で提供される。
ホスト間のクラスタを生成した後、ブロック608は、クラスタ毎に信用度を計算する。各ホスト間のクラスタにおける全てのアラートは、ネットワーク分析モジュール42またはホストレベル分析モジュール43の検出器によって報告されたときに異常スコアを有している。検出器dによって報告されたアラートeの信用度は以下で決定される。
σ(e)=w・score(e)
ここで、wは、検出器dの信用度の重みであり、score(e)は、報告された異常スコアである。
検出器の重みwの値の範囲は、[0,1]である。このパラメータは、フィードバックルック(feedback look)で計算される。ここで、重みは最初に全ての検出器に関して1として初期化される。ユーザが特定のアラートを「誤アラート」であると判断した場合、その事実を記録してもよい。wの重みは次のように計算される。
Figure 0006616045
ここで、
Figure 0006616045
は、検出器dによって報告された誤アラートの数であり、|E|は、dからのアラートの総数である。検出器の重みは、ホスト間クラスタの信用度を計算する前に更新される。
ホスト間クラスタの信用度の計算において、cは、ホスト間クラスタであると定義され、pは、プロセスであると定義される。ここで、cは、プロセスpによる少なくとも1つのアラートを有し、eは、クラスタcにおけるpの代表アラートである。アラートeは、cに他のアラートeが存在しない場合、代表であると考えられる。ここで、eのプロセスもpであり、σ(e)>σ(e)である。それゆえ、プロセスの代表アラートは、最も高いアラート信用度をもつアラートである。クラスタの信用度は次のように定義される。
Figure 0006616045
ここで、Pは、cにおける複数のアラートに関連する全てのプロセスのセットである。ホスト間クラスタの信用度は、全てのプロセスの代表アラートの信用度の合計である。したがって、多くのプロセスを含む大きいクラスタの信用度は比較的高くなる。
ブロック610は、閾値に従ってクラスタをフィルタ処理し、各クラスタの信用度スコアをその閾値と比較する。クラスタの信用度スコアが閾値を超える場合、そのアラートが報告される。
次に図7を参照すると、図7にはブロック602におけるホスト内クラスタリングのさらなる詳細が示されている。ブロック702は、複数の履歴アラート候補Eのセットを受信する。ブロック704は、期限切れ(例えば、過去に閾値時間を超えて発行された)Eからの全てのアラートを除去する。ブロック706は、新しいアラートenew及び残りの履歴候補Eの全てを新しいセットeに追加する。
ブロック708は、新しいセットEからアラートeを選択し(これはランダムに実行されてもよい)、選択したアラートeを新しく初期化されたクラスタcに移動させる。ループが始まると、ブロック710は、新しいクラスタcの中から新しいアラートeを選択する。ブロック712は、新しいセットEに残っている全てのアラートeをチェックし、dist(e,e)を決定する。dist(e,e)がプロセス距離閾値δ未満である場合、ブロック712は、eを新しいセットEから新しいクラスタcに移動させる。
ブロック714は、新しいクラスタc内の全てのアラートに訪問したか否かを判定する。訪問していない場合、処理はブロック710に戻り、訪問していない新しいアラートeがクラスタcから選択される。c内の全てアラートに訪問した場合、処理はブロック708に戻り、他の新しいクラスタが初期化され、初期化アラートが新しいセットEから新しいクラスタに移動される。このプロセスは、新しいセットEにアラートが残っていないとブロック716で判定されるまで継続する。
次に図8を参照すると、図8には隠れた関係性に基づいてクラスタリングを実行する方法が、ブロック604におけるアラート間の関係性を見出す一部として示されている。ブロック802は、入力としてホスト内クラスタのセットを受信する。ブロック804は、クラスタを、入力セットから隠れた関係性を含むクラスタのセットへ移動することで処理を開始する。ブロック806は、移動したクラスタc内の全てのアラートを検討し、それらのアラートが入力セット内のいずれかのクラスタのアラートと未だ隠れた関係性を共有しているか否かを判定する。共有している場合、そのクラスタはcと統合されて、入力セットから除去される。次に、ブロック808は、クラスタが入力セットに残っているか否かを判定する。残っている場合、処理はブロック804に戻り、新しいクラスタが、入力セットから隠れた関係性のクラスタセットに移動される。残っていない場合、隠れた関係性のクラスタセットが出力される。
次に図9を参照すると、図9にはブロック606におけるホスト間クラスタリングを実行する方法が示されている。ブロック902は、隠れた関係性のクラスタセットを入力として受信する。ブロック904は、クラスタcを入力セットからホスト間クラスタセットに移動させる。ブロック906は、移動させたクラスタc内の全てのアラートを検討し、それらのアラートが入力セット内のいずれかのクラスタのアラートとクラスタ間の関係性を共有しているか否かを判定する。共有している場合、ブロック906は、そのクラスタをcと統合し、そのクラスタを入力セットから除去する。次に、ブロック908は、クラスタが入力セットに残っているか否かを判定する。残っている場合、処理はブロック904に戻り、新しいクラスタが、入力セットからホスト間関係性のクラスタセットに移動される。残っていない場合、ホスト間の関係性のクラスタセットが出力される。
本明細書に記載した実施形態は、全てハードウェアで実現してもよく、全てソフトウェアで実現してもよく、ハードウェアとソフトウェアの両方の要素を含んでいてもよい。好ましい実施形態において、本発明は、ファームウェア、常駐ソフトウェア、マイクロコード等を含むが、これらに限定されないソフトウェアでも実現可能である。
実施形態には、コンピュータもしくは任意の命令実行システムによって使用される、または関連して使用されるプログラムコードを提供する、コンピュータで利用可能な、またはコンピュータで読み取り可能な媒体からアクセスできる、コンピュータプログラム製品を含んでもよい。コンピュータで利用可能な、またはコンピュータで読み取り可能な媒体には、命令実行システム、機器、もしくは装置によって使用される、または関連して使用されるプログラムを格納、伝達、伝搬または転送する任意の機器を含んでもよい。該媒体は、磁気媒体、光学媒体、電子媒体、電磁気媒体、赤外線媒体、または半導体システム(または機器もしくは装置)、あるいは伝搬媒体であってよい。該媒体には、半導体または固体メモリ、磁気テープ、取り外し可能なコンピュータディスケット、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、リジッド磁気ディスク及び光ディスク等のコンピュータで読み取り可能な媒体を含んでもよい。
各コンピュータプログラムは、汎用または特別な目的を持つプログラム可能なコンピュータで読み取ることができる、機械で読み取り可能なストレージメディアまたは装置(例えば、プログラムメモリまたは磁気ディスク)に格納される。該コンピュータプログラムは、ストレージメディアまたは装置から本明細書に記載された手順を実行するコンピュータで読み出される、該コンピュータの設定及び制御動作のためのものである。本発明のシステムには、本明細書に記載した機能を実行する、特定の及び事前に定義された方法でコンピュータに動作させるように構成されたコンピュータプログラムを含む、コンピュータで読み取り可能なストレージメディアも考慮される。
プログラムコードを記憶及び/または実行するのに適したデータ処理システムは、システムバスを介してメモリ要素に直接または間接的に接続された少なくとも1つのプロセッサを備えていてもよい。このメモリ要素には、処理の実行中にバルク記憶装置からコードが検索される回数を減らすために、プログラムコードの実際の実行中に用いられるローカルメモリ、バルク記憶装置及び少なくともいくつかのプログラムコードを一時的に記憶するキャッシュメモリを備えていてもよい。入出力またはI/O装置(限定されるものではないが、キーボード、ディスプレイ、ポインティング装置等を含む)は、直接またはI/Oコントローラを介してシステムに接続されてもよい。
ネットワークアダプタは、データ処理システムが、プライベートネットワークまたは公衆ネットワークを介して、他のデータ処理システムまたは遠隔プリンタもしくは記憶装置に接続されることを可能にするために、上記システムと接続されていてもよい。モデム、ケーブルモデム及びイーサネット(登録商標)カードは、現在利用可能なタイプのネットワークアダプタのほんの一握りのものである。
次に図11を参照すると、図11にはネットワーク分析システム1100が示されている。ネットワーク分析システムは、ハードウェアプロセッサ1102と、メモリ1104とを含む。ユーザインタフェース1100は、結合されたアラートを含むネットワークアラートをユーザが受信する、視覚の、テキストの、及び/またはオーディオのインタフェースを備える。さらに、ネットワーク分析システム1100は、いくつかの実施形態において、ソフトウェアとして実装されてもよい、メモリ1104に記憶されてハードウェアプロセッサ1102で実行される、1つまたは複数の機能モジュールを含む。他の実施形態において、機能モジュールは、例えば、特定用途向けの集積チップまたはフィールドプログラマブルゲートアレイの形式で、1つまたは複数の個別ハードウェア構成要素として実装されていてもよい。
ブループリントグラフ更新モジュール1108は、イベントが到着したときブループリントグラフ1106を構築して更新する。クラスタリングモジュール1110は、ブループリントグラフ1106に基づいて、例えば、ホスト内、ホスト間及び/または隠れた関係性を有するクラスタにアラートをクラスタリングし、前記クラスタの信用度を判定する。クラスタの信用度が閾値を超えている場合、クラスタ内のアラートがユーザインタフェース1112を介してユーザに提供される。
次に図12を参照すると、図12にはネットワーク分析システム1100を表すことができる、典型的な処理システム1200が示されている。処理システム1200は、システムバス1202を介して他の構成要素と動作可能に接続された、少なくとも1つのプロセッサ(CPU)1204を含む。システムバス1202には、キャッシュ1206、リードオンリメモリ(ROM)1208、ランダムアクセスメモリ(RAM)1210、入力/出力(I/O)アダプタ1220、サウンドアダプタ1230、ネットワークアダプタ1240、ユーザインタフェースアダプタ1250及びディスプレイアダプタ1260が動作可能に接続されている。
第1の記憶装置1222及び第2の記憶装置1224は、I/Oアダプタ1220によってシステムバス1202に動作可能に接続されている。記憶装置1222及び1224は、ディスク記憶装置(例えば磁気ディスク記憶装置または光ディスク記憶装置)、固体磁気装置等のいずれであってもよい。記憶装置1222及び1224は、同じタイプの記憶装置であってもよく、異なるタイプの記憶装置であってもよい。
スピーカ1232は、サウンドアダプタ1230によってシステムバス1202に動作可能に接続されている。トランシーバ1242は、ネットワークアダプタ1240によってシステムバス1202に動作可能に接続されている。ディスプレイ装置1262は、ディスプレイアダプタ1260によってシステムバス1202に動作可能に接続されている。
第1のユーザ入力装置1252、第2のユーザ入力装置1254及び第3のユーザ入力装置1256は、ユーザインタフェースアダプタ1250によってシステムバス1202に動作可能に接続されている。ユーザ入力装置1252、1254及び1256は、キーボード、マウス、キーパッド、イメージキャプチャ装置、モーション感知装置、マイクロホン、あるいはこれらの装置のうちの少なくとも2つの装置の機能を組み込んだ装置等のいずれであってもよい。本原理の趣旨を維持する限りにおいて、他のタイプの入力装置を使用することも可能である。ユーザ入力装置1252、1254及び1256は、同じタイプのユーザ入力装置であってもよく、異なるタイプのユーザ入力装置であってもよい。ユーザ入力装置1252、1254及び1256は、システム1200に情報を入力し、システム1200から情報を出力するために使用される。
処理システム1200は、当業者であれば容易に思いつくような他の要素(図示せず)を含んでもよく、特定の要素を省略することも可能である。例えば、当業者であれば容易に理解できるが、処理システム1200には、その詳細な実装に応じて他の様々なタイプの入力装置及び/または出力装置を含むことができる。例えば、無線及び/または有線による様々な入力装置及び/または出力装置を使用できる。さらに、当業者であれば容易に理解できるが、様々な構成の追加プロセッサ、コントローラ、メモリ等を使用することも可能である。処理システム1200の上記及び他の変形例は、本明細書で提供される本原理の教示によって当業者であれば容易に考えられるであろう。
上記は、あらゆる観点において例示的(illustrative)かつ典型的(exemplary)であって限定的でないものと理解されるべきであり、本明細書で開示する本発明の範囲は、詳細な説明から決定されるべきではなく、特許法で認められた最大限の広さに基づいて解釈される特許請求の範囲から決定されるべきである。本明細書中に図示及び記載されている実施形態は、本発明の原理を説明するものにすぎず、本発明の範囲及び主旨から逸脱することなく当業者は様々な変更を実施することができることを理解されたい。当業者は、本発明の範囲及び精神から逸脱することなく、様々な他の特徴の組み合わせを実施できる。以上、本発明の態様について、特許法で要求される詳細及び特殊性と共に説明したが、特許証で保護されることを要求する特許請求の範囲は、添付の特許請求の範囲に示されている。

Claims (16)

  1. プロセッサを含むクラスタリングモジュールが異常イベントを報告するための方法であって、
    前記クラスタリングモジュールが、
    プロセスレベルイベントの状態をモデル化するプロセスグラフに基づいて2つのアラート間のプロセス距離を求め、
    プロセス距離閾値未満であるプロセス距離を有するアラートを、ホスト内で共にクラスタリングすることで、アラートのセットをホスト内でクラスタリングし、
    それぞれのクラスタにおけるアラート間の隠れた関係性に基づいて前記ホスト内でクラスタ化されたアラートを隠れた関係性でクラスタリングし、
    前記ネットワークにおける接続イベント間の送信元及び宛先の関係性をモデル化するトポロジグラフに基づいて前記隠れた関係性でクラスタ化されたアラートをホスト間でクラスタリングし、
    ユーザインフェースが、
    ホスト間でクラスタ化されたアラートの信用度が、信用度の閾値レベルを超える場合、ホスト間でクラスタ化されたアラートを報告し、
    前記アラートは個々のホストによって報告されたアラートであり、
    隠れた関係性でクラスタリングすることが、閾値時間内の同じホストの同じユーザからのアラートを、共にクラスタリングすることを有する、方法。
  2. 前記プロセス距離が、前記プロセスグラフにおける同じホストの2つの異なるプロセス間の最短経路として計算される、請求項に記載の方法。
  3. ホスト間でクラスタリングすることが、前記トポロジグラフにおけるそれぞれのホスト間のエッジを有し、閾値時間内で生じるアラートを、共にクラスタリングすることを有する、請求項1に記載の方法。
  4. 受信したアラートに基づいて前記プロセスグラフ及び前記トポロジグラフを構築することをさらに有する、請求項1に記載の方法。
  5. 前記プロセスグラフ及び前記トポロジグラフからの要素を、前記要素が閾値時間よりも古い最終接続時間値を有する場合に除去することをさらに含む、請求項に記載の方法。
  6. ホスト間でクラスタ化されたアラートの信用度を、前記ホスト間でクラスタ化されたアラートで示される各プロセスの代表アラートのアラート信用度を合計することで計算することをさらに有する、請求項1に記載の方法。
  7. 各代表アラートのアラート信用度を、前記代表アラートを生成した検出器によって提供された異常スコアと前記検出器の重みとの積として計算することをさらに有する、請求項に記載の方法。
  8. 前記検出器の前記重みが、前記検出器によって生成された誤アラートの数と前記検出器によって生成されたアラートの総数の比として計算される、請求項に記載の方法。
  9. 異常イベントを報告するためのシステムであって、
    プロセスレベルイベントの状態をモデル化するプロセスグラフに基づいて2つのアラート間のプロセス距離を求め、プロセス距離閾値未満であるプロセス距離を有するアラートを、ホスト内で共にクラスタリングすることで、アラートのセットをホスト内でクラスタリングを実行し、それぞれのクラスタにおけるアラート間の隠れた関係性に基づいて前記ホスト内でクラスタ化されたアラートに隠れた関係性でクラスタリングを実行し、前記ネットワークにおける接続イベント間の送信元及び宛先の関係性をモデル化するトポロジグラフに基づいて前記隠れた関係性でクラスタ化されたアラートにホスト間でクラスタリングを実行するように構成されたプロセッサを含むクラスタリングモジュールと、
    ホスト間でクラスタ化されたアラートの信用度が、信用度の閾値レベルを超える場合、ホスト間でクラスタ化されたアラートを報告するように構成されたユーザインタフェースと、
    を有し、
    前記アラートは個々のホストによって報告されたアラートであり、
    閾値時間内の同じホストの同じユーザからのアラートを、隠れた関係性で共にクラスタリングするようにさらに構成された、システム。
  10. 前記プロセス距離が、前記プロセスグラフにおける同じホストの2つの異なるプロセス間の最短経路として計算される、請求項に記載のシステム。
  11. 前記クラスタリングモジュールが、前記トポロジグラフにおけるそれぞれのホスト間のエッジを有し、閾値時間内で生じるアラートを、ホスト間で共にクラスタ化するようにさらに構成された、請求項に記載のシステム。
  12. 受信したアラートに基づいて前記プロセスグラフ及び前記トポロジグラフを構築するように構成されたブループリント更新モジュールをさらに有する、請求項に記載のシステム。
  13. 前記ブループリント更新モジュールが、前記プロセスグラフ及び前記トポロジグラフからの要素を、前記要素が閾値時間よりも古い最終接続時間値を有する場合に除去するようにさらに構成される、請求項12に記載のシステム。
  14. 前記クラスタリングモジュールが、ホスト間でクラスタ化されたアラートの信用度を、前記ホスト間でクラスタ化されたアラートで示される各プロセスの代表アラートのアラート信用度を合計することで計算するようにさらに構成された、請求項に記載のシステム。
  15. 前記クラスタリングモジュールが、各代表アラートのアラート信用度を、前記代表アラートを生成した検出器によって提供された異常スコアと前記検出器の重みとの積として計算するようにさらに構成された、請求項14に記載のシステム。
  16. 前記検出器の前記重みが、前記検出器によって生成された誤アラートの数と前記検出器によって生成されたアラートの総数の比として計算される、請求項15に記載のシステム。
JP2019502545A 2016-04-04 2017-04-04 異種混在アラートのグラフベース結合 Active JP6616045B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662317781P 2016-04-04 2016-04-04
US62/317,781 2016-04-04
US15/477,603 2017-04-03
US15/477,603 US10476749B2 (en) 2016-04-04 2017-04-03 Graph-based fusing of heterogeneous alerts
PCT/US2017/025846 WO2017176676A1 (en) 2016-04-04 2017-04-04 Graph-based fusing of heterogeneous alerts

Publications (2)

Publication Number Publication Date
JP2019514315A JP2019514315A (ja) 2019-05-30
JP6616045B2 true JP6616045B2 (ja) 2019-12-04

Family

ID=60001443

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019502545A Active JP6616045B2 (ja) 2016-04-04 2017-04-04 異種混在アラートのグラフベース結合

Country Status (2)

Country Link
JP (1) JP6616045B2 (ja)
WO (1) WO2017176676A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11330007B2 (en) * 2019-12-23 2022-05-10 International Business Machines Corporation Graphical temporal graph pattern editor
CN111683086B (zh) * 2020-06-05 2022-11-01 北京百度网讯科技有限公司 网络数据处理方法、装置、电子设备和存储介质
CN114760113B (zh) * 2022-03-30 2024-02-23 深信服科技股份有限公司 一种异常告警检测方法、装置及电子设备和存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8098585B2 (en) * 2008-05-21 2012-01-17 Nec Laboratories America, Inc. Ranking the importance of alerts for problem determination in large systems
NL2002694C2 (en) * 2009-04-01 2010-10-04 Univ Twente Method and system for alert classification in a computer network.
US10977587B2 (en) * 2010-04-01 2021-04-13 Northrop Grumman Systems Corporation System and method for providing impact modeling and prediction of attacks on cyber targets
US9256828B2 (en) * 2013-06-29 2016-02-09 Huawei Technologies Co., Ltd. Alarm correlation analysis method, apparatus and system

Also Published As

Publication number Publication date
JP2019514315A (ja) 2019-05-30
WO2017176676A1 (en) 2017-10-12

Similar Documents

Publication Publication Date Title
US10476749B2 (en) Graph-based fusing of heterogeneous alerts
US20230080471A1 (en) Endpoint agent and system
US11522882B2 (en) Detection of adversary lateral movement in multi-domain IIOT environments
US11343268B2 (en) Detection of network anomalies based on relationship graphs
US10728263B1 (en) Analytic-based security monitoring system and method
US20240179153A1 (en) System for monitoring and managing datacenters
US10476752B2 (en) Blue print graphs for fusing of heterogeneous alerts
US10419466B2 (en) Cyber security using a model of normal behavior for a group of entities
EP3107026B1 (en) Event anomaly analysis and prediction
US20160308725A1 (en) Integrated Community And Role Discovery In Enterprise Networks
US20220263860A1 (en) Advanced cybersecurity threat hunting using behavioral and deep analytics
US10367838B2 (en) Real-time detection of abnormal network connections in streaming data
US10476753B2 (en) Behavior-based host modeling
JP2021529383A (ja) データ来歴を介した自動脅威アラートトリアージ
Rahal et al. A distributed architecture for DDoS prediction and bot detection
US10367842B2 (en) Peer-based abnormal host detection for enterprise security systems
JP6616045B2 (ja) 異種混在アラートのグラフベース結合
CN113242267A (zh) 一种基于类脑计算的态势感知方法
Al-Utaibi et al. Intrusion detection taxonomy and data preprocessing mechanisms
US10476754B2 (en) Behavior-based community detection in enterprise information networks
JP2004336130A (ja) ネットワーク状態監視システム及びプログラム
Jakhale Design of anomaly packet detection framework by data mining algorithm for network flow
Najafi et al. SIEMA: bringing advanced analytics to legacy security information and event management
WO2017176673A1 (en) Blue print graphs for fusing of heterogeneous alerts
Kalutarage Effective monitoring of slow suspicious activites on computer networks.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190625

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190904

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191029

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191106

R150 Certificate of patent or registration of utility model

Ref document number: 6616045

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350