(57)【要約】  コンピュータプログラム、通信制御方法、通信制御装置及び中継装置の提供。  通信網を介して外部装置と通信する機能を備えた複数のプログラムがインストールされたコンピュータに、プログラムを通じて送信される全ての通信データを取得し、取得した通信データのうち、特定のプログラムを通じて送信される通信データ以外の通信データを破棄する処理を実行させるためのコンピュータプログラム。
2020044494.tif 000002
【特許請求の範囲】
【請求項１】
通信網を介して外部装置と通信する機能を備えた複数のプログラムがインストールされたコンピュータに、
前記プログラムを通じて送信される全ての通信データを取得し、
取得した通信データのうち、特定のプログラムを通じて送信される通信データ以外の通信データを破棄する
処理を実行させるためのコンピュータプログラム。
【請求項２】
正当な送信先に係る情報を記憶する記憶部を参照して、取得した通信データの送信先が正当な送信先であるか否かを判断し、
正当な送信先であると判断した場合、前記通信データの送信を許可する
処理を前記コンピュータに実行させるための請求項１に記載のコンピュータプログラム。
【請求項３】
正当な送信先に係る情報を外部から取得し、
取得した情報に基づき、前記記憶部に記憶してある送信先に係る情報を更新する
処理を前記コンピュータに実行させるための請求項２に記載のコンピュータプログラム。
【請求項４】
取得した通信データの送信可否に係る設定を受付け、
送信を可とする設定を受付けた場合、前記通信データの送信を許可する
処理を前記コンピュータに実行させるための請求項１から請求項３の何れか１つに記載のコンピュータプログラム。
【請求項５】
取得した通信データが特定の情報を含むか否かを判断し、
前記通信データが特定の情報を含ないと判断した場合、前記通信データの送信を許可する
処理を前記コンピュータに実行させるための請求項１から請求項４の何れか１つに記載のコンピュータプログラム。
【請求項６】
通信データの送信を許可するプログラムの選択を受付け、
取得した通信データが、選択されたプログラムを通じて送信される通信データである場合、該通信データの送信を許可する
処理を前記コンピュータに実行させるための請求項１から請求項５の何れか１つに記載のコンピュータプログラム。
【請求項７】
通信網を介して外部装置と通信する機能を備えた複数のプログラムがインストールされたコンピュータに、
前記プログラムを通じて送信される全ての通信データを取得し、
取得した通信データに、特定のプログラムを通じて送信される通信データ以外の通信データが含まれる場合、前記特定のプログラム以外のプログラムによる送信の発生を報知する
処理を実行させるためのコンピュータプログラム。
【請求項８】
前記通信網は、定められた外部装置との間で構築されるＶＰＮ（Virtual Private Network ）である
請求項１から請求項７の何れか１つに記載のコンピュータプログラム。
【請求項９】
前記通信網は、定められた中継装置との間で構築されるＶＰＮ（Virtual Private Network ）である
請求項１から請求項７の何れか１つに記載のコンピュータプログラム。
【請求項１０】
通信網を介して外部装置と通信する機能を備えた複数のプログラムがインストールされたコンピュータにより、
前記プログラムを通じて送信される全ての通信データを取得し、
取得した通信データのうち、特定のプログラムを通じて送信される通信データ以外の通信データを破棄する
処理を行う通信制御方法。
【請求項１１】
通信網を介して外部装置と通信する機能を備えた複数のプログラムを記憶する記憶部と、
前記プログラムを通じて送信される全ての通信データを取得する取得部と
取得した通信データのうち、特定のプログラムを通じて送信される通信データ以外の通信データを破棄する通信破棄部と
を備える通信制御装置。
【請求項１２】
通信網を介して外部装置と通信する機能を備えた複数のプログラムがインストールされた端末装置から、前記プログラムを通じて送信される全ての通信データを取得する取得部と、
取得した通信データのうち、特定のプログラムを通じて送信される通信データ以外の通信データを破棄する通信破棄部と
を備える中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータプログラム、通信制御方法、通信制御装置及び中継装置に関する。
【背景技術】
【０００２】
近年、スマートフォンやタブレット端末などのクライアント装置によるインターネットの利用が盛んに行われるようになってきている。このようなインターネットを利用したサービスにおいては、ユーザに対してユーザＩＤ及びパスワードの入力が求められる場合がある。サービス提供側は、ユーザＩＤ及びパスワードによりユーザ本人であることを認証し、認証したユーザに対してサービスを提供するようにしている（例えば、特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−７３５６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ユーザが知らない間にクライアント装置に悪意のあるプログラムがインストールされていた場合、不正行為が行われる虞がある。例えば、サービス提供側が用意するインタフェース画面とよく似たインタフェース画面（偽装したインタフェース画面）を提供し、この偽装したインタフェース画面を通じて入力されたユーザＩＤ及びパスワードを、第三者によって設置された別のサーバ装置へ送信するプログラムがクライアント装置にインストールされていた場合、ユーザＩＤ及びパスワードが第三者に盗まれる虞がある。【０００５】
本発明は、斯かる事情に鑑みてなされたものであり、クライアント装置からの情報の流出を抑制することができるコンピュータプログラム、通信制御方法、通信制御装置及び中継装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
一態様に係るコンピュータプログラムは、通信網を介して外部装置と通信する機能を備えた複数のプログラムがインストールされたコンピュータに、前記プログラムを通じて送信される全ての通信データを取得し、取得した通信データのうち、特定のプログラムを通じて送信される通信データ以外の通信データを破棄する処理を実行させるためのコンピュータプログラムである。【０００７】
一態様に係るコンピュータプログラムは、通信網を介して外部装置と通信する機能を備えた複数のプログラムがインストールされたコンピュータに、前記プログラムを通じて送信される全ての通信データを取得し、取得した通信データに、特定のプログラムを通じて送信される通信データ以外の通信データが含まれる場合、前記特定のプログラム以外のプログラムによる送信の発生を報知する処理を実行させるためのコンピュータプログラムである。【０００８】
一態様に係る通信制御方法は、通信網を介して外部装置と通信する機能を備えた複数のプログラムがインストールされたコンピュータにより、前記プログラムを通じて送信される全ての通信データを取得し、取得した通信データのうち、特定のプログラムを通じて送信される通信データ以外の通信データを破棄する処理を行う。【０００９】
一態様に係る通信制御装置は、通信網を介して外部装置と通信する機能を備えた複数のプログラムを記憶する記憶部と、前記プログラムを通じて送信される全ての通信データを取得する取得部と取得した通信データのうち、特定のプログラムを通じて送信される通信データ以外の通信データを破棄する通信破棄部とを備える。【００１０】
一態様に係る中継装置は、通信網を介して外部装置と通信する機能を備えた複数のプログラムがインストールされた端末装置から、前記プログラムを通じて送信される全ての通信データを取得する取得部と、取得した通信データのうち、特定のプログラムを通じて送信される通信データ以外の通信データを破棄する通信破棄部とを備える。
【発明の効果】
【００１１】
本願によれば、クライアント装置からの情報の流出を抑制することができる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１に係る通信制御システムの全体構成を説明するブロック図である。
【図２】悪意のあるプログラムによる不正行為を説明する説明図である。
【図３】クライアント装置の内部構成を説明するブロック図である。
【図４】実施の形態１に係るクライアント装置が実行する処理の手順を説明するフローチャートである。
【図５】実施の形態２に係るクライアント装置が実行する処理の手順を説明するフローチャートである。
【図６】実施の形態３に係るクライアント装置が実行する処理の手順を説明するフローチャートである。
【図７】実施の形態４に係るクライアント装置が実行する処理の手順を説明するフローチャートである。
【図８】実施の形態５に係るクライアント装置が実行する処理の手順を説明するフローチャートである。
【図９】実施の形態６に係るクライアント装置が実行する処理の手順を説明するフローチャートである。
【図１０】実施の形態７に係る通信制御システムの全体構成を説明するブロック図である。
【図１１】中継装置の内部構成を説明するフローチャートである。
【図１２】実施の形態７に係る中継装置が実行する処理の手順を説明するフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
（実施の形態１）
図１は実施の形態１に係る通信制御システムの全体構成を説明するブロック図である。本実施の形態に係る通信制御システムは、通信網Ｎを介して互いに通信可能に接続されるクライアント装置１０とサーバ装置２０とを備える。クライアント装置１０は、ユーザによって利用されるパーソナルコンピュータ、スマートフォンなどの端末装置であり、サーバ装置２０にアクセスするためのソフトウェア（アプリケーションプログラム）がインストールされているものとする。サーバ装置２０は、クライアント装置１０からのアクセスを受付けた際にユーザ認証を行い、ユーザ認証に成功した場合、クライアント装置１０に対して適宜のサービスを提供する。
【００１４】
以下では、サーバ装置２０を金融機関等によって設置される金融サーバとし、クライアント装置１０にインストールされている金融アプリ１２２（図２を参照）を通じて、クライアント装置１０とサーバ装置２０との間で通信を行う構成について説明を行う。
【００１５】
クライアント装置１０から提供されるサービスを受けようとした場合、ユーザは、クライアント装置１０において金融アプリ１２２を起動し、金融アプリ１２２によって提供されるインタフェース画面を通じてユーザＩＤ及びパスワードを入力する。入力されたユーザＩＤ及びパスワードは、金融アプリ１２２を通じて、サーバ装置２０へ送信される。サーバ装置２０にてユーザ認証に成功した場合、ユーザはサーバ装置２０から提供されるサービスを享受することができる。
【００１６】
しかしながら、ユーザが知らない間に、悪意のあるプログラムがクライアント装置１０にインストールされていた場合、不正行為が行われる虞がある。図２は悪意のあるプログラムによる不正行為を説明する説明図である。クライアント装置１０に正規にインストールされている金融アプリ１２２は、ユーザに対してユーザＩＤ及びパスワードの入力を求める場合、例えば、図２に示すようなインタフェース画面１００Ａをクライアント装置１０の表示部１４に表示させる。これに対し、悪意のあるプログラムは、金融アプリ１２２のインタフェース画面１００Ａとよく似たインタフェース画面１００Ｂ（偽装したインタフェース画面）を用意し、正規のインタフェース画面１００Ａに重畳させて表示する。外見上は、正規のインタフェース画面１００Ａと偽装したインタフェース画面１００Ｂとは区別することは困難であり、偽装したインタフェース画面１００Ｂを通じてユーザＩＤ及びパスワードが入力される虞がある。悪意のあるプログラムは、偽装したインタフェース画面１００Ｂを通じてユーザＩＤ及びパスワードを取得し、第三者によって設置された別のサーバ装置へ送信することで、クライアント装置１０を利用しているユーザのユーザＩＤ及びパスワードを不正に取得する。
【００１７】
そこで、本実施の形態では、クライアント装置１０にて実行されるプログラムを通じて通信データが外部へ送信される場合、この通信データを取得し、特定のプログラム（本実施の形態では金融アプリ１２２）以外のプログラムを通じて送信される通信データを破棄することによって、第三者に情報が盗まれることを防止することを特徴の１つとしている。
【００１８】
図３はクライアント装置１０の内部構成を説明するブロック図である。クライアント装置１０は、制御部１１、記憶部１２、通信部１３、表示部１４及び操作部１５を備える。
【００１９】
制御部１１は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などにより構成されている。制御部１１が備えるＣＰＵは、ＲＯＭ又は記憶部１２に記憶されている各種コンピュータプログラムをＲＡＭ上に展開して実行することにより、装置全体を本願の通信制御装置として機能させる。
【００２０】
なお、制御部１１は、上記の構成に限定されるものではなく、１又は複数のＣＰＵ、マルチコアＣＰＵ、マイコン等を含む任意の処理回路であればよい。また、制御部１１は、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【００２１】
記憶部１２は、ＥＥＰＲＯＭ（Electronically Erasable Programmable Read Only Memory）などの不揮発性メモリにより構成されており、各種のソフトウェア（コンピュータプログラム）及び各種のデータを記憶する。ここで、記憶部１２に記憶されているソフトウェアには、サーバ装置２０との間でＶＰＮを構築するためのＶＰＮアプリ１２１、サーバ装置２０にアクセスするための金融アプリ１２２、クライアント装置１０における通信を制御する通信制御アプリ１２３などが含まれる。また、記憶部１２が記憶する情報には、通信相手を制限するために用いられる情報（後述するホワイトリスト）が含まれていてもよい。
【００２２】
なお、記憶部１２に記憶されるプログラムは、当該プログラムを読み取り可能に記録した非一時的な記録媒体Ｍ１により提供されてもよい。記録媒体Ｍ１は、例えば、ＣＤ−ＲＯＭ、ＵＳＢメモリ、ＳＤ（Secure Digital）カード、マイクロＳＤカード、コンパクトフラッシュ（登録商標）などの可搬型メモリである。この場合、制御部１１は、不図示の読取装置を用いて記録媒体Ｍ１から各種プログラムを読み取り、読み取った各種プログラムを記憶部１２にインストールする。また、記憶部１２に記憶されるプログラムは、通信部１３を介した通信により提供されてもよい。この場合、制御部１１は、通信部１３を通じて各種プログラムを取得し、取得した各種プログラムを記憶部１２にインストールする。
【００２３】
通信部１３は、通信網Ｎを通じてサーバ装置２０と通信を行うためのインタフェースを備える。通信部１３は、サーバ装置２０へ送信すべき情報が制御部１１から入力された場合、入力された情報をサーバ装置２０へ送信する共に、通信網Ｎを通じて受信したサーバ装置２０からの情報を制御部１１へ出力する。
【００２４】
表示部１４は、液晶ディスプレイ、有機ＥＬディスプレイなどの表示デバイスを備え、クライアント装置１０のユーザに対して報知すべき情報を表示する。また、操作部１５は、タッチパネル、各種ボタンを備え、クライアント装置１０のユーザによる操作を受付け、受付けた操作情報を制御部１１へ出力する。
【００２５】
図４は実施の形態１に係るクライアント装置１０が実行する処理の手順を説明するフローチャートである。クライアント装置１０の制御部１１は、操作部１５を通じて金融アプリ１２２の起動指示を受付けた場合、記憶部１２から金融アプリ１２２を読出し、読出した金融アプリ１２２を起動する（ステップＳ１０１）。また、制御部１１は、記憶部１２から通信制御アプリ１２３を読出し、読出した通信制御アプリ１２３を起動する（ステップＳ１０２）。
【００２６】
なお、本実施の形態では、金融アプリ１２２を起動した後に通信制御アプリ１２３を起動する構成としたが、金融アプリ１２２及び通信制御アプリ１２３の起動順序は上記に限定されるものではない。例えば、通信制御アプリ１２３は常時起動されており、通信制御アプリ１２３が起動された状態にて、金融アプリ１２２の起動指示を受付けた場合、制御部１１が金融アプリ１２２を起動する構成であってもよい。
【００２７】
次いで、制御部１１は、サーバ装置２０との通信に先立ち、記憶部１２に記憶されているＶＰＮアプリ１２１を起動し、同じくＶＰＮアプリ（不図示）が実行されるサーバ装置２０との間でＶＰＮ接続を確立させる（ステップＳ１０３）。なお、ＶＰＮアプリ１２１は、金融アプリ１２２の起動に連動して起動されるものであってもよく、操作部１５を通じてユーザの指示を受付けた場合に起動されるものであってもよい。
【００２８】
次いで、制御部１１は、クライアント装置１０にインストールされているプログラムを通じて外部へ送信される通信データを取得したか否かを判断する（ステップＳ１０４）。取得していない場合（Ｓ１０４：ＮＯ）、制御部１１は後述するステップＳ１０８へ処理を移行させる。なお、ステップＳ１０４から後述するステップＳ１０７までの処理は、制御部１１によって実行される通信制御アプリ１２３の機能によって実現される処理である。
【００２９】
クライアント装置１０にインストールされているプログラムを通じて外部へ送信される通信データを取得したと判断した場合（Ｓ１０４：ＹＥＳ）、制御部１１は、取得した通信データの送信元のプログラムが特定のプログラム（金融アプリ１２２）であるか否かを判断する（ステップＳ１０５）。本実施の形態では、金融アプリ１２２以外の任意のプログラムからの送信を制限するために、取得した通信データの送信元が金融アプリ１２２であるか否かを判断する。
【００３０】
取得した通信データの送信元が特定のプログラム（金融アプリ１２２）であると判断した場合（Ｓ１０５：ＹＥＳ）、制御部１１は、当該通信データを通信部１３を通じて宛先装置へ送信する（ステップＳ１０６）。本実施の形態では、クライアント装置１０とサーバ装置２０との間でＶＰＮが構築されているため、通信データはサーバ装置２０へ送信されることになる。
【００３１】
一方、取得した通信データの送信元が特定のプログラム（金融アプリ１２２）でないと判断した場合（Ｓ１０５：ＮＯ）、制御部１１は、当該通信データを送信せずに破棄する処理を実行する（ステップＳ１０７）。これにより、金融アプリ１２２以外の任意のプログラムにより指定された宛先への通信データの送信が回避されるので、ユーザＩＤ及びパスワード等の各種の情報を盗み出すような悪意のあるプログラムがインストールされた場合であっても、当該プログラムからのデータの送信を止めることができる。なお、送信制限の対象とするプログラムは、いわゆるアプリケーションプログラムに限定されるものではない。制御部１１によって実行される単独のプログラムであってもよく、他のアプリケーションプログラムやクライアント装置１０のＯＳ（Operating System）に組み込まれるようなスクリプト、コマンド、アプレット、マクロ等の任意の形態のプログラムを含んでもよい。
【００３２】
次いで、制御部１１は、金融アプリ１２２が停止されたか否かを判断する（ステップＳ１０８）。停止されていないと判断した場合（Ｓ１０８：ＮＯ）、制御部１１は、処理をステップＳ１０４へ戻す。
【００３３】
一方、金融アプリ１２２が停止されたと判断した場合（Ｓ１０８：ＹＥＳ）、制御部１１は、ＶＰＮアプリ１２１を停止させ、クライアント装置１０とサーバ装置２０との間のＶＰＮ接続を解除する（ステップＳ１０９）。また、制御部１１は、通信制御アプリ１２３を停止させ（ステップＳ１１０）、本フローチャートによる処理を終了する。
【００３４】
以上のように、本実施の形態では、金融アプリ１２２が起動している間、金融アプリ１２２以外の任意のプログラムから送信される通信データを破棄する構成としているので、ユーザＩＤ及びパスワード等の各種の情報を盗み出すような悪意のあるプログラムがインストールされた場合であっても、当該プログラムからのデータの送信を止めることができる。
【００３５】
なお、本実施の形態では、金融アプリ１２２が起動している間、他のプログラムから送信される通信データを破棄する構成としたが、データの送信が許可されるアプリケーションプログラムは金融アプリ１２２に限定されるものではない。データの送信が許可されるアプリケーションプログラムは、特定のサーバと通信を行うために予め設定された専用のアプリケーションプログラムであってもよく、不特定多数のサーバと通信を行うブラウザソフト等の一般のアプリケーションプログラムであってもよい。
【００３６】
また、金融アプリ１２２が提供するインタフェース画面のうち、特定のインタフェース画面を通じて実行される処理が完了するまでの間、他のプログラムから送信される通信データを破棄する構成としてもよい。例えば、金融アプリ１２２において、ユーザＩＤ及びパスワードの入力を受付けるインタフェース画面を提供する場合、このインタフェース画面を通じてユーザＩＤ及びパスワードの入力を受付け、受付けたユーザＩＤ及びパスワードをサーバ装置２０へ送信するまでの間、他のプログラムから送信される通信データを破棄する構成としてもよい。
【００３７】
（実施の形態２）
実施の形態２では、各プログラムによる通信データの送信先を判別し、正当な送信先が選択されている場合には、通信データの破棄を行わずに送信を許可する構成について説明する。
【００３８】
図５は実施の形態２に係るクライアント装置１０が実行する処理の手順を説明するフローチャートである。クライアント装置１０の制御部１１は、ホワイトリストを更新するか否かを判断する（ステップＳ２０１）。制御部１１は、ホワイトリストの更新指示を操作部１５を通じて受付けた場合、若しくはホワイトリストの更新タイミングとして予め設定されているタイミングに到達した場合、ホワイトリストを更新すると判断する。
【００３９】
ホワイトリストを更新すると判断した場合（Ｓ２０１：ＹＥＳ）、制御部１１は、外部からホワイトリストを取得し、記憶部１２に記憶されているホワイトリストを更新する（ステップＳ２０２）。ホワイトリストを更新しないと判断した場合（Ｓ２０１：ＮＯ）、制御部１１は、ステップＳ２０３移行の処理を実行する。
【００４０】
次いで、実施の形態１と同様の手順にて、金融アプリ１２２、通信制御アプリ１２３、及びＶＰＮアプリ１２１を起動し、サーバ装置２０との間でＶＰＮ接続を確立させる（ステップＳ２０３〜２０５）。
【００４１】
次いで、制御部１１は、クライアント装置１０にインストールされているプログラムを通じて外部へ送信される通信データを取得したか否かを判断する（ステップＳ２０６）。取得していない場合（Ｓ２０６：ＮＯ）、制御部１１は後述するステップＳ２１１へ処理を移行させる。なお、ステップＳ２０６から後述するステップＳ２１０までの処理は、制御部１１によって実行される通信制御アプリ１２３の機能によって実現される処理である。
【００４２】
クライアント装置１０にインストールされているプログラムを通じて外部へ送信される通信データを取得したと判断した場合（Ｓ２０６：ＹＥＳ）、制御部１１は、取得した通信データの送信先がホワイトリストに掲載されている送信先であるか否かを判断する（ステップＳ２０７）。ホワイトリストに掲載されている送信先であると判断した場合（Ｓ２０７：ＹＥＳ）、制御部１１は、処理をステップＳ２０９へ移行させる。
【００４３】
ホワイトリストに掲載されていない送信先と判断した場合（Ｓ２０７：ＮＯ）、制御部１１は、取得した通信データの送信元のプログラムが特定のプログラム（金融アプリ１２２）であるか否かを判断する（ステップＳ２０８）。
【００４４】
取得した通信データの送信元が特定のプログラム（金融アプリ１２２）であると判断した場合（Ｓ２０８：ＹＥＳ）、制御部１１は、当該通信データを通信部１３を通じて宛先装置へ送信する（ステップＳ２０９）。本実施の形態では、クライアント装置１０とサーバ装置２０との間でＶＰＮが構築されているため、通信データはサーバ装置２０へ送信されることになる。
【００４５】
一方、取得した通信データの送信元が特定のプログラム（金融アプリ１２２）でないと判断した場合（Ｓ２０８：ＮＯ）、制御部１１は、当該通信データを送信せずに破棄する処理を実行する（ステップＳ２１０）。
【００４６】
次いで、制御部１１は、金融アプリ１２２が停止されたか否かを判断する（ステップＳ２１１）。停止されていないと判断した場合（Ｓ２１１：ＮＯ）、制御部１１は、処理をステップＳ２０６へ戻す。
【００４７】
一方、金融アプリ１２２が停止されたと判断した場合（Ｓ２１１：ＹＥＳ）、制御部１１は、ＶＰＮアプリ１２１を停止させ、クライアント装置１０とサーバ装置２０との間のＶＰＮ接続を解除する（ステップＳ２１２）。また、制御部１１は、通信制御アプリ１２３を停止させ（ステップＳ２１３）、本フローチャートによる処理を終了する。
【００４８】
以上のように、本実施の形態では、金融アプリ１２２以外のプログラムからの通信データであっても、送信先の安全性がホワイトリストによって確認できる場合には、通信データを破棄せずに送信することができる。
【００４９】
（実施の形態３）
実施の形態３では、ユーザにより送信が許可された場合、通信データの破棄を行わずに送信を許可する構成について説明する。
【００５０】
図６は実施の形態３に係るクライアント装置１０が実行する処理の手順を説明するフローチャートである。クライアント装置１０の制御部１１は、実施の形態１と同様の手順にて、金融アプリ１２２、通信制御アプリ１２３、及びＶＰＮアプリ１２１を起動し、サーバ装置２０との間でＶＰＮ接続を確立させる（ステップＳ３０１〜３０３）。
【００５１】
次いで、制御部１１は、クライアント装置１０にインストールされているプログラムを通じて外部へ送信される通信データを取得したか否かを判断する（ステップＳ３０４）。取得していない場合（Ｓ３０４：ＮＯ）、制御部１１は後述するステップＳ３１０へ処理を移行させる。なお、ステップＳ３０４から後述するステップＳ３０９までの処理は、制御部１１によって実行される通信制御アプリ１２３の機能によって実現される処理である。
【００５２】
クライアント装置１０にインストールされているプログラムを通じて外部へ送信される通信データを取得したと判断した場合（Ｓ３０４：ＹＥＳ）、制御部１１は、取得した通信データの送信元のプログラムが特定のプログラム（金融アプリ１２２）であるか否かを判断する（ステップＳ３０５）。
【００５３】
取得した通信データの送信元が特定のプログラム（金融アプリ１２２）であると判断した場合（Ｓ３０５：ＹＥＳ）、制御部１１は、当該通信データを通信部１３を通じて宛先装置へ送信する（ステップＳ３０６）。本実施の形態では、クライアント装置１０とサーバ装置２０との間でＶＰＮが構築されているため、通信データはサーバ装置２０へ送信されることになる。
【００５４】
一方、取得した通信データの送信元が特定のプログラム（金融アプリ１２２）でないと判断した場合（Ｓ３０５：ＮＯ）、制御部１１は、送信の可否をユーザに問合わせ（ステップＳ３０７）。具体的には、制御部１１は、送信の可否を問合わせるインタフェース画面を表示部１４に表示させ、インタフェース画面を通じて送信の可否に係る設定を受付ける。
【００５５】
制御部１１は、送信の可否をユーザに問合わせた結果、特定のプログラム（金融アプリ１２２）以外のプログラムからの送信が許可されたか否かを判断し（ステップＳ３０８）、許可されたと判断した場合（Ｓ３０８：ＹＥＳ）、通信データを宛先装置へ送信する（Ｓ３０６）。
【００５６】
一方、送信が許可されていないと判断した場合（Ｓ３０８：ＮＯ）、制御部１１は、通信データを送信せずに破棄する処理を実行する（ステップＳ３０９）。
【００５７】
次いで、制御部１１は、金融アプリ１２２が停止されたか否かを判断する（ステップＳ３１０）。停止されていないと判断した場合（Ｓ３１０：ＮＯ）、制御部１１は、処理をステップＳ３０４へ戻す。
【００５８】
一方、金融アプリ１２２が停止されたと判断した場合（Ｓ３１０：ＹＥＳ）、制御部１１は、ＶＰＮアプリ１２１を停止させ、クライアント装置１０とサーバ装置２０との間のＶＰＮ接続を解除する（ステップＳ３１１）。また、制御部１１は、通信制御アプリ１２３を停止させ（ステップＳ３１２）、本フローチャートによる処理を終了する。
【００５９】
以上のように、本実施の形態では、金融アプリ１２２以外のプログラムからの通信データであっても、送信先の安全性がユーザによって確認された場合には、通信データを破棄せずに送信することができる。
【００６０】
（実施の形態４）
実施の形態４では、通信データに特定の情報が含まれない場合、通信データの破棄を行わずに送信を許可する構成について説明する。
【００６１】
図７は実施の形態４に係るクライアント装置１０が実行する処理の手順を説明するフローチャートである。クライアント装置１０の制御部１１は、実施の形態１と同様の手順にて、金融アプリ１２２、通信制御アプリ１２３、及びＶＰＮアプリ１２１を起動し、サーバ装置２０との間でＶＰＮ接続を確立させる（ステップＳ４０１〜４０３）。
【００６２】
次いで、制御部１１は、クライアント装置１０にインストールされているプログラムを通じて外部へ送信される通信データを取得したか否かを判断する（ステップＳ４０４）。取得していない場合（Ｓ４０４：ＮＯ）、制御部１１は後述するステップＳ４０９へ処理を移行させる。なお、ステップＳ４０４から後述するステップＳ４０８までの処理は、制御部１１によって実行される通信制御アプリ１２３の機能によって実現される処理である。
【００６３】
クライアント装置１０にインストールされているプログラムを通じて外部へ送信される通信データを取得したと判断した場合（Ｓ４０４：ＹＥＳ）、制御部１１は、取得した通信データの送信元のプログラムが特定のプログラム（金融アプリ１２２）であるか否かを判断する（ステップＳ４０５）。
【００６４】
取得した通信データの送信元が特定のプログラム（金融アプリ１２２）であると判断した場合（Ｓ４０５：ＹＥＳ）、制御部１１は、当該通信データを通信部１３を通じて宛先装置へ送信する（ステップＳ４０６）。本実施の形態では、クライアント装置１０とサーバ装置２０との間でＶＰＮが構築されているため、通信データはサーバ装置２０へ送信されることになる。
【００６５】
一方、取得した通信データの送信元が特定のプログラム（金融アプリ１２２）でないと判断した場合（Ｓ４０５：ＮＯ）、制御部１１は、送信対象の通信データに特定の情報が含まれるか否かを判断する（ステップＳ４０７）。ここでは、例えばユーザＩＤ及びパスワードといった外部への流出が好ましくない情報が通信データに含まれているか否かを判断する。
【００６６】
特定の情報が含まれていないと判断した場合（Ｓ４０７：ＮＯ）、制御部１１は、通信データを宛先装置へ送信する（Ｓ４０６）。一方、特定の情報が含まれていると判断した場合（Ｓ４０７：ＹＥＳ）、制御部１１は、通信データを送信せずに破棄する処理を実行する（ステップＳ４０８）。
【００６７】
次いで、制御部１１は、金融アプリ１２２が停止されたか否かを判断する（ステップＳ４０９）。停止されていないと判断した場合（Ｓ４０９：ＮＯ）、制御部１１は、処理をステップＳ４０４へ戻す。
【００６８】
一方、金融アプリ１２２が停止されたと判断した場合（Ｓ４０９：ＹＥＳ）、制御部１１は、ＶＰＮアプリ１２１を停止させ、クライアント装置１０とサーバ装置２０との間のＶＰＮ接続を解除する（ステップＳ４１０）。また、制御部１１は、通信制御アプリ１２３を停止させ（ステップＳ４１１）、本フローチャートによる処理を終了する。
【００６９】
以上のように、本実施の形態では、金融アプリ１２２以外のプログラムからの通信データであっても、ユーザＩＤ及びパスワードといった特定の情報が含まれない場合には、通信データを破棄せずに送信することができる。
【００７０】
（実施の形態５）
実施の形態５では、ユーザにより送信が許可されているプログラムからの通信データについては、通信データの破棄を行わずに送信を許可する構成について説明する。
【００７１】
図８は実施の形態５に係るクライアント装置１０が実行する処理の手順を説明するフローチャートである。クライアント装置１０の制御部１１は、実施の形態１と同様の手順にて、金融アプリ１２２、通信制御アプリ１２３、及びＶＰＮアプリ１２１を起動し、サーバ装置２０との間でＶＰＮ接続を確立させる（ステップＳ５０１〜５０３）。
【００７２】
次いで、制御部１１は、クライアント装置１０にインストールされているプログラムを通じて外部へ送信される通信データを取得したか否かを判断する（ステップＳ５０４）。取得していない場合（Ｓ５０４：ＮＯ）、制御部１１は後述するステップＳ５０９へ処理を移行させる。なお、ステップＳ５０４から後述するステップＳ５０８までの処理は、制御部１１によって実行される通信制御アプリ１２３の機能によって実現される処理である。
【００７３】
クライアント装置１０にインストールされているプログラムを通じて外部へ送信される通信データを取得したと判断した場合（Ｓ５０４：ＹＥＳ）、制御部１１は、取得した通信データの送信元のプログラムが特定のプログラム（金融アプリ１２２）であるか否かを判断する（ステップＳ５０５）。
【００７４】
取得した通信データの送信元が特定のプログラム（金融アプリ１２２）であると判断した場合（Ｓ５０５：ＹＥＳ）、制御部１１は、当該通信データを通信部１３を通じて宛先装置へ送信する（ステップＳ５０６）。本実施の形態では、クライアント装置１０とサーバ装置２０との間でＶＰＮが構築されているため、通信データはサーバ装置２０へ送信されることになる。
【００７５】
一方、取得した通信データの送信元が特定のプログラム（金融アプリ１２２）でないと判断した場合（Ｓ５０５：ＮＯ）、制御部１１は、送信元がユーザによって設定された対象外アプリであるか否かを判断する（ステップＳ５０７）。
【００７６】
送信元が対象外アプリであると判断した場合（Ｓ５０７：ＹＥＳ）、制御部１１は、通信データを宛先装置へ送信する（Ｓ５０６）。一方、送信元が対象外アプリでないと判断した場合（Ｓ５０７：ＮＯ）、制御部１１は、通信データを送信せずに破棄する処理を実行する（ステップＳ５０８）。
【００７７】
次いで、制御部１１は、金融アプリ１２２が停止されたか否かを判断する（ステップＳ５０９）。停止されていないと判断した場合（Ｓ５０９：ＮＯ）、制御部１１は、処理をステップＳ５０４へ戻す。
【００７８】
一方、金融アプリ１２２が停止されたと判断した場合（Ｓ５０９：ＹＥＳ）、制御部１１は、ＶＰＮアプリ１２１を停止させ、クライアント装置１０とサーバ装置２０との間のＶＰＮ接続を解除する（ステップＳ５１０）。また、制御部１１は、通信制御アプリ１２３を停止させ（ステップＳ５１１）、本フローチャートによる処理を終了する。
【００７９】
以上のように、本実施の形態では、金融アプリ１２２以外のプログラムからの通信データであっても、送信元のプログラム（アプリ）の安全性がユーザによって確認された場合には、通信データを破棄せずに送信することができる。
【００８０】
（実施の形態６）
実施の形態６では、特定のプログラム（例えば金融アプリ１２２）以外のプログラムを通じて通信データが送信される場合、その旨をユーザに報知する構成について説明する。
【００８１】
図９は実施の形態６に係るクライアント装置１０が実行する処理の手順を説明するフローチャートである。クライアント装置１０の制御部１１は、実施の形態１と同様の手順にて、金融アプリ１２２、通信制御アプリ１２３、及びＶＰＮアプリ１２１を起動し、サーバ装置２０との間でＶＰＮ接続を確立させる（ステップＳ６０１〜６０３）。
【００８２】
次いで、制御部１１は、クライアント装置１０にインストールされているプログラムを通じて外部へ送信される通信データを取得したか否かを判断する（ステップＳ６０４）。取得していない場合（Ｓ６０４：ＮＯ）、制御部１１は後述するステップＳ６０９へ処理を移行させる。なお、ステップＳ６０４から後述するステップＳ６０７までの処理は、制御部１１によって実行される通信制御アプリ１２３の機能によって実現される処理である。
【００８３】
クライアント装置１０にインストールされているプログラムを通じて外部へ送信される通信データを取得したと判断した場合（Ｓ６０４：ＹＥＳ）、制御部１１は、取得した通信データの送信元のプログラムが特定のプログラム（金融アプリ１２２）であるか否かを判断する（ステップＳ６０５）。
【００８４】
取得した通信データの送信元が特定のプログラム（金融アプリ１２２）であると判断した場合（Ｓ６０５：ＹＥＳ）、制御部１１は、当該通信データを通信部１３を通じて宛先装置へ送信する（ステップＳ６０６）。本実施の形態では、クライアント装置１０とサーバ装置２０との間でＶＰＮが構築されているため、通信データはサーバ装置２０へ送信されることになる。
【００８５】
一方、取得した通信データの送信元が特定のプログラム（金融アプリ１２２）でないと判断した場合（Ｓ６０５：ＮＯ）、制御部１１は、特定のプログラム以外のプログラムによる通信データの送信処理が発生した旨をユーザに報知する（ステップＳ６０７）。このとき、制御部１１は、特定のプログラム以外のプログラムによる通信データの送信処理が発生した旨の情報を表示部１４へ出力し、当該情報を表示部１４に表示させてもよい。また、クライアント装置１０が音声出力部を備える場合、音声又は警報音により、特定のプログラム以外のプログラムによる通信データの送信処理が発生した旨をユーザに知らせてもよい。なお、制御部１１は、特定のプログラム以外のプログラムからの通信データを送信する前に、その旨の情報をユーザに報知してもよく、通信データの送信が完了した後に、その旨の情報をユーザに報知してもよい。
【００８６】
次いで、制御部１１は、金融アプリ１２２が停止されたか否かを判断する（ステップＳ６０８）。停止されていないと判断した場合（Ｓ６０８：ＮＯ）、制御部１１は、処理をステップＳ６０４へ戻す。
【００８７】
一方、金融アプリ１２２が停止されたと判断した場合（Ｓ６０８：ＹＥＳ）、制御部１１は、ＶＰＮアプリ１２１を停止させ、クライアント装置１０とサーバ装置２０との間のＶＰＮ接続を解除する（ステップＳ６０９）。また、制御部１１は、通信制御アプリ１２３を停止させ（ステップＳ６１０）、本フローチャートによる処理を終了する。
【００８８】
以上のように、本実施の形態では、金融アプリ１２２が起動している間、金融アプリ１２２以外の任意のプログラムからの送信処理をユーザに報知する構成としているので、ユーザＩＤ及びパスワード等の各種の情報が盗み出された可能性があることをユーザに知らせることが可能であり、ユーザＩＤ及びパスワード等を変更する等の対応を実施することが可能となる。
【００８９】
（実施の形態７）
実施の形態７では、中継装置を介して目的のサーバ装置２０と通信を行う構成について説明する。
【００９０】
図１０は実施の形態７に係る通信制御システムの全体構成を説明するブロック図である。本実施の形態に係る通信制御システムは、通信網Ｎを介して互いに通信可能に接続されるクライアント装置１０、サーバ装置２０、及び中継装置３０を備える。クライアント装置１０は、ユーザによって利用されるパーソナルコンピュータ、スマートフォンなどの端末装置であり、サーバ装置２０にアクセスするためのソフトウェア（アプリケーションプログラム）がインストールされているものとする。サーバ装置２０は、クライアント装置１０からのアクセスを受付けた際にユーザ認証を行い、ユーザ認証に成功した場合、クライアント装置１０に対して適宜のサービスを提供する。中継装置３０は、クライアント装置１０とサーバ装置２０との間の通信を中継するサーバであり、クライアント装置１０から受信した通信データをサーバ装置２０へ送信すると共に、サーバ装置２０から受信した通信データをクライアント装置１０へ送信する。
【００９１】
以下では、サーバ装置２０を金融機関等によって設置される金融サーバとし、クライアント装置１０にインストールされている金融アプリ１２２を通じて送受信される通信データを中継装置３０が中継する構成について説明する。
【００９２】
図１１は中継装置３０の内部構成を説明するフローチャートである。中継装置３０は、制御部３１、記憶部３２、通信部３３、表示部３４及び操作部３５を備える。
【００９３】
制御部３１は、ＣＰＵ、ＲＯＭ、ＲＡＭなどにより構成されている。制御部３１が備えるＣＰＵは、ＲＯＭ又は記憶部３２に記憶されている各種コンピュータプログラムをＲＡＭ上に展開して実行することにより、装置全体を本願の中継装置として機能させる。
【００９４】
なお、制御部３１は、上記の構成に限定されるものではなく、１又は複数のＣＰＵ、マルチコアＣＰＵ、マイコン等を含む任意の処理回路であればよい。また、制御部３１は、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【００９５】
記憶部３２は、ＥＥＰＲＯＭ、ハードディスクなどの不揮発性の記憶装置により構成されており、各種のソフトウェア（コンピュータプログラム）及び各種のデータを記憶する。ここで、記憶部３２に記憶されているソフトウェアには、クライアント装置１０との間でＶＰＮを構築するためのＶＰＮアプリ３２１、中継装置３０における通信を制御する通信制御アプリ３２２などが含まれる。また、記憶部３２が記憶する情報には、通信相手を制限するために用いられる情報（後述するホワイトリスト）が含まれていてもよい。
【００９６】
なお、記憶部３２に記憶されるプログラムは、当該プログラムを読み取り可能に記録した非一時的な記録媒体Ｍ２により提供されてもよい。記録媒体Ｍ２は、例えば、ＣＤ−ＲＯＭ、ＵＳＢメモリ、ＳＤ（Secure Digital）カード、マイクロＳＤカード、コンパクトフラッシュ（登録商標）などの可搬型メモリである。この場合、制御部３１は、不図示の読取装置を用いて記録媒体Ｍ２から各種プログラムを読み取り、読み取った各種プログラムを記憶部３２にインストールする。また、記憶部３２に記憶されるプログラムは、通信部３３を介した通信により提供されてもよい。この場合、制御部３１は、通信部３３を通じて各種プログラムを取得し、取得した各種プログラムを記憶部３２にインストールする。
【００９７】
通信部３３は、通信網Ｎを通じてクライアント装置１０及びサーバ装置２０と通信を行うためのインタフェースを備える。通信部３３は、クライアント装置１０又はサーバ装置２０へ送信すべき情報が制御部３１から入力された場合、入力された情報をクライアント装置１０又はサーバ装置２０へ送信する共に、通信網Ｎを通じて受信したクライアント装置１０又はサーバ装置２０からの情報を制御部３１へ出力する。
【００９８】
表示部３４は、液晶ディスプレイ、有機ＥＬディスプレイなどの表示デバイスを備え、中継装置３０の管理者に対して報知すべき情報を表示する。また、操作部３５は、タッチパネル、各種ボタンを備え、中継装置３０の管理者による操作を受付け、受付けた操作情報を制御部３１へ出力する。
【００９９】
図１２は実施の形態７に係る中継装置３０が実行する処理の手順を説明するフローチャートである。中継装置３０の制御部３１は、クライアント装置１０との通信に先立ち、記憶部３２から通信制御アプリ３２２を読出し、読出した通信制御アプリ３２２を起動する（ステップＳ７０１）。
【０１００】
また、制御部３１は、記憶部３２に記憶されているＶＰＮアプリ３２１を起動し、同じくＶＰＮアプリ１２１が実行されるクライアント装置１０との間でＶＰＮ接続を確立させる（ステップＳ７０２）。
【０１０１】
次いで、制御部３１は、通信部３３を通じて、クライアント装置１０から送信される通信データを取得したか否かを判断する（ステップＳ７０３）。取得していない場合（Ｓ７０３：ＮＯ）、制御部３１は後述するステップＳ７０７へ処理を移行させる。なお、ステップＳ７０３から後述するステップＳ７０６までの処理は、制御部３１によって実行される通信制御アプリ３２２の機能によって実現される処理である。
【０１０２】
クライアント装置１０から送信される通信データを取得したと判断した場合（Ｓ７０３：ＹＥＳ）、制御部３１は、取得した通信データの送信元のプログラムがクライアント装置１０にインストールされた特定のプログラム（金融アプリ１２２）であるか否かを判断する（ステップＳ７０４）。本実施の形態では、金融アプリ１２２以外の任意のプログラムからの送信を制限するために、取得した通信データの送信元が金融アプリ１２２であるか否かを判断する。
【０１０３】
取得した通信データの送信元が特定のプログラム（金融アプリ１２２）であると判断した場合（Ｓ７０４：ＹＥＳ）、制御部３１は、当該通信データを通信部３３を通じて中継先のサーバ装置２０へ送信する（ステップＳ７０５）。なお、中継装置３０とサーバ装置２０との間にもＶＰＮを構築してもよいことは勿論のことである。
【０１０４】
一方、取得した通信データの送信元が特定のプログラム（金融アプリ１２２）でないと判断した場合（Ｓ７０４：ＮＯ）、制御部３１は、当該通信データを送信せずに破棄する処理を実行する（ステップＳ７０６）。これにより、金融アプリ１２２以外の任意のプログラムにより指定された宛先への通信データの送信が回避されるので、ユーザＩＤ及びパスワード等の各種の情報を盗み出すような悪意のあるプログラムがインストールされた場合であっても、当該プログラムからのデータの送信を止めることができる。
【０１０５】
次いで、制御部３１は、クライアント装置１０において金融アプリ１２２が停止されたか否かを判断する（ステップＳ７０７）。停止されていないと判断した場合（Ｓ７０７：ＮＯ）、制御部３１は、処理をステップＳ７０３へ戻す。
【０１０６】
一方、金融アプリ１２２が停止されたと判断した場合（Ｓ７０７：ＹＥＳ）、制御部３１は、ＶＰＮアプリ３２１を停止させ、中継装置３０とクライアント装置１０との間のＶＰＮ接続を解除する（ステップＳ７０８）。また、制御部３１は、通信制御アプリ３２２を停止させ（ステップＳ７０９）、本フローチャートによる処理を終了する。
【０１０７】
以上のように、本実施の形態では、クライアント装置１０において金融アプリ１２２が起動している間、金融アプリ１２２以外の任意のプログラムから送信される通信データを破棄する構成としているので、ユーザＩＤ及びパスワード等の各種の情報を盗み出すような悪意のあるプログラムがインストールされた場合であっても、当該プログラムからのデータの中継を停止することができる。
【０１０８】
今回開示された実施の形態は、全ての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、請求の範囲によって示され、請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【０１０９】
１０  クライアント装置
１１  制御部
１２  記憶部
１３  通信部
１４  表示部
１５  操作部
２０  サーバ装置
３０  中継装置
１２１  ＶＰＮアプリ
１２２  金融アプリ
１２３  通信制御アプリ
【図１】
2020044494.tif 000003
【図２】
2020044494.tif 000004
【図３】
2020044494.tif 000005
【図４】
2020044494.tif 000006
【図５】
2020044494.tif 000007
【図６】
2020044494.tif 000008
【図７】
2020044494.tif 000009
【図８】
2020044494.tif 000010
【図９】
2020044494.tif 000011
【図１０】
2020044494.tif 000012
【図１１】
2020044494.tif 000013
【図１２】
2020044494.tif 000014
【国際調査報告】
2020044494.tif 000015
2020044494.tif 000016
2020044494.tif 000017
2020044494.tif 000018