(57)【要約】【課題】本発明は、サイバーハッキング攻撃に対する追跡技術に関し、より詳しくは、ネットワークフローデータを利用して接続のフィンガープリントを生成し、根源地を逆追跡するシステム及びその方法に関する。【解決手段】本発明に係るネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法は、被害地及び接続チェーン上の最後の接続であるターゲット接続に該当する攻撃地のアイピーパケット属性情報を含む逆追跡要求を受信するステップと、アイピーパケット属性情報を基に関連接続へのフィンガープリントを生成し、ネットフローコレクタへ関連情報を要求するステップと、フィンガープリントの生成時に出来たターゲット接続に対する経由地接続を検出して、選別された対象接続がターゲット接続と同一の接続チェーン上に存在するかどうかを確認するステップ及びターゲット接続と同一の接続チェーン上に存在するものと確認された対象接続に対して攻撃者ホストを基準にした接続順序を決定するステップと、を含むことを特徴とする【選択図】図２
2017092963.tif 000002
【特許請求の範囲】
【請求項１】
トレースエージェントが、被害地及び接続チェーン上の最後の接続であるターゲット接続に該当される攻撃地のアイピーパケット属性情報を含む逆追跡要求を受信するステップと、
前記アイピーパケット属性情報に基づいて関連接続へのフィンガープリントを生成し、ネットフローコレクタに関連情報を要求するステップと、
前記フィンガープリントの生成時に出来たターゲット接続に対する経由地接続を検出して、選別された対象接続が前記ターゲット接続と同一の接続チェーン上に存在するかどうかを確認するように命令するステップと、及び
前記ターゲット接続と同一の接続チェーン上に存在するものと確認された前記対象接続に対して攻撃者ホストを基準にした接続順序を決定するステップと、
を含むネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項２】
前記受信するステップは、攻撃開始時間、攻撃終了時間、攻撃送信元ＩＰアドレス、攻撃送信元ポート番号、宛先ＩＰアドレス、宛先ポート番号及びレイヤ３プロトコル情報を前記アイピーパケット属性情報として受信する請求項１に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項３】
前記要求するステップは、前記フィンガープリントを生成することにおいて、データグラムチェックステップと、データグラムの順序を並べ替えるステップと、データグラムロスをチェックするステップと、レイヤ４の接続情報を獲得するステップと、前記フローレコードに対するオンタイムマージングを行なうステップと、前記オンタイムマージングを介して選別されたフローレコードに対するＯＮ／ＯＦＦ時系列を生成するステップ及び 前記生成された時系列を考慮して前記フィンガープリントを生成するステップと、を含む請求項１に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項４】
前記データグラムチェックステップは、ヘッダフォーマット内のＶｅｒｓｉｏｎ及びＣｏｕｎｔフィールドを利用して、ネットフローコレクターが収集したネットフローのバージョン及びサイズをチェックする請求項３に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項５】
前記データグラムの順序を並べ替えるステップは、ヘッダフォーマット内のＳｙｓＵｐｔｉｍｅフィールドを利用して前記収集された該当ネットフローの順序の並べ替えを行なう請求項３に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項６】
前記データグラムロスをチェックするステップは、ヘッダフォーマット内のＣｏｕｎｔ及びｆｌｏｗ＿ｓｅｑｕｅｎｃｅフィールドを利用して前記ロスの発生有無を確認する請求項３に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項７】
前記レイヤ４の接続情報を獲得するステップは、フローレコードフォーマット内の攻撃送信元ＩＰアドレス、宛先ＩＰアドレス、攻撃送信元ポート番号、宛先ポート番号及びプロトコルフィールドを利用して前記レイヤ４の接続情報を獲得する請求項３に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項８】
前記レイヤ４の接続情報を獲得するステップは、攻撃開始及び終了時間の間の複数のターゲットレイヤ４接続に対して、ＴＣＰフラグを利用して前記レイヤ４単位の接続を区分する請求項７に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項９】
前記オンタイムマージングを行なうステップは、フローレコードのＯＮ時間と既設定時間とを比較して前記フローレコードを選別し、前記既設定時間よりも短いＯＮ時間に該当するフローレコードを削除する請求項３に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項１０】
前記ＯＮ／ＯＦＦ時系列を生成するステップは、前記選別されたフローレコードに対してレイヤ４単位のＯＮ／ＯＦＦ時系列を生成する請求項３に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項１１】
前記フィンガープリントを生成するステップは、生成された複数の時系列のうち最大長の時系列を選択してＯＮ／ＯＦＦの時間列にセットアップ時間を考慮して前記フィンガープリントを生成する請求項３に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項１２】
前記命令するステップは、接続開始時間ないし接続終了時間の間に接続を維持するレイヤ４接続を選別し、前記選別されたレイヤ４接続の時系列を生成し、これを前記受信するステップで生成されたフィンガープリントの時系列と比較して前記経由地接続を検出する請求項１に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項１３】
前記命令するステップは、最少のエレメントの和及び最大のエレメントの和の割合を利用した類似度検出アルゴリズムを行なって、前記対象接続及びターゲット接続が同一の接続チェーン上に存在するかどうかを確認する請求項１２に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項１４】
前記命令するステップは、相関性オフセットを増加させて類似度を計算した後、その最大値を相関係数として定義し、相関係数の最大値と臨界値とを比較して同一の接続チェーン上に存在するかどうかを確認する請求項１３に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項１５】
前記決定するステップは、複数の前記対象接続の接続開始時間及び接続終了時間を考慮して、相互包含関係にあるかどうかを確認して前記攻撃者ホストに近く位置した接続を確認する請求項１に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項１６】
前記決定するステップは、前記相互包含関係が存在しない場合、相対的に小さい相関係数を持つ接続を誤検知された接続と判断して、これを除去する請求項１５に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項１７】
ターゲット接続に該当するアイピーパケット属性情報を含む逆追跡要求を受信し、前記アイピーパケット属性情報に基づいて関連接続へのフィンガープリントを生成して、逆追跡命令を転送するトレースエージェントと、及び
ルーターからネットフロー情報を収集して格納し、前記逆追跡命令を受信して、選別された対象接続がターゲット接続と同一のチェーン上に存在するかどうかを確認するネットフローコレクタを含むネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項１８】
前記フィンガープリントは、フローレコードに対するＯＮ／ＯＦＦ時系列を考慮して生成される請求項１７に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項１９】
前記ネットフローコレクタは、接続開始時間ないし終了時間の間に接続が維持されるレイヤを選別し、選別されたレイヤの時系列を生成し、これを前記フィンガープリントの時系列と比較して前記経由地接続を検出する請求項１７に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【請求項２０】
前記対象接続のうち複数の接続が、前記同一のチェーン上に存在するものと検出される場合、前記対象接続の接続時間を含むかどうかを考慮して、攻撃者ホストを基準にした接続順序を決定したり、誤検知された接続であるかどうかを確認する請求項１７に記載のネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サイバーハッキング攻撃に対する追跡技術に関し、より詳しくは、ネットワークフロー（ＮｅｔＦｌｏｗ）データを利用して接続のフィンガープリントを生成し、根源地を逆追跡するシステム及びその方法に関する。
【背景技術】
【０００２】
サイバーハッキング攻撃に対する逆追跡技術は、攻撃システムの位置及び実際ハッキングを試みるハッカーの位置が異なる場合であっても、実際ハッカーの位置、即ち、攻撃の根源地を追跡する技術を意味する。
【０００３】
従来技術によるサイバーハッキング攻撃に対する逆追跡技術は、ホスト基盤の接続逆追跡方法（Ｈｏｓｔ  ｂａｓｅｄ  ＴＣＰ  Ｃｏｎｎｅｃｔｉｏｎ  Ｔｒａｃｅｂａｃｋ）、ネットワークパケット基盤の逆追跡方法（Ｎｅｔｗｏｒｋ  ＩＰ  Ｐａｃｋｅｔ  ｂａｓｅｄ  Ｔｒａｃｅｂａｃｋ）及びＩＰアドレスを騙して通信する攻撃（ＩＰ  Ｓｐｏｏｆｉｎｇ）に対してパケットの実際の送信元を見付け出す逆追跡方法などが提案されている。
【０００４】
ホスト基盤の接続逆追跡方法は、全てのシステムに逆追跡モジュールを設け、これを利用して多数の他のシステムを経由したハッカーの実際の位置を見付け出す方法である。
【０００５】
ネットワークパケット基盤の逆追跡方法は、ネットワークパケットが監視可能な位置に逆追跡モジュールを設けて、多数の他のシステムを経由したハッカーの実際の位置を見付け出す方法である。
【０００６】
このような従来の技術は、インターネット供給者（ＩｎｔｅｒｎｅｔＳｅｒｖｉ
ｃｅ  Ｐｒｏｖｉｄｅｒ、ＩＳＰ）のオーバーヘッドを全て甘受しなければならないという問題がある。
【０００７】
また、ハッカー誘引用Ｈｏｎｅｙｐｏｔ偽装サーバ及びハッカー自動追跡探知ソフトウェアなどが開発されているが、これは仮想網での特定の環境下においてだけ運用可能になるという限界がある。
【０００８】
従来技術による場合、全てのネットワークトラフィックパケットと通信コネクションを監視しなければならないことからそのオーバーヘッドは相当であり、特に追跡機能を提供しないネットワーク機器（ルーター）或いはインターネット供給者を経由する場合には、更なる追跡自体が不可能になるという問題がある。
【０００９】
つまり、従来の技術によると、ネットワーク上に専用の監視装置を分散して設けたり、インターネットプロトコルを変更しなければならないなど、実際、ネットワークに適用するのには不可能だという問題がある。
【発明の概要】
【発明が解決しようとする課題】
【００１０】
本発明は、従来技術による場合、特別な監視装備が必要なため、現実的にインターネット環境に適用し難く、ＩＰ  Ｓｐｏｏｆｉｎｇなどの方法で攻撃者の情報を隠す場合には、探知が困難だという問題点を解決するために提案されたものであって、ルーターから提供されるネットフロー（ＮｅｔＦｌｏｗ）情報を活用することによって、既存のインターネット環境に適用するのに特段の制約がなく、オーバーヘッドを最小化させ、攻撃の根源地を逆追跡することのできるネットフロー基盤の接続フィンガープリントの生成及び経由地の逆追跡方法を提供する。
【課題を解決するための手段】
【００１１】
本発明に係るネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法は、被害地及び接続チェーン上の最後の接続であるターゲット接続に該当する攻撃地のアイピーパケット属性情報を含む逆追跡要求を受信するステップと、アイピーパケット属性情報を基に関連接続へのフィンガープリントを生成し、ネットフローコレクタへ関連情報を要求するステップと、フィンガープリントの生成時に出来たターゲット接続に対する経由地接続を検出して、選別された対象接続がターゲット接続と同一の接続チェーン上に存在するかどうかを確認するステップ及びターゲット接続と同一の接続チェーン上に存在するものと確認された対象接続に対して攻撃者ホストを基準にした接続順序を決定するステップと、を含むことを特徴とする。
【発明の効果】
【００１２】
本発明に係るネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡システム及びその方法は、ルーターから提供されるネットフロー情報を利用して接続に対するＯＮ／ＯＦＦモデリングを行うことによって、経由地（Ｓｔｅｐｐｉｎｇ  Ｓｔｏｎｅｓ）及び攻撃の根源地を検出することができる。
【００１３】
即ち、テルネット（Ｔｅｌｎｅｔ）、ｒｌｏｇｉｎ、ＳＳＨなどのようなインタラクティブ（ｉｎｔｅｒａｃｔｉｖｅ）サービスを利用した接続チェーンを形成して攻撃する接続（経由地）を検出し、ルーターから提供されるネットフロー情報を利用して具現することにより、実際のネットワーク環境に適用及び使用されることに制約がないという効果がある。
【００１４】
本発明の効果は、以上で言及したものに限定されず、言及されていない他の効果は、以下の記載から当業者に明確に理解されるであろう。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態に係る接続チェーンを示す概念図である。
【図２】本発明の実施形態に係るネットフロー基盤の接続フィンガープリントの生成及び経由地の逆追跡方法を示すフローチャートである。
【図３】本発明の実施形態に係るネットフロー基盤の接続フィンガープリントの生成及び経由地の逆追跡システムを示すブロック図である。
【図４】本発明の実施形態に係るフィンガープリントの生成アルゴリズムを示すフローチャートである。
【図５】本発明の実施形態に係る経由地接続検出アルゴリズムを示すフローチャートである。
【発明を実施するための形態】
【００１６】
本発明の上述した目的及びその他の目的と利点及び特徴、そしてそれらを達成する方法は、添付される図面と共に詳細に後述されている実施形態を参照すれば明確になるであろう。
【００１７】
しかし、本発明は、以下に開示される実施形態に限定されるものではなく、様々な形態で具現されることができる。ただ、以下の実施形態は、本発明の属する技術分野において通常の知識を持つ者に発明の目的、構成及び効果を容易に知らせるために提供されるものであって、本発明の権利範囲は請求項の記載によって定義される。
【００１８】
一方、本明細書で使用される用語は、実施形態を説明するためのものであって、本発明を制限しようとするものではない。本明細書において、単数形は文章で特に言及しない限り、複数形も含む。明細書で使用される「含む（ｃｏｍｐｒｉｓｅｓ、ｃｏｍｐｒｉｓｉｎｇ）は、言及された構成素子、ステップ、動作、及び／または素子が一つ以上の他の構成素子、ステップ、動作、及び/または素子の存在または追加されることを排除しない。
【００１９】
以下では、図１ないし図６を参照して本発明の好ましい実施形態を詳細に説明する。
【００２０】
本発明は、攻撃の根源地を逆追跡するために、一般的にルーターが提供するネットフロー情報を利用してコネクションフロー（ｃｏｎｎｅｃｔｉｏｎ  ｆｌｏｗ）間のフィンガープリントの生成及び比較する方法を提案する。
【００２１】
図１は、本発明の実施形態に係る接続チェーン（Ｃｏｎｎｅｃｔｉｏｎ  Ｃｈａｉｎ）を示す概念図である。
【００２２】
本発明の実施形態によると、テルネット、ＳＳＨ、ｒｌｏｇｉｎなどのようなインタラクティブサービスにおいて、ネットフローの非活性タイマー（Ｉｎａｃｔｉｖｅ  Ｔｉｍｅｒ）特徴を利用して接続に対するＯＮ／ＯＦＦモデリングを介して経由地を検出する。
【００２３】
例えば、攻撃者は遠隔ログオンを利用して一連のホスト（コンピュータ）であるホスト１（Ｈ１、１１０ａ）、ホスト２（Ｈ２、１１０ｂ）、・・・ホストｎ（Ｈｎ、１１０ｎ）に対する接続チェーンＣ１、Ｃ２、・・・、Ｃｎ−１を形成する。
【００２４】
Ｈ１は攻撃者自身のコンピュータであり、Ｈｎは攻撃者が攻撃しようとする最終目標であり、接続ＣｉはホストＨｉからＨｉ＋１へ遠隔ログオンサービスを利用した接続を意味する。
【００２５】
つまり、上述した例はホストＨｉからテルネット、ＳＳＨまたはｒｌｏｇｉｎなどでインタラクティブサービスクライアントを利用してホストＨｉ＋１サーバへ遠隔接続を試みた例である。
【００２６】
これらのインタラクティブサービスの接続はクライアントとサーバとの間で両方向に形成されるが、本発明の実施形態では攻撃者Ｈ１から被害コンピュータＨｎへ向かうダウンストリーム方向の接続のみを考慮する。
【００２７】
また、攻撃者の最後の接続（Ｃｎ―１、以下、ターゲット接続（ｔａｒｇｅｔ  ｃｏｎｎｅｃｔｉｏｎ）と言う）への接続時間及びパケットの属性情報（５−ｔｕｐｌｅ情報として、送信元ＩＰアドレス、宛先ＩＰアドレス、送信元ポート番号、宛先ポート番号及びレイヤ３プロトコルを含む）を知っており、該当接続へのネットフローレコード（ＮｅｔＦｌｏｗ  ｒｅｃｏｒｄｓ）に対する情報がネットフローコレクタに格納されていると仮定する。
【００２８】
本発明の実施形態によると、任意のルーターを介して収集されたネットフロー情報を検索して、ターゲット接続（Ｃｎ−１）と同一の接続チェーンを形成しているＣ１、Ｃ２、・・・、Ｃｎ−２を見付けるアルゴリズムを提案する。
【００２９】
レイヤ４接続のフロー内のデータがＴ＿ｉｄｌｅ秒以上存在しなければ、該当接続はＯＦＦ期間にあると見做し、データを含むパケットが表示されたら、該当フローはＯＦＦ期間を終えてＯＮ期間を開始し、該当フローがさらにＴ＿ｉｄｌｅ秒以上データが存在しないまでにＯＮ期間を持続する。
【００３０】
このようにトラフィックをＯＮ ／ＯＦＦモデリングする根拠は、ユーザのキーストローク（Ｋｅｙｓｔｒｏｋｅｓ）の時間間隔から導出することができる。
【００３１】
本発明の実施形態によると、このようなＯＮ／ＯＦＦモデルに基づいて、２つの接続Ｃ１、Ｃ２が与えられる場合、これら両接続のＯＦＦ期間が終わる時点（つまり、ＯＮ期間が開始される時点）が略同じようであれば、両接続は経由地の関係を持つと判断する。
【００３２】
即ち、ユーザのキーストロークは、Ｃ１に沿って転送され、続いてＣ２に沿って転送される。
【００３３】
図２は、本発明の実施形態に係るネットフロー基盤の接続フィンガープリントの生成及び経由地の逆追跡方法を示すフローチャートである。
【００３４】
本発明の実施形態によると、逆追跡要求に対するユーザリクエストを受信するステップＳ１００と、関連接続へのフィンガープリントを生成するステップＳ２００と、経由地接続を検出するステップＳ３００及び攻撃者ホストを基準に対象接続の接続順序を決定するステップＳ４００と、を含む。
【００３５】
図３を参照すると、それぞれのＴＡ（Ｔｒａｃｅ  Ａｇｅｎｔ、４００）は、分散されたネットワーク環境で動作し、これら複数のＴＡ（４００ａ、４００ｂ）はＰ２Ｐ基盤に情報を共有する。
【００３６】
インターネット上に存在するルーター２００は、ネットフロー設定及び送出情報を該当ネットフローコレクタ３００に周期的に送出し、ネットフローコレクタ３００は、収集されたネットフロー情報を該当時間帯ごとに格納する。
【００３７】
本発明の実施形態によると、ルーター２００のＮｅｔＦｌｏｗ  Ｆｕｌｌ  Ｓａｍｐｌｉｎｇ  ＲａｔｅやＤｅｆａｕｌｔの設定値（非活性タイマーの初期値は１０秒、活性タイマーの初期値は３０分）を活用する。
【００３８】
上述したＤｅｆａｕｌｔの設定値は、ルーター２００やスイッチ装備の特徴に応じて変わる。
【００３９】
ステップＳ１００は、ＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を介して逆追跡要求（Ｒｅｑ  Ｔｒａｃｅｂａｃｋ）を受信し、この時、逆追跡要求には被害地（Ｖｉｃｔｉｍ、１００ｎ）及び接続チェーン上の最後の接続であるターゲット接続（Ｔａｒｇｅｔ  Ｃｏｎｎｅｃｔｉｏｎ）に該当される攻撃の最後のコネクションフロー情報が含まれる。
【００４０】
つまり、ＩＰパケット属性情報が複数集まってフロー（Ｆｌｏｗ）を形成し、これらのフローは、ｕｎｉｄｉｒｅｃｔｉｏｎａｌ通信セッションであって、セッションは互いにマッチングされるＢｉｄｉｒｅｃｔｉｏｎａｌ  Ｆｌｏｗ一対である。
【００４１】
上述した逆追跡要求を受信したＴＡ４００ａはステップＳ２００において、被害地（Ｖｉｃｔｉｍ、１００ｎ）及び接続チェーン上の最後の攻撃地のＩＰアドレス、ポート情報、攻撃が加えられた時間情報及びプロトコル情報に基づいて関連接続（ｃｏｎｎｅｃｔｉｏｎ）へのフィンガープリントを生成し、それぞれのネットフローコレクタ（３００ａ、３００ｂ，３００ｃ）に関連情報を要求する（ＦｉｎｇｅｒＰｒｉｎｔ  Ｓｅａｒｃｈ）。
【００４２】
ネットフローコレクタ（３００ａ、３００ｂ、３００ｃ）で該当時間に検出されたコネクションフロー情報に基づいてフィンガープリントが生成され、フロー間の相互類似度が比較されて経由地（１００ｂ、１００ｃ）及び攻撃根源地１００ａを逆追跡するようになる。
【００４３】
本発明の実施形態によると、ルーター２００から送出されてネットフローコレクタ３００に格納されたネットフロー情報を利用して該当接続のタイミング基盤の逆追跡を行い、そのためにインタラクティブトラフィックの特性であるＯＮ／ＯＦＦパターンを利用して経由地（１００ｂ、１００ｃ）を追跡する。
【００４４】
以下では、本発明の実施形態に係るフィンガープリントの生成アルゴリズムを図４を参照して説明する。
【００４５】
本発明の実施形態に係るフィンガープリントの生成アルゴリズムは、接続チェーン上に存在する最後の接続（図１に示したＣｎ−１としてターゲット接続に該当する。最終目標ホストの存在するネットワーク管理システム）でアイピーパケット属性情報を受信してフィンガープリントを生成する。
【００４６】
上述したアイピーパケット属性は、攻撃開始時間（Ｔｓ）、攻撃終了時間（Ｔｅ）、攻撃送信元ＩＰアドレス（ｓｒｃａｄｄｒ）、攻撃送信元ポート番号（ｓｒｃｐｏｒｔ）、宛先ＩＰアドレス（ｄｓｔａｄｄｒ）、宛先ポート番号（ｄｓｔｐｏｒｔ）及びレイヤ３プロトコル（ｐｒｏｔｏｃｏｌ）情報を含む。
【００４７】
スイッチやルーターを通すパケットは、アイピーパケット属性に分けることができるが、これらの属性はアイピーパケットの指紋または身分証明書と同様であり、これを利用してパケットが新しいものか、それとも他のものと似たようなものなのか区分することができる。
【００４８】
ステップＳ２１０は、ネットフローＵＤＰダイアグラムのサニティーチェック（Ｓａｎｉｔｙ  Ｃｈｅｃｋ）を行なうステップであって、ヘッダフォーマット（Ｈｅａｄｅｒ  Ｆｏｒｍａｔ）内のＶｅｒｓｉｏｎ及びＣｏｕｎｔフィールドを利用してデータグラム（Ｄａｔａｇｒａｍ）のサイズチェックを介して、ルーターからエクスポート（ｅｘｐｏｒｔ）されてネットフローコレクターが収集したネットフローのバージョン／サイズ（Ｄａｔａｇｒａｍ  Ｓｉｚｅ）をチェックする。
【００４９】
次に、ステップＳ２２０は、収集された該当ネットフローをヘッダフォーマット内のＳｙｓＵｐｔｉｍｅフィールドを利用してフローエクスポートインフォメーション（Ｆｌｏｗ  Ｅｘｐｏｒｔ  Ｉｎｆｏｒｍａｔｉｏｎ）の順の並べ替えを行う。
【００５０】
ステップＳ２３０は、ヘッダフォーマット内のｃｏｕｎｔとｆｌｏｗ＿ｓｅｑｕｅｎｃｅフィールドを利用してフローエクスポートインフォメーションの損失有無をチェックする。
【００５１】
損失がない場合、ステップＳ２４０は、Ｔｓ（攻撃開始時間）ないしＴｅ（攻撃終了時間）を基準に、フローレコードフォーマット（Ｆｌｏｗ  Ｒｅｃｏｒｄ  Ｆｏｒｍａｔ）内の攻撃送信元ＩＰアドレス、攻撃送信元ポート番号、宛先ＩＰアドレス（ｄｓｔａｄｄｒ）、宛先ポート番号（ｄｓｔｐｏｒｔ）及びレイヤ３プロトコル（ｐｒｏｔｏｃｏｌ）フィールドを利用してレイヤ４の接続情報を獲得する。
【００５２】
この時、レイヤ４の接続情報には、ターゲットレイヤ４アセンブリ、ｔｓ（接続開始時間）、ｔｅ（接続終了時間）が含まれる。
【００５３】
この時、Ｔｓ（攻撃開始時間）ないしＴｅ（攻撃終了時間）の間には、複数のターゲットレイヤ４接続が存在し得るので、ＴＣＰ  Ｆｌａｇ（ＳＹＮ／ＦＩＮ／ＲＳＴ）を利用してＴＣＰレイヤ４単位の接続を区分する。
【００５４】
次に、ステップＳ２５０では、ターゲット接続のアイピーパケット属性に対するＴＣＰレイヤ４単位にＮ個のフローレコード（Ｆｌｏｗ  Ｒｅｃｏｒｄｓ）がある場合（Ｒ１、Ｒ２、・・・、ＲＮ）、該当フローレコードＲｉ内（Ｌａｓｔ−Ｆｉｒｓｔ）の値がｉ番目のＯＮ時間になり、前記ＯＮ時間が既設定時間（特定のｄｅｌｔａ時間）よりも小さい場合は、該当フローレコードＲｉを除去する。
【００５５】
このようなオンタイムマージング（ＯＮ  Ｔｉｍｅ  Ｍｅｒｇｉｎｇ）を介してＮ以下のｎ個のフローレコード（Ｒ１、Ｒ２、・・・、Ｒｎ）を獲得する。
【００５６】
次に、ステップＳ２６０では、ステップＳ２５０で獲得したｎ個のフローレコードに対するＴＣＰレイヤ４単位のＯＮ／ＯＦＦ時系列（ｔｉｍｅ  ｓｅｒｉｅｓ）を生成する。
【００５７】
１より大きくｎより小さいか或いは同一のｉに対して、Ｒｉ内（Ｌａｓｔ−Ｆｉｒｓｔ）の値は、ｉ番目のＯＮ時間になり、フローレコード ＲｉのＦｉｒｓｔ値と Ｒｉ−１のＬａｓｔ値との差は、ｉ−１番目のフローレコードのＯＦＦ時間となり、ｉが１の時には一番目のＯＮ時間のみが計算される。
【００５８】
従って、ステップＳ２６０ではＯＮ／ＯＦＦ時系列＜ＯＮ１、ＯＦＦ１、ＯＮ２、ＯＦＦ２、・・・、ＯＦＦｎ−１、ＯＮｎ＞が生成される。
【００５９】
ステップＳ２７０は、上述した過程を通じて複数の時系列が生成された場合、最大長の時系列を選択（Ｄｏｍｉｎａｎｔ  ＯＮ／ＯＦＦ  ｔｉｍｅ  ｓｅｑｕｅｎｃｅ  ｓｅｌｅｃｔｉｏｎ）し、これらのＯＮ／ＯＦＦ時系列にセットアップ時間を考慮して最終的にフィンガープリントを生成する。
【００６０】
以下では、図４で説明したフィンガープリント生成アルゴリズムで出来た一つのターゲットレイヤ４接続に対して、同一の接続チェーン上に存在する経由地接続を検出するためのアルゴリズムを図５を参照して説明する。
【００６１】
図５に示した経由地接続検出アルゴリズムは、一つのターゲットレイヤ４に対して＜ｔｓ（接続開始時間）、ｔｅ（接続終了時間）、ＴＳ（時系列）、｛ｏｐｔｉｏｎ＝ｐｒｏｔｏｃｏｌなど｝＞を基準に同一の接続チェーン上に存在する経由地を検索するが、ステップＳ３１０ないしＳ３３０は、上述した図４のステップＳ２１０ないしＳ２３０とそれぞれ同一の処理過程を行なう。
【００６２】
つまり、ステップＳ３１０はネットフローＵＤＰダイアグラムのサニティーチェックを行なうステップであって、ヘッダフォーマット内のＶｅｒｓｉｏｎ及びＣｏｕｎｔフィールドを利用してデータグラム（Ｄａｔａｇｒａｍ）のサイズチェックを介して、ルーターからエクスポート（ｅｘｐｏｒｔ）されてネットフローコレクターが収集したネットフローのバージョン／サイズ（Ｄａｔａｇｒａｍ  Ｓｉｚｅ）をチェックし、ステップＳ３２０は、収集された該当ネットフローに対しヘッダフォーマット内のＳｙｓＵｐｔｉｍｅフィールドを利用してフローエクスポートインフォメーション（Ｆｌｏｗ  Ｅｘｐｏｒｔ  Ｉｎｆｏｒｍａｔｉｏｎ）の順の並べ替えを行い、ステップＳ２３０はヘッダフォーマット内のｃｏｕｎｔとｆｌｏｗ＿ｓｅｑｕｅｎｃｅフィールドを利用して、フローエクスポートインフォメーションの損失有無をチェックする。
【００６３】
ステップＳ３４０は、ターゲットレイヤ４接続のｔｓ（接続開始時間）及びｔｅ（接続終了時間）の間の接続を維持する対象接続情報を獲得し、この時｛ｏｐｔｉｏｎ｝フィールドが存在する場合には、このフィールド内容を含んで対象接続情報を獲得する。
【００６４】
例えば、ステップＳ３４０は、｛ｏｐｔｉｏｎ＝レイヤ３プロトコル｝である場合、この条件を満たす対象接続情報を獲得し、ＴＣＰ  Ｆｌａｇ（ＳＹＮ／ＦＩＮ／ＲＳＴ）を利用して接続開始時間及び終了時間がターゲットレイヤ４接続のｔｓないしｔｅを含むレイヤ４の対象接続を選別する。
【００６５】
図５に示したステップＳ３５０ないしＳ３６０は、上述した図４のステップＳ２５０及びＳ２６０と同一の処理過程を行い、ステップＳ３５０ではオンタイムマージングを介してフローレコードを選別し、ステップＳ３６０では、ステップＳ３５０で選別したフローレコードに対するＴＣＰレイヤ４単位のＯＮ／ＯＦＦ時系列を生成する。
【００６６】
ステップＳ３７０は、図４のフィンガープリント生成アルゴリズムで生成したフィンガープリントの時系列（ＴＳ）とステップＳ３６０で生成された対象接続の時系列の相関性（Ｃｏｒｒｅｌａｔｉｏｎ）検査を行う。
【００６７】
以下では、経由地接続の相関性の比較アルゴリズムについて、上述したステップＳ３７０をより詳細に説明する。
【００６８】
対象接続がターゲット接続と同一の接続チェーン上に存在する接続であるかどうかを確認するために、両接続のＸ、Ｙの相関性を比較する。
【００６９】
本発明の実施形態によると、両ベクトルの間の類似性（Ｓｉｍｉｌａｒｉｔｙ）を定量的に計算して、最少のエレメント和と最大のエレメントの和との割合（Ｍｉｎ／Ｍａｘ  Ｓｕｍ  Ｒａｔｉｏ、ＭＭＳ）で示し、これらのＭＭＳをＣＰＦ（Ｃｏｒｒｅｌａｔｉｏｎ  Ｐｏｉｎｔ  Ｆｕｎｃｔｉｏｎ）として使用する。
【００７０】
ストリーム制御転送プロトコル（Ｓｔｒｅａｍ  Ｃｏｎｔｒｏｌ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｐｒｏｔｏｃｏｌ、ＳＣＴＰ）の使用時にネットフローＵＤＰパケットの損失がないと仮定し、ターゲット接続Ｘベクトルの集合＜ｘ１、ｘ２、・・・、ｘｎ＞と対象接続（Ｃａｎｄｉｄａｔｅ  Ｃｏｎｎｅｃｔｉｏｎ）Ｙベクトルの集合＜ｙ１、ｙ２、・・・、ｙｋ＞のＣＰＦは下記［数式１］の通りである。
【数１】
2017092963.tif 000003
この時、ｓはＣｏｒｒｅｌａｔｉｏｎ  Ｏｆｆｓｅｔt（比較開始時点）を意味し、０≦ｓ≦ｋ‐ｍを満たすが、これは対象接続がターゲット接続と相関性を持つためには、先ずＹベクトルのサイズがＸベクトルのサイズよりも大きい条件を満たさなければならないからである。
【００７１】
ターゲット接続は、接続チェーン上の最後の接続Ｃｎ−１であるので、対象接続が同一の接続チェーン上に存在する一つの接続になるためには、ｋ＞ｍを満たさなければならないインタラクティブサービスを利用した接続チェーン形成の順次生成及び終了特性のためである。
【００７２】
また、ｍはＸベクトルのサイズ、即ち|Ｘ|であり、ｓは上述したようにＹｋの開始ｏｆｆｓｅｔ（Ｃｏｒｒｅｌａｔｉｏｎ  Ｏｆｆｓｅｔ）である。
【００７３】
従って、Ｙｋのサイズがｒであれば０≦ｓ≦ｒ‐ｍの条件を満たしており、若しｒがｍよりも小さい場合は、計算を省略してＣＰＦ値を０と決定する。
【００７４】
前記数式１は、ターゲット接続を基準に対象接続の開始位置ｓからサイズｍほど相関性を求めた値となる。
【００７５】
開始オフセット（Ｃｏｒｒｅｌａｔｉｏｎ  Ｏｆｆｓｅｔ）を一つずつ増加させながらＣＰＦを計算した後、最大値を見付けてこの値をＣＶ（Ｃｏｒｒｅｌａｔｉｏｎ  Ｖａｌｕｅ）と定義し、以降、二つの接続が同一の経由地を持つ接続チェーン上に存在するかどうかを比較するために、ＣＶ関連性値を下記の数式２のように計算する。
【数２】
2017092963.tif 000004
例えば、一つのＴＰＣレイヤ４単位のｎ個のフローレコード（Ｆｌｏｗ  Ｒｅｃｏｒｄｓ）のうち損失（ｌｏｓｔ）イベントがｊ（ｊ＜ｎ）回発生した場合、ｊ＋１個の時系列が生成される。
【００７６】
この時、生成された時系列をＴＳ（１）、ＴＳ（２）、・・・、ＴＳ（ｊ＋１）と示すことができ、この時のＣＶ値は、下記の数式３のように計算される。
【数３】
2017092963.tif 000005
最終的に、ＣＶの最大値は、下記の数式４を利用して計算され、この値が臨界値以上である場合、該当接続について同一の接続チェーン上に存在するものと判断する。
【数４】
2017092963.tif 000006
ステップＳ４００は、実際の攻撃地（Ｏｒｉｇｉｎａｌ  Ａｔｔａｃｋｅｒ）を検出するステップであって、対象接続のうち複数の接続が同一の接続チェーン上に存在するものと検出される場合、実際の攻撃地を基準に接続順序を決定する。
【００７７】
例えば、 Ｃ１と Ｃ２が同一の接続チェーン上に存在するものと検出された場合、 Ｃ１の接続時間（ｔｓ（ Ｃ１）、ｔｅ（ Ｃ１））が Ｃ２の接続時間（ｔｓ（ Ｃ２）、ｔｅ（ Ｃ２））を含むかどうかを判断する。
【００７８】
若し、 Ｃ１の接続時間が Ｃ２の接続時間を含む場合、 Ｃ１が Ｃ２よりもアップストリーム（Ｕｐｓｔｒｅａｍ）上に存在する経由地接続（Ｓｔｅｐｐｉｎｇ  Ｓｔｏｎｅ  Ｃｏｎｎｅｃｔｉｏｎ）になり、 Ｃ２の接続時間が Ｃ１の接続時間を含む場合、 Ｃ２が Ｃ１よりも実際の攻撃地に近く位置した接続であるものと判断する。
【００７９】
一方、 Ｃ１と Ｃ２が互いに包含関係に存在しなければ、これらのうちの少なくとも一つの接続は、接続チェーン上に存在する接続ではないものと、誤検知された接続である。
【００８０】
従って、ステップＳ４００は、同一の接続チェーン上に存在するものと検出された両接続の間に接続時間の包含関係が成り立っていない場合、ＣＶ値を比較して割と小さいＣＶ値を持つ接続を誤検知された接続と判断して削除するようになる。
【００８１】
上述した本発明の実施形態に係るネットフロー基盤の接続フィンガープリントの生成及び経由地逆追跡方法によって、実際ネットワーク上で実現可能であり、接続フィンガープリントを生成し経由地接続を確認して、実際の攻撃者を追跡することが可能であるという効果がある。
【００８２】
これまで本発明の実施形態を中心に説明したが、本発明の属する技術分野において通常の知識を持つ者は、本発明の本質的な特性を外さない範囲内で変形された形態として具現されることが理解できるであろう。
【００８３】
よって、開示された実施形態は限定的な観点ではなく、説明的な観点から考慮されなければならない。尚、本発明の範囲は、上述した説明ではなく、特許請求の範囲に示されており、それと同等の範囲内にある全ての相違点は本発明に含まれるものと解釈されなければならない。
【符号の説明】
【００８４】
１００  ホスト
２００  ルーター
３００  ネットフローコレクタ
４００  ＴＡ
５００  ＵＩ
【図１】
2017092963.tif 000007
【図２】
2017092963.tif 000008
【図３】
2017092963.tif 000009
【図４】
2017092963.tif 000010
【図５】
2017092963.tif 000011