(57)【特許請求の範囲】
【請求項１】
第１情報処理装置と、該第１情報処理装置に対してネットワークを介して通信接続され、前記第１情報処理装置と比較して攻撃に対して実質的に同等またはより高い防御能力を有する第２情報処理装置とを含む情報処理システムであって、
前記第１情報処理装置と外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行する前記第２情報処理装置の通信代行手段と、
前記第１情報処理装置と前記外部ネットワークあるいは前記外部装置との前記通信代行手段による通信接続に含まれる攻撃を遮断する攻撃遮断手段と、
を備え、
前記通信代行手段は、前記第２情報処理装置が生成する、前記第１情報処理装置に対応付けた仮想コンピュータに含まれ、
前記攻撃遮断手段が、前記外部ネットワークあるいは前記外部装置との通信接続に含まれる攻撃を検出した場合に、前記通信代行手段を含む前記仮想コンピュータを削除し、新たな仮想コンピュータを生成してその通信代行手段により前記第１情報処理装置の通信接続を代行させる通信代行制御手段を、備えることを特徴とする情報処理システム。
【請求項２】
前記攻撃遮断手段は、さらに、前記外部ネットワークあるいは前記外部装置から出力される通信データに含まれる攻撃を検出して排除する攻撃排除手段を有し、
前記通信代行手段は、前記攻撃排除手段により攻撃が排除された通信データを、前記第１情報処理装置に転送する第１通信データ転送手段を有することを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記攻撃遮断手段は、さらに、前記第１情報処理装置から出力される通信データに基づく感染を防止する感染防止手段を有し、
前記通信代行手段は、前記感染防止手段により感染防止された通信データを、前記外部ネットワークあるいは前記外部装置に転送する第２通信データ転送手段を有することを特徴とする請求項１または２に記載の情報処理システム。
【請求項４】
前記通信代行手段は、通信データを一時保存する通信データキャッシュ手段を有することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理システム。
【請求項５】
前記通信代行手段は、Ｗｅｂサーバとの通信を前記第１情報処理装置に代わって制御する仮想Ｗｅｂブラウザを有し、前記仮想Ｗｅｂブラウザが展開した展開データを前記第１情報処理装置に転送することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理システム。
【請求項６】
前記攻撃遮断手段は、前記仮想Ｗｅｂブラウザが展開した展開データのデータ量が予測したデータ量を超えた場合に、攻撃ありと判定して前記攻撃を遮断することを特徴とする請求項５に記載の情報処理システム。
【請求項７】
複数の前記第１情報処理装置が前記第２情報処理装置に通信接続され、
前記通信代行手段は、前記Ｗｅｂブラウザが展開した展開データを前記複数の第１情報処理装置に転送することを特徴とする請求項５または６に記載の情報処理システム。
【請求項８】
前記攻撃遮断手段は、前記仮想コンピュータにインストールされた新規のアプリケーションに関連する攻撃を所定期間に亙って検出し、
前記攻撃遮断手段が前記所定期間に亙って攻撃を検出しない場合に、前記アプリケーションの前記第１情報処理装置へのインストールを許可する許可手段と、
をさらに備えることを特徴とする請求項１に記載の情報処理システム。
【請求項９】
前記情報処理システムはシンクライアントサーバシステムであって、
前記第１情報処理装置はクライアント装置であり、前記第２情報処理装置はサーバであることを特徴とする請求項１乃至８のいずれか１項に記載の情報処理システム。
【請求項１０】
前記第２情報処理装置は、
前記攻撃遮断手段が検出した攻撃を前記攻撃が対象とする攻撃対象と対応付けて蓄積する攻撃対象学習手段と、
前記攻撃対象学習手段に蓄積された攻撃対象に関する情報を前記第１情報処理装置または前記外部装置に通知する攻撃警告手段と、
をさらに備えることを特徴とする請求項９に記載の情報処理システム。
【請求項１１】
第１情報処理装置と、該第１情報処理装置に対してネットワークを介して通信接続され、前記第１情報処理装置と比較して攻撃に対して実質的に同等またはより高い防御能力を有する第２情報処理装置とを含む情報処理システムにおける情報処理方法であって、
前記第１情報処理装置と外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行する前記第２情報処理装置の通信代行ステップと、
前記第１情報処理装置と前記外部ネットワークあるいは前記外部装置との前記通信代行ステップにおける通信接続に含まれる攻撃を遮断する攻撃遮断ステップと、
を含み、
前記通信代行ステップは、前記第２情報処理装置が生成する、前記第１情報処理装置に対応付けた仮想コンピュータに含まれ、
前記攻撃遮断ステップが、前記外部ネットワークあるいは前記外部装置との通信接続に含まれる攻撃を検出した場合に、前記通信代行ステップを含む前記仮想コンピュータを削除し、新たな仮想コンピュータを生成してその通信代行ステップにより前記第１情報処理装置の通信接続を代行させる通信代行制御ステップを、含むことを特徴とする情報処理方法。
【請求項１２】
第１情報処理装置とネットワークを介して通信接続され、前記第１情報処理装置と比較して攻撃に対して実質的に同等またはより高い防御能力を有する第２情報処理装置であって、
前記第１情報処理装置による外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行する通信代行手段と、
前記第１情報処理装置と前記外部ネットワークあるいは前記外部装置との前記通信代行手段による通信接続に含まれる攻撃を遮断する攻撃遮断手段と、
を備え、
前記通信代行手段は、前記第２情報処理装置が生成する、前記第１情報処理装置に対応付けた仮想コンピュータに含まれ、
前記攻撃遮断手段が、前記外部ネットワークあるいは前記外部装置との通信接続に含まれる攻撃を検出した場合に、前記通信代行手段を含む前記仮想コンピュータを削除し、新たな仮想コンピュータを生成してその通信代行手段により前記第１情報処理装置の通信接続を代行させる通信代行制御手段を、備えることを特徴とする第２情報処理装置。
【請求項１３】
第１情報処理装置とネットワークを介して通信接続され、前記第１情報処理装置と比較して攻撃に対して実質的に同等またはより高い防御能力を有する第２情報処理装置の制御方法であって、
前記第１の情報処理装置による外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行する通信代行ステップと、
前記第１情報処理装置と前記外部ネットワークあるいは前記外部装置との前記通信代行ステップにおける通信接続に含まれる攻撃を遮断する攻撃遮断ステップと、
を含み、
前記通信代行ステップは、前記第２情報処理装置が生成する、前記第１情報処理装置に対応付けた仮想コンピュータに含まれ、
前記攻撃遮断ステップが、前記外部ネットワークあるいは前記外部装置との通信接続に含まれる攻撃を検出した場合に、前記通信代行ステップを含む前記仮想コンピュータを削除し、新たな仮想コンピュータを生成してその通信代行ステップにより前記第１情報処理装置の通信接続を代行させる通信代行制御ステップを、含むことを特徴とする第２情報処理装置の制御方法。
【請求項１４】
第１情報処理装置とネットワークを介して通信接続され、前記第１情報処理装置よりも攻撃に対して実質的に同等またはより高い防御能力を有する第２情報処理装置の制御プログラムであって、
前記第１情報処理装置による外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行する通信代行ステップと、
前記第１情報処理装置と前記外部ネットワークあるいは前記外部装置との前記通信代行ステップにおける通信接続に含まれる攻撃を遮断する攻撃遮断ステップと、
をコンピュータに実行させ、
前記通信代行ステップは、前記第２情報処理装置が生成する、前記第１情報処理装置に対応付けた仮想コンピュータに含まれ、
前記攻撃遮断ステップが、前記外部ネットワークあるいは前記外部装置との通信接続に含まれる攻撃を検出した場合に、前記通信代行ステップを含む前記仮想コンピュータを削除し、新たな仮想コンピュータを生成してその通信代行ステップにより前記第１情報処理装置の通信接続を代行させる通信代行制御ステップを、含むことを特徴とする第２情報処理装置の制御プログラム。
【請求項１５】
請求項１２に記載の第２情報処理装置とネットワークを介して通信接続され、前記第２情報処理装置と比較して攻撃に対して実質的に同等またはより低い防御能力を有する第１情報処理装置であって、
前記第２情報処理装置が備える前記通信代行手段が前記第１情報処理装置による外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行するように依頼する通信代行依頼手段と、
前記第２情報処理装置が備える前記攻撃遮断手段によって攻撃が遮断された通信データを、受信する受信手段と、
を備えることを特徴とする第１情報処理装置。
【請求項１６】
請求項１２に記載の第２情報処理装置とネットワークを介して通信接続され、前記第２情報処理装置と比較して攻撃に対して実質的に同等またはより低い防御能力を有する第１情報処理装置の制御方法であって、
前記第２情報処理装置が備える前記通信代行手段が前記第１情報処理装置による外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行するように依頼する通信代行依頼ステップと、
前記第２情報処理装置が備える前記攻撃遮断手段によって攻撃が遮断された通信データを、受信する受信ステップと、
を含むことを特徴とする第１情報処理装置の制御方法。
【請求項１７】
請求項１２に記載の第２情報処理装置とネットワークを介して通信接続され、前記第２情報処理装置と比較して攻撃に対して実質的に同等またはより低い防御能力を有する第１情報処理装置の制御プログラムであって、
前記第２情報処理装置が備える前記通信代行手段が前記第１情報処理装置による外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行するように依頼する通信代行依頼ステップと、
前記第２情報処理装置が備える前記攻撃遮断手段によって攻撃が遮断された通信データを、受信する受信ステップと、
をコンピュータに実行させることを特徴とする第１情報処理装置の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信処理における攻撃や感染拡大を防御する技術に関する。
【背景技術】
【０００２】
上記技術分野において、特許文献１には、加入者端末装置とサービス提供サーバとの通信経路中にクラウドルータを設けて通信規模を縮小し、通信時間を減少する技術が開示されている。そして、サービス提供サーバには、ファイアウォールのサービスを提供するサーバも含まれている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１８８２６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記文献に記載の技術では、加入者端末装置を攻撃や感染から遮断することができなかった。
【０００５】
本発明の目的は、上述の課題を解決する技術を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明に係るシステムは、
第１情報処理装置と、該第１情報処理装置に対してネットワークを介して通信接続され、前記第１情報処理装置と比較して攻撃に対して実質的に同等またはより高い防御能力を有する第２情報処理装置とを含む情報処理システムであって、
前記第１情報処理装置と外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行する前記第２情報処理装置の通信代行手段と、
前記第１情報処理装置と前記外部ネットワークあるいは前記外部装置との前記通信代行手段による通信接続に含まれる攻撃を遮断する攻撃遮断手段と、
を備え、
前記通信代行手段は、前記第２情報処理装置が生成する、前記第１情報処理装置に対応付けた仮想コンピュータに含まれ、
前記攻撃遮断手段が、前記外部ネットワークあるいは前記外部装置との通信接続に含まれる攻撃を検出した場合に、前記通信代行手段を含む前記仮想コンピュータを削除し、新たな仮想コンピュータを生成してその通信代行手段により前記第１情報処理装置の通信接続を代行させる通信代行制御手段を、備えることを特徴とする。
【０００７】
上記目的を達成するため、本発明に係る方法は、
第１情報処理装置と、該第１情報処理装置に対してネットワークを介して通信接続され、前記第１情報処理装置と比較して攻撃に対して実質的に同等またはより高い防御能力を有する第２情報処理装置とを含む情報処理システムにおける情報処理方法であって、
前記第１情報処理装置と外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行する前記第２情報処理装置の通信代行ステップと、
前記第１情報処理装置と前記外部ネットワークあるいは前記外部装置との前記通信代行ステップにおける通信接続に含まれる攻撃を遮断する攻撃遮断ステップと、
を含み、
前記通信代行ステップは、前記第２情報処理装置が生成する、前記第１情報処理装置に対応付けた仮想コンピュータに含まれ、
前記攻撃遮断ステップが、前記外部ネットワークあるいは前記外部装置との通信接続に含まれる攻撃を検出した場合に、前記通信代行ステップを含む前記仮想コンピュータを削除し、新たな仮想コンピュータを生成してその通信代行ステップにより前記第１情報処理装置の通信接続を代行させる通信代行制御ステップを、含むことを特徴とする。
【０００８】
上記目的を達成するため、本発明に係る装置は、
第１情報処理装置とネットワークを介して通信接続され、前記第１情報処理装置と比較して攻撃に対して実質的に同等またはより高い防御能力を有する第２情報処理装置であって、
前記第１情報処理装置による外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行する通信代行手段と、
前記第１情報処理装置と前記外部ネットワークあるいは前記外部装置との前記通信代行手段による通信接続に含まれる攻撃を遮断する攻撃遮断手段と、
を備え、
前記通信代行手段は、前記第２情報処理装置が生成する、前記第１情報処理装置に対応付けた仮想コンピュータに含まれ、
前記攻撃遮断手段が、前記外部ネットワークあるいは前記外部装置との通信接続に含まれる攻撃を検出した場合に、前記通信代行手段を含む前記仮想コンピュータを削除し、新たな仮想コンピュータを生成してその通信代行手段により前記第１情報処理装置の通信接続を代行させる通信代行制御手段を、備えることを特徴とする。
【０００９】
上記目的を達成するため、本発明に係る方法は、
第１情報処理装置とネットワークを介して通信接続され、前記第１情報処理装置と比較して攻撃に対して実質的に同等またはより高い防御能力を有する第２情報処理装置の制御方法であって、
前記第１の情報処理装置による外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行する通信代行ステップと、
前記第１情報処理装置と前記外部ネットワークあるいは前記外部装置との前記通信代行ステップにおける通信接続に含まれる攻撃を遮断する攻撃遮断ステップと、
を含み、
前記通信代行ステップは、前記第２情報処理装置が生成する、前記第１情報処理装置に対応付けた仮想コンピュータに含まれ、
前記攻撃遮断ステップが、前記外部ネットワークあるいは前記外部装置との通信接続に含まれる攻撃を検出した場合に、前記通信代行ステップを含む前記仮想コンピュータを削除し、新たな仮想コンピュータを生成してその通信代行ステップにより前記第１情報処理装置の通信接続を代行させる通信代行制御ステップを、含むことを特徴とする。
【００１０】
上記目的を達成するため、本発明に係るプログラムは、
第１情報処理装置とネットワークを介して通信接続され、前記第１情報処理装置よりも攻撃に対して実質的に同等またはより高い防御能力を有する第２情報処理装置の制御プログラムであって、
前記第１情報処理装置による外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行する通信代行ステップと、
前記第１情報処理装置と前記外部ネットワークあるいは前記外部装置との前記通信代行ステップにおける通信接続に含まれる攻撃を遮断する攻撃遮断ステップと、
をコンピュータに実行させ、
前記通信代行ステップは、前記第２情報処理装置が生成する、前記第１情報処理装置に対応付けた仮想コンピュータに含まれ、
前記攻撃遮断ステップが、前記外部ネットワークあるいは前記外部装置との通信接続に含まれる攻撃を検出した場合に、前記通信代行ステップを含む前記仮想コンピュータを削除し、新たな仮想コンピュータを生成してその通信代行ステップにより前記第１情報処理装置の通信接続を代行させる通信代行制御ステップを、含むことを特徴とする第２情報処理装置の制御プログラム。
【００１１】
上記目的を達成するため、本発明に係る装置は、
上記第２情報処理装置とネットワークを介して通信接続され、前記第２情報処理装置と比較して攻撃に対して実質的に同等またはより低い防御能力を有する第１情報処理装置であって、
前記第２情報処理装置が備える前記通信代行手段が前記第１情報処理装置による外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行するように依頼する通信代行依頼手段と、
前記第２情報処理装置が備える前記攻撃遮断手段によって攻撃が遮断された通信データを、受信する受信手段と、
を備えることを特徴とする。
【００１２】
上記目的を達成するため、本発明に係る方法は、
上記第２情報処理装置とネットワークを介して通信接続され、前記第２情報処理装置と比較して攻撃に対して実質的に同等またはより低い防御能力を有する第１情報処理装置の制御方法であって、
前記第２情報処理装置が備える前記通信代行手段が前記第１情報処理装置による外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行するように依頼する通信代行依頼ステップと、
前記第２情報処理装置が備える前記攻撃遮断手段によって攻撃が遮断された通信データを、受信する受信ステップと、
を含むことを特徴とす。
【００１３】
上記目的を達成するため、本発明に係るプログラムは、
上記第２情報処理装置とネットワークを介して通信接続され、前記第２情報処理装置と比較して攻撃に対して実質的に同等またはより低い防御能力を有する第１情報処理装置の制御プログラムであって、
前記第２情報処理装置が備える前記通信代行手段が前記第１情報処理装置による外部ネットワークあるいは外部装置との通信接続の少なくとも一部を代行するように依頼する通信代行依頼ステップと、
前記第２情報処理装置が備える前記攻撃遮断手段によって攻撃が遮断された通信データを、受信する受信ステップと、
をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１４】
本発明によれば、第１情報処理装置よりも攻撃に対して高い防御能力を有する第２情報処理装置により通信代行することにより、第１情報処理装置を攻撃から遮断できる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１実施形態に係る情報処理システムの構成を示すブロック図である。
【図２】本発明の第２実施形態に係る情報処理システムの構成を示すブロック図である。
【図３Ａ】本発明の第２実施形態に係る情報処理システムにおける通信代行依頼の動作手順を示すシーケンス図である。
【図３Ｂ】本発明の第２実施形態に係る情報処理システムにおける通信代行実行の動作手順を示すシーケンス図である。
【図４】本発明の第２実施形態に係る情報処理システムの通信メッセージの構成を示す図である。
【図５】本発明の第２実施形態に係るクラウドサーバの機能構成を示すブロック図である。
【図６】本発明の第２実施形態に係るクライアント装置の機能構成を示すブロック図である。
【図７】本発明の第２実施形態に係るＩＰアドレス変換テーブルの構成を示す図である。
【図８】本発明の第２実施形態に係る通信データキャッシュ部の構成を示す図である。
【図９】本発明の第２実施形態に係る攻撃／感染情報ＤＢの構成を示す図である。
【図１０】本発明の第２実施形態に係るクラウドサーバのハードウェア構成を示すブロック図である。
【図１１】本発明の第２実施形態に係るクラウドサーバの処理手順を示すフローチャートである。
【図１２Ａ】本発明の第２実施形態に係るサービス提供サーバへのメッセージ送信処理の処理手順を示すフローチャートである。
【図１２Ｂ】本発明の第２実施形態に係るクライアント装置へのメッセージ送信処理の処理手順を示すフローチャートである。
【図１３】本発明の第２実施形態に係るクライアント装置のハードウェア構成を示すブロック図である。
【図１４】本発明の第２実施形態に係る感染報知情報の構成を示す図である。
【図１５】本発明の第２実施形態に係るクライアント装置の処理手順を示すフローチャートである。
【図１６】本発明の第２実施形態に係る通信代行アプリケーションの処理手順を示すフローチャートである。
【図１７】本発明の第３実施形態に係るクラウドサーバの機能構成を示すブロック図である。
【図１８】本発明の第４実施形態に係る情報処理システムの構成を示すブロック図である。
【図１９】本発明の第５実施形態に係る情報処理システムにおける通信代行の動作手順を示すシーケンス図である。
【図２０】本発明の第５実施形態に係る情報処理システムの通信メッセージの構成を示す図である。
【図２１】本発明の第５実施形態に係るクラウドサーバの機能構成を示すブロック図である。
【図２２】本発明の第５実施形態に係るクライアント装置の機能構成を示すブロック図である。
【図２３Ａ】本発明の第５実施形態に係るＩＰアドレス変換テーブルの構成を示す図である。
【図２３Ｂ】本発明の第５実施形態に係る通信データキャッシュ部の構成を示す図である。
【図２４】本発明の第５実施形態に係る攻撃／感染情報ＤＢの構成を示す図である。
【図２５】本発明の第５実施形態に係るクラウドサーバの処理手順を示すフローチャートである。
【図２６Ａ】本発明の第５実施形態に係るサービス提供サーバへのメッセージ送信処理の処理手順を示すフローチャートである。
【図２６Ｂ】本発明の第５実施形態に係るクライアント装置へのメッセージ送信処理の処理手順を示すフローチャートである。
【図２７】本発明の第５実施形態に係るクライアント装置の処理手順を示すフローチャートである。
【図２８】本発明の第５実施形態に係る通信代行アプリケーションの処理手順を示すフローチャートである。
【図２９】本発明の第６実施形態に係る情報処理システムにおける通信代行の動作手順を示すシーケンス図である。
【図３０】本発明の第６実施形態に係るクラウドサーバの機能構成を示すブロック図である。
【図３１】本発明の第６実施形態に係るＩＰアドレス変換テーブルの構成を示す図である。
【図３２】本発明の第７実施形態に係る情報処理システムの構成を示すブロック図である。
【図３３】本発明の第７実施形態に係る情報処理システムにおける通信代行の動作手順を示すシーケンス図である。
【図３４】本発明の第８実施形態に係る情報処理システムにおける通信代行の動作手順を示すシーケンス図である。
【図３５】本発明の第８実施形態に係るクラウドサーバの機能構成を示すブロック図である。
【図３６】本発明の第８実施形態に係る攻撃対象学習ＤＢの構成を示す図である。
【図３７】本発明の第８実施形態に係る攻撃対象分析テーブルの構成を示す図である。
【図３８】本発明の第８実施形態に係るクラウドサーバによる攻撃対象学習処理の処理手順を示すフローチャートである。
【図３９】本発明の第９実施形態に係る情報処理システムにおける通信代行の動作手順を示すシーケンス図である。
【図４０】本発明の第９実施形態に係るクラウドサーバの機能構成を示すブロック図である。
【発明を実施するための形態】
【００１６】
以下に、図面を参照して、本発明の実施の形態について例示的に詳しく説明する。ただし、以下の実施の形態に記載されている構成要素は単なる例示であり、本発明の技術範囲をそれらのみに限定する趣旨のものではない。
【００１７】
なお、本明細書で使用する文言「防御力」「防御能力」とは、インターネットに接続した環境で、さまざまなＷＥＢサイトやメールなどのインターネット全般における"最新の脅威"からパソコンを防御する能力を試す。その防御プログラムには、種々の製品が市販されている。それらの防御能力が高いか低いかを調べるテストとしても、種々のテストがある。例えば、AV-comparatives テストが有名である（http://www.av-test.org、http://www.av-comparatives.org）。ＡＶ−ＴＥＳＴ.orgの認定以外に、ＣＨＥＣＫＭＡＲＫ認定（West Coast Lab社）、ＩＣＳＡ  ｌａｂｓ認定（Cybertrust)、ＶＩＲＵＳ ＢＵＬＬＥＴＩＮ  100％受賞歴などがプログラムの防御能力を示す。これらのテストでは、ウィルス検出率／非検出率や、スキャンエンジン単体の防御能力を表わす既知・未知マルウェア検出率を用いる。また、セキュリティソフト全体が有する防御能力を調べるマルウェアブロックテストなどもある。これらを総合して、「防御力」「防御能力」が高いか低いかを判定できる。
【００１８】
また、本実施形態においては、「クライアント装置」と「クライアント」とは異なる対象を示しており、「クライアント」との文言は、「クライアント装置」を所有するユーザ、あるいは「クライアント装置」を使用するユーザを表わす。
【００１９】
［第１実施形態］
本発明の第１実施形態としての情報処理システム１００について、図１を用いて説明する。情報処理システム１００は、ネットワーク１０３を介して通信接続された第１情報処理装置１０１と第２情報処理装置１０２とを含む。また、第２情報処理装置１０２は第１情報処理装置１０１と比較して攻撃に対して実質的に同等またはより高い防御能力を有する。
【００２０】
図１に示すように、情報処理システム１００は、通信代行部１１０と、攻撃遮断手段と、通信代行部１１０と、攻撃遮断部１２０と、を含む。通信代行部１１０は、第１情報処理装置１０１と外部ネットワーク１０４あるいは外部装置１０５との通信接続の少なくとも一部を代行する。攻撃遮断部１２０は、第１情報処理装置１０１と外部ネットワーク１０４あるいは外部装置１０５との通信代行部１１０による通信接続に含まれる攻撃を遮断する。
【００２１】
本実施形態によれば、第１情報処理装置と比較して攻撃に対してより高い防御能力を有する第２情報処理装置により通信代行することにより、第１情報処理装置を攻撃から遮断できる。
【００２２】
［第２実施形態］
次に、本発明の第２実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、第１情報処理装置であるクライアント装置の通信処理を、第２情報処理装置であるクラウドサーバが代行する。なお、クライアント装置としては、携帯電話やスマートフォン、タブレットなどの携帯端末、業務用端末、ノート型パーソナルコンピュータ（以下、ＰＣ）、デジタルテレビ、ディスプレイターミナル、デスクトップ型ＰＣなどが含まれる。また、明細書および図面における"端末"との文言もクライアント装置と同義である。
【００２３】
本実施形態によれば、クライアント装置への攻撃をクラウドサーバが排除できると共に、クライアント装置からの感染拡大をクラウドサーバにより防止できる。
【００２４】
《情報処理システム》
図２は、本実施形態に係る情報処理システム２００の構成を示すブロック図である。
【００２５】
情報処理システム２００は、ネットワークを介して接続された、クライアント装置２１１〜２１６と、クラウドサーバ２２０と、サービス提供サーバであるＷｅｂサーバ２３０、ＳＮＳ（Social Networking Service)サーバ２４０、コンテンツ提供サーバ２５０とを備える。
【００２６】
クライアント装置２１１〜２１６は、携帯端末であるクライアント装置２１１〜２１３やノート型ＰＣであるクライアント装置２１４やデジタルテレビであるクライアント装置２１５やデスクトップ型ＰＣであるクライアント装置２１６を含む。クライアント装置２１１〜２１６は、自装置の通信処理の代行をより高い防御能力を有するクラウドサーバ２２０に依頼して、自装置への通信処理に含まれる攻撃を排除し、かつ、自装置からの通信処理による感染拡大を防止する。
【００２７】
クラウドサーバ２２０は、クライアント装置の通信を代行するために必要な、ＩＰ（Internet Protocol)アドレス変換テーブル２２１、通信データキャッシュ部２２２、攻撃／感染情報ＤＢ２２３を有する。ＩＰアドレス変換テーブル２２１は、クライアント装置と外部ネットワークや外部装置との通信を分断するために、クライアント装置のＩＰアドレスを変換するためのテーブルである（図７参照）。通信データキャッシュ部２２２は、外部ネットワークや外部装置との通信データを一時的に記憶するキャッシュ部である（図８参照）。攻撃／感染情報ＤＢ２２３は、クラウドサーバ２２０における攻撃の検出と排除、あるいは感染源の検出と感染防止を実行するための情報を格納するデータベースである（図９参照）。
【００２８】
Ｗｅｂサーバ２３０は、クライアント装置にＷｅｂサービスを提供するサーバである。ＳＮＳサーバ２４０は、クライアント装置にソーシャルサービスを提供するサーバである。コンテンツ提供サーバ２５０は、クライアント装置に種々のコンテンツを提供するサーバである。なお、サービス提供サーバは、図２に図示された例に限定されない。
【００２９】
《情報処理システムの動作手順》
次に、図３Ａおよび図３Ｂに従って、本実施形態の情報処理システム２００の動作手順を説明する。
【００３０】
（通信代行依頼）
図３Ａは、本実施形態に係る情報処理システム２００における通信代行依頼の動作手順を示すシーケンス図である。
【００３１】
ステップＳ３０１において、クライアント装置２１１〜２１６とクラウドサーバ２２０との間の通信を確立する。クラウドサーバ２２０から、ステップＳ３０３において、通信代行サービスの紹介情報をクライアント装置２１１〜２１６に送信する。クライアント装置２１１〜２１６は、ステップＳ３０５において、受信した通信代行サービスの紹介情報を表示する。クライアントが通信代行サービスの依頼をクライアント装置２１１〜２１６から入力すると、ステップＳ３０７において、通信代行依頼の情報がクライアント装置からクラウドサーバ２２０に送信される。
【００３２】
クラウドサーバ２２０は、ステップＳ３０９において、受信した通信代行依頼の情報からクライアント装置の端末ＩＰアドレスを取得する。次に、ステップＳ３１１において、依頼したクライアント装置に割り当てるローカルＩＰアドレスを設定する。そして、ステップＳ３１３において、端末ＩＰアドレスとローカルＩＰアドレスとを対応付けてＩＰアドレス変換テーブルに登録する。ステップＳ３１５においては、クラウドサーバ２２０から依頼したクライアント装置に、ローカルＩＰアドレスを通知し、クライアント装置に付加する通信代行アプリケーション・プログラム（図１６参照）をダウンロードする。
【００３３】
クライアント装置２１１〜２１６は、ステップＳ３１７において、受信したローカルＩＰアドレスを以降の通信において使用する自装置のＩＰアドレスに設定する。これ以降、クライアント装置が初期に有していた端末ＩＰアドレスはクラウドサーバ２２０で使用され、クライアント装置では使用されない。したがって、クライアント装置による外部ネットワークや外部装置との直接の通信は、回避される。次に、ステップＳ３１９において、ダウンロードされた通信代行アプリケーションを起動する。以下、このクライアント装置は、通信処理をクラウドサーバ２２０によって代行されることになる。
【００３４】
通信代行依頼の処理が終了したので、ステップＳ３２１において、クライアント装置２１１〜２１６とクラウドサーバ２２０との通信を切断する。
【００３５】
（通信代行実行）
図３Ｂは、本実施形態に係る情報処理システム２００における通信代行実行の動作手順を示すシーケンス図である。図３Ｂでは、サービス提供サーバからの紹介にクライアントが応答することで、サービスリクエストを行なう例を示す。
【００３６】
ステップＳ３３１において、サービス提供サーバからサービス紹介情報が配信される。クライアント装置の端末ＩＰアドレスに対するアクセスは、ステップＳ３３３のように、クラウドサーバ２２０によってその受信が代行される。ステップＳ３３５において、受信したサービス紹介情報のメッセージに含まれる攻撃がチェックされ、攻撃があれば排除される。そして、攻撃を含むメッセージは捨てられるか、攻撃が排除されればステップＳ３３７においてクライアント装置に送信される。この特に、使用されるＩＰアドレスは、図３ＡのステップＳ３１５においてクライアント装置に割り当てられたローカルＩＰアドレスである。
【００３７】
ローカルＩＰアドレスを送信先としてクラウドサーバ２２０から送信されたサービス紹介情報は、ステップＳ３３９において、クライアント装置に表示される。このサービス紹介情報にクライアントが応答すれば、ステップＳ３４１において、クライアント装置からクラウドサーバ２２０にサービスリクエストが送信される。当然ながら、サービスリクエストの送信元はローカルＩＰアドレスで識別されるクライアント装置である。
【００３８】
クライアント装置からのサービスリクエストを受信したクラウドサーバ２２０は、ステップＳ３４３において、クライアント装置からのメッセージの感染有無をチェックし、感染があれば排除する。そして、ステップＳ３４５において、感染のないサービスリクエストのメッセージが、クラウドサーバ２２０により端末ＩＰアドレスを送信元として代行送信される。
【００３９】
サービス提供サーバは、ステップＳ３４７において、クラウドサーバ２２０からの端末ＩＰアドレスを送信元とするサービスリクエストを受けて、ステップＳ３４９において、端末ＩＰアドレスを送信先とするサービス情報をクラウドサーバ２２０に返す。
【００４０】
クラウドサーバ２２０は、ステップＳ３５１において、サービス提供サーバからのサービス情報を代行受信する。そして、ステップＳ３５３において、サービス情報を含むメッセージの攻撃をチェックし、攻撃があれば排除する。攻撃を含むサービス情報のメッセージは捨てられるか、攻撃が排除されればステップＳ３５５において、送信先をローカルＩＰアドレスとしてクライアント装置に送信される。
【００４１】
クライアント装置は、ステップＳ３５７において、受信したサービスを取得する。ステップＳ３５９においては、クライアント装置からサービス提供サーバへのアクセスを終了するか否かを判定する。終了でなければステップＳ３４１に戻って、次のサービスリクエストを繰り返す。サービス提供サーバへのアクセスが終了であればステップＳ３６１に進んで、クライアント装置からクラウドサーバ２２０に終了が通知される。クラウドサーバ２２０は終了通知を受けて、ステップＳ３６３において、終了処理を行なう。
【００４２】
なお、図３Ｂにおいては、サービス提供サーバからの紹介にクライアントが応答することで、サービスリクエストを行なう例を示したが、紹介なしにクライアントがサービス提供サーバを指定する場合は、ステップＳ３４１から入ればよい。
【００４３】
《通信メッセージ例》
図４は、本実施形態に係る情報処理システム２００の通信メッセージの構成を示す図である。なお、図４の通信メッセージの構成は一例であって、これに限定されない。
【００４４】
図４の上段は、クライアント装置２１１〜２１６からクラウドサーバ２２０を介してサービス提供サーバへの通信メッセージの構成の変換を示す図である。クライアント装置から２１１〜２１６からクラウドサーバ２２０への送信メッセージ４１０には、送信先にクラウドＩＰアドレス、送信元にクライアント装置に割り当てられたローカルＩＰアドレス、転送先にサーバＩＰアドレスが配置される。そして、クラウドサーバ２２０からサービス提供サーバへの送信メッセージ４２０には、送信先にサーバＩＰアドレス、送信元にクラウドサーバ２２０が通信代行しているクライアント装置の端末ＩＰアドレスが配置される。この変換は、ＩＰアドレス変換テーブル２２１を参照して実行する。
【００４５】
図４の下段は、サービス提供サーバからクラウドサーバ２２０を介してクライアント装置２１１〜２１６への通信メッセージの構成の変換を示す図である。サービス提供サーバからクラウドサーバ２２０への送信メッセージ４３０には、送信先にクラウドサーバ２２０が通信代行しているクライアント装置の端末ＩＰアドレス、送信元にサーバＩＰアドレスが配置される。そして、クラウドサーバ２２０からクライアント装置２１１〜２１６への送信メッセージ４４０には、送信先にクライアント装置に割り当てられたローカルＩＰアドレス、送信元にクラウドＩＰアドレス、転送元にサーバＩＰアドレスが配置される。この変換は、ＩＰアドレス変換テーブル２２１を参照して実行する。
【００４６】
なお、図４においては、転送先や転送元をサービス提供サーバとしているが、これが他のクライアント装置であって、通信がメール通信であっても同様である。このように、サービス提供サーバも他のクライアント装置も、通信相手を所望のクライアント装置として通信するが、その通信はクラウドサーバ２２０で代行されていることになる。
【００４７】
《クラウドサーバの機能構成》
図５は、本実施形態に係るクラウドサーバ２２０の機能構成を示すブロック図である。
【００４８】
クラウドサーバ２２０は、ネットワーク２６０を介してサービス提供サーバやクライアント装置と通信する通信制御部５０１を有する。通信制御部５０１において送受信されるメッセージは、攻撃遮断部５００により攻撃／感染情報ＤＢ２２３を参照してメッセージに攻撃が含まれてないか、メッセージが感染していないかをチェックされる。そして、攻撃や感染が見つかればメッセージの通過は遮断される。攻撃遮断部５００は、攻撃／感染情報ＤＢ２２３と感染防止部５０２と攻撃排除部５０９とを含む。なお、感染防止部５０２と攻撃排除部５０９とは、機能的に分離して図示するが一体であってよい。
【００４９】
通信制御部５０１においてクライアント装置から受信したメッセージは、感染防止部５０２において攻撃／感染情報ＤＢ２２３を参照してメッセージが感染していないがチェックされ、感染していれば遮断あるいは排除される。感染防止部５０２を通過したクライアント装置からの送信メッセージは、端末送信データ受信部５０３で受信される。端末送信データ受信部５０３で受信されたメッセージには、クラウドサーバ２２０に通信代行を依頼するメッセージと、通常の送信メッセージとが含まれる。
【００５０】
通信代行を依頼するメッセージは、代行通信登録部５０４によって、ＩＰアドレス変換テーブル２２１に代行通信依頼したクライアント装置として登録される。そして、代行通信登録部５０４によってＩＰアドレス変換テーブル２２１に登録されたクライアント装置には、ローカルＩＰアドレス送信部５０５によって、登録されたクライアント装置とクラウドサーバ２２０との間の通信に使用されるローカルＩＰアドレスが割り当てられる。
【００５１】
一方、通常の送信メッセージは、端末送信データ記憶部５０６により、受信時刻順にかつクライアント装置に対応付けて、通信データキャッシュ部２２２に記憶される。そして、通常の送信メッセージは、緊急性やファーストイン・ファーストアウトのルールで、端末送信データ読出部５０７により通信データキャッシュ部２２２から読み出され、端末送信データ送信部５０８によって、端末ＩＰアドレスを送信元としてサービス提供サーバなどに送信される。
【００５２】
通信制御部５０１においてサービス提供サーバから受信したメッセージは、攻撃排除部５０９において攻撃／感染情報ＤＢ２２３を参照してメッセージに攻撃が含まれていないがチェックされ、攻撃を含んでいれば遮断あるいは排除される。攻撃排除部５０９を通過したサービス提供サーバからの送信メッセージは、端末受信データ受信部５１０で受信される。端末受信データ受信部５１０で受信されたメッセージには、端末受信データ記憶部５１１により、受信時刻順にかつサービス提供サーバ／クライアント装置に対応付けて、通信データキャッシュ部２２２に記憶される。そして、サービス提供サーバからの送信メッセージは、緊急性やファーストイン・ファーストアウトのルールで、端末受信データ読出部５１２により通信データキャッシュ部２２２から読み出され、端末受信データ送信部５１３によって、ローカルＩＰアドレスを送信先としてクライアント装置に送信される。
【００５３】
《クライアント装置の機能構成》
図６は、本実施形態に係るクライアント装置２１１〜２１６の機能構成を示すブロック図である。
【００５４】
クライアント装置２１１〜２１６は、タッチパネルやキーボードなどからなる操作部６０１と、入出力部６０８とを有する。入出力部６０８は、受信したデータを表示する表示部６０９と、音声を入出力する音声入出力部６１０とを有する。
【００５５】
操作部６０１から入力されたクライアントの指示の内、通信代行をクラウドサーバ２２０に依頼する指示の場合は、通信代行依頼部６０２において通信代行依頼メッセージを生成し、通信制御部６０３を介してクラウドサーバ２２０に送信する。この時には、送信元として、クライアント装置は初期に割り当てられた端末ＩＰアドレスが使用される。通信代行依頼メッセージがクラウドサーバ２２０で受理されると、通信制御部６０３を介してローカルＩＰアドレスがクラウドサーバ２２０から割り当てられる。ローカルＩＰアドレス取得部６０４は、このローカルＩＰアドレスを取得して、ローカルＩＰアドレス記憶部６０５に記憶する。これ以降のクライアント装置の通信は、送受信共にこのローカルＩＰアドレスによりクラウドサーバ２２０とのみ行なわれる。
【００５６】
クライアント装置からクラウドサーバ２２０へのメッセージ送信は、端末送信データ送信部６０６により、ローカルＩＰアドレスを送信元として通信制御部６０３を介して行なわれる。一方、クラウドサーバ２２０からのメッセージ受信は、端末受信データ受信部６０７により、ローカルＩＰアドレスを送信先として通信制御部６０３を介して行なわれ、入出力部６０８に出力される。
（ＩＰアドレス変換テーブル）
図７は、本実施形態に係るＩＰアドレス変換テーブル２２１の構成を示す図である。
【００５７】
ＩＰアドレス変換テーブル２２１は、通信代行を依頼してクラウドサーバ２２０で受理された場合に、依頼したクライアント装置の初期の端末ＩＰアドレス７０１に対応付けて、新たにクライアント装置に割り当てたローカルＩＰアドレス７０２を記憶する。かかるＩＰアドレス変換テーブル２２１により、通信代行をするクライアント装置の登録と、クライアント装置が直接、攻撃を受けないためのＩＰアドレスの変換が実現される。
【００５８】
なお、クライアント装置が、受信メッセージの送信元を判断してクラウドサーバ２２０から以外は受信しないようにすることで、同様の処理は可能である。しかし、送信元の判断を行なった時点で既に攻撃を受ける場合もあるので、本実施形態のように、ＩＰアドレスを変更するのが望ましい。ＩＰアドレスの変更方法は、本例に限定されない。
【００５９】
（通信データキャッシュ部）
図８は、本実施形態に係る通信データキャッシュ部２２２の構成を示す図である。
【００６０】
通信データキャッシュ部２２２は、サービス提供サーバからの受信メッセージを一時保存するサーバメッセージ・キャッシュ部８１０と、クライアント装置からの受信メッセージを一時保存するクライアント装置メッセージ・キャッシュ部８２０と、を有する
サーバメッセージ・キャッシュ部８１０は、サービス提供サーバからのメッセージの受信時刻８１１に対応付けて、送信先の端末ＩＰアドレス８１２、送信元のサーバＩＰアドレス８１３、受信メッセージ（クライアント装置への送信メッセージ）８１４、攻撃や感染有無による通信可否フラグ８１５を記憶する。
【００６１】
クライアント装置メッセージ・キャッシュ部８２０は、クライアント装置からのメッセージの受信時刻８２１に対応付けて、送信元のローカルＩＰアドレス８２２、転送先のサーバＩＰアドレス８２３、受信メッセージ（サービス提供サーバへの送信メッセージ）８２４、攻撃や感染有無による通信可否フラグ８２５を記憶する。
【００６２】
（攻撃／感染情報ＤＢ）
図９は、本実施形態に係る攻撃／感染情報ＤＢ２２３の構成を示す図である。
【００６３】
攻撃／感染情報ＤＢ２２３は、アドレス判定情報９１０と、プロトコル判定情報９２０と、データ／プログラム判定情報９３０と、を有する。なお、攻撃／感染情報ＤＢ２２３の構成は本例に限定されない。
【００６４】
アドレス判定情報９１０は、通信を遮断する通信遮断アドレス９１１に対応付けて、遮断する理由９１２と対処情報９１３とを記憶する。アドレス判定情報９１０により、送信元や送信先のＩＰアドレス、ポート番号などに基づいて通信データの通過／遮断を決定する。いわゆる、"パケットフィルタリング型"と言われるファイアウォールを実現する。
【００６５】
プロトコル判定情報９２０は、通信プロトコル内の判定対象９２１に対応付けて、判定条件９２２と対処情報９２３とを記憶する。プロトコル判定情報９２０により、通信の中身に基づいて通信データの通過／遮断を決定する。いわゆる、"アプリケーションゲートウェイ型"と言われるファイアウォールを実現する。例えば、未使用領域にデータが入っていたり、ＩＰヘッダ内の不必要なフラグが立っていたり、値が正常でない、あるいはパケット長が長すぎる、などが対象および条件として含まれる。なお、本実施形態は攻撃／感染検出が主要な特徴ではないので、詳細な説明は省略する。
【００６６】
データ／プログラム判定情報９３０は、メッセージのデータやプログラム内の判定対象９３１に対応付けて、判定条件９３２と対処情報９３３とを記憶する。データ／プログラム判定情報９３０により、プロトコル判定情報９２０と同様に、"アプリケーションゲートウェイ型"と言われるファイアウォールを実現する。例えば、データパターンや異常な数値、プログラムのコード配列パターン、などが対象および条件として含まれる。なお、本実施形態は攻撃／感染検出が主要な特徴ではないので、詳細な説明は省略する。
【００６７】
《クラウドサーバのハードウェア構成》
図１０は、本実施形態に係るクラウドサーバ２２０のハードウェア構成を示すブロック図である。
【００６８】
図１０で、ＣＰＵ１０１０は演算制御用のプロセッサであり、プログラムを実行することで図５のクラウドサーバ２２０の各機能構成部を実現する。ＲＯＭ１０２０は、初期データおよびプログラムなどの固定データおよびプログラムを記憶する。また、通信制御部５０１は通信制御部であり、本実施形態においては、ネットワーク２６０を介してクライアント装置２１１〜２１６やサービス提供サーバと通信する。なお、ＣＰＵ１０１０は１つに限定されず、複数のＣＰＵであっても、あるいは画像処理用のＧＰＵ（Graphics Processing Unit)を含んでもよい。
【００６９】
ＲＡＭ１０４０は、ＣＰＵ１０１０が一時記憶のワークエリアとして使用するランダムアクセスメモリである。ＲＡＭ１０４０には、本実施形態の実現に必要なデータを記憶する領域が確保されている。クライアント装置ＩＤ／認証情報１０４１は、通信中のクライアント装置の識別子とその認証情報である。ローカルＩＰアドレス１０４２は、通信代行するクライアント装置に割り当て、クラウドサーバ２２０との通信に使用するＩＰアドレスである。端末ＩＰアドレス１１４３は、通信代行するクライアント装置の初期のＩＰアドレスであり、通信代行するクラウドサーバ２２０が外部との通信に使用するＩＰアドレスである。サーバＩＰアドレス１０４４は、クラウドサーバ２２０が通信代行してアクセスするサービス提供サーバのＩＰアドレスである。クラウドＩＰアドレス１０４５は、本クラウドサーバのＩＰアドレスである。攻撃排除／感染防止処理前のメッセージ１０４６は、クライアント装置あるいはサービス提供サーバから受信した未処理のメッセージである。攻撃排除／感染防止処理後のメッセージ１０４７は、メッセージ１０４６に対して攻撃排除／感染防止の処理を行なった処理済みのメッセージである。メッセージの通信可否フラグ１０４８は、処理済みのメッセージ１０４７が通信可能か否かを示すフラグである。送受信メッセージ１０４９は、クライアント装置あるいはサービス提供サーバと通信制御部５０１を介して送受信するメッセージである。
【００７０】
ストレージ１０５０には、データベースや各種のパラメータ、あるいは本実施形態の実現に必要な以下のデータまたはプログラムが記憶されている。ＩＰアドレス変換テーブル２２１は、図７に示したテーブルである。通信データキャッシュ部２２２は、図８に示したキャッシュ部である。攻撃／感染情報ＤＢ２２３は、図９に示したデータベースである。
【００７１】
ストレージ１０５０には、以下のプログラムが格納される。クラウドサーバ制御プログラム１０５１は、本クラウドサーバ２２０の全体を制御するプログラムである。通信代行登録モジュール１０５２は、クラウドサーバ制御プログラム１０５１において、クライアントが依頼したクライアント装置の通信の代行を登録するためのモジュールである。端末−サーバ転送モジュール１０５３は、クラウドサーバ制御プログラム１０５１において、クライアント装置からのメッセージ送信をクラウドサーバ２２０が代行するモジュールである（図１２Ａ参照）。サーバ−端末転送モジュール１０５４は、クラウドサーバ制御プログラム１０５１において、クライアント装置へのメッセージ受信をクラウドサーバ２２０が代行するモジュールである（図１２Ｂ参照）。攻撃排除／感染防止モジュール１０５５は、クラウドサーバ制御プログラム１０５１において、クライアント装置へのメッセージ受信から攻撃を排除し、クライアント装置からのメッセージ送信に基づく感染を防止するモジュールである。
なお、図１０には、本実施形態に必須なデータやプログラムのみが示されており、本実施形態に関連しないデータやプログラムは図示されていない。
【００７２】
《クラウドサーバの処理手順》
図１１は、本実施形態に係るクラウドサーバ２２０の処理手順を示すフローチャートである。このフローチャートは、図１０のＣＰＵ１０１０がＲＡＭ１０４０を使用しながら実行し、図５の機能構成部を実現する。
【００７３】
まず、ステップＳ１１１１において、クライアント装置からの通信代行依頼による通信代行登録であるか否かを判定する。また、ステップＳ１１２１においては、クライアント装置からのメッセージを受信したか否かを判定する。また、ステップＳ１１３１においては、サービス提供サーバからのメッセージを受信したか否かを判定する。
【００７４】
通信代行登録であればステップＳ１１１３に進んで、通信代行を依頼したクライアント装置に割り当てるローカルＩＰアドレスを取得する。なお、ローカルＩＰアドレスはあらかじめクラウドサーバ２２０が準備しておく。次に、ステップＳ１１１５において、ＩＰアドレス変換テーブル２２１に通信代行を依頼したクライアント装置の端末ＩＰアドレスと、ステップＳ１１１３で取得したローカルＩＰアドレスとを対応付けて登録する。そして、ステップＳ１１１７において、ローカルＩＰアドレスをクライアント装置に送信する。以降、クラウドサーバ２２０とクライアント装置との間の通信は、ローカルＩＰアドレスにより実行され、クライアント装置の外部との通信は、端末ＩＰアドレスを送信元とするクラウドサーバ２２０の通信により代行される。
【００７５】
クライアント装置からのメッセージ受信であればステップＳ１１２３に進んで、クライアント装置からの受信メッセージによる感染拡大を防止する処理が実行される。なお、感染が検出されれば、クライアント装置にその旨を報知して、感染が排除できなければ受信メーセージは廃棄される。そして、ステップＳ１１２５において、感染防止処理が行なわれたメッセージは、送信元のクライアント装置や転送先のサービス提供サーバに対応付けて通信データキャッシュ部２２２に記憶される。その後、ステップＳ１１２７において、メッセージのサービス提供サーバへの送信が、サーバへのメッセージ送信処理により実行される（図１２Ａ参照）。
【００７６】
サービス提供サーバからのメッセージ受信であればステップＳ１１３３に進んで、サービス提供サーバからの受信メッセージによる攻撃を排除する処理が実行される。なお、攻撃が検出されれば、サービス提供サーバにその旨を報知して、攻撃が排除できなければ受信メーセージは廃棄される。そして、ステップＳ１１３５において、攻撃排除処理が行なわれたメッセージは、送信元のサービス提供サーバや送信先のクライアント装置に対応付けて通信データキャッシュ部２２２に記憶される。その後、ステップＳ１１３７において、メッセージのクライアント装置への送信が、クライアント装置へのメッセージ送信処理により実行される（図１２Ｂ参照）。
【００７７】
（サービス提供サーバへのメッセージ送信処理）
図１２Ａは、本実施形態に係るサービス提供サーバへのメッセージ送信処理Ｓ１１２７の処理手順を示すフローチャートである。
【００７８】
まず、ステップＳ１２１１においては、通信データキャッシュ部２２２に一時保持されたサービス提供サーバへのクライアント装置からのメッセージの総数が、閾値ｍより多いか否かが判定される。多くなければステップＳ１２２１に進んで、通信データキャッシュ部２２２に一時保持されたクライアント装置へのサービス提供サーバからのメッセージの総数が、閾値ｎより多いか否かが判定される。閾値ｎより多くなければリターンする。一方、閾値ｎより多ければ図１２ＢのステップＳ１１３７の処理を呼び出して実行する。
【００７９】
ステップＳ１２１１の判定において、サービス提供サーバへのクライアント装置からのメッセージの総数が閾値ｍより多い場合には、ステップＳ１２１３に進む。ステップＳ１２１３においては、通信データキャッシュ部２２２に一時保持されたサービス提供サーバへのクライアント装置からのメッセージの内、優先順位の高いメッセージを選択して取得する。なお、優先順位は緊急性などのクライアント装置の設定やクラウドサーバによる判定が含まれるが、ここでは詳説しない。優先度の設定がなければ、ファーストイン・ファーストアウトの法則に基づいて選択する。
【００８０】
ステップＳ１２１５においては、クライアント装置からのメッセージの送信元であるローカルＩＰアドレスを、ＩＰアドレス変換テーブル２２１を参照してクライアント装置本来の端末ＩＰアドレスに変換する。次に、ステップＳ１２１７において、メッセージの送信先を転送先であるサービス提供サーバのサーバＩＰアドレスに設定する。そして、ステップＳ１２１９において、クライアント装置からのメッセージを感染防止処理して、クラウドサーバ２２０からサービス提供サーバに送信する。
【００８１】
（クライアント装置へのメッセージ送信処理）
図１２Ｂは、本実施形態に係るクライアント装置２１１〜２１６へのメッセージ送信処理Ｓ１１３７の処理手順を示すフローチャートである。
【００８２】
まず、ステップＳ１２３１においては、通信データキャッシュ部２２２に一時保持されたクライアント装置へのサービス提供サーバからのメッセージの総数が、閾値ｎより多いか否かが判定される。多くなければステップＳ１２４３に進んで、通信データキャッシュ部２２２に一時保持されたサービス提供サーバへのクライアント装置からのメッセージの総数が、閾値ｍより多いか否かが判定される。閾値ｍより多くなければリターンする。一方、閾値ｍより多ければ図１２ＡのステップＳ１１２７の処理を呼び出して実行する。
【００８３】
ステップＳ１２３１の判定において、クライアント装置へのサービス提供サーバからのメッセージの総数が閾値ｎより多い場合には、ステップＳ１２３３に進む。ステップＳ１２３３においては、通信データキャッシュ部２２２に一時保持されたクライアント装置へのサービス提供サーバからのメッセージの内、優先順位の高いメッセージを選択して取得する。なお、優先順位は緊急性などのサービス提供サーバの設定やクラウドサーバによる判定が含まれるが、ここでは詳説しない。優先度の設定がなければ、ファーストイン・ファーストアウトの法則に基づいて選択する。
【００８４】
ステップＳ１２３５においては、サービス提供サーバからのメッセージの送信先である端末ＩＰアドレスを、ＩＰアドレス変換テーブル２２１を参照してクライアント装置にクラウドサーバ２２０は割り当てたローカルＩＰアドレスに変換する。次に、ステップＳ１２３７において、メッセージの送信元をクラウドサーバ２２０のクラウドＩＰアドレスに設定する。次に、ステップＳ１２３９において、メッセージの送信元であるサービス提供サーバのサーバＩＰアドレスを転送元に変更する。そして、サービス提供サーバからのメッセージを攻撃削除処理して、クラウドサーバ２２０からクライアント装置に送信する。
【００８５】
《クライアント装置のハードウェア構成》
図１３は、本実施形態に係るクライアント装置２１１〜２１６のハードウェア構成を示すブロック図である。
【００８６】
図１３で、ＣＰＵ１３１０は演算制御用のプロセッサであり、プログラムを実行することで図６のクライアント装置２１１〜２１６の各機能構成部を実現する。ＲＯＭ１３２０は、初期データおよびプログラムなどの固定データおよびプログラムを記憶する。また、通信制御部６０３は通信制御部であり、本実施形態においては、ネットワークを介してクラウドサーバ２２０と通信する。なお、ＣＰＵ１３１０は１つに限定されず、複数のＣＰＵであっても、あるいは画像処理用のＧＰＵを含んでもよい。
【００８７】
ＲＡＭ１３４０は、ＣＰＵ１３１０が一時記憶のワークエリアとして使用するランダムアクセスメモリである。ＲＡＭ１３４０には、本実施形態の実現に必要なデータを記憶する領域が確保されている。クライアントＩＤ／認証情報１３４１は、クライアントの識別子とその認証情報である。ローカルＩＰアドレス１３４２は、通信代行するクラウドサーバ２２０から割り当てられ、クラウドサーバ２２０との通信に使用するＩＰアドレスである。クラウドＩＰアドレス１３４３は、通信代行するクラウドサーバ２２０のＩＰアドレスである。サーバＩＰアドレス１３４４は、クラウドサーバ２２０が通信代行してアクセスするサービス提供サーバのＩＰアドレスである。感染報知情報１３４５は、本クライアント装置からの送信メッセージから感染が検出された場合に受信した、報知情報である（図１４参照）。入出力データ１３４６は、入出力インタフェース１３６０を介して入出力される入出力データを示す。送受信データ１３４７は、通信制御部６０３を介して送受信される送受信データを示す。
【００８８】
ストレージ１３５０には、データベースや各種のパラメータ、あるいは本実施形態の実現に必要な以下のデータまたはプログラムが記憶されている。ＩＰアドレス保持部１３５１は、クライアント装置が使用するＩＰアドレスを保持する。ストレージ１３５０には、以下のプログラムが格納される。クライアント装置制御プログラム１３５２は、本クライアント装置２１１〜２１６の全体を制御する制御プログラムである。通信代行依頼モジュール１３５３は、クライアント装置制御プログラム１３５２において、クラウドサーバ２２０に通信代行を依頼するモジュールである。通信代行処理モジュール１３５４は、クライアント装置制御プログラム１３５２において、クラウドサーバ２２０と共に通信代行を処理するモジュールである。通信代行アプリケーションプログラム１３５５は、クラウドサーバ２２０から通信代行登録時にダウンロードされた通信代行アプリケーションを実行するプログラムである。
【００８９】
入出力インタフェース１３６０は、入出力機器との入出力データをインタフェースする。入出力インタフェース１３６０には、表示部６０９、キーボード、タッチパネル、ポインティンデバイスなどの操作部６０１が接続される。また、スピーカやマイクなどの音声入出力部６１０が接続される。さらに、ＧＰＳ（Global Positioning System)位置生成部１３６１やカメラ１３６２などが接続される。
【００９０】
なお、図１３には、本実施形態に必須なデータやプログラムのみが示されており、本実施形態に関連しないデータやプログラムは図示されていない。
【００９１】
（感染報知情報）
図１４は、本実施形態に係る感染報知情報１３４５の構成を示す図である。感染報知情報１３４５は、クラウドサーバ２２０がクライアント装置からのメッセージから感染を検出した場合に、クライアント装置に報知される情報である。
【００９２】
感染報知情報１３４５は、例えばウィルスであれば、感染ウィルス名１４０１に対応付けて、感染検出日時１４０２、感染が検出されたメッセージ１４０３、メッセージを送るサービス提供サーバを示す転送先１４０４を記憶する。また、クライアント装置が有するアプリケーションプログラム１４０５、メッセージ内のデータ１４０６、治療法を含む対処情報１４０７を記憶する。
【００９３】
なお、図示しないが、クラウドサーバ２２０が検出した攻撃のサービス提供サーバへの攻撃報知情報も、図１４に準ずる形式を有する。また、感染報知情報１３４５を、参照のためサービス提供サーバに通知してもよいし、攻撃報知情報をクライアント装置に通知してもよい。さらに、第８実施形態で詳細に説明するが、クラウドサーバが感染報知情報や攻撃報知情報を蓄積して、学習情報を報知するのが望ましい。
【００９４】
《クライアント装置の処理手順》
図１５は、本実施形態に係るクライアント装置２１１〜２１６の処理手順を示すフローチャートである。このフローチャートは、図１３のＣＰＵ１３１０がＲＡＭ１３４０を使用しながら実行し、図６の機能構成部を実現する。
【００９５】
まず、ステップＳ１５１１において、クライアント装置からクラウドサーバ２２０への通信代行依頼であるか否かを判定する。また、ステップＳ１５２１においては、クライアント装置によるメッセージの送受信か否かを判定する。
【００９６】
通信代行登録であればステップＳ１５１３に進んで、通信代行を依頼するメッセージをクラウドサーバ２２０に送信する。次に、ステップＳ１５１５においては、クラウドサーバ２２０から割り当てられた以降使用するローカルＩＰアドレスを受信して、記憶する。そして、ステップＳ１５１７において、クラウドサーバ２２０からダウンロードされた本実施形態の処理を行なうアプリケーションプログラムを受信して、起動する。以降、クラウドサーバ２２０とクライアント装置との間の通信は、ローカルＩＰアドレスにより実行され、クライアント装置の外部との通信は、転送先にサービス提供サーバを設定することによりクラウドサーバ２２０により代行される。
【００９７】
クライアント装置によるメッセージの送受信であれば、ステップＳ１５２３において、ステップＳ１５１７で受信して起動した通信代行アプリケーション処理（図１６参照）が実行される。
【００９８】
（通信代行アプリケーション）
図１６は、本実施形態に係る通信代行アプリケーションＳ１５２３の処理手順を示すフローチャートである。
【００９９】
まず、ステップＳ１６０１において、クライアント装置からのメッセージ送信であるか否かが判定される。メッセージ送信であれば、ステップＳ１６０３に進む。
【０１００】
ステップＳ１６０３において、送信先をクラウドサーバ２２０のクラウドＩＰアドレスに設定する。次に、ステップＳ１６０５において、送信元をローカルＩＰアドレスに設定する。次に、ステップＳ１６０７において、メッセージを送信したいサービス提供サーバのサーバＩＰアドレスを転送先として設定する。そして、ステップＳ１６０９において、メッセージを送信先のクラウドサーバに送信する。続いて、ステップＳ１６１１において、クラウドサーバ２２０からの感染報知情報の受信があるか否かを判定する。感染報知情報の受信がなければリターンするが、感染報知情報の受信があれば、ステップＳ１６１３において、受信した感染報知情報に基づいて感染警告を出力する。
【０１０１】
一方、メッセージ送信でない、すなわちメッセージ受信の場合は、ステップＳ１６２１において、メッセージの送信先がローカルＩＰアドレスか否かが判定される。送信先がローカルＩＰアドレスでなければ、何もせずに処理を終了する。
【０１０２】
送信先がローカルＩＰアドレスであれば、ステップＳ１６２３において、送信元のクラウドＩＰアドレスを取得する。次に、転送先からサービス提供サーバのサーバＩＰアドレスを取得する。ステップＳ１６２７において、受信メッセージから通信データを取得する。そして、ステップＳ１６２９において、取得した通信データを処理する。
【０１０３】
［第３実施形態］
次に、本発明の第３実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第２実施形態と比べると、クラウドサーバでの攻撃排除および感染防止の共通部分と特定部分とを分離処理する点で異なる。その他の構成および動作は、第２実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【０１０４】
本実施形態によれば、クラウドサーバでの攻撃排除および感染防止における重複処理をなくし、迅速な処理ができる。
【０１０５】
《クラウドサーバの機能構成》
図１７は、本実施形態に係るクラウドサーバ１７２０の機能構成を示すブロック図である。なお、図１７において、第２実施形態の図５と同様の機能構成部には同じ参照番号を付して、説明は省略する。
【０１０６】
図１７において、通信制御部１７０１は、クライアント装置からのメッセージとサービス提供サーバからのメッセージとの感染や攻撃の検出において、共通に検出可能な部分を実行する、共通攻撃／感染検出部１７０１ａを有する。そして、クライアント装置からのメッセージに特有の感染については、特定感染防止部１７０２により検出および防止を行なう。また、サービス提供サーバからのメッセージに特有の攻撃については、特定攻撃排除部１７０９により検出および防止を行なう。図１７の攻撃遮断部１７００は、攻撃／感染情報ＤＢ２２３と特定感染防止部１７０２と特定攻撃排除部１７０９とを含む。なお、特定感染防止部１７０２と特定攻撃排除部１７０９とは、機能的に分離して図示するが一体であってよい。
【０１０７】
かかる共通攻撃／感染検出部１７０１ａと、特定感染防止部１７０２と、特定攻撃排除部１７０９との処理は、第２実施形態と同様の攻撃／感染情報ＤＢ２２３に基づいて行なわれてよい。あるいは、別個にデータベースを設けてもよい。なお、例えば、図９のアドレス判定情報９１０による送信元や送信先、ＩＰアドレスに基づく排除は、共通攻撃／感染検出部１７０１ａで行なわれる。あるいは、感染や攻撃発生の初期には、特定攻撃／感染として処理され、定常的に発生する場合は共通攻撃／感染の処理に変更するようにしてもよい。
【０１０８】
［第４実施形態］
次に、本発明の第４実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第３実施形態と比べると、クラウドサーバでの攻撃排除および感染防止の共通部分をルータにより分離処理する点で異なる。その他の構成および動作は、第３実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【０１０９】
本実施形態によれば、クラウドサーバでの攻撃排除および感染防止における負荷を低減できる。
【０１１０】
《情報処理システム》
図１８は、本実施形態に係る情報処理システム１８００の構成を示すブロック図である。なお、図１８において、第２実施形態の図５または第３実施形態の図１７と同様の機能構成部には同じ参照番号を付して、説明は省略する。
【０１１１】
図１８において、クラウドサーバ１８２０とネットワーク２６０との間に、共通攻撃／感染検出部１８１１を有するルータ１８１０が接続されている。共通攻撃／感染検出部１８１１は、共通攻撃／感染情報ＤＢ１８１２を参照して、クライアント装置からのメッセージとサービス提供サーバからのメッセージとの感染や攻撃の検出において、共通に検出可能な部分を実行する。かかる共通攻撃／感染検出部１８１１は、図１７の共通攻撃／感染検出部１７０１ａと同じでも構わない。また、図１８において、クライアント装置からのメッセージに特有の感染を防止する特定感染防止部１７０２と、サービス提供サーバからのメッセージに特有の攻撃を排除する特定攻撃排除部１７０９とは、第３実施形態の図１７と同様である。図１８の攻撃遮断部１８００は、特定攻撃／感染情報ＤＢ１８２３と特定感染防止部１７０２と特定攻撃排除部１７０９とを含む。なお、特定感染防止部１７０２と特定攻撃排除部１７０９とは、機能的に分離して図示するが一体であってよい。
【０１１２】
さらに、感染防止や攻撃排除の処理を全てクラウドサーバからルータに移すことも可能である。また、ルータ内で共通部分と特定部分とを分けて処理したり、図５のようにクラアイント装置からのメッセージとサービス提供サーバからのメッセージとを分けて処理したりもできる。
［第５実施形態］
次に、本発明の第５実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第２乃至第４実施形態と比べると、クラウドサーバによる通信代行を行ない攻撃排除および感染防止を行なう対象をＷｅｂサービスに限定した点で異なる。その他の構成および動作は、第２乃至第４実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。なお、本実施形態におけるＷｅｂサービスへの限定は、通信処理において攻撃や感染の多い例として示したものであり、他の攻撃や感染の多いサービスへの限定も同様に行なわれてよい。なお、"展開データ"との文言は、表示画面を画素単位のドットデータに展開したデータを意味する。また、"Ｗｅｂデータ"はオブジェクトベースのデータであり、ドットデータに展開していないデータである。
【０１１３】
本実施形態によれば、特に攻撃や感染の多いＷｅｂサービスをクラウドサーバに代行させることにより、クラウドサーバの負荷を制限しながらクライアント装置への攻撃排除および感染防止ができる。
【０１１４】
《情報処理システムの動作手順》
図１９は、本実施形態に係る情報処理システム１９００における通信代行の動作手順を示すシーケンス図である。なお、図１９において、第２実施形態の図３と同様のステップには同じステップ番号を付して、説明は省略する。
【０１１５】
ステップＳ３０５において表示された攻撃防御サービスの内から、クライアントがＷｅｂサービスに関する攻撃防御を選択すると、ステップＳ１９０７において、Ｗｅｂサービスに関する攻撃防御の依頼がクラウドサーバ１９２０に通知される。
【０１１６】
クラウドサーバ１９２０は、ステップＳ１９０９において、クライアント装置の端末ＩＰアドレスを、クラウドサーバ１９２０がサービス提供サーバをアクセスする時に使用する仮想端末ＩＰアドレスと対応付けて登録する。以降、クライアント装置からのＷｅｂサービスへのアクセスは、クラウドサーバ１９２０により可能端末ＩＰアドレスを送信元として代行される。クライアント装置におけるＷｅｂサービス以外の通常のメールなどは、クライアント装置で直接、端末ＩＰアドレスにより実行される。次に、ステップＳ１９１１において、クラウドサーバ１９２０は、本実施形態に係るアプリケーションプログラムをクライアント装置にダウンロードする。クライアント装置は、ステップＳ１９１３において送信されたアプリケーションプログラムを受信して、ステップＳ２９１５において起動する。
【０１１７】
その後のクライアント端末の処理において、ステップＳ１９２１でＷｅｂサービスが選別される。Ｗｅｂサービス以外の処理は、本実施形態のようなクラウドサーバ１９２０による代行はせずに、クライアント装置から直接、送受信が行なわれる。ステップＳ１９２３において、クライアント装置からクラウドサーバ１９２０にＷｅｂサービスリクエストが送信される。
【０１１８】
クライアント装置からのＷｅｂサービスリクエストを受信したクラウドサーバ１９２０は、ステップＳ１９２５において、クライアント装置からのメッセージの感染有無をチェックし、感染があれば排除する。そして、ステップＳ１９２７において、感染のないＷｅｂサービスリクエストのメッセージを、クラウドサーバ１９２０により仮想端末ＩＰアドレスを送信元として代行送信して、クラウドサーバ１９２０とサービス提供サーバとのセッションが開始する。
【０１１９】
これ以降、クラウドサーバ１９２０とクライアント装置との通信データは、クラウドサーバ１９２０の仮想Ｗｅｂブラウザの受信メッセージではなく、受信データを画面上に展開したドットデータでやり取りされる。なお、展開したドットデータは圧縮されてよい。すなわち、ステップＳ１９２９においては、クライアント装置がクラウドサーバ１９２０から受信した展開データを配置する表示枠を生成する。そして、ステップＳ１９３１において、受信データを表示枠にはめこんでＷｅｂサービスのセッション開始画面を表示する。したがって、クライアントは、クライアント装置があたかもＷｅｂブラウザを実行しているかのようにクライアント装置を操作可能である。
【０１２０】
クライアントによる情報要求がクライアント装置に入力されると、ステップＳ１９３３において、情報要求の送信データがクラウドサーバ１９２０に送信される。クラウドサーバ１９２０においては、クライアント装置から受信した送信データに基づいてＷｅｂブラウザの送信メッセージを生成して、ステップＳ１９３７において、サービス提供サーバにＷｅｂメッセージを送信する。サービス提供サーバでは、情報要求のＷｅｂメッセージを受信して情報を取得し、ステップＳ１３９９において、クラウドサーバ１９２０に提供する情報を含むＷｅｂメッセージを返す。
【０１２１】
クラウドサーバ１９２０は、ステップＳ１９４１において、受信したＷｅｂメッセージに対して攻撃チェックを行ない、攻撃があって排除できなければメッセージを破棄する。攻撃チェック済みのメッセージは、ステップＳ１９４３において、出力情報に展開される。そして、ステップＳ１９４５において出力情報を圧縮し、ステップＳ１９４７において画面展開データをクライアント装置に送信する。
【０１２２】
クライアント装置は、ステップＳ１９４９において、受信した画面展開データをステップＳ１９２９で設定した表示枠に配置して表示する。本実施形態のようにクライアント装置とクラウドサーバ１９２０との間の通信は展開データなので、感染や攻撃が排除されたデータの通信となる。また、展開データのデータ長やデータ量は予測できるため、閾値と比較することで簡単に感染や攻撃を検出できることになる。
【０１２３】
ステップＳ１９５１においては、クライアント装置からサービス提供サーバへのアクセスを終了するか否かを判定する。終了でなければステップＳ１９３３に戻って、次のサービスリクエストを繰り返す。サービス提供サーバへのアクセスが終了であればステップＳ１９５３に進んで、クライアント装置からクラウドサーバ１９２０に終了が通知される。クラウドサーバ１９２０は終了通知を受けて、ステップＳ１９５５において、仮想Ｗｅｂブラウザによるサービス提供サーバとのセッション終了処理を行なう。
【０１２４】
《通信メッセージ》
図２０は、本実施形態に係る情報処理システム１９００の通信メッセージの構成を示す図である。なお、図２０の通信メッセージの構成は一例であって、これに限定されない。
【０１２５】
図２０の上段は、クライアント装置１９１１〜１９１６からクラウドサーバ１９２０を介してサービス提供サーバへの通信メッセージの構成の変換を示す図である。クライアント装置から１９１１〜１９１６からクラウドサーバ１９２０への送信メッセージ２０１０には、送信先にクラウドＩＰアドレス、送信元にクライアント装置の端末ＩＰアドレス、転送先にサーバＩＰアドレスが配置される。ここで、データは展開データである。そして、クラウドサーバ１９２０からサービス提供サーバへの送信メッセージ２０２０には、送信先にサーバＩＰアドレス、送信元に通信代行を依頼したクライアント装置に対応して割り当てられた仮想端末ＩＰアドレスが配置される。この変換は、ＩＰアドレス変換テーブル２１２１を参照して実行する。ここで、データはＷｅｂデータである。
【０１２６】
図２０の下段は、サービス提供サーバからクラウドサーバ１９２０を介してクライアント装置１９１１〜１９１６への通信メッセージの構成の変換を示す図である。サービス提供サーバからクラウドサーバ１９２０への送信メッセージ１０３０には、送信先にクラウドサーバ１９２０が通信代行しているクライアント装置に対応して割り当てられた仮想端末ＩＰアドレス、送信元にサーバＩＰアドレスが配置される。ここで、データはＷｅｂデータである。そして、クラウドサーバ１９２０からクライアント装置１９１１〜１９１６への送信メッセージ１９４０には、送信先にクライアント装置の端末ＩＰアドレス、送信元にクラウドＩＰアドレス、転送元にサーバＩＰアドレスが配置される。この変換は、ＩＰアドレス変換テーブル２１２１を参照して実行する。ここで、データは展開データである。
【０１２７】
なお、図２０においては、転送先や転送元はサービス提供サーバのＷｅｂサービスである。本実施形態においては、サービス提供サーバや他のクライアント装置とのメール通信の場合は、クラウドサーバ１９２０で代行されずに、直接、クライアント装置から通信することになる。
【０１２８】
《クラウドサーバの機能構成》
図２１は、本実施形態に係るクラウドサーバ１９２０の機能構成を示すブロック図である。なお、図２１において、第２実施形態の図５と同様の機能構成部には同じ参照番号を付して、説明は省略する。
【０１２９】
まず、ＩＰアドレス変換テーブル２１２１には、図５とは違って、クライアント装置の端末ＩＰアドレスと、クラウドサーバ１９２０がサービス提供サーバのアクセスに使用する仮想端末ＩＰアドレスとが対応付けて登録される（図２３Ａ参照）。また、通信データキャッシュ部２１２２は、図５とは異なるＩＰアドレスに対応付けて通信データを一時保持する（図２３Ｂ参照）。また、攻撃／感染情報ＤＢ２１２３は、図５の攻撃／感染情報ＤＢ２２３に加えて、クライアント装置とクラウドサーバ１９２０との間の通信データ量から攻撃や感染を判定する閾値を格納する（図２４参照）。
【０１３０】
図２１の攻撃遮断部２１００は、攻撃／感染情報ＤＢ２１２３と感染防止部２１０２と攻撃排除部５０９と第２攻撃排除部２１１４を含む。なお、感染防止部２１０２と攻撃排除部５０９と第２攻撃排除部２１１４とは、機能的に分離して図示するが一体であってよい。感染防止部２１０２は、図５の感染防止部５０２の感染防止に加えて、クライアント装置からの受信データ長や受信データ量に基づく感染検出を行なう。代行通信登録部２１０４は、ＩＰアドレス変換テーブル２１２１に本実施形態に使用されるＩＰアドレスを登録する。端末送信データ生成・送信部２１０８は、通信データキャッシュ部２１２２から読み出したクライアント装置から受信した展開データからＷｅｂ用の端末送信データを生成して、サービス提供サーバに送信する。端末受信データ展開・送信部２１１３は、通信データキャッシュ部２１２２から読み出したサービス提供サーバから受信したＷｅｂデータを展開して端末受信データを生成して、クライアント装置に送信する。第２攻撃排除部２１１４は、端末受信データ展開・送信部２１１３がクライアント装置に送信する展開されたデータを、そのデータ長やデータ量に基づいて、攻撃を検出し排除する。
【０１３１】
《クライアント装置の機能構成》
図２２は、本実施形態に係るクライアント装置１９１１〜１９１６の機能構成を示すブロック図である。なお、図２２において、第２実施形態の図６と同様の機能構成部には同じ参照番号を付して、説明は省略する。
【０１３２】
Ｗｅｂサービス選別部２２０５は、操作部６０１へのクライアントの操作から、Ｗｅｂサービスに通信接続しようとしていることを判定する。そして、Ｗｅｂサービスへの通信接続であれば、端末送信データ送信部６０６に対して、通信代行を依頼しているクラウドサーバ１９２０へ端末送信データを送信する。
【０１３３】
（ＩＰアドレス変換テーブル）
図２３Ａは、本実施形態に係るＩＰアドレス変換テーブル２１２１の構成を示す図である。
【０１３４】
ＩＰアドレス変換テーブル２１２１は、通信代行を依頼してクラウドサーバ１９２０で受理された場合に、依頼したクライアント装置の初期の端末ＩＰアドレス２３１１に対応付けて、新たにクライアント装置に対応してクラウドサーバ１９２０が使用する仮想端末ＩＰアドレス２３１２を記憶する。かかるＩＰアドレス変換テーブル２１２１により、通信代行をするクライアント装置の登録と、Ｗｅｂサービス時にクライアント装置が直接、攻撃を受けないためのＩＰアドレスの変換が実現される。
【０１３５】
（通信データキャッシュ部）
図２３Ｂは、本実施形態に係る通信データキャッシュ部２１２２の構成を示す図である。
【０１３６】
通信データキャッシュ部２１２２は、サービス提供サーバからの受信メッセージを一時保存するサーバメッセージ・キャッシュ部２３２０と、クライアント装置からの受信メッセージを一時保存するクライアント装置メッセージ・キャッシュ部２３３０と、を有する
サーバメッセージ・キャッシュ部２３２０は、サービス提供サーバからのメッセージの受信時刻２３２１に対応付けて、送信先の仮想端末ＩＰアドレス２３２２、送信元のサーバＩＰアドレス２３２３、受信メッセージ（クライアント装置へ送信する前のＷｅｂメッセージ）２３２４、攻撃や感染有無による通信可否フラグ２３２５を記憶する。
【０１３７】
クライアント装置メッセージ・キャッシュ部２３３０は、クライアント装置からのメッセージの受信時刻２３３１に対応付けて、送信元のクライアント装置の端末ＩＰアドレス２３３２、転送先のサーバＩＰアドレス２３３３、受信メッセージ（サービス提供サーバへ送信する前の展開データメッセージ）２３３４、攻撃や感染有無による通信可否フラグ２３３５を記憶する。
【０１３８】
（攻撃／感染情報ＤＢ）
図２４は、本実施形態に係る攻撃／感染情報ＤＢ２１２３の構成を示す図である。
【０１３９】
攻撃／感染情報ＤＢ２１２３は、図９の攻撃／感染情報ＤＢ２２３と同様に、アドレス判定情報９１０と、プロトコル判定情報９２０と、データ／プログラム判定情報９３０と、を有する。さらに、攻撃／感染情報ＤＢ２１２３は、クライアント装置とクラウドサーバ１９２０との間で通信される展開データに基づいて、攻撃や感染を簡易に検出するためのデータ量閾値２４１０を有する。データ量閾値２４１０は、クライアント装置がクラウドサーバ１９２０に送信する端末送信データ量の閾値２４１１と、クライアント装置がクラウドサーバ１９２０から受信する端末受信データ量の閾値２４１２と、を含む。なお、攻撃／感染情報ＤＢ２１２３の構成は本例に限定されない。
【０１４０】
《クラウドサーバの処理手順》
図２５は、本実施形態に係るクラウドサーバ１９２０の処理手順を示すフローチャートである。このフローチャートは、図１０のＣＰＵ１０１０がＲＡＭ１０４０を使用しながら実行し、図２１の機能構成部を実現する。なお、図２５において、第２実施形態の図１１と同様のステップには同じステップ番号を付して、説明は省略する。
【０１４１】
まず、ステップＳ２５１１において、クライアント装置からのＷｅｂサービスの通信代行依頼による通信代行登録であるか否かを判定する。また、ステップＳ２５２１においては、クライアント装置からの展開データを含むメッセージを受信したか否かを判定する。また、ステップＳ２５３１においては、サービス提供サーバからのＷｅｂメッセージを受信したか否かを判定する。
【０１４２】
Ｗｅｂサービスの通信代行登録であればステップＳ２５１３に進んで、通信代行を依頼したクライアント装置に割り当てる仮想端末ＩＰアドレスを取得する。なお、仮想端末ＩＰアドレスはあらかじめクラウドサーバ１９２０が準備しておく。次に、ステップＳ２５１５において、ＩＰアドレス変換テーブル２１２１に通信代行を依頼したクライアント装置の端末ＩＰアドレスと、ステップＳ２５１３で取得した仮想通信ＩＰアドレスとを対応付けて登録する。以降、Ｗｅｂサービスの場合には、クラウドサーバ１９２０とサービス提供サーバとの間の通信は、仮想端末ＩＰアドレスにより実行され、Ｗｅｂサービスにおけるクライアント装置の外部との通信は、仮想端末ＩＰアドレスを送信元とするクラウドサーバ１９２０の通信により代行される。
【０１４３】
クライアント装置からの展開データを含むメッセージ受信であればステップＳ２５２３に進んで、クライアント装置からの受信メッセージによる感染拡大を防止する処理が実行される。この感染拡大防止処理には、第２実施形態の処理に加えて、通信データ長や通信データ量に基づく簡易な検出が行なわれる。なお、感染が検出されれば、クライアント装置にその旨を報知して、感染が排除できなければ受信メーセージは廃棄される。そして、ステップＳ２５２５において、クライアント装置から受信した展開データを含むメッセージを、送信元のクライアント装置や転送先のサービス提供サーバに対応付けて通信データキャッシュ部２１２２に一時保持する。その後、Ｗｅｂメッセージのサービス提供サーバへの送信が、サーバへのメッセージ送信処理により実行される（図２６Ａ参照）。
【０１４４】
サービス提供サーバからのＷｅｂメッセージ受信であればステップＳ１１３３に進んで、サービス提供サーバからの受信メッセージによる攻撃を排除する処理が実行される。なお、攻撃が検出されれば、サービス提供サーバにその旨を報知して、攻撃が排除できなければ受信メーセージは廃棄される。そして、ステップＳ２５３５において、攻撃排除処理が行なわれたＷｅｂメッセージは、送信元のサービス提供サーバや送信先のクライアント装置に対応付けて通信データキャッシュ部２１２２に記憶される。その後、展開メッセージのクライアント装置への送信が、クライアント装置へのメッセージ送信処理により実行される（図２６Ｂ参照）。
【０１４５】
（サービス提供サーバへのメッセージ送信処理）
図２６Ａは、本実施形態に係るサービス提供サーバ２３０〜２５０へのメッセージ送信処理Ｓ２５２７の処理手順を示すフローチャートである。なお、図２６Ａにおいて、第２実施形態の図１１Ａと同様のステップには同じステップ番号を付して、説明は省略する。
【０１４６】
まず、ステップＳ１２１１においては、通信データキャッシュ部２１２２に一時保持されたサービス提供サーバへのクライアント装置からのメッセージの総数が、閾値ｍより多いか否かが判定される。多くなければステップＳ１２２１に進んで、通信データキャッシュ部２１２２に一時保持されたクライアント装置へのサービス提供サーバからのメッセージの総数が、閾値ｎより多いか否かが判定される。閾値ｎより多くなければリターンする。一方、閾値ｎより多ければ図２６ＢのステップＳ２５３７の処理を呼び出して実行する。
【０１４７】
ステップＳ１２１１の判定において、サービス提供サーバへのクライアント装置からのメッセージの総数が閾値ｍより多い場合には、ステップＳ２６１３に進む。ステップＳ２６１３においては、通信データキャッシュ部２１２２に一時保持されたサービス提供サーバへのクライアント装置からのメッセージの内、優先順位の高いメッセージを選択して取得する。そして、ステップＳ２６１５において、通信データキャッシュ部２１２２から読み出した展開データに基づいて、Ｗｅｂメッセージを生成する。
【０１４８】
ステップＳ２６１７においては、クライアント装置からのメッセージの送信元である端末ＩＰアドレスを、ＩＰアドレス変換テーブル２１２１を参照してクライアント装置に割り当てられた仮想端末ＩＰアドレスに変換する。次に、ステップＳ２６１９において、メッセージの送信先を転送先であるサービス提供サーバのサーバＩＰアドレスに設定する。そして、ステップＳ２６２１において、クライアント装置からのｗｅｂメッセージを感染防止処理して、クラウドサーバ１９２０からサービス提供サーバに送信する。
【０１４９】
（クライアント装置へのメッセージ送信処理）
図２６Ｂは、本実施形態に係るクライアント装置１９１１〜１９１６へのメッセージ送信処理Ｓ２５３７の処理手順を示すフローチャートである。なお、図２６Ｂにおいて、第２実施形態の図１１Ｂと同様のステップには同じステップ番号を付している。
【０１５０】
まず、ステップＳ１２３１においては、通信データキャッシュ部２１２２に一時保持されたクライアント装置へのサービス提供サーバからのｗｅｂメッセージの総数が、閾値ｎより多いか否かが判定される。多くなければステップＳ１２４３に進んで、通信データキャッシュ部２１２２に一時保持されたサービス提供サーバへのクライアント装置からのメッセージの総数が、閾値ｍより多いか否かが判定される。閾値ｍより多くなければリターンする。一方、閾値ｍより多ければ図２６ＡのステップＳ２５２７の処理を呼び出して実行する。
【０１５１】
ステップＳ１２３１の判定において、クライアント装置へのサービス提供サーバからのメッセージの総数が閾値ｎより多い場合には、ステップＳ１２３３に進む。ステップＳ１２３３においては、通信データキャッシュ部２１２２に一時保持されたクライアント装置へのサービス提供サーバからのＷｅｂメッセージの内、優先順位の高いメッセージを選択して取得する。
【０１５２】
次に、ステップＳ２６３５において、通信データキャッシュ部２１２２から読み出したＷｅｂメッセージを展開して展開データを生成する。そして、その展開データのデータ長やデータ量に基づいて、攻撃有無の簡易な判定を行なう。
【０１５３】
そして、ステップＳ１２３７において、メッセージの送信元をクラウドサーバ１９２０のクラウドＩＰアドレスに設定する。次に、ステップＳ１２３９において、メッセージの送信元であるサービス提供サーバのサーバＩＰアドレスを転送元に変更する。そして、サービス提供サーバからの展開データを攻撃削除処理して、クラウドサーバ１９２０からクライアント装置に送信する。
【０１５４】
《クライアント装置の処理手順》
図２７は、本実施形態に係るクライアント装置１９１１〜１９１６の処理手順を示すフローチャートである。このフローチャートは、図１３のＣＰＵ１３１０がＲＡＭ１３４０を使用しながら実行し、図２２の機能構成部を実現する。なお、図２７において、第２実施形態の図１５と同様のステップには同じステップ番号を付している。
【０１５５】
まず、ステップＳ２７１１において、クライアント装置からクラウドサーバ１９２０へのＷｅｂサービスの通信代行依頼であるか否かを判定する。また、ステップＳ１５２１においては、クライアント装置によるメッセージの送受信か否かを判定する。
【０１５６】
Ｗｅｂサービスの通信代行登録であればステップＳ２７１３に進んで、Ｗｅｂサービスの通信代行を依頼するメッセージをクラウドサーバ１９２０に送信する。そして、ステップＳ１５１７において、クラウドサーバ１９２０からダウンロードされた本実施形態の処理を行なうアプリケーションプログラムを受信して、起動する。以降、クライアント装置の外部とのＷｅｂ通信は、転送先にサービス提供サーバを設定することによりクラウドサーバ１９２０により代行される。
【０１５７】
クライアント装置によるメッセージの送受信であればステップＳ２７２１に進んで、Ｗｅｂサービスか否かが判定される。Ｗｅｂサービスでない通常のメール通信などの場合はステップＳ２７２５に進んで、クライアント装置から直接、通常の通信処理を行なう。一方、Ｗｅｂサービスの場合はステップＳ２７２３に進んで、Ｗｅｂサービスの通信代行アプリケーション処理（図２８参照）が実行される。
【０１５８】
（通信代行アプリケーション）
図２８は、本実施形態に係る通信代行アプリケーションＳ２７２３の処理手順を示すフローチャートである。なお、図２７において、第２実施形態の図１５と同様のステップには同じステップ番号を付して、説明は省略する。
【０１５９】
まず、ステップＳ１６０１において、クライアント装置からのメッセージ送信であるか否かが判定される。メッセージ送信であれば、ステップＳ１６０３に進む。そして、ステップＳ２８０５においては、送信元をクライアント装置の端末ＩＰアドレスに設定する。また、ステップＳ２８０９においては、クラウドサーバ１９２０が生成するＷｅｂメッセージの基となる展開データを送信する。
【０１６０】
クライアント装置からのメッセージ送信でない、すなわちメッセージ受信であれば、ステップＳ２８２１において、受信したメッセージの送信元がクラウドＩＰアドレスであるか否かを判定する。クラウドＩＰアドレスでなければ、何もせずに処理を終了する。すなわち、Ｗｅｂサービスについては、クラウドサーバ１９２０が代行しない通信は遮断することになる。以降、ステップＳ２８２７においては、Ｗｅｂメッセージから展開された展開データを取得する。そして、ステップＳ２８２９においては、展開データの処理を行なう。例えば、展開データを表示枠に配置して、クライアントにはあたかも直接、Ｗｅｂサービスを受けているかのように処理を行なう。
［第６実施形態］
次に、本発明の第６実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第５実施形態と比べると、クラウドサーバによって通信代行を行なうＷｅｂサービスを複数のクライアント装置で共有する点で異なる。その他の構成および動作は、第５実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。なお、本実施形態におけるサービスの複数のクライアント装置による共有はＷｅｂサービスに限定されることなく、第７実施形態で説明する仮想ＰＣにおいても同様に実現可能である。
【０１６１】
本実施形態によれば、攻撃や感染の多いＷｅｂサービスにおいて、クラウドサーバにより攻撃排除および感染防止した情報を複数のクライアント装置により共有できる。
【０１６２】
《情報処理システムの処理手順》
図２９は、本実施形態に係る情報処理システム２９００における通信代行の動作手順を示すシーケンス図である。なお、図２９においては、クラウドサーバ２９２０への通信代行の依頼および登録の動作は、上記実施形態と同様であるので省略して、Ｗｅｂサービスの提供部分を図示する。また、図２９において、第５実施形態の図１９と同様のステップには同じステップ番号を付して、説明は省略する。また、図２９においては、クライアント装置２９１１がマスタ装置となって、クライアント装置２９１６と画面共有する例を示すが、これに限定されない。
【０１６３】
ステップＳ１９１５において、クライアント装置２９１１および２９１６において共通の本実施形態のアプリケーションを起動する。
【０１６４】
ステップＳ２９２３においては、クライアント装置２９１１からのＷｅｂサービスリクエストに、画面共有するクライアント装置２９１６が通知される。なお、かかる画面共有の通知は、画面共有する装置の指定ではなく、画面共有を許可する装置の指定であり各装置のリクエストにより画面共有する構成であってもよい。ステップＳ２９２５においては、クラウドサーバ２９２０が画面共有であること、およびその対象装置を記憶する。そして、最初から画面共有する場合であれば、ステップＳ２９３１において、クライアント装置２９１１および２９１６の双方にＷｅｂサービス開始の展開データが送信される。以下、ステップＳ２９４５においても、クライアント装置２９１１および２９１６の双方にＷｅｂブラウザ結果の展開データが送信される。
【０１６５】
《クラウドサーバの機能構成》
図３０は、本実施形態に係るクラウドサーバ２９２０の機能構成を示すブロック図である。なお、図３０において、第２実施形態の図２あるいは第５実施形態の図２１と同様の機能構成部には同じ参照番号を付して、説明は省略する。
【０１６６】
画面共有設定部３００５は、クライアント装置からの画面共有の設定メッセージを受信して、ＩＰアドレス変換テーブル３０２１に画面共有する複数のクライアント装置の端末ＩＰアドレスを登録する。端末送信データ送信部３００８は、ＩＰアドレス変換テーブル３０２１に登録された画面共有の設定情報に基づいて、複数のクライアント装置に対して画面データを送信する。
【０１６７】
（ＩＰアドレス変換テーブル）
図３１は、本実施形態に係るＩＰアドレス変換テーブル２９２１の構成を示す図である。なお、図３１において、第５実施形態の図２３Ａと共通の部分は、同じ参照番号を付して、説明は省略する。
【０１６８】
ＩＰアドレス変換テーブル２９２１は、図２３Ａと同様の、ＩＰ変換情報３１１０と、画面共有するクライアント装置の組みを記憶する画面共有情報３１２０とを有する。画面共有情報３１２０は、画面共有のクライアント装置の組み、画面共有第１端末ＩＰアドレス３１２１、画面共有第２端末ＩＰアドレス３１２２、...を記憶する。
【０１６９】
［第７実施形態］
次に、本発明の第７実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第５および第６実施形態と比べると、クラウドサーバ内に生成した仮想コンピュータである仮想ＰＣによって通信代行を行なう点で異なる。すなわち、本実施形態の情報処理システムは、シンクライアントサーバシステムである。したがって、本実施形態の通信代行はＷｅｂサービスに限定されない。その他の構成および動作は、第５および第６実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【０１７０】
本実施形態によれば、攻撃や感染を検出した場合に今までの仮想ＰＣを削除して新たな仮想ＰＣに処理を以降することによって、攻撃や感染の影響を最小限に抑えることができる。
【０１７１】
《情報処理システム》
図３２は、本実施形態に係る情報処理システム３２００の構成を示すブロック図である。なお、図３２において、第２実施形態の図２と同様の構成要素には同じ参照番号を付して、説明は省略する。
【０１７２】
本実施形態のクラウドサーバ３２２０は、クライアント装置の通信を代行する構成として、各クライアント装置に対応付けた仮想ＰＣを有する。第３実施形態に従えば、クラウドサーバ３２２０には、共通攻撃／感染検出・排除部と、各仮想ＰＣが有する特定攻撃／感染排除部とが設けられる。
【０１７３】
例えば、携帯電話であるクライアント装置２１１のＳＮＳサーバ２４０との通信は、第１仮想ＰＣにより代行されている。また、スマートフォンであるクライアント装置２１３のＷｅｂサーバ２３０との通信は、第２仮想ＰＣにより代行されている。また、デスクトップ型ＰＣであるクライアント装置２１６のコンテンツ提供サーバ２５０との通信は、第３仮想ＰＣにより代行されている。なお、第２実施形態に従えば、クライアント装置２１１〜２１６間の通信メールも、クラウドサーバ３２２０により代行されてよい。
【０１７４】
《情報処理システムの動作手順》
図３３は、本実施形態に係る情報処理システム３２００における通信代行の動作手順を示すシーケンス図である。なお、図３３においては、スマートフォンであるクライアント装置２１３がクラウドサーバ３２２０の第２仮想ＰＣによる通信代行を行なっている時に、攻撃を検出して、第２仮想ＰＣから第ｎ仮想ＰＣに代行を移す通信代行制御の例を説明する。しかしながら、仮想ＰＣの変更は、効果的なクライアント装置の攻撃からの防御の一例を示すのみであり、クラウドサーバ３２２０の仮想ＰＣによる通信の代行自体も攻撃排除あるいは感染拡大防止に十分対応できるものである。また、図３３においては、クラウドサーバ３２２０への通信代行の依頼および登録の動作は、上記実施形態と同様であるので省略して、Ｗｅｂサービスの提供部分を図示する。また、図３３において、第５実施形態の図１９と同様のステップには同じステップ番号を付して、説明は省略する。
【０１７５】
クライアント装置２１３からのＷｅｂサービスリクエストがあり、ステップＳ３３２７において、クライアント装置２１３に対応する第２仮想ＰＣとサービス提供サーバとの間のセッションを開始する。ステップＳ３３３１においては、セッション開始の画面がクライアント装置２１３に送信され表示される。
【０１７６】
ステップＳ３３３３において、クライアントによる最初の情報要求指示がセッション開始画面で行なわれると、ステップＳ３３３５において、情報要求が第２仮想ＰＣに代行されて、サービス提供サーバに送信される。サービス提供サーバは、情報要求を受けて、ステップＳ３３３７において、要求された情報を取得しクラウドサーバ３２２０の第２仮想ＰＣに返す。
【０１７７】
クラウドサーバ３２２０あるいは第２仮想ＰＣでは、ステップＳ３３３９において、攻撃のチェックが行なわれる。以下、図３３においては、攻撃を検出した場合の処理を説明する。攻撃が検出されなければ、第２仮想ＰＣによるクライアント装置２１３の通信代行が継続される。
【０１７８】
クラウドサーバ３２２０は、攻撃の検出を受けて、ステップＳ３３４１において、第２仮想ＰＣをターミネートする。すなわち、第２仮想ＰＣの動作を停止する。そして、ステップＳ３３５１において、新たな第ｎ仮想ＰＣを生成して起動する。その時に、第２仮想ＰＣの攻撃検出以前の基本的なデータやアプリケーションを、新たに生成された第ｎ仮想ＰＣに移行する。なお、データやアプリケーションの移行時にも、攻撃あるいは感染の検出を行なってもよい。そして、第２仮想ＰＣの全ての構成および情報をクラウドサーバ３２２０からクリアする。このクリアは、表面的なアドレス変更やファイル削除ではなくて、例えば、記憶部であれば全てにゼロを書き込むように、第２仮想ＰＣの痕跡を消し去る。
【０１７９】
第ｎ仮想ＰＣにおいては、クライアント装置２１３からのＷｅｂサービスリクエストが保持されていれば、ステップＳ３３５３において、サービス提供サーバに情報要求を行なう。もし、クライアント装置２１３からのＷｅｂサービスリクエストが保持されてなければ、セッション開始画面をクライアント装置２１３に送って、クライアントの最初からの指示を待つことになる。
【０１８０】
ステップＳ３３５５におけるサービス提供サーバからの情報提供を受けて、クラウドサーバ３２２０および第ｎ仮想ＰＣは、ステップＳ３３５９において、攻撃のチェックあるいは排除を行なう。攻撃があれば提供された情報は破棄される。攻撃がなければ、ステップＳ３３５９において、第ｎ仮想ＰＣからクライアント装置にサービス提供サーバから提供された情報を送信する。
【０１８１】
クライアント装置２１３では、ステップＳ３３６１において、受信した情報を出力する。ステップＳ３３６３においては、サービス提供サーバへのアクセス終了を判定する。アクセス終了でなければ、ステップＳ３３６において、第ｎ仮想ＰＣに対する情報要求指示の処理を繰り返す。アクセス終了であれば、ステップＳ３３６７において、終了通知を第ｎ仮想ＰＣに送信し、第ｎ仮想ＰＣは、ステップＳ３３６９において、サービス提供サーバとのＷｅｂブラウザによるセッションを終了する。
【０１８２】
［第８実施形態］
次に、本発明の第８実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第２乃至第７実施形態と比べると、攻撃や感染の検出を蓄積してその傾向を学習し、クライアント装置やサービス提供サーバなどの広く周知させる点で異なる。その他の構成および動作は、第２乃至第７実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【０１８３】
本実施形態によれば、情報処理システムにおいて未然に攻撃や感染の発生を抑えることができる。
【０１８４】
《情報処理システムの動作手順》
図３４は、本実施形態に係る情報処理システム３４００における通信代行の動作手順を示すシーケンス図である。なお、図３４においては、クラウドサーバ３４２０への通信代行の依頼および登録の動作は、上記実施形態と同様であるので省略して、サービスの提供部分を図示する。また、図３４においては、クライアント装置にアクセス警告情報を報知する３つの例のそれぞれを、まとめて図示する。しかしながら、これら３つの例に限定されない。
【０１８５】
（第１アクセス警告例）
ステップＳ３４０１において、サービス提供サーバへのアクセスリクエストがあると、ステップＳ３４０３において、クライアント装置からクラウドサーバ３４２０にサービスリクエストが送信される。
【０１８６】
クラウドサーバ３４２０では、ステップＳ３４０５において、攻撃／感染情報ＤＢ２２３を参照して、感染チェックおよび排除が行なわれる。次に、ステップＳ３４０７において、感染検出した場合には、感染メッセージのアクセス先やアクセス対象を攻撃対象学習ＤＢ３４２４に蓄積する。同時に、攻撃対象学習ＤＢ３４２４を参照して、攻撃や感染の対象となる傾向にあるアクセス先やアクセス対象の情報を読み出す。そして、ステップＳ３４０９においては、感染検出した場合には感染警告と共に、攻撃や感染の対象となる傾向にあるアクセス先やアクセス対象の情報をアクセス警告情報としてクライアント装置に送信する。クライアント装置においては、受信したアクセス警告情報を出力する。
【０１８７】
（第２アクセス警告例）
ステップＳ３４２１におけるサービス提供サーバからクラウドサーバ３４２０への情報提供は、ステップＳ３４２３において、攻撃がチェックおよび排除される。次に、ステップＳ３４２５において、攻撃検出した場合には、攻撃メッセージのアクセス元やアクセス対象を攻撃対象学習ＤＢ３４２４に蓄積する。同時に、攻撃対象学習ＤＢ３４２４を参照して、攻撃や感染の対象となる傾向にあるアクセス先やアクセス対象の情報を読み出す。そして、ステップＳ３４２７においては、攻撃検出した場合には攻撃警告と共に、攻撃や感染の対象となる傾向にあるアクセス先やアクセス対象の情報をアクセス警告情報として、サービス提供サーバならびにクライアント装置に送信する。
【０１８８】
（第３アクセス警告例）
ステップＳ３４３１において、クラウドサーバ３４２０は、攻撃対象学習ＤＢ３４２４に格納された攻撃や感染情報を読み出して解析し、攻撃や感染の対象となる傾向にあるアクセス先やアクセス対象を判定する。そして、ステップＳ３４３３において、攻撃や感染の対象となる傾向にあるアクセス先やアクセス対象の情報をアクセス警告情報として、サービス提供サーバならびにクライアント装置に送信する。
【０１８９】
《クラウドサーバの機能構成》
図３５は、本実施形態に係るクラウドサーバ３４２０の機能構成を示すブロック図である。なお、図３５においては、検出した攻撃や感染情報の蓄積と、その学習情報の提供とに関連する機能構成部のみを示し、他の通信代行に関連する機能構成部は煩雑さを避けるために図示していない。また、図３５において、第２実施形態の図５におけると同様の機能構成部は同じ参照番号を付して、説明を省略する。
【０１９０】
感染情報記憶部３５０１は、感染防止部５０２が検出した感染情報を端末送信データと共に攻撃対象学習ＤＢ３４２４に記憶する。攻撃情報記憶部３５０２は、攻撃排除部５０９が検出した攻撃情報を端末受信データと共に攻撃対象学習ＤＢ３４２４に記憶する。
【０１９１】
攻撃対象分析テーブル３５０３ａを有する攻撃対象分析部３５０３は、攻撃対象学習ＤＢ３４２４に蓄積された攻撃や感染の履歴情報に基づいて、攻撃対象を分析する。攻撃警告情報生成部３５０４は、攻撃対象分析部３５０３の分析結果からクライアント装置やサービス提供サーバに報知するための攻撃警告情報を生成する。図３５の端末送信データ送信部３５０８は、図５の端末送信データ送信部５０８の機能に加えて、攻撃警告情報をサービス提供サーバに送信する機能を有する。図３５の端末受信データ送信部３５１３は、図５の端末受信データ送信部５１３の機能に加えて、攻撃警告情報をクライアント装置に送信する機能を有する。
【０１９２】
（攻撃対象学習ＤＢ）
図３６は、本実施形態に係る攻撃対象学習ＤＢ３４２４の構成を示す図である。図３６の構成は一例であって、これに限定されない。
【０１９３】
攻撃対象学習ＤＢ３４２４は、提供されるサービスに関連付けられた攻撃や感染を記憶するサービス対象情報３６１０と、サービスの種別に関連付けられた攻撃や感染を記憶するサービス種別情報３６２０と、サービスの提供経路に関連付けられた攻撃や感染を記憶するサービス経路情報３６３０と、を含む。
【０１９４】
サービス対象情報３６１０は、攻撃や感染を検出したサービス提供オーナー３６１１に対応付けて、攻撃や感染を検出した複数のサービス提供サーバ３６１２を記憶する。そして、各サービス提供サーバ３６１２に対応付けて、攻撃や感染を検出した複数のサービス内容３６１３を記憶する。そして、各サービス内容３６１３に対応付けて、攻撃内容３６１４や攻撃回数３６１５を記憶する。
【０１９５】
サービス種別情報３６２０は、攻撃や感染を検出したサービスデータ中のキーワード群３６２１に対応付けて、攻撃や感染を検出した複数のキーワード３６２２を記憶する。そして、各キーワード３６２２に対応付けて、攻撃内容３６２３や攻撃回数３６２４を記憶する。
【０１９６】
サービス経路情報３６３０は、攻撃や感染を検出したサービス提供のアクセスルート３６３１に対応付けて、アクセスルートに含まれる複数のルータ３６３２を記憶する。そして、各ルータ３６３２に対応付けて、攻撃内容３６３３や攻撃回数３６３４を記憶する。
【０１９７】
（攻撃対象分析テーブル）
図３７は、本実施形態に係る攻撃対象分析テーブル３５０３ａの構成を示す図である。なお、攻撃対象分析テーブル３５０３ａの構成は、図３７に限定されない。
【０１９８】
攻撃対象分析テーブル３５０３ａは、各攻撃対象３７０１に対応付けて、複数の攻撃内容３７０２を記憶する。そして、各攻撃内容３７０２に対応付けて、攻撃回数３７０３、攻撃や感染が広がった領域を示す攻撃範囲３７０４、所定単位期間の攻撃頻度３７０５を記憶する。
【０１９９】
そして、クライアント装置やサービス提供サーバへの警告が必要か否かを判定するための警告条件３７０６と、その警告条件に基づく判定結果である警告要否フラグ３７０７とを記憶する。なお、警告条件３７０６は、各攻撃や感染の内容により、あるいはクライアント装置とサービス提供サーバにより、異なってもよい。
【０２００】
《クラウドサーバの処理手順》
図３８は、本実施形態に係るクラウドサーバ３４２０による攻撃対象学習処理の処理手順を示すフローチャートである。なお、図３８のフローチャートは、攻撃対象学習処理のみを示し、他のクラウドサーバ３４２０による通信代行処理については、図１１あるいは図２５で前出した処理手順を実行する。
【０２０１】
まず、ステップＳ３８１１においては、感染防止部や攻撃排除部において攻撃や感染が検出されたか否かが判定される。また、ステップＳ３８２１においては、クラウドサーバ３４２０による攻撃対象分析のタイミングであるか否かを判定する。
【０２０２】
攻撃や感染があった場合はステップＳ３８１３に進んで、攻撃対象情報を取得する。次に、ステップＳ３８１５において、攻撃や感染の内容を取得する。そして、ステップＳ３８１７において、攻撃対象情報や攻撃内容を攻撃対象学習ＤＢ３４２４に蓄積する。なお、同時に、攻撃対象の学習情報をクライアント装置やサービス提供サーバに報知してもよい。
【０２０３】
攻撃対象分析のタイミングであればステップＳ３８２３に進んで、攻撃対象学習ＤＢ３４２４を検索して攻撃や感染の情報を収集する。次に、ステップＳ３８２５において、図３７のような攻撃対象分析テーブル３５０３ａを作成する。そして、攻撃対象を予測して（警告要否フラグ３７０７が要のもの）、警告情報をクライアント装置やサービス提供サーバに報知する。
【０２０４】
［第９実施形態］
次に、本発明の第９実施形態に係る情報処理システムについて説明する。本実施形態に係る情報処理システムは、上記第２乃至第８実施形態と比べると、クライアント装置にプログラムをダウンロードする前に、クラウドサーバで代行実行して攻撃や感染を一定期間チェック（代行実証）し、問題がなければクライアント装置へのダウンロードを許可する点で異なる。その他の構成および動作は、第２乃至第７実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【０２０５】
本実施形態によれば、情報処理システムにおいて、クライアント装置へのダウンロード前にクラウドサーバによるチェックを十分に行なうので、未然に攻撃や感染の発生を抑えることができる。
【０２０６】
《情報処理システムの動作手順》
図３９は、本実施形態に係る情報処理システム３９００における通信代行の動作手順を示すシーケンス図である。なお、図３９には、本実施形態に関連する動作手順のみを示す。他の動作は、上記第２乃至第８実施形態と同様である
【０２０７】
まず、ステップＳ３９０１において、クライアント装置２１１〜２１６において、クライアントからプログラムにインストールリクエストが入力される。そのプログラムリクエストは、ステップＳ３９０３において、クライアント装置からクラウドサーバ３９２０に通知される。なお、クラウドサーバ３９２０の代行実証は、クライアント装置のリクエストによる開始でなく、サービス提供サーバからのリクエストで開始されてもよい。
【０２０８】
クラウドサーバ３９２０は、ステップＳ３９０５において、サービス提供サーバから対象のプログラムを取得する。次に、ステップＳ３９０７において、取得したプログラムをインストールプログラムＤＢ３９２５に格納する。そして、ステップＳ３９０９において、プログラムの代行実行処理を開始する。
【０２０９】
プログラム代行実証処理中に、ステップＳ３９１１において、攻撃／感染のチェックを行なう。その結果は、攻撃／感染情報ＤＢ２２３に蓄積される。また、チェック結果の履歴は、ステップＳ３９１３において、攻撃対象学習ＤＢ３４２４にも蓄積される。そして、クラウドサーバ３９２０は、ステップＳ３９１５において、対象プログラムのダウンロード許可を判定する。かかる判定は、随時行なわれても、定期的に行なわれても、クライアント装置やサービス提供サーバのリクエスト時に行なわれてもよい。許可されなければ、プログラムの代行実証が続けられる。
【０２１０】
ダウンロード許可であれば、ステップＳ３９１７において、クライアント装置にクライアントに対するダウンロード許可の通知を送信する。クライアント装置では、ステップＳ３９１９において、対象プログラムをダウンロードする。そして、ステップＳ３９２１において、ダウンロードしたプログラムを実行することになる。
【０２１１】
《クラウドサーバの機能構成》
図４０は、本実施形態に係るクラウドサーバ３９２０の機能構成を示すブロック図である。なお、図４０において、第２実施形態の図５、および第８実施形態の図３５と同様の機能構成部には同じ番号を付して、説明を省略する。
【０２１２】
インストールプログラムＤＢ３９２５は、各クライアントが自分のクライアント装置にダウンロードすることをリクエストしたプログラムや、新たにサービス提供サーバ２３０〜２５０から提供されたプログラムを蓄積して管理する。なお、プログラムは、ＷＥＢアプリケーションへのプラグインなども含むものである。
【０２１３】
仮想ＰＣ４００３は、プログラムのダウンロードをリクエストしたクライアント装置に対応する仮想ＰＣである。仮想ＰＣ４００３は、ダウンロード許可テーブル４００３ａを有し、各プログラムがダウンロード可能か否かを管理している。なお、この管理は、インストールプログラムＤＢ３９２５において、共通に実施されてもよい。仮想ＰＣ４００３は、インストールプログラムＤＢ３９２５からプログラムを読み出して実行し、その実行過程における攻撃や感染をチェックし、攻撃対象学習ＤＢ３４２４に履歴を格納する。同時に、インストールプログラムＤＢ３９２５にも、各プログラムに対応付けて結果を記録する。それらのチェック履歴に基づいて、ダウンロード許可テーブル４００３ａの各プログラムに許可か否かを記憶する。
【０２１４】
プログラムダウンロード部４００４は、ダウンロード許可テーブル４００３ａにおいて許可が示されているプログラムをインストールプログラムＤＢ３９２５から読み出して、クライアント装置にダウンロードする。
【０２１５】
［他の実施形態］
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得るさまざまな変更をすることができる。また、それぞれの実施形態に含まれる別々の特徴を如何様に組み合わせたシステムまたは装置も、本発明の範疇に含まれる。例えば、第２実施形態の構成と第５実施形態の構成とを組み合わせて、Ｗｅｂサービスは第５実施形態の変換で行ない、その他のメールなどは第２実施形態の変換で行なってもよい。すなわち、クライアント装置によって全通信をクラウドサーバに代行させるか、Ｗｅｂサービスのみをクラウドサーバに代行させるかを選択可能にしてもよい。
【０２１６】
また、本発明は、複数の機器から構成されるシステムに適用されてもよいし、単体の装置に適用されてもよい。さらに、本発明は、実施形態の機能を実現する制御プログラムが、システムあるいは装置に直接あるいは遠隔から供給される場合にも適用可能である。したがって、本発明の機能をコンピュータで実現するために、コンピュータにインストールされる制御プログラム、あるいはその制御プログラムを格納した媒体、その制御プログラムをダウンロードさせるＷＷＷ（World Wide Web)サーバも、本発明の範疇に含まれる。
【図１】
0005880195.tif 000002
【図２】
0005880195.tif 000003
【図３Ａ】
0005880195.tif 000004
【図３Ｂ】
0005880195.tif 000005
【図４】
0005880195.tif 000006
【図５】
0005880195.tif 000007
【図６】
0005880195.tif 000008
【図７】
0005880195.tif 000009
【図８】
0005880195.tif 000010
【図９】
0005880195.tif 000011
【図１０】
0005880195.tif 000012
【図１１】
0005880195.tif 000013
【図１２Ａ】
0005880195.tif 000014
【図１２Ｂ】
0005880195.tif 000015
【図１３】
0005880195.tif 000016
【図１４】
0005880195.tif 000017
【図１５】
0005880195.tif 000018
【図１６】
0005880195.tif 000019
【図１７】
0005880195.tif 000020
【図１８】
0005880195.tif 000021
【図１９】
0005880195.tif 000022
【図２０】
0005880195.tif 000023
【図２１】
0005880195.tif 000024
【図２２】
0005880195.tif 000025
【図２３Ａ】
0005880195.tif 000026
【図２３Ｂ】
0005880195.tif 000027
【図２４】
0005880195.tif 000028
【図２５】
0005880195.tif 000029
【図２６Ａ】
0005880195.tif 000030
【図２６Ｂ】
0005880195.tif 000031
【図２７】
0005880195.tif 000032
【図２８】
0005880195.tif 000033
【図２９】
0005880195.tif 000034
【図３０】
0005880195.tif 000035
【図３１】
0005880195.tif 000036
【図３２】
0005880195.tif 000037
【図３３】
0005880195.tif 000038
【図３４】
0005880195.tif 000039
【図３５】
0005880195.tif 000040
【図３６】
0005880195.tif 000041
【図３７】
0005880195.tif 000042
【図３８】
0005880195.tif 000043
【図３９】
0005880195.tif 000044
【図４０】
0005880195.tif 000045