(57)【特許請求の範囲】
【請求項１】
仮想オペレーティングシステムが行う通信を制御する通信制御装置であって、
前記仮想オペレーティングシステムがマルウエアに感染した場合にアクセスを行う可能性があるアクセス先のＩＰアドレスを含む制御情報を記憶する記憶部と、
前記記憶部を隠蔽した状態で前記仮想オペレーティングシステムを動作させ、前記仮想オペレーティングシステムから他の装置へのアクセス要求があった場合に、前記記憶部に記憶した前記制御情報を参照し、前記制御情報に前記アクセス要求のアクセス先のＩＰアドレスが含まれている場合、前記アクセス要求のアクセス先に対するアクセスを禁止する処理部と、を有する、
ことを特徴とする通信制御装置。
【請求項２】
請求項１において、
前記処理部は、物理マシンにおける仮想マシンの生成及び削除を行うハイパーバイザである、
ことを特徴とする通信制御装置。
【請求項３】
請求項２において、
前記ハイパーバイザは、前記通信制御装置のハードディスク上において、オペレーティングシステムを介することなく直接動作するハイパーバイザである、
ことを特徴とする通信制御装置。
【請求項４】
請求項１において、
前記処理部は、前記制御情報に前記アクセス要求のアクセス先に対するアクセスを禁止する旨の情報が含まれている場合、前記アクセス要求のアクセス先に対するアクセスを禁止し、前記制御情報に前記禁止する旨の情報が含まれていない場合、前記アクセス要求のアクセス先に対するアクセスを許可する
ことを特徴とする通信制御装置。
【請求項５】
仮想オペレーティングシステムが行う通信を制御する通信制御方法であって、
前記仮想オペレーティングシステムがマルウエアに感染した場合にアクセスを行う可能性があるアクセス先のＩＰアドレスを含む制御情報を記憶部に記憶し、
前記記憶部を隠蔽した状態で前記仮想オペレーティングシステムを動作させ、前記仮想オペレーティングシステムから他の装置へのアクセス要求があった場合に、前記記憶部に記憶した前記制御情報を参照し、前記制御情報に前記アクセス要求のアクセス先のＩＰアドレスが含まれている場合、前記アクセス要求のアクセス先に対するアクセスを禁止する、
処理をコンピュータに実行させることを特徴とする通信制御方法。
【請求項６】
仮想オペレーティングシステムが行う通信を制御する処理をコンピュータに実行させる通信制御プログラムであって、
前記仮想オペレーティングシステムがマルウエアに感染した場合にアクセスを行う可能性があるアクセス先のＩＰアドレスを含む制御情報を記憶部に記憶し、
前記記憶部を隠蔽した状態で前記仮想オペレーティングシステムを動作させ、前記仮想オペレーティングシステムから他の装置へのアクセス要求があった場合に、前記記憶部に記憶した前記制御情報を参照し、前記制御情報に前記アクセス要求のアクセス先のＩＰアドレスが含まれている場合、前記アクセス要求のアクセス先に対するアクセスを禁止する、
ことを特徴とする通信制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信制御装置、通信制御方法及び通信制御プログラムに関する。
【背景技術】
【０００２】
企業や組織におけるセキュリティ管理者（以下、単に管理者とも呼ぶ）は、例えば、マルウエアによる情報の不正取得や破壊等を防ぐ必要がある。マルウエアは、コンピュータウィルスを含む悪意のあるソフトウエアの総称である。
【０００３】
具体的に、マルウエアは、例えば、悪意のある者が外部の端末装置（以下、単に外部端末とも呼ぶ）から送信したメールに添付される形で送信され、メールを受信した端末装置において実行されることで、その端末装置に感染する。これにより、悪意のある者は、マルウエアに感染した端末装置（以下、単に感染端末とも呼ぶ）を踏み台にすることによって、端末装置と接続した他の端末装置に不正アクセスし、情報の不正取得等を行うことが可能になる（例えば、特許文献１及び２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２５３８１１号公報
【特許文献２】特表２０１４−５１４６５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記のようにマルウエアに感染した感染端末は、例えば、マルウエアを送信した外部端末と通信（以下、コールバック通信とも呼ぶ）を行い、悪意のある者から指示を受信するまで待機する。そして、感染端末は、指示を受信した場合、その指示の内容に従い、情報の不正取得等を開始する。
【０００６】
そこで、管理者は、例えば、感染端末と外部端末との通信を中継するネットワーク装置において、感染端末と外部端末との通信の遮断を行う。すなわち、管理者は、感染端末と外部端末とのコールバック通信を遮断することにより、悪意のある者による情報の不正取得等を防止する。これにより、管理者は、感染端末が発生した場合であっても、情報の不正取得等を防止することが可能になる。
【０００７】
しかしながら、感染端末が持ち運び可能な端末装置（例えば、タブレット端末等）である場合、感染端末は、使用される場所によって、通信の遮断を行うネットワーク装置を経由せずに、外部端末と通信を行うことが可能になる。そのため、例えば、感染端末が社外等で使用された場合、管理者は、コールバック通信を遮断することができない。
【０００８】
これに対し、管理者は、例えば、オペレーティングシステム（ＯＳ：Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）において通信の制御を行うためのプログラム等を、各端末装置にインストールする場合がある。そして、管理者は、例えば、通信を禁止する必要がある他の端末装置（外部端末を含む）の情報を各端末装置に設定する。
【０００９】
その後、各端末装置は、他の端末装置と通信を行う際に、その他の端末装置との通信が禁止されているか否かの判定を自装置において行う。これにより、各端末装置は、他の端末装置との通信を禁止されている場合、その他の端末装置との通信を自発的に中止することが可能になる。そのため、管理者は、この場合、端末装置が使用される場所に依らず、コールバック通信を遮断することが可能になる。
【００１０】
しかしながら、感染端末に感染したマルウエアが高度な処理を行うマルウエアである場合、感染端末は、そのマルウエアにＯＳの制御を乗っ取られる可能性がある。そして、この場合、ＯＳによるコールバック通信を遮断するための処理が実行されなくなり、コールバック通信を遮断することができなくなる可能性がある。
【００１１】
そこで、一つの側面では、使用される場所に依らず、遮断すべき通信を遮断する通信制御装置、通信制御方法及び通信制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
実施の形態の一つの態様によれば、アクセス可能なアクセス先を制御するための制御情報を記憶する記憶部と、前記記憶部を隠蔽した状態でオペレーティングシステムを動作させ、アプリケーションから他の装置へのアクセス要求があった場合に、前記制御情報に基づいて、前記アクセス要求のアクセス先を制御する処理部と、を有する。
【発明の効果】
【００１３】
一つの側面によれば、使用される場所に依らず、遮断すべき通信を遮断する。
【図面の簡単な説明】
【００１４】
【図１】情報処理システム１０の全体構成を説明する図である。
【図２】悪意のある者が端末装置１ｃに対してマルウエアを送信した場合の具体例を説明する図である。
【図３】悪意のある者が端末装置１ｃに対してマルウエアを送信した場合の具体例を説明する図である。
【図４】悪意のある者が端末装置１ｃに対してマルウエアを送信した場合の具体例を説明する図である。
【図５】悪意のある者が端末装置１ｃに対してマルウエアを送信した場合の具体例を説明する図である。
【図６】悪意のある者が端末装置１ｃに対してマルウエアを送信した場合の具体例を説明する図である。
【図７】悪意のある者が端末装置１ｃに対してマルウエアを送信した場合の具体例を説明する図である。
【図８】本実施の形態における端末装置１の具体例を説明する図である。
【図９】本実施の形態における端末装置１の具体例を説明する図である。
【図１０】端末装置１のハードウエア構成を説明する図である。
【図１１】図１０の端末装置１の機能ブロック図である。
【図１２】第１の実施の形態における通信制御処理の概略を説明するフローチャート図である。
【図１３】第１の実施の形態における通信制御処理の概略を説明するフローチャート図である。
【図１４】第１の実施の形態における通信制御処理の詳細を説明するフローチャート図である。
【図１５】第１の実施の形態における通信制御処理の詳細を説明するフローチャート図である。
【図１６】制御情報１３１の具体例を説明する図である。
【図１７】制御情報１３１の他の具体例を説明する図である。
【発明を実施するための形態】
【００１５】
［情報処理システムの構成］
図１は、情報処理システム１０の全体構成を説明する図である。図１に示す情報処理システム１０は、端末装置１ａ、１ｂ及び１ｃ（以下、それぞれ通信制御装置１ａ、１ｂ、１ｃとも呼ぶ）と、ファイアーウォール装置３とを有する。
【００１６】
端末装置１ａ、１ｂ及び１ｃ（以下、これらを総称して端末装置１とも呼ぶ）は、企業や組織における業務システムの開発者や管理者（以下、単に利用者とも呼ぶ）が使用する端末である。具体的に、端末装置１は、例えば、デスクトップＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）やノート型ＰＣである。
【００１７】
ファイアーウォール装置３は、ネットワークＮＷと接続した外部端末３１または外部端末３２と、端末装置１との間の通信を制御する。すなわち、ファイアーウォール装置３は、例えば、悪意のある者が、外部端末３１や外部端末３２を介して端末装置１に対する不正アクセスを試みた場合に、これを禁止する処理を行う。なお、ネットワークＮＷは、例えば、インターネット網である。
【００１８】
［外部端末からマルウエアが送信された場合の具体例］
次に、悪意のある者が外部端末３２を介して端末装置１ｃにマルウエアを送信した場合の具体例について説明する。図２から図７は、悪意のある者が端末装置１ｃに対してマルウエアを送信した場合の具体例を説明する図である。
【００１９】
悪意のある者は、図２に示すように、例えば、外部端末３２を介して、マルウエアを添付したメール（通常のメールを装ったメール）を端末装置１ｃに対して送信する。具体的に、悪意のある者は、情報の不正取得等を行う標的（特定の企業等）を予め決定し、その標的の端末装置（端末装置１ｃ）に対してマルウエアを添付したメールを送信する（以下、これを標的型攻撃とも呼ぶ）。
【００２０】
この場合において、ファイアーウォール装置３は、外部端末３２から送信されたメールが破棄すべきメールであると判定することができず、端末装置１ｃに送信する可能性がある。そのため、端末装置１ｃは、図２に示すように、送信されたメールに添付されたマルウエアを利用者が実行することにより、マルウエアに感染する場合がある。
【００２１】
そして、この場合、端末装置１ｃ（以下、感染端末１ｃとも呼ぶ）に感染したマルウエアは、図３に示すように、外部端末３２に対してコールバック通信を行う。そして、このマルウエアは、例えば、悪意のある者から実行すべき動作の具体的な内容に関する指示（例えば、取得すべき情報の指定等）を受信するまで待機する。その後、感染端末１ｃは、図４に示すように、悪意のある者から外部端末３２を介して指示を受信した場合、その指示の内容に従い、例えば、情報の不正取得等を行うための動作（以下、悪性動作とも呼ぶ）を開始する。これにより、悪意のある者は、例えば、標的型攻撃の標的（企業等）が所有する情報の不正取得等を行うことが可能になる。
【００２２】
そこで、管理者は、図５に示すように、例えば、感染端末１ｃと外部端末３２との通信を中継するファイアーウォール装置３等のネットワーク装置（スイッチ装置やルータ装置等を含む）において、感染端末１ｃと外部端末３２との通信を禁止するための設定を行う。すなわち、管理者は、感染端末１ｃと外部端末３２との間で行われるコールバック通信を遮断することにより、悪意のある者による情報の不正取得等を防止する。これにより、管理者は、感染端末１ｃが発生した場合であっても、情報の不正取得等を防止することが可能になる。
【００２３】
しかしながら、感染端末１ｃが持ち運び可能な端末装置である場合、感染端末１ｃは、使用される場所によって、設定を行ったファイアーウォール装置３等を経由せずに外部端末３２と通信を行うことが可能になる。そのため、例えば、感染端末１ｃが社外等で使用された場合、管理者は、コールバック通信を遮断することができない。
【００２４】
これに対し、管理者は、例えば、ＯＳにおいて通信を制御する処理を行うプログラム（以下、第１プログラムとも呼ぶ）を、各端末装置１にインストールする場合がある。以下、ＯＳにおいて第１プログラムを端末装置１にインストールした場合の具体例について説明を行う。
【００２５】
図６及び図７は、ＯＳにおいて第１プログラムを端末装置１にインストールした場合の具体例を説明する図である。図６及び図７に示す端末装置１では、ハードウエア１４上においてＯＳ１２が動作し、ＯＳ１２上においてアプリケーション１１が動作する。
【００２６】
また、ＯＳ１２では、第１プログラムと端末装置１のＣＰＵ（図示しない）とが協働することにより実現されるアクセス判定部２２が動作する。さらに、ＯＳ１２の記憶部１２ａには、例えば、通信を禁止すべき端末装置（例えば、マルウエアを送信した外部端末３２）のＩＰアドレス、または、通信を許可すべき端末装置のＩＰアドレスを含む制御情報２１が記憶されている。
【００２７】
具体的に、アクセス判定部２２は、アプリケーション１１から送信された端末装置１の外部へのアクセス要求を受信した場合に、記憶部１２ａに記憶された制御情報２１を参照し、受信したアクセス要求のアクセス先に対するアクセスを禁止する旨の情報が含まれるか否かを判定する。そして、受信したアクセス要求のアクセス先に対するアクセスを禁止する旨の情報が含まれていない場合、アクセス判定部２２は、図６に示すように、アクセス要求に対応するアクセスを許可し、そのアクセスを行う旨の命令をハードウエア１４に行う。一方、受信したアクセス要求のアクセス先に対するアクセスを禁止する旨の情報が制御情報２１に含まれている場合、アクセス判定部２２は、図７に示すように、アクセス要求に対応するアクセスを禁止する。すなわち、アクセス判定部２２は、この場合、そのアクセスを行う旨の命令をハードウエア１４に行うことなく、受信したアクセス要求を破棄する。
【００２８】
これにより、各端末装置１は、アプリケーション１１からのアクセス要求に対応するアクセス先が禁止されている端末装置である場合、アプリケーション１１から受信したアクセス要求に対応するアクセスを禁止することが可能になる。そのため、管理者は、端末装置１が使用される場所に依らず、コールバック通信を遮断することが可能になる。
【００２９】
しかしながら、感染端末１ｃに感染したマルウエアが高度な処理を行うマルウエアである場合、感染端末１ｃは、そのマルウエアにＯＳの制御を乗っ取られる可能性がある。そして、この場合、ＯＳによるコールバック通信を遮断するための処理が実行されなくなり、コールバック通信を遮断することができなくなる可能性がある。
【００３０】
そこで、本実施の形態では、端末装置１のハイパーバイザ１３は、図８及び図９に示すように、アクセス可能なアクセス先を制御するための制御情報１３１を記憶する記憶部１３０を有する。そして、端末装置１は、その記憶部１３０を隠蔽した状態で端末装置１のＯＳ１２を動作させ、アプリケーション１１からアクセス先へのアクセス要求があった場合に、制御情報１３１を参照し、そのアクセス要求に対するアクセスを許可するか否かを判定する処理部１２０を有する。以下、本実施の形態の端末装置１の具体例について説明を行う。
【００３１】
図８及び図９は、本実施の形態における端末装置１の具体例を説明する図である。図８及び図９に示す端末装置１では、ハードウエア１４上においてハイパーバイザ１３が動作しており、ハイパーバイザ１３上でＯＳ１２（ハイパーバイザ１３により生成された仮想ＯＳ。以下、仮想ＯＳ１２とも呼ぶ）が動作する。そして、図８及び図９に示す端末装置１では、仮想ＯＳ１２上においてアプリケーション１１が動作する。
【００３２】
そして、ハイパーバイザ１３では、また、仮想ＯＳ１２では、後述するプログラム１１０と後述するＣＰＵ１０１とが協働して実現される処理部１２０が動作する。また、ハイパーバイザ１３の記憶部１３０（実体としてはハードウエア１４の一部の記憶領域）には、例えば、通信を禁止すべき端末装置（例えば、マルウエアを送信した外部端末３２）のＩＰアドレスを含む制御情報１３１が記憶されている。
【００３３】
具体的に、処理部１２０は、アプリケーション１１から送信された端末装置１の外部へのアクセス要求を受信した場合に、記憶部１３０に記憶された制御情報１３１を参照する。そして、処理部１２０は、受信したアクセス要求のアクセス先に対するアクセスを禁止する旨の情報が制御情報１３１に含まれるか否かを判定する。その結果、受信したアクセス要求のアクセス先に対するアクセスを禁止する旨の情報が制御情報１３１に含まれていない場合、処理部１２０は、図８に示すように、アクセス要求に対応するアクセスを許可し、そのアクセスを行う旨の命令をハードウエア１４に行う。一方、受信したアクセス要求のアクセス先に対するアクセスを禁止する旨の情報が制御情報１３１に含まれている場合、処理部１２０は、図９に示すように、アクセス要求に対応するアクセスを禁止する。そのため、処理部１２０は、この場合、アクセス要求に対応するアクセスを行う旨の命令をハードウエア１４に行うことなく、受信したアクセス要求を破棄する。
【００３４】
すなわち、本実施の形態における端末装置１は、アクセス要求に対応するアクセスを許可するか否かの判定をハイパーバイザ１３において行う。これにより、端末装置１は、端末装置１の使用場所に依らず、アプリケーションからのアクセス要求のアクセス先が制御情報１３１に含まれる場合、そのアクセス要求に対応するアクセスを禁止することが可能になる。また、端末装置１は、仮想ＯＳ１２の制御がアプリケーション１１で動作したマルウエアによって乗っ取られた場合であっても、アクセスの許可を行うか否かの判定を継続して実行することが可能になる。
【００３５】
また、本実施の形態における端末装置１のハイパーバイザ１３は、記憶部１３０を仮想ＯＳ１２から隠蔽する。これにより、端末装置１は、マルウエアによって制御情報１３１が破壊等されることを防止することが可能になる。
【００３６】
なお、図８及び図９で説明したハイパーバイザ１３は、ＯＳ上で動作するハイパーバイザではなく、ハードウエア１４上で直接動作するハイパーバイザ（Ｔｙｐｅ１型のハイパーバイザ）である。これに対し、ハイパーバイザ１３は、ハードウエア１４上で直接動作するＯＳ（ホストＯＳ：図示しない）上で動作するハイパーバイザ（Ｔｙｐｅ２型のハイパーバイザ）であってもよい。
【００３７】
但し、Ｔｙｐｅ１型のハイパーバイザは、Ｔｙｐｅ２型のハイパーバイザと異なり、ハードウエアとハイパーバイザとの間にＯＳが存在しない。そのため、ハードウエアとハイパーバイザとの間に存在するＯＳの制御がマルウエアによって乗っ取られる可能性がある場合、ハイパーバイザ１３は、Ｔｙｐｅ１型のハイパーバイザであることが好ましい。
【００３８】
［端末装置のハードウエア構成］
次に、端末装置１のハードウエア構成について説明する。図１０は、端末装置１のハードウエア構成を説明する図である。
【００３９】
端末装置１は、プロセッサであるＣＰＵ１０１と、メモリ１０２と、外部インターフェース（Ｉ／Ｏユニット）１０３と、記憶媒体１０４とを有する。各部は、バス１０５を介して互いに接続される。
【００４０】
記憶媒体１０４は、例えば、記憶媒体１０４内のプログラム格納領域（図示しない）に、端末装置１の外部に対する通信を制御する処理（以下、通信制御処理とも呼ぶ）等を行うためのプログラム１１０を記憶する。
【００４１】
ＣＰＵ１０１は、図１０に示すように、プログラム１１０の実行時に、プログラム１１０を記憶媒体１０４からメモリ１０２にロードし、プログラム１１０と協働して通信制御処理等を行う。
【００４２】
記憶媒体１０４は、例えば、通信制御処理等を行う際に用いられる情報を記憶する情報格納領域１３０（以下、記憶部１３０とも呼ぶ）を有する。また、外部インターフェース１０３は、ファイアーウォール装置３を介してネットワークＮＷと通信を行う。
【００４３】
なお、図８及び図９で説明したハードウエア１４は、記憶媒体１０４に対応するものであってよい。
【００４４】
[端末装置のソフトウエア構成]
次に、端末装置１のソフトウエア構成について説明する。図１１は、図１０の端末装置１の機能ブロック図である。ＣＰＵ１０１は、プログラム１１０と協働することにより、端末装置１のハイパーバイザ１３の機能である仮想ＯＳ管理部１１１と、ハードウエア制御部１１２と、命令取得部１１３と、アクセス判定部１１４と、命令送信部１１５と、命令破棄部１１６として動作する。また、ＣＰＵ１０１は、プログラム１１０と協働することにより、端末装置１のハイパーバイザ１３の機能である制御情報受信部１１７と、制御情報管理部１１８として動作する。また、情報格納領域１３０（以下、記憶部１３０とも呼ぶ）には、制御情報１３１が記憶されている。なお、図８及び図９で説明した処理部１２０は、例えば、ハードウエア制御部１１２、命令取得部１１３、アクセス判定部１１４、命令送信部１１５及び命令破棄部１１６に対応する。
【００４５】
仮想ＯＳ管理部１１１は、例えば、管理者からの入力に応じて、端末装置１に仮想ＯＳ１２の生成及び削除を行う。
【００４６】
また、仮想ＯＳ管理部１１１は、例えば、既に生成されている仮想ＯＳ１２のうち、ＣＰＵ１０１の使用率やメモリ１０２の使用率等が所定の上限閾値を超える仮想ＯＳ１２が存在する場合に、例えば、新たな仮想ＯＳ１２の生成を行う。さらに、仮想ＯＳ管理部１１１は、既に生成されている仮想ＯＳ１２のうち、ＣＰＵ１０１の使用率やメモリ１０２の使用率等が所定の下限閾値を下回る仮想ＯＳ１２が存在する場合に、例えば、既に生成されている仮想ＯＳ１２の削除を行う。これにより、仮想ＯＳ管理部１１１は、端末装置１の物理リソース（ＣＰＵ１０１、メモリ１０２及びハードウエア１４（記憶媒体１０４）等）を効率的に使用することが可能になる。
【００４７】
ハードウエア制御部１１２は、ハイパーバイザ１３で動作する仮想ＯＳ１２に割り当てる物理リソースを制御する。具体的に、ハードウエア制御部１１２は、仮想ＯＳ管理部１１１が生成した仮想ＯＳ１２それぞれに対して、端末装置１の物理リソースを割り当てる。
【００４８】
また、ハードウエア制御部１１２は、制御情報１３１（記憶部１３０）を隠蔽した状態で仮想ＯＳ１２を動作させる。具体的に、端末装置１が起動する場合、端末装置１は、ハイパーバイザ１３を起動させてから仮想ＯＳ１２を起動させる。これにより、ハイパーバイザ１３は、仮想ＯＳ１２が起動する際に、記憶部１３０の存在を仮想ＯＳ１２から隠蔽することが可能になる。
【００４９】
なお、管理者は、仮想ＯＳ１２を起動させるための情報が格納された記憶媒体と、ハイパーバイザ１３を起動させるための情報が格納された記憶媒体とをそれぞれ設けるものであってもよい。これにより、端末装置１は、ハイパーバイザ１３及び仮想ＯＳ１２の起動順序を容易に制御することが可能になる。
【００５０】
命令取得部１１３は、アプリケーション１１から仮想ＯＳ１２を介してアクセス先（例えば、端末装置１の外部）へのアクセス要求があった場合、そのアクセス要求がハードウエア１４に送信される前に取得（フック）する。
【００５１】
アクセス判定部１１４は、命令取得部１１３がアプリケーション１１からのアクセス要求を取得した場合、情報格納領域１３０に記憶された制御情報１３１に基づいて、アクセス要求のアクセス先を制御する。具体的に、アクセス判定部１１４は、アクセス要求のアクセス先に対するアクセスを禁止する旨の情報が制御情報１３１に含まれている場合、そのアクセス先に対するアクセスを禁止する。また、アクセス判定部１１４は、アクセス要求に対応するアクセス先に対するアクセスを禁止する旨の情報が制御情報１３１に含まれていない場合、そのアクセス先に対するアクセスを許可する。制御情報１３１の具体例については後述する。
【００５２】
命令送信部１１５は、アプリケーション１１からのアクセス要求に対応するアクセスをアクセス判定部１１４が許可した場合、そのアクセス要求をハードウエア１４に送信する。そして、アクセス要求を受信したハードウエア１４は、アクセス要求のアクセス先に対するアクセスを行う。
【００５３】
命令破棄部１１６は、アプリケーション１１からのアクセス要求に対応するアクセスをアクセス判定部１１４が禁止した場合、そのアクセス要求を破棄する。すなわち、この場合、端末装置１は、アクセス先に対するアクセスを行わない。
【００５４】
制御情報受信部１１７は、例えば、管理者が管理者端末（図示しない）を介して送信した制御情報１３１を受信する。そして、制御情報管理部１１８は、制御情報受信部１１７が受信した制御情報１３１を情報格納領域１３０に記憶する。
【００５５】
[第１の実施の形態の概略]
次に、第１の実施の形態の概略について説明する。図１２及び図１３は、第１の実施の形態における通信制御処理の概略を説明するフローチャート図である。
【００５６】
[制御情報記憶処理]
初めに、端末装置１のハイパーバイザ１３が、制御情報１３１を情報格納領域１３０に記憶する際の処理（以下、制御情報記憶処理とも呼ぶ）について説明を行う。
【００５７】
端末装置１（ハイパーバイザ１３）は、図１２に示すように、例えば、管理者が管理者端末を介して送信した制御情報１３１を受信するまで待機する（Ｓ１のＮＯ）。そして、制御情報１３１を受信した場合（Ｓ１のＹＥＳ）、端末装置１は、Ｓ１１の処理で取得した制御情報１３１を情報格納領域１３０に記憶する（Ｓ２）。
【００５８】
なお、本実施の形態におけるハイパーバイザ１３は、端末装置１の起動時において、仮想ＯＳ１２よりも先に起動する。これにより、ハイパーバイザ１３は、制御情報１３１（情報格納領域１３０）を隠蔽した状態で、仮想ＯＳ１２を動作させることが可能になる。そのため、仮想ＯＳ１２の制御がアプリケーション１１で実行されたマルウエアに乗っ取られた場合であっても、制御情報１３１は、マルウエアによって破壊されることを防止することが可能になる。
【００５９】
[アクセス許否判定処理]
次に、端末装置１のハイパーバイザ１３が、アプリケーション１１から送信されたアクセス要求に対応するアクセスを許可するか否かを判定する処理（以下、アクセス許否判定処理とも呼ぶ）について説明を行う。
【００６０】
端末装置１（ハイパーバイザ１３）は、図１３に示すように、アプリケーション１１または仮想ＯＳ１２（以下、これらを総称してソフトウエアとも呼ぶ）から外部へのアクセス要求を取得するまで待機する（Ｓ１１のＮＯ）。
【００６１】
そして、アプリケーション１１からアクセス要求を取得した場合（Ｓ１１のＹＥＳ）、端末装置１は、情報格納領域１３０に記憶された制御情報１３１を参照する（Ｓ１２）。その後、端末装置１は、Ｓ１２の処理で参照した制御情報１３１に基づいて、Ｓ１１の処理で取得したアクセス要求のアクセス先を制御する（Ｓ１３）。
【００６２】
すなわち、仮想ＯＳ１２上で動作するアプリケーション１１がマルウエアに感染している場合（マルウエアがアプリケーションの１つとして単独で動作する場合を含む）、マルウエアは、図１等で説明した外部端末３２に対してコールバック通信を行うために、外部端末３２に対するアクセス要求を行う。そのため、ハイパーバイザ１３は、アプリケーション１１がハードウエア１４に対してアクセス要求を行った場合、そのアクセス要求を取得する。そして、ハイパーバイザ１３は、この場合、そのアクセス要求のアクセス先に対するアクセスを禁止する旨の情報が制御情報１３１に含まれているか否かを判定する。その結果、アクセス要求のアクセス先に対するアクセスを禁止する旨の情報が制御情報１３１に含まれている場合、ハイパーバイザ１３は、アクセス要求を送信したアプリケーション１１がマルウエアに感染していると判定する。そして、ハイパーバイザ１３は、この場合、アプリケーション１１からのアクセス要求をハードウエア１４に送信することなく破棄する。
【００６３】
また、コールバック通信を行うためのアクセス要求は、アプリケーション１１からだけでなく、マルウエアに制御を乗っ取られた仮想ＯＳ１２からも行われる可能性がある。そのため、ハイパーバイザ１３は、仮想ＯＳ１２からのアクセス要求についても同様に、アクセス要求に対するアクセスを許可するか否かの判定を行う。
【００６４】
これにより、ハイパーバイザ１３は、端末装置１の使用場所や、仮想ＯＳ１２の制御がマルウエアによって乗っ取られているか否かに依らず、マルウエアからのコールバック通信を遮断することが可能になる。
【００６５】
このように、第１の実施の形態によれば、端末装置１のハイパーバイザ１３は、アクセス可能なアクセス先を制御するための制御情報１３１を記憶する記憶部１３０を有する。また、端末装置１のハイパーバイザ１３は、記憶部１３０を隠蔽した状態で仮想ＯＳ１２を動作させ、アプリケーション１１から他の装置へのアクセス要求があった場合に、制御情報１３１に基づいて、アクセス要求のアクセス先を制御する処理部１２０を有する。
【００６６】
これにより、ハイパーバイザ１３は、端末装置１がマルウエアに感染した場合であっても、悪意のある者による情報の不正取得等を防止することが可能になる。
【００６７】
[第１の実施の形態の詳細]
次に、第１の実施の形態の詳細について説明する。図１４及び図１５は、第１の実施の形態における通信制御処理の詳細を説明するフローチャート図である。また、図１６及び図１７は、第１の実施の形態における通信制御処理の詳細を説明する図である。図１６及び図１７を参照しながら、図１４及び図１５の通信制御処理を説明する。
【００６８】
[制御情報記憶処理]
初めに、制御情報記憶処理の詳細について説明を行う。端末装置１（ハイパーバイザ１３）の制御情報受信部１１７は、図１４に示すように、例えば、管理者が管理者端末を介して送信した制御情報１３１を受信するまで待機する（Ｓ２１のＮＯ）。そして、制御情報１３１を受信した場合（Ｓ２１のＹＥＳ）、端末装置１（ハイパーバイザ１３）の制御情報管理部１１８は、Ｓ２１の処理で取得した制御情報１３１を情報格納領域１３０に記憶する（Ｓ２２）。以下、制御情報１３１の具体例について説明を行う。
【００６９】
[制御情報の具体例]
図１６は、制御情報１３１の具体例を説明する図である。図１６に示す制御情報１３１は、制御情報１３１に含まれる各情報を識別する「項番」と、アクセスの許可または禁止を行うアクセス先のＩＰアドレスを設定する「対象ＩＰアドレス」とを項目として有する。また、図１６に示す制御情報１３１は、アクセスの許可または禁止を行う通信種別（送受信、送信、または受信）のいずれかを設定する「通信種別」と、アクセスに対して行う許可または禁止のいずれかを設定する「制御種別」とを項目として有する。
【００７０】
具体的に、図１６に示す制御情報１３１において、「項番」が「１」である情報には、「対象ＩＰアドレス」として「１９２．１６８．０．１０」が設定されており、「通信種別」として「送受信」が設定されており、「制御種別」として「禁止」が設定されている。また、図１６に示す制御情報１３１において、「項番」が「２」である情報には、「対象ＩＰアドレス」として「１９２．１６８．０．２０」が設定されており、「通信種別」として「送信」が設定されており、「制御種別」として「禁止」が設定されている。さらに、図１６に示す制御情報１３１において、「項番」が「３」である情報には、「対象ＩＰアドレス」として「１９２．１６８．０．３０」が設定されており、「通信種別」として「受信」が設定されており、「制御種別」として「禁止」が設定されている。
【００７１】
すなわち、図１６に示す制御情報１３１は、「対象ＩＰアドレス」が「１９２．１６８．０．１０」である端末装置に対する情報の送信、及び「対象ＩＰアドレス」が「１９２．１６８．０．１０」である端末装置からの情報の受信を禁止する旨の情報を有している。さらに、図１６に示す制御情報１３１は、「対象ＩＰアドレス」が「１９２．１６８．０．２０」である端末装置に対する情報の送信、及び「対象ＩＰアドレス」が「１９２．１６８．０．３０」である端末装置からの情報の受信を禁止する旨の情報を有している。
【００７２】
これにより、端末装置１は、後述するように、制御情報１３１に含まれる通信（例えば、コールバック通信）を遮断することが可能になる。そのため、管理者は、マルウエアに感染した端末装置１が存在する場合であっても、その端末装置１を踏み台にして行われる情報の不正取得等を防止することが可能になる。
【００７３】
なお、図１６に示す制御情報１３１には、アクセスを禁止するアクセス先に関する情報が設定されている。これに対し、制御情報１３１には、アクセスを許可するアクセス先に関する情報が設定されるものであってもよい。そして、端末装置１は、この場合、制御情報１３１に情報が含まれるアクセス先に対する通信のみを許可するものであってよい。これにより、管理者は、コールバック通信が行われる際のアクセス先に関する情報を把握していない場合であっても、コールバック通信の遮断を行うことが可能になる。
【００７４】
[アクセス許否判定処理]
次に、アクセス許否判定処理の詳細について説明を行う。端末装置１（ハイパーバイザ１３）の命令取得部１１３は、図１５に示すように、ソフトウエア（アプリケーション１１及び仮想ＯＳ１２）から外部へのアクセス要求を取得するまで待機する（Ｓ３１のＮＯ）。その後、命令取得部１１３がソフトウエアからアクセス要求を取得した場合（Ｓ３１のＹＥＳ）、端末装置１のアクセス判定部１１４は、情報格納領域１３０に記憶された制御情報１３１を参照する（Ｓ３２）。そして、アクセス判定部１１４は、Ｓ３２の処理で参照した制御情報１３１に基づいて、Ｓ３１の処理で取得したアクセス要求のアクセス先が制御情報１３１に含まれるか否かを判定する（Ｓ３３）。
【００７５】
その結果、取得したアクセス要求のアクセス先に対するアクセスを禁止する旨の情報が制御情報１３１に含まれない場合（Ｓ３３のＮＯ）、端末装置１の命令送信部１１５は、取得したアクセス要求をハードウエア１４に送信する（Ｓ３４）。すなわち、アクセス判定部１１４は、この場合、アクセス要求を送信したアプリケーション１１または仮想ＯＳ１２がマルウエアに感染していないと判定する。そのため、命令送信部１１５は、この場合、Ｓ３１の処理で取得したアクセス要求に対するアクセスをハードウエア１４に指示する。
【００７６】
一方、Ｓ３１の処理で取得したアクセス要求のアクセス先に対するアクセスを禁止する旨の情報が制御情報１３１に含まれる場合（Ｓ３３のＹＥＳ）、端末装置１の命令破棄部１１６は、取得したアクセス要求を破棄する（Ｓ３５）。すなわち、アクセス判定部１１４は、この場合、Ｓ３１の処理で取得したアクセス要求を送信したアプリケーション１１または仮想ＯＳ１２がマルウエアであると判定する。そして、アクセス判定部１１４は、Ｓ３１の処理で取得したアクセス要求がコールバック通信である可能性があると判定する。そのため、命令送信部１１５は、この場合、Ｓ３１の処理で取得したアクセス要求に対するアクセスをハードウエア１４に指示しない。
【００７７】
これにより、端末装置１は、アプリケーション１１や仮想ＯＳ１２がマルウエアによって感染されている場合であっても、悪意のある者による情報の不正取得等を防止することが可能になる。そのため、管理者は、例えば、マルウエアの感染を検知した端末装置１と同一ネットワークに接続していた端末装置（端末装置１が感染したマルウエアに感染した可能性がある端末装置）についても、継続して利用することが可能になる。
【００７８】
また、端末装置１は、端末装置１の外部のネットワーク装置等ではなく、ハイパーバイザ１３において通信制御装置を実行する。そのため、端末装置１は、端末装置１の使用場所に依らず、遮断すべき通信の遮断を行うことが可能になる。
【００７９】
さらに、端末装置１は、記憶部１３０がハイパーバイザ１３によって仮想ＯＳ１２から隠蔽されているため、アプリケーション１１や仮想ＯＳ１２に感染したマルウエアによって、制御情報１３１が破壊等されることを防止することが可能になる。
【００８０】
[制御情報の他の具体例]
次に、制御情報１３１の他の具体例について説明を行う。図１７は、制御情報１３１の他の具体例を説明する図である。図１７に示す制御情報１３１は、図１６で説明した制御情報１３１が有する情報に加え、アクセス先のポート番号を設定する「対象ポート番号」を項目として有する。これにより、端末装置１（ハイパーバイザ１３）は、アプリケーション１１または仮想ＯＳ１２から送信されたアクセス要求に対応するアクセスを禁止すべきか否かの判定を、より詳細に行うことが可能になる。
【００８１】
具体的に、図１７に示す制御情報１３１において、「項番」が「１」である情報には、「対象ＩＰアドレス」として「１９２．１６８．０．１０」が設定されており、「対象ポート番号」として「５３」が設定されている。また、図１７に示す制御情報１３１において、「項番」が「１」である情報には、「通信種別」として「送受信」が設定されており、「制御種別」として「禁止」が設定されている。図１７の他の情報については説明を省略する。
【００８２】
これにより、管理者は、端末装置１がマルウエアに感染した可能性がある場合に、一部の機能に関連する通信のみを遮断することが可能になる。そのため、管理者は、例えば、端末装置１が実行する処理のうち、継続して実行する必要がある処理に関する通信のみを許可することが可能になる。
【００８３】
以上の実施の形態をまとめると、以下の付記のとおりである。
【００８４】
（付記１）
アクセス可能なアクセス先を制御するための制御情報を記憶する記憶部と、
前記記憶部を隠蔽した状態でオペレーティングシステムを動作させ、アプリケーションから他の装置へのアクセス要求があった場合に、前記制御情報に基づいて、前記アクセス要求のアクセス先を制御する処理部と、を有する、
ことを特徴とする通信制御装置。
【００８５】
（付記２）
付記１において、
前記処理部は、物理マシンにおける仮想マシンの生成及び削除を行うハイパーバイザである、
ことを特徴とする通信制御装置。
【００８６】
（付記３）
付記２において、
前記ハイパーバイザは、前記通信制御装置のハードディスク上において、オペレーティングシステムを介することなく直接動作するハイパーバイザである、
ことを特徴とする通信制御装置。
【００８７】
（付記４）
付記１において、
前記処理部は、前記制御情報に前記アクセス要求のアクセス先に対するアクセスを禁止する旨の情報が含まれている場合、前記アクセス要求のアクセス先に対するアクセスを禁止し、前記制御情報に前記禁止する旨の情報が含まれていない場合、前記アクセス要求のアクセス先に対するアクセスを許可する、
ことを特徴とする通信制御装置。
【００８８】
（付記５）
付記４において、
前記制御情報は、アクセスを禁止するアクセス先のＩＰアドレスを含み、
前記処理部は、前記制御情報に前記アクセス要求のアクセス先のＩＰアドレスが含まれている場合、前記アクセス要求のアクセス先に対するアクセスを禁止し、前記制御情報に前記アクセス要求のアクセス先のＩＰアドレスが含まれていない場合、前記アクセス要求のアクセス先に対するアクセスを許可する、
ことを特徴とする通信制御装置。
【００８９】
（付記６）
付記４において、
前記制御情報は、アクセスを許可するアクセス先のＩＰアドレスを含み、
前記処理部は、前記制御情報に前記アクセス要求のアクセス先のＩＰアドレスが含まれている場合、前記アクセス要求のアクセス先に対するアクセスを許可し、前記制御情報に前記アクセス要求のアクセス先のＩＰアドレスが含まれていない場合、前記アクセス要求のアクセス先に対するアクセスを禁止する、
ことを特徴とする通信制御装置。
【００９０】
（付記７）
アクセス可能なアクセス先を制御するための制御情報を記憶し、
前記記憶部を隠蔽した状態でオペレーティングシステムを動作させ、アプリケーションから他の装置へのアクセス要求があった場合に、前記制御情報に基づいて、前記アクセス要求のアクセス先を制御する、
ことを特徴とする通信制御方法。
【００９１】
（付記８）
付記７において、
前記制御する工程では、前記制御情報に前記アクセス要求のアクセス先の情報が含まれている場合、前記アクセス要求のアクセス先に対するアクセスを禁止し、前記制御情報に前記アクセス要求のアクセス先の情報が含まれていない場合、前記アクセス要求のアクセス先に対するアクセスを許可する、
ことを特徴とする通信制御方法。
【００９２】
（付記９）
コンピュータに、
アクセス可能なアクセス先を制御するための制御情報を記憶し、
前記記憶部を隠蔽した状態でオペレーティングシステムを動作させ、アプリケーションから他の装置へのアクセス要求があった場合に、前記制御情報に基づいて、前記アクセス要求のアクセス先を制御する、
ことを実行させることを特徴とする通信制御プログラム。
【００９３】
（付記１０）
付記９において、
前記制御する処理では、前記制御情報に前記アクセス要求のアクセス先の情報が含まれている場合、前記アクセス要求のアクセス先に対するアクセスを禁止し、前記制御情報に前記アクセス要求のアクセス先の情報が含まれていない場合、前記アクセス要求のアクセス先に対するアクセスを許可する、
ことを実行させることを特徴とする通信制御プログラム。
【符号の説明】
【００９４】
１ａ：端末装置                １ｂ：端末装置
１ｃ：端末装置                ３：ファイアーウォール装置
３１：外部端末                ３２：外部端末
ＮＷ：ネットワーク
【図１】
0006623656.tif 000002
【図２】
0006623656.tif 000003
【図３】
0006623656.tif 000004
【図４】
0006623656.tif 000005
【図５】
0006623656.tif 000006
【図６】
0006623656.tif 000007
【図７】
0006623656.tif 000008
【図８】
0006623656.tif 000009
【図９】
0006623656.tif 000010
【図１０】
0006623656.tif 000011
【図１１】
0006623656.tif 000012
【図１２】
0006623656.tif 000013
【図１３】
0006623656.tif 000014
【図１４】
0006623656.tif 000015
【図１５】
0006623656.tif 000016
【図１６】
0006623656.tif 000017
【図１７】
0006623656.tif 000018