(58)【調査した分野】(Int.Cl.,DB名)
前記保存ファイル有無判定部において、過去に受け取って前記ファイル格納部に保存したファイルを特定するための情報として前記アクセス履歴情報テーブルに前記一部の値が設定登録されていたと判定された場合であって、
かつ、前記ファイル更新判定部において、今回受け取った前記応答パケットの前記一部の値が、過去に受け取って前記ファイル格納部に保存したファイルを特定するための情報として前記アクセス履歴情報テーブルに設定登録されている前記一部の値と同一の値であると判定された場合には、
今回受け取った前記応答パケットに含まれているファイルに関して、前記ファイル安全性判定部により前記判定サーバに対して当該ファイルの安全性の問い合わせを行うことを抑止し、
かつ、前記ファイル保存部により、今回受け取った前記応答パケットに含まれているファイルを、前記ファイル格納部に保存し直すことも抑止し、
かつ、前記アクセス履歴情報テーブル設定登録部により、前記判定サーバの前記判定結果と、今回受け取った前記応答パケットの前記一部の値とを、前記アクセス履歴情報テーブルに設定登録し直すことも抑止して、
前記アクセス履歴情報テーブルに既に設定登録されている前記判定サーバの前記判定結果に応じて、前記レスポンス送信部により、今回受け取った前記応答パケットに含まれているファイルの内容を書き換えて、前記要求パケットの送信元の前記端末に対して送信する、
ことを特徴とする請求項1に記載のパケット中継装置。
前記保存ファイル有無判定部において、過去に受け取って前記ファイル格納部に保存したファイルを特定するための情報として前記アクセス履歴情報テーブルに前記一部の値が設定登録されていたと判定された場合であって、
かつ、前記ファイル更新判定部において、今回受け取った前記応答パケットの前記一部の値が、過去に受け取って前記ファイル格納部に保存したファイルを特定するための情報として前記アクセス履歴情報テーブルに設定登録されている前記一部の値と異なっていると判定された場合には、
前記アクセス履歴情報テーブルに前記要求パケットにより取得要求した前記ウェブサーバのファイルを特定する情報と対応付けて設定登録されていた前記一部の値と前記判定サーバの前記判定結果とを、前記アクセス履歴情報テーブル設定登録部により、今回受け取った前記応答パケットの前記一部の値と、今回受け取った前記応答パケットに含まれているファイルに関して前記ファイル安全性判定部において前記判定サーバに対して当該ファイルの安全性の問い合わせを行うことにより前記判定サーバからの応答として得られた前記判定結果と、により更新して設定登録し直し、
かつ、前記ファイル保存部により、今回受け取った前記応答パケットに含まれているファイルにより、過去に受け取って前記ファイル格納部に保存されていたファイルを更新する形で保存し直すとともに、
今回受け取った前記応答パケットに含まれているファイルに関して前記ファイル安全性判定部において前記判定サーバからの応答として得られた当該判定サーバの前記判定結果に応じて、前記レスポンス送信部により、今回受け取った前記応答パケットに含まれているファイルの内容を書き換えて、前記要求パケットの送信元の前記端末に対して送信する、
ことを特徴とする請求項1または2に記載のパケット中継装置。
前記保存ファイル有無判定部において、過去に受け取って前記ファイル格納部に保存したファイルを特定するための情報としては前記アクセス履歴情報テーブルに前記一部の値がまだ設定登録されていなかったと判定された場合には、
前記ファイル安全性判定部において前記判定サーバからの応答として得られた前記判定結果と、今回受け取った前記応答パケットの前記一部の値とを、前記アクセス履歴情報テーブル設定登録部により、前記要求パケットにより取得要求した前記ウェブサーバのファイルを特定する情報と対応付けて、前記アクセス履歴情報テーブルに設定登録し、
かつ、前記ファイル保存部により、今回受け取った前記応答パケットに含まれているファイルを、前記ファイル格納部に保存するとともに、
今回受け取った前記応答パケットに含まれているファイルに関して前記ファイル安全性判定部において前記判定サーバからの応答として得られた当該判定サーバの前記判定結果に応じて、前記レスポンス送信部により、今回受け取った前記応答パケットに含まれているファイルの内容を書き換えて、前記要求パケットの送信元の前記端末に対して送信する、
ことを特徴とする請求項1ないし3のいずれか1つに記載のパケット中継装置。
前記判定サーバの前記判定結果に応じて、前記レスポンス送信部により、今回受け取った前記応答パケットに含まれているファイルの内容を書き換えて、前記要求パケットの送信元の前記端末に対して送信する動作に関し、
前記判定結果が、危険なファイルであるとの判定結果であった場合には、今回受け取った前記応答パケットに含まれているファイルの内容を、危険を除去するように書き換えてから、前記レスポンス送信部により、前記要求パケットの送信元の前記端末に対して送信し、
一方、前記判定結果が、安全なファイルであるとの判定結果であった場合には、今回受け取った前記応答パケットに含まれているファイルの内容を書き換えることなく、そのまま、前記レスポンス送信部により、前記要求パケットの送信元の前記端末に対して送信する、
ことを特徴とする請求項1ないし4のいずれか1つに記載のパケット中継装置。
前記アクセス履歴情報テーブルに設定登録される前記応答パケットの前記一部の値として、最新のファイル更新日時を設定するLast-Modifiedフィールドの値、該ファイルを識別する識別子を設定するEtagフィールドの値、該ファイルのファイルサイズを設定するContent-Lengthフィールドの値のうち、いずれか1ないし複数のフィールドの値を用いる、
ことを特徴とする請求項1ないし5のいずれか1つに記載のパケット中継装置。
前記ファイル保存部により、前記応答パケットに含まれているファイルを前記ファイル格納部に保存する動作として、前記ウェブサーバ上の1つのファイルに関して、1ないし複数のファイルを前記ファイル格納部に保存する場合、
前記ファイル格納部に保存される各ファイルそれぞれを特定するための情報として、前記ファイル格納部に保存されるファイルの個数に応じて、前記アクセス履歴情報テーブルに該応答パケットの前記一部の値を、複数個、設定登録する、
ことを特徴とする請求項1ないし6のいずれか1つに記載のパケット中継装置。
前記保存ファイル有無判定ステップにおいて、過去に受け取って前記ファイル格納部に保存したファイルを特定するための情報として前記アクセス履歴情報テーブルに前記一部の値が設定登録されていたと判定された場合であって、
かつ、前記ファイル更新判定ステップにおいて、今回受け取った前記応答パケットの前記一部の値が、過去に受け取って前記ファイル格納部に保存したファイルを特定するための情報として前記アクセス履歴情報テーブルに設定登録されている前記一部の値と同一の値であると判定された場合には、
今回受け取った前記応答パケットに含まれているファイルに関して、前記ファイル安全性判定ステップにより前記判定サーバに対して当該ファイルの安全性の問い合わせを行うことを抑止し、
かつ、前記ファイル保存ステップにより、今回受け取った前記応答パケットに含まれているファイルを、前記ファイル格納部に保存し直すことも抑止し、
かつ、前記アクセス履歴情報テーブル設定登録ステップにより、前記判定サーバの前記判定結果と、今回受け取った前記応答パケットの前記一部の値とを、前記アクセス履歴情報テーブルに設定登録し直すことも抑止して、
前記アクセス履歴情報テーブルに既に設定登録されている前記判定サーバの前記判定結果に応じて、前記レスポンス送信ステップにより、今回受け取った前記より、今回受け取った前記応答パケットに含まれているファイルの内容を書き換えて、前記要求パケットの送信元の前記端末に対して送信する、
ことを特徴とする請求項8に記載のパケット中継制御方法。
【発明の概要】
【発明が解決しようとする課題】
【0012】
前述したように、現状では、ノートPC、タブレット、スマートフォン等の端末がウェブブラウザを使用して、インターネットのウェブサーバからファイルを取得する際に、同一のファイルを既に取得済みである場合には、ウェブブラウザのキャッシュとして、端末側に保存しておく。この仕組みにより、インターネットへのアクセスを行うことなく、キャッシュに取得済みの該ファイルを取り出すことができる。
【0013】
しかし、前述したように、ウェブブラウザのキャッシュは、端末ごとに固有に備えているものであり、例えば、同一のパケット中継装置を介してインターネットにアクセスする端末として複数の端末が存在しているような場合には、次のような問題が発生する。すなわち、パケット中継装置配下の複数の端末それぞれが、同一のウェブサーバ上の同一のファイルを取得しようとする場合には、各端末それぞれが、該ウェブササーバから同一のファイルを受信してキャッシュとして保存する処理が必要になる。この結果、パケット中継装置の処理負荷のみならずウェブサーバ側の処理負荷も増大してしまうという問題がある。
【0014】
さらには、パケット中継装置が、ウェブサーバのファイルが安全なファイルであるか否かをインターネット上の判定サーバに問い合わせを行うような場合には、次のような課題がある。それは、パケット中継装置が、配下の各端末それぞれに関して、各端末それぞれから該ファイルの取得要求用の「HTTP GETリクエスト」を受け取る都度、パケット中継装置は、該ファイルに関して安全なファイルであるか否かを、判定サーバに対して問い合わせを行うことが必要になる。この問合せは、たとえ、ウェブサーバに対して取得要求を行うファイルが同一のファイルであったとしても、必要となる。
【0015】
ここで、パケット中継装置から判定サーバへの問い合わせ回数を低減するために、判定サーバに対する問い合わせを次のように制御するという対策も考えられる。この対策では、パケット中継装置が、端末から「HTTP GETリクエスト」を受け取る都度ではなく、受け取った「HTTP GETリクエスト」をウェブサーバに送信した結果として、該ウェブサーバから、当該ウェブサーバ上のファイルが要求元の端末にキャッシュされているファイルの内容からは更新されていない旨を示すヘッダ部のみの「HTTP 304 Not Modifiedレスポンス」を受け取った場合には、パケット中継装置は、判定サーバに対する問い合わせを行わないようにする。一方、パケット中継装置が、ウェブサーバからヘッダ部のみならずファイルも含む「HTTP 200 OKレスポンス」を受け取った場合には、判定サーバに対する問い合わせを行うという制御をする。この対策により、パケット中継装置から判定サーバへの問い合わせ回数を低減することが可能である。
【0016】
しかし、ウェブブラウザのキャッシュは、前述したように、各端末ごとに固有に備えている。そこで、パケット中継装置の配下に接続されている端末が複数であり、各端末それぞれが、ウェブサーバ上の同一ファイルを取得しようとする場合には、各端末それぞれが、ウェブサーバから該ファイルを受信することが必要である。このとき、パケット中継装置は、ウェブサーバから各端末それぞれに対する「HTTP 200 OKレスポンス」を受け取る都度、判定サーバへの問い合わせを行うことが必要である。この結果、パケット中継装置の処理負荷のみならず判定サーバ側の処理負荷も増大してしまうという課題を解消することができない。
【0017】
(本開示の目的)
本開示の目的は、かかる課題に鑑み、端末がインターネット上のウェブサーバからファイルを取得し、該端末と該ウェブサーバとの間を接続する際の処理負荷を軽減することが可能なパケット中継装置、パケット中継制御方法およびパケット中継制御プログラムを提供することである。
【課題を解決するための手段】
【0018】
前述の課題を解決するため、本発明によるパケット中継装置、パケット中継制御方法およびパケット中継制御プログラムは、主に、次のような特徴的な構成を採用している。
【0019】
(1)本発明によるパケット中継装置は、
端末とウェブサーバとの間のパケットの中継を行い、
前記端末から受け取った、前記ウェブサーバのファイルを取得要求するための要求パケットを前記ウェブサーバに向けて送信した後、当該ウェブサーバから何らかのパケットが返送されてきた際に、該パケットを分析して、該パケットが、前記端末から取得要求されたファイルを含む応答パケットであることを検知するパケット分析部と、
前記ウェブサーバから受け取った該応答パケットに含まれているファイルを保存するファイル格納部と、該応答パケットに含まれているファイルを特定するための情報として設定されている該応答パケットのあらかじめ特定した一部の値を抽出して、抽出した前記一部の値を、前記ファイル格納部に保存した該ファイルを特定するための情報として前記要求パケットにより取得要求した前記ウェブサーバのファイルを特定する情報と対応付けて、過去に受け取って前記ファイル格納部に保存したファイルの履歴情報として設定登録するアクセス履歴情報テーブルと、を備えた記憶部と、
前記アクセス履歴情報テーブルに前記応答パケットの前記一部の値が、過去に受け取って前記ファイル格納部に保存した前記ファイルを特定するための情報として、設定登録されているか否かを判別する保存ファイル有無判定部と、
前記ウェブサーバから前記応答パケットを受け取る都度今回受け取った前記応答パケットの前記一部の値と、過去に受け取って前記ファイル格納部に保存したファイルを特定するための情報として前記アクセス履歴情報テーブルに設定登録されている前記一部の値とを比較して、同一の値であるか否かを判定するファイル更新判定部と、
前記ウェブサーバから前記応答パケットを受け取った場合、前記応答パケットの前記一部と、前記アクセス履歴情報テーブルに設定登録されている前記一部と、の比較の結果に基づいて、今回受け取った前記応答パケットに含まれているファイルが、セキュリティ上安全なファイルであるかあるいは危険なファイルであるかを判定する機能を有する判定サーバに対して問い合わせを行い、該判定サーバからの応答として該ファイルのセキュリティ上の安全性に関する判定結果を取得するファイル安全性判定部と、
前記判定サーバからの応答として得られた前記判定結果と、今回受け取った前記応答パケットの前記一部の値とを、前記要求パケットにより取得要求した前記ウェブサーバのファイルを特定する情報と対応付けて、前記アクセス履歴情報テーブルに設定登録するアクセス履歴情報テーブル設定登録部と、
今回受け取った前記応答パケットに含まれているファイルを、前記ファイル格納部に保存するファイル保存部と、
前記判定サーバからの応答として得られた前記判定結果に応じて、今回受け取った前記応答パケットに含まれているファイルの内容を書き換えて、前記要求パケットの送信元の前記端末に対して送信するレスポンス送信部と、
を有することを特徴とする。
【0020】
(2)本発明によるパケット中継制御方法は、
端末とウェブサーバとの間のパケットの中継を行い、
前記端末から受け取った、前記ウェブサーバのファイルを取得要求するための要求パケットを前記ウェブサーバに向けて送信した後、当該ウェブサーバから何らかのパケットが返送されてきた際に、該パケットを分析して、該パケットが、前記端末から取得要求されたファイルを含む応答パケットであることを検知するパケット分析ステップと、
前記ウェブサーバから受け取った該応答パケットに含まれているファイルをファイル格納部に保存し、該応答パケットに含まれているファイルを特定するための情報として設定されている該応答パケットのあらかじめ特定した一部の値を抽出して、抽出した前記一部の値を、前記ファイル格納部に保存した該ファイルを特定するための情報として、前記要求パケットにより取得要求した前記ウェブサーバのファイルを特定する情報と対応付けて、過去に受け取って前記ファイル格納部に保存したファイルの履歴情報としてアクセス履歴情報テーブルに設定登録する記憶ステップと、
前記アクセス履歴情報テーブルに前記応答パケットの前記一部の値が、過去に受け取って前記ファイル格納部に保存した前記ファイルを特定するための情報として、設定登録されているか否かを判別する保存ファイル有無判定ステップと、
前記ウェブサーバから前記応答パケットを受け取る都度今回受け取った前記応答パケットの前記一部の値と、過去に受け取って前記ファイル格納部に保存したファイルを特定するための情報として前記アクセス履歴情報テーブルに設定登録されている前記一部の値とを比較して、同一の値であるか否かを判定するファイル更新判定ステップと、
前記ウェブサーバから前記応答パケットを受け取った場合、前記応答パケットの前記一部と、前記アクセス履歴情報テーブルに設定登録されている前記一部と、の比較の結果に基づいて、今回受け取った前記応答パケットに含まれているファイルが、セキュリティ上安全なファイルであるかあるいは危険なファイルであるかを判定する機能を有する判定サーバに対して問い合わせを行い、該判定サーバからの応答として該ファイルのセキュリティ上の安全性に関する判定結果を取得するファイル安全性判定ステップと、
前記判定サーバからの応答として得られた前記判定結果と、今回受け取った前記応答パケットの前記一部の値とを、前記要求パケットにより取得要求した前記ウェブサーバのファイルを特定する情報と対応付けて、前記アクセス履歴情報テーブルに設定登録するアクセス履歴情報テーブル設定登録ステップと、
今回受け取った前記応答パケットに含まれているファイルを、前記ファイル格納部に保存するファイル保存ステップと、
前記判定サーバからの応答として得られた前記判定結果に応じて、今回受け取った前記応答パケットに含まれているファイルの内容を書き換えて、前記要求パケットの送信元の前記端末に対して送信するレスポンス送信ステップと、
を有していることを特徴とする。
【0021】
(3)本発明によるパケット中継制御プログラムは、
端末とウェブサーバとの間のパケットの中継を行うパケット中継装置におけるパケットの中継制御を、該パケット中継装置内のコンピュータにより実行し、
前記端末から受け取った、前記ウェブサーバのファイルを取得要求するための要求パケットを前記ウェブサーバに向けて送信した後、当該ウェブサーバから何らかのパケットが返送されてきた際に、該パケットを分析して、該パケットが、前記端末から取得要求されたファイルを含む応答パケットであることを検知するパケット分析機能と、
前記ウェブサーバから受け取った該応答パケットに含まれているファイルを保存するファイル格納部と、該応答パケットに含まれているファイルを特定するための情報として設定されている該応答パケットのあらかじめ特定した一部の値を抽出して、抽出した前記一部の値を、前記ファイル格納部に保存した該ファイルを特定するための情報として、前記要求パケットにより取得要求した前記ウェブサーバのファイルを特定する情報と対応付けて、過去に受け取って前記ファイル格納部に保存したファイルの履歴情報としてアクセス履歴情報テーブルに設定登録する記憶機能と、
前記アクセス履歴情報テーブルに前記応答パケットの前記一部の値が、過去に受け取って前記ファイル格納部に保存した前記ファイルを特定するための情報として、設定登録されているか否かを判別する保存ファイル有無判定機能と、
前記ウェブサーバから前記応答パケットを受け取る都度今回受け取った前記応答パケットの前記一部の値と、過去に受け取って前記ファイル格納部に保存したファイルを特定するための情報として前記アクセス履歴情報テーブルに設定登録されている前記一部の値とを比較して、同一の値であるか否かを判定するファイル更新判定機能と、
前記ウェブサーバから前記応答パケットを受け取った場合、前記応答パケットの前記一部と、前記アクセス履歴情報テーブルに設定登録されている前記一部と、の比較の結果に基づいて、今回受け取った前記応答パケットに含まれているファイルが、セキュリティ上安全なファイルであるかあるいは危険なファイルであるかを判定する機能を有する判定サーバに対して問い合わせを行い、該判定サーバからの応答として該ファイルのセキュリティ上の安全性に関する判定結果を取得するファイル安全性判定機能と、
前記判定サーバからの応答として得られた前記判定結果と、今回受け取った前記応答パケットの前記一部の値とを、前記要求パケットにより取得要求した前記ウェブサーバのファイルを特定する情報と対応付けて、前記アクセス履歴情報テーブルに設定登録するアクセス履歴情報テーブル設定登録機能と、
今回受け取った前記応答パケットに含まれているファイルを、前記ファイル格納部に保存するファイル保存機能と、
前記判定サーバからの応答として得られた前記判定結果に応じて、今回受け取った前記応答パケットに含まれているファイルの内容を書き換えて、前記要求パケットの送信元の前記端末に対して送信するレスポンス送信機能と、
を有していることを特徴とする。
【発明の効果】
【0022】
本発明のパケット中継装置、パケット中継制御方法およびパケット中継制御プログラムによれば、主に、以下のような効果を奏することができる。
【0023】
パケットの中継を行うパケット中継装置のLANネットワーク側に接続したいずれかの端末がインターネット上のウェブサーバのファイルを取得しようとして、パケット中継装置に対して該ファイルの取得要求を送ってきた際に、パケット中継装置は、該端末が取得しようとするファイルが当該パケット中継装置内の記憶部に既に格納されているか否かを確認し、格納されていた場合には、さらに、取得しようとするウェブサーバ上の該ファイルが、該記憶部に既に格納されているファイルから更新されているか否かを判定して、判定した結果に応じて、判定サーバに対して該ファイルのセキュリティ上の安全性に関する問い合わせを行うか否かを判断することができるので、判定サーバに問い合わせる回数を低減させることができる。而して、パケット中継装置と判定サーバとの通信量を低減させることができ、パケット中継装置および判定サーバの性能向上を図ることができる。
【発明を実施するための形態】
【0025】
以下、本発明によるパケット中継装置、パケット中継制御方法およびパケット中継制御プログラムの好適な実施形態について添付図を参照して説明する。なお、以下の説明においては、本発明によるパケット中継装置およびパケット中継制御方法について説明するが、かかるパケット中継方法をコンピュータにより実行可能なパケット中継制御プログラムとして実施するようにしても良いし、あるいは、パケット中継制御プログラムをコンピュータにより読み取り可能な記録媒体に記録するようにしても良いことは言うまでもない。また、以下の各図面に付した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではないことも言うまでもない。
【0026】
<本発明の特徴>
本発明の実施形態の説明に先立って、本発明の特徴についてその概要をまず説明する。本発明は、端末とインターネット上のサーバとの間を中継接続するパケット中継装置に関するものであり、ファイル取得に関するHTTP(Hypertext Transfer Protocol)アクセス要求が端末からウェブサーバに対して行われた際に、パケット中継装置は、ウェブサーバから返送されてきたHTTPレスポンスに含まれているファイルと同一のファイルをパケット中継装置内にまだ保存していなかった場合には、該ファイルの内容に関して、判定サーバに問い合わせ、該判定サーバからの応答に応じて、HTTPレスポンスに含まれているファイルの内容を書き換える手段を備えていることを主要な特徴としている。
【0027】
言い換えると、本発明は、以下のような機能を備えていることを主要な特徴としている。すなわち、第1に、端末からインターネット上の任意のウェブサーバのファイルを取得しようとするHTTPアクセス要求(「HTTP GETリクエスト」と称する)が送信されてきて、該ウェブサーバから、取得要求された該ファイルを含む応答(「HTTP 200 OKレスポンス」と称する)が返送されてきた際に、パケット中継装置は、今回受信した該「HTTP 200 OKレスポンス」に含まれているファイルが、当該パケット中継装置内の記憶部に既に保存されているファイルの内容と同一であるか否かを確認する機能を備えている。
【0028】
第2に、パケット中継装置は、当該パケット中継装置内の記憶部にはファイルがまだ保存されていなかった場合、もしくは、保存されていたとしても、記憶部に記憶されているファイルの内容が今回受信した「HTTP 200 OKレスポンス」に含まれているファイルとは異なっていた場合には、今回受信した「HTTP 200 OKレスポンス」に含まれているファイルに関して、安全なファイルであるか否かを判定する機能を有するインターネット上の判定サーバに対して問い合わせを行う機能を備えている。一方、パケット中継装置は、今回受信した「HTTP 200 OKレスポンス」に含まれているファイルが、当該パケット中継装置内の記憶部に既に保存されているファイルの内容と同一であった場合には、判定サーバへの問い合わせを行うことなく、保存されているファイル内容に関する判定サーバからの判定結果として既に記憶している判定内容に応じて、今回受信した「HTTP 200 OKレスポンス」に含まれているファイル内容を書き換えて、取得要求元の端末に対して送信する機能を備えている。
【0029】
第3に、パケット中継装置からの問い合わせを受け取った判定サーバから、該ファイルが‘安全なファイル’であるか‘危険なファイル’であるかを判定した結果を、応答として、問い合わせ元のパケット中継装置に返送してくると、パケット中継装置は、該判定サーバから返送されてきた応答内容を確認し、該応答内容が‘危険なファイル’であると判定している場合には、「HTTP 200 OKレスポンス」に含まれているファイルの内容を、危険を取り除くように書き換えてから、取得要求元の端末に対して送信する機能を備えている。一方、該判定サーバからの応答内容が‘安全なファイル’であると判定している場合には、「HTTP 200 OKレスポンス」に含まれているファイルの内容を、書き換えることなく、そのまま、取得要求元の端末に対して送信する機能を備えている。
【0030】
而して、判定サーバに対して問い合わせを行う回数を低減し、パケット中継装置および判定サーバの処理負荷を軽減することを可能にしている。
【0031】
本発明の主要な特徴をさらに説明すると、次の通りである。パケット中継装置は、当該パケット中継装置に接続しているLANネットワーク上の1ないし複数の端末との間で送受信されるパケットを常に監視している。LANネットワーク上のいずれかの端末から、リクエストメソッドが‘GET’であるHTTPパケット(以下、「HTTP GETリクエスト」と称する)を受け取ると、パケット中継装置は、インターネット上のウェブサーバに対して該「HTTP GETリクエスト」を送信する。
【0032】
インターネット上のウェブサーバから、該「HTTP GETリクエスト」に対する応答として、ステータスコードが‘200’であるHTTPパケット(以降、「HTTP 200 OKレスポンス」と称する)を受信すると、パケット中継装置は、今回受信した「HTTP 200 OKレスポンス」のヘッダ部のあらかじめ特定した一部の値(例えば、最新更新日時を示すLast-Modifiedフィールドの値)と当該パケット中継装置が既に記憶している「HTTP 200 OKレスポンス」のヘッダ部のあらかじめ特定した一部の値とが一致するか否かを確認する。
【0033】
パケット中継装置が、「HTTP 200 OKレスポンス」のヘッダ部の前記一部の値をまだ記憶していない場合、あるいは、既に記憶していたとしても、記憶している「HTTP 200 OKレスポンス」のヘッダ部の前記一部の値が今回受信した「HTTP 200 OKレスポンス」のヘッダ部の前記一部の値とは一致していない場合、パケット中継装置は、今回受信した「HTTP 200 OKレスポンス」のファイル内容について判定サーバに対して問い合わせを行う。
【0034】
しかる後、パケット中継装置は、ファイル内容についての問い合わせ結果として判定サーバから返送されてきた応答内容に応じて、今回受信した「HTTP 200 OKレスポンス」のファイル内容を書き換えて、取得要求元の端末に対して送信するとともに、書き換え前のファイル内容を記憶部に記憶する。さらに、パケット中継装置は、「HTTP 200 OKレスポンス」のヘッダ部の前記一部の値と判定サーバからの応答内容とを、取得要求を行った「HTTP GETリクエスト」に対応付けて、アクセス履歴情報として、記憶部に記憶する。
【0035】
ここで、判定サーバから返送されてきた応答内容が、‘危険なファイル’との判定結果であった場合には、今回受信した「HTTP 200 OKレスポンス」のファイル内容を、危険を除去するように書き換えてから取得要求元の端末に対して送信する。一方、判定サーバから返送されてきた応答内容が、‘安全なファイル’との判定結果であった場合には、今回受信した「HTTP 200 OKレスポンス」のファイル内容を、書き換えることなく、そのまま、取得要求元の端末に対して送信する。
【0036】
なお、記憶している「HTTP 200 OKレスポンス」のヘッダ部の前記一部の値が今回受信した「HTTP 200 OKレスポンス」のヘッダ部の前記一部の値と一致していた場合には、パケット中継装置は、判定サーバに対して問い合わせを行うことなく、既に記憶している判定サーバからの応答内容に応じて、今回受信した「HTTP 200 OKレスポンス」のファイル内容を書き換えて、取得要求元の端末に対して送信する。
【0037】
以上のように動作することにより、判定サーバへの問い合わせ回数を低減することができ、パケット中継装置および判定サーバの処理負荷を軽減することができる。
【0038】
<本発明の実施形態の構成例>
次に、本発明に係るパケット中継装置の接続構成および内部構成について、その一例を、図面を参照しながら詳細に説明する。
図1は、本発明に係るパケット中継装置の接続構成および該パケット中継装置の内部構成の一例を示すネットワーク構成図である。
図1に示すパケット中継装置101は、内部に、本発明に関連する機能部として、LAN(Local Area Network)インタフェース102、WAN(Wide Area Network)インタフェース103、ルーティング部104、パケット中継装置機能部105、および、記憶部106を少なくとも備えた装置である。なお、
図1に示すパケット中継装置101の内部構成については、本発明との関連が少ない機能部に関する記載を省略している。なお、パケット中継装置101は、パケットのルーティング機能を有するルータ(ブロードバンドルータ等)であっても良いし、ルーティング機能を有することなく、端末とインターネット上のウェブサーバとの間のパケットの中継機能を有している中継装置であっても良い。
【0039】
パケット中継装置機能部105は、内部に、パケット分析部105a、アクセス判定機能部105bを少なくとも備えている。さらに、アクセス判定機能部105bは、内部に、保存ファイル有無判定部30、ファイル更新判定部40、ファイル安全性判定部50、アクセス履歴情報テーブル設定登録部60、ファイル保存部70、および、レスポンス送信部80を少なくとも備えている。
【0040】
LANインタフェース102およびWANインタフェース103は、1つ以上のイーサネット(登録商標)インタフェースを有する。LANインタフェース102は、LAN側ネットワーク111に接続され、LAN側ネットワーク111には端末112および端末113が接続されている。端末112は、ウェブブラウザ112aを少なくとも備え、端末113は、ウェブブラウザ113aを少なくとも備えている。ここで、LAN側ネットワーク111は、有線接続に限るものではなく、無線接続であっても良い。
【0041】
また、WANインタフェース103は、インターネット121に接続されるが、インターネット121との接続方法は、特定するものではなく、任意の形態で接続しても構わない。インターネット121には、ウェブサーバ122と判定サーバ123とが少なくても接続されている。なお、インターネット121は、コンピュータネットワーク、電話交換網、移動体通信網、企業内イントラネットなどが相互に接続された通信網であり、パケット中継装置101とウェブサーバ122、判定サーバ123およびインターネット121上の図示していない各種の装置、端末との間を通信接続することができる。
【0042】
パケット中継装置101のLANインタフェース102は、端末112や端末113からLAN側ネットワーク111を介してパケットを受信すると、該パケットをルーティング部104に送信する。また、LANインタフェース102は、ルーティング部104からパケットを受信すると、該パケットを、LAN側ネットワーク111を介して端末112や端末113に送信する。
【0043】
パケット中継装置101のWANインタフェース103は、インターネット121からパケットを受信すると、該パケットをルーティング部104に送信する。また、WANインタフェース103は、ルーティング部104からパケットを受信すると、該パケットをインターネット121に送信する。
【0044】
また、パケット中継装置101のルーティング部104は、WANインタフェース103からパケットを受信すると、受信した該パケットをパケット中継装置101のパケット中継装置機能部105内のパケット分析部105aに送信する。
【0045】
パケット中継装置101のパケット分析部105aは、ルーティング部104から受信した該パケットの内容を分析する機能を有し、該パケットの内容に応じた処理を行う。つまり、パケット分析部105aは、ルーティング部104から受信した該パケットの内容に応じて、該パケットをアクセス判定機能部105bへ転送するか、または、該パケットをルーティング部104を介して該パケットに指定されている宛先に向けて送信する。かくのごとく、パケット分析部105aは、ルーティング部104から受信した該パケットが、ウェブサーバ122が送信したHTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)であった場合に、該パケットが指定している宛先ではなく、まず、該パケットをアクセス判定機能部105bへ転送する。
【0046】
さらに説明すると、パケット分析部105aは、端末112や端末113から受け取った、インターネット121上のウェブサーバ122のファイルを取得要求するための「HTTP GETリクエスト」をインターネット121に向けて送信した後、ウェブサーバ122から何らかのパケットが返送されてきた際に、該パケットを分析して、該パケットが、端末112や端末113から取得要求されたファイルを含む「HTTP 200 OKレスポンス」のパケットであることを検知した場合に、該パケットをアクセス判定機能部105bへまず転送する。
【0047】
パケット中継装置101のアクセス判定機能部105bは、パケット分析部105aから受け取ったHTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)に含まれているファイル内容について、必要に応じて、インターネット121に接続されている判定サーバ123に該ファイルの安全性に関する問い合わせを行い、判定サーバ123からの応答に応じて、受信していたHTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)に含まれるファイル内容を書き換える。
【0048】
ここで、アクセス判定機能部105bの内部に備えている保存ファイル有無判定部30は、記憶部106のアクセス履歴情報テーブル10に「HTTP 200 OKレスポンス」のヘッダ部のあらかじめ特定した一部の値が、過去に受け取って記憶部106のファイル格納部20に保存したファイルを特定するための情報として、設定登録されているか否かを判別する。
【0049】
また、アクセス判定機能部105bの内部に備えているファイル更新判定部40は、ウェブサーバ122から「HTTP 200 OKレスポンス」を受け取る都度今回受け取った「HTTP 200 OKレスポンス」のヘッダ部の前記一部の値と、過去に受け取って記憶部106のファイル格納部20に保存したファイルを特定するための情報として記憶部106のアクセス履歴情報テーブル10に設定登録されている一部の値とを比較して、同一の値であるか否かを判定する。
【0050】
また、アクセス判定機能部105bの内部に備えているファイル安全性判定部50は、ウェブサーバ122から「HTTP 200 OKレスポンス」を受け取る都度今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルが、セキュリティ上安全なファイルであるかあるいは危険なファイルであるかを判定する機能を有するインターネット121上の判定サーバ123に対して問い合わせを行い、該判定サーバ123からの応答として該ファイルのセキュリティ上の安全性に関する判定結果を取得する。ここで、セキュリティ上危険なファイルとは、悪意があるウィルスやフィッシング詐欺等のマルウェアを含むファイルであり、セキュリティ上安全なファイルとはマルウェアを含んでいないファイルのことである。
【0051】
また、アクセス判定機能部105bの内部に備えているアクセス履歴情報テーブル設定登録部60は、ファイル安全性判定部50において判定サーバ123からの応答として得られた前記判定結果と、今回受け取った「HTTP 200 OKレスポンス」のヘッダ部から抽出した前記一部の値とを、「HTTP GETリクエスト」により取得要求したウェブサーバ122のファイルを特定する情報(すなわちウェブサーバ122上のファイルのURL(Uniform Resource Locator)とファイル名)と対応付けて、記憶部106のアクセス履歴情報テーブル10に設定登録する。
【0052】
また、アクセス判定機能部105bの内部に備えているファイル保存部70は、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルを、記憶部106のファイル格納部20に保存する。
【0053】
また、アクセス判定機能部105bの内部に備えているレスポンス送信部80は、判定サーバ123からの応答として得られた判定結果に応じて、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルの内容を書き換えて、「HTTP GETリクエスト」の送信元の端末112や端末113に対して送信する。
【0054】
パケット中継装置101の記憶部106には、インターネット121へのアクセス履歴に関する情報(言い換えるとアクセス判定機能部105bの処理結果に関する情報)を設定登録するアクセス履歴情報テーブル10と、HTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)に含まれているファイルや場合によってはヘッダ部の情報をキャッシュとして保存するファイル格納部20とを少なくとも備えている。つまり、ファイル格納部20は、ウェブサーバ122から受け取った「HTTP 200 OKレスポンス」に含まれているファイル、さらには、場合によっては、該「HTTP 200 OKレスポンス」のヘッダ部の情報を保存する記憶部である。また、アクセス履歴情報テーブル10は、該「HTTP 200 OKレスポンス」に含まれているファイルを特定するための情報として設定されている該「HTTP 200 OKレスポンス」のヘッダ部のあらかじめ特定した一部の値を抽出して、抽出した前記一部の値を、ファイル格納部20に保存した該ファイルを特定するための情報として「HTTP GETリクエスト」により取得要求したウェブサーバ122のファイルを特定する情報(URLやファイル名)と対応付けて、過去に受け取って前記ファイル格納部に保存したファイルの履歴情報として設定登録する記憶部である。
【0055】
インターネット121に接続されている判定サーバ123は、ウェブサーバ122からのHTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)を受け取ったパケット中継装置101から、該HTTPレスポンスパケットに含まれているファイル内容に関する問い合わせを受け取った際に、ウェブサーバ122がパケット中継装置101に対して送信したHTTPレスポンスパケットのファイルが安全なファイルであるか、危険なファイルであるかを判定し、判定した結果を、応答として、問い合わせ元のパケット中継装置101に返送する。なお、判定サーバ123の判定処理に関しては、現状の任意の周知技術を用いて実現すれば良い。
【0056】
また、LAN側ネットワーク111に接続されている端末112および端末113等の各端末が備えているウェブブラウザ112aおよびウェブブラウザ113a等に関しては、現状の任意の周知技術を用いて実現すれば良い。また、インターネット121に接続されているウェブサーバ122に関しても、現状の任意の周知技術を用いて実現すれば良い。
【0057】
<本発明の実施形態の動作の説明>
次に、
図1に示したパケット中継装置101の動作について、LAN側ネットワーク111に接続されている端末112との間、および、インターネット121に接続されているウェブサーバ122や判定サーバ123との間の処理に関する一例を、図面を参照しながら詳細に説明する。
【0058】
(パケット中継装置101内の内部動作例)
まず、
図2のフローチャートを用いて、パケット中継装置101内の動作について説明する。
図2は、
図1に示すパケット中継装置101の内部動作の一例を説明するフローチャートであり、主に、パケット中継装置機能部105のパケット分析部105aとアクセス判定機能部105bとの動作について説明している。
【0059】
図2のフローチャートにおいて、まず、パケット中継装置101のWANインタフェース103は、インターネット121からパケットを受信したか否かを常時監視している。WANインタフェース103がインターネット121からパケットを受信すると、WANインタフェース103が受信した該パケットを、ルーティング部104を経由してパケット中継装置機能部105のパケット分析部105aに転送する。
【0060】
パケット分析部105aは、転送されてきた該パケットの内容を分析し、該パケットがインターネット121に接続されているウェブサーバ122から受信したHTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)であるか否かを判定する(ステップS1)。パケット分析部105aは、WANインタフェース103が受信したパケットがウェブサーバ122からのHTTPレスポンスパケットであると判定した場合には(ステップS1のYes)、受信したウェブサーバ122からのHTTPレスポンスパケットをパケット中継装置機能部105のアクセス判定機能部105bに転送する。
【0061】
一方、WANインタフェース103が受信したパケットがウェブサーバ122からのHTTPレスポンス(すなわち「HTTP 200 OKレスポンス」)ではなかった場合には(ステップS1のNo)、パケット分析部105aは、該パケットのヘッダ部が指示している宛先に該パケットを転送する。また、WANインタフェース103が、インターネット121からパケットを受信していなかった場合(ステップS1のNo)、ステップS1のパケット受信監視動作を繰り返す。
【0062】
アクセス判定機能部105bは、ウェブサーバ122からのHTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)をパケット分析部105aから受け取ると、まず、保存ファイル有無判定部30により、記憶部106のアクセス履歴情報テーブル10内を検索し、アクセス履歴情報テーブル10内の該当する欄にHTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)のヘッダ部のあらかじめ特定した一部の値が設定登録されているか否かを確認する(ステップS2)。
【0063】
記憶部106のアクセス履歴情報テーブル10内の該当する欄に、HTTPレスポンスパケットのヘッダ部の一部の値が記憶されていた場合には(ステップS2のYes)、記憶部106のファイル格納部20にはファイルが既に保存されている状態にある。したがって、次に、ファイル更新判定部40を起動して、今回受け取った該HTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)に含まれているファイルが、記憶部106のファイル格納部20に保存されているファイルよりも更新されているファイルであるか否かを確認する(ステップS3)。すなわち、ファイル更新判定部40において、今回受け取った該HTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)のヘッダ部のあらかじめ特定した一部の値を取り出して、記憶部106のアクセス履歴情報テーブル10内を検索し、今回受け取った該HTTPレスポンスパケットとは異なるヘッダ部の一部の値が記憶されているか否かを確認する。
【0064】
記憶部106のアクセス履歴情報テーブル10内の該当する欄に、今回受け取った該HTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)とは異なるヘッダ部の一部の値が記憶されていた場合には(ステップS3のYes)、今回受け取った該HTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)に含まれているファイルが、記憶部106のファイル格納部20に保存されているファイルよりも更新されているファイルであると判定する。
【0065】
なお、ステップS2において、保存ファイル有無判定部30により、記憶部106のアクセス履歴情報テーブル10内を検索した結果として、記憶部106のアクセス履歴情報テーブル10内の該当する欄にヘッダ部の一部の値が記憶されていなかった場合には(ステップS2のNo)、記憶部106のファイル格納部20にはファイルがまだ保存されていない状態にあり、今回受け取った該HTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)に含まれているファイルが、ウェブサーバ122から初めて受け取った新規のファイルであることを示している。
【0066】
今回受け取った該HTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)に含まれているファイルが、記憶部106のファイル格納部20に保存されているファイルよりも更新されているファイルであると判定した場合(ステップS3のYes)、あるいは、ウェブサーバ122から初めて受け取った新規のファイルであると判定した場合には(ステップS2のNo)、アクセス判定機能部105bは、ファイル安全性判定部50を起動して、今回受け取ったHTTPレスポンスパケットに含まれているファイルが安全なファイルであるか否かを問い合わせるために、判定サーバ123に対する問い合わせパケットを作成する。そして、WANインタフェース103から、インターネット121に接続されている判定サーバ123に対して、HTTPレスポンスパケットのファイル内容に関する問い合わせパケットを送信する(ステップS4)。
【0067】
該問い合わせパケットに対する応答パケットが判定サーバ123から返送されてくると、パケット中継装置101のアクセス判定機能部105b内のファイル安全性判定部50は、WANインタフェース103を介して受け取って、受け取った判定サーバ123からの応答を、アクセス履歴情報テーブル設定登録部60とレスポンス送信部80とに引き継ぐ。
【0068】
アクセス履歴情報テーブル設定登録部60は、受け取った判定サーバ123からの応答と、今回受け取ったHTTPレスポンスパケットのヘッダ部の一部の値とを、「HTTP GETリクエスト」により指定されたウェブサーバ122と取得要求対象のファイルとを特定する情報と対応付ける形で、記憶部106内のアクセス履歴情報テーブル10に記憶する(ステップS5)。そして、レスポンス送信部80を起動して、判定サーバ123からの応答が示す判定結果に応じて、今回受け取ったHTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)に含まれているファイルの内容を、危険を除去するように書き換える(ステップS6)。
【0069】
一方、ステップS3において、記憶部106のアクセス履歴情報テーブル10内に、今回受け取ったHTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)と同一のヘッダ部の一部の値が記憶されていた場合には(ステップS3のNo)、今回受け取った該HTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)に含まれているファイルは、記憶部106のファイル格納部20に保存されているファイルから更新されていなく、記憶部106のファイル格納部20に保存されているファイルと同一のファイルであると判定する。
【0070】
そして、かかる場合には、すなわち、今回受け取ったHTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)に含まれているファイルが更新されていなかった場合には(ステップS3のNo)、記憶部106内のアクセス履歴情報テーブル10に既に設定登録されている当該ファイル内容に関する判定サーバ123の判定結果を読み出すとともに、レスポンス送信部80を起動して、読み出した該判定結果に応じて、HTTPレスポンスパケットのファイル内容を、危険を除去するように書き換える(ステップS6)。
【0071】
しかる後、アクセス判定機能部105bのレスポンス送信部80は、判定サーバ123からの応答が示す判定結果または記憶部106内のアクセス履歴情報テーブル10から読み出した判定結果に応じて書き換えられたファイル(すなわち、ウェブサーバ122から受け取ったままか、あるいは、危険を除去するように書き換えられた状態にあるファイル)を含むHTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)を、ルーティング部104を経由して、LANインタフェース102に転送する。LANインタフェース102は、アクセス判定機能部105bのレスポンス送信部80から転送されてきたHTTPレスポンスパケット(すなわち「HTTP 200 OKレスポンス」)を、LAN側ネットワーク111に接続されているファイル取得要求元の端末112に対して送信する(ステップS7)。
【0072】
(端末112からウェブサーバ122にアクセスする場合の信号の流れ)
次に、
図3、
図4のシーケンスチャートを用いて、パケット中継装置101と端末112、ウェブサーバ122、判定サーバ123との間の信号のやり取りについて説明する。
図3は、
図1に示す端末112がパケット中継装置101を介してインターネット121上のウェブサーバ122にアクセスする場合の信号の流れの一例を示すシーケンスチャートである。ここで、
図3は、パケット中継装置101がウェブサーバ122から今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルが安全なファイルであるか否かを判定サーバ123に対して問い合わせを行う場合における信号の流れの一例を示している。
【0073】
つまり、
図3においては、パケット中継装置101の記憶部106のアクセス履歴情報テーブル10内に「HTTP 200 OKレスポンス」のヘッダ部のあらかじめ特定した一部の値に関する情報をまだ記憶していなく、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルが、パケット中継装置101においてまだ取得したことがない最初のファイルであるか、あるいは、ウェブサーバ122から今回受け取った「HTTP 200 OKレスポンス」のヘッダ部の一部の値が、記憶部106のアクセス履歴情報テーブル10内に記憶しているヘッダ部の一部の値とは異なっていて、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルが、記憶部106のファイル格納部20に保存されているファイルから更新された状態にあると判定される場合における信号の流れの一例を示している。
【0074】
また、
図4は、
図1に示す端末112がパケット中継装置101を介してインターネット121上のウェブサーバ122にアクセスする場合の
図3とは異なる信号の流れの一例を示すシーケンスチャートである。すなわち、
図4は、パケット中継装置101がウェブサーバ122から今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルに関する問い合わせを判定サーバ123に対して行わない場合における信号の流れの一例を示している。
【0075】
つまり、
図4においては、パケット中継装置101の記憶部106のアクセス履歴情報テーブル10内には、今回受け取った「HTTP 200 OKレスポンス」のヘッダ部のあらかじめ特定した一部の値と同じヘッダ部の一部の値に関する情報を記憶していて、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルが、記憶部106のファイル格納部20に保存されているファイルから更新されていない状態にあると判定される場合であって、記憶部106のアクセス履歴情報テーブル10内には、記憶部106のファイル格納部20に保存されているファイルに関して安全なファイルであるか否かを示す判定サーバ123からの応答についても既に設定登録済みになっている場合における信号の流れの一例を示している。
【0076】
なお、
図3、
図4のシーケンスチャートにおいては、端末112からファイル取得要求を示す「HTTP GETリクエスト」をパケット中継装置101が受け取った場合についての信号の流れを示しているが、簡素化を図るため、端末112、パケット中継装置101、ウェブサーバ122、判定サーバ123間における信号の送受信を記載することとし、端末112とパケット中継装置101との間に存在するLAN側ネットワーク111と、パケット中継装置101とウェブサーバ122および判定サーバ123との間に存在するインターネット121と、の間における信号の送受信に関しては記載を省略している。
【0077】
パケット中継装置101は、前述したように、LANインタフェース102において、LAN側ネットワーク111に接続されている端末112とパケットの送受信を行い、WANインタフェース103において、インターネット121上にあるウェブサーバ122および判定サーバ123とパケットの送受信を行っている。そして、パケット中継装置101内のルーティング部104は、ウェブサーバ122や判定サーバ123からインターネット121を経由して送信されてきたパケットを、WANインタフェース103から受信した場合は、受信したパケットをパケット中継装置機能部105(パケット分析部105a、アクセス判定機能部105b)に対して転送する。また、パケット中継装置101内のルーティング部104は、パケット中継装置機能部105(パケット分析部105a、アクセス判定機能部105b)からパケットを受信した場合は、該パケットを指定された宛先に応じてLANインタフェース102、WANインタフェース103に対して送信する。
【0078】
図3、
図4のシーケンスチャートにおいては、パケット中継装置101のLAN側のIPアドレスは‘192.168.100.1/24’であるものと仮定し、端末112のIPアドレスは‘192.168.100.10/24’であるものと仮定する。また、ウェブサーバ122上に存在するファイルのURLは‘HTTP://example.com/test1.txt’であるものと仮定し、かつ、ファイル‘test1.txt’の更新日時は‘Fri,20 Oct 2017 12:26:19 GMT’であるものと仮定する。
【0079】
なお、明示しない限り、端末112からパケット中継装置101を介してウェブサーバ122に送信するHTTPリクエストのメソッドは、‘GET’であり、ウェブサーバ122からパケット中継装置101を介して端末112に返送するHTTPレスポンスパケットのステータスコードは‘200’であるものと仮定する。また、ファイルに関するパケット中継装置101からの問い合わせに対して、判定サーバ123からパケット中継装置101に返送する応答は、‘安全なファイル’か‘危険なファイル’かのいずれかの判定結果であるものと仮定する。
【0080】
図5は、
図1のパケット中継装置101の記憶部106に記憶されている、端末112や端末113からウェブサーバ122へアクセスした履歴を登録するアクセス履歴情報テーブル10の一例を示すテーブルである。
図5には、端末112からウェブサーバ122向けに送信した「HTTP GET リクエスト」において取得要求対象のファイルを特定するための情報(例えばURL、ファイル名)、および、それに対して、ウェブサーバ122から送信されてきた「HTTP 200 OKレスポンス」に含まれているファイルを特定するための情報(すなわちヘッダ部の特定した一部の値、例えば、ファイルの更新日時を示す値)、および、判定サーバ123から受信したファイルの判定結果を示す応答の内容が記憶されている一例を示している。
【0081】
すなわち、
図5のアクセス履歴情報テーブル10は、GET欄11、Host欄12、Last-Modified欄13、判定サーバ応答欄14を含んで構成されている。ここで、「HTTP GET リクエスト」側のGET欄11に、端末112が取得要求したファイルのファイル名例えば‘/test1.txt’を設定登録し、また、「HTTP GET リクエスト」側のHost欄12に、端末112が取得要求先として指定したウェブサーバ122上のファイルの所在場所を示すURL例えば‘example.com’を設定登録する。
【0082】
また、「HTTP 200 OKレスポンス」側のLast-Modified欄13には、「HTTP GET リクエスト」欄のGET欄11、Host欄12が示す「HTTP GET リクエスト」を受信したウェブサーバ122側から返送されてきた「HTTP 200 OKレスポンス」に含まれているファイルの内容例えばファイル名‘test1.txt’のファイル内容を、パケット中継装置101のファイル格納部20に保存した際に、該ファイルを特定する情報として、該「HTTP 200 OKレスポンス」のヘッダ部のあらかじめ特定した一部の値例えば更新日時を示す値を取り出して設定登録する。
図5のLast-Modified欄13には、一例として‘Fri,20 Oct 2017 12:26:19 GMT’の更新日時を設定登録している例を示している。また、判定サーバ応答欄14には、今回受け取った該「HTTP 200 OKレスポンス」に含まれていて、ファイル格納部20に保存されたファイルの内容例えばファイル名‘test1.txt’のファイル内容の安全性に関して、判定サーバ123に対して問い合わせを行って得られた判定サーバ123の判定結果例えば‘安全なファイル’を示す情報を設定登録する。
【0083】
なお、本実施形態において、
図2のフローチャートにて前述した記憶部106のアクセス履歴情報テーブル10に設定登録しているヘッダ部のあらかじめ特定した一部の値とは、前述したように、Last-Modified欄13に設定登録されているファイル名‘test1.txt’のファイル内容の最新更新日時‘Fri,20 Oct 2017 12:26:19 GMT’の値のことであり、また、記憶部106のファイル格納部20に保存されているファイルとは、GET欄11に設定登録されているファイル名‘/test1.txt’のファイルの内容のことである。
【0084】
((パケット中継装置101が判定サーバ123に問い合わせを行う場合の信号の流れ))
次に、記憶部106のファイル格納部20に保存されているファイルを特定するための情報として用いる「HTTP 200 OKレスポンス」におけるヘッダ部のあらかじめ特定した一部の値が記憶部106のアクセス履歴情報テーブル10に設定登録されていなかった場合、あるいは、該ヘッダ部の一部の値が設定登録されているものの、アクセス履歴情報テーブル10に設定登録されていた該ヘッダ部の一部の値が、ウェブサーバ122から今回受け取った「HTTP 200 OKレスポンス」のヘッダ部の一部の値とは異なっている場合であって、判定サーバ123に対して、該「HTTP 200 OKレスポンス」に含まれているファイルの内容の安全性に関する問い合わせを行う場合の信号の流れについて、
図3のシーケンスチャートを用いて、その一例を説明する。
【0085】
図3のシーケンスチャートにおいて、端末112がウェブサーバ122上にあるファイル(URL:example.com、ファイル名:test1.txt)の取得を要求するためのウェブアクセス動作を行うと(シーケンスSeq1)、端末112からパケット中継装置101を介してインターネット121上のウェブサーバ122に対して、取得要求対象となるファイルを特定する情報を含む「HTTP GETリクエスト」が送信される(シーケンスSeq2)。この時、該「HTTP GETリクエスト」を中継するパケット中継装置101においては、アクセス判定機能部105bのアクセス履歴情報テーブル設定登録部60により、該「HTTP GETリクエスト」に含まれている取得要求対象となるファイルの所在場所を示すURL‘example.com’および該ファイルのファイル名‘test1.txt’を、記憶部106のアクセス履歴情報テーブル10の「HTTP GET リクエスト」側のHost欄12およびGET欄11に、該「HTTP GETリクエスト」による取得要求対象のウェブサーバ122上のファイルを特定するための情報として設定登録する。
【0086】
しかる後、該「HTTP GETリクエスト」をインターネット121を経由して受け取ったウェブサーバ122から、取得要求されたファイルを含む「HTTP 200 OKレスポンス」がパケット中継装置101に返送されてくると(シーケンスSeq3)、パケット中継装置101のWANインタフェース103は、該「HTTP 200 OKレスポンス」を、ルーティング部104からパケット中継装置機能部105のパケット分析部105aに転送する。そして、パケット分析部105aが、転送されてきたパケットを分析した結果、該パケットがウェブサーバ122から受け取った「HTTP 200 OKレスポンス」であると判定した場合、該「HTTP 200 OKレスポンス」をアクセス判定機能部105bにさらに転送する。
【0087】
アクセス判定機能部105bは、パケット分析部105aから「HTTP 200 OKレスポンス」を受け取ると、まず、保存ファイル有無判定部30を起動して、記憶部106のアクセス履歴情報テーブル10(すなわちアクセス履歴情報テーブル10のLast-Modified欄13)に「HTTP 200 OKレスポンス」のヘッダ部のあらかじめ特定した一部の値(すなわち、ファイルの更新日時を示す値)が設定登録されているか否かを判定する。そして、該ヘッダ部の前記一部の値が設定登録されていた場合には、次に、ファイル更新判定部40を起動して、今回受け取った該「HTTP 200 OKレスポンス」のヘッダ部のあらかじめ特定した一部の値(すなわちファイルの更新日時を示すLast-Modifiedフィールドの値)を取り出し、取り出した該ヘッダ部の前記一部の値と同じ値が、記憶部106のアクセス履歴情報テーブル10(すなわちアクセス履歴情報テーブル10のLast-Modified欄13)に設定登録されているか否かを確認する(シーケンスSeq4)。
【0088】
確認結果として、記憶部106のアクセス履歴情報テーブル10(すなわちアクセス履歴情報テーブル10のLast-Modified欄13)には、「HTTP 200 OKレスポンス」のヘッダ部の特定した一部の値が設定登録されていない場合には、ファイル格納部20にファイルが保存されていない状態であって、パケット分析部105aから今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルが、当該パケット中継装置101が初めて受信した新規のファイルであると、アクセス判定機能部105bの保存ファイル有無判定部30は判定する。あるいは、記憶部106のアクセス履歴情報テーブル10(すなわちアクセス履歴情報テーブル10のLast-Modified欄13)には前記一部の値が設定登録されているものの、パケット分析部105aから今回受け取った「HTTP 200 OKレスポンス」のヘッダ部のあらかじめ特定した一部の値とは異なる値が設定登録されている場合には、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルの内容が、記憶部106のファイル格納部20に保存されているファイル内容から更新されていると、アクセス判定機能部105bのファイル更新判定部40は判定する。かくのごとく、新規のファイルであると判定した場合か、あるいは、ファイル内容が更新されていると判定した場合には(シーケンスSeq5)、次のように、判定サーバ123に対して、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルに関する問い合わせを行う。
【0089】
すなわち、アクセス判定機能部105bは、ファイル安全性判定部50を起動して、パケット分析部105aから今回受け取った「HTTP 200 OKレスポンス」に含まれているウェブサーバ122からのファイル内容の安全性に関する問い合わせを判定サーバ123に対して行うために、該ファイル内容の安全性に関する問い合わせを行う問い合わせパケットを作成して、パケット中継装置101のWANインタフェース103に転送する(シーケンスSeq6)。その結果、パケット中継装置101のWANインタフェース103を経由して、インターネット121上の判定サーバ123に対して、ファイル内容の安全性に関する問い合わせパケットが送信される(シーケンスSeq7)。
【0090】
判定サーバ123は、パケット中継装置101からの問い合わせパケットを受け取ると、該問い合わせパケットに指定されているファイルの内容(すなわち、「HTTP 200 OKレスポンス」に含まれているウェブサーバ122からのファイルの内容)を確認し、安全なファイルであるか、あるいは、危険なファイルであるかを判定する。そして、判定サーバ123は、該ファイルの判定結果を含む応答パケットを作成して、問い合わせパケットの送信元のパケット中継装置101に対して、作成した応答パケットを返送する(シーケンスSeq8)。
【0091】
パケット中継装置101は、判定サーバ123からの応答パケットを受信すると、WANインタフェース103を経由して、受け取った該応答パケットをアクセス判定機能部105bのファイル安全性判定部50に転送する。アクセス判定機能部105bのファイル安全性判定部50は、アクセス履歴情報テーブル設定登録部60を起動して、処理対象としている「HTTP GET リクエスト」と対応付けて、判定サーバ123から受け取った該応答パケットの応答内容(すなわちファイルの判定結果)を、記憶部106のアクセス履歴情報テーブル10の判定サーバ応答欄14に設定登録するとともに、さらに、今回受け取った「HTTP 200 OKレスポンス」のヘッダの一部の値(すなわちLast-Modifiedフィールドの値)を記憶部106のアクセス履歴情報テーブル10のLast-Modified欄13に設定登録する(シーケンスSeq9)。
【0092】
しかる後、アクセス判定機能部105bは、レスポンス送信部80を起動して、判定サーバ123からの応答内容に応じて、ウェブサーバ122から今回受け取っている「HTTP 200 OKレスポンス」に含まれているファイルの内容を書き換えた後(シーケンスSeq10)、該「HTTP 200 OKレスポンス」を、LANインタフェース102から、「HTTP GETリクエスト」の送信元(すなわち、当該ファイルの取得要求元)の端末112に対して送信する(シーケンスSeq11)。
【0093】
例えば、判定サーバ123からの応答内容が、‘安全なファイル’という応答であった場合には、ウェブサーバ122から受け取っている「HTTP 200 OKレスポンス」に含まれているファイルの内容を書き換えることなく、そのまま、LANインタフェース102から、端末112に対して送信する。また、判定サーバ123からの応答内容が、‘危険なファイル’という応答であった場合には、ウェブサーバ122から受け取っている「HTTP 200 OKレスポンス」に含まれているファイルの内容を、危険を除去するように書き換えてから、LANインタフェース102から、端末112に対して送信する。
【0094】
なお、シーケンスSeq9においては、記憶部106のアクセス履歴情報テーブル10(すなわちアクセス履歴情報テーブル10のLast-Modified欄13)に、「HTTP 200 OKレスポンス」のヘッダ部の一部の値が既に設定登録されているものの、パケット分析部105aから今回受け取った「HTTP 200 OKレスポンス」のヘッダ部の一部の値とは異なる値が設定登録されていた場合には、判定サーバ123からの応答内容に応じて、記憶部106のアクセス履歴情報テーブル10のLast-Modified欄13に設定されていた情報を書き換えることになる。
【0095】
例えば、記憶部106のアクセス履歴情報テーブル10(すなわちアクセス履歴情報テーブル10のLast-Modified欄13)に既に設定登録されている「HTTP 200 OKレスポンス」のヘッダ部の一部の値が、
図5のNo.1の行に示したように、‘Fri,20 Oct 2017 12:26:19 GMT’の更新日時であり、一方、パケット分析部105aから今回受け取った「HTTP 200 OKレスポンス」のヘッダ部の一部の値が、‘Tue,24 Oct 2017 12:26:19 GMT’という新しい更新日時であった場合には、取得要求されているファイル(ファイル名:test1.txt)の内容が記憶部106のファイル格納部20に保存されている内容から更新されているものと判断することができる。したがって、アクセス判定機能部105bのファイル安全性判定部50は、シーケンスSeq6において、更新日時‘Tue,24 Oct 2017 12:26:19 GMT’に更新されたファイルのファイル内容に関する問い合わせを判定サーバ123に対して行う。
【0096】
そして、アクセス判定機能部105bのファイル安全性判定部50は、シーケンスSeq8において、該問い合わせに対する判定サーバ123からの応答パケットを受け取ると、該応答パケットに含まれている応答内容を確認する。確認した結果として、更新されたファイルが例えば‘安全なファイル’という応答であった場合には、ファイル保存部70を起動して、記憶部106のファイル格納部20のファイル内容を、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルによって書き換えるとともに、アクセス履歴情報テーブル設定登録部60を起動して、
図6に示すように、記憶部106のアクセス履歴情報テーブル10の設定内容を書き換える。
【0097】
すなわち、アクセス履歴情報テーブル設定登録部60は、該応答パケットの応答内容により、記憶部106のアクセス履歴情報テーブル10の判定サーバ応答欄14のNo.1の行を、
図5の設定登録内容から書き換えるとともに、パケット分析部105aから今回受け取った「HTTP 200 OKレスポンス」のヘッダ部の一部の値(すなわちLast-Modifiedフィールドの値)の‘Tue,24 Oct 2017 18:12:25 GMT’によって、記憶部106のアクセス履歴情報テーブル10(すなわちアクセス履歴情報テーブル10のLast-Modified欄13)のNo.1の行を、
図5の設定登録内容から書き換える。
図6は、
図5に示したアクセス履歴情報テーブル10の設定登録内容を、新たに受け取った「HTTP 200 OKレスポンス」のヘッダ部の一部の値によって更新して設定登録し直した場合の一例を示すテーブルである。
【0098】
なお、アクセス判定機能部105bのレスポンス送信部80は、判定サーバ123からの応答パケットに含まれている応答内容を確認した結果として、更新されたファイルが‘危険なファイル’という応答であった場合には、前述したように、シーケンスSeq10、シーケンスSeq11において、ウェブサーバ122から今回受け取っている「HTTP 200 OKレスポンス」のファイル内容を、危険を除去するように書き換えてから、LANインタフェース102から、端末112に対して送信する。そして、かかる場合においても、ウェブサーバ122から今回受け取っている「HTTP 200 OKレスポンス」に基づいて、‘危険なファイル’として、記憶部106のファイル格納部20のファイル内容をファイル保存部70により更新して保存するとともに、記憶部106のアクセス履歴情報テーブル10のNo.1の行の設定登録内容についてもアクセス履歴情報テーブル設定登録部60により更新して設定登録することになる。
【0099】
しかし、場合によっては、異なる処理を行うようにしても良い。すなわち、例えば、更新されたファイルが‘危険なファイル’という判定サーバ123からの応答であった場合には、「HTTP 200 OKレスポンス」のファイル内容を、危険を除去するように書き換えてから、LANインタフェース102から、端末112に対して送信するものの、記憶部106のファイル格納部20のファイル内容を、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルによって書き換えることを中止し、また、記憶部106のアクセス履歴情報テーブル10のNo.1の行の設定登録内容を書き換えることも中止して、そのまま、今までの設定登録内容を継続するようにしても良い。
【0100】
((パケット中継装置101が判定サーバ123に問い合わせない場合の信号の流れ))
次に、ウェブサーバ122から今回受け取った「HTTP 200 OKレスポンス」のヘッダ部のあらかじめ特定した一部の値と同じ値が記憶部106のアクセス履歴情報テーブル10に設定登録されている場合であって(すなわち、該「HTTP 200 OKレスポンス」に含まれているファイルが、記憶部106のファイル格納部20に保存されているファイルからは更新されていなかった状態の場合であって)、判定サーバ123に対して、該「HTTP 200 OKレスポンス」に含まれているファイルの内容に関する問い合わせを行う必要がない場合の信号の流れについて、
図4のシーケンスチャートを用いて、その一例を説明する。つまり、ウェブサーバ122から今回受け取った「HTTP 200 OKレスポンス」のヘッダ部のLast-Modifiedフィールドの値と同一の値が、記憶部106のアクセス履歴情報テーブル10(すなわちアクセス履歴情報テーブル10のLast-Modified欄13)に登録されていた場合の信号の流れについて、その一例を説明する。
【0101】
例えば、
図5のアクセス履歴情報テーブル10のLast-Modified欄13には、‘Fri,20 Oct 2017 12:26:19 GMT’という更新日時が登録されているが、アクセス判定機能部105bがウェブサーバ122から今回受け取った「HTTP 200 OKレスポンス」のヘッダ部のLast-Modifiedフィールドにも、同一の‘Fri,20 Oct 2017 12:26:19 GMT’という更新日時が設定されていた場合には、アクセス判定機能部105bのファイル更新判定部40は、今回受け取った「HTTP 200 OKレスポンス」のヘッダ部の一部の値と同一の値が、アクセス履歴情報テーブル10に設定登録されていると判定する。
【0102】
かかる場合には、ウェブサーバ122上のファイルの更新日時が、記憶部106のファイル格納部20に保存されているファイルの更新日時と同じである。したがって、ウェブサーバ122から今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルに関しては、アクセス履歴情報テーブル10のLast-Modified欄13に設定登録した更新日時の値さらには判定サーバ応答欄14に設定登録した判定サーバ123からの判定結果を、そのまま、適用することが可能であると判断することができる。
【0103】
図4のシーケンスチャートにおいて、端末112からパケット中継装置101を経由してウェブサーバ122に対して送信した「HTTP GETリクエスト」に応じて、該ウェブサーバ122から「HTTP 200 OKレスポンス」を受け取ったパケット中継装置101のアクセス判定機能部105bが、該「HTTP 200 OKレスポンス」のヘッダ部のあらかじめ特定した一部(Last-Modifiedフィールド)の値と同じ値が、記憶部106のアクセス履歴情報テーブル10のLast-Modified欄13に設定登録されているか否かを確認するまでの動作については、前述した
図3のシーケンスチャートのシーケンスSeq1〜シーケンスSeq4までの動作と全く同様である。したがって、
図4のシーケンスチャートにおいても、
図3と同じシーケンスSeq1〜シーケンスSeq4というシーケンス番号を付して、ここでの重複する説明を割愛し、シーケンスSeq5a以降の動作について、以下に説明する。
【0104】
図4のシーケンスSeq4における確認結果として、記憶部106のアクセス履歴情報テーブル10(すなわちアクセス履歴情報テーブル10のLast-Modified欄13)に設定登録されている値と全く同一の値が、パケット分析部105aから今回受け取った「HTTP 200 OKレスポンス」のヘッダ部のLast-Modifiedフィールドに設定されていて、取得要求したファイル(test1.txt)は、記憶部106のファイル格納部20に保存されているファイルから更新されていない状態にあるとアクセス判定機能部105bのファイル更新判定部40が判定した場合には(シーケンスSeq5a)、次のように動作する。
【0105】
すなわち、かかる場合には、ファイル安全性判定部50により判定サーバ123に対する問い合わせを行うことを抑止し、また、ファイル保存部70によりファイル格納部20のファイルを、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルによって更新して保存し直すことも抑止し、さらには、アクセス履歴情報テーブル設定登録部60によりアクセス履歴情報テーブル10の設定登録情報を更新することも抑止する。
【0106】
そして、レスポンス送信部80において、記憶部106のアクセス履歴情報テーブル10の判定サーバ応答欄14に既に設定登録されている応答内容(すなわちファイル格納部20に保存されているファイルに関する判定サーバ123からの応答内容として判定サーバ応答欄14に設定登録済みの応答内容)に応じて、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルの内容を書き換えて(シーケンスSeq21)、LANインタフェース102から、「HTTP GETリクエスト」の送信元(当該ファイルの取得要求元)の端末112に対して送信する(シーケンスSeq22)。
【0107】
ここで、例えば、アクセス履歴情報テーブル10の判定サーバ応答欄14に設定登録されている応答内容が‘安全なファイル’であった場合には、ウェブサーバ122から今回受け取っている「HTTP 200 OKレスポンス」に含まれているファイルの内容を書き換えることなく、そのまま、LANインタフェース102から、端末112に対して送信する。また、アクセス履歴情報テーブル10の判定サーバ応答欄14に設定登録されている応答内容が‘危険なファイル’であった場合には、ウェブサーバ122から今回受け取っている「HTTP 200 OKレスポンス」に含まれているファイルの内容を、危険を除去するように書き換えてから、LANインタフェース102から、端末112に対して送信する。
【0108】
<本発明の実施形態の効果の説明>
以上に詳細に説明したように、本実施形態においては、以下のような効果を奏することができる。
【0109】
本実施形態においては、パケットの中継を行うパケット中継装置101のLANインタフェース102側に接続した端末112や端末113等のいずれかの端末例えば端末112が、ウェブブラウザ112aを使用して、インターネット121上のウェブサーバ122のファイルを取得しようとする際に、次のように動作するので、パケット中継装置101や判定サーバ123の処理負荷を軽減することができる。
【0110】
すなわち、パケット中継装置101は、まず、端末112が取得しようとするファイルが当該パケット中継装置101内の記憶部106のファイル格納部20に既に格納されているか否かを確認し、格納されていた場合には、次に、取得しようとするウェブサーバ122上の該ファイルが、記憶部106のファイル格納部20に既に格納されているファイルから更新されているか否かを判定して、判定した結果に応じて、判定サーバ123に対して該ファイルの安全性に関する問い合わせを行うか否かを判断しているので、パケット中継装置101が判定サーバ123に問い合わせる回数を低減させることができる。而して、パケット中継装置101と判定サーバ123と間の通信量を低減させることができ、パケット中継装置101および判定サーバ123の性能向上を図ることができる。
【0111】
<本発明の他の実施形態>
次に、本発明の他の実施形態について説明する。
【0112】
前述した実施形態においては、
図5や
図6に示したように、ウェブサーバ122上の1つのファイルに対して、パケット中継装置101の記憶部106のアクセス履歴情報テーブル10に設定登録するヘッダ部の一部の値(すなわちアクセス履歴情報テーブル10のLast-Modified欄13に設定登録される値)は1つであった。しかし、本発明は、かかる場合に限るものではない。
【0113】
例えば、ウェブサーバ122上のファイルが不正なファイルに書き換えられた後に、元のファイルに戻った場面等を想定すると、
図7のNo.1の行およびNo.2の行に示すように、ウェブサーバ122上の1つのファイルに対して、不正なファイルに書き換えられる前と書き換えられた後との双方について、アクセス履歴情報テーブル10におけるヘッダ部の一部の値の設定欄(すなわちアクセス履歴情報テーブル10のLast-Modified欄13)に、それぞれで異なる値を記憶するようにしても良い。
【0114】
つまり、ウェブサーバ122の1つのファイルに関して、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルを特定するためのヘッダ部の一部の値が、記憶部106のアクセス履歴情報テーブル10に設定登録されている値とは異なっていた場合には、今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルを、記憶部106のファイル格納部20に既に保存されているファイルとは重ならないように、新たに追加する形で保存するようにしても良い。そして、新たに追加保存したファイルを特定するための情報として、該「HTTP 200 OKレスポンス」のヘッダ部の一部の値を取り出して、記憶部106のアクセス履歴情報テーブル10の新たな行(No.2の行)に追加登録するようにする。
【0115】
その結果、ウェブサーバ122上の1つのファイルに関して、ファイル保存部70により、記憶部106のファイル格納部20に1ないし複数のファイルを保存する場合、各ファイルそれぞれを特定する情報として、ファイル格納部20に保存されるファイルの個数に応じて、記憶部106のアクセス履歴情報テーブル10に設定登録される「HTTP 200 OKレスポンス」のヘッダ部の一部の値(すなわちアクセス履歴情報テーブル10のLast-Modified欄13に設定登録される値)を複数個設定登録することになる。
【0116】
図7は、
図1のパケット中継装置101の記憶部106に記憶されている、端末112や端末113からウェブサーバ122へアクセスした履歴を登録するアクセス履歴情報テーブル10の
図5とは異なる例を示すテーブルであり、1つのファイルに対して2つの異なるヘッダ部の一部の値を設定登録している例を示している。
【0117】
図7のアクセス履歴情報テーブル10においては、「HTTP GETリクエスト」側のGET欄11に示すように、‘test1.txt’という1つのファイルに対して、「HTTP 200 OKレスポンス」側のLast-Modified欄13に示すように、No.1の行に ‘Fri,20 Oct 2017 12:26:19 GMT’という更新日時を示す値を設定登録し、No.2の行に‘Sun,22 Oct 2017 08:41:52 GMT’という更新日時を示す値を設定登録している例を示している。
【0118】
なお、
図7のアクセス履歴情報テーブル10の判定サーバ応答欄14に示すように、No.1の行の‘Fri,20 Oct 2017 12:26:19 GMT’が更新日時になっているファイルの場合は、不正なファイルに書き換えられる前の状態として、判定サーバ123による判定が‘安全なファイル’との判定結果であったことを示している。一方、No.2の行の‘Sun,22 Oct 2017 08:41:52 GMT’が更新日時になっているファイルの場合は、不正なファイルに書き換えられた後の状態として、判定サーバ123による判定が‘危険なファイル’という判定結果に変化していることを示している。
【0119】
次に、ウェブサーバ122から受信した「HTTP 200 OKレスポンス」に含まれるファイルを特定するための情報を設定しているヘッダ部のフィールドに関する異なる例を説明する。前述した実施形態においては、ウェブサーバ122上のファイルがパケット中継装置101の記憶部106のファイル格納部20に既に保存されているか否かを判定し、かつ、既に保存されている場合には、ウェブサーバ122上のファイルがパケット中継装置101の記憶部106のファイル格納部20に既に保存されているファイル内容から更新されているか否かを判定するための「HTTP 200 OKレスポンス」のヘッダ部の一部の値として(言い換えると、「HTTP 200 OKレスポンス」に含まれるファイルを特定するための情報を設定しているヘッダ部のフィールドの値として)、ファイル内容が最後に更新された日時(最新更新日時)を設定するLast-Modifiedフィールドの値を使用していた。
【0120】
しかし、本発明は、かかる場合に限るものではなく、ウェブサーバ122から取得したファイルがパケット中継装置101の記憶部106のファイル格納部20に既に保存されているか否か、および、既に保存されている場合には、ウェブサーバ122から今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルが保存されているファイルから更新されているか否かを、「HTTP 200 OKレスポンス」のヘッダ部の他のフィールドの値を用いて判定するようにしても良い。
【0121】
例えば、
図8に示すように、ウェブサーバ122が生成するファイルごとの識別子であるETagフィールドの値や、ファイルのサイズを示すContent-Lengthフィールドの値等、「HTTP 200 OKレスポンス」のヘッダ部のLast-Modifiedフィールド以外の値を使用して、ウェブサーバ122上のファイルがパケット中継装置101の記憶部106のファイル格納部20にファイルが保存されているか否か、および、保存されている場合には、既に保存されているファイル内容から更新されているか否かを判定するようにしても良い。
【0122】
図8は、
図1のパケット中継装置101の記憶部106に記憶されている、端末112や端末113からウェブサーバ122へアクセスした履歴を登録するアクセス履歴情報テーブルの
図5、
図7とは異なる例を示すテーブルであり、「HTTP 200 OKレスポンス」側に、Last-Modified欄13の他に、ETag欄15やContent-Length欄16をさらに追加して構成しているテーブル例を示している。
【0123】
図8に示したアクセス履歴情報テーブル10においては、ウェブサーバ122から取得したファイルがパケット中継装置101の記憶部106のファイル格納部20に既に保存されているか否か、および、既に保存されている場合には、ウェブサーバ122から今回受け取った「HTTP 200 OKレスポンス」に含まれているファイルが保存されているファイルから更新されているか否かを判定する際に、Last-Modified欄13、ETag欄15やContent-Length欄16のうち、いずれか1つの欄の値を用いて判定するようにしても良いし、Last-Modified欄13、ETag欄15やContent-Length欄16のうち、いずれか複数の欄の値、あるいは、全ての欄の値を用いて判定するようにしても良い。
【0124】
今回受け取った「HTTP 200 OKレスポンス」側に着目してさらに説明すると、今回受け取った「HTTP 200 OKレスポンス」のヘッダ部の一部の値として(言い換えると、該「HTTP 200 OKレスポンス」に含まれるファイルを特定する情報を設定するフィールドの値として)、最新のファイル更新日時を設定するLast-Modifiedフィールドの値、ファイルを識別する識別子を設定するEtagフィールドの値、ファイルサイズを設定するContent-Lengthフィールドの値のうち、いずれか1ないし複数のフィールドの値を用いるようにしても良い。
【0125】
さらに、本発明は、ファイルの更新の有無を判定するための「HTTP 200 OKレスポンス」のヘッダ部の一部の値として、
図8に示したLast-ModifiedフィールドやETagフィールドやContent-Lengthフィールドの値に限るものではなく、ファイルの更新の有無を判定することが可能であるならば、「HTTP 200 OKレスポンス」のヘッダ部のそれ以外のフィールドの値を用いるようにしても勿論構わないことは言うまでもない。
【0126】
以上、本発明の好適な実施形態の構成を説明した。しかし、かかる実施形態は、本発明の単なる例示に過ぎず、何ら本発明を限定するものではないことに留意されたい。本発明の要旨を逸脱することなく、特定用途に応じて種々の変形変更が可能であることが、当業者には容易に理解できよう。