(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2022-09-22
(45)【発行日】2022-10-03
(54)【発明の名称】端末装置、方法およびプログラム
(51)【国際特許分類】
G06F 21/60 20130101AFI20220926BHJP
H04L 12/22 20060101ALI20220926BHJP
H04L 12/46 20060101ALI20220926BHJP
H04L 41/0895 20220101ALI20220926BHJP
H04L 67/025 20220101ALI20220926BHJP
H04L 67/2869 20220101ALI20220926BHJP
【FI】
G06F21/60 340
H04L12/22
H04L12/46 E
H04L12/46 V
H04L41/0895
H04L67/025
H04L67/2869
(21)【出願番号】P 2022015034
(22)【出願日】2022-02-02
【審査請求日】2022-02-02
(31)【優先権主張番号】P 2021061206
(32)【優先日】2021-03-31
(33)【優先権主張国・地域又は機関】JP
【早期審査対象出願】
(73)【特許権者】
【識別番号】503362463
【氏名又は名称】アドソル日進株式会社
(74)【代理人】
【識別番号】100095407
【氏名又は名称】木村 満
(74)【代理人】
【識別番号】100174067
【氏名又は名称】湯浅 夏樹
(74)【代理人】
【識別番号】100148149
【氏名又は名称】渡邉 幸男
(74)【代理人】
【識別番号】100132883
【氏名又は名称】森川 泰司
(72)【発明者】
【氏名】藪根 茂樹
(72)【発明者】
【氏名】福田 泰平
(72)【発明者】
【氏名】後藤 秀樹
(72)【発明者】
【氏名】西田 正樹
【審査官】青木 重徳
(56)【参考文献】
【文献】特開2015-070467(JP,A)
【文献】国際公開第2012/132697(WO,A1)
【文献】特開2009-253811(JP,A)
【文献】特開2012-230542(JP,A)
【文献】特開2006-020089(JP,A)
【文献】特開2014-030099(JP,A)
【文献】特表2018-525858(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/60
H04L 12/22
H04L 12/46
H04L 41/0895
H04L 67/025
H04L 67/2869
(57)【特許請求の範囲】
【請求項1】
セキュアな所属先のLANに外部からネットワーク接続するためのネットワーク接続部と、
自身の実動作環境を構成するアプリケーションまたはプロセスを実行するアプリケーション部と、
前記アプリケーション部と前記ネットワーク接続部との間に形成され、
前記アプリケーション部と前記ネットワーク接続部を接続するための第1仮想ネットワークコントローラおよび第2仮想ネットワークコントローラを含む通信処理部と、
を備え、
前記通信処理部は、前記ネットワーク接続部が前記所属先のLANの内部からのみ接続可能な第1サーバに前記所属先のLANの外部からの接続を行うための第2サーバを介してセキュアな接続ができた場合に、
前記第1仮想ネットワークコントローラと前記第2仮想ネットワークコントローラとを接続することにより、前記アプリケーション部を前記ネットワーク接続部および前記第2サーバを介して前記所属先のLANと通信可能とす
る、
端末装置。
【請求項2】
前記ネットワーク接続部は、接続した前記第1サーバに送信したリプライ要求の返答
が無い場合、または返答に含まれるサーバ情報
の解析結果に基づいて前記第1サーバが真正なサーバではないと判定した場合には、前記第2サーバにセキュアな接続を要求し、セキュアな接続が確立できた場合には前記第2サーバを介して、前記第1サーバに前記リプライ要求を送信する、
請求項1に記載の端末装置。
【請求項3】
前記ネットワーク接続部は、前記第2サーバを介して前記第1サーバに送信した前記リプライ要求の返答
があり、かつ返答に含まれるサーバ情報
の解析結果に基づいて前記第1サーバが真正なサーバと判定した場合には、前記通信処理部に
前記第1仮想ネットワークコントローラと前記第2仮想ネットワークコントローラとを接続をさせることにより、自身と前記アプリケーション部とを接続させ、前記アプリケーション部を、前記第2サーバを介して前記所属先のLANと接続させる、
請求項2に記載の端末装置。
【請求項4】
前記ネットワーク接続部は第1のオペレーティングシステム上で動作する機能であり、前記アプリケーション部は、前記第1のオペレーティングシステムと異なる第2のオペレーティングシステム上で動作する機能である、
請求項1から3の何れか一項に記載の端末装置。
【請求項5】
端末装置が実行する方法であって、
セキュアな所属先のLANに外部からネットワーク接続するためのネットワーク接続手段を、前記所属先のLANの外部からネットワーク接続させるステップと、
前記所属先のLANの内部からのみ接続可能な第1サーバに前記所属先のLANの外部からの接続を行うための第2サーバを介してセキュアな接続ができた場合に、
前記ネットワーク接続手段と、実動作環境を構成するアプリケーションまたはプロセスを実行するアプリケーション手段
と、を
接続するための、第1仮想ネットワークコントローラおよび第2仮想ネットワークコントローラを接続することにより、前記アプリケーション手段を前記ネットワーク接続手段および前記第2サーバを介して前記所属先のLANと通信可能にするステップと、
を備える方法。
【請求項6】
コンピュータを、
セキュアな所属先のLANに外部からネットワーク接続するネットワーク接続部、
自身の実動作環境を構成するアプリケーションまたはプロセスを実行するアプリケーション部、
前記アプリケーション部と前記ネットワーク接続部との間に形成され、
前記アプリケーション部と前記ネットワーク接続部を接続するための第1仮想ネットワークコントローラおよび第2仮想ネットワークコントローラを含み、前記ネットワーク接続部が前記所属先のLANの内部からのみ接続可能な第1サーバに前記所属先のLANの外部からの接続を行うための第2サーバを介してセキュアな接続ができた場合に、
前記第1仮想ネットワークコントローラと前記第2仮想ネットワークコントローラとを接続することにより、前記アプリケーション部を前記ネットワーク接続部および前記第2サーバを介して前記所属先のLANと通信可能とする通信処理部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、端末装置、方法およびプログラムに関する。
【背景技術】
【0002】
近年、あるLAN(Local Area Network)に所属する端末装置を外部に持ち出し、持ち出し先から所属するLANに接続することが行われている。端末装置を持ち出し先から所属するLANに接続する際、端末装置は、所属するLAN以外のネットワークを通じて所属するLANに接続することになる。この場合、端末装置は、所属するLAN以外のネットワークに接続された他の機器とも通信が可能になるが、他の機器からも端末装置に通信できるようになる。このため、端末装置が他の機器からサイバー攻撃を受けた場合、端末装置および所属するLAN内に保存された情報が漏洩する可能性がある。そこで、端末装置を、所属するLAN以外のネットワークに接続された他の機器と直接通信できないようにする技術が考えられている。例えば、特許文献1には、端末装置がVPN(Virtual Private Network)接続およびVPNサーバの探索・認証をするための通信以外をファイアウォールで遮断する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に開示されている技術では、端末装置がネットワークに接続されていることを確認した後、VPNサーバの探索および認証をするための通信以外をファイアウォールで遮断している。
【0005】
端末装置の起動時には、自動的にVPN接続するアプリケーションだけではなく、端末装置の実動作環境を構成するためのアプリケーションも複数並行して起動する。アプリケーションによってはスタートアップ処理の時に、端末装置が接続しているネットワークと通信を行うものもある。端末装置は、VPN接続を確立する前に、まずは、インターネット、公共のLAN等のVPN以外のネットワークに接続する。
【0006】
上述のとおり、特許文献1に開示されている技術では、端末装置がネットワークに接続されていることを確認した後、VPNサーバの探索・認証をするための通信以外をファイアウォールで遮断している。このため、端末装置が、VPN接続する前の、VPN以外のネットワークに接続している時に任意のアプリケーションにより通信が行われた場合、端末装置がセキュリティ上の脅威にさらされるという課題がある。
【0007】
本発明は、上述のような事情に鑑みてなされたものであり、端末装置が起動してからセキュアなネットワークに接続するまでの間、端末装置上で実行されるアプリケーション、プロセスの実行環境をセキュアなネットワーク以外のネットワークに接続させないようにすることができる端末装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記の目的を達成するため、本発明の第1の観点に係る端末装置は、
セキュアな所属先のLANに外部からネットワーク接続するためのネットワーク接続部と、
自身の実動作環境を構成するアプリケーションまたはプロセスを実行するアプリケーション部と、
前記アプリケーション部と前記ネットワーク接続部との間に形成され、前記アプリケーション部と前記ネットワーク接続部を接続するための第1仮想ネットワークコントローラおよび第2仮想ネットワークコントローラを含む通信処理部と、
を備え、
前記通信処理部は、前記ネットワーク接続部が前記所属先のLANの内部からのみ接続可能な第1サーバに前記所属先のLANの外部からの接続を行うための第2サーバを介してセキュアな接続ができた場合に、前記第1仮想ネットワークコントローラと前記第2仮想ネットワークコントローラとを接続することにより、前記アプリケーション部を前記ネットワーク接続部および前記第2サーバを介して前記所属先のLANと通信可能とする。
【0009】
前記ネットワーク接続部は、接続した前記第1サーバに送信したリプライ要求の返答が無い場合、または返答に含まれるサーバ情報の解析結果に基づいて前記第1サーバが真正なサーバではないと判定した場合には、前記第2サーバにセキュアな接続を要求し、セキュアな接続が確立できた場合には前記第2サーバを介して、前記第1サーバに前記リプライ要求を送信する。
【0010】
さらに、前記ネットワーク接続部は、前記第2サーバを介して前記第1サーバに送信した前記リプライ要求の返答があり、かつ返答に含まれるサーバ情報の解析結果に基づいて前記第1サーバが真正なサーバと判定した場合には、前記通信処理部に前記第1仮想ネットワークコントローラと前記第2仮想ネットワークコントローラとを接続をさせることにより、自身と前記アプリケーション部とを接続させ、前記アプリケーション部を、前記第2サーバを介して前記所属先のLANと接続させる。
【0011】
また、上記の目的を達成するため、本発明の第2の観点に係る方法は、
端末装置が実行する方法であって、
セキュアな所属先のLANに外部からネットワーク接続するためのネットワーク接続手段を、前記所属先のLANの外部からネットワーク接続させるステップと、
前記所属先のLANの内部からのみ接続可能な第1サーバに前記所属先のLANの外部からの接続を行うための第2サーバを介してセキュアな接続ができた場合に、前記ネットワーク接続手段と、実動作環境を構成するアプリケーションまたはプロセスを実行するアプリケーション手段と、を接続するための、第1仮想ネットワークコントローラおよび第2仮想ネットワークコントローラを接続することにより、前記アプリケーション手段を前記ネットワーク接続手段および前記第2サーバを介して前記所属先のLANと通信可能にするステップと、
を備える。
【0012】
また、上記の目的を達成するため、本発明の第3の観点に係るプログラムは、
コンピュータを、
セキュアな所属先のLANに外部からネットワーク接続するネットワーク接続部、
自身の実動作環境を構成するアプリケーションまたはプロセスを実行するアプリケーション部、
前記アプリケーション部と前記ネットワーク接続部との間に形成され、前記アプリケーション部と前記ネットワーク接続部を接続するための第1仮想ネットワークコントローラおよび第2仮想ネットワークコントローラを含み、前記ネットワーク接続部が前記所属先のLANの内部からのみ接続可能な第1サーバに前記所属先のLANの外部からの接続を行うための第2サーバを介してセキュアな接続ができた場合に、前記第1仮想ネットワークコントローラと前記第2仮想ネットワークコントローラとを接続することにより、前記アプリケーション部を前記ネットワーク接続部および前記第2サーバを介して前記所属先のLANと通信可能とする通信処理部、
として機能させる。
【発明の効果】
【0013】
本発明によれば、端末装置が起動してからセキュアなネットワークに接続するまでの間、端末装置上で実行されるアプリケーション、プロセスの実行環境をセキュアなネットワーク以外のネットワークに接続させないようにすることができる。
【図面の簡単な説明】
【0014】
【
図1】本発明の実施の形態に係るネットワークシステムの概要を示す概要図である。
【
図2】実施の形態に係る端末装置の構成を示すブロック図である。
【
図3】実施の形態に係る端末装置のハードウェア構成の一例を示すブロック図である。
【
図4A】実施の形態に係る端末装置とサーバとの接続の概要を示す概要図である。
【
図4B】
図4Aに示した端末装置とサーバとの接続方法についての説明を示す図である。
【
図5】実施の形態に係る端末装置による初期設定処理の一例を示すフローチャートである。
【
図6】実施の形態に係る端末装置の機密LANとの接続処理の一例を示すフローチャートである。
【
図7】実施の形態に係る端末装置のネットワーク接続処理を示すフローチャートである。
【
図8】実施の形態に係る端末装置の機密LANとの切断処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0015】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中同一又は相当部分には同一符号を付す。
【0016】
本発明の実施の形態に係る端末装置1は、ハイパーバイザーを用いて1つのコンピュータ上で複数の仮想マシンを並行して動作させることにより、起動してから機密LAN2に直接もしくはVPN経由で接続するまでの間、端末装置1上で実行されるアプリケーション、プロセス等を機密LAN2以外のネットワークに接続させないようにすることができる装置である。
【0017】
本発明の実施の形態に係る端末装置1と、端末装置1が接続するネットワークとを含むネットワークシステム100の概要を、
図1に示す。端末装置1は、企業内、自治体内等の、セキュアなネットワークである機密LAN2に所属する装置である。端末装置1は、例えば、ノートパソコン、タブレットPC(Personal Computer)等の、機密LAN2の設定された場所から外部に持ち出すことのできる携帯可能な機器で構成される。
【0018】
機密LAN2は、機密LAN2の内部からのみ接続が可能なDNS(Domain Name System)サーバ21と、機密LAN2の外部からインターネット3を介して端末装置1とネットワーク接続を行うためのVPNサーバ22とを備えている。なお、以下では、インターネット3は、機密LAN2の外部にある各種ネットワーク、すなわち機密LAN2以外のネットワークの総称として用いるものとする。端末装置1が、
図1に示す直線の経路のように、機密LAN2の内部からのみアクセス可能なDNSサーバ21に接続できた場合、後述する端末装置1に含まれるネットワーク接続部12は、機密LAN2内に端末装置1自身が存在するものと判定し、直接機密LAN2内で通信を行う。
【0019】
また、端末装置1がDNSサーバ21に接続できなかった場合、後述する端末装置1に含まれるネットワーク接続部12は、端末装置1自身を機密LAN2の外部に存在するものと判定する。この場合、端末装置1のネットワーク接続部12は、
図1に示す一点鎖点の経路のように、インターネット3からVPNサーバ22を介してDNSサーバ21と接続する。これにより、端末装置1のネットワーク接続部12は、機密LAN2と通信を行う。なお、DNSサーバ21とVPNサーバ22とは、特許請求の範囲における第1サーバ、第2サーバの一例である。また、機密LAN2は、特許請求の範囲における所属先のLANの一例である。
【0020】
図2に、端末装置1の構成を示す。端末装置1は、ネットワークに接続するためのインターフェース部11と、ネットワークとの接続を担保するためのネットワーク接続部12と、各種のアプリケーション、プロセスを実行するアプリケーション部13と、第1仮想NIC(Network Interface Controller)14Aと、第2仮想NIC14Bとを備える。なお、以下では、第1仮想NIC14Aと第2仮想NIC14Bとを総称して、仮想NIC14と称する。なお、仮想NIC14は、特許請求の範囲における通信処理部の一例である。
【0021】
インターフェース部11は、端末装置1の外部にあるインターネット3、機密LAN2等の各種ネットワークと接続するためのインターフェースである。ネットワーク接続部12は、インターフェース部11を介して接続しているネットワークが、機密LAN2の場合には直接接続し、インターネット3の場合にはVPNなどの手段を用いて機密LAN2との接続を確立する接続部である。本実施の形態では、ネットワーク接続部12は、機密LAN2の内部からのみ接続可能なDNSサーバ21、もしくは機密LAN2の外部からインターネット3と接続可能なVPNサーバ22とを介してDNSサーバ21と接続することにより、機密LAN2との接続を担保できるものとする。なお、ネットワーク接続部12は、特許請求の範囲におけるネットワーク接続手段の一例である。
【0022】
ネットワーク接続部12は、上述のとおり、端末装置1が機密LAN2の内部からのみアクセス可能なDNSサーバ21に接続できた場合、端末装置1自身が機密LAN2内に存在すると判定する。これにより、端末装置1は、直接機密LAN2内で通信を行うことができる。また、ネットワーク接続部12は、上述のとおり、端末装置1がDNSサーバ21に接続できなかった場合、端末装置1自身が機密LAN2の外部に存在あるものと判定する。これにより、端末装置1は、インターネット3からVPNサーバ22を介してDNSサーバ21に接続することにより、機密LAN2と通信することができる。
【0023】
アプリケーション部13は、端末装置1の実動作環境を構成する各種のアプリケーション、プロセスを実行する。アプリケーション部13の実行するアプリケーション、プロセスは、例えば、リモート会議用の会議システム、メーラー、ブラウザ等である。なお、アプリケーション部13は、特許請求の範囲におけるアプリケーション手段の一例である。
【0024】
第1仮想NIC14Aと第2仮想NIC14Bとは、ネットワーク接続部12とアプリケーション部13との間の通信を制御するためのコントローラである。第1仮想NIC14Aは、ネットワーク接続部12側に形成される仮想LANのコントローラである。また、第2仮想NIC14Bは、アプリケーション部13側に形成される仮想LANのコントローラである。
【0025】
第1仮想NIC14Aと第2仮想NIC14Bとは、初期状態では切断されている。第1仮想NIC14Aは、ネットワーク接続部12により機密LAN2との接続を担保できた場合のみ、第2仮想NIC14Bとの接続を確立する。これにより、アプリケーション部13とネットワーク接続部12との間が接続され、アプリケーション部13とネットワーク接続部12との間で通信ができるようになる。
【0026】
また、第1仮想NIC14Aは、機密LAN2との接続中に、ネットワーク接続部12により機密LAN2との接続を担保できなくなった場合には、第2仮想NIC14Bとの接続を切断する。これにより、アプリケーション部13をネットワーク接続部12から切断し、アプリケーション部13とネットワーク接続部12との間で通信ができないようにする。
【0027】
ネットワーク接続部12および第2仮想NIC14Aと、アプリケーション部13および第2仮想NIC14Bとは、それぞれ別のOS(Operating System)上で動作するプログラムを実行することにより実現することができる機能である。この機能を実現するためのハードウェア構成の一例を、
図3に示す。
【0028】
端末装置1は、
図3に示すように、ハードウェア構成として、プロセッサ16と、メモリ17と、インターフェース18とを備えている。プロセッサ16と、メモリ17と、インターフェース18とは、バスライン19を介して、相互に電気的に接続されている。
【0029】
プロセッサ16は、1つまたは複数のCPU(Central Processing Unit)、MPU(Micro-Processing Unit)等から構成される。プロセッサ16は、メモリ17から各種プログラム、データ等を読み出して処理を実行することにより、端末装置1の各種機能を実現する。
【0030】
メモリ17は、RAM(Random Access Memory)、ROM(Read Only Memory)等から構成される。メモリ17は、プロセッサ16が実行する各種プログラム、データ等を記憶している。
【0031】
インターフェース18は、
図1に示した機密LAN2のDNSサーバ21およびインターネット3と接続するためのLANポート、Wi-Fi(Wireless Fidelity)ポート等の通信インターフェースで構成される。なお、インターフェース18には、ディスプレイ端子等の出力インターフェース、USB(Universal Serial Bus)ポート等の入出力インターフェースを含めてもよい。
【0032】
また、端末装置1のプロセッサ16上では、ハイパーバイザー163が動作している。ハイパーバイザー163は、1台のコンピュータの上で複数の仮想マシンを独立に並行して動作させるようにするためのソフトウェアである。
【0033】
端末装置1は、1つまたは複数のプロセッサ16上で、ハイパーバイザー163により、第1仮想マシン161と第2仮想マシン162とがそれぞれ独立に並行して動作するように設定することができる。これにより、端末装置1は、複数のOSを互いに干渉させずに並行して動作させることができる。例えば、端末装置1は、第1仮想マシン161では第1のOS(例えば、Linux(登録商標))を動作させ、第2仮想マシン162では第2のOS(例えば、Windows(登録商標))を動作させることができる。なお、第1のOSと第2のOSは、異なるOSであってもよいし、同一のOSであってもよい。
【0034】
また、端末装置1では、ハイパーバイザー163により、メモリ17は複数の領域に分割され、それぞれの領域で異なるアクセス権を設定可能である。具体的には、メモリ17上に、第1仮想マシン161からしかアクセスできない第1メモリ領域171、第2仮想マシン162からしかアクセスできない第2メモリ領域172、第1仮想マシン161と第2仮想マシン162との両方からアクセスできる共有メモリ領域173、という複数の領域を設定することができる。
【0035】
これにより、第1仮想マシン161は、第1メモリ領域171を用いて第1のOSを実行することができる。また、第2仮想マシン162は、第2メモリ領域172を用いて第2のOSを実行することができる。なお、ハイパーバイザー163により、共有メモリ領域173について、例えば、第1仮想マシン161および第2仮想マシン162の両方から読み出しおよび書き込みが可能な設定とする、または、第2仮想マシン162からは読み出ししかできないように設定をするなど、自由に設定することが可能である。
【0036】
本実施の形態では、共有メモリ領域173は、第1仮想マシン161および第2仮想マシン162の両方から読み出しおよび書き込みが可能な設定とする。そして、共有メモリ領域173は、仮想NIC14を介して第1仮想マシン161と第2仮想マシン162との間で、通信データのやりとり等に使用する。
【0037】
本実施の形態では、
図2に示したネットワーク接続部12および第1仮想NIC14Aは、第1仮想マシン161で動作する第1のOS上で実行されるプログラムにより実現する機能とする。また、アプリケーション部13および第2仮想NIC14Bとは、第2仮想マシン162で動作する第2のOS上で実行されるプログラムにより実現する機能とする。
【0038】
また、端末装置1では、ハイパーバイザー163により、インターフェース18を第1仮想マシン161からしかアクセスできない設定、第2仮想マシン162からしかアクセスできない設定等、インターフェース18に対するアクセス権を自由に設定することができる。
【0039】
本実施の形態では、第2仮想マシン162により実現されるアプリケーション部13は、
図2に示した第1仮想マシン161により実現されるネットワーク接続部12を介して、
図1に示した機密LAN2に接続することができる。アプリケーション部13が機密LAN2以外のネットワークとの接続を防ぐため、端末装置1は、ハイパーバイザー163により、インターフェース18を第1仮想マシン161からしかアクセスできないように設定する。
【0040】
したがって、
図4Aに示すように、第2仮想マシン162により実現されるアプリケーション部13は、第1仮想マシン161により実現されるネットワーク接続部12を介してインターフェース18に接続する。これにより、アプリケーション部13は、端末装置1が機密LAN2と接続している場合は、ネットワーク接続部12およびインターフェース18を介して機密LAN2と通信することができる。また、端末装置1が機密LAN2以外のネットワーク、すなわちインターネット3と接続している場合は、アプリケーション部13は、ネットワーク接続部12、インターフェース18、インターネット3、およびVPNサーバ22を介することにより、機密LAN2と通信することができる。
【0041】
端末装置1のネットワーク接続部12は、
図4Bに示すように、VPNサーバ22と接続するためのVPNクライアント121を備えている。ネットワーク接続部12は、機密LAN2以外のネットワークであるインターネット3と接続していると判断する場合、機密LAN2以外のネットワークには直接接続せず、必ずVPNクライアント121を経由しVPNサーバ22と接続する。
【0042】
したがって、DNSサーバ21に接続できない場合、すなわち、機密LAN2の外部からの接続の場合、ネットワーク接続部12は、まずVPNクライアント121によりVPNサーバ22と接続する。その後、ネットワーク接続部12は、VPNサーバ22経由でDNSサーバ21に接続可能なことを確認した上でアプリケーション部13と接続する。これにより、アプリケーション部13は、端末装置1が機密LAN2と直接接続していない場合には、ネットワーク接続部12のVPNクライアント121を経由してVPNサーバ22と接続するため、機密LAN2とのみ接続することができる。
【0043】
また、ネットワーク接続部12は、端末装置1が機密LAN2と直接接続していない場合には、VPNサーバ22とVPNクライアント121との通信以外を遮断する、いわゆるファイアウォールとして機能する。これにより、アプリケーション部13がセキュアなネットワークである機密LAN2に接続し、かつ、セキュアでないネットワークに接続しないことを担保することができる。
【0044】
以上、端末装置1のハードウェア構成について説明した。続いて、端末装置1の初期設定処理について
図5に示すフローチャートを参照して説明する。この初期設定処理は、端末装置1が起動すると、ハイパーバイザー163の処理として実行が開始される。
【0045】
まず、
図3に示したプロセッサ16は、ハイパーバイザー163による処理として、第1仮想マシン161と第2仮想マシン162とを生成する(ステップS10)。その際、ハイパーバイザー163により、
図3に示したメモリ17上に、第1仮想マシン161用のメモリ領域である第1メモリ領域171と、第2仮想マシン162用のメモリ領域である第2メモリ領域172と、を設定する処理も行われる。なお、第1メモリ領域171は第2仮想マシン162からアクセスできないメモリ領域であり、また、第2メモリ領域172は第1仮想マシン161からアクセスできないメモリ領域である。
【0046】
次に、プロセッサ16は、ハイパーバイザー163による処理として、共有メモリ領域173の設定を行う(ステップS11)。具体的には、ハイパーバイザー163が、メモリ17内に共有メモリ領域173用の領域を割り当てる。続いて、ハイパーバイザー163が、第1仮想マシン161と第2仮想マシン162からはその領域に対し読み出しおよび書き込みを可能とするように、その共有メモリ領域173へのアクセス権を設定する。
【0047】
次に、プロセッサ16は、ハイパーバイザー163による処理として、インターフェース18の設定を行う(ステップS12)。具体的には、ハイパーバイザー163は、インターフェース18を第1仮想マシン161からのみアクセスできるように設定する。さらに、ハイパーバイザー163は、インターフェース18を第2仮想マシン162から直接アクセスできないように設定する。その後、プロセッサ16は、初期設定処理を終了する。
【0048】
次に、端末装置1は、
図1に示した機密LAN2に接続する。機密LAN2に接続する接続処理は、上述した初期設定処理が終了すると、第1仮想マシン161と第2仮想マシン162とで並行に行われる処理として、実行が開始される。第1仮想マシン161の実行する処理を第1接続処理とし、第2仮想マシン162の実行する処理を第2接続処理とする。また、第1接続処理の中で実行されるネットワークとの接続処理をネットワーク接続処理とする。この第1接続処理、第2接続処理、およびネットワーク接続処理について、
図6、
図7に示すフローチャートを参照しつつ、以下に説明する。
【0049】
第1仮想マシン161は、
図2に示したネットワーク接続部12を起動する(ステップS101)。具体的には、第1仮想マシン161は、
図3に示した第1メモリ領域171に保存されているプログラムを起動し、ネットワーク接続部12の機能を実行する。
【0050】
並行して、第2仮想マシン162は、
図2に示したアプリケーション部13を起動する(ステップS102)。具体的には、第2仮想マシン162が、
図3に示した第2メモリ領域172に保存されているプログラムを起動し、アプリケーション部13の機能を実行する。
【0051】
ネットワーク接続部12は、ネットワーク接続処理を実行する(ステップS103)。ネットワーク接続処理については、
図7に示すフローチャートを参照しつつ、以下に説明する。ネットワーク接続部12は、
図2に示したインターフェース部11を介してネットワークに接続する(ステップS110)。このネットワークは、
図1に示した機密LAN2、機密LAN2とは異なる公共LAN、インターネット3等を含む通信路である。このため、この時点では、ネットワーク接続部12の接続したネットワークが、機密LAN2か否か分からない。
【0052】
ネットワーク接続部12は、接続したネットワークを経由してDNSサーバ21に対してリプライ要求を送信する(ステップS111)。このリプライ要求は、DNS情報を含む各種情報、PING応答等の要求とする。ネットワーク接続部12は、リプライ要求に対する返答の有無、返答に含まれているDNS情報などの各種情報の内容を解析した結果をもとに、DNSサーバ21が真正なサーバか否か判定する(ステップS112)。
【0053】
DNSサーバ21が真正なサーバであった場合(ステップS112;YES)、ネットワーク接続部12は、ネットワーク接続処理を終了する。また、DNSサーバ21が真正なサーバではなかった場合(ステップS112;NO)、ネットワーク接続部12は、機密LAN2の外部のインターネット3等に接続しているものとして、VPNサーバ22との接続を実行する(ステップS113)。
【0054】
ネットワーク接続部12は、VPNサーバ22との接続が確立できたか否か判定する(ステップS114)。VPNにおける相互認証の機能により、VPNサーバ22とのVPN接続が成功した時点で、接続先は正しいVPNサーバ22となる。
【0055】
VPNサーバ22との接続が確立できなかった場合(ステップS114;NO)、ネットワーク接続部12はステップS111に戻り、再度ステップS111以降の処理をくり返す。また、VPNサーバ22との接続が確立できた場合(ステップS114;YES)、ネットワーク接続部12は、VPN以外の通信を遮断する(ステップS115)。具体的には、ネットワーク接続部12は、VPNサーバ22と
図4Bに示したVPNクライアント121との通信以外を遮断する。これにより、端末装置1は、セキュアなネットワークに接続し、かつ、セキュアでないネットワークに接続しないことを担保することができる。
【0056】
ネットワーク接続部12は、VPNサーバ22を経由してDNSサーバ21にリプライ要求を送信する(ステップS116)。ネットワーク接続部12は、リプライ要求に対する返答の有無、返答に含まれるDNS情報などの各種情報の内容を解析した結果をもとに、DNSサーバ21が真正なサーバか否か判定する(ステップS117)。
【0057】
DNSサーバ21が真正なサーバではなかった場合(ステップS117;NO)、ネットワーク接続部12は、VPNサーバ22との接続を切断する(ステップS118)。その後、ネットワーク接続部12は、ステップS111に戻り、再度ステップS111以降の処理をくり返す。また、DNSサーバ21が真正なサーバであった場合(ステップS117;YES)、ネットワーク接続部12は、ネットワーク接続処理を終了する。
【0058】
なお、ステップS111、ステップS116で、ネットワーク接続部12がDNSサーバ21に対して送信したリプライ要求に対するDNSサーバ21からの応答に含まれるDNS情報などの各種情報は、特許請求の範囲におけるサーバ情報の一例である。
【0059】
ここで
図6に戻る。ネットワーク接続部12は、
図2に示した第1仮想NIC14Aから第2仮想NIC14Bに接続を要求する(ステップS104)。第2仮想NIC14Bは、第1仮想NIC14Aから接続の要求を受信すると、第1仮想NIC14Aとの接続を開始する(ステップS105)。具体的には、仮想NIC14Aと仮想NIC14B間を論理的に接続し、第2仮想マシン162は第1仮想マシン161からの接続要求に対し応答する。
【0060】
ネットワーク接続部12は、第1仮想NIC14Aと第2仮想NIC14Bとが論理的に接続されると、ネットワーク接続部12とアプリケーション部13との間に仮想LANを確立する(ステップS106)。本実施の形態では、
図3に示した共有メモリ領域173に保存された仮想LANの識別番号、設定情報等の各種データを、第1仮想マシン161(ネットワーク接続部12)と第2仮想マシン162(アプリケーション部13)とが並行して処理することにより、仮想LANを確立する。これにより、アプリケーション部13は、ネットワーク接続部12を介して
図1に示した機密LAN2との通信を行うことが可能となる(ステップS107)。
【0061】
また、端末装置1のネットワーク接続部12は、DNSサーバ21との接続、ネットワークに接続するための有線LANケーブルの挿抜、無線LANの接続状態等を定期的にチェックしている。例えば、ネットワーク接続部12は、定期的に接続中のDNSサーバ21に対してリプライ要求を送信する。そして、ネットワーク接続部12は、リプライ要求に対する返答の有無、返答に含まれているDNS情報などの各種情報の内容を解析した結果をもとに、DNSサーバ21の真正性を判定する。
【0062】
ネットワーク接続部12は、DNSサーバ21の真正性を担保できた場合、機密LAN2に接続しているものと判断し、アプリケーション部13との接続を維持する。また、ネットワーク接続部12は、DNSサーバ21の真正性を担保できなかった場合、DNSサーバ21に接続できていないものと判断し、アプリケーション部13との接続を終了する。
【0063】
また、端末装置1のネットワーク接続部12は、有線LANケーブルが抜かれるもしくは、無線LANとの接続が切断されたことを検知した場合、アプリケーション部13との接続を終了する。さらに、端末装置1のシャットダウン要求があった場合、ネットワーク接続部12はアプリケーション部13との接続を終了する。
【0064】
ネットワーク接続部12とアプリケーション部13との接続を終了する処理は、第1仮想マシン161と第2仮想マシン162とで並行に行われる処理として、実行される。以下では、第1仮想マシン161の実行する処理を第1切断処理とし、第2仮想マシン162の実行する処理を第2切断処理とする。また、以下では、第1仮想マシン161は
図2に示したネットワーク接続部12として動作し、第2仮想マシン162は
図2に示したアプリケーション部13として動作しているものとする。第1切断処理および第2切断処理について、
図8に示すフローチャートを参照しつつ、以下に説明する。
【0065】
ネットワーク接続部12は、
図1に示したDNSサーバ21との通信の切断、有線LANケーブルの挿抜、無線LANとの接続の切断を定期的にチェックし、また、端末装置1のシャットダウン要求を常時監視し、これを検知したか否か判定する(ステップS201)。DNSサーバ21との通信の切断、端末装置1のシャットダウン要求等があったことを検知した場合(ステップS201;YES)、ネットワーク接続部12は、上述のステップS106で確立した仮想LANの切断を、アプリケーション部13に通知する(ステップS202)。また、DNSサーバ21との通信の切断、端末装置1のシャットダウン要求等を検知していない場合(ステップS201;NO)、ネットワーク接続部12は、ステップS201に留まり、DNSサーバ21との通信の切断、シャットダウン要求等の監視を続ける。
【0066】
ネットワーク接続部12は、アプリケーション部13に仮想LANの切断を要求(ステップS202)した後、第1仮想NIC14Aと第2仮想NIC14Bとの間の論理接続を切断する(ステップS203)。これにより、第1仮想NIC14Aと第2仮想NIC14Bとは、通信することができなくなる。また、ネットワーク接続部12が機密LAN2に再度接続できた場合、第1仮想NIC14Aと第2仮想NIC14Bを再度接続する。
【0067】
以上で説明したとおり、端末装置1は、自身が起動してから機密LAN2に接続するまでの間、端末装置1上のアプリケーション部13で実行されるアプリケーション、プロセスの実行環境を、機密LAN2以外のネットワークに接続させないようにすることができる。言い換えれば、機密LAN2に接続する前に、アプリケーションから機密LAN2以外のネットワーク経由で通信することを防ぐことができるため、端末装置1を情報セキュリティ上の脅威から守ることができる。
【0068】
(変形例)
本発明は、上述した実施の形態に限定されるわけではなく、その他の種々の変更が可能である。例えば、上記の実施の形態では、端末装置1が直接、あるいはVPNサーバ22を介してDNSサーバ21への接続が確認できた場合、端末装置1のアプリケーション部13は、仮想NIC14によって接続されたネットワーク接続部12を介して機密LAN2と通信するものとした。これに限らず、ネットワーク接続部12で機密LAN2との接続を確認できた後は、端末装置1のアプリケーション部13は、ネットワーク接続部12を介さずにインターフェース部11に接続し、機密LAN2と通信できるようにしてもよい。
【0069】
具体的には、ネットワーク接続部12が機密LAN2との接続を確認できるまで、端末装置1は、ハイパーバイザー163によりインターフェース18を第1仮想マシン161からしかアクセスできないように設定する。そして、端末装置1が機密LAN2との接続を確認した後、第1仮想マシン161からハイパーバイザー163に対し、アプリケーション部13の機能を実現する第2仮想マシン162にインターフェース18へのアクセス権を与えるよう要求する。これにより、アプリケーション部13と、ネットワーク接続部12とは、インターフェース部11に接続することができる。
【0070】
なお、端末装置1のアプリケーション部13が、ネットワーク接続部12を介さずにインターフェース部11に接続し機密LAN2と通信する場合、インターフェース部11には、
図4Bに示したネットワーク接続部12のVPNクライアント121および、VPN接続以外の通信をブロックするためのファイアウォールを備えるものとする。これにより、端末装置1が、外部のインターネット3から機密LAN2に接続する場合でも、VPNサーバ22を経由して機密LAN2との接続を維持することができる。
【0071】
さらに、ネットワーク接続部12が機密LAN2との接続を確立できなくなった場合、端末装置1は、第1仮想マシン161からハイパーバイザー163に対し、アプリケーション部13の機能を実現する第2仮想マシン162に与えたインターフェース18へのアクセス権を削除するよう要求する。これにより、アプリケーション部13を、インターフェース部11から切断することができる。
【0072】
また、上記の実施の形態では、端末装置1が機密LAN2と通信するものとした。さらに、端末装置1が機密LAN2を介して外部のネットワークと通信をできるようにしてもよい。
【0073】
また、例えば、上記の実施の形態では、端末装置1を、ノートパソコン、タブレットPC等の携帯可能な機器とするものとしたが、これに限らず、端末装置1をスマートフォン、タブレット等の携帯端末機器としてもよい。
【0074】
また、例えば、上記の実施の形態では、端末装置1が機密LAN2内部に存在することを確認するためのサーバとしてDNSサーバ21を用いるものとした。これに限らず、端末装置1が機密LAN2内部に存在することを確認するためのサーバは、ファイルサーバ、メールサーバ、専用に構築したサーバ等、機密LAN2内に存在する各種サーバを利用することができる。また、これらのサーバを、複数組合せて使用してもよい。同様に、VPNサーバ22についても複数台あってもよい。さらに、一方のサーバが1台で、他方のサーバが複数台であってもよい。
【0075】
また、例えば、上記の実施の形態では、機密LAN2に、その外部から端末装置1を接続する際に経由するネットワークとして、インターネット3を示した。これに限らず、例えば、インターネットに接続しない閉域モバイルネットワーク等であってもよい。
【0076】
また、例えば、端末装置1は、
図3に示したように、メモリ17上に共有メモリ領域173を設定したが、必ずしもメモリ17上に共有メモリ領域173を設定しなくてもよい。ハイパーバイザー163によって、第1仮想マシン161および第2仮想マシン162間でデータの送受が可能なハードウェア資源であれば、メモリ17以外のハードウェア資源を共有メモリ領域173の代わりに用いてもよい。このようなハードウェア資源としては、例えば、UART(Universal Asynchronous Receiver/Transmitter)、USBメモリ、FIFO(First In First Out)メモリキュー等が考えられる。
【0077】
また、上記の実施の形態において、端末装置1の動作を規定する各種処理(初期設定処理、第1接続処理、第2接続処理、第1切断処理、第2切断処理等)を実行させるための制御プログラムは、メモリ17に記憶されているものとして説明した。しかしながら、本発明は、これに限定されず、上記の各種処理を実行させるための制御プログラムを、通常市販されているPC等のコンピュータに実装することにより、当該コンピュータを上記の実施の形態に係る端末装置1に相当する装置として機能させてもよい。
【0078】
このようなプログラムの提供方法は任意であり、例えば、コンピュータが読取可能な記録媒体(フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disc)、BD(Blu―ray(登録商標) Disc)、MO(Magneto-Optical Disc)、メモリカード、USBメモリ等)等に格納して配布してもよいし、インターネットをはじめとするネットワーク上のストレージにプログラムを格納しておき、これをダウンロードさせることにより提供してもよい。
【0079】
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。
【符号の説明】
【0080】
1…端末装置、2…機密LAN、3…インターネット、11…インターフェース部、12…ネットワーク接続部、13…アプリケーション部、14…仮想NIC、14A…第1仮想NIC、14B…第2仮想NIC、16…プロセッサ、17…メモリ、18…インターフェース、19…バスライン、21…DNSサーバ、22…VPNサーバ、100…ネットワークシステム、121…VPNクライアント、161…第1仮想マシン、162…第2仮想マシン、163…ハイパーバイザー、171…第1メモリ領域、172…第2メモリ領域、173…共有メモリ領域。
【要約】
【課題】端末装置が起動してからセキュアなネットワークに接続するまでの間、端末装置上で実行されるアプリケーション、プロセスの実行環境をセキュアなネットワーク以外のネットワークに接続させないようにする。
【解決手段】端末装置1は、セキュアな所属先のLANに外部からネットワーク接続するためのネットワーク接続部と、自身の実動作環境を構成するアプリケーションまたはプロセスを実行するアプリケーション部と、アプリケーション部とネットワーク接続部との間に形成され、ネットワーク接続部が所属先のLANの内部から接続可能な第1サーバに所属先のLANの外部からの接続を行うための第2サーバを介してセキュアな接続ができた場合に、アプリケーション部とネットワーク接続部とを接続し、アプリケーション部をネットワーク接続部、第2サーバを介して所属先のLANと通信可能とする通信処理部とを備える。
【選択図】
図1