JP2013012018A - 安全に管理された仮想マシンの実行環境を構築する方法、プログラムおよびコンピュータ装置 - Google Patents

安全に管理された仮想マシンの実行環境を構築する方法、プログラムおよびコンピュータ装置 Download PDF

Info

Publication number
JP2013012018A
JP2013012018A JP2011143993A JP2011143993A JP2013012018A JP 2013012018 A JP2013012018 A JP 2013012018A JP 2011143993 A JP2011143993 A JP 2011143993A JP 2011143993 A JP2011143993 A JP 2011143993A JP 2013012018 A JP2013012018 A JP 2013012018A
Authority
JP
Japan
Prior art keywords
key
mode
drawing command
application
virtual machine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011143993A
Other languages
English (en)
Other versions
JP2013012018A5 (ja
JP5719244B2 (ja
Inventor
Sanehiro Furuichi
実裕 古市
Taku Aratsu
拓 荒津
Masami Tada
政美 多田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2011143993A priority Critical patent/JP5719244B2/ja
Priority to GB1209077.5A priority patent/GB2492448B/en
Priority to US13/488,369 priority patent/US8595511B2/en
Priority to DE102012210887.4A priority patent/DE102012210887B4/de
Publication of JP2013012018A publication Critical patent/JP2013012018A/ja
Publication of JP2013012018A5 publication Critical patent/JP2013012018A5/ja
Application granted granted Critical
Publication of JP5719244B2 publication Critical patent/JP5719244B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】本発明は、安全に管理された仮想マシンの実行環境を構築する方法およびそのために用いられるプログラムを提供することを目的とする。
【解決手段】仮想マシンのウィンドウ画面を選択的にマスクする手段とセキュリティ機能が一体化したプログラムをユーザ端末のホストOS上に管理者権限でインストールした上で、管理者が仮想マシンに導入させたいと考えるセキュリティ機能と上記マスクを解除するため手段が一体化したプログラムをユーザに提供する。管理者によってこのようなシチュエーションが創出されると、仮想化環境を利用したいユーザは、管理者の所望するセキュリティ機能を仮想マシン上にインストールすることを受け入れざるを得なくなる。
【選択図】図1

Description

本発明は、パーソナル・コンピュータのセキュリティ技術に関し、より詳細には、仮想化環境のセキュリティ状態を向上させるための手法に関する。
近年、パーソナル・コンピュータ(PC)における仮想化環境の利用が注目を集めている。これに伴って、PC用の仮想化アプリケーションや、仮想化環境を標準搭載するOSが提供されるようになってきており、エンドユーザがPC上で仮想化環境を利用する機会は、今後、ますます拡大することが予想される。ここで、PCにおける仮想化について、以下概説する。
図10は、いわゆるホストOS型の仮想化環境が構築されたPC200(実マシン)を示す。PC200(実マシン)は、ハードウェア202と、その上にインストールされたホストOS204を備え、ホストOS204の上に各種アプリケーションがインストールされている。仮想マシン400は、ホストOS204上で動作する1つのアプリケーションとして参照することができる。仮想マシン400は、共通プラットフォーム401と、仮想ハードウェア領域402を備える。仮想ハードウェア領域402は、実マシンのハードウェア(CPU,ハードディスク、BIOS、NIC、キーボード、マウス等)をエミュレートする機能部であり、ユーザは、この仮想ハードウェア領域402の上にホストOS204とは別のOS(ゲストOS404)をインストールすることができる。
図11は、実マシン200のホストOS画面1000の上位レイヤーに仮想マシン400のウィンドウ画面2000が表示された状態を示す。仮想マシン400のウィンドウ画面2000には、仮想マシン400上にインストールされたゲストOS404のOS画面が表示されている。ユーザは、1つのディスプレイに表示される2つのOS画面を切り替えながら、異なる2つのOS環境を同時に利用することができる。
一般に、古いバージョンのOSでしか動作しないアプリケーションを最新のホストOS上で動作させるといったことが仮想マシンの用途として想定されている。たとえば、実マシンのホストOS204がアプリDおよびアプリEの動作をサポートしていない場合、ユーザは、仮想マシン400のゲストOS404(旧バージョンOS)上にアプリDおよびアプリEをインストールすることによって、これらを使用することができる。ゲストOS404は、アプリDまたはアプリEから発行される命令に応答して仮想ハードウェア領域402を本物のハードウェアとして制御しようとする。仮想マシン400は、ゲストOS404から発行されるハードウェア制御命令を実マシンが対応可能な形式に解釈し直して、ホストOS204にこれを伝える。その結果、実マシン上のホストOS204に対応していないアプリDおよびアプリEが実マシンのハードウェア202を制御することが可能になる。上述したように、PCにおける仮想化技術は、ユーザの利便性を向上させるものであることは確かである。しかし、それは、一方で、管理者にとって悩ましい問題を生じさせる。以下、この点について説明する。
多くの企業は、セキュリティポリシーを遵守させるべく、社員が使用するPCに対してセキュリティ・アプリケーションを常駐させること義務付けている。この点につき、特開2007−287078号公報(特許文献1)は、アプリケーションから出力されるデータにつき個人情報管理の必要性をリアルタイムに判定し、その判定結果に基づいて、アプリケーションの処理を続行または中断、修整するプログラムを開示する。このようなセキュリティ・アプリケーションは、OS上で動作するアプリケーションのファイル・アクセスやネットワーク・アクセスを、セキュリティポリシーに則って制御するものであるが、仮想化環境にこれを適用する場合、以下のような問題が生じる。
図12は、仮想マシン環境を備える実マシンのホストOS上に従来型のセキュリティ・アプリケーションであるセキュリティ・エージェント500が導入された状態を示す。セキュリティ・エージェント500は、セキュリティポリシーに基づいて所定のプロセスやオブジェクトに関連するアクセスを監視するアクセス制御部502や監査ログを記録するログ監査部504などを含んで構成されている。アクセス制御部502は、セキュリティポリシーに則って定義されたアクセス制御リストに基づいてアプリケーションのファイル・アクセスやネットワーク・アクセスを制御する機能部であり、セキュリティポリシーにおいて「アプリA」の使用禁止が定義されているような場合、アクセス制御部502が備えるAPIフック手段は、ホストOS204上で動作する「アプリA」からのファイル・アクセス等をフックし、これらに対してエラーを返す。
一方、セキュリティポリシーによって仮想マシン400の利用が許可されている場合、アクセス制御部502のアクセス制御リストは、仮想マシン400からのファイル・アクセス等を許可するように定義される。ここで問題となるのは、「アプリA」が仮想マシン400のゲストOS404上にインストールされた場合である。この場合、本来禁止されるべき「アプリA」からのファイル・アクセスは、アクセス制御部502をスルーしてしまう。なぜなら、アクセス制御部502は、ゲストOS404上で動作する「アプリA」からのファイル・アクセスと、「アプリD」や「アプリE」からのファイル・アクセスを区別することができず、いずれも仮想マシン400(というアプリケーション)からのファイル・アクセスとして認識するため、アクセス制御リストに基づいてこれを許可してしまうからである。
もちろん、この問題は、図13に示すように、ホストOS204上にインストールしたセキュリティ・エージェント500と同じセキュリティ・エージェント500をゲストOS404上にも重ねてインストールすることによって、一応は解決する。しかし、残念ながら、ことはそう簡単ではない。なぜなら、管理者が強制的にゲストOS404側にセキュリティ・エージェント500をインストールしたとしても、ユーザは、自身の権限でこれを簡単にアンインストールすることができ、仮想マシン環境に権限を持たない管理者は、セキュリティ・エージェント500が仮想マシンからアンインストールされた事実を知ることができないからである。したがって、管理者にできることと言えば、ユーザに対してセキュリティ・エージェントを導入するようにお願いすることしかなく、後はユーザの良心に任せるよりほか術がないのが現状である。つまり、現状では、仮想マシン環境は、管理者の目が届かないブラックボックスとなっており、これを放置することは、セキュリティ・リスクの増大に直結する。
特開2007−287078号公報
本発明は、上記従来技術における課題に鑑みてなされたものであり、本発明は、安全に管理された仮想マシンの実行環境を構築する方法およびそのために用いられるプログラムを提供することを目的とする。
本発明者らは、安全に管理された仮想マシンの実行環境を構築する方法につき鋭意検討した結果、仮想マシンのウィンドウ画面を選択的にマスクする手段とセキュリティ機能が一体化したプログラムをユーザ端末のホストOS上に管理者権限でインストールした上で、管理者が仮想マシンに導入させたいと考えるセキュリティ機能と上記マスクを解除するため手段が一体化したプログラムをユーザに提供する構成に想到し、本発明に至ったのである。
すなわち、本発明によれば、コンピュータに対し、アプリケーションのアクセスを制御するためのアクセス制御手段と、画面描画命令をフックするための描画命令フック手段であって、仮想マシン・アプリケーションが発行する画面描画命令を選択的にフックする第1のモードと、アプリケーションが発行する画面描画命令をフックする第2のモードとを有する描画命令フック手段と、フックした前記画面描画命令について共通鍵暗号方式による暗号処理を実行する暗号処理手段と、前記描画命令フック手段の動作モードを切り替えるためのモード切替手段とを実現するためのコンピュータ実行可能なプログラムが提供される。本発明においては、前記モード切替手段は、前記プログラムがインストールされたOSがホストOSまたはゲストOSのいずれであるかを判定する手段を備え、前記OSがホストOSである実マシンモードのときに、前記描画命令フック手段を前記第1のモードにセットし、前記OSがゲストOSである仮想マシンモードのときに、前記描画命令フック手段を前記第2のモードにセットするものとすることができ、前記コンピュータに対し、さらに、前記暗号処理に使用する秘密鍵を管理するための秘密鍵管理手段を実現するように構成することもできる。本発明においては、前記秘密鍵管理手段は、前記秘密鍵としてランダムキーを生成するためのキー生成手段と、他のプロセスとの間で前記ランダムキーの送受信を実行するキー送受信手段とを含むことができ、前記実マシンモードのときに、前記ランダムキーを前記他のプロセスに送信し、前記仮想マシンモードのときに、前記ランダムキーを前記他のプロセスから受信するように構成することができる。また、本発明においては、前記キー送受信手段は、名前付きパイプまたは共有フォルダ機構を介して前記ランダムキーの送受信を実行するように構成することができる。
また、本発明によれば、ユーザ端末について安全に管理された仮想マシンの実行環境の構築を促進するための方法であって、ユーザ端末のホストOS上に第1のセキュリティ・アプリケーションを管理者権限でインストールするステップと、前記ユーザ端末のユーザに対し、第2のセキュリティ・アプリケーションを提供するステップとを含み、前記第1のセキュリティ・アプリケーションは、コンピュータに対し、アプリケーションのアクセスを制御するためのアクセス制御手段と、仮想マシン・アプリケーションが発行する画面描画命令を選択的にフックするための第1の描画命令フック手段と、前記第1の描画命令フック手段がフックした前記画面描画命令について共通鍵暗号方式による暗号処理を実行する暗号処理手段とを実現するためのコンピュータ実行可能なプログラムであり、前記第2のセキュリティ・プログラムは、コンピュータに対し、アプリケーションのアクセスを制御するためのアクセス制御手段と、アプリケーションが発行する画面描画命令をフックするための第2の描画命令フック手段と、前記第2の描画命令フック手段がフックした前記画面描画命令について共通鍵暗号方式による暗号処理を実行する暗号処理手段とを実現するためのコンピュータ実行可能なプログラムである方法が提供される。
さらに、本発明によれば、ホストOS上に仮想マシンが構築された仮想化環境を備え、前記ホストOS上に第1のセキュリティ・エージェントが常駐し、仮想マシンのゲストOS上に第2のセキュリティ・エージェントが常駐するコンピュータ装置であって、前記第1のセキュリティ・エージェントは、前記ホストOS上のアプリケーションのアクセスを制御するためのアクセス制御部と、前記仮想マシンが発行する画面描画命令を選択的にフックするための第1の描画命令フック部と、前記第1の描画命令フック部がフックした前記画面描画命令について共通鍵暗号方式による暗号処理を実行する暗号処理部とを含み、前記第2のセキュリティ・エージェントは、前記ゲストOS上のアプリケーションのアクセスを制御するためのアクセス制御部と、前記ゲストOS上のアプリケーションが発行する画面描画命令をフックするための第2の描画命令フック部と、前記第2の描画命令フック部がフックした前記画面描画命令について共通鍵暗号方式による暗号処理を実行する暗号処理部とを含むコンピュータ装置が提供される。
上述したように、本発明によれば、安全に管理された仮想マシンの実行環境を構築する方法およびそのために用いられるプログラムが提供される。
本実施形態のセキュリティ・エージェントの機能ブロック図。 本実施形態のセキュリティ・エージェントのインストール時のホストOS画面を示す図。 仮想化環境が構築されたPCのホストOS上に本実施形態のセキュリティ・エージェントがインストールされた状態を示す図。 判読不能な状態になった仮想マシンのウィンドウ画面を示す図。 「セットアップ・モード」を設定するためのプロパティ画面を示す図。 本実施形態のセキュリティ・エージェントが「セットアップ・モード」に設定された状態を示す図。 本実施形態のセキュリティ・エージェントのインストール時の仮想マシンのウィンドウ画面を示す図。 ホストOSおよびゲストOSの両方に本実施形態のセキュリティ・エージェントがイントールされた状態を示す図。 秘密鍵を動的に更新する構成を採用した本実施形態のセキュリティ・エージェントを搭載したPCを示す図。 ホストOS型の仮想化環境が構築されたPCを示す図。 実マシンのホストOS画面の上位レイヤーに仮想マシンのウィンドウ画面が表示された状態を示す図。 仮想マシン環境を備える実マシンのホストOS上に従来型のセキュリティ・エージェントが導入された状態を示す図。 ホストOSおよびゲストOSの両方に従来型のセキュリティ・エージェントがイントールされた状態を示す図。
以下、本発明を図面に示した実施の形態をもって説明するが、本発明は、図面に示した実施の形態に限定されるものではない。なお、以下に参照する各図においては、共通する要素について同じ符号を用い、適宜、その説明を省略するものとする。
本発明の方法によれば、安全に管理された仮想マシンの実行環境を構築することができる。本発明の方法は、ホストOS型の仮想化環境に適用されることを前提とするものであり、その実現のために本発明の新規なセキュリティ・アプリケーションを用いる。本発明のセキュリティ・アプリケーションは、ユーザ端末のホストOSおよび仮想マシンのゲストOSの両方にインストールされることを前提とするプログラム製品として提供される。ここでプログラム製品とは、プログラムを記録した記録媒体およびネットワークを介して提供される形態を含む。本発明に係るプログラム製品は、PCにインストールされることによって以下に説明する機能手段をコンピュータ上に実現する。
図1は、本発明のセキュリティ・アプリケーションの実施形態であるセキュリティ・エージェント100の機能ブロック図を示す。本実施形態のセキュリティ・エージェント100は、セキュリティ機能部110と画面マスク処理部120を含んで構成される。セキュリティ機能部110は、少なくともアクセス制御部112を含んで構成される。アクセス制御部112は、OS上で動作するアプリケーションのファイル・アクセスおよびネットワーク・アクセスについて強制アクセス制御を実行する機能部であり、管理者が定義するセキュリティポリシーに則って、アプリケーションからのアクセスにつきその許否を判断する。具体的には、セキュリティポリシーがセットされたアクセス制御リスト(ACL)に基づいて制御内容を決定する。なお、セキュリティ機能部110には、アクセス制御部112の他に、ログ監査部などの必要な機能部を適宜追加してもよい。
一方、画面マスク処理部120は、描画命令フック部122と、暗号処理部124と、秘密鍵管理部126と、モード切替部128とを含んで構成される。描画命令フック部122は、OS上で動作するアプリケーションからGDI(Graphical Device Interface)に対して発行される画面描画命令をフック(Hook)するAPIフック手段であり、好ましくは、3つの動作モードを有する。すなわち、仮想マシン・アプリケーションが発行する画面描画命令をだけを選択的にフックする第1のモード、OS上で動作するアプリケーション(OS付属プログラムを含む)が発行する画面描画命令をフックする第2のモード、および、画面描画命令をフックしない第3のモードである。
暗号処理部124は、描画命令フック部122がフックした画面描画命令を共通鍵暗号方式によって暗号処理(暗号化/復号)する機能部である。本実施形態においては、共通鍵暗号方式として、ビットごとの排他的論理和演算を利用したブロック暗号やストリーム暗号などの既知の手法を採用することができる。
秘密鍵管理部126は、暗号処理部124が実行するビットごとの排他的論理和演算(以下、単に、XOR演算という)において用いられる鍵データの基となる秘密鍵を管理する機能部である。ブロック暗号を採用する場合、暗号処理部124は、秘密鍵管理部126から読み出した秘密鍵に基づいて拡大鍵を生成し、これを使用してXOR演算を実行する。ストリーム暗号を採用する場合、暗号処理部124は、秘密鍵管理部126から読み出した秘密鍵を初期値とした疑似乱数列(鍵ストリーム)を生成し、これを使用してXOR演算を実行する。
本発明は、実マシンのホストOSおよび仮想マシンのゲストOSのそれぞれにインストールされる2つのセキュリティ・エージェント100が同一の秘密鍵(すなわち、共通鍵)を管理することを前提として成立する。両者の間で秘密鍵の同一性を担保する最も単純な方法は、全てのプログラム製品の製造時に、同一の秘密鍵を設定しておく方法である。この場合、秘密鍵管理部126には当該秘密鍵が固定値として保持される。この他に、本発明は、管理者およびユーザのそれぞれがアプリケーションのインストール時に秘密鍵をセットする第2の方法、一方のセキュリティ・エージェント100が秘密鍵を自動生成して他方にそれを通知する第3の方法を採用することができる。
セキュリティ・エージェント100は、好ましくは、3つの動作モードを有する。1つめは、実マシンのホストOS上で動作させるための「実マシンモード」であり、2つめは、仮想マシンのゲストOS上で動作させるための「仮想マシンモード」である。3つめは、仮想マシンのゲストOS上にセキュリティ・エージェント100をインストールするための「セットアップ・モード」である。モード切替部128は、描画命令フック部122およびアクセス制御部112に働きかけてこれら3つの動作モードを実現するための機能部であり、外部からの指示に応じて、あるいは、自動的に、動作モードを切り替える。以上、本実施形態のセキュリティ・エージェント100の構成について概説してきたが、続いて、セキュリティ・エージェント100を用いることによって実現される本発明の方法、すなわち、安全に管理された仮想マシンの実行環境を提供する方法について説明する。
本発明の方法においては、管理者は、ユーザのPCに本実施形態のセキュリティ・エージェント100をインストールした上で、これと同様のセキュリティ・エージェント100をユーザに提供し、仮想マシン上にインストールするように命じる。この場合、一見すると、ユーザが管理者の命令に従う必然性が無いようにも見える。なぜなら、ユーザは、管理者が実際に仮想マシン上にセキュリティ・エージェント100をインストールされている否かを確認できないことを知っているからである。この点につき、本発明の方法は、ユーザが管理者の命令に従わざるを得ないシチュエーションを創り出す。以下、その具体的な内容について順を追って説明する。なお、以下の説明においては、適宜、図1を参照するものとする。
(ステップ1)
まず、管理者は、ユーザのPCのホストOS上に本実施形態のセキュリティ・エージェント100をインストールする。このとき、セキュリティ・エージェント100に対し、動作モードおよび秘密鍵が設定される。本発明においてはこれらを自動的に設定するように構成することもできるが、この点については後に説明するとものとし、ここでは、動作モードおよび秘密鍵を手動で設定する実施形態を例にとって説明する。
図2は、インストール作業時のホストOS画面1000を示す。ホストOS画面1000には、インストール・ウィザード1004が表示されている。管理者は、図2(a)に示すインストール・ウィザードの動作モード選択画面1004aにおいて「実マシンモード」を選択する。続いて、管理者は、図2(b)に示すインストール・ウィザードのパスワード設定画面1004bを介してパスワードを入力する。上述した手順を経てPCのホストOS上にインストールされたセキュリティ・エージェント100のモード切替部128には、選択された「実マシンモード」が設定され、秘密鍵管理部126には、入力されたパスワードが秘密鍵として設定される。なお、本実施形態においては、セキュリティ・エージェント100は、管理者権限でホストOS上にインストールされ、ユーザは、これを勝手にアンインストールすることができず、設定内容(動作モード、パスワード)を変更することも制限される。なお、本実施形態においては、インストール・ウィザード画面に代えて、専用のダイアログ画面から動作モードおよびパスワード設定するように構成してもよく、本発明は、それらの具体的な構成に限定されない。
PCのホストOS上にのみセキュリティ・エージェント100がインストールされた場合、仮想化環境は実質的に利用不能になる。以下、この点を図3に基づいて説明する。図3は、仮想化環境が構築されたPCのホストOS204上にセキュリティ・エージェント100がインストールされた状態を示す。図3に示す例の場合、ホストOS204上に、「アプリA」、「アプリB」、「アプリC」という3つのアプリケーションとともに、仮想マシン・アプリケーション400(以下、仮想マシン400として参照する)が展開されている。なお、図3においては、仮想マシン400の仮想ハードウェア領域および共通プラットフォームは省略して示す(以下の図において同様)。さらに、仮想マシン400のゲストOS404上には、「アプリA」、「アプリD」、「アプリE」という3つのアプリケーションが展開されている。ここで、「アプリA」については、セキュリティポリシーがその使用を禁止しているアプリケーションとして参照されたい。
先に述べたように、ホストOS204上のセキュリティ・エージェント100のモード切替部128は、「実マシンモード」に設定される。この場合、モード切替部128は、描画命令フック部122を第1のモード、すなわち、仮想マシン400が発行する画面描画命令のみを選択的にフックするモードにセットする。この時、仮想マシン400を表示するウィンドウが占める領域のうち、クライアント領域と呼ばれるウィンドウ内部のみをフックし、非クライアント領域と呼ばれるウィンドウ枠やタイトル領域はフックしない方式が望ましい。その結果、仮想マシン400内で動く「アプリA」、「アプリD」、「アプリE」から発行される画面描画命令ならびにゲストOS404に付属する描画アプリケーション(壁紙やデスクトップを描画する)から発行される画面描画命令が描画命令フック部122によってフックされる。これを受けて、暗号処理部124は、秘密鍵管理部126に設定されたパスワード(秘密鍵)を読み出し、描画命令フック部122がフックした画面描画命令について共通鍵暗号方式による暗号化を実行する。
暗号化された画面描画命令が、画面マスク処理部120からホストOS204に転送され、図示しないGDIおよびVideo Driverの処理を経てディスプレイ装置に出力されると、図4に示すように、仮想マシン400のウィンドウ画面2000が判読不能な状態になり、ユーザは、画面上の操作ができなくなる。その結果、仮想化環境で動作する全てのアプリケーション(禁止された「アプリA」、「アプリD」、「アプリE」)を利用することが実質的に不可能になる。
(ステップ2)
ユーザのPCへのセキュリティ・エージェント100のインストールが完了した後、管理者は、ユーザに対し、仮想マシン400上にセキュリティ・エージェント100をインストールされている場合に限り、ウィンドウ画面のマスクが解除される旨を伝える。その上で、管理者は、ホストOS204のセキュリティ・エージェント100に設定したパスワード情報(秘密鍵)とともに、ゲストOS用のセキュリティ・エージェント100をユーザに提供し、あとは、ユーザの自主性に任せるだけである。しかし、管理者によってこのようなシチュエーションが創出されると、仮想化環境を利用したいユーザは、管理者が所望するセキュリティ・エージェント100を仮想マシン400上にインストールすることを受け入れざるを得なくなる。
(ステップ3)
管理者からのアナウンスを受けて、ユーザは、自ら、仮想マシン400上にセキュリティ・エージェント100をインストールする。ただし、仮想マシン400のウィンドウ画面2000がマスクされた状態では、インストール作業自体を行うことができないので、ホストOS204上のセキュリティ・エージェント100を「セットアップ・モード」に設定する。先に述べたように、ホストOS204上のセキュリティ・エージェント100の設定内容を変更するには、基本的に管理者権限が必要となるが、本実施形態においては、「セットアップ・モード」の設定についてのみユーザに許可する。この場合、ユーザは、図5(a)に示すようなプロパティ画面1006をセキュリティ・エージェント100から呼び出して「セットアップ・モード」を設定することができる。
図6は、ホストOS204上のセキュリティ・エージェント100が「セットアップ・モード」に設定された状態を示す。「セットアップ・モード」において、モード切替部128は、描画命令フック部122を第3のモード、すなわち、画面描画命令をフックしないモードにセットする。その結果、仮想マシン400から発行される画面描画命令は、セキュリティ・エージェント100をスルーしてそのままホストOS204に転送されるので、仮想マシン400のウィンドウ画面2000は、図5(b)に示すような通常の状態に戻る。
併せて、「セットアップ・モード」において、モード切替部128は、仮想マシン400についてのアクセス制限の内容を変更するようにアクセス制御部112に依頼する。具体的には、モード切替部128は、仮想マシン400から発行されるファイル・アクセスの内、セキュリティ・エージェント100のプログラムを収めたEXEファイル210へのファイル・アクセスを除く全てのファイル・アクセスならびにネットワーク・アクセスを禁止するようにアクセス制御部112に依頼する。アクセス制御部112は、これを受けてACLをそのように修整する。上述した設定条件の下では、ユーザに、ウィンドウ画面2000を操作してEXEファイル210へアクセスすることが許可されるので、セキュリティ・エージェント100のインストール作業を実行することが可能になる。
なお、「セットアップ・モード」においては、仮想マシン400から発行される画面描画命令をフックすることなく転送するので、禁止された「アプリA」の画面を含む全ての画面が表示されることなるが、アクセス制御部112が制御内容を変更することによって仮想マシン400からのファイル・アクセス(EXEファイル210を除く)ならびにネットワーク・アクセスが全て禁止されるため、この間、「アプリA」はフリーズした状態になり、使用することができなくなる。つまり、「セットアップ・モード」においては、PCのセキュリティ状態は適正に維持されるのである。ただし、このままでは、本来許可されるべき「アプリD」、「アプリE」についても同様に使用することができないことに留意されたい。
図7は、インストール作業時の仮想マシン400のウィンドウ画面2000を示す。ウィンドウ画面2000には、インストール・ウィザード2004が表示されている。ユーザは、図7(a)に示すインストール・ウィザードの動作モード選択画面2004aにおいて「仮想マシンモード」を選択する。続いて、ユーザは、図7(b)に示すインストール・ウィザードのパスワード設定画面1004bを介して管理者から提供されたパスワードを入力する。ユーザは、インストール・ウィザードに従ってインストール作業を完了すると、ホストOS204上のセキュリティ・エージェント100のプロパティ画面1006を再び呼び出して「セットアップ・モード」を解除する。これに応答して、ホストOS204上のセキュリティ・エージェント100は、「実マシンモード」に戻る。あるいは、ホストOS204側がインストール完了を自動検出し、これに応答して、ホストOS204上のセキュリティ・エージェント100が「実マシンモード」に戻るように構成することもできる。
図8は、ホストOS204およびゲストOS404の両方にセキュリティ・エージェント100がイントールされた状態を示す。なお、図8においては、2つのエージェントを区別するために、ホストOS204側をセキュリティ・エージェント100(H)とし、ゲストOS404側をセキュリティ・エージェント100(G)として示す。
図7(a)に示したユーザによる動作モード設定によって、セキュリティ・エージェント100(G)は「仮想マシンモード」がセットされている。この場合、モード切替部128Gは、描画命令フック部122Gを第2のモード、すなわち、OS上のアプリケーションが発行する画面描画命令をフックするモードにセットする。その結果、仮想マシン400内で動く「アプリA」、「アプリD」、「アプリE」から発行される画面描画命令ならびにゲストOS404に付属する描画アプリケーションから発行される画面描画命令が描画命令フック部122Gによってフックされる。これを受けて、暗号処理部124Gは、秘密鍵管理部126Gに設定されたパスワード(秘密鍵)を読み出し、描画命令フック部122がフックした画面描画命令について共通鍵暗号方式による暗号処理(暗号化)を実行する。なお、図7(b)に示したユーザによるパスワード設定によって、秘密鍵管理部126Gには、セキュリティ・エージェント100(H)の秘密鍵管理部126Hにセットされたものと同一の秘密鍵がセットされていることに留意されたい。
画面マスク処理部120GにおけるXOR演算によって暗号化された画面描画命令は、仮想マシン400からホストOS204に対して発行される。このとき、実マシンモードで動作しているセキュリティ・エージェント100(H)の描画命令フック部122Hは、仮想マシン400から発行された画面描画命令(暗号化された画面描画命令)を選択的にフックする。これを受けて、暗号処理部124Hは、秘密鍵管理部126Hに設定されたパスワード(秘密鍵)を読み出し、描画命令フック部122Hがフックした画面描画命令(暗号化された画面描画命令)について共通鍵暗号方式による暗号処理(復号)を実行する。つまり、ホストOS204およびゲストOS404の両方にセキュリティ・エージェント100がイントールされている場合には、同一の鍵データを用いたXOR演算が2回行われることになるので、仮想マシン400内で発行される全ての画面描画命令は、平文に戻された状態でホストOS204に転送され、その結果、禁止された「アプリA」の画面を含む全ての画面が表示されることなる。
一方、セキュリティ・エージェント100(G)のアクセス制御部112Gは、セキュリティ・エージェント100(H)のアクセス制御部112Hと同じ制御内容で動作しているので、「アプリA」からのファイル・アクセスならびにネットワーク・アクセスが全て禁止される一方、「アプリD」、「アプリE」からのアクセスは許可される。つまり、仮想マシン400にセキュリティ・エージェント100(G)が導入されたことにより、仮想マシン400が実マシンと同じセキュリティ環境に置かれたのである。
以上、説明したように、ユーザは、セキュリティ・エージェント100(G)を仮想マシン400にインストールすること(すなわち、管理者の定義するセキュリティポリシーを遵守すること)と引き替えに、仮想マシン環境の利用を許されることになる。本発明の構成は、ユーザが、セキュリティ・エージェント100(G)をアンインストールしたり、管理者の許可なく別の仮想マシン・アプリケーションをインストールしたりすることを強制的に排除するものではないが、実質的に等価な効果をユーザに及ぼすことができ、その結果、安全に管理された仮想マシンの実行環境が構築される。
なお、上述した実施形態においては、セキュリティ・エージェント100の動作モード(実マシンモード/仮想マシンモード)をユーザの指示によって切り替える態様について示したが、セキュリティ・エージェント100自身が自律的に動作モードを切り替えるように構成することもできる。この場合、モード切替部128は、セキュリティ・エージェント100がインストールされたOSがホストOSまたはゲストOSのいずれであるかをOSから読み出したハードウェア属性やBIOS情報に基づいて判定する手段を備える。モード切替部128は、セキュリティ・エージェント100がインストールされたOSがホストOSであると判定した場合には、セキュリティ・エージェント100を「実マシンモード」にセットし、ゲストOSであると判定した場合には、セキュリティ・エージェント100を「仮想マシンモード」にセットする。
また、上述した実施形態においては、実マシンのホストOSおよび仮想マシンのゲストOSのそれぞれにインストールされる2つのセキュリティ・エージェント100が共有する秘密鍵を固定鍵として設定する構成について説明したが、悪意あるプログラムによって秘密鍵情報が盗用されることを防止するため、秘密鍵が動的に更新されるように構成することもできる。この点について図9を参照して説明する。
図9は、秘密鍵を動的に更新する構成を採用したセキュリティ・エージェント100を搭載したPC200(実マシン)を示す。本実施形態におけるセキュリティ・エージェント100の秘密鍵管理部126は、ランダムキーを動的に生成するためのキー生成部125と、他のプロセスとの間でランダムキーの送受信を実行するためのキー送受信部127を備える。本実施形態における秘密鍵管理部126は、2つの動作モードを有する。すなわち、秘密鍵としてランダムキーを動的に生成しこれを他のプロセス宛てに送信する第1のモードと、他のプロセスからランダムキーを受信してこれを秘密鍵としてセット(更新)する第2のモードである。図示しないモード切替部128は、秘密鍵管理部126の2つの動作モードを切り替える。具体的には、セキュリティ・エージェント100が「実マシンモード」に設定されている場合には、その秘密鍵管理部126を第1のモードにセットし、「仮想マシンモード」に設定されている場合には、その秘密鍵管理部126を第2のモードにセットする。
図9に示す例の場合、ホストOS204上のセキュリティ・エージェント100(H)の秘密鍵管理部126Hは、第1のモードで動作する。その結果、キー生成部125Hが秘密鍵としてランダムキーを動的に生成し、キー送受信部127Hが生成したランダムキーを他のプロセス(すなわち、セキュリティ・エージェント100(G)の秘密鍵管理部126G)に宛てて送信する。一方で、ゲストOS404上のセキュリティ・エージェント100(G)の秘密鍵管理部126Gは、第2のモードで動作する。その結果、秘密鍵管理部126Gのキー送受信部127Gは、他のプロセス(すなわち、セキュリティ・エージェント100(H)の秘密鍵管理部126H)からランダムキーを受信し、これを秘密鍵としてセット(更新)する。このとき、秘密鍵管理部126Hと秘密鍵管理部126Gの間のプロセス間通信は、名前付きパイプ220を介して実行することができる。
また、仮想マシン・アプリケーションが、ホストOS204上の特定のファイルについて、ゲストOS404からの読み書きを可能にする共有フォルダ機能を備えている場合には、共有フォルダ上に秘密鍵用のファイルを設け、これを介して秘密鍵を共有(送受信)することもできる。なお、秘密鍵情報に対する不正なアクセスを防止するため、秘密鍵の交換に使用する名前付きパイプや共有フォルダには、適切なアクセス制限を設ける他、通信データやファイルを暗号化するなどしてセキュアな状態に置くことが好ましい。
以上、本発明について、セキュリティ・エージェントが「実マシンモード」と「仮想マシンモード」の2つ動作モードを切替可能に有する実施形態をもって説明してきたが、本発明は、上述した実施形態に限定されるものではない。例えば、本発明の方法は、「実マシンモード」の動作設定をデフォルトとする第1のセキュリティ・アプリケーションと、「仮想マシンモード」の動作設定をデフォルトとする第2のセキュリティ・アプリケーションを別々に用意し、管理者が、ユーザ端末のホストOS上に第1のセキュリティ・アプリケーションを管理者権限でインストールした上で、ユーザに対し、第2のセキュリティ・アプリケーションを提供することによって実現することができる。その他、当業者が推考しうる実施態様の範囲内において、本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
また、本発明の上記機能は、C、C++、C#、Java(登録商標)などのオブジェクト指向プログラミング言語などで記述された装置実行可能なプログラムにより実現でき、本実施形態のプログラムは、ハードディスク装置、CD−ROM、MO、DVD、フレキシブルディスク、EEPROM、EPROMなどの装置可読な記録媒体に格納して頒布することができ、また他装置が可能な形式でネットワークを介して伝送することができる。
100…セキュリティ・エージェント
110…セキュリティ機能部
112…アクセス制御部
120…画面マスク処理部
122…描画命令フック部
124…暗号処理部
125…キー生成部
126…秘密鍵管理部
127…キー送受信部
128…モード切替部
200…実マシン
202…ハードウェア
204…ホストOS
210…EXEファイル
220…名前付きパイプ
400…仮想マシン
401…共通プラットフォーム
402…仮想ハードウェア領域
404…ゲストOS
500…セキュリティ・エージェント
502…アクセス制御部
504…ログ監査部
1000…ホストOS画面
1004…インストール・ウィザード
1006…プロパティ画面
2000…仮想マシンのウィンドウ画面
2004…インストール・ウィザード

Claims (19)

  1. コンピュータに対し、
    アプリケーションのアクセスを制御するためのアクセス制御手段と、
    画面描画命令をフックするための描画命令フック手段であって、仮想マシン・アプリケーションが発行する画面描画命令を選択的にフックする第1のモードと、アプリケーションが発行する画面描画命令をフックする第2のモードとを有する描画命令フック手段と、
    フックした前記画面描画命令について共通鍵暗号方式による暗号処理を実行する暗号処理手段と、
    前記描画命令フック手段の動作モードを切り替えるためのモード切替手段と
    を実現するためのコンピュータ実行可能なプログラム。
  2. 前記モード切替手段は、前記プログラムがインストールされたOSがホストOSまたはゲストOSのいずれであるかを判定する手段を備え、前記OSがホストOSである実マシンモードのときに、前記描画命令フック手段を前記第1のモードにセットし、前記OSがゲストOSである仮想マシンモードのときに、前記描画命令フック手段を前記第2のモードにセットする、請求項1に記載のプログラム。
  3. 前記コンピュータに対し、さらに、前記暗号処理に使用する秘密鍵を管理するための秘密鍵管理手段を実現する、請求項1または2に記載のプログラム。
  4. 前記秘密鍵管理手段は、
    前記秘密鍵としてランダムキーを生成するためのキー生成手段と、
    他のプロセスとの間で前記ランダムキーの送受信を実行するキー送受信手段とを含む、
    請求項3に記載のプログラム。
  5. 前記キー送受信手段は、
    前記実マシンモードのときに、前記ランダムキーを前記他のプロセスに送信し、
    前記仮想マシンモードのときに、前記ランダムキーを前記他のプロセスから受信する、
    請求項4に記載のプログラム。
  6. 前記キー送受信手段は、名前付きパイプを介して前記ランダムキーの送受信を実行する、請求項4または5に記載のプログラム。
  7. 前記キー送受信手段は、共有フォルダ機構を介して前記ランダムキーの送受信を実行する、請求項4または5に記載のプログラム。
  8. 前記秘密鍵管理手段は、外部からの設定入力に基づいて前記秘密鍵を設定する、請求項3に記載のプログラム。
  9. 前記モード切替手段は、外部からのモード設定入力に応答して、前記描画命令フック手段を前記第1のモードまたは前記第2のモードにセットする、請求項1に記載のプログラム。
  10. コンピュータに対し、
    アプリケーションのアクセスを制御するためのアクセス制御手段と、
    画面描画命令をフックするための描画命令フック手段であって、仮想マシン・アプリケーションが発行する画面描画命令を選択的にフックする第1のモードと、アプリケーションが発行する画面描画命令をフックする第2のモードとを有する描画命令フック手段と、
    フックした前記画面描画命令について共通鍵暗号方式による暗号処理を実行する暗号処理手段と、
    を実現するためのコンピュータ実行可能なプログラム。
  11. 請求項1〜10のいずれか一項に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
  12. ホストOS上に仮想マシンが構築された仮想化環境を備え、前記ホストOS上に第1のセキュリティ・エージェントが常駐し、仮想マシンのゲストOS上に第2のセキュリティ・エージェントが常駐するコンピュータ装置であって、
    前記第1のセキュリティ・エージェントは、
    前記ホストOS上のアプリケーションのアクセスを制御するためのアクセス制御部と、
    前記仮想マシンが発行する画面描画命令を選択的にフックするための第1の描画命令フック部と、
    前記第1の描画命令フック部がフックした前記画面描画命令について共通鍵暗号方式による暗号処理を実行する暗号処理部と
    を含み、
    前記第2のセキュリティ・エージェントは、
    前記ゲストOS上のアプリケーションのアクセスを制御するためのアクセス制御部と、
    前記ゲストOS上のアプリケーションが発行する画面描画命令をフックするための第2の描画命令フック部と、
    前記第2の描画命令フック部がフックした前記画面描画命令について共通鍵暗号方式による暗号処理を実行する暗号処理部と
    を含む、
    コンピュータ装置。
  13. 前記第1のセキュリティ・エージェントおよび前記第2のセキュリティ・エージェントは、前記暗号処理部が使用する秘密鍵を管理するための秘密鍵管理部を含む、請求項12に記載のコンピュータ装置。
  14. 前記秘密鍵管理部は、
    前記秘密鍵としてランダムキーを生成するためのキー生成部と、
    他のプロセスとの間で前記ランダムキーの送受信を実行するキー送受信部とを含む、
    請求項13に記載のコンピュータ装置。
  15. 前記第1のセキュリティ・エージェントの前記キー送受信部は、前記ランダムキーを生成して前記第2のセキュリティ・エージェントの前記キー送受信部に送信する、
    請求項14に記載のコンピュータ装置。
  16. 前記キー送受信部は、名前付きパイプを介して前記ランダムキーの送受信を実行する、請求項14または15に記載のコンピュータ装置。
  17. 前記キー送受信手段は、共有フォルダ機構を介して前記ランダムキーの送受信を実行する、請求項14または15に記載のコンピュータ装置。
  18. ユーザ端末について安全に管理された仮想マシンの実行環境の構築を促進するための方法であって、
    ユーザ端末のホストOS上に第1のセキュリティ・アプリケーションを管理者権限でインストールするステップと、
    前記ユーザ端末のユーザに対し、第2のセキュリティ・アプリケーションを提供するステップとを含み、
    前記第1のセキュリティ・アプリケーションは、
    コンピュータに対し、
    アプリケーションのアクセスを制御するためのアクセス制御手段と、
    仮想マシン・アプリケーションが発行する画面描画命令を選択的にフックするための第1の描画命令フック手段と、
    前記第1の描画命令フック手段がフックした前記画面描画命令について共通鍵暗号方式による暗号処理を実行する暗号処理手段と
    を実現するためのコンピュータ実行可能なプログラムであり、
    前記第2のセキュリティ・プログラムは、
    コンピュータに対し、
    アプリケーションのアクセスを制御するためのアクセス制御手段と、
    アプリケーションが発行する画面描画命令をフックするための第2の描画命令フック手段と、
    前記第2の描画命令フック手段がフックした前記画面描画命令について共通鍵暗号方式による暗号処理を実行する暗号処理手段と
    を実現するためのコンピュータ実行可能なプログラムである、
    方法。
  19. 前記第1のセキュリティ・アプリケーションが前記コンピュータに対して実現する前記アクセス制御手段と前記第2のセキュリティ・アプリケーションが前記コンピュータに対して実現する前記アクセス制御手段が同一のセキュリティポリシーに基づいて動作する、請求項18に記載の方法。
JP2011143993A 2011-06-29 2011-06-29 安全に管理された仮想マシンの実行環境を構築する方法、プログラムおよびコンピュータ装置 Expired - Fee Related JP5719244B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2011143993A JP5719244B2 (ja) 2011-06-29 2011-06-29 安全に管理された仮想マシンの実行環境を構築する方法、プログラムおよびコンピュータ装置
GB1209077.5A GB2492448B (en) 2011-06-29 2012-05-24 Constructing safely managed virtual machine execution environment, program and computer apparatus
US13/488,369 US8595511B2 (en) 2011-06-29 2012-06-04 Securely managing the execution of screen rendering instructions in a host operating system and virtual machine
DE102012210887.4A DE102012210887B4 (de) 2011-06-29 2012-06-26 Verfahren zum Einrichten einer sicher verwalteten Ausführungsumgebung für eine virtuelle Maschine und eine Computervorrichtung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011143993A JP5719244B2 (ja) 2011-06-29 2011-06-29 安全に管理された仮想マシンの実行環境を構築する方法、プログラムおよびコンピュータ装置

Publications (3)

Publication Number Publication Date
JP2013012018A true JP2013012018A (ja) 2013-01-17
JP2013012018A5 JP2013012018A5 (ja) 2014-08-14
JP5719244B2 JP5719244B2 (ja) 2015-05-13

Family

ID=46546537

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011143993A Expired - Fee Related JP5719244B2 (ja) 2011-06-29 2011-06-29 安全に管理された仮想マシンの実行環境を構築する方法、プログラムおよびコンピュータ装置

Country Status (4)

Country Link
US (1) US8595511B2 (ja)
JP (1) JP5719244B2 (ja)
DE (1) DE102012210887B4 (ja)
GB (1) GB2492448B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017516179A (ja) * 2014-03-04 2017-06-15 アマゾン テクノロジーズ インコーポレイテッド デジタル証明書を用いた仮想マシンイメージの認証
CN107408072A (zh) * 2014-12-16 2017-11-28 凯恩迪股份有限公司 用于随机化计算机指令集、存储器寄存器和指针的方法和装置
JP2018085136A (ja) * 2016-07-04 2018-05-31 株式会社Seltech 人工知能を有するシステム

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5719244B2 (ja) * 2011-06-29 2015-05-13 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 安全に管理された仮想マシンの実行環境を構築する方法、プログラムおよびコンピュータ装置
CN103294545B (zh) 2012-02-23 2017-07-04 纬创资通股份有限公司 切换双操作系统的方法以及电子装置
CN103294970B (zh) * 2012-02-23 2015-12-09 纬创资通股份有限公司 双操作系统共用加密设定的方法以及电子装置
CN103294562B (zh) 2012-02-23 2017-03-01 纬创资通股份有限公司 双操作系统共用周边装置的方法以及电子装置
US8839447B2 (en) * 2012-02-27 2014-09-16 Ca, Inc. System and method for virtual image security in a cloud environment
US8938612B1 (en) * 2013-07-31 2015-01-20 Google Inc. Limited-access state for inadvertent inputs
CN104169939B (zh) * 2013-11-12 2017-02-15 华为技术有限公司 一种实现虚拟化安全的方法和系统
US9641488B2 (en) 2014-02-28 2017-05-02 Dropbox, Inc. Advanced security protocol for broadcasting and synchronizing shared folders over local area network
US10185480B1 (en) * 2015-06-15 2019-01-22 Symantec Corporation Systems and methods for automatically making selections in user interfaces
US9767318B1 (en) * 2015-08-28 2017-09-19 Frank Dropps Secure controller systems and associated methods thereof
US12339979B2 (en) 2016-03-07 2025-06-24 Crowdstrike, Inc. Hypervisor-based interception of memory and register accesses
US12248560B2 (en) * 2016-03-07 2025-03-11 Crowdstrike, Inc. Hypervisor-based redirection of system calls and interrupt-based task offloading
CN109445902B (zh) * 2018-09-06 2021-05-07 新华三云计算技术有限公司 一种数据操作方法和系统

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10301874A (ja) * 1997-04-22 1998-11-13 Internatl Business Mach Corp <Ibm> 遠隔操作方法、ネットワークを介して端末から遠隔操作されるサーバ及びhtmlファイルを格納する記憶媒体
US20050066165A1 (en) * 2002-12-31 2005-03-24 Vidius Inc. Method and system for protecting confidential information
JP2006018815A (ja) * 2004-06-30 2006-01-19 Microsoft Corp エミュレートされたコンピューティング環境を用いてオペレーティングシステムのライセンス収入を徴収するためのシステムおよび方法
JP2007287078A (ja) * 2006-04-20 2007-11-01 Internatl Business Mach Corp <Ibm> 個人情報の保護を支援する情報処理装置
JP2008217580A (ja) * 2007-03-06 2008-09-18 Fujitsu Ltd 状態表示制御装置
JP2009244768A (ja) * 2008-03-31 2009-10-22 Fujitsu Ltd 画像復号化装置
JP2010500694A (ja) * 2006-09-29 2010-01-07 インテル・コーポレーション 仮想セキュリティモジュールのアーキテクチャ
US20110007286A1 (en) * 2009-06-16 2011-01-13 Asml Netherlands B.V. Lithographic apparatus, a method of controlling the apparatus and a method of manufacturing a device using a lithographic apparatus
JP2011048661A (ja) * 2009-08-27 2011-03-10 Nomura Research Institute Ltd 仮想サーバ暗号化システム
GB2492448B (en) * 2011-06-29 2013-05-15 Ibm Constructing safely managed virtual machine execution environment, program and computer apparatus

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5752005A (en) 1996-01-22 1998-05-12 Microtest, Inc. Foreign file system establishing method which uses a native file system virtual device driver
US20050144072A1 (en) * 1996-10-25 2005-06-30 Perkowski Thomas J. Internet-based brand management and marketing communication instrumentation network for deploying, installing and remotely programming brand-building server-side driven multi-mode virtual kiosks on the World Wide Web (WWW), and methods of brand marketing communication between brand marketers and consumers using the same
US6356915B1 (en) 1999-02-22 2002-03-12 Starbase Corp. Installable file system having virtual file system drive, virtual device driver, and virtual disks
US7814335B2 (en) * 1999-03-18 2010-10-12 Dell Products L.P. System and method for installing system manufacturer provided software
US7844492B2 (en) * 1999-11-17 2010-11-30 Ipf, Inc. Internet-based E-commerce network for enabling commission-based E-commerce transactions along the fabric of the world wide web (WWW) using server-side driven multi-mode virtual kiosks (MMVKS) and transaction and commission tracking servers
US20080021778A1 (en) * 1999-04-21 2008-01-24 Ipf, Inc. Web-based brand marketing communication network for enabling e-commerce transactions using Multi-Mode Virtual Kiosks (MMVKS)
US6731756B1 (en) * 1999-06-21 2004-05-04 Elisar Software Corporation, Inc. Method for securing video images
WO2001050244A1 (en) * 2000-01-06 2001-07-12 Chan Kam Fu Running microsoft windows 95/98 on ramdisk
US20110238506A1 (en) * 2000-01-14 2011-09-29 Perkowski Thomas J Internet-based brand marketing communication network for enabling commission-based e-commerce transactions along the fabric of the world wide web (www) using server-side driven multi-mode virtual kiosks (mmvks)
US9213836B2 (en) * 2000-05-28 2015-12-15 Barhon Mayer, Batya System and method for comprehensive general electric protection for computers against malicious programs that may steal information and/or cause damages
US7117504B2 (en) * 2001-07-10 2006-10-03 Microsoft Corporation Application program interface that enables communication for a network software platform
US7603440B1 (en) * 2001-11-09 2009-10-13 Persystent Technology Corporation System and method for management of end user computing devices
US6978439B2 (en) 2002-01-10 2005-12-20 Microsoft Corporation Cross-platform software development with a software development peripheral
US20040024710A1 (en) * 2002-03-07 2004-02-05 Llavanya Fernando Secure input pad partition
US20030236889A1 (en) * 2002-06-25 2003-12-25 Microsoft Corporation Data projection system and method
US7673308B2 (en) 2002-11-18 2010-03-02 Symantec Corporation Virtual OS computing environment
US9003295B2 (en) 2003-03-17 2015-04-07 Leo Martin Baschy User interface driven access control system and method
US8205072B1 (en) * 2003-07-22 2012-06-19 Cisco Technology, Inc. Method and apparatus for electronically configuring a secured user desktop
JP4765485B2 (ja) 2005-08-26 2011-09-07 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
EP2650749A1 (en) 2005-11-17 2013-10-16 Koninklijke Philips N.V. System for Managing Access Control
US20070283389A1 (en) * 2006-06-01 2007-12-06 Sharp Laboratories Of America, Inc. Method and system for helping operate a media-playing set
WO2007114456A1 (en) * 2006-03-29 2007-10-11 Casio Computer Co., Ltd. Server apparatus of computer system
US7987506B1 (en) * 2006-11-03 2011-07-26 Cisco Technology, Inc. Methods and systems for dynamically updating a routing table in a virtual private network
JP2010522370A (ja) 2007-03-20 2010-07-01 サンギュ イ 移動型仮想マシンイメージ
JP4938576B2 (ja) 2007-07-24 2012-05-23 日本電信電話株式会社 情報収集システムおよび情報収集方法
JP4287485B2 (ja) 2007-07-30 2009-07-01 日立ソフトウエアエンジニアリング株式会社 情報処理装置及び方法、コンピュータ読み取り可能な記録媒体、並びに、外部記憶媒体
JP2009049679A (ja) 2007-08-20 2009-03-05 Fuji Xerox Co Ltd 画像処理装置、画像処理装置制御プログラム及び画像処理システム
US20090158190A1 (en) * 2007-12-13 2009-06-18 Yuvee, Inc. Computing apparatus including a personal web and application assistant
EP2226721B1 (en) * 2007-12-28 2017-08-02 Panasonic Intellectual Property Corporation of America Communication device, communication system, image presentation method, and program
US8443440B2 (en) 2008-04-05 2013-05-14 Trend Micro Incorporated System and method for intelligent coordination of host and guest intrusion prevention in virtualized environment
US20100058082A1 (en) * 2008-08-27 2010-03-04 Lenovo (Singapore) Ple., Ltd. Maintaining network link during suspend state
US8627075B2 (en) * 2008-12-26 2014-01-07 Panasonic Corporation Communication device that receives external device information from an external device using near field communication
JP5235764B2 (ja) 2009-04-16 2013-07-10 株式会社日立製作所 Icチップおよびこれを搭載した情報処理装置
US20110156879A1 (en) * 2009-06-26 2011-06-30 Yosuke Matsushita Communication device
US9020432B2 (en) * 2009-11-30 2015-04-28 Panasonic Intellectual Property Corporation Of America Mobile communication device, communication method, integrated circuit, and program
US8370510B2 (en) 2009-12-18 2013-02-05 Microsoft Corporation Remote application presentation over a public network connection
US20120133484A1 (en) * 2010-11-29 2012-05-31 Research In Motion Limited Multiple-input device lock and unlock

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10301874A (ja) * 1997-04-22 1998-11-13 Internatl Business Mach Corp <Ibm> 遠隔操作方法、ネットワークを介して端末から遠隔操作されるサーバ及びhtmlファイルを格納する記憶媒体
US20050066165A1 (en) * 2002-12-31 2005-03-24 Vidius Inc. Method and system for protecting confidential information
JP2006018815A (ja) * 2004-06-30 2006-01-19 Microsoft Corp エミュレートされたコンピューティング環境を用いてオペレーティングシステムのライセンス収入を徴収するためのシステムおよび方法
JP2007287078A (ja) * 2006-04-20 2007-11-01 Internatl Business Mach Corp <Ibm> 個人情報の保護を支援する情報処理装置
JP2010500694A (ja) * 2006-09-29 2010-01-07 インテル・コーポレーション 仮想セキュリティモジュールのアーキテクチャ
JP2008217580A (ja) * 2007-03-06 2008-09-18 Fujitsu Ltd 状態表示制御装置
JP2009244768A (ja) * 2008-03-31 2009-10-22 Fujitsu Ltd 画像復号化装置
US20110007286A1 (en) * 2009-06-16 2011-01-13 Asml Netherlands B.V. Lithographic apparatus, a method of controlling the apparatus and a method of manufacturing a device using a lithographic apparatus
JP2011048661A (ja) * 2009-08-27 2011-03-10 Nomura Research Institute Ltd 仮想サーバ暗号化システム
GB2492448B (en) * 2011-06-29 2013-05-15 Ibm Constructing safely managed virtual machine execution environment, program and computer apparatus
US8595511B2 (en) * 2011-06-29 2013-11-26 International Business Machines Corporation Securely managing the execution of screen rendering instructions in a host operating system and virtual machine

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNG200900357004; 寺本 圭: 'SBC環境におけるペンタブレットシステムのユーザビリティ評価指標の抽出' 電子情報通信学会技術研究報告 Vol.109,No.29, 20090507, 第64頁, 社団法人電子情報通信学会 *
JPN6014030598; 寺本 圭: 'SBC環境におけるペンタブレットシステムのユーザビリティ評価指標の抽出' 電子情報通信学会技術研究報告 Vol.109,No.29, 20090507, 第64頁, 社団法人電子情報通信学会 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017516179A (ja) * 2014-03-04 2017-06-15 アマゾン テクノロジーズ インコーポレイテッド デジタル証明書を用いた仮想マシンイメージの認証
US10698710B2 (en) 2014-03-04 2020-06-30 Amazon Technologies, Inc. Authentication of virtual machine images using digital certificates
CN107408072A (zh) * 2014-12-16 2017-11-28 凯恩迪股份有限公司 用于随机化计算机指令集、存储器寄存器和指针的方法和装置
JP2018500679A (ja) * 2014-12-16 2018-01-11 キンダイ、インコーポレイテッドKyndi, Inc. コンピュータ命令セット、メモリレジスタ、およびポインタをランダム化するための方法および装置
JP2018085136A (ja) * 2016-07-04 2018-05-31 株式会社Seltech 人工知能を有するシステム

Also Published As

Publication number Publication date
GB2492448A (en) 2013-01-02
US20130007469A1 (en) 2013-01-03
US8595511B2 (en) 2013-11-26
GB201209077D0 (en) 2012-07-04
DE102012210887A1 (de) 2013-01-03
JP5719244B2 (ja) 2015-05-13
GB2492448B (en) 2013-05-15
DE102012210887B4 (de) 2022-12-15

Similar Documents

Publication Publication Date Title
JP5719244B2 (ja) 安全に管理された仮想マシンの実行環境を構築する方法、プログラムおよびコンピュータ装置
JP4089171B2 (ja) 計算機システム
JP5992457B2 (ja) オペレーティングシステムのコンフィグレーション値の保護
US8387109B2 (en) Access control state determination based on security policy and secondary access control state
US8745386B2 (en) Single-use authentication methods for accessing encrypted data
US9300640B2 (en) Secure virtual machine
JP4982825B2 (ja) コンピュータおよび共有パスワードの管理方法
JP5635993B2 (ja) モバイル装置とコンピュータを組み合わせ、安全な個人ごとの環境を生成する装置および方法
JP5429157B2 (ja) 機密情報漏洩防止システム及び機密情報漏洩防止方法
EP2705425A1 (en) Binding applications to device capabilities
US9244705B1 (en) Intelligent micro-virtual machine scheduling
JP2008171389A (ja) ドメイン・ログオンの方法、およびコンピュータ
JP6270780B2 (ja) データ管理装置、データ管理方法、及びデータ管理プログラム
JP5282879B2 (ja) プライバシ情報保護システムとその方法
JP4538838B1 (ja) 仮想シンクライアント化装置、仮想シンクライアント化システム、仮想シンクライアント化プログラム、及び仮想シンクライアント化方法
JP2009169868A (ja) 記憶領域アクセス装置及び記憶領域のアクセス方法
JP6957311B2 (ja) 情報漏洩防止装置、及び情報漏洩防止プログラム
KR20080111888A (ko) 컨텐츠 보안 방법 및 그 장치
JP2011039716A (ja) 情報記憶媒体、情報システム
CN117034330B (zh) 基于macOS的安全防护方法、设备及存储介质
JP4746993B2 (ja) 情報処理装置、セキュリティシステム、書込み先切替方法、プログラム
JP2008083886A (ja) 機密情報漏洩防止方法及びシステム
EP2750068B1 (en) System and method for protecting computer resources from unauthorized access using isolated environment
JP2009245325A (ja) セキュリティ管理サーバ、セキュリティ管理システム、セキュリティ管理方法、プログラム、及び、記録媒体
CN121070527A (zh) 用于Windows的虚拟桌面沙箱隔离系统、方法、设备及介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140210

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140630

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20140630

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20140714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140722

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141010

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141111

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150210

TRDD Decision of grant or rejection written
RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20150303

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150303

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150320

R150 Certificate of patent or registration of utility model

Ref document number: 5719244

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees