(57)【要約】【課題】パケット通過ルートの確定に際し、パケット通過探索の正確性を向上させ、不正アクセスの攻撃元を特定すること。【解決手段】あるパケットプリンティング装置（ＰＰ装置Ａ）で検索されたＴＴＬ値と、このＰＰ装置Ａを基点として検索要求が送信された他のパケットプリンティング装置（ＰＰ装置Ｂ）で検索されたＴＴＬ値とを比較して検索順に昇順になっているか否かを判定し、ＰＰ装置Ｂに、ＰＰ装置Ａへの経路関連情報が存在するか否かを判定し、ＰＰ装置Ａで検索された第１の通過時刻情報とＰＰ装置Ｂで検索された第２の通過時刻情報とを比較して検索順に降順になっているか否かを判定し、これらのＴＴＬ値の判定処理、経理関連情報の判定処理および通過時刻情報の判定処理の少なくとも一つを用いて、追跡対象パケットがパケットプリンティング装置を通過したか否かを判定する。【選択図】　　　図６
2004147223.tif 000002
【特許請求の範囲】
【請求項１】
監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備え、
前記管理マネージャは、追跡対象パケットのパケット特定情報を生成し、
前記複数のパケットプリンティング装置のそれぞれは、この監視対象の通信ネットワークを通過するパケットを特定するパケット特定情報を生成かつ記憶し、
前記管理マネージャは、前記追跡対象パケットのパケット特定情報を含む検索要求を所定のパケットプリンティング装置に送信し、
前記所定のパケットプリンティング装置は、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索し、この検索結果を前記管理マネージャに送信し、
前記管理マネージャは、この検索結果が前記追跡対象パケットである場合に、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して検索要求を送信するとともに、この検索結果を用いて前記追跡対象パケットの通過ルートを作成することを特徴とするパケット探索方法において、
前記管理マネージャは、前記所定のパケットプリンティング装置で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第１のＴＴＬ値と、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第２のＴＴＬ値とを比較して検索順に昇順になっているか否かを判定するＴＴＬ値判定ステップを備え、
このＴＴＬ値判定ステップを用いて、前記追跡対象パケットが前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定することを特徴とするパケット通過ルート探索方法。
【請求項２】
監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備え、
前記管理マネージャは、追跡対象パケットのパケット特定情報を生成し、
前記複数のパケットプリンティング装置のそれぞれは、この監視対象の通信ネットワークを通過するパケットを特定するパケット特定情報を生成かつ記憶し、
前記管理マネージャは、前記追跡対象パケットのパケット特定情報を含む検索要求を所定のパケットプリンティング装置に送信し、
前記所定のパケットプリンティング装置は、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索し、この検索結果を前記管理マネージャに送信し、
前記管理マネージャは、この検索結果が前記追跡対象パケットである場合に、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して検索要求を送信するとともに、この検索結果を用いて前記追跡対象パケットの通過ルートを作成することを特徴とするパケット探索方法において、　前記管理マネージャは、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置で検索された前記追跡対象パケットのパケット特定情報に関連付けられた経路関連情報に前記所定のパケットプリンティング装置が存在するか否かを判定する経路関連情報検索ステップを備え、
この経路関連情報検索ステップを用いて、前記追跡対象パケットが前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定することを特徴とするパケット通過ルート探索方法。
【請求項３】
監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備え、
前記管理マネージャは、追跡対象パケットのパケット特定情報を生成し、
前記複数のパケットプリンティング装置のそれぞれは、この監視対象の通信ネットワークを通過するパケットを特定するパケット特定情報を生成かつ記憶し、
前記管理マネージャは、前記追跡対象パケットのパケット特定情報を含む検索要求を所定のパケットプリンティング装置に送信し、
前記所定のパケットプリンティング装置は、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索し、この検索結果を前記管理マネージャに送信し、
前記管理マネージャは、この検索結果が前記追跡対象パケットである場合に、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して検索要求を送信するとともに、この検索結果を用いて前記追跡対象パケットの通過ルートを作成することを特徴とするパケット探索方法において、
前記管理マネージャは、前記ＴＴＬ値判定ステップおよび前記経路関連情報検索ステップを用いて、前記追跡対象パケットが前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定することを特徴とするパケット通過ルート探索方法。
【請求項４】
前記管理マネージャは、前記所定のパケットプリンティング装置で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第１の通過時刻情報と、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第２の通過時刻情報とを比較して検索順に降順になっているか否かを判定するステップおよび／または前記第１の通過時刻情報と前記第２の通過時刻情報との時間差が所定の基準値以内であるか否かを判定するステップを具える通過時刻情報判定ステップを備え、
この通過時刻情報判定ステップを用いて、前記追跡対象パケットが前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定することを特徴とする請求項１〜３のいずれか一つに記載のパケット通過ルート探索方法。
【請求項５】
前記管理マネージャは、前記追跡対象パケットの通過ルートが作成されたとき、この通過ルートが正しいルートか否かを判定することを特徴とする請求項１〜４のいずれか一つに記載のパケット通過ルート探索方法。
【請求項６】
前記管理マネージャは、終端装置判定数をＮ（Ｎは２以上の正の整数）として、順次検索要求が送信された前記複数のパケットプリンティング装置のそれぞれが経路であるか否かを順次判定し、連続的にＮ個のパケットプリンティング装置が経路でないと判定された場合に、最初に経路でないと判定されたパケットプリンティング装置への検索要求の問い合わせ元であるパケットプリンティング装置が通過ルートの終端であると判定することを特徴とする請求項１〜４のいずれか一つに記載のパケット通過ルート探索方法。
【請求項７】
前記管理マネージャは、前記追跡対象パケットが通過した経路であると判定されたパケットプリンティング装置が複数ある場合に、この通過経路であると判定されたパケットプリンティング装置を基点とした検索要求の問い合わせがすべて終了するまで、この検索要求の問い合わせを優先して行う幅優先型の問い合わせに基づく検索を行うことを特徴とする請求項１〜６のいずれか一つに記載のパケット通過ルート探索方法。
【請求項８】
前記管理マネージャは、前記追跡対象パケットが通過した経路であると判定されたパケットプリンティング装置が複数ある場合に、前記追跡対象パケットの通過ルートが確定するか、経路ではないと判定するまで深さ方向の検索を優先して行う深さ優先型の問い合わせに基づく検索を行うことを特徴とする請求項１〜６のいずれか一つに記載のパケット通過ルート探索方法。
【請求項９】
監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備え、
前記管理マネージャは、追跡対象パケットのパケット特定情報を生成し、
前記複数のパケットプリンティング装置のそれぞれは、この監視対象の通信ネットワークを通過するパケットを特定するパケット特定情報を生成かつ記憶し、
前記管理マネージャは、前記追跡対象パケットのパケット特定情報を含む検索要求を所定のパケットプリンティング装置にのみ送信し、
前記所定のパケットプリンティング装置は、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索し、この検索結果を前記管理マネージャに送信するとともに、この検索結果が前記追跡対象パケットである場合に、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して前記追跡対象パケットのパケット特定情報を含む検索要求を送信し、
前記管理マネージャは、この検索結果を用いて前記追跡対象パケットの通過ルートを作成することを特徴とするパケット探索方法において、
前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置は、前記所定のパケットプリンティング装置から送信された前記追跡対象パケットのパケット特定情報に関連付けられた第１のＴＴＬ値と、自己で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第２のＴＴＬ値とを比較して昇順になっているか否かを判定するＴＴＬ値判定ステップを備え、
このＴＴＬ値判定ステップを用いて、前記追跡対象パケットが自己を通過したか否かを判定することを特徴とするパケット通過ルート探索方法。
【請求項１０】
監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備え、
前記管理マネージャは、追跡対象パケットのパケット特定情報を生成し、
前記複数のパケットプリンティング装置のそれぞれは、この監視対象の通信ネットワークを通過するパケットを特定するパケット特定情報を生成かつ記憶し、
前記管理マネージャは、前記追跡対象パケットのパケット特定情報を含む検索要求を所定のパケットプリンティング装置にのみ送信し、
前記所定のパケットプリンティング装置は、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索し、この検索結果を前記管理マネージャに送信するとともに、この検索結果が前記追跡対象パケットである場合に、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して検索要求を送信し、
前記管理マネージャは、この検索結果を用いて前記追跡対象パケットの通過ルートを作成することを特徴とするパケット探索方法において、
前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置は、自己で検索された前記追跡対象パケットのパケット特定情報に関連付けられた経路関連情報に前記所定のパケットプリンティング装置が存在するか否かを判定する経路関連情報検索ステップを備え、
この経路関連情報検索ステップを用いて、前記追跡対象パケットが自己を通過したか否かを判定することを特徴とするパケット通過ルート探索方法。
【請求項１１】
監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備え、
前記管理マネージャは、追跡対象パケットのパケット特定情報を生成し、
前記複数のパケットプリンティング装置のそれぞれは、この監視対象の通信ネットワークを通過するパケットを特定するパケット特定情報を生成かつ記憶し、
前記管理マネージャは、前記追跡対象パケットのパケット特定情報を含む検索要求を所定のパケットプリンティング装置にのみ送信し、
前記所定のパケットプリンティング装置は、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索し、この検索結果を前記管理マネージャに送信するとともに、この検索結果が前記追跡対象パケットである場合に、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して検索要求を送信し、
前記管理マネージャは、この検索結果を用いて前記追跡対象パケットの通過ルートを作成することを特徴とするパケット探索方法において、
前記パケットプリンティング装置の直近に位置するパケットプリンティング装置は、前記ＴＴＬ値判定ステップおよび前記経路関連情報検索ステップを用いて、前記追跡対象パケットが自己を通過したか否かを判定することを特徴とするパケット通過ルート探索方法。
【請求項１２】
前記所定のパケットプリンティング装置の直近のパケットプリンティング装置は、前記所定のパケットプリンティング装置から送信された前記追跡対象パケットのパケット特定情報に関連付けられた第１の通過時刻情報と、自己で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第２の通過時刻情報とを比較して降順になっているか否かを判定するステップおよび／または前記第１の通過時刻情報と前記第２の通過時刻情報との時間差が所定の基準値以内であるか否かを判定するステップを具える通過時刻情報判定ステップを備え、
この通過時刻情報判定ステップを用いて、前記追跡対象パケットが自己を通過したか否かを判定することを特徴とする請求項９〜１１のいずれか一つに記載のパケット通過ルート探索方法。
【請求項１３】
前記管理マネージャは、前記追跡対象パケットの通過ルートが作成されたとき、この通過ルートが正しいルートか否かを判定することを特徴とする請求項９〜１２のいずれか一つに記載のパケット通過ルート探索方法。
【請求項１４】
監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備えたパケット追跡システムに適用される不正アクセス攻撃元特定方法において、
前記監視対象の通信ネットワークを通過する不正アクセスのパケットを特定するパケット特定情報と、前記パケットに含まれるハードウェアアドレスに基づいて判定されるローカルな通信ネットワークにおける送出元を判定する送出元判定情報とを生成しかつ記憶する記憶ステップと、
追跡対象パケットのパケット特定情報を含む検索要求を前記管理マネージャより受けて、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索するとともに、また、検索された場合に該パケット特定情報に対応する送出元判定情報を検索し、検索結果を前記管理マネージャに送信する送信ステップと、
前記同一のパケット特定情報が検索されかつ前記送出元判定情報がルータに対応している場合、前記追跡対象パケットが当該監視対象の通信ネットワークを通過した通過パケットであると判定し、また、前記送出元判定情報がルータに対応していない場合、前記追跡対象パケットが当該監視対象の通信ネットワーク上の装置で生成された生成パケットであると判定する判定ステップと、
を備えたことを特徴とする不正アクセス攻撃元特定方法。
【請求項１５】
前記判定ステップでは、前記同一のパケット特定情報が検索されかつ前記送出元判定情報がルータに対応している場合、当該監視対象の通信ネットワーク以外の通信ネットワークに設けられた装置を攻撃元として特定し、また、前記送出元判定情報がルータに対応していない場合、当該監視対象の通信ネットワーク上の装置を攻撃元として特定することを特徴とする請求項１４に記載の不正アクセス攻撃元特定方法。
【請求項１６】
前記判定ステップで前記追跡対象パケットが当該監視対象の通信ネットワークを通過した通過パケットであると判定された場合に、検索要求先を変えて、前記追跡対象パケットが監視対象の通信ネットワーク上の装置で生成された生成パケットであると判定されるまで、前記判定を繰り返すことを特徴とする請求項１４または１５に記載の不正アクセス攻撃元特定方法。
【請求項１７】
請求項１〜１６のいずれか一つに記載された方法をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ネットワーク上を流れるパケットの通過ルートを探索し、不正アクセスの攻撃元を特定する方法に関するものであり、特に、パケット通過ルートの確定に際し、このパケット通過ルートの正確性を向上させ、不正アクセスの攻撃元を特定することができるパケット通過ルート探索方法、不正アクセス攻撃元特定方法およびこれらの方法をコンピュータに実行させるプログラムに関するものである。
【０００２】
【従来の技術】
従来から通信ネットワーク内の不審なパケットを検出するために、ＩＤＳ（Ｉｎｔｒｕｓｉｏｎ　Ｄｅｔｅｃｔｉｏｎ　Ｓｙｓｔｅｍ／侵入検知装置）が使用されている。このＩＤＳにより不審なパケットを検知し、そのパケットの追跡を行う場合、発信元アドレスをキーとしてパケットの追跡を行う。そのため、発信元アドレスが詐称されていると、正確なパケットの追跡ができない。このような発信元の詐称されたパケットを特定し、追跡するために、パケット内に目印となる情報を付与する等、パケットに手を加える方法や、パケットの中身を精査する方法が考えられていた。
【０００３】
しかし、上述したパケット内に目印となる情報を付与する従来の方法は、その中身を調べるため、プライバシを侵害するという問題点があった。また、第三者によってパケット内に追跡するためとして付与された情報が、悪意ある第三者によって付与された、若しくは変更された欺購情報である場合、そのパケットを正確に追跡することができなかった。
【０００４】
また、ルータ等、既存のネットワーク機器において追跡する方法も考えられていた。しかし、この方法を実現するには、対象となるネットワーク装置内部の仕組みや、ネットワークの構成を一部変更しなければならない。そのため、機器の追加、設置場所変更等の構成変更を柔軟に行うことができなくなるという問題点があった。
【０００５】
そこで、本出願人は、ＰＣＴ／ＪＰ０１／０４１３９号に記載したパケット追跡システムによって上記問題点を解決している。なお、このパケット追跡システムは、既存のネットワーク機器を利用したままでもパケットの経路を追跡することのできるシステムである。
【０００６】
図２４は、このＰＣＴ／ＪＰ０１／０４１３９号に示されるパケット追跡システムの構成概要を示すブロック図である。同図において、ネットワークＡ、Ｂ、Ｃは、イントラネット内のネットワークである。また、ネットワークＡは、図示しないプロバイダを介してインターネットに接続されている。これらのネットワークを監視するため、それぞれのネットワーク間では、パケットプリンティング装置１０１（１０１ａ、１０１ｂ、１０１ｃ）が、タッピングなどの手法を用いてＩＰ（Ｉｎｔｅｒｎｅｔ　Ｐｒｏｔｏｃｏｌ　Ａｄｄｒｅｓｓ）アドレスなどの論理接続を持たない接続方式（ステルス接続方式）により接続されている。したがって、これらのパケットプリンティング装置１０１ａ、１０１ｂ、１０１ｃは、監視対象ネットワーク内の他の装置から自己の存在を隠すことができる。
【０００７】
一方、パケットプリンティング装置１０１ａ、１０１ｂ、１０１ｃは、監視対象ネットワークとは独立に存在する管理用ネットワークにも接続されている。この接続は監視対象ネットワークとの接続（ステルス接続）とは異なり、管理用ネットワークに接続された他の装置から認識可能な接続方式（例えばＩＰ接続方式）で接続されている。これらのパケットプリンティング装置１０１ａ、１０１ｂ、１０１ｃは、それぞれが接続されているネットワーク間の接続リンクを監視の対象とし、それぞれの監視対象ネットワークを通過するパケットのコピーを取り込み、コピーしたパケットを一意に特定するためのパケット特定情報を生成するとともに、このパケット特定情報を記憶する。
【０００８】
ところで、このパケット特定情報として最も一般的なのがハッシュ値と呼ばれるものである。このハッシュ値の生成には、ハッシュ関数と呼ばれる一方向性関数が用いられる。この一方向性関数に基づいて、パケットに含まれる文字、数字などを含んだ可変長の文字列データが固定長のデータに要約される。この要約された固定長データをハッシュ値と呼んでいる。なお、これ以降、このパケット特定情報をハッシュ値として説明する。
【０００９】
図２４において、さらに、ＩＤＳ１０３がネットワークＣおよび管理用ネットワークに接続されている。このＩＤＳ１０３は監視対象ネットワークに侵入した不正アクセスパケットの検知を行う装置である。一方、管理マネージャ１０２は、管理用ネットワークに接続され、パケットプリンティング装置１０１ａ、１０１ｂ、１０１ｃと管理用ネットワークを介して通信する装置である。また、構成情報ＤＢ１２６は監視対象ネットワークおよび管理用ネットワークの構成情報を記憶している。
【００１０】
いま、ＩＤＳ１０３が、ネットワークＣ内で不正アクセスパケットを検知したものとする。この不正アクセスパケットの検知は、ユーザが定義した不正アクセスの判定基準およびルールに基づいて行われる。例えば、ポートスキャンが行われた場合には、ＩＤＳ１０３は、このポートスキャンに対する警報と、このポートスキャンを行ったパケットを追跡対象パケットとして管理マネージャ１０２に送信する。管理マネージャ１０２は、これらのＩＤＳ１０３からの警報と、追跡対象パケットを受信すると、受信したパケットからハッシュ値を生成する。
【００１１】
つぎに、管理マネージャ１０２は、パケットプリンティング装置の位置を確認し、生成したハッシュ値を含む検索要求を送信する。ここでは、パケットプリンティング装置１０１ａ、１０１ｂ、１０１ｃのすべてに生成したハッシュ値を含む検索要求を送信するものとする。このとき、パケットプリンティング装置１０１ａ、１０１ｂ、１０１ｃは、受信したハッシュ値と一致するハッシュ値を記憶しているかどうか検索する。検索が終わると、検索結果を管理マネージャ１０２に送信する。管理マネージャ１０２は、パケットプリンティング装置１０１ａ、１０１ｂ、１０１ｃから送信された結果と、ネットワークの構成情報とから、パケットの経路を得ることができる。
【００１２】
例えば、パケットプリンティング装置１０１ｂ、１０１ｃから、一致するハッシュ値を記憶しているという結果を受信した場合、追跡対象パケットは、ネットワークＡを介してインターネットから来たということが明らかになる。
【００１３】
なお、図２４に示す構成では、管理マネージャ１０２やＩＤＳ１０３などを接続する管理用ネットワークは、監視対象ネットワークとは独立して存在するものとしているが、この接続形態に限定されるものではなく、監視対象ネットワークと論理的、物理的に同一な通信回線であってもよいし、物理的に同一であって、論理的に異なる通信回線であってもよい。
【００１４】
図２５は、パケットプリンティング装置１０１の機能構成を示すブロック図である。同図において、タッピング装置１１１は、接続する監視対象ネットワークを通過するパケットのコピーを作成する。プリンティング制御部１１２は、あらかじめ、ハッシュ値を生成する方式（ハッシュ関数）を、パケットプリンティング部１１３に指示しておく。パケットプリンティング部１１３は、プリンティング制御部１１２に指示された方式（ハッシュ関数）で、タッピング装置１１１がコピーしたパケットのハッシュ値を生成する。キャッシュ制御部１１４は、キャッシュ部１１５に記憶されているハッシュ値の量を認識する。ここで、キャッシュ部１１５に記憶されているハッシュ値が一定量以上であった場合、キャッシュ制御部１１４は、キャッシュ部１１５に記憶されている最も古いハッシュ値を破棄する。キャッシュ部１１５に記憶されているハッシュ値が一定量以下であった場合、キャッシュ制御部１１４は、キャッシュ部１１５に記憶されている情報の最後尾に新しいハッシュ値を追加して記憶する。このように、キャッシュ制御部１１４は、キャッシュ部１１５に記憶されているハッシュ値が常に一定量以下になるよう制御する。
【００１５】
ネットワ−クに流れるパケットのヘッダ部分には、当該パケットの寿命を示すＴＴＬ（Ｔｉｍｅ　Ｔｏ　Ｌｉｖｅ）が付随している。キャッシュ制御部１１４は、パケットプリンティング部１１３が生成したハッシュ値に、当該パケットの通過時刻情報を示すタイムスタンプと、ＴＴＬ値とを関連付けてキャッシュ部１１５の空いている記憶領域に記憶させる。パケットプリンティング装置１０１ａ、１０１ｂ、１０１ｃは、監視対象ネットワークを通過するすべてのパケットに対し、上述の動作を行っている。追跡エージェント部１１６は、管理用ネットワークと接続され、管理マネージャ１０２と通信する。なお、追跡エージェント部１１６の動作については、後述する管理マネージャ１０２の動作のところで説明する。
【００１６】
図２６は、管理マネージャ１０２の機能構成を示すブロック図である。同図において、警報受信部１２１は、ＩＤＳ１０３から不正アクセスパケットに対する警報を受信し、パケット受信部１２２は、ＩＤＳ１０３から不正アクセスパケットを受信する。プリンティング制御部１２３は、あらかじめ、ハッシュ値を生成する方式（ハッシュ関数）を、パケットプリンティング部１２４に指示しておく。なお、パケットプリンティング装置１０１のプリンティング制御部１１２で指定される方式と、管理マネージャ１０２のプリンティング制御部１２３で指定される方式は常に同じ方式である。パケットプリンティング部１２４は、プリンティング制御部１２３から指示された方式（ハッシュ関数）で、パケット受信部１２２で受信されたパケットのハッシュ値を生成する。追跡要求部１２５は、パケットプリンティング部１２４で生成されたハッシュ値を含む検索要求をパケットプリンティング装置１０１ａ、１０１ｂ、１０１ｃに送信するとともに、パケットプリンティング装置１０１ａ、１０１ｂ、１０１ｃからの検索結果を受信する。これらパケットプリンティング装置１０１ａ、１０１ｂ、１０１ｃから送信された検索結果と、監視対象ネットワークおよび管理用ネットワークの構成を記憶する構成情報ＤＢ１２６とに基づいて、通過ルート作成部１２７がパケットの通過経路を作成する。
【００１７】
このようにして、通過ルート作成部１２７が作成した追跡対象パケットの通過経路の情報がシステム管理者等に通知される。システム管理者等は、この通過経路の情報に基づき、追跡対象パケットがどこから侵入してきたのかを判断することができ、不正アクセスのパケットに対する対策を打つことができる。
【００１８】
【発明が解決しようとする課題】
しかしながら、上記のパケット追跡システムでは、パケットプリンティング装置が、パケットの検索の問い合わせに正確に回答することができず、追跡対象パケットの通過経路を特定できない場合があるという問題点があった。このパケットの検索の問い合わせに正確に回答できない場合とは、つぎのような場合である。
▲１▼　パケットプリンティング装置が故障し、返答できない場合
▲２▼　パケットプリンティング装置のパケット取得処理が間に合わず、パケットを取りこぼした場合
▲３▼　パケットプリンティング装置のバッファサイズが小さく、検索対象パケットのハッシュ値がページアウト（検索しても見つからなかった）してしまった場合
▲４▼　パケットプリンティング装置側の検索に時間がかかる等、管理マネージャの返答待ちがタイムアウトした場合
【００１９】
上述の課題を解決するため、単純に、パケットプリンティング装置の性能を高めたり、バッファサイズの容量を増やしたりすることも考えられるが、装置の規模やコストが増大するという欠点がある。また、取得時間を長くしたり、管理マネージャの返答待ち時間を長くすることも考えられるが、検索処理に時間がかかるという欠点がある。
【００２０】
また、従来のパケット追跡システムでは、不正アクセスパケットが監視対象ネットワークを利用して通信されたという事実しか把握することができず、不正アクセスの攻撃元、すなわち、当該不正アクセスパケットを生成した攻撃元のネットワークの接続場所を正確に特定することができないという欠点がある。
【００２１】
つまり、従来のパケット追跡システムでは、当該不正アクセスパケットが、監視対象ネットワーク上の攻撃元により生成された「生成パケット」であるか、ルータからルータへのリレーによって監視対象ネットワークを単に通過したにすぎない「通過パケット」であるかを正確に判別することができないのである。
【００２２】
この発明は、上記に鑑みてなされたものであって、パケット通過ルートの確定に際し、検索処理の時間を増加させることなく、パケット通過ルート探索の正確性を向上させ、不正アクセスの攻撃元を特定することができるパケット通過ルート探索方法、不正アクセス攻撃元特定方法およびこれらの方法をコンピュータに実行させるプログラムを得ることを目的とする。
【００２３】
【特許文献１】
特開２０００−１２４９５２号公報
【非特許文献１】
武井，「トラヒックパターンを用いた不正アクセス検出及び追跡方式」，信学技報，財団法人電子情報通信学会，１９９９年１１月１８日，Ｖｏｌ．９９　Ｎｏ．４３６，ｐ．３７−４２
【非特許文献２】
小久保，「不正アクセス発信源追跡システムのモデル検討」，第６０回（平成１２年度前期）全国大会講演論文集（３），財団法人情報処理学会，平成１２年３月１４日，ｐ．３−２８３−３−２８４
【非特許文献３】
渡辺，「不正アクセス発信源追跡のためのパケット識別情報の検討」，第６０回（平成１２年度前期）全国大会講演論文集（３），財団法人情報処理学会，平成１２年３月１４日，ｐ．３−２８９−３−２９０
【非特許文献４】
渡辺，「不正アクセス発信源追跡におけるパケット識別情報の有効性検証」，第６１回（平成１２年度後期）全国大会講演論文集（３），財団法人情報処理学会，平成１２年１０月３日，ｐ．３−２５９−３−２６０
【非特許文献５】
池田，「不正アクセス発信源追跡システムのアーキテクチャの有効性検証」，第６２回（平成１３年度前記）全国大会講演論文集（３），財団法人情報処理学会，平成１３年３月１３日，ｐ．３−２８５−３−２８６
【非特許文献６】
Ａｌｅｘ　Ｃ　Ｓｎｏｅｒｅｎ，「Ｈａｓｈ−Ｂａｓｅｄ　ＩＰ　Ｔｒａｃｅｂａｃｋ」，ＢＢＮ　Ｔｅｃｈｎｉｃａｌ　Ｍｅｍｏｒａｎｄｕｍ　Ｎｏ．１２８４，Ｆｅｂｒｕａｒｙ　７，２００１
【００２４】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するために、この発明にかかるパケット通過ルート探索方法においては、監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備え、前記管理マネージャは、追跡対象パケットのパケット特定情報を生成し、前記複数のパケットプリンティング装置のそれぞれは、この監視対象の通信ネットワークを通過するパケットを特定するパケット特定情報を生成かつ記憶し、前記管理マネージャは、前記追跡対象パケットのパケット特定情報を含む検索要求を所定のパケットプリンティング装置に送信し、前記所定のパケットプリンティング装置は、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索し、この検索結果を前記管理マネージャに送信し、前記管理マネージャは、この検索結果が前記追跡対象パケットである場合に、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して検索要求を送信するとともに、この検索結果を用いて前記追跡対象パケットの通過ルートを作成することを特徴とするパケット探索方法において、前記管理マネージャは、前記所定のパケットプリンティング装置で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第１のＴＴＬ値と、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第２のＴＴＬ値とを比較して検索順に昇順になっているか否かを判定するＴＴＬ値判定ステップを備え、このＴＴＬ値判定ステップを用いて、前記追跡対象パケットが前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定することを特徴とする。
【００２５】
この発明によれば、管理マネージャのＴＴＬ値判定ステップは、所定のパケットプリンティング装置で検索された追跡対象パケットのパケット特定情報に関連付けられた第１のＴＴＬ値と、所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置で検索された追跡対象パケットのパケット特定情報に関連付けられた第２のＴＴＬ値とを比較して検索順に昇順になっているか否かを判定し、このＴＴＬ値判定ステップを用いて、追跡対象パケットが所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定する。
【００２６】
つぎの発明にかかるパケット通過ルート探索方法にあっては、監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備え、前記管理マネージャは、追跡対象パケットのパケット特定情報を生成し、前記複数のパケットプリンティング装置のそれぞれは、この監視対象の通信ネットワークを通過するパケットを特定するパケット特定情報を生成かつ記憶し、前記管理マネージャは、前記追跡対象パケットのパケット特定情報を含む検索要求を所定のパケットプリンティング装置に送信し、前記所定のパケットプリンティング装置は、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索し、この検索結果を前記管理マネージャに送信し、前記管理マネージャは、この検索結果が前記追跡対象パケットである場合に、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して検索要求を送信するとともに、この検索結果を用いて前記追跡対象パケットの通過ルートを作成することを特徴とするパケット探索方法において、前記管理マネージャは、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置で検索された前記追跡対象パケットのパケット特定情報に関連付けられた経路関連情報に前記所定のパケットプリンティング装置が存在するか否かを判定する経路関連情報検索ステップを備え、この経路関連情報検索ステップを用いて、前記追跡対象パケットが前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定することを特徴とする。
【００２７】
この発明によれば、管理マネージャの経路関連情報検索ステップは、所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置で検索された追跡対象パケットのパケット特定情報に関連付けられた経路関連情報に所定のパケットプリンティング装置が存在するか否かを判定し、追跡対象パケットが所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定する。
【００２８】
つぎの発明にかかるパケット通過ルート探索方法にあっては、監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備え、前記管理マネージャは、追跡対象パケットのパケット特定情報を生成し、前記複数のパケットプリンティング装置のそれぞれは、この監視対象の通信ネットワークを通過するパケットを特定するパケット特定情報を生成かつ記憶し、前記管理マネージャは、前記追跡対象パケットのパケット特定情報を含む検索要求を所定のパケットプリンティング装置に送信し、前記所定のパケットプリンティング装置は、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索し、この検索結果を前記管理マネージャに送信し、前記管理マネージャは、この検索結果が前記追跡対象パケットである場合に、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して検索要求を送信するとともに、この検索結果を用いて前記追跡対象パケットの通過ルートを作成することを特徴とするパケット探索方法において、前記管理マネージャは、前記ＴＴＬ値判定ステップおよび前記経路関連情報検索ステップを用いて、前記追跡対象パケットが前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定することを特徴とする。
【００２９】
この発明によれば、管理マネージャのＴＴＬ値判定ステップおよび経路関連情報検索ステップは、追跡対象パケットが所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定する。
【００３０】
つぎの発明にかかるパケット通過ルート探索方法にあっては、前記管理マネージャは、前記所定のパケットプリンティング装置で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第１の通過時刻情報と、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第２の通過時刻情報とを比較して検索順に降順になっているか否かを判定するステップおよび／または前記第１の通過時刻情報と前記第２の通過時刻情報との時間差が所定の基準値以内であるか否かを判定するステップを具える通過時刻情報判定ステップを備え、この通過時刻情報判定ステップを用いて、前記追跡対象パケットが前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定することを特徴とする。
【００３１】
この発明によれば、管理マネージャの通過時刻情報判定ステップは、所定のパケットプリンティング装置で検索された追跡対象パケットのパケット特定情報に関連付けられた第１の通過時刻情報と、所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置で検索された追跡対象パケットのパケット特定情報に関連付けられた第２の通過時刻情報とを比較して検索順に降順になっているか否かを判定するステップと第１の通過時刻情報と第２の通過時刻情報との時間差が所定の基準値以内であるか否かを判定するステップとのいずれか一つを用いて、追跡対象パケットが所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定する。
【００３２】
つぎの発明にかかるパケット通過ルート探索方法にあっては、前記管理マネージャは、前記追跡対象パケットの通過ルートが作成されたとき、この通過ルートが正しいルートか否かを判定することを特徴とする。
【００３３】
この発明によれば、管理マネージャは、追跡対象パケットの通過ルートが作成されたとき、この通過ルートが正しいルートか否かを判定する。
【００３４】
つぎの発明にかかるパケット通過ルート探索方法にあっては、前記管理マネージャは、終端装置判定数をＮ（Ｎは２以上の正の整数）として、順次検索要求が送信された前記複数のパケットプリンティング装置のそれぞれが経路であるか否かを順次判定し、連続的にＮ個のパケットプリンティング装置が経路でないと判定された場合、かつ、問い合わせ元からこれ以上問い合わせ先がない場合に、最初に経路でないと判定されたパケットプリンティング装置への検索要求の問い合わせ元であるパケットプリンティング装置が通過ルートの終端であると判定することを特徴とする。
【００３５】
この発明によれば、第２の検索要求送信ステップは、管理マネージャは、終端装置判定数をＮ（Ｎは２以上の正の整数）として、順次検索要求が送信された複数のパケットプリンティング装置のそれぞれが経路であるか否かを順次判定し、連続的にＮ個のパケットプリンティング装置が経路でないと判定された場合に、最初に経路でないと判定されたパケットプリンティング装置への検索要求の問い合わせ元であるパケットプリンティング装置が通過ルートの終端であると判定する。
【００３６】
つぎの発明にかかるパケット通過ルート探索方法にあっては、前記管理マネージャは、前記追跡対象パケットが通過した経路であると判定されたパケットプリンティング装置が複数ある場合に、この通過経路であると判定されたパケットプリンティング装置を基点とした検索要求の問い合わせがすべて終了するまで、この検索要求の問い合わせを優先して行う幅優先型の問い合わせに基づく検索を行うことを特徴とする。
【００３７】
この発明によれば、幅優先型の問い合わせに基づく検索において、管理マネージャは、追跡対象パケットが通過した経路であると判定されたパケットプリンティング装置が複数ある場合に、この通過経路であると判定されたパケットプリンティング装置を基点とした検索要求の問い合わせがすべて終了するまで、この検索要求の問い合わせを優先して行う。
【００３８】
つぎの発明にかかるパケット通過ルート探索方法にあっては、前記管理マネージャは、前記追跡対象パケットが通過した経路であると判定されたパケットプリンティング装置が複数ある場合に、前記追跡対象パケットの通過ルートが確定するか、経路ではないと判定するまで深さ方向の検索を優先して行う深さ優先型の問い合わせに基づく検索を行うことを特徴とする。
【００３９】
この発明によれば、深さ優先型の問い合わせに基づく検索において、管理マネージャは、追跡対象パケットが通過した経路であると判定されたパケットプリンティング装置が複数ある場合に、追跡対象パケットの通過ルートが確定するか、経路ではないと判定するまで深さ方向の検索を優先して行う。
【００４０】
つぎの発明にかかるパケット通過ルート探索方法にあっては、監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備え、前記管理マネージャは、追跡対象パケットのパケット特定情報を生成し、前記複数のパケットプリンティング装置のそれぞれは、この監視対象の通信ネットワークを通過するパケットを特定するパケット特定情報を生成かつ記憶し、前記管理マネージャは、前記追跡対象パケットのパケット特定情報を含む検索要求を所定のパケットプリンティング装置にのみ送信し、前記所定のパケットプリンティング装置は、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索し、この検索結果を前記管理マネージャに送信するとともに、この検索結果が前記追跡対象パケットである場合に、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して前記追跡対象パケットのパケット特定情報を含む検索要求を送信し、前記管理マネージャは、この検索結果を用いて前記追跡対象パケットの通過ルートを作成することを特徴とするパケット探索方法において、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置は、前記所定のパケットプリンティング装置から送信された前記追跡対象パケットのパケット特定情報に関連付けられた第１のＴＴＬ値と、自己で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第２のＴＴＬ値とを比較して昇順になっているか否かを判定するＴＴＬ値判定ステップを備え、このＴＴＬ値判定ステップを用いて、前記追跡対象パケットが自己を通過したか否かを判定することを特徴とする。
【００４１】
この発明によれば、所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置のＴＴＬ値判定ステップは、所定のパケットプリンティング装置から送信された追跡対象パケットのパケット特定情報に関連付けられた第１のＴＴＬ値と、自己で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第２のＴＴＬ値とを比較して昇順になっているか否かを判定し、追跡対象パケットが自己を通過したか否かを判定する。
【００４２】
つぎの発明にかかるパケット通過ルート探索方法にあっては、監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備え、前記管理マネージャは、追跡対象パケットのパケット特定情報を生成し、前記複数のパケットプリンティング装置のそれぞれは、この監視対象の通信ネットワークを通過するパケットを特定するパケット特定情報を生成かつ記憶し、前記管理マネージャは、前記追跡対象パケットのパケット特定情報を含む検索要求を所定のパケットプリンティング装置にのみ送信し、前記所定のパケットプリンティング装置は、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索し、この検索結果を前記管理マネージャに送信するとともに、この検索結果が前記追跡対象パケットである場合に、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して検索要求を送信し、前記管理マネージャは、この検索結果を用いて前記追跡対象パケットの通過ルートを作成することを特徴とするパケット探索方法において、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置は、自己で検索された前記追跡対象パケットのパケット特定情報に関連付けられた経路関連情報に前記所定のパケットプリンティング装置が存在するか否かを判定する経路関連情報検索ステップを備え、この経路関連情報検索ステップを用いて、前記追跡対象パケットが自己を通過したか否かを判定することを特徴とする。
【００４３】
この発明によれば、所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置の経路関連情報検索ステップは、自己で検索された追跡対象パケットのパケット特定情報に関連付けられた経路関連情報に所定のパケットプリンティング装置が存在するか否かを判定し、追跡対象パケットが自己を通過したか否かを判定する。
【００４４】
つぎの発明にかかるパケット通過ルート探索方法にあっては、監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備え、前記管理マネージャは、追跡対象パケットのパケット特定情報を生成し、前記複数のパケットプリンティング装置のそれぞれは、この監視対象の通信ネットワークを通過するパケットを特定するパケット特定情報を生成かつ記憶し、前記管理マネージャは、前記追跡対象パケットのパケット特定情報を含む検索要求を所定のパケットプリンティング装置にのみ送信し、前記所定のパケットプリンティング装置は、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索し、この検索結果を前記管理マネージャに送信するとともに、この検索結果が前記追跡対象パケットである場合に、前記所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して検索要求を送信し、前記管理マネージャは、この検索結果を用いて前記追跡対象パケットの通過ルートを作成することを特徴とするパケット探索方法において、前記パケットプリンティング装置の直近に位置するパケットプリンティング装置は、前記ＴＴＬ値判定ステップおよび前記経路関連情報検索ステップを用いて、前記追跡対象パケットが自己を通過したか否かを判定することを特徴とする。
【００４５】
この発明によれば、パケットプリンティング装置の直近に位置するパケットプリンティング装置のＴＴＬ値判定ステップおよび経路関連情報検索ステップは、追跡対象パケットが自己を通過したか否かを判定する。
【００４６】
つぎの発明にかかるパケット通過ルート探索方法にあっては、前記所定のパケットプリンティング装置の直近のパケットプリンティング装置は、前記所定のパケットプリンティング装置から送信された前記追跡対象パケットのパケット特定情報に関連付けられた第１の通過時刻情報と、自己で検索された前記追跡対象パケットのパケット特定情報に関連付けられた第２の通過時刻情報とを比較して降順になっているか否かを判定するステップおよび／または前記第１の通過時刻情報と前記第２の通過時刻情報との時間差が所定の基準値以内であるか否かを判定するステップを具える通過時刻情報判定ステップを備え、この通過時刻情報判定ステップを用いて、前記追跡対象パケットが自己を通過したか否かを判定することを特徴とする。
【００４７】
この発明によれば、所定のパケットプリンティング装置の直近のパケットプリンティング装置の通過時刻情報判定ステップは、所定のパケットプリンティング装置から送信された前記追跡対象パケットのパケット特定情報に関連付けられた第１の通過時刻情報と、自己で検索された追跡対象パケットのパケット特定情報に関連付けられた第２の通過時刻情報とを比較して降順になっているか否かを判定するステップと第１の通過時刻情報と第２の通過時刻情報との時間差が所定の基準値以内であるか否かを判定するステップとのいずれか一つを用いて、追跡対象パケットが自己を通過したか否かを判定する。
【００４８】
つぎの発明にかかるパケット通過ルート探索方法にあっては、前記管理マネージャは、前記追跡対象パケットの通過ルートが作成されたとき、この通過ルートが正しいルートか否かを判定することを特徴とする。
【００４９】
この発明によれば、管理マネージャは、追跡対象パケットの通過ルートが作成されたとき、この通過ルートが正しいルートか否かを判定する。
【００５０】
つぎの発明にかかる不正アクセス攻撃元特定方法にあっては、監視対象の通信ネットワークの要所に配置された複数のパケットプリンティング装置と、これらのパケットプリンティング装置との間で情報の送受を行う管理マネージャとを備えたパケット追跡システムに適用される不正アクセス攻撃元特定方法において、前記監視対象の通信ネットワークを通過する不正アクセスのパケットを特定するパケット特定情報と、前記パケットに含まれるハードウェアアドレスに基づいて判定されるローカルな通信ネットワークにおける送出元を判定する送出元判定情報とを生成しかつ記憶する記憶ステップと、追跡対象パケットのパケット特定情報を含む検索要求を前記管理マネージャより受けて、前記追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索するとともに、また、検索された場合に該パケット特定情報に対応する送出元判定情報を検索し、検索結果を前記管理マネージャに送信する送信ステップと、前記同一のパケット特定情報が検索されかつ前記送出元判定情報がルータに対応している場合、前記追跡対象パケットが当該監視対象の通信ネットワークを通過した通過パケットであると判定し、また、前記送出元判定情報がルータに対応していない場合、前記追跡対象パケットが当該監視対象の通信ネットワーク上の装置で生成された生成パケットであると判定する判定ステップと、を備えたことを特徴とする。
【００５１】
この発明によれば、監視対象の通信ネットワークを通過する不正アクセスのパケットを特定するパケット特定情報と、パケットに含まれるハードウェアアドレスに基づいて判定されるローカルな通信ネットワークにおける送出元を判定する送出元判定情報とを生成しかつ記憶し、追跡対象パケットのパケット特定情報を含む検索要求を管理マネージャより受けて、追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索するとともに、また、検索された場合に該パケット特定情報に対応する送出元判定情報を検索し、検索結果を管理マネージャに送信し、同一のパケット特定情報が検索されかつ送出元判定情報がルータに対応している場合、追跡対象パケットが当該監視対象の通信ネットワークを通過した通過パケットであると判定し、また、送出元判定情報がルータに対応していない場合、追跡対象パケットが当該監視対象の通信ネットワーク上の装置で生成された生成パケットであると判定するようにしているので、不正アクセスの攻撃元を特定することができる。
【００５２】
つぎの発明にかかる不正アクセス攻撃元特定方法にあっては、前記判定ステップでは、前記同一のパケット特定情報が検索されかつ前記送出元判定情報がルータに対応している場合、当該監視対象の通信ネットワーク以外の通信ネットワークに設けられた装置を攻撃元として特定し、また、前記送出元判定情報がルータに対応していない場合、当該監視対象の通信ネットワーク上の装置を攻撃元として特定することを特徴とする。
【００５３】
この発明によれば、同一のパケット特定情報が検索されかつ送出元判定情報がルータに対応している場合、当該監視対象の通信ネットワーク以外の通信ネットワークに設けられた装置を攻撃元として特定され、また、送出元判定情報がルータに対応していない場合、当該監視対象の通信ネットワーク上の装置を攻撃元として特定される。
【００５４】
つぎの発明にかかる不正アクセス攻撃元特定方法にあっては、前記判定ステップで前記追跡対象パケットが当該監視対象の通信ネットワークを通過した通過パケットであると判定された場合に、検索要求先を変えて、前記追跡対象パケットが監視対象の通信ネットワーク上の装置で生成された生成パケットであると判定されるまで、前記判定を繰り返すことを特徴とする。
【００５５】
この発明によれば、判定ステップで追跡対象パケットが当該監視対象の通信ネットワークを通過した通過パケットであると判定された場合に、検索要求先を変えて、追跡対象パケットが監視対象の通信ネットワーク上の装置で生成された生成パケットであると判定されるまで、判定が繰り返される。
【００５６】
つぎの発明にかかるプログラムは、上記の発明のいずれか一つに記載された方法をコンピュータに実行させるプログラムであり、そのプログラムがコンピュータ読み取り可能となり、これによって、上記の発明のいずれか一つの動作をコンピュータによって実行することができる。
【００５７】
【発明の実施の形態】
以下、この発明にかかるパケット通過ルート探索方法、不正アクセス攻撃元特定方法およびこれらの方法をコンピュータに実行させるためのプログラムの実施の形態１および２を図面に基づいて詳細に説明する。なお、これらの実施の形態１および２によりこの発明が限定されるものではない。
【００５８】
（実施の形態１）
図１は、本発明にかかる実施の形態１における管理マネージャおよびこの管理マネージャからパケット追跡のために検索要求の問い合わせを受けるネットワーク上に配置されたパケットプリンティング装置の階層接続図である。同図に示すように、パケットプリンティング装置ＰＰ−０１〜ＰＰ−３１は、黒丸の点で示されるルータなどの中継装置間の経路上に接続されて配置されている。例えば、ＰＰ−０１は図示しないＩＤＳ（侵入検知装置）の直近に位置するパケットプリンティング装置であり、管理マネージャから最初の問い合わせを受けるパケットプリンティング装置である。また、ＰＰ−０２およびＰＰ−０３はＰＰ−０１から見て直近に位置するパケットプリンティング装置である。以下、ＰＰ−０４〜ＰＰ−３１は監視対象ネットワークのトポロジー（接続構成）にしたがって、図１のように階層接続されている。また、破線で示す矢印は検索要求の問い合わせの一例を示している。例えば、ＰＰ−０２はＰＰ−０１から検索要求の問い合わせを受信後、ＰＰ−０３、ＰＰ−０４およびＰＰ−０５に対して検索要求の問い合わせを行っている。
【００５９】
ここで、パケット追跡のための検索要求の問い合わせ方式について説明する。検索要求の問い合わせ方式については、以下の３つがある。
【００６０】
（一斉追跡方式）
管理マネージャがすべてのパケットプリンティング装置に対して検索要求を送信する方式である。
【００６１】
（管理マネージャ追跡方式）
まず、管理マネージャはＩＤＳの直近のパケットプリンティング装置に対して検索要求を送信する。検索要求が送信されたパケットプリンティング装置は、自己内に検索対象のパケット特定情報が検索されたか否かを管理マネージャに通知する。管理マネージャは、パケット特定情報が検索されたパケットプリンティング装置の直近に位置するそれぞれのパケットプリンティング装置に対してそれぞれ検索要求を送信する。以後、管理マネージャが、検索要求の送信を継続する方式である。
【００６２】
（自律型追跡方式）
まず、管理マネージャがＩＤＳの直近のパケットプリンティング装置に対して検索要求を送信する。検索要求が送信されたパケットプリンティング装置は、自己内に検索対象のパケット特定情報が検索された場合に、さらに自己の直近に位置するそれぞれのパケットプリンティング装置に対してそれぞれ検索要求を送信する。以後、これらのパケットプリンティング装置が自己の直近のパケットプリンティング装置に対して自律的に検索要求の送信を継続する方式である。
【００６３】
自律型追跡方式および管理マネージャ追跡方式は、これ以降、詳述する内容から明らかになるが、上記の課題を解決することができる。一方、一斉追跡方式は、もともと、パケットの通過経路を絞り込むという考え方がないので、パケットの通過箇所を判明できても、パケットの通過経路までを特定することはできない。したがって、上述の課題を解決することができないので、この実施の形態１では考慮しない。なお、この管理マネージャ追跡方式では、どの方向の探索を優先するかによって、深さ優先型の探索方式と幅優先型の探索方式とがあるが、これらの方式については後述する。
【００６４】
ところで、あらかじめパケットプリンティング装置の構成情報を知っているという前提条件の下では、検索要求を送信するか否かの判断を行う装置が異なるだけで、検索要求を送信するか否かの判断基準は、両者とも同一である。したがって、これ以降の説明は、管理マネージャ追跡方式に限定して説明する。
【００６５】
なお、パケット特定情報は、ハッシュ値に限定されるものではなく、ハッシュ値の代わりにパケットそのもののコピーあるいはパケットを一意に特定することが可能なデータを含むパケットデータの一部であってもよい。すなわち、受信したパケットを特定することができるデータであれば何でも用いることができる。しかしながら、検索処理の効率化の高速化などの観点からパケット特定情報としてハッシュ値を用いることが一般的であり、これ以降の説明では、管理マネージャおよびパケットプリンティング装置が、受信したパケットに基づいて当該パケットのハッシュ値を生成するものとして説明する。
【００６６】
図２は、検索要求の問い合わせにより特定されたパケット通過ルートの一例をパケットプリンティング装置の階層接続図に示した図である。同図において、この特定された通過ルート上にあるパケットプリンティング装置それぞれをハッチングで示している。また、図３は、図２に示すパケット通過ルートを特定するための探索手順を示した図表である。図３において、表頭の左側から、探索手順の一連番号を示すステップ、問い合わせ要求の基点となるパケットプリンティング装置の位置を示す問い合わせ基点位置、すべてのパケットプリンティング装置から返答がない場合につぎのパケットプリンティング装置に問い合わせる際にパケット通過したと仮に設定されるネットワーク経路上のパケットプリンティング装置の位置を示す仮通過位置、問い合わせ要求の送信先のパケットプリンティング装置である問い合わせ先位置、パケットプリンティング装置が返答する結果を示す返答結果、問い合わせ基点位置から問い合わせ先位置へ向かうルートが経路であるか否かを判定した結果である判定結果、判定結果に基づいてパケット通過ルートであると判定された通過ルートをそれぞれ示している。以下、図２および図３を用いて、パケット通過ルートを探索する手順について説明する。
【００６７】
（ステップＳ１）
まず、何も問い合わせが行われていない状態では、問い合わせ基点位置は管理マネージャにある。この管理マネージャから［ＰＰ−０１］に、管理マネージャが生成した追跡対象パケットのハッシュ値を含む検索要求が送信される。このとき、［ＰＰ−０１］は、管理マネージャから送信された追跡対象パケットのハッシュ値と同一のハッシュ値が記憶されていないか検索し、送信されたハッシュ値と同一のハッシュ値が検索されれば「Ｙｅｓ」を、検索されなければ「Ｎｏ」を管理マネージャに返答する。この実施の形態１では、「Ｙｅｓ」という結果が返答されたものとする。管理マネージャは、この「Ｙｅｓ」の返答結果から［ＰＰ−０１］を経路として判定し、［ＰＰ−０１］を通過ルートとして記憶する。
【００６８】
（ステップＳ２−ａ）
つぎの探索では、ステップＳ１で確定した通過ルート上の［ＰＰ−０１］が問い合わせ基点位置であり、管理マネージャから、この問い合わせ基点位置である［ＰＰ−０１］の直近に位置する［ＰＰ−０２］に、管理マネージャが生成した追跡対象パケットのハッシュ値を含む検索要求が送信される。このとき、［ＰＰ−０２］は、管理マネージャから送信された追跡対象パケットのハッシュ値と同一のハッシュ値が記憶されていないか検索し、送信されたハッシュ値と同一のハッシュ値が検索されれば「Ｙｅｓ」を、検索されなければ「Ｎｏ」を管理マネージャに返答する。この実施の形態１では、「Ｙｅｓ」という結果が返答されたものとする。管理マネージャは、この「Ｙｅｓ」の返答結果から［ＰＰ−０２］を経路として判定し、［ＰＰ−０１］−［ＰＰ−０２］を通過ルートとして記憶する。
【００６９】
（ステップＳ２−ｂ）
さらにつぎの探索では、［ＰＰ−０２］とは異なり［ＰＰ−０１］の直近に位置する［ＰＰ−０３］に対する問い合わせが行われる。すなわち、［ＰＰ−０１］を問い合わせ基点位置とし、管理マネージャから［ＰＰ−０３］に、管理マネージャが生成した追跡対象パケットのハッシュ値を含む検索要求が送信される。このとき、［ＰＰ−０３］は、管理マネージャから送信された追跡対象パケットのハッシュ値と同一のハッシュ値が記憶されていないか検索し、送信されたハッシュ値と同一のハッシュ値が検索されれば「Ｙｅｓ」を、検索されなければ「Ｎｏ」を管理マネージャに返答する。この実施の形態１では、「Ｎｏ」という結果が返答されたものとする。管理マネージャは、この「Ｎｏ」の返答結果から、［ＰＰ−０３］は経路ではないと判定し、［ＰＰ−０１］−［ＰＰ−０３］を通過ルートとせず、［ＰＰ−０１］だけを記憶しておく。
【００７０】
以後の説明では、冗長な説明を避ける観点から、検索要求では、管理マネージャからパケットプリンティング装置に追跡対象パケットのハッシュ値を含む検索要求が送信され、この検索要求が送信されたパケットプリンティング装置では、送信された追跡対象パケットのハッシュ値と同一のハッシュ値が記憶されていないかの検索が実行され、送信されたハッシュ値と同一のハッシュ値が検索されれば「Ｙｅｓ」を、検索されなければ「Ｎｏ」を管理マネージャに返答することを意味するものとして説明する。
【００７１】
（ステップＳ３−ａ〜ステップＳ３−ｃ）
ステップＳ３−ａ〜ステップＳ３−ｃでは、問い合わせ基点位置を［ＰＰ−０２］とし、問い合わせ先位置である［ＰＰ−０４］、［ＰＰ−０５］、［ＰＰ−０３］のそれぞれに対して検索要求が送信される。［ＰＰ−０３］を除外しない理由は、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０３］というルートも考えられるからである。ここでは、［ＰＰ−０４］が経路として判定され、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］が通過ルートとして記憶される。
【００７２】
以下、同様な手順で、ステップＳ４−ａ〜ステップＳ５−ｃまでの探索が行われる。この実施の形態１では、図２に示すように、ステップＳ５−ｂで［ＰＰ−１９］が終端と判定され、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０９］−［ＰＰ−１９］が通過ルートとして決定される。なお、終端であるか否かの判定、すなわち探索終了の判定は、つぎのように行われる。
【００７３】
管理マネージャ追跡方式では、管理マネージャは、あらかじめ監視対象ネットワークに接続されているパケットプリンティング装置の構成情報を保有しているため、これ以上隣接するパケットプリンティング装置がない場合を終端と定義し、終端にあるパケットプリンティング装置か否かを構成情報から判断し、探索終了を判定することができる。
【００７４】
自律型追跡方式では、終端に位置するパケットプリンティング装置とそれ以外のパケットプリンティング装置とを識別することにより、終端に位置するパケットプリンティング装置からの応答結果を管理マネージャが受信することで、終端であるか否かを判定することができる。
【００７５】
図４は、検索要求の問い合わせにより特定された複数のパケット通過ルートの一例をパケットプリンティング装置の階層接続図に示した図である。同図において、これらの複数の通過ルート上にあるパケットプリンティング装置それぞれをハッチングで示している。また、図５は、図４に示す複数のパケット通過ルートの探索手順を示した図表である。なお、図５の図表の形式については、図３と同一であるため説明を省略する。以下、図４および図５を用いて、パケット通過ルートを探索する手順について説明する。
【００７６】
（ステップＳ１〜ステップＳ２−ｂ）
ステップＳ１〜ステップＳ２−ｂの処理は図３で説明した探索手順と同様なので説明を省略する。
【００７７】
（ステップＳ３−ａ〜ステップＳ３−ｃ）
ステップＳ３−ａ〜ステップＳ３−ｃでは、問い合わせ基点位置を［ＰＰ−０２］とし、問い合わせ先位置である［ＰＰ−０４］、［ＰＰ−０５］、［ＰＰ−０３］のそれぞれに対して検索要求が送信される。［ＰＰ−０３］を除外しない理由は、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０３］というルートも考えられるからである。ここでは、［ＰＰ−０４］および［ＰＰ−０５］が経路として判定され、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］および［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０５］とが通過ルートとして記憶される。
【００７８】
（ステップＳ４−ａ〜ステップＳ４−ｃ）
ステップＳ４−ａ〜ステップＳ４−ｃでは、問い合わせ基点位置を［ＰＰ−０４］とし、問い合わせ先位置である［ＰＰ−０８］、［ＰＰ−０９］、［ＰＰ−０５］のそれぞれに対して検索要求が送信される。［ＰＰ−０５］を除外しない理由は、上記の［ＰＰ−０３］を除外しない理由と同様である。ここでは、［ＰＰ−０９］および［ＰＰ−０５］が経路として判定され、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０９］および［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０５］とが通過ルートとして記憶される。
【００７９】
（ステップＳ５−ａ〜ステップＳ５−ｃ）
ステップＳ５−ａ〜ステップＳ５−ｃでは、問い合わせ基点位置を［ＰＰ−０９］とする。ここで、問い合わせ基点位置の選択候補としては、［ＰＰ−０９］と［ＰＰ−０５］とがある。経路が複数見つかった場合に、複数のノードの何れかを選択する基準として、深さ優先型の探索と幅優先型の探索とがある。深さ優先型の探索は、最初に見つかった経路を深さ方向に最後まで追跡する方式である。換言すれば、追跡対象パケットが通過した経路と判定されたパケットプリンティング装置が複数ある場合に、追跡対象パケットの通過ルートが確定するか、経路ではないと判定するまで深さ方向の探索を継続する方式である。一方、幅優先型の探索は、深さ方向に検索するよりも同一階層での検索を優先する方式である。
【００８０】
これに対して、幅優先型の探索は、経路と判定されたパケットプリンティング装置を基点とした問い合わせがすべて終了するまで深さ方向の問い合わせを行わない方式である。換言すれば、追跡対象パケットが通過した経路と判定されたパケットプリンティング装置が複数ある場合に、この通過経路と判定されたパケットプリンティング装置を基準とした検索要求の問い合わせがすべて終了するまで、この通過経路と判定されたパケットプリンティング装置を基準とした検索要求の問い合わせを優先して行う方式である。図５は深さ優先型の探索手順を示すものであり、ここでは、［ＰＰ−０９］が選択される。このとき、問い合わせ基点位置は［ＰＰ−０９］となり、それぞれ［ＰＰ−１８］、［ＰＰ−１９］、［ＰＰ−０８］に対して検索要求が送信される。このとき、［ＰＰ−１９］が経路として判定され、また［ＰＰ−１９］が終端に位置された装置であるため、終端であると判定され、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０９］−［ＰＰ−１９］が通過ルートとして記憶される。
【００８１】
（ステップＳ４−ｄ〜ステップＳ４−ｆ）
前述のステップＳ５−ａ〜ステップＳ５−ｃの探索において、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０９］−［ＰＰ−１９］という一つのルートが確定している。したがって、ステップＳ４−ｄ〜ステップＳ４−ｆでは、問い合わせ基点位置を前述のステップＳ５−ａ〜ステップＳ５−ｃの探索で経路と判定されている他方のノードである［ＰＰ−０５］とする。この［ＰＰ−０５］からの検索要求の候補としては、［ＰＰ−１０］、［ＰＰ−１１］、［ＰＰ−０２］の３つがある。ここで、［ＰＰ−０２］は、［ＰＰ−０５］に到達する直前に記憶された通過ルートのリストの中に含まれているので、［ＰＰ−０２］への検索要求は行われない。ここでは、［ＰＰ−１１］が経路として判定され、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０５］−［ＰＰ−１１］が通過ルートとして記憶される。
【００８２】
以下、深さ優先型の手順にしたがって、同様な探索を継続することにより、つぎに示すような、４つの通過ルートが探索される。なお、この探索を幅優先型の探索手順にしたがって実施した場合にも同一の結果が得られる。
▲１▼　［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０９］−［ＰＰ−１９］
▲２▼　［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０５］−［ＰＰ−１１］−［ＰＰ−２３］
▲３▼　［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０５］−［ＰＰ−１１］−［ＰＰ−２３］
▲４▼　［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０５］−［ＰＰ−０４］−［ＰＰ−０９］−［ＰＰ−１９］
【００８３】
これらの通過ルートのうち、▲２▼の［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０５］および▲４▼の［ＰＰ−０２］−［ＰＰ−０５］−［ＰＰ−０４］には冗長なルートが含まれている。しかしながら、このルートが正しいルートか、間違っているルートなのかはこの手順だけから判定することができない。そこで、この冗長なルートを取り除くための経路チェックの手法について説明する。
【００８４】
あるパケットプリンティング装置から追跡対象パケットのハッシュ値と同一のハッシュ値が検索された場合、このパケットプリンティング装置の直近のパケットプリンティング装置に当該パケットの問い合わせが行われることは、上述してきたとおりである。この問い合わせの際に、問い合わせの順序関係の情報、中継情報、監視対象ネットワークとの接続情報（以下これらの情報を「経路関連情報」という。）などから、正しい経路か否かの判定を行う。具体的には、つぎに示す３つの経路チェクを行う。
【００８５】
▲１▼　ＴＴＬ値の比較
パケットプリンティング装置から送信された検索順のＴＴＬ値（ハッシュ値に関連付けられ記憶されている）が昇順（等しい場合も含む）に並んでいるか
▲２▼　経路関連情報の存在
あるパケットプリンティング装置からあるパケットプリンティング装置への中継情報が存在するか、あるいは隣接パケットプリンティング装置間のホップ数は幾らか
▲３▼　タイムスタンプの比較
パケットプリンティング装置から送信されたタイムスタンプが検索順に降順に並んでいるか、あるいは前後の時間間隔が空き過ぎていないか
【００８６】
具体例を用いて説明すると、いま、あるパケットプリンティング装置（ＰＰ装置Ａ）を問い合わせ基点位置に位置するパケットプリンティング装置とし、このＰＰ装置Ａから直近のパケットプリンティング装置（ＰＰ装置Ｂ）に対して検索要求の問い合わせを行い、同一のハッシュ値が検索された場合を考える。このとき、上記３つの経路チェックは、つぎのようになる。
【００８７】
▲１▼　ＴＴＬ値の比較処理
ＰＰ装置Ａで検索されたハッシュ値に関連付けされたＴＴＬ値より、ＰＰ装置Ｂで検索されたハッシュ値に関連付けされたＴＴＬ値の方が大きいかまたは等しいか
▲２▼　経路関連情報の確認処理
ＰＰ装置Ａと、このＰＰ装置Ａの直近のＰＰ装置Ｂにおいて、ＰＰ装置Ｂで検索されたハッシュ値に関連付けされた情報にＰＰ装置Ａへの中継情報が載っているか、あるいはＰＰ装置ＡとＰＰ装置Ｂとの間のＨＯＰ数は幾らか
▲３▼　タイムスタンプの比較処理
ＰＰ装置Ａで検索されたハッシュ値に関連付けされたタイムスタンプより、ＰＰ装置Ｂで検索されたハッシュ値に関連付けされたタイムスタンプの方が小さいか、あるいはＰＰ装置ＡのタイムスタンプとＰＰ装置Ｂのタイムスタンプとの時間間隔が所定の基準値以内であるか
【００８８】
これらの経路チェックの▲１▼〜▲３▼をどのように組み合わせてもよい。また、これらの経路チェックは、深さ優先型の探索時、あるいは幅優先型の探索時に併用することで、ルート探索の正確性を向上させることができる。なお、併用するタイミングとしては、全経路の探索終了後、すなわち特定された通過ルートに基づいてチェックを行う手法、あるいは、パケットプリンティング装置ごとの検索においてチェックを行う手法とがあるが、これらのどちらの手法を用いてもよい。また、これらのチェック方法には、幾つかの留意点があり、つぎの点に留意する必要がある。
【００８９】
（ＴＴＬ値比較の留意点）
あるパケットプリンティング装置が接続されるネットワークと、このパケットプリンティング装置の直近に位置するパケットプリンティング装置が接続されるネットワークとの接続がルータではなくＨＵＢ、ブリッジなどを介して接続されているような場合には、ＴＴＬ値が同一の場合があり得る。したがって、パケットプリンティング装置の構成情報の他に、監視対象ネットワークの接続装置に関する情報も保持しておくことが好ましい。もし、接続装置の情報が不明な箇所がある場合には、このＴＴＬ値の比較処理をスキップすることで、対応することができる。
【００９０】
（経路関連情報の確認処理にかかる留意点）
あるパケットプリンティング装置が接続されるネットワークとこのパケットプリンティング装置の直近のパケットプリンティング装置が接続されるネットワークとの接続が隣接している場合（ＨＯＰ数＝１）には有効であるが、離れている場合（ＨＯＰ数≧２）には困難である。この場合も、ＴＴＬ値の比較と同様に、パケットプリンティング装置の構成情報の他に、監視対象ネットワークの接続装置に関する情報も保持しておくことが好ましい。もし、接続装置の情報が不明な箇所がある場合には、この経路関連情報の確認処理をスキップすることで、対応することができる。
【００９１】
（タイムスタンプ比較の留意点）
各パケットプリンティング装置の時刻同期や、直近のパケットプリンティング装置との時間差をあらかじめ計測しておくなどの準備が必要である。なお、パケットプリンティング装置間の時刻同期は、ＮＴＰ（Ｎｅｔｗｏｒｋ　ＴｉｍｅＰｒｏｔｏｃｏｌ）、ＧＰＳクロック等を用いることにより容易に実現することができる。また、時刻同期がとれていれば、パケットプリンティング装置間の時間差の計測も容易に行うことができる。
【００９２】
図６は、経路チェック手法を用いて判定する具体例を示す説明図である。同図において、パケットプリンティング装置ＰＰ−０１〜ＰＰ−０６は、黒丸の点で示されるルータなどの中継装置で接続されたネットワーク上に配置されている。また、この例では、追跡対象パケットが紙面右側のパケットプリンティング装置ＰＰ−０５側から侵入し、このとき、侵入経路上にないパケットプリンティング装置ＰＰ−０４、ＰＰ−０６に同一のハッシュ値が生成されている状況を想定している。以下、同図を用いて、パケットプリンティング装置ごとの問い合わせ時に、上述した経路チェック手法を用いて判定する処理の流れを説明する。なお、これらの経路チェックは、管理マネージャ追跡方式、自律型追跡方式のどちらで実行することもできる。ここでは、管理マネージャ追跡方式で実行されるものとして説明する。すなわち、追跡対象パケットのハッシュ値、ＴＴＬ値、タイムスタンプ、経路関連情報などのパケットの情報が管理マネージャに送信され、管理マネージャ側で経路チェックが実行される。なお、自律型追跡方式では、ＰＰ装置ＡからＰＰ装置Ｂに送信される検索要求にＴＴＬ値、タイムスタンプなどのパケットの情報を含ませればよい。また、この説明で使用する同図の構成では、上記留意点に示したように、パケットプリンティング装置が接続されるネットワーク同士が隣接していないので、経路関連情報の確認処理は行っていない。
【００９３】
図６において、管理マネージャは、ＰＰ−０１に管理マネージャが生成した追跡対象パケットのハッシュ値“０１２３ａｂｃ”を含む検索要求を送信する。このとき、ＰＰ−０１は、管理マネージャから送信された追跡対象パケットのハッシュ値と同一のハッシュ値が記憶されているので、「Ｙｅｓ」の返答結果とともに、ＴＴＬ値（ＴＴＬ＝２４７）、タイムスタンプ（Ｔｉｍｅ＝３６９７４８）を管理マネージャに送信する。つぎに、管理マネージャは、ＰＰ−０１の直近に位置するＰＰ−０２に対して管理マネージャが生成した追跡対象パケットのハッシュ値“０１２３ａｂｃ”を含む検索要求を送信する。同様に、ＰＰ−０２は、管理マネージャから送信された追跡対象パケットのハッシュ値と同一のハッシュ値が記憶されているので、「Ｙｅｓ」の返答結果とともに、ＴＴＬ値（ＴＴＬ＝２５０）、タイムスタンプ（Ｔｉｍｅ＝３６９７３８）を管理マネージャに送信する。
【００９４】
このとき、管理マネージャは、ＰＰ−０１とＰＰ−０２とから送信されたＴＴＬ値同士、タイムスタンプ同士を、上述した基準に基づいてそれぞれ比較する。この例では、ＰＰ−０１とＰＰ−０２の間で、ＴＴＬ値と、タイムスタンプとが所定の基準（例えば、図６に示すような条件、ＴＴＬ：２４７＜２５０、Ｔｉｍｅ：３６９７４８−３６９７３８＜１００）を満足しているため、ＰＰ−０２を経路と判定している。
【００９５】
つぎに、ＰＰ−０２とＰＰ−０３とから送信されたＴＴＬ値同士、タイムスタンプ同士をそれぞれ比較する。なお、以後の説明は、管理マネージャからの検索要求に基づき、追跡対象パケットのハッシュ値と同一のハッシュ値が検索され、管理マネージャに所定のデータが送信されているものとして進める。この場合にも、ＰＰ−０２とＰＰ−０３の間で、ＴＴＬ値と、タイムスタンプとが所定の基準を満足しているため、ＰＰ−０３を経路と判定している。
【００９６】
一方、ＰＰ−０２とＰＰ−０４とから送信されたＴＴＬ値同士、タイムスタンプ同士をそれぞれ比較する。この場合には、ＰＰ−０２とＰＰ−０４の間で、図６に示すように、ＴＴＬ値と、タイムスタンプとが所定の基準を満足していないので、ＰＰ−０４を経路ではないと判定している。
【００９７】
このように、経路ではない位置のパケットプリンティング装置から、追跡対象のパケットと同一のハッシュ値を持つパケットが検索された場合であっても、上述の経路チェック手法を用いることで、正しい経路を得ることができる。また、検索対象を検索の初中期の段階で絞り込むことができるので、迅速かつ効率的な検索を実施することができる。
【００９８】
図７は、図４に示す複数のパケット通過ルートの特定に際し、幅優先型の探索に経路チェック手法を併用した場合のパケット通過ルートの探索手順を示した図表である。以下、図４および図７を用いて、パケット通過ルートを探索する手順について説明する。
【００９９】
（ステップＳ１〜ステップＳ３−ｃ）
ステップＳ１〜ステップＳ３−ｃの処理は、図５で説明した探索手順と同様な探索手順で行われる。このとき、経路と判定された通過ルートでは、上述したような経路チェックを行う。すなわち、▲１▼通過ルート順にＴＴＬ値を比較し、追跡順に昇順になっているか（昇順になっていれば正しいものとする）。▲２▼通過ルートの逆順にルーティングテーブルの情報があるか（記述があれば正しいものとする）。▲３▼パケットの取得時間が所定の基準を満足するか（基準時間内であり、かつ、取得時間が逆転していなければ正しいものとする）。この例では、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］および［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０５］の２つの経路ともに正しい経路としている。
【０１００】
（ステップＳ４−ａ〜ステップＳ４−ｃ）
ステップＳ４−ａ〜ステップＳ４−ｃでは、問い合わせ基点位置を［ＰＰ−０４］とし、問い合わせ先位置である［ＰＰ−０８］、［ＰＰ−０９］、［ＰＰ−０５］のそれぞれに対して検索要求が送信される。ここで、［ＰＰ−０５］については、ハッシュ値の検索では経路と判定されても、上記経路チェックによって正しくない経路と判定されたものとしている。この結果、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０９］だけが通過ルートとして記憶される。
【０１０１】
（ステップＳ４−ｄ〜ステップＳ４−ｆ）
つぎに、問い合わせ基点位置を［ＰＰ−０５］とし、問い合わせ先位置である［ＰＰ−１０］、［ＰＰ−１１］、［ＰＰ−０４］のそれぞれに対して検索要求が送信される。ここで、深さ優先型の検索では、［ＰＰ−０９］を問い合わせ基点位置として選択したが、幅優先型の検索では、深さ方向に検索するよりも同一階層での検索を優先する方式であるため、ステップＳ３−ｂで経路と判定された［ＰＰ−０５］を問い合わせ基点位置として選択している。このとき［ＰＰ−１１］が経路として判定され、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０５］−［ＰＰ−１１］が通過ルートとして記憶される。
【０１０２】
（ステップＳ５−ａ〜ステップＳ５−ｃ）
ステップＳ３−ａ〜ステップＳ３−ｃの検索で経路と判定されたパケットプリンティング装置は［ＰＰ−０４］および［ＰＰ−０５］であり、ステップＳ４−ａ〜ステップＳ４−ｃで［ＰＰ−０４］のルートが探索され、ステップＳ４−ｄ〜ステップＳ４−ｆで［ＰＰ−０５］のルートが探索されているので、つぎの階層での探索が行われる。すなわち、ステップＳ５−ａ〜ステップＳ５−ｃでは、問い合わせ基点位置を［ＰＰ−０９］とし、問い合わせ先位置である［ＰＰ−０８］、［ＰＰ−１８］、［ＰＰ−１９］のそれぞれに対して検索要求が送信される。ここのとき［ＰＰ−１９］が経路として判定され、同時に［ＰＰ−１９］が終端であるため、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０９］−［ＰＰ−１９］が通過ルートとして記憶される。
【０１０３】
（ステップＳ５−ｄ〜ステップＳ５−ｆ）
同様に、ステップＳ５−ｄ〜ステップＳ５−ｆにおいて、ステップＳ４−ｅで確定された［ＰＰ−１１］を問い合わせ基点位置として、問い合わせ先位置である［ＰＰ−１０］、［ＰＰ−２２］、［ＰＰ−２３］のそれぞれに対して検索要求が送信される。このとき、［ＰＰ−２３］が経路として判定され、また［ＰＰ−２３］が終端に位置された装置であるため、終端であると判定され、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０５］−［ＰＰ−１１］−［ＰＰ−２３］が通過ルートとして記憶される。
【０１０４】
このように、幅優先の問い合わせに経路チェック手法を併用した場合に、つぎの２つの通過ルートが探索される。
▲１▼　［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０９］−［ＰＰ−１９］
▲２▼　［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０５］−［ＰＰ−１１］−［ＰＰ−２３］
【０１０５】
図５の深さ優先型の探索手順による探索結果にある、［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０５］および［ＰＰ−０２］−［ＰＰ−０５］−［ＰＰ−０４］の冗長なルートを取り除くことができている。また、図５の総ステップ数が２９ステップ（ステップＳ４−ｆは除く）であるのに対して、図７の総ステップ数は１８ステップ（ステップＳ１〜ステップＳ５−ｆ）であり、経路チェック手法を併用することにより、短いステップでの探索で終了することができる。
【０１０６】
なお、図７は、幅優先型の探索手順に経路チェック手法を併用する例を示したが、深さ優先型の探索手順に経路チェック手法を併用することもできる。この場合も、同図の結果に示したような冗長なルートの除去と、探索ステップ数を削減することができる。
【０１０７】
つぎに、検索要求の問い合わせの終了を判断するために、検索要求を送信するパケットプリンティング装置の終端を判定する手順について説明する。図８は、一般的な終端判定の手法を用いてパケットプリンティング装置の終端を判定した一例を示すパケットプリンティング装置の階層接続図であり、図９は、図８に示す例を用いてパケットプリンティング装置の終端を判定する手順を示した図表である。図８において、通過ルート上にあるパケットプリンティング装置をハッチングで示している。なお、この探索は深さ優先型の探索および幅優先型の探索のどちらで行ってもよい。以下、図８および図９を用いて、パケットプリンティング装置の終端を判定する手順について説明する。
【０１０８】
（ステップＳ１〜ステップＳ４−ｃ）
ステップＳ１〜ステップＳ４−ｃでは、順次パケットプリンティング装置に対して検索要求の問い合わせが行われる。なお、問い合わせの手順は、上述した手順と同様なので説明の詳細を省略する。図９の例では、ステップＳ４−ｂにおいて［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０９］が通過ルートとして記憶される。ただし、この時点では、［ＰＰ−０９］が終端であるかは判らない。
【０１０９】
（ステップＳ５−ａ〜ステップＳ５−ｂ）
ステップＳ５−ａ〜ステップＳ５−ｂでは、問い合わせ基点位置を［ＰＰ−０９］とし、問い合わせ先位置［ＰＰ−１８］および［ＰＰ−１９］に対して検索要求が送信される。これらの［ＰＰ−１８］および［ＰＰ−１９］のどちらも経路ではないと判定されたため、ステップＳ４−ｂで経路と判定された［ＰＰ−０９］を終端のパケットプリンティング装置と判定し、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０９］が通過ルートとして確定する。
【０１１０】
図８および図９で示した例は、言うなれば、問い合わせ先位置のパケットプリンティング装置のすべてが経路ではないと判定した時点で探索を終了し、問い合わせ基点位置にあるパケットプリンティング装置が終端であると判定するものである。しかしながら、課題にも示したように、
▲１▼　パケットプリンティング装置が故障し、返答できない場合
▲２▼　パケットプリンティング装置のパケット取得処理が間に合わず、パケットを取りこぼした場合
▲３▼　パケットプリンティング装置のバッファサイズが小さく、検索対象パケットのハッシュ値がページアウトしてしまった場合
▲４▼　パケットプリンティング装置側の検索に時間がかかる等、管理マネージャの返答待ちがタイムアウトした場合
などのように、パケットプリンティング装置が、追跡パケットの検索要求の問い合わせに正確に回答することができない場合があり、問い合わせ先のパケットプリンティング装置のすべてが経路ではないと判定されたことだけで、通過ルートではないと判定することには危険が伴う。そこで、この通過ルートではないと判定する危険を軽減するための終端判定処理が必要となる。
【０１１１】
この終端判定処理は、終端装置判定数という概念を導入して、終端に位置するパケットプリンティング装置を判定する手法である。すなわち、終端装置判定数をＮ（Ｎは２以上の正の整数）として、順次検索要求が送信されたパケットプリンティング装置のそれぞれが経路であるか否かを順次判定し、連続的にＮ個のパケットプリンティング装置が経路でないと判定された場合に、最初に経路でないと判定されたパケットプリンティング装置への検索要求の問い合わせ基点位置であったパケットプリンティング装置が通過ルートの終端であると判定する処理である。この終端装置判定数が１の場合が、図８および図９で説明した例である。
【０１１２】
図１０は、終端判定の手法（終端装置判定数が２の場合）を用いて通過ルートを確定した一例を示すパケットプリンティング装置の階層接続図であり、図１１は、図１０に示す例を用いて通過ルートを確定する手順を示した図表である。なお、図１０において、通過ルート上にあるパケットプリンティング装置をハッチングで示している。以下、図１０および図１１を用い、探索中のパケットプリンティング装置が終端であるか否かを判定しながら、通過ルートを確定する手順について説明する。
【０１１３】
（ステップＳ１〜ステップＳ３−ｃ）
ステップＳ１〜ステップＳ２−ｂでは、［ＰＰ−０２］が経路と判定され、［ＰＰ−０１］−［ＰＰ−０２］が通過ルートとして記憶される。一方、ステップＳ３−ａ〜ステップＳ３−ｃでは、問い合わせ先位置である［ＰＰ−０４］、［ＰＰ−０５］および［ＰＰ−０３］のすべてが経路ではないと判定されている。終端装置判定数が１の場合には、［ＰＰ−０２］が終端として判定されて探索が終了することは上述したとおりである。
【０１１４】
（ステップＳ４−ａ〜ステップＳ４−ｃ）
ステップＳ４−ａ〜ステップＳ４−ｃでは、［ＰＰ−０２］を問い合わせ基点位置とし、先の検索の問い合わせ先位置の一つである［ＰＰ−０４］を仮通過位置として、［ＰＰ−０８］、［ＰＰ−０９］、［ＰＰ−０５］のそれぞれに対して検索要求が送信される。このとき［ＰＰ−０９］が経路として判定され、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０９］が通過ルートとして記憶される。
【０１１５】
（ステップＳ４−ｄ〜ステップＳ４−ｈ）
一方、ステップＳ４−ｄ〜ステップＳ４−ｆでは、［ＰＰ−０２］を問い合わせ基点位置とし、先の検索の問い合わせ先位置の一つである［ＰＰ−０５］を仮通過位置として、［ＰＰ−１０］、［ＰＰ−１１］、［ＰＰ−０４］のそれぞれに対して検索要求が送信される。また、ステップＳ４−ｇ〜ステップＳ４−ｈでは、［ＰＰ−０２］を問い合わせ基点位置とし、先の検索の問い合わせ先位置の一つである［ＰＰ−０３］を仮通過位置として、［ＰＰ−０６］および［ＰＰ−０７］に対して検索要求が送信される。ここでは、これらのステップのいずれも経路ではないと判定されている。
【０１１６】
（ステップＳ５−ａ〜ステップＳ５−ｃ）
ステップＳ５−ａ〜ステップＳ５−ｃでは、先の探索で経路と判定された［ＰＰ−０９］を問い合わせ基点位置として、［ＰＰ−１８］、［ＰＰ−１９］、［ＰＰ−０８］のそれぞれに対して検索要求が送信される。ここでは、［ＰＰ−１９］が経路と判定され、この［ＰＰ−１９］が終端に位置された装置であるため、終端であると判定され、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０４］−［ＰＰ−０９］−［ＰＰ−１９］が通過ルートとして記憶される。
【０１１７】
図１０および図１１の例において、一般的な終端判定の手法を用いた場合、すなわち、終端装置判定数が１の場合を用いると、ステップＳ３−ａ〜ステップＳ３−ｃの時点で［ＰＰ−０２］が終端として判定される。一方、上述したように、パケットプリンティング装置が、追跡パケットの検索要求の問い合わせに正確に回答することができない場合がある。図１０は、確定された通過ルートにある［ＰＰ−０４］が上記▲１▼〜▲４▼に示したような理由で、検索要求の問い合わせに応答ができなかった場合を示した例である。このような場合でも、通過ルートの可能性がある［ＰＰ−０８］、［ＰＰ−０９］、［ＰＰ−０５］のそれぞれに問い合わせを行うことによって、最終的に、追跡対象パケットの正しい通過ルートを確定することができる。
【０１１８】
図１２は、終端判定の手法（終端装置判定数が２の場合）を用いてパケットプリンティング装置の終端を判定した一例を示すパケットプリンティング装置の階層接続図であり、図１３は、図１２に示す例を用いてパケットプリンティング装置の終端を判定する手順を示した図表である。図１２において、通過ルート上にあるパケットプリンティング装置をハッチングで示している。なお、この探索は深さ優先型の探索および幅優先型の探索のどちらで行ってもよい。また、上述した経路チェック手法と併用して実施することもできる。以下、図１２および図１３を用いて、終端装置判定数が２の場合にパケットプリンティング装置の終端を判定する手順について説明する。
【０１１９】
（ステップＳ１〜ステップＳ３−ｃ）
ステップＳ１〜ステップＳ３−ｃでは、順次パケットプリンティング装置に対して検索要求の問い合わせが行われる。なお、問い合わせの手順は、上述した手順と同様なので説明の詳細を省略する。図１３の例では、ステップＳ３−ｂにおいて［ＰＰ−０５］が経路として判定され、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０５］が通過ルートとして記憶される。ただし、この時点では、［ＰＰ−０５］が終端であるかは判らないのは、図９の例と同様である。
【０１２０】
（ステップＳ４−ａ〜ステップＳ４−ｃ）
ステップＳ４−ａ〜ステップＳ４−ｃでは、問い合わせ基点位置を［ＰＰ−０５］とし、問い合わせ先位置［ＰＰ−１０］、［ＰＰ−１１］、［ＰＰ−０４］のそれぞれに対して検索要求が送信される。ここでは、これらの［ＰＰ−１０］、［ＰＰ−１１］、［ＰＰ−０４］のすべてが経路ではないと判定されている。
【０１２１】
（ステップＳ５−ａ〜ステップＳ５−ｆ）
ステップＳ５−ａ〜ステップＳ５−ｃでは、［ＰＰ−０５］を問い合わせ基点位置とし、先の検索の問い合わせ先位置の一つである［ＰＰ−１０］を仮通過位置として、［ＰＰ−２０］、［ＰＰ−２１］、［ＰＰ−１１］のそれぞれに対して検索要求が送信される。ここでは、これらのステップのいずれも経路ではないと判定されている。また、ステップＳ５−ｄ〜ステップＳ５−ｆでは、［ＰＰ−０５］を問い合わせ基点位置とし、先の検索の問い合わせ先位置の一つである［ＰＰ−１１］を仮通過位置として、［ＰＰ−２２］、［ＰＰ−２３］、［ＰＰ−１０］のそれぞれに対して検索要求が送信される。ここでも、これらのステップのいずれも経路ではないと判定されている。
【０１２２】
このように、これらの［ＰＰ−１０］および［ＰＰ−１１］を仮通過位置とする検索要求のすべてが経路ではないと判定されたため、すなわち、連続的に２個（Ｎ＝２）のパケットプリンティング装置が経路ではないと判定されたため、ステップＳ３−ｂで経路と判定された［ＰＰ−０５］を終端のパケットプリンティング装置と判定し、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０５］が通過ルートとして確定する。
【０１２３】
この例のように、［ＰＰ−０１］−［ＰＰ−０２］−［ＰＰ−０５］を通過ルートとして判定する場合は、［ＰＰ−１０］および［ＰＰ−２０］が同時に追跡パケットの検索要求の問い合わせに答えられない場合である。［ＰＰ−１０］および［ＰＰ−２０］が追跡パケットの検索要求の問い合わせに答えられない確率をそれぞれ０．１とすれば、［ＰＰ−１０］および［ＰＰ−２０］が同時に追跡パケットの検索要求の問い合わせに答えられない確率は０．０１と非常に低い。このことから、Ｎ＝２とすることによって、通過ルートの判定を誤る確率を小さくすることができる。
【０１２４】
図１２および図１３では、Ｎ＝２の場合について示したが、Ｎ＝３以上の場合にも同様な手順でパケットプリンティング装置の終端を判定することができる。この場合には、通過ルートの判定を誤る確率をさらに小さくすることができる。
【０１２５】
図１４は、複雑な経路を持つネットワークにおいて特定されたパケット通過ルートの一例をパケットプリンティング装置の階層接続図に示した図であり、図１５は、図１４に示すパケット通過ルートを特定するための探索手順を示した図表である。図１４において、通過ルート上にあるパケットプリンティング装置をハッチングで示している。なお、この探索は、幅優先型の探索で行うこともできる。
【０１２６】
図１４の階層接続図と図１の階層接続図とを比較すれば明らかなように、図１４に示すパケットプリンティング装置が接続される監視対象ネットワークはかなり複雑な構成をしている。しかしながら、基本的な探索手順は、図１〜図１３を用いて既に説明した探索手順を組み合わせて行えばよく、問い合わせ基点位置を基準として問い合わせ先位置のすべてに検索要求を出力する手順を繰り返し行い、終端装置判定数を用いた終端判定を行うことにより、通過ルートを確定することができる。なお、終端判定の条件として、終端装置判定数を２とした判定を行うものとする。また、図７に示すような探索中の経路チェックは行わないものとする。以下、図１４および図１５を用いて、この複雑な経路を持つネットワークにおけるパケット通過ルートを特定するための探索手順について説明する。
【０１２７】
（ステップＳ１〜ステップＳ３−ｃ）
ステップＳ１〜ステップＳ２−ｂでは、ステップＳ２−ｂにおいて［ＰＰ−０３］が経路として判定され、［ＰＰ−０１］−［ＰＰ−０３］が通過ルートとして記憶される。ステップＳ３−ａ〜ステップＳ３−ｃでは、問い合わせ先位置のすべてが、経路でないと判定される。
【０１２８】
（ステップＳ４−ａ〜ステップＳ４−ｉ）
ステップＳ４−ａ〜ステップＳ４−ｅでは、問い合わせ基点位置を［ＰＰ−０３］、仮通過位置を［ＰＰ−０６］として、［ＰＰ−３２］、［ＰＰ−１２］、［ＰＰ−１３］、［ＰＰ−３５］、［ＰＰ−０７］のそれぞれに対して検索要求が送信される。このとき、［ＰＰ−１３］および［ＰＰ−３５］が経路として判定され、［ＰＰ−０１］−［ＰＰ−０３］−［ＰＰ−０６］−［ＰＰ−１３］および［ＰＰ−０１］−［ＰＰ−０３］−［ＰＰ−０６］−［ＰＰ−３５］が通過ルートとして記憶される。同様な手順により、ステップＳ４−ｆ〜ステップＳ４−ｉでは、［ＰＰ−０１］−［ＰＰ−０３］−［ＰＰ−０７］−［ＰＰ−３５］が通過ルートとして記憶される。
【０１２９】
（ステップＳ５−ａ〜ステップＳ５−ｅ）
ステップＳ５−ａ〜ステップＳ５−ｅでは、ステップＳ４−ｃで経路と判定された［ＰＰ−１３］を問い合わせ基点位置として検索要求が送信され、［ＰＰ−２７］が経路として判定され、同時に［ＰＰ−２７］が終端に位置された装置であるため、終端であると判定される。このとき、［ＰＰ−０１］−［ＰＰ−０３］−［ＰＰ−０６］−［ＰＰ−１３］−［ＰＰ−２７］が通過ルートとして記憶される。
【０１３０】
（ステップＳ６−ａ〜ステップＳ７−ｆ）
ステップＳ６−ａ〜ステップＳ６−ｆでは、ステップＳ４−ｄで経路と判定された［ＰＰ−３５］を問い合わせ基点位置として検索要求が送信され、［ＰＰ−１３］が経路として判定され、ステップＳ７−ａ〜ステップＳ７−ｆでは、ステップＳ７−ｄで［ＰＰ−２７］が経路と判定され、同時に［ＰＰ−２７］が終端に位置された装置であるため、終端であると判定される。このとき、［ＰＰ−０１］−［ＰＰ−０３］−［ＰＰ−０６］−［ＰＰ−３５］−［ＰＰ−１３］−［ＰＰ−２７］が通過ルートとして記憶される。
【０１３１】
（ステップＳ５−ｆ〜ステップＳ６−ｍ）
ステップＳ５−ｆ〜ステップＳ５−ｋでは、ステップＳ４−ｆで経路と判定された［ＰＰ−３５］を問い合わせ基点位置として検索要求が送信され、［ＰＰ−１３］が経路として判定され、ステップＳ６−ｇ〜ステップＳ６−ｍでは、ステップＳ６−ｊで［ＰＰ−２６］が経路と判定され、同時に［ＰＰ−２６］が終端に位置された装置であるため、終端であると判定される。このとき、［ＰＰ−０１］−［ＰＰ−０３］−［ＰＰ−０７］−［ＰＰ−３５］−［ＰＰ−１３］−［ＰＰ−２７］が通過ルートとして記憶される。
【０１３２】
これらの探索によって、つぎの３つの通過ルートが探索されている。
▲１▼　［ＰＰ−０１］−［ＰＰ−０３］−［ＰＰ−０６］−［ＰＰ−１３］−［ＰＰ−２７］
▲２▼　［ＰＰ−０１］−［ＰＰ−０３］−［ＰＰ−０６］−［ＰＰ−３５］−［ＰＰ−１３］−［ＰＰ−２７］
▲３▼　［ＰＰ−０１］−［ＰＰ−０３］−［ＰＰ−０７］−［ＰＰ−３５］−［ＰＰ−１３］−［ＰＰ−２７］
この確定ルートに対しては、図６に示した、ＴＴＬ値の比較処理、経路関連情報の確認処理、タイムスタンプの比較処理を用いて冗長なルートを取り除くことができる。
【０１３３】
以上説明したように、この実施の形態１によれば、あるパケットプリンティング装置をＰＰ装置Ａとして、このＰＰ装置Ａを問い合わせ基点位置として検索要求が送信された他のパケットプリンティング装置をＰＰ装置Ｂとするとき、管理マネージャまたはＰＰ装置Ｂは、ＰＰ装置Ａで検索された追跡対象パケットのパケット特定情報に関連付けられたＴＴＬ値と、このＰＰ装置Ａを問い合わせ基点位置として検索要求が送信されたＰＰ装置Ｂで検索された追跡対象パケットのパケット特定情報に関連付けられたＴＴＬ値とを比較して検索順に昇順になっているか否かを判定し、ＰＰ装置Ｂで検索された追跡対象パケットのパケット特定情報に関連付けられた経路関連情報に、ＰＰ装置Ａが存在するか否かを判定し、これらのＴＴＬ値の判定処理および経路関連情報の検索処理の少なくとも一つを用いて、追跡対象パケットがパケットプリンティング装置を通過したか否かを判定するので、検索処理の時間を増加させることなく、パケット通過ルート探索の正確性を向上させることができる。また、追跡対象パケットの探索にかかる探索ステップ数を削減することができる。
【０１３４】
また、この実施の形態１によれば、管理マネージャまたはＰＰ装置Ｂは、ＰＰ装置Ａで検索された追跡対象パケットのパケット特定情報に関連付けられた通過時刻情報と、ＰＰ装置Ｂで検索された追跡対象パケットのパケット特定情報に関連付けられた通過時刻情報とを比較して検索順に降順になっているか否かの判定と、前者の通過時刻情報と後者の通過時刻情報との時間差が所定の基準値以内であるか否かの判定とを前者および後者の少なくとも一つを用いて判定するので、検索処理の時間を増加させることなく、ルート探索の正確性を向上させることができる。また、追跡対象パケットの探索にかかる探索ステップ数を削減することができる。なお、この処理はＴＴＬ値の判定処理および経路関連情報の検索処理と任意に組み合わせることができる。
【０１３５】
また、この実施の形態１によれば、管理マネージャは、通過ルート作成処理によって追跡対象パケットが通過したルートである通過ルートが作成されたとき、ＴＴＬ値の判定処理および経路関連情報の検索処理の少なくとも一つを用いて通過ルートが正しいルートか否かを判定するので、検索処理の時間を増加させることなく、ルート探索の正確性を向上させることができる。また、通過ルートと判定されたルートの中から冗長なルートを除去することができる。
【０１３６】
また、この実施の形態１によれば、管理マネージャは、終端装置判定数をＮ（Ｎは２以上の正の整数）として、順次検索要求が送信されたパケットプリンティング装置のそれぞれが経路であるか否かを順次判定し、連続的にＮ個のパケットプリンティング装置が経路でないと判定された場合に、最初に経路でないと判定されたパケットプリンティング装置への検索要求の問い合わせ基点位置であったパケットプリンティング装置が通過ルートの終端であると判定するので、検索処理の時間を増加させることなく、ルート探索の正確性を向上させることができる。また、通過ルートの判定を誤る確率を小さくすることができる。
【０１３７】
また、この実施の形態１によれば、侵入検知装置の直近に位置するパケットプリンティング装置にのみ管理マネージャから検索要求が送信され、この検索要求に対応する追跡対象パケットが検索結果として得られた場合に、この追跡対象パケットが通過したパケットプリンティング装置から、この追跡対象パケットが通過したパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して検索要求が送信されるので、検索処理の時間を増加させることなく、ルート探索の正確性を向上させることができる。
【０１３８】
また、この実施の形態１によれば、侵入検知装置の直近に位置するパケットプリンティング装置に管理マネージャから検索要求が送信され、この検索要求に対応する追跡対象パケットが検索結果として得られた場合に、管理マネージャから追跡対象パケットが通過したパケットプリンティング装置の直近に位置するパケットプリンティング装置に対して検索要求を送信するので、検索処理の時間を増加させることなく、ルート探索の正確性を向上させることができる。
【０１３９】
また、この実施の形態１によれば、管理マネージャは、追跡対象パケットが通過した経路であると判定されたパケットプリンティング装置が複数ある場合に、この通過経路であると判定されたパケットプリンティング装置を基点とした検索要求の問い合わせがすべて終了するまで、この検索要求の問い合わせを優先して行う幅優先型の問い合わせに基づく検索を行うので、検索処理の時間を増加させることなく、ルート探索の正確性を向上させることができる。
【０１４０】
また、この実施の形態１によれば、管理マネージャは、追跡対象パケットが通過した経路であると判定されたパケットプリンティング装置が複数ある場合に、追跡対象パケットの通過ルートが確定するか、経路ではないと判定するまで深さ方向の検索を優先して行う深さ優先型の問い合わせに基づく検索を行うので、検索処理の時間を増加させることなく、ルート探索の正確性を向上させることができる。
【０１４１】
また、図１〜図１５に示した処理手順で、管理マネージャが行う処理は、図２６に示す追跡要求部１２５、パケットプリンティング部１２４、通過ルート作成部１２７に実装することができる。すなわち、検索要求の送信処理、経路チェック処理は追跡要求部１２５に、通過ルートの作成処理は通過ルート作成部１２７に、追跡対象パケットの特定情報の生成処理はパケットプリンティング部１２４に、それぞれ実装することができる。
【０１４２】
同様に、図１〜図１５に示した処理手順で、パケットプリンティング装置が行う処理は、図２５に示す、パケットプリンティング部１１３、キャッシュ部１１５、追跡エージェント部１１６に実装することができる。すなわち、検索要求の送信処理、検索処理、経路チェック処理、検索結果送信処理は追跡エージェント部１１６に、通過パケット生成記憶処理はパケットプリンティング部１１３およびキャッシュ部１１５に、それぞれ実装することができる。
【０１４３】
（実施の形態２）
図１６は、本発明にかかる実施の形態２の構成を示すブロック図である。同図において、図２４の各部に対応する部分には同一の符号を付ける。同図に示したパケット追跡システムにおいては、図２４に示したパケットプリンティング装置１０１（１０１ａ、１０１ｂ、１０１ｃ）および管理マネージャ１０２に代えて、パケットプリンティング装置２００（２００ａ、２００ｂ、２００ｃ、２００ｄ）および管理マネージャ３００が設けられている。
【０１４４】
また、図１６においては、ルータ４００〜４０２、コンピュータ装置５００〜５０４が設けられている。ルータ４００は、ネットワークＡとネットワークＢとの間に介挿されており、パケットをルーティングする機能を備えている。ルータ４０１は、ネットワークＡとネットワークＣとの間に介挿されており、パケットをルーティングする機能を備えている。ルータ４０２は、インターネットとネットワークＡとの間に介挿されており、パケットをルーティングする機能を備えている。
【０１４５】
コンピュータ装置５００〜５０４のそれぞれは、他のコンピュータ装置とパケット通信可能な装置である。コンピュータ装置５００〜５０２のそれぞれは、ネットワークＡ上に存在している。コンピュータ装置５０３は、ネットワークＢ上に存在している。また、コンピュータ装置５０４は、ネットワークＣ上に存在している。
【０１４６】
また、上述したルータ４００〜４０２、コンピュータ装置５００〜５０４のそれぞれには、ＩＰアドレスおよびＭＡＣ（Ｍｅｄｉａ　Ａｃｃｅｓｓ　Ｃｏｎｔｒｏｌ）アドレスが付与されている。ＩＰアドレスは、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ　Ｃｏｎｔｒｏｌ　Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ　Ｐｒｏｔｏｃｏｌ）ネットワーク上でネットワーク装置（コンピュータやルータ等）を識別するための３２ビットのアドレスである。このＩＰアドレスは、悪意の第三者により詐称可能である。
【０１４７】
一方、ＭＡＣアドレスは、ネットワークに接続された装置（コンピュータやルータ等）を識別するために設定されるハードウェアアドレスであり、世界中で１つしかないユニークなアドレスである。例えば、Ｅｔｈｅｒｎｅｔ（登録商標）では、当該装置に設けられたネットワークインタフェースカードに対して４８ビットの識別符号が付けられており、Ｅｔｈｅｒｎｅｔ（登録商標）アドレスと呼ばれている。４８ビットにおいて、前半２４ビットがＩＥＥＥ（Ｉｎｓｔｉｔｕｔｅ　ｏｆ　Ｅｌｅｃｔｒｉｃａｌ　ａｎｄ　Ｅｌｅｃｔｒｏｎｉｃ　Ｅｎｇｉｎｅｅｒｓ）で管理されたベンダ固有の識別符号とされ、後半２４ビットが各ネットワークインタフェースカードの連番とされる。
【０１４８】
ここで、ＭＡＣアドレスは、ローカルなネットワークＡ、Ｂ、Ｃ内（ルータ間）のそれぞれで有効とされ、後述するように、ルータを通過する毎に変化する。これに対して、ＩＰアドレスは、全ネットワーク（ネットワークＡ、Ｂ、Ｃ）を通じて有効である。
【０１４９】
ルータ４００には、ネットワークＡとの接続用としてＩＰアドレスとしてＩＰ＿Ｂ１が、ＭＡＣアドレスとしてＭＡＣ＿Ｂ１が付与されている。ルータ４０１には、同様にして、ネットワークＡとの接続用としてＩＰアドレスとしてＩＰ＿Ｃ１が、ＭＡＣアドレスとしてＭＡＣ＿Ｃ１が付与されている。ルータ４０２にも同様にして、ＩＰアドレスおよびＭＡＣアドレス（図示略）が付与されている。コンピュータ装置５００には、ＩＰアドレスとしてＩＰ＿Ａ１が、ＭＡＣアドレスとしてＭＡＣ＿Ａ１が付与されている。コンピュータ装置５０１には、ＩＰアドレスとしてＩＰ＿Ａ２が、ＭＡＣアドレスとしてＭＡＣ＿Ａ２が付与されている。コンピュータ装置５０２には、ＩＰアドレスとしてＩＰ＿Ａ３が、ＭＡＣアドレスとしてＭＡＣ＿Ａ３が付与されている。同様にして、コンピュータ装置５０３には、ＩＰアドレスとしてＩＰ＿Ｂ２が、ＭＡＣアドレスとしてＭＡＣ＿Ｂ２が付与されている。コンピュータ装置５０４には、ＩＰアドレスとしてＩＰ＿Ｃ２が、ＭＡＣアドレスとしてＭＡＣ＿Ｃ２が付与されている。
【０１５０】
パケット６００は、例えば、送出元のコンピュータ装置５０３で生成され、送出先のコンピュータ装置５０４へ向けて送出されたものである。このパケット６００は、データ部６００ａおよびヘッダ部６００ｂから構成されている。ヘッダ部６００ｂには、送出元ＩＰアドレス（＝ＩＰ＿Ｂ２）、送出先ＩＰアドレス（＝ＩＰ＿Ｃ２）、送出元ＭＡＣアドレス（＝ＭＡＣ＿Ｂ２）および送出先ＭＡＣアドレス（＝ＭＡＣ＿Ｂ１）や、当該パケットの寿命を示すＴＴＬ（図示略）、当該パケットの通過時刻情報を示すタイムスタンプ（図示略）が含まれている。
【０１５１】
送出元ＩＰアドレスは、当該パケットの送出元の装置に付与されたＩＰアドレスであり、この場合、コンピュータ装置５０３に付与されたＩＰアドレス（＝ＩＰ＿Ｂ２）である。送出先ＩＰアドレスは、当該パケットの送出先の装置に付与されたＩＰアドレスであり、この場合、コンピュータ装置５０４に付与されたＩＰアドレス（＝ＩＰ＿Ｃ２）である。
【０１５２】
送出元ＭＡＣアドレスは、ローカルなネットワーク（この場合、ネットワークＢ）における当該パケットの送出元の装置に付与されたＭＡＣアドレスであり、この場合、コンピュータ装置５０３に付与されたＭＡＣアドレス（＝ＭＡＣ＿Ｂ２）である。送出先ＭＡＣアドレスは、ローカルなネットワーク（この場合、ネットワークＢ）におけるパケットの送出先の装置に付与されたＭＡＣアドレスであり、この場合、ルータ４００に付与されたＭＡＣアドレス（＝ＭＡＣ＿Ｂ１）である。
【０１５３】
上記ネットワークにおいては、パケットがルータを通過する際に、送出元ＭＡＣアドレスおよび送出先ＭＡＣアドレスが変更される。具体的には、パケット６００がルータ４００を通過する際は、ヘッダ部６００ｂがヘッダ部６０１ｂとされたパケット６０１が生成される。このパケット６０１のヘッダ部６０１ｂにおいては、送出元ＭＡＣアドレスがＭＡＣ＿Ｂ２（コンピュータ装置５０３のＭＡＣアドレス）からＭＡＣ＿Ｂ１（ルータ４００のＭＡＣアドレス）に変更されている。さらに同ヘッダ部６０１ｂにおいては、送出先ＭＡＣアドレスがＭＡＣ＿Ｂ１（ルータ４００のＭＡＣアドレス）からＭＡＣ＿Ｃ１（ルータ４０１のＭＡＣアドレス）に変更されている。
【０１５４】
そして、パケット６０１がルータ４０１を通過する際は、ヘッダ部６０１ｂがヘッダ部６０２ｂとされたパケット６０２が生成される。このパケット６０２のヘッダ部６０２ｂにおいては、送出元ＭＡＣアドレスがＭＡＣ＿Ｂ１（ルータ４００のＭＡＣアドレス）からＭＡＣ＿Ｃ１（ルータ４０１のＭＡＣアドレス）に変更されている。さらに、ヘッダ部６０２ｂにおいては、送出先ＭＡＣアドレスがＭＡＣ＿Ｃ１（ルータ４０１のＭＡＣアドレス）からＭＡＣ＿Ｃ２（コンピュータ装置５０４のＭＡＣアドレス）に変更されている。
【０１５５】
パケットプリンティング装置２００（２００ａ、２００ｂ、２００ｃ、２００ｄ）は、タッピングなどの手法を用いて、前述したステルス接続方式によりローカルなネットワークＡ、Ｂ、Ｃに接続されている。
【０１５６】
一方、パケットプリンティング装置２００ａ、２００ｂ、２００ｃ、２００ｄは、監視対象ネットワークとは独立に存在する管理用ネットワークにも前述したＩＰ接続方式により接続されている。
【０１５７】
これらのパケットプリンティング装置２００ａ、２００ｂ、２００ｃ、２００ｄは、それぞれが接続されているネットワーク間の接続リンクを監視の対象とし、それぞれの監視対象ネットワークを通過するパケットのコピーを取り込み、コピーしたパケットを一意に特定するための前述したハッシュ値（パケット特定情報）をデータ部から生成するとともに、このハッシュ値を記憶する。
【０１５８】
図１７は、パケットプリンティング装置２００（２００ａ、２００ｂ、２００ｃ、２００ｄ）の構成を示すブロック図である。同図において、タッピング装置２０１は、接続する監視対象ネットワークを通過するパケットのコピーを作成する。ＭＡＣアドレス／ＩＰアドレス対応テーブル記憶部２０２は、図１８に示したＭＡＣアドレス／ＩＰアドレス対応テーブル２０２ａを記憶している。このＭＡＣアドレス／ＩＰアドレス対応テーブル２０２ａは、ネットワークＡ、Ｂ、Ｃに接続された装置（コンピュータ装置、ルータ等）に付与されているＭＡＣアドレスとＩＰアドレスとの対応関係を表すテーブルである。補足には、当該装置がルータである場合にその旨が記述される。
【０１５９】
例えば、ＭＡＣアドレス（＝ＭＡＣ＿Ｃ１）、ＩＰアドレス（＝ＩＰ＿Ｃ１）および補足（＝ルータ）は、図１６に示したルータ４０１に対応している。また、ＭＡＣアドレス（＝ＭＡＣ＿Ａ１）、ＩＰアドレス（＝ＩＰ＿Ａ１）および補足（＝無し）は、ネットワークＡに接続されたコンピュータ装置５００に対応している。以下同様にして、ＭＡＣアドレス（＝ＭＡＣ＿Ｂ１）、ＩＰアドレス（＝ＩＰ＿Ｂ１）および補足（＝ルータ）は、ルータ４００に対応している。
【０１６０】
図１７に戻り、ＭＡＣアドレスチェック部２０３は、タッピング装置２０１がコピーしたパケットに含まれる送出元ＭＡＣアドレスを取得し、この送出元ＭＡＣアドレスをキーとして、ＭＡＣアドレス／ＩＰアドレス対応テーブル記憶部２０２に記憶されているＭＡＣアドレス／ＩＰアドレス対応テーブル２０２ａ（図１８参照）を参照し、該当するＭＡＣアドレスに対応する補足にルータが記述されているか否かをチェックする。
【０１６１】
ＭＡＣアドレスチェック部２０３は、補足にルータが記述されている場合、ルータフラグ（ＭＡＣアドレス判定値）を１（送出元ＭＡＣアドレスがルータに対応しているという意味）として、キャッシュ部２０７へ渡す。ここで、ルータフラグが１の場合、当該パケットは、ルータを介して監視対象ネットワークを通過しただけの「通過パケット」と認識される。
【０１６２】
一方、補足が無しである場合、ＭＡＣアドレスチェック部２０３は、ルータフラグ（ＭＡＣアドレス判定値）を０（送出元ＭＡＣアドレスがルータに対応していないという意味）として、キャッシュ部２０７へ渡す。ここで、ルータフラグが０の場合、当該パケットは、監視対象ネットワークに接続されているコンピュータ装置で生成された「生成パケット」と認識される。このように実施の形態２では、ネットワーク上のパケットが「通過パケット」、「生成パケット」という二種類に分類される。
【０１６３】
プリンティング制御部２０４は、あらかじめ、ハッシュ値を生成する方式（ハッシュ関数）を、パケットプリンティング部２０５に指示しておく。パケットプリンティング部２０５は、プリンティング制御部２０４に指示された方式（ハッシュ関数）で、タッピング装置２０１がコピーしたパケット（データ部）のハッシュ値を生成する。また、パケットプリンティング部２０５は、当該パケットからＴＴＬ、タイムスタンプの情報を取得し、これらの情報とハッシュ値をキャッシュ部２０７に渡す。
【０１６４】
キャッシュ部２０７は、図１９に示したハッシュ値テーブル２０７ａを記憶すしている。このハッシュ値テーブル２０７ａには、パケット毎にハッシュ値、ＴＴＬ、タイムスタンプおよびルータフラグ（ＭＡＣアドレス判定値）が記憶される。ハッシュ値、ＴＴＬおよびタイムスタンプは、パケットプリンティング部２０５から渡されたものである。また、ルータフラグ（ＭＡＣアドレス判定値）は、ＭＡＣアドレスチェック部２０３から渡されたものである。
【０１６５】
キャッシュ制御部２０６は、キャッシュ部２０７のハッシュ値テーブル２０７ａに記憶されているハッシュ値の量を認識する。ここで、ハッシュ値テーブル２０７ａに記憶されているハッシュ値が一定量以上であった場合、キャッシュ制御部２０６は、ハッシュ値テーブル２０７ａに記憶されている最も古いハッシュ値を含む１レコードを破棄する。ハッシュ値テーブル２０７ａに記憶されているハッシュ値が一定量以下であった場合、キャッシュ制御部２０６は、ハッシュ値テーブル２０７ａに記憶されている情報の最後尾に新しいハッシュ値（ＴＴＬ、タイムスタンプ、ルータフラグも含む）を追加して記憶する。このように、キャッシュ制御部２０６は、ハッシュ値テーブル２０７ａに記憶されているハッシュ値が常に一定量以下になるよう制御する。
【０１６６】
追跡エージェント部２０８は、管理用ネットワークと接続され、管理マネージャ３００からの検索要求を受け付け、ハッシュ値テーブル２０７ａ（図１９参照）の検索結果を検索応答として管理マネージャ３００へ返す機能を備えている。
【０１６７】
図１６に戻り、管理マネージャ３００は、管理用ネットワークに接続され、パケットプリンティング装置２００ａ、２００ｂ、２００ｃ、２００ｄと管理用ネットワークを介して通信する装置である。
【０１６８】
図２０は、管理マネージャ３００の機能構成を示すブロック図である。同図において、警報受信部３０１は、ＩＤＳ１０３から不正アクセスパケットに対する警報を受信し、パケット受信部３０２は、ＩＤＳ１０３から不正アクセスパケットを受信する。プリンティング制御部３０３は、あらかじめ、ハッシュ値を生成する方式（ハッシュ関数）を、パケットプリンティング部３０４に指示しておく。なお、パケットプリンティング装置２００のプリンティング制御部２０４で指定される方式と、管理マネージャ３００のプリンティング制御部３０３で指定される方式は常に同じ方式である。
【０１６９】
パケットプリンティング部３０４は、プリンティング制御部３０３から指示された方式（ハッシュ関数）で、パケット受信部３０２から送信されたパケット（データ部）のハッシュ値を生成する。追跡要求部３０５は、パケットプリンティング部３０４で生成されたハッシュ値を含む検索要求をパケットプリンティング装置２００ａ、２００ｂ、２００ｃ、２００ｄに送信するとともに、パケットプリンティング装置２００ａ、２００ｂ、２００ｃ、２００ｄからの検索結果（検索応答）を受信する。これらパケットプリンティング装置２００ａ、２００ｂ、２００ｃ、２００ｄから送信された検索結果と、監視対象ネットワークおよび管理用ネットワークの構成を記憶する構成情報ＤＢ３０６とに基づいて、通過ルート作成部３０７が、追跡対象パケットの通過経路を作成する。
【０１７０】
このようにして、通過ルート作成部３０７が作成した追跡対象パケットの通過ルートの情報がシステム管理者等に通知される。システム管理者等は、この通過経路の情報に基づき、追跡対象パケットがどこから侵入してきたのかを判断することができ、不正アクセスのパケットに対する対策を打つことができる。
【０１７１】
つぎに、図１６および図１７に示したパケットプリンティング装置２００（２００ａ、２００ｂ、２００ｃ、２００ｄ）におけるパケット取得処理（定常処理）について、図２１に示したフローチャートを参照しつつ説明する。なお、以下に説明するパケット取得処理（定常処理）は、パケットプリンティング装置２００ａ、２００ｂ、２００ｃ、２００ｄのそれぞれで独立的に実行される。
【０１７２】
図２１に示したステップＳＡ１では、ＭＡＣアドレスチェック部２０３は、タッピング装置２０１により監視対象ネットワークを通過するパケットがコピーされたか否かを判断し、この場合、判断結果を「Ｎｏ」として、同判断を繰り返す。
【０１７３】
そして、監視対象ネットワークをパケットが通過すると、タッピング装置２０１により当該パケットがコピーされ、ＭＡＣアドレスチェック部２０３に渡される。これにより、ＭＡＣアドレスチェック部２０３は、ステップＳＡ１の判断結果を「Ｙｅｓ」とする。
【０１７４】
ステップＳＡ２では、ＭＡＣアドレスチェック部２０３は、タッピング装置２０１から渡されたパケット（ヘッダ部）から送出元ＭＡＣアドレスを取得する。ステップＳＡ３では、ＭＡＣアドレスチェック部２０３は、上記送出元ＭＡＣアドレスをキーとして、ＭＡＣアドレス／ＩＰアドレス対応テーブル記憶部２０２に記憶されているＭＡＣアドレス／ＩＰアドレス対応テーブル２０２ａ（図１８参照）を参照し、該当するＭＡＣアドレスに対応する補足にルータが記述されているか否かをチェックする。
【０１７５】
ここで、補足にルータが記述されている場合、ＭＡＣアドレスチェック部２０３は、ルータフラグ（ＭＡＣアドレス判定値）を１（送出元ＭＡＣアドレスがルータに対応しているという意味）として、キャッシュ部２０７へ渡す。一方、補足が無しである場合、ＭＡＣアドレスチェック部２０３は、ルータフラグ（ＭＡＣアドレス判定値）を０（送出元ＭＡＣアドレスがルータに対応していないという意味）として、キャッシュ部２０７へ渡す。
【０１７６】
ステップＳＡ４では、ＭＡＣアドレスチェック部２０３は、当該パケットをパケットプリンティング部２０５へ渡す。ステップＳＡ５では、パケットプリンティング部２０５は、プリンティング制御部２０４により指示された方式（ハッシュ関数）で当該パケットのハッシュ値を算出する。ステップＳＡ６では、パケットプリンティング部２０５は、上記ハッシュ値、パケット（ヘッダ部）に含まれるＴＴＬおよびタイムスタンプをキャッシュ部２０７へ渡す。
【０１７７】
ステップＳＡ７では、キャッシュ制御部２０６は、キャッシュ部２０７のハッシュ値テーブル２０７ａに記憶されているハッシュ値が一定量以上であるか否かを判断し、この場合、判断結果を「Ｎｏ」とする。ステップＳＡ８では、キャッシュ制御部２０６は、ハッシュ値テーブル２０７ａの最後尾に新しいハッシュ値、ＴＴＬ、タイムスタンプおよびルータフラグを追加して記憶する。
【０１７８】
一方、ステップＳＡ７の判断結果が「Ｙｅｓ」である場合、ステップＳＡ９では、キャッシュ制御部２０６は、ハッシュ値テーブル２０７ａに記憶されている最も古いハッシュ値を含む１レコードを破棄する。ステップＳＡ８では、キャッシュ制御部２０６は、ハッシュ値テーブル２０７ａの最後尾に新しいハッシュ値、ＴＴＬ、タイムスタンプおよびルータフラグを追加して記憶する。
【０１７９】
つぎに、実施の形態２の動作について図２２に示したフローチャートおよび図２３を参照しつつ説明する。図２３においては、不正アクセスの攻撃元がネットワークＢ上のコンピュータ装置５０３であり、攻撃対象がネットワークＣ上のコンピュータ装置５０４である。
【０１８０】
不正アクセスパケット６００’は、ネットワークＢ上のコンピュータ装置５０３（攻撃元）で生成され、攻撃対象のコンピュータ装置５０４へ向けて送出されたものである。この不正アクセスパケット６００’は、データ部６００ａ’およびヘッダ部６００ｂ’から構成されている。ヘッダ部６００ｂ’には、送出元ＩＰアドレス（＝ＩＰ＿Ａ１）、送出先ＩＰアドレス（＝ＩＰ＿Ｃ２）、送出元ＭＡＣアドレス（＝ＭＡＣ＿Ｂ２）および送出先ＭＡＣアドレス（＝ＭＡＣ＿Ｂ１）や、当該パケットの寿命を示すＴＴＬ（図示略）、当該パケットの通過時刻情報を示すタイムスタンプ（図示略）が含まれている。
【０１８１】
ここで、上記送出元ＩＰアドレスは、本来、ＩＰ＿Ｂ２（コンピュータ装置５０３）であるが、あたかもコンピュータ装置５００で不正アクセスパケットが生成されたようにするため、ＩＰ＿Ａ１（コンピュータ装置５００）に詐称されている。
【０１８２】
不正アクセスパケット６００’は、ルータ４００を通過する際に、不正アクセスパケット６０１’（データ部６００ａ’＋ヘッダ部６０１ｂ’）とされる。不正アクセスパケット６０１’は、ルータ４０１を通過する際に、不正アクセスパケット６０２’（データ部６００ａ’＋ヘッダ部６０２ｂ’）とされる。
【０１８３】
図２２に示したステップＳＢ１では、ＩＤＳ１０３は、ネットワークＣ内で不正アクセスパケット６０２’（図２３参照）を検知する。この不正アクセスパケットの検知は、前述したように、ユーザが定義した不正アクセスの判定基準およびルールに基づいて行われる。ステップＳＢ２では、ＩＤＳ１０３は、不正アクセスパケット６０２’を管理マネージャ３００へ送信する。
【０１８４】
ステップＳＢ３では、管理マネージャ３００は、不正アクセスパケット６０２’（データ部６００ａ’）からハッシュ値を算出する。ステップＳＢ４では、管理マネージャ３００は、パケットプリンティング装置２００ａ、２００ｂ、２００ｃ、２００ｄの中から、検索要求先のパケットプリンティング装置として、例えば、パケットプリンティング装置２００ａを選択する。
【０１８５】
ステップＳＢ５では、管理マネージャ３００は、パケットプリンティング装置２００ａの位置を確認した後、管理用ネットワークを介して、不正アクセスパケット６０２’に対応するハッシュ値を含む検索要求を送信する。
【０１８６】
ステップＳＢ６では、パケットプリンティング装置２００ａの追跡エージェント部２０８（図１７参照）は、管理マネージャ３００からの検索要求を受け付け、不正アクセスパケット６０２’に対応するハッシュ値をキーとして、ハッシュ値テーブル２０７ａ（図１９参照）を検索する。
【０１８７】
ステップＳＢ７では、追跡エージェント部２０８は、ハッシュ値が発見されたか否かを判断する。この場合、ルータ４００から送出された不正アクセスパケット６０１’は、ネットワークＡを監視するパケットプリンティング装置２００ａによりコピーされている。従って、パケットプリンティング装置２００ａのハッシュ値テーブル２０７ａ（図１９参照）には、不正アクセスパケット６０１’に対応するハッシュ値、ＴＴＬ、タイムスタンプ、ルータフラグ（＝１）が記憶されている。
【０１８８】
ここで、上記ハッシュ値が、データ部６００ａ’に対応するハッシュ値と同値であるため、追跡エージェント部２０８は、ステップＳＢ７の判断結果を「Ｙｅｓ」とする。ステップＳＢ８では、追跡エージェント部２０８は、ハッシュ値テーブル２０７ａより、ステップＳＢ６で検索されたハッシュ値に対応するルータフラグを検索する。この場合、ルータフラグが１である。
【０１８９】
ステップＳＢ９では、追跡エージェント部２０８は、検索結果（ハッシュ値の検索結果がＯＫかつルータフラグが「１」）を管理マネージャ３００へ通知する。ステップＳＢ１０では、管理マネージャ３００は、検索結果より当該不正アクセスパケットの通過ルートを判定する。
【０１９０】
具体的には、管理マネージャ３００は、ハッシュ値の検索結果がＯＫかつルータフラグの検索結果が「１」、すなわち、不正アクセスパケット６０１’の送出元がルータ（この場合、ルータ４００）であるため、不正アクセスパケット６０１’を通過パケットと認識し、ネットワークＡを通過したものと判定する。
【０１９１】
ステップＳＢ１１では、管理マネージャ３００は、ステップＳＢ１０の判定に基づいて、検索継続が必要であるか否かを判断する。当該不正アクセスパケット６０１’が通過パケットである場合には、攻撃元（コンピュータ装置）の特定ができないため、検索継続が必要と判断される。一方、不正アクセスパケット６０１’が生成パケットである場合には、攻撃元（コンピュータ装置）の特定がされるため検索継続が不要と判断される。この場合、管理マネージャ３００は、当該不正アクセスパケット６０１’が通過パケットであるため、ステップＳＢ１１の判断結果を「Ｙｅｓ」とする。
【０１９２】
ステップＳＢ４では、管理マネージャ３００は、パケットプリンティング装置２００ｃ、２００ｂの中から、つぎの検索要求先のパケットプリンティング装置として、例えば、パケットプリンティング装置２００ｂを選択する。
【０１９３】
ステップＳＢ５では、管理マネージャ３００は、パケットプリンティング装置２００ｂの位置を確認した後、管理用ネットワークを介して、不正アクセスパケット６０２’に対応するハッシュ値を含む検索要求を送信する。
【０１９４】
ステップＳＢ６では、パケットプリンティング装置２００ｂの追跡エージェント部２０８（図１７参照）は、管理マネージャ３００からの検索要求を受け付け、不正アクセスパケット６０２’に対応するハッシュ値をキーとして、ハッシュ値テーブル２０７ａ（図１９参照）を検索する。
【０１９５】
ステップＳＢ７では、追跡エージェント部２０８は、ハッシュ値が発見されたか否かを判断する。この場合、コンピュータ装置５０３で生成された不正アクセスパケット６００’は、ネットワークＢを監視するパケットプリンティング装置２００ｂによりコピーされている。従って、パケットプリンティング装置２００ｂのハッシュ値テーブル２０７ａ（図１９参照）には、不正アクセスパケット６００’に対応するハッシュ値、ＴＴＬ、タイムスタンプ、ルータフラグ（＝０）が記憶されている。
【０１９６】
ここで、上記ハッシュ値が、データ部６００ａ’に対応するハッシュ値と同値であるため、追跡エージェント部２０８は、ステップＳＢ７の判断結果を「Ｙｅｓ」とする。ステップＳＢ８では、追跡エージェント部２０８は、ハッシュ値テーブル２０７ａより、ステップＳＢ６で検索されたハッシュ値に対応するルータフラグを検索する。この場合、ルータフラグが０である。
【０１９７】
ステップＳＢ９では、追跡エージェント部２０８は、検索結果（ハッシュ値の検索結果がＯＫかつルータフラグが「０」）を管理マネージャ３００へ通知する。ステップＳＢ１０では、管理マネージャ３００は、検索結果より当該不正アクセスパケットの通過ルートを判定する。
【０１９８】
具体的には、管理マネージャ３００は、ハッシュ値の検索結果がＯＫかつルータフラグの検索結果が「０」、すなわち、不正アクセスパケット６００’の送出元がルータでない（この場合、コンピュータ装置５０３である）ため、不正アクセスパケット６００’を、ネットワークＢ上のコンピュータ装置で生成された生成パケットと認識し、ネットワークＢ上のコンピュータ装置（この場合、コンピュータ装置５０３）が攻撃元であると判定する。
【０１９９】
ステップＳＢ１１では、管理マネージャ３００は、ステップＳＢ１０の判定に基づいて、検索継続が必要であるか否かを判断する。この場合、不正アクセスパケット６００’が生成パケットであり、攻撃元（コンピュータ装置）の特定がされるため、管理マネージャ３００は、検索継続を不要とし、ステップＳＢ１１の判断結果を「Ｎｏ」とする。ステップＳＢ１２では、管理マネージャ３００は、不正アクセスパケットの追跡が終了する。
【０２００】
以上説明したように、実施の形態２によれば、パケットプリンティング装置２００で、監視対象のネットワーク（ネットワークＡ、Ｂ、Ｃ）を通過する不正アクセスのパケットを特定するハッシュ値（パケット特定情報）と、パケットに含まれるＭＡＣアドレス（ハードウェアアドレス）に基づいて判定されるローカルなネットワークにおける送出元を判定するルータフラグ（送出元判定情報）とを生成しかつ記憶し、追跡対象パケットのハッシュ値を含む検索要求を管理マネージャ３００より受けて、追跡対象パケットのハッシュ値と同一のハッシュ値があるか否かを検索するとともに、また、検索された場合に該ハッシュ値に対応するルータフラグを（図１９参照）検索し、検索結果を管理マネージャ３００に送信し、同一のハッシュ値が検索されかつルータフラグがルータ（ルータ４００、４０１）に対応している場合、追跡対象パケットが当該監視対象のネットワークを通過した「通過パケット」であると判定し、また、ルータフラグがルータに対応していない場合、追跡対象パケットが当該監視対象のネットワーク上のコンピュータ装置で生成された「生成パケット」であると判定するようにしているので、不正アクセスの攻撃元を特定することができる。
【０２０１】
以上本発明にかかる実施の形態１および２について図面を参照して詳述してきたが、具体的な構成例はこれらの実施の形態１および２に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。
【０２０２】
例えば、図２５、図２６の各部の機能、実施の形態１および２の機能の一部またはすべてを実現するためのプログラムをコンピュータシステムに読み込ませ、実行させることにより実現させてもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、このプログラムは、前述の機能または機能の一部をコンピュータシステムに、既に記録されているプログラムとの組み合わせで実現できるものであってもよい。
【０２０３】
【発明の効果】
以上説明したとおり、この発明によれば、管理マネージャのＴＴＬ値判定ステップは、所定のパケットプリンティング装置で検索された追跡対象パケットのパケット特定情報に関連付けられた第１のＴＴＬ値と、所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置で検索された追跡対象パケットのパケット特定情報に関連付けられた第２のＴＴＬ値とを比較して検索順に昇順になっているか否かを判定し、このＴＴＬ値判定ステップを用いて、追跡対象パケットが所定のパケットプリンティング装置の直近に位置するパケットプリンティング装置を通過したか否かを判定するようにしているので、検索処理の時間を増加させることなく、ルート探索の正確性を向上させることができるという効果を奏するとともに、追跡対象パケットの探索にかかる探索ステップ数を削減することができるという効果も奏する。
【０２０４】
つぎの発明によれば、監視対象の通信ネットワークを通過する不正アクセスのパケットを特定するパケット特定情報と、パケットに含まれるハードウェアアドレスに基づいて判定されるローカルな通信ネットワークにおける送出元を判定する送出元判定情報とを生成しかつ記憶し、追跡対象パケットのパケット特定情報を含む検索要求を管理マネージャより受けて、追跡対象パケットのパケット特定情報と同一のパケット特定情報があるか否かを検索するとともに、また、検索された場合に該パケット特定情報に対応する送出元判定情報を検索し、検索結果を管理マネージャに送信し、同一のパケット特定情報が検索されかつ送出元判定情報がルータに対応している場合、追跡対象パケットが当該監視対象の通信ネットワークを通過した通過パケットであると判定し、また、送出元判定情報がルータに対応していない場合、追跡対象パケットが当該監視対象の通信ネットワーク上の装置で生成された生成パケットであると判定するようにしているので、不正アクセスの攻撃元を特定することができるという効果を奏する。
【０２０５】
つぎの発明にかかるプログラムによれば、上記の発明のいずれか一つに記載された方法をコンピュータに実行させるようにしたので、そのプログラムがコンピュータ読み取り可能となり、これによって、上記の発明のいずれか一つの動作をコンピュータによって実行することができるという効果を奏する。
【図面の簡単な説明】
【図１】本発明にかかる実施の形態１における管理マネージャおよびこの管理マネージャからパケット追跡のために検索要求の問い合わせを受けるネットワーク上に配置されたパケットプリンティング装置の階層接続図である。
【図２】検索要求の問い合わせにより特定されたパケット通過ルートの一例をパケットプリンティング装置の階層接続図に示した図である。
【図３】図２に示すパケット通過ルートを特定するための探索手順を示した図表である。
【図４】検索要求の問い合わせにより特定された複数のパケット通過ルートの一例をパケットプリンティング装置の階層接続図に示した図である。
【図５】図４に示す複数のパケット通過ルートの探索手順を示した図表である。
【図６】経路チェック手法を用いて判定する具体例を示す説明図である。
【図７】図４に示す複数のパケット通過ルートの特定に際し、幅優先型の探索に経路チェック手法を併用した場合のパケット通過ルートの探索手順を示した図表である。
【図８】一般的な終端判定の手法を用いてパケットプリンティング装置の終端を判定した一例を示すパケットプリンティング装置の階層接続図である。
【図９】図８に示す例を用いてパケットプリンティング装置の終端を判定する手順を示した図表である。
【図１０】終端判定の手法（終端装置判定数が２の場合）を用いて通過ルートを確定した一例を示すパケットプリンティング装置の階層接続図である。
【図１１】図１０に示す例を用いてパケット通過ルートを確定する手順を示した図表である。
【図１２】終端判定の手法（終端装置判定数が２の場合）を用いてパケットプリンティング装置の終端を判定した一例を示すパケットプリンティング装置の階層接続図である。
【図１３】図１２に示す例を用いてパケットプリンティング装置の終端を判定する手順を示した図表である。
【図１４】複雑な経路を持つネットワークにおいて特定されたパケット通過ルートの一例をパケットプリンティング装置の階層接続図に示した図である。
【図１５】図１４に示すパケット通過ルートを特定するための探索手順を示した図表である。
【図１６】本発明にかかる実施の形態２の構成を示す図である。
【図１７】図１６に示したパケットプリンティング装置２００（２００ａ、２００ｂ、２００ｃ、２００ｄ）の構成を示すブロック図である。
【図１８】図１７に示したＭＡＣアドレス／ＩＰアドレス対応テーブル記憶部２０２に記憶されているＭＡＣアドレス／ＩＰアドレス対応テーブル２０２ａのテーブル構造を示す図である。
【図１９】図１７に示したキャッシュ部２０７に記憶されているハッシュ値テーブル２０７ａのテーブル構造を示す図である。
【図２０】図１６に示した管理マネージャ３００の構成を示すブロック図である。
【図２１】図１６および図１７に示したパケットプリンティング装置２００（２００ａ、２００ｂ、２００ｃ、２００ｄ）におけるパケット取得処理（定常処理）を説明するフローチャートである。
【図２２】同実施の形態２における動作を説明するフローチャート図である。
【図２３】同実施の形態２における動作を説明する図である。
【図２４】ＰＣＴ／ＪＰ０１／０４１３９号に示されるパケット追跡システムの構成概要を示すブロック図である。
【図２５】パケットプリンティング装置の機能構成を示すブロック図である。
【図２６】管理マネージャの機能構成を示すブロック図である。
【符号の説明】
１０１，１０１ａ，１０１ｂ，１０１ｃ　パケットプリンティング装置
１０２　管理マネージャ
１０３　ＩＤＳ
１１１　タッピング装置
１１２　プリンティング制御部
１１３　パケットプリンティング部
１１４　キャッシュ制御部
１１５　キャッシュ部
１１６　追跡エージェント部
１２１　警報受信部
１２２　パケット受信部
１２３　プリンティング制御部
１２４　パケットプリンティング部
１２５　追跡要求部
１２７　通過ルート作成部
１２６　構成情報ＤＢ
２００，２００ａ，２００ｂ，２００ｃ　パケットプリンティング装置
２０２　ＭＡＣアドレス／ＩＰアドレス対応テーブル記憶部
２０３　ＭＡＣアドレスチェック部
２０４　プリンティング制御部
２０５　パケットプリンティング部
２０６　キャッシュ制御部
２０７　キャッシュ部
２０８　追跡エージェント部
３００　管理マネージャ
３０５　追跡要求部
３０７　通過ルート作成部
【図１】
2004147223.tif 000003
【図２】
2004147223.tif 000004
【図３】
2004147223.tif 000005
【図４】
2004147223.tif 000006
【図５】
2004147223.tif 000007
【図６】
2004147223.tif 000008
【図７】
2004147223.tif 000009
【図８】
2004147223.tif 000010
【図９】
2004147223.tif 000011
【図１０】
2004147223.tif 000012
【図１１】
2004147223.tif 000013
【図１２】
2004147223.tif 000014
【図１３】
2004147223.tif 000015
【図１４】
2004147223.tif 000016
【図１５】
2004147223.tif 000017
【図１６】
2004147223.tif 000018
【図１７】
2004147223.tif 000019
【図１８】
2004147223.tif 000020
【図１９】
2004147223.tif 000021
【図２０】
2004147223.tif 000022
【図２１】
2004147223.tif 000023
【図２２】
2004147223.tif 000024
【図２３】
2004147223.tif 000025
【図２４】
2004147223.tif 000026
【図２５】
2004147223.tif 000027
【図２６】
2004147223.tif 000028