(57)【要約】【課題】通信記録装置のリソースの効率化を図りながら、情報漏えいに関係するパケットを通信記録装置に記録させる。【解決手段】情報漏えいパケット抽出装置１は、通信記録装置２２に接続され、社内ネットワーク２４とインターネット２５間で送受信されるパケットを、スイッチ２８のミラーリングにより、順次受信し、受信した各々のパケットが情報漏えいの可能性の高いパケットか否かを解析し、情報漏えいの可能性の高いパケットを抽出するまでは、受信したパケットを廃棄し、情報漏えいの可能性の高いパケットを抽出した際に、当該パケットを記録対象パケットに指定し、更に、当該パケットが抽出されコネクションの設定時に送受信されたＳＹＮパケット等及び当該コネクションの後続パケットを記録対象パケットに指定し、記録対象パケットとして指定されたパケットを通信記録装置２２に送信して、通信記録装置２２に記録させる。【選択図】図２
2008085694.tif 000002
【特許請求の範囲】
【請求項１】
監視対象となる監視対象ネットワークのパケットを監視するネットワーク監視装置であって、
前記監視対象ネットワークにおいて送受信されるパケットを順次受信する受信制御部と、
前記受信制御部により受信された各々のパケットが選別条件に合致するか否かを解析し、選別条件に合致する条件合致パケットを抽出するまでは、受信されたパケットを廃棄し、条件合致パケットを抽出した際に、抽出した条件合致パケットを記録対象パケットとして指定するとともに、条件合致パケットが抽出されたコネクションを抽出対象コネクションとし、抽出対象コネクションの設定時にコネクションの設定のために送受信されたコネクション設定パケット及び前記抽出対象コネクションにおいて前記条件合致パケットに後続する後続パケットを記録対象パケットとして指定する記録対象パケット指定部とを有することを特徴とするネットワーク監視装置。
【請求項２】
前記ネットワーク監視装置は、更に、
前記受信制御部により受信されたパケットの中から、コネクションの設定のために送受信されるコネクション設定パケットを抽出するコネクション設定パケット抽出部と、
前記コネクション設定パケット抽出部により抽出されたコネクション設定パケットに含まれるアドレス情報及びポート情報を記憶するコネクション情報記憶部と、
前記抽出対象コネクションの設定時に送受信されたコネクション設定パケットに含まれていたアドレス情報及びポート情報を前記コネクション情報記憶部から取得して、前記抽出対象コネクションのコネクション設定パケットを生成するコネクション設定パケット生成部を有することを特徴とする請求項１に記載のネットワーク監視装置。
【請求項３】
前記ネットワーク監視装置は、
パケットの情報を記録する通信記録装置に接続されており、
前記ネットワーク監視装置は、更に、
前記記録対象パケット指定部により前記記録対象パケットとして指定されたパケットを前記通信記録装置に対して送信する送信制御部を有することを特徴とする請求項１に記載のネットワーク監視装置。
【請求項４】
前記受信制御部は、
前記監視対象ネットワークから前記監視対象ネットワークの外部に送信される送信パケットと前記監視対象ネットワークにおいて前記監視対象ネットワークの外部から受信する受信パケットとを受信し、前記監視対象ネットワークから前記監視対象ネットワークの外部に対して所定の処理を要求するリクエストパケットを前記送信パケットの一部として受信し、また、前記リクエストパケットに対するレスポンスパケットを前記受信パケットの一部として受信し、
前記記録対象パケット指定部は、
前記受信制御部により受信された各々のパケットが選別条件に合致するか否かを解析し、選別条件に合致する条件合致リクエストパケットを抽出するまでは、受信された送信パケット及び受信パケットを廃棄し、条件合致リクエストパケットを抽出した際に、条件合致リクエストパケットを記録対象パケットとして指定するとともに、前記抽出対象コネクションの設定時にコネクションの設定のために送受信されたコネクション設定パケット及び前記条件合致リクエストパケットに対するレスポンスパケット及び前記抽出対象コネクションにおいて前記条件合致リクエストパケットに後続する後続送信パケット及び後続受信パケットを記録対象パケットとして指定することを特徴とする請求項１に記載のネットワーク監視装置。
【請求項５】
前記記録対象パケット指定部は、
前記条件合致リクエストパケットを前記記録対象パケットとして指定した後に、前記条件合致リクエストパケットに先行するリクエストパケットに対するレスポンスパケットが受信された場合に、当該レスポンスパケットを廃棄することを特徴とする請求項４に記載のネットワーク監視装置。
【請求項６】
前記ネットワーク監視装置は、更に、
前記受信制御部により受信されたリクエストパケットのリクエストラインの情報を記憶するリクエスト情報記憶部を有し、
前記記録対象パケット指定部は、
前記リクエスト情報記憶部に記憶されているリクエストラインの情報と、前記受信制御部により受信されたレスポンスパケットに含まれているステータスラインの情報とを比較して、当該レスポンスパケットがいずれのリクエストパケットに対するレスポンスパケットであるのかを判断することを特徴とする請求項４に記載のネットワーク監視装置。
【請求項７】
前記ネットワーク監視装置は、更に、
一つのデータが分割されて複数のパケットに格納されている場合に、前記複数のパケットにおける当該データの先端の位置を検知する先端検知部と、
一つのデータが分割されて複数のパケットに格納されている場合に、前記複数のパケットにおける当該データの終端の位置を検知する終端検知部とを有し、
前記記録対象パケット指定部は、
一つのデータを分割して格納している複数のパケットが前記受信制御部により受信された場合に、前記先端検知部により検知された当該データの先端の位置及び前記終端検知部により検知された当該データの終端の位置の少なくともいずれかを利用して、前記複数のパケットに対する廃棄又は前記記録対象パケットとしての指定を行うことを特徴とする請求項１に記載のネットワーク監視装置。
【請求項８】
前記受信制御装置は、
シーケンス番号及び応答確認番号が含まれるパケットを順次受信し、
前記ネットワーク監視装置は、更に、
前記コネクション設定パケット生成部により生成される前記抽出対象コネクションのコネクション設定パケットに対して、前記条件合致パケットに含まれるシーケンス番号及び応答確認番号と連結関係のあるシーケンス番号及び応答確認番号を設定する番号設定部を有することを特徴とする請求項２に記載のネットワーク監視装置。
【請求項９】
前記受信制御部は、
前記コネクション設定パケットとして、前記監視対象ネットワークから前記監視対象ネットワークの外部に送信されるＳＹＮパケットと、前記監視対象ネットワークが前記監視対象ネットワークの外部から受信するＳＹＮ／ＡＣＫパケットと、前記監視対象ネットワークから前記監視対象ネットワークの外部に送信されるＡＣＫパケットとを受信し、
前記番号設定部は、
前記条件合致パケットに含まれるシーケンス番号及び応答確認番号と連結関係のあるシーケンス番号及び応答確認番号として、前記条件合致パケットに含まれるシーケンス番号から１を減じた値を前記ＳＹＮパケットのシーケンス番号とし、前記条件合致パケットに含まれる応答確認番号から１を減じた値を前記ＳＹＮパケットの応答確認番号とし、前記ＳＹＮパケットの応答確認番号と同じ値を前記ＳＹＮ／ＡＣＫパケットのシーケンス番号とし、前記ＳＹＮパケットのシーケンス番号に１を足した値を前記ＳＹＮ／ＡＣＫパケットの応答確認番号とし、前記ＳＹＮ／ＡＣＫパケットの応答確認番号と同じ値を前記ＡＣＫパケットのシーケンス番号とし、前記ＳＹＮ／ＡＣＫパケットのシーケンス番号に１を足した値を前記ＡＣＫパケットの応答確認番号とすることを特徴とする請求項８に記載のネットワーク監視装置。
【請求項１０】
前記受信制御装置は、
シーケンス番号及び応答確認番号が含まれるパケットを順次受信し、
前記ネットワーク監視装置は、更に、
前記記録対象パケット指定部により記録対象パケットとして指定された後続パケットの各々に含まれるシーケンス番号及び応答確認番号を、記録用のシーケンス番号及び記録用の応答確認番号として、前記条件合致パケットに含まれるシーケンス番号及び応答確認番号と連結関係のあるシーケンス番号及び応答確認番号に変更する番号設定部を有することを特徴とする請求項１に記載のネットワーク監視装置。
【請求項１１】
前記受信制御装置は、
前記監視対象ネットワークから前記監視対象ネットワークの外部に送信される送信パケットと前記監視対象ネットワークにおいて前記監視対象ネットワークの外部から受信する受信パケットとを受信し、前記監視対象ネットワークから前記監視対象ネットワークの外部に対して所定の処理を要求するリクエストパケットを前記送信パケットの一部として受信し、また、前記リクエストパケットに対するレスポンスパケットを前記受信パケットの一部として受信し、
前記記録対象パケット指定部は、
選別条件に合致する条件合致リクエストパケットを記録対象パケットとして指定するとともに、前記条件合致リクエストパケットに対するレスポンスパケット及び前記抽出対象コネクションにおいて前記条件合致リクエストパケットに後続する後続送信パケット及び後続受信パケットを記録対象パケットとして指定し、
前記番号設定部は、
前記条件合致リクエストパケットに対するレスポンスパケットに含まれるシーケンス番号から前記条件合致リクエストパケットに含まれる応答確認番号を差し引いた差分値を導出し、前記条件合致パケットに含まれるシーケンス番号及び応答確認番号と連結関係のあるシーケンス番号及び応答確認番号として、前記条件合致リクエストパケットに対するレスポンスパケット及び前記後続受信パケットに対しては、応答確認番号は変更せずに、シーケンス番号を前記差分値を差し引いた値に変更し、前記後続送信パケットに対しては、シーケンス番号は変更せずに、応答確認番号を前記差分値を減じた値に変更することを特徴とする請求項１０に記載のネットワーク監視装置。
【請求項１２】
前記受信制御部は、
前記監視対象ネットワークと前記監視対象ネットワークの外部との間で送受信されるパケットの複製を受信することを特徴とする請求項１に記載のネットワーク監視装置。
【請求項１３】
前記記録対象パケット指定部は、
前記選別条件として、前記受信制御部により受信されたパケットの各々が前記監視対象ネットワークから前記監視対象ネットワークの外部への情報漏えいの可能性のあるメソッドを含むか否かを判断し、情報漏えいの可能性のあるメソッドを含むパケットを前記条件合致パケットとして抽出することを特徴とする請求項１に記載のネットワーク監視装置。
【請求項１４】
前記記録対象パケット指定部は、
情報漏えいの可能性のあるメソッドを含むパケットとして、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）におけるＰＯＳＴリクエストを含むパケット及びＰＵＴリクエストを含むパケットの少なくともいずれかを前記条件合致パケットとして抽出することを特徴とする請求項１３に記載のネットワーク監視装置。
【請求項１５】
監視対象となる監視対象ネットワークのパケットをコンピュータを用いて監視するネットワーク監視方法であって、
コンピュータが、前記監視対象ネットワークにおいて送受信されるパケットを順次受信する受信ステップと、
コンピュータが、前記受信ステップにより受信された各々のパケットが選別条件に合致するか否かを解析し、選別条件に合致する条件合致パケットを抽出するまでは、受信されたパケットを廃棄し、条件合致パケットを抽出した際に、抽出した条件合致パケットを記録対象パケットとして指定するとともに、条件合致パケットが抽出されたコネクションを抽出対象コネクションとし、抽出対象コネクションの設定時にコネクションの設定のために送受信されたコネクション設定パケット及び前記抽出対象コネクションにおいて前記条件合致パケットに後続する後続パケットを記録対象パケットとして指定する記録対象パケット指定ステップとを有することを特徴とするネットワーク監視方法。
【請求項１６】
コンピュータに、監視対象となる監視対象ネットワークのパケットを監視させるプログラムであって、
前記監視対象ネットワークにおいて送受信されるパケットを順次受信する受信処理と、
前記受信処理により受信された各々のパケットが選別条件に合致するか否かを解析し、選別条件に合致する条件合致パケットを抽出するまでは、受信されたパケットを廃棄し、条件合致パケットを抽出した際に、抽出した条件合致パケットを記録対象パケットとして指定するとともに、条件合致パケットが抽出されたコネクションを抽出対象コネクションとし、抽出対象コネクションの設定時にコネクションの設定のために送受信されたコネクション設定パケット及び前記抽出対象コネクションにおいて前記条件合致パケットに後続する後続パケットを記録対象パケットとして指定する記録対象パケット指定処理とをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば、社内ネットワークからインターネットに送信されるパケットをフィルタリングすることで、情報漏えいの可能性のある情報発信のパケットを抽出し、抽出したパケットを記録対象とするフィルタリングシステムに関するものである。
【背景技術】
【０００２】
サーバ−クライアント間で送受信されるパケットをフィルタリングするシステムの例として、特開２００４−１４５５８３号公報に記載の技術がある。
図１８は、このフィルタリングシステムのシステム構成例である。
フィルタリングシステム１８０１は、サーバ１８００とクライアント１８０２の間に設置され、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）データを解析し、設定された条件によるフィルタリングを実施する。
【特許文献１】特開２００４−１４５５８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記の従来システムは、ＨＴＴＰ通信として定義されたポート番号を有するパケットのＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）ヘッダ直後の１行目に記述されているリクエストラインを解析し、メソッド、ＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）によるフィルタを実行するコンテンツファイアウォールとして動作する。
また、フィルタリングシステム１８０１を、例えば、通信記録装置に接続し、フィルタリングシステム１８０１が、サーバ１８００とクライアント１８０２との間で送受信されるパケットの複製を受信し、フィルタ条件に合致するパケットを抽出し、抽出したパケットを通信記録装置に送信して記録させることが考えられる。
この場合、メソッドがＰＵＴ、ＰＯＳＴのパケットを抽出の対象とし、当該パケットの宛先及び送信元アドレス、ポート番号を保存し、これ以降に到着するパケットが、保存した宛先及び送信元アドレス、ポート番号を有する場合、当該パケットを抽出するようにして、ＰＵＴ、ＰＯＳＴに関わるパケットを通信記録装置に転送することは可能である。
しかし、フィルタ条件により他のメソッド（ＧＥＴ）を廃棄したとしても、ＧＥＴパケットの前にサーバ１８００−クライアント１８０２間でコネクション確立のために送信されるＳＹＮパケット、ＳＹＮ／ＡＣＫパケット、ＡＣＫパケットは通過するため（廃棄対象ではないので）、フィルタリングシステム１８０１に通信記録装置が接続されている場合には、ＳＹＮパケット、ＳＹＮ／ＡＣＫパケット、ＡＣＫパケットといったＴＣＰコネクション制御のためのパケットがＨＴＴＰデータのない中途半端な形で記録されてしまい、通信記録装置のハードディスクやＣＰＵパワーなどのリソースが消費されるという課題がある。
【０００４】
また、ＨＴＴＰ１．１では、サーバ−クライアント間の通信効率を上げるため、リクエストに対するレスポンスを待たずに、リクエストを連続して送信するパイプラインが用いられる。
パイプラインでは、クライアントからＧＥＴ、ＧＥＴ、ＰＯＳＴ、ＧＥＴのようにリクエストパケットが連続して送信されるが、特開２００４−１４５５８３号公報ではフィルタ条件にＧＥＴを廃棄、ＰＯＳＴを通過（記録対象）と設定した場合にはＰＯＳＴの後に送信されたＧＥＴが廃棄されてしまうため、ＰＯＳＴ後に、ＧＥＴリクエストに対してクライアントがサーバからどのようなデータを取得したかを確認することができない問題がある。
【０００５】
本発明は、このような問題を解決することを主な目的としており、通信記録装置のハードディスクやＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）パワーなどのリソースが無駄に消費されるのを防ぐとともに、通信記録装置に情報漏えいの可能性のあるパケットとこのコネクション上のデータが正しく記録されるようにすることを主な目的の一つとする。
また、情報漏えいの可能性のあるパケットを送信後、コネクション上で送受信するパケットを転送することで、情報発信後どのようなデータを取得したかを確認できるようにすることを主な目的の一つとする。
【課題を解決するための手段】
【０００６】
本発明に係るネットワーク監視装置は、
監視対象となる監視対象ネットワークのパケットを監視するネットワーク監視装置であって、
前記監視対象ネットワークにおいて送受信されるパケットを順次受信する受信制御部と、
前記受信制御部により受信された各々のパケットが選別条件に合致するか否かを解析し、選別条件に合致する条件合致パケットを抽出するまでは、受信されたパケットを廃棄し、条件合致パケットを抽出した際に、抽出した条件合致パケットを記録対象パケットとして指定するとともに、条件合致パケットが抽出されたコネクションを抽出対象コネクションとし、抽出対象コネクションの設定時にコネクションの設定のために送受信されたコネクション設定パケット及び前記抽出対象コネクションにおいて前記条件合致パケットに後続する後続パケットを記録対象パケットとして指定する記録対象パケット指定部とを有することを特徴とする。
【発明の効果】
【０００７】
本発明では、条件合致パケットを抽出するまでは、受信したパケットを廃棄し、条件合致パケットを抽出した際に、当該パケット、当該パケットのコネクション設定パケット及び後続パケットを記録の対象とする。このため、情報漏えいの可能性の高いパケットが抽出されない場合は、受信したパケットを廃棄することにより情報記録のためのリソースの浪費を回避でき、一方、情報漏えいの可能性の高いパケットが抽出された場合は、抽出した情報漏えいの可能性の高いパケット、コネクション設定パケット及び同一コネクションで後続するパケットを記録の対象とすることで、情報漏えいの可能性が高いコネクションで送受信されるパケットを確実に記録することが可能となる。
【発明を実施するための最良の形態】
【０００８】
実施の形態１．
図１は、本実施の形態における情報漏えいパケット抽出装置１の構成例であり、図２は、情報漏えいパケット抽出装置１の接続されたシステムの構成例である。
図３は、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）サーバ装置２３（以下、単にＷＷＷサーバ２３という）、プロキシサーバ装置２６（以下、単にプロキシサーバ２６という）、情報漏えいパケット抽出装置１、通信記録装置２２間で情報を取得（ＧＥＴ）する際の通信シーケンス、図４は、情報を発信（ＰＯＳＴ）する際の通信シーケンス図である。
図５は、ＨＴＴＰリクエストメッセージの構成図であり、図６は、情報漏えいパケット抽出装置１がパケットを受信した場合のフローチャートである。
【０００９】
図１において、入力ポート２は、スイッチ２８からパケットを受信するポートであり、出力ポート３は、情報漏えいに関するパケットを検出した際に通信記録装置２２に抽出したパケットを送信するポートである。
受信制御部４は、入力ポート２を制御し、送信制御部５は、出力ポート３を制御する。
ＴＣＰ−ＳＰＩ（Ｓｔａｔｅｆｕｌ  Ｐａｃｋｅｔ  Ｉｎｓｐｅｃｔｉｏｎ）部６は、受信したパケットがＴＣＰコネクション上で正しい手順で送信されているかをチェックし、パケットの順序が入れ替わった場合に正しい順番に並べ替える。
データ解析部７は、ＨＴＴＰメッセージを解析し、情報漏えいに関するパケットであるかをチェックする。
コネクション情報記憶部８は、コネクションの設定のために送受信されるＳＹＮパケット（コネクション設定パケット）に含まれるアドレス情報及びポート情報を記憶する。
なお、情報漏えいパケット抽出装置１は、ネットワーク監視装置の例である。また、ＴＣＰ−ＳＰＩ部６は、記録対象パケット指定部及びコネクション設定パケット抽出部の例である。また、データ解析部７は、記録対象パケット指定部及びコネクション設定パケット生成部の例である。
【００１０】
図２において、社内ネットワーク２４に端末装置２１（以下、単に端末２１という）が接続され、ファイアウォール２７を介してインターネット２５に接続している。
ファイアウォール２７に接続しているスイッチ２８には、プロキシサーバ２６が接続している。
社内ネットワーク２４の端末２１からインターネット２５へアクセスする場合はプロキシサーバ２６を介して行われる。プロキシサーバ２６を用いることにより、端末２１の存在をインターネット２５側から隠蔽することによるセキュリティ向上と、インターネット２５から取得した情報をキャッシュに保存し、他の端末から同じ情報にアクセスがあった場合にキャッシュに保存している情報を応答することによる情報取得のレスポンス向上といった効果がある。なお、プロキシサーバ２６を省略した構成であってもよい。
【００１１】
情報漏えいパケット抽出装置１は、スイッチ２８に接続し、スイッチ２８のポートモニタ（ミラーリングポート）機能により、情報漏えいパケット抽出装置１はスイッチ２８がリレーするすべてのパケットを受信することができる。
通信記録装置２２は、情報漏えいパケット抽出装置１が転送したパケットを記録する。
通信記録は、情報流失の有無を証明するフォレンジックな証拠として活用される。
【００１２】
図１に示す情報漏えいパケット抽出装置１において、受信制御部４は、監視対象となる社内ネットワーク２４（監視対象ネットワーク）とインターネット２５の間で送受信されるパケットの複製を、スイッチ２８経由で、プロキシサーバ２６から順次受信する。
そして、データ解析部７は、受信制御部４が受信した各々のパケットが情報漏えいの可能性のあるメソッドを含むパケットか否か（選別条件に合致するか否か）を解析し、情報漏えいの可能性のあるメソッドを含むパケット（選別条件に合致する条件合致パケット）を抽出するまでは、受信されたパケットを廃棄し、情報漏えいの可能性のあるメソッドを含むパケットを抽出した際に、抽出した情報漏えいの可能性のあるメソッドを含むパケットを記録対象パケットとして指定する。ここで、情報漏えいの可能性のあるメソッドを含むパケットは、例えば、ＰＯＳＴメソッドが含まれるパケットやＰＵＴメソッドが含まれるパケットである。このため、ＰＯＳＴメソッドが含まれるパケットやＰＵＴメソッドが含まれるパケットが、条件合致パケットの例となる。
また、データ解析部７は、情報漏えいの可能性の高いパケットが抽出されたコネクションを抽出対象コネクションとし、抽出対象コネクションの設定時にコネクションの設定のために送受信されたＳＹＮパケット、ＳＹＮ／ＡＣＫパケット及びＡＣＫパケット（これらを総称してコネクション設定パケットともいう）及び抽出対象コネクションにおいて情報漏えいの可能性の高いパケットに後続する後続パケットを記録対象パケットとして指定する。
そして、送信制御部５は、データ解析部７により記録対象パケットとして指定されたパケットを通信記録装置２２に送信して、通信記録装置２２に当該パケットを記録させる。
【００１３】
また、ＴＣＰ−ＳＰＩ部６は、コネクションの設定のために送受信されるコネクション設定パケット（本実施の形態ではＳＹＮパケットを例にするが、ＳＹＮ／ＡＣＫパケット又はＡＣＫパケットでもよい）を抽出し、コネクション情報記憶部８が、ＴＣＰ−ＳＰＩ部６により抽出されたコネクション設定パケットに含まれるアドレス情報及びポート情報を記憶する。
そして、データ解析部７は、抽出対象コネクションの設定時に送受信されたコネクション設定パケットに含まれていたアドレス情報及びポート情報をコネクション情報記憶部８から取得して、抽出対象コネクションのコネクション設定パケット（ＳＹＮ／ＡＣＫパケット及びＡＣＫパケット）を生成する。
【００１４】
ここで、本実施の形態及び以下に述べる実施の形態に示す情報漏えいパケット抽出装置１のハードウェア構成例について説明する。
図１９は、本実施の形態及び以下に述べる実施の形態に示す情報漏えいパケット抽出装置１のハードウェア資源の一例を示す図である。なお、図１９の構成は、あくまでも情報漏えいパケット抽出装置１のハードウェア構成の一例を示すものであり、情報漏えいパケット抽出装置１のハードウェア構成は図１９に記載の構成に限らず、他の構成であってもよい。
図１９において、情報漏えいパケット抽出装置１は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）と接続していてもよい。更には、プリンタ装置やスキャナ装置と接続していてもよい。また、磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
通信ボード９１５、キーボード９０２、スキャナ装置、ＦＤＤ９０４などは、入力部、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置などは、出力部、出力装置の一例である。
【００１５】
通信ボード９１５は、図２に示すように、ネットワークに接続されている。
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００１６】
上記プログラム群９２３には、本実施の形態及び以下に述べる実施の形態の説明において「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、以下に述べる説明において、「〜の判断」、「〜の解析」、「〜の比較」、「〜の計算」、「〜の登録」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリになどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、以下で説明するフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００１７】
また、本実施の形態及び以下に述べる実施の形態の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、本実施の形態及び以下に述べる実施の形態の「〜部」としてコンピュータを機能させるものである。あるいは、本実施の形態及び以下に述べる実施の形態の「〜部」の手順や方法をコンピュータに実行させるものである。
【００１８】
このように、本実施の形態及び以下に述べる実施の形態に示す情報漏えいパケット抽出装置１は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【００１９】
次に、図１、２、３、４、５、６を用いて、情報漏えいパケット抽出装置１の動作を説明する。まず、図３の端末がＷＷＷサーバから情報を取得（ＧＥＴ）する場合の情報漏えいパケット抽出装置１の動作例（ネットワーク監視方法）を説明する。
端末２１からの情報取得要求は、プロキシサーバ２６を経由してＷＷＷサーバ２３に通知される。
プロキシサーバ２６が社内ネットワーク２４及びインターネット２５から送受信するパケットはスイッチ２８経由で情報漏えいパケット抽出装置１にも通知される。
ＷＷＷサーバ２３への接続に使用するＨＴＴＰプロトコルはＴＣＰ上で動作するため、プロキシサーバ２６は、コネクション確立のため、図３に示すように、ＳＹＮパケット３１（以下、単にＳＹＮ３１ともいう）を送信する。
情報漏えいパケット抽出装置１では、図６に示すように、前述したスイッチ２８のミラーリングにより、受信制御部４がパケットを受信する（ステップＳ１０１）（受信ステップ）。この場合は、受信制御部４は、プロキシサーバ２６からのＳＹＮ３１を受信する。
次に、ＴＣＰ−ＳＰＩ部６が、受信したパケットのＴＣＰステートをチェックし、受信したパケットがＳＹＮパケット３１（コネクション設定パケット）であるか否か、換言すれば、受信したパケットの送信元アドレス、宛先アドレス、送信元ポート番号及び宛先ポート番号がコネクション情報記憶部８に登録されているかを解析する（ステップＳ１０２）（コネクション設定パケット抽出ステップ）。受信したパケットがＳＹＮパケット３１であれば、ＴＣＰ−ＳＰＩ部６は、これを抽出する。
そして、コネクション情報が登録されていない場合は（Ｓ１０２でＮＯ）、ＴＣＰ−ＳＰＩ部６は、パケット内のアドレス、ポート番号をコネクション情報としてコネクション情報記憶部８に登録する（ステップＳ１０３）（コネクション情報記憶ステップ）。
以降、パケットを受信した際には、ＴＣＰ−ＳＰＩ部６は、確立されたコネクション上でデータが送受信されているかをチェックし（ステップＳ１０４）、コネクション未確立でパケットが送信されている場合はＴＣＰステートエラーとしてパケットを廃棄する（ステップＳ２００）。
コネクション情報記憶部８は、コネクション切断パケット受信時に、コネクション情報を削除する。
【００２０】
ＴＣＰ−ＳＰＩ部６は、受信したＳＹＮ３１について、ＴＣＰステートチェック後、ＰＯＳＴリクエスト検出済みかをチェックする（ステップＳ３００）。ＰＯＳＴリクエストとは、端末２１（プロキシサーバ２６）からＷＷＷサーバ２３に対して送信されたＰＯＳＴメソッドが含まれているリクエストパケットのことであり、ＰＯＳＴリクエスト検出済みとは、ＰＯＳＴメソッドが含まれているリクエストパケットが情報漏えいパケット抽出装置１で検出済みであることを意味する。
この時点ではＰＯＳＴリクエスト未検出のため、続いて、ＴＣＰ−ＳＰＩ部６は、受信したパケットの通信方向がインターネット２５から社内ネットワーク２４宛であるかをチェックする（ステップＳ５００）。ＳＹＮ３１は社内ネットワーク２４からインターネット２５宛であり、更に、セグメントサイズが０のため（ステップＳ６００）、ＴＣＰ−ＳＰＩ部６は、当該ＳＹＮ３１を廃棄する（ステップＳ２００）。
【００２１】
ＳＹＮ３１を受信したＷＷＷサーバ２３は、ＳＹＮ／ＡＣＫパケット３２（以下、単にＳＹＮ／ＡＣＫ３２ともいう）を送信する。
ＳＹＮ／ＡＣＫ３２は、インターネット２５から社内ネットワーク２４宛のため、情報漏えいパケット抽出装置１では、当該ＳＹＮ／ＡＣＫ３２を受信した際に、ステップＳ５００に至ったときに、ＴＣＰ−ＳＰＩ部６がこのＳＹＮ／ＡＣＫ３２を廃棄する（ステップＳ２００）。
次に、プロキシサーバ２６は、ＷＷＷサーバ２３宛てのＡＣＫパケット３３（以下、単にＡＣＫ３３ともいう）を送信する。
情報漏えいパケット抽出装置１では、当該ＡＣＫ３３を受信した際に、ステップＳ６００に至ったときに、ＡＣＫ３３はセグメントサイズ０のため、ＴＣＰ−ＳＰＩ部６がこのＡＣＫ３３を廃棄する（ステップＳ２００）。
【００２２】
その後、プロキシサーバ２６は、端末２１からＷＷＷサーバ２３宛てのＧＥＴリクエストパケット３４（以下、単にＧＥＴリクエスト３４ともいう）を送信する。ＧＥＴリクエスト３４を受信した情報漏えいパケット抽出装置１では、ＴＣＰ−ＳＰＩ部６によるＴＣＰステートチェック：ＯＫ（ステップＳ１０４）、ＰＯＳＴリクエスト検出済み：Ｎｏ（ステップＳ３００）、インターネットから社内宛：Ｎｏ（ステップＳ５００）、セグメントサイズ！＝０（ステップＳ６００）のため、データ解析部７においてＨＴＴＰヘッダ解析（ステップＳ７００）を実施する。
【００２３】
ＨＴＴＰヘッダ解析では、データ解析部７は、ＨＴＴＰリクエストメッセージのリクエストライン５１（図５）を取り出し、メソッドが情報漏えいの可能性あるＰＯＳＴメソッドであるかを解析し（ステップＳ８００）、この場合は、ＧＥＴリクエスト３４なのでＰＯＳＴメソッドではなく、当該ＧＥＴリクエスト３４を廃棄する（ステップＳ２００）。
以降、図３に示すように、ＧＥＴレスポンスパケット３５（以下、単にＧＥＴレスポンス３５ともいう）、ＦＩＮパケット３６（以下、単にＦＩＮ３６ともいう）、ＦＩＮ／ＡＣＫパケット３７（以下、単にＦＩＮ／ＡＣＫ３７ともいう）、ＦＩＮ／ＡＣＫパケット３８（以下、単にＦＩＮ／ＡＣＫ３８ともいう）、ＡＣＫパケット３９（以下、単にＡＣＫ３９ともいう）がやりとりされるが、通信方向がインターネットから社内宛、あるいはセグメントサイ＝＝０のため廃棄する。
【００２４】
次に、端末２１がＷＷＷサーバ２３上の掲示板などに情報を書き込み（ＰＯＳＴ）する場合の動作を説明する。
プロキシサーバ２６−ＷＷＷサーバ２３間で送受信するコネクション確立のＳＹＮ３１、ＳＹＮ／ＡＣＫ３２、ＡＣＫ３３に対する処理はＧＥＴの場合と同様である。つまり、ＴＣＰ−ＳＰＩ部６が、ＳＹＮ３１に含まれているアドレス情報、ポート情報をコネクション情報記憶部８に登録し、また、ＳＹＮ３１、ＳＹＮ／ＡＣＫ３２、ＡＣＫ３３を廃棄する。
【００２５】
プロキシサーバ２６は、書き込む情報を含んだＰＯＳＴリクエストパケット４０（以下、単にＰＯＳＴリクエスト４０ともいう）を送信する。
ＰＯＳＴリクエスト４０を受信した情報漏えいパケット抽出装置１では、ＴＣＰ−ＳＰＩ部６によるＴＣＰステートチェック：ＯＫ（ステップＳ１０４）、ＰＯＳＴリクエスト検出済み：Ｎｏ（ステップＳ３００）、インターネットから社内宛：Ｎｏ（ステップＳ５００）、セグメントサイズ！＝０（ステップＳ６００）のため、データ解析部７においてＨＴＴＰヘッダ解析（ステップＳ７００）を実施する。
【００２６】
ＨＴＴＰヘッダ解析では、データ解析部７は、ＨＴＴＰリクエストメッセージのリクエストライン５１（図５）を取り出し、メソッドが情報漏えいの可能性あるＰＯＳＴメソッドであるかを解析し（ステップＳ８００）、ＰＯＳＴメソッドの場合には、当該パケットを通信記録装置２２の記録の対象となる記録対象パケットに指定する。
そして、データ解析部７は、記録対象パケットが抽出されたコネクションを抽出対象コネクションとし、抽出対象コネクションの設定時にコネクションの設定のために送受信されたコネクション設定パケット（ＳＹＮ３１、ＳＹＮ／ＡＣＫ３２、ＡＣＫ３３）を記録対象パケットとして指定し、コネクション情報記憶部８に記憶されているコネクション情報（アドレス情報、ポート情報）からコネクション設定パケット（ＳＹＮ３１、ＳＹＮ／ＡＣＫ３２、ＡＣＫ３３）を復元したコネクション設定パケット（ＳＹＮ４２、ＳＹＮ／ＡＣＫ４３、ＡＣＫ４４）を生成する（ステップＳ８１０）。コネクション設定パケット（ＳＹＮ４２、ＳＹＮ／ＡＣＫ４３、ＡＣＫ４４）は、コネクション設定パケット（ＳＹＮ３１、ＳＹＮ／ＡＣＫ３２、ＡＣＫ３３）とアドレス情報、ポート情報は一致しているが、シーケンス番号（ＳＥＱ）や応答番号（ＡＣＫ）は、通信記録装置上ではシーケンス番号、ＡＣＫ番号の連続性を保証するため、ＰＯＳＴリクエスト４０から生成するため、ＳＹＮ４２、ＳＹＮ／ＡＣＫ４３、ＡＣＫ４４と、ＳＹＮ３１、ＳＹＮ／ＡＣＫ３２、ＡＣＫ３３との間で一致しないことがある。
【００２７】
次に、送信制御部５が出力ポート３を介して、コネクション設定パケット（ＳＹＮ４２、ＳＹＮ／ＡＣＫ４３、ＡＣＫ４４）を通信記録装置２２に送信し（ステップＳ９００）（送信ステップ）、更に、ＰＯＳＴリクエスト４０を通信記録装置２２に送信する（ステップＳ１０００）（送信ステップ）。
【００２８】
次に、データ解析部７は、状態をＰＯＳＴリクエスト検出済みに設定する（ステップＳ１１００）。これにより、抽出対象コネクションにおいてＰＯＳＴリクエスト４０に後続する後続パケットを記録対象パケットとして指定することができる。
つまり、ＰＯＳＴリクエスト４０に対するＰＯＳＴレスポンスパケット４１（以下、単にＰＯＳＴレスポンス４１ともいう）を受信した場合には、ＴＣＰステートチェック後、ステップＳ３００において、ＴＣＰ−ＳＰＩ部６がＰＯＳＴリクエスト検出済みと判断することにより、ＴＣＰ−ＳＰＩ部６が、当該ＰＯＳＴレスポンス４１を記録対象パケットと指定し、送信制御部５が当該ＰＯＳＴレスポンス４１を通信記録装置に送信する（ステップＳ４００）。
以降、この抽出対象コネクション上で送受信されるパケット（ＦＩＮ３６、ＦＩＮ／ＡＣＫ３７、ＦＩＮ／ＡＣＫ３８、ＡＣＫ３９）はＴＣＰ−ＳＰＩ部６により記録対象パケットとして指定され、コネクションが切断されるまで通信記録装置２２に転送される（ステップＳ３００、Ｓ４００）。
そして、コネクション切断時には、コネクション情報記憶部８は、登録しているコネクション情報を削除する。
【００２９】
なお、図６において、Ｓ１０１は受信ステップであり、Ｓ１０２はコネクション設定パケット抽出ステップであり、Ｓ１０３はコネクション情報記憶ステップである。また、Ｓ４００、Ｓ９００及びＳ１０００は送信ステップである。それ以外のステップは、記録対象パケット指定ステップである。
【００３０】
以上のように、本実施の形態では、情報漏えいパケット抽出装置１は、情報漏えいの可能性のあるＰＯＳＴパケットを受信した場合にコネクション設定パケットを生成して通信記録装置に送信した後にＰＯＳＴパケットを送信するため、パケットがＧＥＴの場合にはＳＹＮ、ＳＹＮ／ＡＣＫ、ＡＣＫパケットを通信記録装置に送信しないため、ＴＣＰコネクション制御のためのパケットのみがＨＴＴＰデータのない中途半端な形で記録されてしまうのを防ぐことができる。
つまり、情報漏えいパケット抽出装置１は、監視対象の社内ネットワーク２４とインターネット２５間で送受信されるパケットを順次受信し、受信した各々のパケットが情報漏えいの可能性の高いパケットか否かを解析し、情報漏えいの可能性の高いパケットを抽出するまでは、受信したパケットを廃棄し、情報漏えいの可能性の高いパケットを抽出した際に、当該パケットを記録対象パケットに指定し、更に、当該パケットが抽出されコネクションの設定時に送受信されたコネクション設定パケット及び当該コネクションの後続パケットを記録対象パケットに指定し、記録対象パケットとして指定されたパケットを通信記録装置２２に送信して、通信記録装置２２に記録させる。情報漏えいの可能性の高いパケットが抽出されない場合は、コネクション設定パケット及びその他のパケットは、情報漏えいの可能性が低いので廃棄することにより通信記録装置２２のリソースの浪費を回避する。一方で、情報漏えいの可能性の高いパケットが抽出された場合は、廃棄されてしまっているコネクション設定パケットを復元して、復元したコネクション設定パケット及び抽出した情報漏えいの可能性の高いパケットを通信記録装置２２に記録させ、更に同一コネクションで後続するパケットも通信記録装置２２に記録させることで、情報漏えいの可能性が高いコネクションで送受信されるパケットを確実に記録することが可能となる。
【００３１】
以上、本実施の形態では、ネットワークからパケットを受信する受信制御部、受信したパケットのＴＣＰステートを解析するＴＣＰ−ＳＰＩ部、アプリケーションデータを解析するデータ解析部、ネットワークにパケットを送信する送信制御部を有し、受信したデータのメソッドを解析し、情報漏えいの可能性のあるメソッドの場合には、コネクション確立情報を生成して通信記録装置に送信した後に情報漏えいの可能性のあるパケットを送信し、その後、このコネクションで送受信されるパケットを通信記録装置に転送する情報漏えいパケット抽出装置について説明した。
【００３２】
実施の形態２．
本実施の形態では、ＨＴＴＰ１．１のパイプラインに対応した例を説明する。
つまり、本実施の形態では、ＰＯＳＴリクエストパケット等の情報漏えいの可能性の高いリクエストパケット（条件合致リクエストパケット）を記録対象パケットとして指定した後に、前記情報漏えいの可能性の高いリクエストパケットに先行するリクエストパケットに対するレスポンスパケットを受信した場合に、当該レスポンスパケットを廃棄する情報漏えいパケット抽出装置について説明する。
【００３３】
図７は、実施の形態２における情報漏えいパケット抽出装置１の構成図である。
図７では、図１と比較して、終端検知部１０とリクエスト保持部１１が追加されている。
詳細は、後述するが、リクエスト保持部１１は、受信制御部４により受信されたリクエストパケットのリクエストラインの情報を記憶する。リクエスト保持部１１は、リクエスト情報記憶部の例である。
また、終端検知部１０は、一つのデータが分割されて複数のパケットに格納されている場合に、複数のパケットにおける当該データの終端の位置を検知する。
なお、本実施の形態では、データ解析部７は、一つのデータが分割されて複数のパケットに格納されている場合に、複数のパケットにおける当該データの先端の位置を検知し、先端検知部の例でもある。
そして、データ解析部７は、一つのデータを分割して格納している複数のパケットが受信制御部４により受信された場合に、複数のパケットにおける当該データの先端の位置を検知し、検知した当該データの先端の位置及び終端検知部１０により検知された当該データの終端の位置の少なくともいずれかを利用して、前記複数のパケットに対する廃棄又は前記記録対象パケットとしての指定を行う。
他の要素は、実施の形態１の図１と同様である。
【００３４】
図８は、ＨＴＴＰレスポンスメッセージの構成図である。
図９は、実施の形態２の通信シーケンス図であり、ＨＴＴＰ１．１で規定されているパイプラインを用いた場合の例である。
図９では、社内ネットワーク２４（プロキシサーバ２６）から、レスポンスを待たずにＧＥＴ、ＧＥＴ、ＧＥＴ、ＰＯＳＴ、ＧＥＴとリクエストパケットを連続して送信している。
図１０及び図１１は、実施の形態２に係る情報漏えいパケット抽出装置１の動作例（ネットワーク監視方法）を示すフローチャートである。
図１２は、メッセージ（データ）が複数パケットに分割された場合の構成例である。
システム構成は、実施の形態１の図２と同様である。
【００３５】
図５、７、８、９、１０、１１、１２等を用いて、本実施の形態に係る情報漏えいパケット抽出装置１の動作例を説明する。
プロキシサーバ２６は、コネクション確立のため、ＳＹＮ３１を送信する。
情報漏えいパケット抽出装置１は、受信制御部４においてＳＹＮ３１を受信したら（ステップＳ１０１）（受信ステップ）、ＴＣＰ−ＳＰＩ部６においてＴＣＰステートをチェックし（ステップＳ１０２）（コネクション設定パケット抽出ステップ）、新規コネクションとして、コネクション情報を登録する（ステップＳ１０３）（コネクション情報記憶ステップ）。ステート異常であればパケットを廃棄する（ステップＳ２００）。これらの処理は実施の形態１と同様である。
次に、ＴＣＰ−ＳＰＩ部６は、受信したパケットの通信方向がインターネット２５から社内ネットワーク２４宛であるかをチェックする（ステップＳ５００）。ＳＹＮ３１は社内ネットワーク２４からインターネット２５宛であるため、続いて、ＴＣＰ−ＳＰＩ部６は、ＰＯＳＴリクエスト検出済みかをチェックする（ステップＳ３００）。この時点ではまだＰＯＳＴリクエストは検出済みでないため、次に、ＴＣＰ−ＳＰＩ部６は、セグメントサイズをチェックし（ステップＳ６００）、ＳＹＮ３１はサイズ０のため廃棄される（ステップＳ２００）。これらの処理も実施の形態１と同様である。
【００３６】
ＳＹＮ３１を受信したＷＷＷサーバ２３は、ＳＹＮ／ＡＣＫ３２を送信し、プロキシサーバ２６はＡＣＫ３３を送信する。情報漏えいパケット抽出装置１では、これらのパケットもセグメントサイズ０のため廃棄される（ステップＳ２００）。
【００３７】
次に、プロキシサーバ２６は、ＧＥＴリクエスト３４を送信する。
ＧＥＴリクエスト３４を受信した情報漏えいパケット抽出装置１は、ＴＣＰ−ＳＰＩ部６によるＴＣＰステートチェック：ＯＫ（ステップＳ１０４）、インターネットから社内宛：Ｎｏ（ステップＳ５００）、ＰＯＳＴリクエスト検出済み：Ｎｏ（ステップＳ３００）、セグメントサイズ！＝０（ステップＳ６００）となり、データ解析部７が、受信したパケットがＨＴＴＰメッセージの先頭かどうかをチェックする（ステップＳ１３００）。
【００３８】
メッセージの先頭とは、図５のＨＴＴＰリクエストメッセージのリクエストライン５１から（リクエストの場合）もしくは、図８のステータスライン５８の先頭から（レスポンスの場合）パケットを受信したことを意味する。
コネクションを確立して最初に送信されるメッセージは、メッセージの先頭から送信されるが、例えば、サイズの大きな画像データを含んだＧＥＴレスポンスの場合には図１２（ａ）のように、ボディ５７が１つのパケットに格納できないため、ボディを２つのパケット７３、７４に分割して送信する。この際、２つめ以降のパケットには、ボディ部のみが格納されるため、このパケットのボディはメッセージ（データ）の先頭でなく、このパケットを受信した場合は、メッセージの途中から受信したことになる。
このようにメッセージが複数のパケットに分割された場合であって、受信したパケットがメッセージの先頭でない場合は（ステップＳ１３００でＮｏの場合）は、終端検知部１０において、ボディ部のデータの区切りを検索することで、データの終端を識別する（ステップＳ１４００）（終端検知ステップ）。データの区切りがない場合（ステップＳ１４００でＹｅｓの場合）は、当該パケットはメッセージの終端ではないので、終端検知部１０は、当該パケットを廃棄する（ステップＳ２００）。
データの区切りがある場合は、終端検知部１０は、区切りの後にデータがあるか否かを検査し（ステップＳ１５００）（終端検知ステップ）、図１２（ｂ）の例のようにパケットが２つに分割され、２つ目のパケットにメッセージボディとメッセージヘッダが格納されている（一つ目のメッセージの終端の後にもデータがある）場合（ステップＳ１５００でＹｅｓの場合）には、終端検知部１０は、終端以降のデータ（メッセージヘッダ、空行、メッセージボディ）を切りだして（ステップＳ１６００）（終端検知ステップ）、メッセージの先頭のチェックに戻る。区切りの先にデータがない場合（ステップＳ１５００でＮｏの場合）は、終端検知部１０は、パケットを廃棄し、次に受信するデータがメッセージの先頭となる。
【００３９】
以降、図９の各リクエスト、レスポンスは１つのパケットに格納されていることとして動作を説明する。
メッセージの先頭から受信したＧＥＴリクエスト３４（ステップＳ１３００でＹｅｓと判定されている）に対して、ＴＣＰ−ＳＰＩ部６は、パケットの通信方向をチェックする（ステップＳ５００）。
ＧＥＴリクエスト３４は社内ネットワーク２４からインターネット２５宛のため、Ｂの処理を実施する。
Ｂでは、図１１に示すように、データ解析部７が、ＨＴＴＰヘッダを解析し（ステップＳ７００）、次にリクエストライン５１の情報をリクエスト保持部１１に保持する（ステップＳ２３００）（リクエスト情報記憶ステップ）。このＧＥＴリクエスト３４のリクエストラインの情報は、図９のリクエスト情報ＧＥＴ６１としてリクエスト保持部１１に保持される。
次に、データ解析部７は、受信したパケットに含まれているメソッドをチェックし（ステップＳ８００）、ＰＯＳＴでないため、メッセージヘッダ内のリクエストライン５１、リクエストヘッダフィールド５２、汎用ヘッダフィールド５３、ヘッダフィールド５４、その他ヘッダ５５からメッセージボディのサイズやデータ送信フォーマットの情報を取得する（ステップＳ１９００）。ここで取得した情報は、先に説明したデータの区切りの検索に使用される。
次に、Ｃにジャンプし、終端検知部１０が、ＧＥＴリクエスト３４のデータの区切りを検索し（ステップＳ１４００）、ボディ５７の終端を識別後、パケットを廃棄する（ステップＳ２００）。
【００４０】
次に、情報漏えいパケット抽出装置１はＧＥＴリクエスト４５を受信するが、ＧＥＴリクエスト４５は、メッセージの先頭となり、ＧＥＴリクエスト３４と同様の処理が行われ、リクエスト保持部１１にリクエスト情報ＧＥＴ６２が保持される。
次のＧＥＴリクエスト４６の処理も同様であり、ステップＳ２３００において、リクエスト保持部１１にリクエスト情報ＧＥＴ６３が保持される。
【００４１】
次に受信したＰＯＳＴリクエスト４０に対して、メソッドがＰＯＳＴであるかをチェックするまでの処理は先のＧＥＴリクエスト３４、４５、４６と同様である（ステップＳ１０１〜Ｓ１０４、Ｓ５００、Ｓ３００、Ｓ６００、Ｓ１３００、Ｓ５００、Ｂ、Ｓ７００、Ｓ２３００を実施）。なお、このＰＯＳＴリクエスト４０に対しては、リクエスト情報ＰＯＳＴ６４がリクエスト保持部１１に保持される。
次に、データ解析部７が、ＰＯＳＴリクエスト４０のメソッドがＰＯＳＴであるか否かを解析し（ステップＳ８００）、メソッド＝＝ＰＯＳＴのため、実施の形態１と同様に、データ解析部７は、コネクション情報記憶部８に記憶されているコネクション情報を用いてコネクション設定パケット（ＳＹＮ４２、ＳＹＮ／ＡＣＫ４３、ＡＣＫ４４）を生成する（ステップＳ８１０）。
そして、送信制御部５がコネクション設定パケットを送信し（ステップＳ９００）（送信ステップ）、次に、受信したＰＯＳＴリクエスト４０を送信し（ステップＳ１０００）（送信ステップ）、データ解析部７が、状態をＰＯＳＴリクエスト検出済みに設定する（ステップＳ１１００）。
【００４２】
ここからは、送信したリクエストに対するレスポンスを受信した場合の動作を説明する。
図１２のようにデータが複数のパケットに分割されていても問題はないが、ここでは、説明を明確にするため、リクエストの場合と同様にレスポンスは１つのパケットに格納されている場合を取り上げる。
受信制御部４がＧＥＴレスポンス３５を受信したら、ＴＣＰ−ＳＰＩ部６が、ＴＣＰステートをチェックし（ステップＳ１０４）、次に、ＴＣＰ−ＳＰＩ部６は通信方向を確認する（ステップＳ５００）。
ＧＥＴレスポンス３５はインターネット２５から社内ネットワーク２４宛であり、ＴＣＰ―ＳＰＩ部６は、次にＰＯＳＴレスポンス検出済みかどうかチェックする（ステップＳ１２００）。この時点では、ＰＯＳＴリクエストは検出済みであるが、ＰＯＳＴレスポンスは未検出のため、ＴＣＰ−ＳＰＩ部６は、続いてセグメントサイズをチェックし（ステップＳ６００）、サイズ！＝０ため、次に、データ解析部７が、メッセージの先頭をチェックする（ステップＳ１３００）。
ＧＥＴレスポンス３５は、メッセージの先頭から図８の形式で受信するため、ＴＣＰ−ＳＰＩ部６が、次に通信方向を確認し（ステップＳ５００）、インターネット２５から社内ネットワーク２４宛なので、Ａの処理を実施する。
【００４３】
Ａでは、データ解析部７が、ＨＴＴＰヘッダを解析し（ステップＳ７００）、次にステータスライン５８の情報と先にリクエスト保持部１１に保持したリクエスト情報の対応を確認し（ステップＳ１７００）、データ解析部７は、このレスポンスがリクエスト情報ＧＥＴ６１に対するものであることを識別する。
このため、ＰＯＳＴに対するレスポンスではないため（ステップＳ１８００でＮｏ）、データ解析部７は、メッセージヘッダ内のステータスライン５８、レスポンスヘッダフィールド５９、汎用ヘッダフィールド５３、ヘッダフィールド５４、その他ヘッダ５５からメッセージボディのサイズやデータ送信フォーマットの情報を取得する（ステップＳ１９００）。そして、データ解析部７は、リクエスト保持部１１に保持されているリクエスト情報の先頭、つまりリクエスト情報ＧＥＴ６１を削除する（ステップＳ２０００）。
なお、ステップＳ１９００で取得したサイズ及びフォーマット情報は、レスポンスデータの区切りの検索に使用される。
次にＣにジャンプし、終端検知部１０が、ＧＥＴレスポンス３５のデータの区切りを検索し（ステップＳ１４００）、ボディ５７の終端を識別後、パケットを廃棄する（ステップＳ２００）。
次に受信するＧＥＴレスポンス４８も、メッセージの先頭となり、ＧＥＴレスポンス３５と同様の処理が行われ、リクエスト保持部１１からリクエスト情報ＧＥＴ６２を削除し、また、ＧＥＴレスポンス４８も廃棄される。更に、ＧＥＴレスポンス４９の処理も同様であり、リクエスト情報ＧＥＴ６３を削除するとともに、ＧＥＴレスポンス４９も廃棄する。
【００４４】
ＰＯＳＴレスポンス４１に対して、リクエストとレスポンスの対応関係を確認するまでの処理はＧＥＴレスポンス３５、４８、４９と同様である（ステップＳ１０１〜Ｓ１０４、Ｓ５００、Ｓ１２００、Ｓ６００、Ｓ１３００、Ｓ５００、Ａ、Ｓ７００、Ｓ１７００を実施）。
リクエスト保持部１１が保持しているリクエスト情報はリクエスト情報ＰＯＳＴ６４であるため、データ解析部７は、このレスポンスがＰＯＳＴリクエスト４０に対するレスポンスであることを検知し（ステップＳ１８００でＹｅｓ）、受信したＰＯＳＴレスポンス４１を記録対象パケットとし、送信制御部５が当該ＰＯＳＴレスポンス４１を通信記録装置２２に送信する（ステップＳ２２００）（送信ステップ）。
その後、データ解析部７は、状態をＰＯＳＴレスポンス検出済みに設定する（ステップＳ２１００）。
【００４５】
以降、受信するパケットであるＧＥＴレスポンス５０及びＦＩＮ３６、ＦＩＮ／ＡＣＫ３７、ＦＩＮ／ＡＣＫ３８、ＡＣＫ３９は、ＰＯＳＴレスポンス検出済み／ＰＯＳＴリクエスト検出済みであるため（ステップＳ１２００、Ｓ３００）、全て記録対象パケットとなり、コネクションが切断されるまで通信記録装置２２に転送される（ステップＳ４００）。
また、コネクション情報記憶部８は、コネクション切断時には、登録しているコネクション情報を削除する。
【００４６】
なお、図１０及び図１１において、Ｓ１０１は受信ステップであり、Ｓ１０２はコネクション設定パケット抽出ステップであり、Ｓ１０３はコネクション情報記憶ステップである。また、Ｓ４００、Ｓ９００、Ｓ１０００及びＳ２２００は送信ステップであり、Ｓ１４００、Ｓ１５００及びＳ１６００は終端検知ステップであり、Ｓ２３００はリクエスト情報記憶ステップである。それ以外のステップは、記録対象パケット指定ステップである。
【００４７】
以上のように、情報漏えいパケット抽出装置は、受信したリクエスト情報を保持し、レスポンス受信時に対応関係をチェックすることにより、ＨＴＴＰ１．１で規定されるパイプランを用いてメッセージが送信された場合にも正しく情報漏えいの可能性のあるパケットを転送することが可能となる。
【００４８】
つまり、ＰＯＳＴリクエストパケット等の情報漏えいの可能性の高いリクエストパケット（条件合致リクエストパケット）を記録対象パケットとして指定した後に、前記情報漏えいの可能性の高いリクエストパケットに先行するリクエストパケットに対するレスポンスパケットを受信した場合であっても、当該レスポンスパケットを廃棄することが可能となるとともに、記録対象パケットとして指定した情報漏えいの可能性の高いリクエストパケットに対するレスポンスパケット及び当該レスポンスパケットに後続する後続パケットを確実に記録することができる。
そして、このような機能を実現するために、本実施の形態に係る情報漏えいパケット抽出装置１のデータ解析部７は、リクエスト保持部１１（リクエスト情報記憶部）に記憶されているリクエストラインの情報と、受信制御部４により受信されたレスポンスパケットに含まれているステータスラインの情報とを比較して、当該レスポンスパケットがいずれのリクエストパケットに対するレスポンスパケットであるのかを判断している。
【００４９】
また、リクエスト、メッセージのサイズ、送信フォーマット情報を取得し、ボディの区切りを識別するため、メッセージボディが大きく、複数のパケットに分割された場合にも正しく情報漏えいの可能性のあるパケットを転送することが可能となる。
つまり、本実施の形態では、一つのデータを分割して格納している複数のパケットが受信された場合に、データ解析部７が複数のパケットにおける当該データの先端の位置を検知し、また、終端検知部１０が複数のパケットにおける当該データの終端の位置を検知し、更に、データ解析部７は、検知された当該データの先端の位置及び終端検知部１０により検知された当該データの終端の位置までの少なくともいずれかを利用して、前記複数のパケットに対する廃棄又は前記記録対象パケットとしての指定を行う。
【００５０】
本実施の形態では、アプリケーションのデータが複数のメッセージに分割されて送信された場合にメッセージの区切りを検出する終端検知部及びリクエストの情報を保持するリクエスト保持部を有し、情報漏えいの可能性のあるメソッドのリクエストを検出した場合には、以降、社内ネットワークからインターネット宛のパケットを通信記録装置に転送し、レスポンスを受信した際には保持しているリクエスト情報とレスポンスの対応関係を確認し、情報漏えいの可能性のあるメソッドのリクエストに対するレスポンスの場合には、以降のインターネットから社内ネットワーク宛のパケットを通信記録装置に転送する情報漏えいパケット抽出装置について説明した。
【００５１】
実施の形態３．
本実施の形態では、コネクション設定パケットに対して、情報漏えいの可能性の高いパケット（条件合致パケット）のシーケンス番号（ＳＥＱ番号）及び応答確認番号（ＡＣＫ番号）と連結関係のあるシーケンス番号（ＳＥＱ番号）及び応答確認番号（ＡＣＫ番号）を設定する例について説明する。
【００５２】
図１３は、実施の形態３における情報漏えいパケット抽出装置１の構成図である。
図１３では、図７と比較して、ＳＥＱ，ＡＣＫ番号変更部１２が追加されている。
ＳＥＱ，ＡＣＫ番号変更部１２は、データ解析部７（コネクション設定パケット生成部）により生成される抽出対象コネクションのコネクション設定パケットに対して、情報漏えいの可能性の高いパケット（条件合致パケット）に含まれるシーケンス番号（ＳＥＱ番号）及び応答確認番号（ＡＣＫ番号）と連結関係のあるシーケンス番号（ＳＥＱ番号）及び応答確認番号（ＡＣＫ番号）を設定する。
また、ＳＥＱ，ＡＣＫ番号変更部１２は、データ解析部７（記録対象パケット指定部）により記録対象パケットとして指定された後続パケット（情報漏えいの可能性の高いパケットの後続パケット）の各々に含まれるシーケンス番号（ＳＥＱ番号）及び応答確認番号（ＡＣＫ番号）を、記録用のシーケンス番号（ＳＥＱ番号）及び記録用の応答確認番号（ＡＣＫ番号）として、情報漏えいの可能性の高いパケット（条件合致パケット）に含まれるシーケンス番号（ＳＥＱ番号）及び応答確認番号（ＡＣＫ番号）と連結関係のあるシーケンス番号（ＳＥＱ番号）及び応答確認番号（ＡＣＫ番号）に変更する。
ＳＥＱ，ＡＣＫ番号変更部１２は、番号設定部の例である。
【００５３】
図１４は、実施の形態３の通信シーケンス図であり、各パケットのＳＥＱ番号、ＡＣＫ番号に着目したシーケンス図である。
図１５及び図１６は、実施の形態３に係る情報漏えいパケット抽出装置１のフローチャートである。
図１７は、各パケットに付与されるＴＣＰヘッダの構成図である。
システム構成は、実施の形態１の図２と同様である。
【００５４】
図１３、１４、１５、１６、１７を用いて本実施の形態に係る情報漏えいパケット抽出装置１の動作例（ネットワーク監視方法）を説明する。
プロキシサーバ２６−ＷＷＷサーバ２５間では、コネクション確立のため、ＳＹＮ３１、ＳＹＮ／ＡＣＫ３２、ＡＣＫ３３を送信する。
各パケットには図１７のようなＴＣＰヘッダが付与されている。
図１４の例ではＳＹＮ３１のシーケンス番号（ＳＥＱ）及びＡＣＫ番号（ＡＣＫ）は０、ＳＹＮ／ＡＣＫ３２のＳＥＱは０、ＡＣＫは１、ＡＣＫ３３のＳＥＱは１、ＡＣＫは１としている。
コネクション確立後、プロキシサーバ２６は、ＳＥＱ：１、ＡＣＫ：１のＧＥＴリクエスト３４（１００バイト）を送信している。これらのパケットに対する情報漏えいパケット抽出装置１の処理は実施の形態２と同様である。
【００５５】
次に受信したＰＯＳＴリクエスト４０（ＳＥＱ：１０１、ＡＣＫ：１、２００バイト）に対して、データ解析部７が、メソッドがＰＯＳＴであるかをチェックする処理までの処理は実施の形態２と同様である（ステップＳ１０１〜Ｓ１０４、Ｓ５００、Ｓ３００、Ｓ６００、Ｓ１３００、Ｓ５００、Ｂ、Ｓ７００、Ｓ２３００、Ｓ８００を実施）。
ここではメソッド＝＝ＰＯＳＴとなり、ＳＥＱ，ＡＣＫ番号変更部１２が、ＰＯＳＴリクエスト４０のＳＥＱ番号（＝１０１）をＰＯＳＴ−ＳＥＱとして、ＡＣＫ番号（＝１）をＰＯＳＴ−ＡＣＫとして保持する（ステップＳ２５００）（番号設定ステップ）。
そして、ＳＥＱ，ＡＣＫ番号変更部１２は、送信するコネクション設定パケット（ＳＹＮ４２、ＳＹＮ／ＡＣＫ４３、ＡＣＫ４４）に対するシーケンス番号、ＡＣＫ番号を以下のように設定する。
【００５６】
ＳＥＱ，ＡＣＫ番号変更部１２は、ＳＹＮ４２について、ＳＥＱ番号は、ＰＯＳＴ−ＳＥＱ  −  １（図１４の例では、１０１−１＝１００を設定）を、ＡＣＫ番号は、ＰＯＳＴ−ＡＣＫ  −  １（図１４の例では、１−１＝０）を設定する。
また、ＳＥＱ，ＡＣＫ番号変更部１２は、ＳＹＮ／ＡＣＫ４３について、ＳＥＱ番号は、ＰＯＳＴ−ＡＣＫ  −  １（図１４の例では、１−１＝０）を、ＡＣＫ番号は、ＰＯＳＴ−ＳＥＱ（図１４の例では、１０１）を設定する。
また、ＳＥＱ，ＡＣＫ番号変更部１２は、ＡＣＫ４４について、ＳＥＱ番号はＰＯＳＴ−ＳＥＱ（図１４の例では、１０１）を、ＡＣＫ番号はＰＯＳＴ−ＡＣＫ（図１４の例では、１）を設定する。
データ解析部７では、以上のように設定されたＳＥＱ番号及びＡＣＫ番号を含むコネクション設定パケット（ＳＹＮ４２、ＳＹＮ／ＡＣＫ４３、ＡＣＫ４４）を生成する（ステップＳ８１０）
そして、送信制御部５が、コネクション設定パケットを通信記録装置２２に送信する（ステップＳ９００）（送信ステップ）。
【００５７】
このように、ＳＥＱ，ＡＣＫ番号変更部１２（番号設定部）は、ＰＯＳＴリクエスト４０に含まれるシーケンス番号及び応答確認番号と連結関係のあるシーケンス番号及び応答確認番号として、ＰＯＳＴリクエスト４０に含まれるシーケンス番号から１を減じた値をＳＹＮパケット４２のシーケンス番号とし、ＰＯＳＴリクエスト４０に含まれる応答確認番号から１を減じた値をＳＹＮパケット４２の応答確認番号とする。また、ＳＥＱ，ＡＣＫ番号変更部１２は、ＳＹＮパケット４２の応答確認番号と同じ値をＳＹＮ／ＡＣＫパケット４３のシーケンス番号とし、ＳＹＮパケット４２のシーケンス番号に１を足した値をＳＹＮ／ＡＣＫパケット４３の応答確認番号とする。
また、ＳＥＱ，ＡＣＫ番号変更部１２は、ＳＹＮ／ＡＣＫパケット４３の応答確認番号と同じ値をＡＣＫパケット４４のシーケンス番号とし、ＳＹＮ／ＡＣＫパケット４３のシーケンス番号に１を足した値をＡＣＫパケット４４の応答確認番号とする。
【００５８】
次に、送信制御部５は、受信したＰＯＳＴリクエスト４０を通信記録装置２２に送信し（ステップＳ１０００）（送信ステップ）、データ解析部７が、状態をＰＯＳＴリクエスト検出済みに設定する（ステップＳ１１００）。
ＰＯＳＴリクエストに先行するＧＥＴリクエスト３４に対するレスポンスパケットであるＧＥＴレスポンス３５（ＳＥＱ：１、ＡＣＫ：３０１、４００バイト）に対する処理は、実施の形態２と同様である。つまり、ＧＥＴレスポンス３５は廃棄する（ステップＳ２００）。また、リクエスト保持部１１に保持されているリクエスト情報ＧＥＴ６１も削除される（ステップＳ２０００）。
【００５９】
ＰＯＳＴレスポンス４１（ＳＥＱ：４０１、ＡＣＫ：３０１、５００バイト）に対して、データ解析部７が、リクエストとレスポンスの対応関係を確認するまでの処理は実施の形態２と同様である（ステップＳ１０１〜Ｓ１０４、Ｓ５００、Ｓ１２００、Ｓ６００、Ｓ１３００、Ｓ５００、Ａ、Ｓ７００、Ｓ１７００、Ｓ１８００を実施）。
次に、ＳＥＱ，ＡＣＫ番号変更部１２は、受信したＰＯＳＴレスポンス４１のＳＥＱ番号と先に保存したＰＯＳＴ−ＡＣＫ（＝１）との差分を計算し、ＰＯＳＴ差分として保存する（図１４の例では、ＰＯＳＴ差分：４０１−１＝４００となる）。そして、ＰＯＳＴレスポンス４１のＳＥＱ番号を以下のように変更する（ステップＳ２４００）。
ＳＥＱ番号＝ＳＥＱ−ＰＯＳＴ差分（４０１−４００＝１）
一方、ＡＣＫ番号は変更しない。
この結果、通信記録装置２２に送信するＰＯＳＴレスポンス４１は、ＳＥＱ：１、ＡＣＫ：３０１となる。
その後、送信制御部５が、ＳＥＱ番号変更後のＰＯＳＴレスポンス４１を通信記録装置２２に送信し（ステップＳ２２００）（送信ステップ）、データ解析部７が、状態をＰＯＳＴレスポンス検出済みに設定する（ステップＳ２１００）。
【００６０】
以降、受信したパケットは、ステップＳ１２００及びステップＳ３００においてＰＯＳＴレスポンス検出済み／ＰＯＳＴリクエスト検出済みとなる。
ここで、ＳＥＱ，ＡＣＫ番号変更部１２が、受信したパケットのＳＥＱ番号、ＡＣＫ番号を以下のように変更し（ステップＳ２４００）（番号設定ステップ）、送信制御部５は、ＳＥＱ番号、ＡＣＫ番号が変更されたパケットを通信記録装置２２に送信する（ステップＳ４００）（送信ステップ）。
インターネットから社内宛の受信パケット：ＳＥＱ＝ＳＥＱ−ＰＯＳＴ差分、ＡＣＫはそのまま
社内からインターネット向けの送信パケット：ＡＣＫ＝ＡＣＫ−ＰＯＳＴ差分、ＳＥＱはそのまま
【００６１】
このように、ＳＥＱ，ＡＣＫ番号変更部１２は、ＰＯＳＴリクエスト４０に対するレスポンスパケット（ＰＯＳＴレスポンス４１）に含まれるシーケンス番号からＰＯＳＴリクエスト４０に含まれる応答確認番号を差し引いた差分値（ＰＯＳＴ差分）を導出する。
そして、ＳＥＱ，ＡＣＫ番号変更部１２は、ＰＯＳＴリクエスト４０に含まれるシーケンス番号及び応答確認番号と連結関係のあるシーケンス番号及び応答確認番号として、ＰＯＳＴレスポンス４１及び後続の受信パケット（インターネット２５から社内ネットワーク２４向けのパケット）に対しては、応答確認番号は変更せずに、シーケンス番号を前記差分値（ＰＯＳＴ差分）を差し引いた値に変更し、一方、後続の送信パケット（社内ネットワーク２４からインターネット２５向けのパケット）に対しては、シーケンス番号は変更せずに、応答確認番号を前記差分値（ＰＯＳＴ差分）を減じた値に変更する。
【００６２】
以上のように、本実施の形態に係る情報漏えいパケット抽出装置１は、ＰＯＳＴリクエスト受信時にＳＥＱ，ＡＣＫ番号を保持し、ＰＯＳＴレスポンス受信時にＰＯＳＴ差分を求め、以降転送するパケットのＳＥＱもしくはＡＣＫから差をとることにより、パイプラインでＧＥＴ、ＰＯＳＴが混在した場合にＰＯＳＴのみを抽出し、通信記録装置２２に送信した際に、通信記録装置が受信するパケットのＳＥＱ，ＡＣＫ番号の連続性を保つことができる。
【００６３】
以上、本実施の形態では、ＴＣＰヘッダのシーケンス番号、ＡＣＫ番号を変更するＳＥＱ，ＡＣＫ番号変更部を有し、受信したデータのメソッドを解析し、情報漏えいの可能性のあるメソッドの場合にはデータからシーケンス番号、ＡＣＫ番号を取得し、取得した番号の情報を基にしてコネクション確立情報を生成して通信記録装置に送信し、情報漏えいの可能性のあるメソッドのリクエストに対するレスポンスを受信した場合には先に取得しているＡＣＫ番号とレスポンスのシーケンス番号の差を計算し、この値をシーケンス番号に設定して、レスポンスを送信し、以降のパケット転送においては、社内ネットワークからインターネット宛のパケットではＡＣＫ番号から先の差の値を引いた値をＡＣＫ番号に設定し、インターネットから社内ネットワーク宛のパケットではシーケンス番号から先の差の値を引いた値をシーケンス番号に設定して通信記録装置に送信する情報漏えいパケット抽出装置について説明した。
【００６４】
なお、実施の形態１〜３では、メソッドがＰＯＳＴの場合の例を示したが、ＰＯＳＴと同様に情報漏えいの可能性があるＰＵＴの場合にも適用できる。
また、実施の形態１〜３では、ＷＷＷアクセスを例にしたが、これに限るものではなく、情報漏えいの可能性のある他の通信形態にも適用可能である。
【００６５】
また、実施の形態１〜３では、情報漏えいパケット抽出装置１と通信記録装置２２とを別装置とし、情報漏えいパケット抽出装置１から通信記録装置２２に記録対象パケットを送信するようにしていたが、情報漏えいパケット抽出装置１単体で通信記録装置２２の機能を包含し、内部にて記録対象パケットを記録するようにしてもよい。
【図面の簡単な説明】
【００６６】
【図１】実施の形態１に係る情報漏えいパケット抽出装置の構成例を示す図。
【図２】実施の形態１に係るシステム構成例を示す図。
【図３】実施の形態１に係る通信シーケンスの例を示す図。
【図４】実施の形態１に係る通信シーケンスの例を示す図。
【図５】ＨＴＴＰリクエストメッセージの構造を示す図。
【図６】実施の形態１に係る情報漏えいパケット抽出装置の動作例を示すフローチャート図。
【図７】実施の形態２に係る情報漏えいパケット抽出装置の構成例を示す図。
【図８】ＨＴＴＰレスポンスメッセージの構造を示す図。
【図９】実施の形態２に係る通信シーケンスの例を示す図。
【図１０】実施の形態２に係る情報漏えいパケット抽出装置の動作例を示すフローチャート図。
【図１１】実施の形態２に係る情報漏えいパケット抽出装置の動作例を示すフローチャート図。
【図１２】メッセージが複数パケットに分割された場合の例を示す図。
【図１３】実施の形態３に係る情報漏えいパケット抽出装置の構成例を示す図。
【図１４】実施の形態３に係る通信シーケンスの例を示す図。
【図１５】実施の形態３に係る情報漏えいパケット抽出装置の動作例を示すフローチャート図。
【図１６】実施の形態１に係る情報漏えいパケット抽出装置の動作例を示すフローチャート図。
【図１７】パケットの構成図。
【図１８】従来システムの構成例を示す図。
【図１９】実施の形態１〜３に示す情報漏えいパケット抽出装置のハードウェア構成例を示す図。
【符号の説明】
【００６７】
１  情報漏えいパケット抽出装置、２  入力ポート、３  出力ポート、４  受信制御部、５  送信制御部、６  ＴＣＰ−ＳＰＩ部、７  データ解析部、８  コネクション情報記憶部、１０  終端検知部、１１  リクエスト保持部、１２  ＳＥＱ，ＡＣＫ番号変更部、２１  端末、２２  通信記録装置、２３  ＷＷＷサーバ、２４  社内ネットワーク、２５  インターネット、２６  プロキシサーバ、２７  ファイアウォール、２８  スイッチ、１０１  ＬＡＮ、１０２  ＬＡＮ。
【図１】
2008085694.tif 000003
【図２】
2008085694.tif 000004
【図３】
2008085694.tif 000005
【図４】
2008085694.tif 000006
【図５】
2008085694.tif 000007
【図６】
2008085694.tif 000008
【図７】
2008085694.tif 000009
【図８】
2008085694.tif 000010
【図９】
2008085694.tif 000011
【図１０】
2008085694.tif 000012
【図１１】
2008085694.tif 000013
【図１２】
2008085694.tif 000014
【図１３】
2008085694.tif 000015
【図１４】
2008085694.tif 000016
【図１５】
2008085694.tif 000017
【図１６】
2008085694.tif 000018
【図１７】
2008085694.tif 000019
【図１８】
2008085694.tif 000020
【図１９】
2008085694.tif 000021