JP2015166952A - 情報処理装置、情報処理監視方法、プログラム、及び記録媒体 - Google Patents
情報処理装置、情報処理監視方法、プログラム、及び記録媒体 Download PDFInfo
- Publication number
- JP2015166952A JP2015166952A JP2014041171A JP2014041171A JP2015166952A JP 2015166952 A JP2015166952 A JP 2015166952A JP 2014041171 A JP2014041171 A JP 2014041171A JP 2014041171 A JP2014041171 A JP 2014041171A JP 2015166952 A JP2015166952 A JP 2015166952A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- access
- kernel
- information processing
- evaluation
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 62
- 238000012544 monitoring process Methods 0.000 title claims description 39
- 230000010365 information processing Effects 0.000 title claims description 31
- 238000012545 processing Methods 0.000 claims abstract description 51
- 238000011156 evaluation Methods 0.000 claims abstract description 37
- 230000008569 process Effects 0.000 claims description 47
- 238000001514 detection method Methods 0.000 claims description 20
- 230000006870 function Effects 0.000 description 24
- 230000005540 biological transmission Effects 0.000 description 9
- 230000007704 transition Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 4
- 102100040553 FXYD domain-containing ion transport regulator 3 Human genes 0.000 description 2
- 101000893731 Homo sapiens FXYD domain-containing ion transport regulator 3 Proteins 0.000 description 2
- 241000700605 Viruses Species 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Landscapes
- Storage Device Security (AREA)
Abstract
【課題】不正なプログラムの実行によってリソースがアクセスされる場合であっても当該アクセスを検知して不正プログラムのカーネルへの侵入を阻止する。【解決手段】仮想マシンモニタ32は、リソースに対する処理要求のためのカーネルへのSyscall命令の発行をフックし、Exitさせるフック処理部322と、フック処理部322によってフックされたSyscall命令の正否を評価する正否評価部325と、評価結果に応じた処置の命令を発行する処置部326とを備える。【選択図】図4
Description
本発明は、プロセッサが実行する情報処理動作を監視する技術に関する。
昨今、不正かつ有害な動作を行う意図で作成された悪意のあるプログラム(以下、不正プログラム)によるファイルの書き換えやシステムの設定変更等によってコンピュータのセキュリティーが大きく損われている。不正プログラムの挙動は、外部からコンピュータ内のメモリに侵入した後、アプリケーションプログラム(AP)の実行に伴うユーザモードからカーネル空間のリソースへのアクセスに便乗して特権レベル(リング0)を取得し、以後、リソースの制御を支配することで、意図した不正行為を実行可能にする。今日、不正プログラムの実行を監視し、不正動作を規制する各種の対応ソフトウェアが提案されている。
特許文献1には、APIの利用制限を図るべく、アプリケーションの起動を検出するステップと、起動されたアプリケーションから発行されたリソースに対する処理要求を一時保留するステップと、起動されたアプリケーションが正規のアプリケーションであるか否かを認証するステップと、起動されたアプリケーションの認証結果が成功の場合にのみ、前記一時保留した処理要求による処理を許可するステップとを備えて、リソースの情報漏洩防止を図るアプリケーションの監視方法が記載されている。
特許文献2には、コンピュータ上で実行されるアプリケーションがハードディスクHDD等の記憶装置に記憶された情報にアクセスする時点で、オペレーティングシステム(OS)のフック機能を利用してこのアプリケーションをフックし、予め設定されたアクセス許容条件を満たすかどうかを判定部によって判定し、ウイルス等の不正なアクセスと判定された場合には前記記憶装置に記憶された情報のアプリケーションへの受け渡しを禁止するコンピュータの情報漏洩防止システムが記載されている。
特許文献3には、仮想マシンモニタ(VMM)をコンピュータ上で実行することで、複数のオペレーションシステム(OS)を、それぞれゲストの仮想マシン(VM)として独立的に実行させることができ、かつVMのゲストソフトウェアの挙動を監視する技術が記載されている。すなわち、VM動作中において特権を持つ、あるフォールトイベントが生じた場合、あるいはゲストソフトウェアが、特権(リング0)を持つリソースへのアクセスを試みた場合、プロセッサの制御をVMMへ遷移させるようにしている(VM終了と称する)。このVM終了に続いて、制御が遷移されたVMMに様々な処理を実行させ、その後、制御をゲストソフトウェアへ戻す(VMエントリ)ことができるようにしている。このとき、プロセッサは、VMMにより指定された、VMCS内に記憶された特権レベル終了基準に基づいてVM終了を生じさせるべきか否かを決定するために、ゲストのVMの現在の特権レベルを特権レベル監視ロジック(PLML)で評価させ、次いで現在のゲスト特権レベルが特権レベル終了基準に合うことをPLMLが決定すると、処理ロジックは、ゲストソフトウェアからVMMへのVM終了を行うようにしている。
特許文献1に記載された、リソースの情報漏洩防止を図るためのアプリケーション監視方法では、フックを行うフィルタモジュール及び認証モジュールがアプリケーションと同一プロセス空間に設けられた構成であるため、これらモジュールによるフック動作及び認証動作の両信頼性に大きな問題がある。また、フックされたアプリケーションと予め登録されているアプリケーションとのハッシュ値同士を照合によって認証し、この認証が不成功の場合、当該アプリケーションを強制終了又は管理者に通知するようにしているため、コンピュータの動作が停止してしまう場合があるという問題がある。
特許文献2に記載された情報漏洩防止システムは、ファイルシステムの入出力に関する機能を対象とするもので、アクセス許容条件として、コンピュータのユーザインタフェースを介して入力される、ファイルデータの書き込みなどの操作を表すIOタイプ、アプリケーション名、データ・ファイル名、実行プログラムの実行制約条件(日時、範囲等)などの所定のチェック項目を活用し、これによってユーザの設定によりファイルシステム自身にウイルスに対する監視機能と判断機能を保持させるものである。従って、ファイルデータの読み出しと関連せず、ユーザ空間からカーネル空間のリソースへアクセスするプロセス全般に対して適切な監視を行うには限界がある。
また、特許文献3に記載された発明は、VM終了の判断が現在の特権レベルを基準としたものであり、しかも不正プログラムのハードウェア資源への侵入プロセスに対する対策は示唆されていない。
本発明は、上記に鑑みてなされたもので、リソースに対する処理要求のためのカーネルへのアクセス命令を検知し、当該アクセス命令の正否を評価し、その評価結果に応じた処置の命令を発行する情報処理装置、情報処理監視方法、プログラム、及び記録媒体を提供することにある。
本発明に係る情報処理装置は、リソースに対する処理要求のためのカーネルへのアクセス命令の発行を検知する検知手段と、前記検知手段によって検知された前記アクセス命令の正否を評価する評価手段と、評価結果に応じた処置の命令を発行する処置手段とを備えたものである。また、かかる構成を各手段としてプロセッサを機能させるプログラム、記録媒体とし、さらに情報処理監視方法としたものである。
これらの発明によれば、リソースに対する処理要求のためのカーネルへのアクセス命令が発行されると、検知手段によってこのアクセス命令が検知される。検知は、特権命令違反や仮想マシンモニタを利用する方法がある。検知手段によって検知されたアクセス命令は、評価手段によって正否が評価される。評価は、不正プログラムの可能性に関連する方法で行われる。そして、処置手段によって、評価結果に応じた処置の命令が発行される。評価結果とは、評価が正当な場合と不当な場合とを想定しており、いずれの場合にも、処置手段によって新たに命令を発行するようにし、発行元からの原アクセス命令を不使用としている。従って、不正プログラムのカーネルを介してのリソースへの侵入、さらに潜伏が阻止される。
また、前記アクセス命令を無効にする無効手段を備えることが好ましい。検知されたアクセス命令の内容を変更したり、そのままアクセスさせた直後に元に書き直したりする方法も考えられる(請求項1に含まれる態様)が、より好ましくは、無効手段によって原アクセス命令を無効にすることで、不正プログラムの感染の危険をより抑止するようにしている。
また、仮想マシンの動作を監視する仮想マシンモニタを含み、前記検知手段、前記評価手段及び前記処置手段は、前記仮想マシンモニタに備えられ、前記検知手段は、前記アクセス命令が前記仮想マシンから発行される時点で制御を前記仮想マシンモニタに遷移させることが好ましい。この構成によれば、仮想マシンからの前記アクセス命令を仮想マシンモニタで監視するようにしたので、仮想マシンのカーネルを特権命令を変更することなくそのままロードして実行させることが可能となる。
また、前記アクセス命令を無効にする無効手段が、前記仮想マシンモニタに備えられることが好ましい。この構成によれば、原アクセス命令を無効にすることで、不正プログラムの感染の危険がより抑止される。
また、前記検知手段は、前記アクセス命令を無効オペコード違反として検知することが好ましい。この構成によれば、問題となるアクセス命令が確実に検知可能となる。
また、前記アクセス命令は、シスコール命令であり、前記評価手段は、前記シスコール命令を構成するAPIに関する情報との照合に基づいて正否を評価することが好ましい。この構成によれば、アプリケーションプログラムからリソースへのアクセスを可能にするシスコール(Syscall)命令に注目して検知し、シスコールを構成するAPI(Application Programming Interface)に関する情報、例えば属性、格納場所、出典等を参照情報等と照合することで正否評価するので、不正なプログラムか否かが適正に評価される。
また、前記処置手段は、前記評価手段が前記アクセス命令を正当と判断した場合、前記アクセス命令と同一の内容を前記カーネルへ発行し、前記評価手段が前記アクセス命令を不当と判断した場合、前記アクセス命令をスルーする命令を前記カーネルへ発行するか、又は前記アクセス命令をスキップする命令を前記アクセス命令の発行元に戻すことが好ましい。この構成によれば、アクセス命令が正当、不当いずれの場合であっても、処置手段によって新たに命令を作成するので、不正プログラムの感染の危険が抑止される。
本発明によれば、不正プログラムの実行によってリソースがアクセスされる場合であっても当該アクセスを検知して、不正プログラムのカーネルを介してのリソースへの侵入を阻止することができる。
図1は、本発明に係る情報処理装置の一実施形態を示す構成図である。本発明が適用される情報処理装置1としては、コンピュータを内蔵するサーバ装置、汎用パーソナルコンピュータ、携行用の情報処理端末等、更にはネットワークを介して通信する機能を備えた各種の情報処理装置を含む。
情報処理装置1は、マイクロコンピュタで構成され、プロセッサとしてのCPU(Central Processing Unit)11を含むチップセットとしてのハードウェア部(HW)10を備える。CPU10は、バスBAを介してフラッシュROM(Read Only Memory)21とハードディスクドライブ(HDD)22とを含む補助記憶装置20、RAM(Random Access Memory)30、入力部40、出力部50、及び必要に応じて設けられるログ記憶部60と接続されている。
フラッシュROM21は、BIOS(Basic Input/Output System)を格納する。HDD22は、各種プログラム及び必要なデータ類を格納する。本実施形態では、情報処理装置1を仮想マシンに適用した例で説明する。HDD22に格納される各種プログラムは、図2に示すように、ハードウェア部(HW)10と、RAM30に読み出(ロード)された機能を表したソフトウェア(SW)とを備える仮想マシン環境を構築するのに必要な各プログラム及びデータを含む。詳細は図2において説明する。
RAM30は、情報処理装置1が起動する際に補助記憶装置20に格納されているプログラム等がロードされると共に、処理途中の情報が一時的に格納される。情報処理装置1は、補助記憶装置20に格納されているプログラム等がRAM30にロードされ、CPU11によって実行されることで、図4に示すように各種の処理実行部として機能する。
入力部40は、テンキー等を備えたキーボードやマウス、タッチパネル等を含み、所要の情報の入力や処理の指示を行うものである。出力部50は、画像を表示する表示部を想定している。なお、出力部50としては、プリンタ部やインターネット等のネットワークに接続して情報の授受を行う通信部等でもよく、更にこれらが併設されたものでもよい。ログ記憶部60は、後述するように、情報処理装置1の動作中において発生する、リソースに対する処理要求である特権命令によるアクセス(Syscall、Sysenter、コールゲート等)の履歴(プログラム)及び、かかる命令に関する処理内容のログを経時的に記録する。
図2は、情報処理装置1が仮想マシンに適用された場合の機能構成図の一例を示すもので、CPU11を含むハードウェア部(HW)10と、RAM30にロードされたソフトウェア部(SW)とで構成される。
ハードウェア部10は、プロセッサとしてのCPU11の他、仮想化支援技術12(VT)と、RAM(Random Access Memory)等から構成される仮想マシン毎の制御機構であるVMCS(Virtual Machine ControlStructure)13と、RAMからなるEPT(Extended Page Table)14とを備える。また、ハードウェア部10は、現在のCPU11の状態を表すフラグレジスタやMSR(Model Specific Register)1111、データ格納用の汎用レジスタ1112の他、メモリのアドレス指定等に関係するインデックスレジスタや特殊レジスタ、メモリ管理方式に関係するセグメントレジスタ等を備えたレジスタ群111を有する。レジスタ群111には、前記のようにCPU11の動作状態、動作指示を示すフラグやデータ等が設定される。
ソフトウェア部(SW)は、1つ以上のゲストOS(ゲストソフトウェア)である仮想マシンVM31と、ホストOS(ホストソフトウェア)である仮想マシンモニタVMM32とを備える。なお、図2では仮想マシンVM、VM−2のように2つ示しているが、以降では仮想マシンVM31を代表にして説明する。
ホストソフトウェアであるVMM32は、補助記憶装置20内のHDD22に格納されており、情報処理装置1の起動を受けてHDD22からRAM30の所定領域(領域A、図3参照)にロードされる。VMM32には、本発明に係る監視ソフトウェア(図3参照)が含まれ、VMM32のロードに併せてロードされる。仮想マシンであるVM31のゲストソフトウェアは、ロードされたVMM32が起動されて、それらの管理下でRAM30の所定領域にロードされる。VM31のロード時には、VM31のゲストソフトウェアを動作させるためのGDT(Global Descriptor Table)、IDT(InterruptDescriptor Table)、さらにGDTからのリニアアドレスを物理アドレスに変換するPTE(Page Table Entry)等を含むシステムテーブル31Aが作成される。
VM31は、ゲストソフトウェアとして、図3に示すようにオペレーティングシステムOS(主にカーネル(Kernel))311及びカーネル311の環境下で動作する各種のアプリケーションプログラムであるAP(1)312〜AP(n)313を含む。カーネル311は、図3に示すようにRAM30の領域Bに格納される。さらに、AP(1)312〜AP(n)313からOS(カーネル)311へのアクセスを実行するための関数であるAPI(Application Programming Interface)の動的なリストであるダイナミックリンクライブラリdll(dynamic link library)(API)314を備える。AP(1)312〜AP(n)313及びdll(API)314は、図3に示すようにRAM30の領域Cに格納される。dll(API)314で作成された、リソースへの処理要求の際の特権レベル0でのカーネル311に対して発行されるAPI構造をSyscall命令という。
なお、APIとは、複数のプログラムが共通に利用できる種々の機能(ソフトウェア)の呼び出し時の手順やデータ形式などを定めた仕様をいう。dll(API)とは、モジュール化して実装されたAPIを、動的なリンクによって実行時にプログラムの結合を行うようにした共有ライブラリをいう。
図4は、VMM32が実行する監視ソフトウェアの一例を示す機能構成図である。VMM32は、RAM30にロードされたプログラム及びハードウェアによる処理を実行することによって、ロード処理部321、フック処理部322、モード切替部323、フック内容分析部324、正否評価部325、処置部326、環境監視部327、及びログ処理部328として機能する。
ロード処理部321は、HDD22からRAM30にロードされたMBR(Master Boot Record)によってRAM30にロードされたVMM32のホストソフトウェアが起動して、VMM32環境の設定と、カーネル311等のロードの指示、及びロード中の監視を行う。上記において、VMM32はRAM30の領域Aにロードされる際に自己のシステムテーブルを作成し、そのうちのGDTやPTEに高い特権レベル0(リング0)の設定を行う。また、VMM32は、通常と同様に、すなわちカーネル311を特権レベル0(リング0)でロードさせ、AP(1)312〜AP(n)313及びdll314を特権レベル3(リング3)でロードさせる。さらに、ワーク領域となる物理アドレスもVMM32のロード領域以外の、それぞれの領域B、C内に設定する。
VMM32は、後述する各種の機能を実行するソフトウェア及びデータ類を備え、レジスタ群111及びVMCS13のデータ領域を利用してVM31の動作を制御する。より具体的には、VMM32は、概ね、(1)ゲストソフトウェアをVM31として実行するモードへの遷移プログラム(及び復帰プログラム)の設定、(2)CPU11の制御をVMM32に渡してVMXrootモードとするExit命令、逆にCPU11の制御をVM31に渡してVMXnon−rootモードとするEntry命令をVT12にセットする処理、(3)VM31が実行する各種のゲストソフトウェア中の、仮想化に影響のある問題命令(フォールトイベント)、その他の例外や割込対象となる命令等をそれぞれ各フック対象とするためのデータのレジスタ群111への設定、(4)チップセット内のレジスタ群111(例えば命令ポインタEIP(InstructionPointer)やMSR1111等)に書き込まれるVMM32、VM31動作時のレジスタ内容(状態を表すフラグや値)及びVM31動作時の物理アドレス−物理アドレスの変換テーブル内容であってEPT14に書き込まれる内容を、VMXrootモードとVMXnon−rootモードとの切り替え毎に、VMCS13内の対応する領域にセーブとロード(なお、ロードとはCPU11のレジスタ群111等への書き込み)とを行わせる(なお、MSR1111へのセーブとロードとはレジスタ群111のみで行われる。)プログラムの処理、(5)VM31の動作中にVMCS13による、前記(3)で設定した各命令の発行の有無の監視機能のVT12への設定を行う機能を備える。
VMCS13は、Entry/Exit 時のレジスタ群111、EPT14等の内容を保持したり、振る舞いを制御したりするためのデータ構造体である。VMCS13内のゲスト側のリスト131には、前記(3)で設定した内容、すなわちExit原因に該当する照合用データが全て設定されている。Exit原因としては、各種の例外、割込、無効オペコード違反の発生等がある。本実施形態では、前述のリソースへの処理要求を発行する特権リング0でのアクセス、ここではSyscall命令は、無効オペコード違反(Invalid Opcode Fault)として設定している。無効オペコード違反とは、例えば正当なコンピュータ命令が存在しない場合とかプロセッサが無効なオペランドを含む命令を実行しようとした場合をいい、無効オペコード違反の種類によっては、この違反から回復できず、すなわちシステムの再起動又はシャットダウンを強いられる。リソースへの処理要求のためのアクセス手段がSyscall命令であることから、Syscall命令中に不正プログラムが関与(潜伏など)する可能性を考慮して、本実施形態では、Syscall命令を一律に無効オペコード違反とするフック対象としている。
より具体的には、フック処理部322は、前記VMM32の行う機能の内の(3)〜(5)の他、レジスタ群111のMSR1111の内、Syscall命令に関するレジスタに対してdisableのフック条件設定を行う。VM31動作中に、図3に示すように、例えばAP(1)312が、所定のリソースへの処理要求を発する場合、dll(API)314に対してアクセスし(図3、工程(1)参照)、APIを構築してSyscall命令を作成する(図3、工程(2)参照)。次いで、Syscall命令は特権レベル0でカーネル311にアクセスする(図3、工程(3)参照)。このとき、Syscall命令を発行すると、フック処理部322によって無効オペコード違反としてフックされ、この無効オペコード違反がVMCS13のリスト131に設定されている結果、VT12の監視ロジックによる照合によって、CPU11にExit命令を発行するようにし、モード切替部323によってCPU11の制御がVMXrootモードに遷移する(図3、工程(4)参照)。VT12は、VMM32が実行可能なハードウェアで構成された仮想化支援技術である。VT12は、Exit命令を受けた時点のVM31の状態、例えばExitの原因となった無効オペコード違反の内容をVMCS13にセーブする。
ところで、無効オペコード違反となる対象は、Syscall命令以外にもあることから、VT12がExitを発生した状態でVMXrootモードに遷移したVMM32によって、Exit原因の分析、さらにSyscall命令の分析が行われる。すなわち、Syscall命令に関してはExit直後に一律に無効処理対象(例えばSyscall命令自体の破棄)とする一方、その正否(正当性)の評価結果に応じてVMM32の処置部326が後述する処置を行うようにしている(図3、工程(51),(52)参照)。次いでVMM32のモード切替部323は、VT12を介するEntry命令を受けてVMXnon−rootモードに遷移する。
VMM32は、Exit命令を受けるとモード切替部323によってVMXrootモードに遷移し、フック内容分析部324によってExit発行の原因となったプログラム命令を分析する。フック内容分析部324は、Exit発生時にVMCS13にセーブされたEXITReason(Exitの原因)を参照して、例えば無効オペコード違反が発生したことを認識する。また、フック内容分析部324は、VMCS13内にセーブされた命令ポインタEIPのデータ、すなわち無効オペコード違反が発生した命令の実行アドレスを参照して、原因がSyscall命令であったか否かを判断する。
さらに、正否評価部325は、原因がSyscall命令であった場合、その時点でVMCS13にセーブされた、汎用レジスタ1112内の例えばeax、ebx、ecx、edxの各レジスタ等や直前の処理内容を退避保存しているスタックの内容(Syscall命令のコード等)からカーネル311の呼び出し機能とそのパラメータの正否を判断する。ここでいう正否とは、Syscall命令が不正プログラムによって発行された可能性の有無の評価に関する。なお、VMM32の例えば正否評価部325は、この時点で、Syscall命令の実行先となる物理アドレスへの書込を無効とするコマンドを設定する。あるいは、他の処理部例えばフック処理部322で、無効オペコード違反が判別された乃至はExitの時点で、前記無効とするコマンドを設定してもよい。
正否評価部325による、カーネル311の呼び出し機能とそのパラメータの正否の判断は、予め設定された、VMM32内の参照情報32A、及びVM31のロード領域内にロードされるプロセス管理情報31Bのそれぞれの属性情報を利用して、例えば照合によって行われる。参照情報32Aは、Syscall命令を構成するAPIのコードの内、不当性が高い候補が設定されている。不当性が高いAPI候補としては、例えば、(a)現状では未使用乃至は非公開のAPI、(b)C:¥ WINDOWS(登録商標)やC:¥ ProgramFiles 配下のファイルへの読み書き(改竄や新たな作成など)、(c)カーネルから付与される権限(Token)の制御(例えば、ユーザ権限から管理者権限への昇格要求など)がある。また、プロセス管理情報31Bは、AP(1)312〜AP(n)313について、スレッドやプロセスの関連を記述するPCR(Processor Control Region)を参照して、(a)動作を許可されているAPかどうか(例えば、APのパス(フォルダ)がインストールの許可がなされているフォルダであるかどうか)、(b)データの書込先のフォルダが書込許可されているフォルダであるかどうかを判断するものである。また、(c)APIがどのプロセス(アプリケーションプログラム)から発行されたかを含めて区別する、例えば通信する筈のないプロセスが通信のAPIを発行したかどうか、(d)通信のAPIを発行したプロセスが人が操作するプロセスによって生成されたプロセスであったかどうかを区別する内容を含めることで、入力部40を経由しての人為的な操作に依拠するものか、プログラムに依拠する(一般的には不正プログラム)ものかの区別を可能にすることが好ましい。正否評価部325は、参照情報32A及びプロセス管理情報31Bの内、少なくとも参照情報32Aの情報との参照によって正否の判断を行う。
処置部326は、評価結果が正当であると判断された場合、カーネル311へ制御を移行する代行して処理を行う(図3、工程(51)参照)。カーネル311へ制御を移行する代行処理は、VMCS13の命令ポインタEIPをカーネル311のエントリポイントに書き替えると共に、エントリポイントのスタックの内容を書き替えて、VT12に対してEntry命令の発行を指示する。処置部326は、カーネル311への制御のための命令として、無効オペコード違反として無効にしたSyscall命令と同一内容を発行する。
一方、処置部326は、不当であると判断した場合、カーネル311へ制御を移行するか(図3、工程(52)参照)、あるいはSyscall命令に続く次の命令を発行元のAPに戻す(図3、工程(52−2)参照)処置を行う。カーネル311へ制御を移行する処置は、正当の場合と同様な手順で行う。なお、処置部326によって作成されるSyscall命令は、プログラムの強制終了を指示するもの、すなわち何らの処理を行うことなく(スルーさせて)、リターンさせるものである。また、Syscall命令に続く次の命令を発行元のAPに戻す処理は、Syscall命令のバイト数分だけ加算して、VT12に対してEntry命令の発行を指示する。Syscall命令のバイト数分だけ加算したアドレスに戻してEntryさせることで、Syscall命令をスキップしたと同様に、続きの命令に制御が戻されることになる。
環境監視部327は、VM31の稼働中に、MSR1111の内のSyscall命令に関するレジスタへの書込命令のアクセスを受けると、Exitするように設定する。すなわち、VMCS13のリスト131に、MSR1111の内のSyscall命令に関するレジスタへの書込命令wrmsrをExit対象とするよう含める。VMM32はVM31のカーネル311をリング0として動作させているため、特権命令は例外とならない。従って、VMM32のExit機能を利用する必要がある。VM31のカーネルがMSR1111内のSyscall命令に関するレジスタへの書込のためのwrmsr命令を発行すると、VT12によってExit命令が発行され、CPU11のモードがVMX-rootモードに切り替わる。このモードにおいて、環境監視部327は、Exit時点でVMCS13に格納されたEXITReason(Exitの原因)を参照して、原因がカーネルによるwrmsr命令であるかどうかを判断する。環境監視部327は、Exit原因がwrmsr命令であった場合、MSR1111内の当該レジスタのDisable bitに0を書き込む。さらに、環境監視部327は、VM31に制御を戻すべく、VMCS13のEIPに、wrmsr命令のバイト数分加算して、Entry(vmresume命令)を発行することで、VM31の前記wrmsr命令に続く次の命令に制御を戻す。これによって、VM31稼働中におけるCPU11からの、MSR1111の内のSyscall命令に関するレジスタへの不当な書込命令に対してかかる書込命令無効処理を施すことで阻止することができ、その結果、Syscall命令を無効オペコード違反としてExit対象とするためのMSR1111の監視可能状態を維持できる。
ところで、VM31の稼働中は、レジスタ群111等の管理はVM31を制御するCPU11にあることから、レジスタ群111内の特定のレジスタ等の内容が悪意のプログラムによって書き替えられる可能性がある。そこで、環境監視部327は、レジスタ群111内の特定のレジスタ等への書き込みのアクセスが発行されると、このアクセスに対してExit命令が発行されるように、リスト131にExit対象として設定する。この結果、特定のレジスタ等への書き込みのアクセス命令は、VMCS13のリスト131によってフックされ、VT12によってExit命令が発行される。特定のレジスタ等とは、CPU11の動作に必要とされる根本的な環境設定値が設定されるレジスタ(及びVMCS13)である。なお、根本的な環境設定値には、下記のものを含む。環境監視部327は、これらの環境設定値が設定される特定のレジスタ等へのアクセス、特に書込アクセスを、一般保護例外あるいは無効オペコード違反等としてExitし、後述するように、CPU11をVMX−rootモードに遷移させてアクセスを阻止(無効、禁止、元に戻すなど)した後、EntryさせてVMXnon−rootモードに戻すようにしている。
根本的な環境設定値には、(1)プロセス管理情報(Windows(登録商標) OSのPCR,PRCB,ETHREAD,EPROCESSなど)を指すOS(カーネル)の環境設定値、(2)コントロールレジスタ(CR0,CR4,CR3)、デバッグレジスタ(DR0〜DR7)、MSR(IA32E_EFERなど)、及びGDTR、IDTR、LDTRへのアクセスをVMCS13の設定によりExitさせ、監視するためのCPU11の環境設定値、(3)VMCS13への設定により、CPU11のクロック(Clock)カウントのしきい値をもってVM31をExitさせ、VMM32のExective(VM31のカーネル状態をチェックしたり、PTEのチェックを行う)にスイッチさせるためのCPU Clockの環境設定値、(4)VM毎に作成するVMCSはVMM32内の物理メモリ領域に作成し、VM側からは使用不可領域としている。この使用不可領域への強制アクセスを考慮しEPTによってアクセス監視を行う。また、VMCSに対するアクセス命令(vmread,vmwrite)もExitするためのVMCS13の環境設定値、(5)カーネルに依頼する直前とカーネルからの戻り直後のパラメータやデータを監視するAPIの環境設定値、(6)コンピュータの電源制御とハードウェア構成要素を規格化したもので、VMM32が構成する物理メモリマップがVM31に分からなくするためのACPI(Advanced Configuration and PowerInterface)の環境設定値、(7)VM31がリアルモードの時にソフトウェア割込みを使用して使用されるBIOS Functionの改ざんや不正使用を防止する目的でリアルモードの割込ベクタをフックするためのBIOSジャンプ命令の環境設定値、(8)ドライバにより「CPU11の環境設定値」を変更しようとした場合、その命令を無視してアンロードし、また、アプリケーションからドライバのロードを禁止するためのKernel Driverの環境設定値が含まれる。
また、ログ処理部328は、リスト131に設定されたExit原因が発生した際の当該プログラム内容を全てログ記憶部60に経時方向に格納する。好ましくは発生時刻情報を含めて格納する。ログ記憶部60がインターネット等のネットワークを介してデータサーバ装置としての位置づけである場合、送信元IPアドレスを付して送信し格納させる。外部のデータサーバ装置の場合には、IPアドレス毎にソートすることで、情報処理装置毎のログ管理が可能となる。なお、ログ情報としては無効オペコード違反のSyscall命令が少なくとも含まれていればよい。また、ログ処理部328の機能は、フック内容分析部324〜処置部326、環境監視部327の機能部分とは無関係な態様で、あるいは環境監視部327の機能部分とは無関係な態様で、不正プログラムの挙動の可能性のあるアクセスのログを保管するという課題解決手段を構成する。この場合、Syscall命令を無効オペコード違反以外でExit対象としてもよい。そして、Exit時点でセーブされた内容をログ記憶部60に取り込むようにしてもよい。このように、全ての乃至は特定範囲内のExit原因となるプログラムを、VMM32の管理下でログ保管用として格納することで、格納が適正に行われる。なお、従来、例えば特開2012−194814号公報には、VMMのメモリアクセス監視部31が、監視対象プロセス50が図示しない仮想メモリ上で実行する展開処理に係る読み込み命令及び書き込み命令それぞれについて、データが読み書きされたメモリアドレス、読み書きされたデータの値、プログラムカウンタなどをログとして取得することで、アンパッキングに係る作業の効率化を可能にするものが記載されている。一方、本実施形態によれば、後に、ログ記憶部60のセーブ内容を分析することで、異常動作や処理があった場合に対する確実かつ適正な事後解析に供することが可能となる。また、解析を通して、以後の教訓材料とすることができ、不正の抑止効果にもつながる。
なお、本実施形態におけるログ対象情報としては、プロセス一覧、ファイルI/Oログ、ネットワーク送受信ログ、環境設定値アクセスログ、及び監視及びロギング内容の少なくとも1つ乃至は全てが含まれる。プロセス一覧は、実行されたプログラムはプロセスとしてOSに管理され、PCRに格納される。実行されたプロセスは、必ずSyscallを経てカーネル311とのやり取りが発生するため、実行されたプロセスの一覧が取得できる。取得情報としては、例えば、プログラムファイル名とそのパス、プロセスID、起動時間を含む。これらを取得することで、不知もしくは不要なプログラムの実行の有無が把握できる。また、取得情報から異常なプログラムか否かが判断できる。
ファイルI/Oログは、Syscall時点でのAPI機能番号(レジスタeax)より、ファイルI/Oの要求を取得し、そのパラメーター値(汎用レジスタ1112の内容やスタック内のデータ)からファイルパス及びその操作(読み書き)として取得される。取得情報としては、例えば、ファイルパス、操作方法(書き込みもしくは読み込み)、プロセスIDを含む。これらを取得することで、プログラムファイルの書込みやシステムフォルダもしくはユーザ指定の特定フォルダに対する操作から不正の有無が判断できる。
ネットワーク送受信ログは、Syscall及びSysret時点でのAPI機能番号(レジスタeax)より送受信要求を取得し、そのパラメーター値(汎用レジスタ1112の内容やスタック内のデータ)から送受信データ及びその操作(connect、send、receive、accept)として取得される。取得情報としては、例えば、操作方法(connect、send、receive、accept)、送受信テータ、送受信ポート、送受信IPアドレス(IPV4及びIPV6)を含む。これらを取得することで、情報漏洩の基本となる送受信操作が監視できる。また、送信先IPアドレス及び受信元IPアドレスを元に不正アクセスが追跡できる。さらに送受信データの解析に基づく保護を可能とする。
環境設定値アクセスログは、カーネルモードからの不正操作がSyscallを介さないため、環境設定値へのアクセスが監視されており、その監視内容として取得される。取得情報としては、例えば、MSR1111へのアクセスとその内容、コントロールレジスタ(CR0, CR2,CR4)へのアクセスとその内容、デバッグレジスタへのアクセスとその内容、キャッシュ制御命令の実行、CPUID命令の実行、VMM拡張命令の実行(VMCSアクセス命令を含む)、VMM実行メモリ空間へのアクセス(VMCS13を含む)、ページテーブルPML4へのアクセス、ソフトウェア割込み命令の実行、CPUシステムテーブル(GDT、IDT、LDT、TSS)へのアクセスとロード命令、実行EIPとそのモジュール名(カーネルプログラムやカーネルドライバ)、及び未使用割込みベクタへの割込みと割込み先実行コードを含む。
監視及びロギング内容には、物理アドレス1Mbyte以下へのアクセスを含む。これは、OS起動後、使用されない領域であるため、不正利用と見なすことができる。物理アドレスACPI管理テーブルへのアクセスは、端末情報の不正取得と見なすことができる。全ページテーブルに対するデバイスアクセス(MMIO)物理アドレスの設定は、カーネル以外からの直接デバイスアクセスは不正と判断できる。カーネルプログラム領域の比較は、カーネルプログラムの改ざんをチェックできる。
図5は、情報処理装置1の起動処理の一例を示すフローチャートである。情報処理装置1の電源が投入されると、フラッシュROM21からBIOSがRAM30の所定領域にロードされ、次いでBIOSが起動される(ステップS1)。BIOSはHDD22からMBRをRAM30にロードし、このMBRによってHDD22のアクティブな先頭パーティションが指定されて、ここに格納されているVMM32のホストソフトウェアが、前述したようにして、RAM30の領域Aにロードされ、次いで、その一部のOSローダが起動される(ステップS3)。OSローダによって各VMのOS(カーネル)が、前述したようにロードされて、順次起動され(ステップS5)、次いでVM毎にアプリケーションソフトウエアAPが、前述したようにロードされる(ステップS7)ことで、起動処理が修了する。
図6は、Syscall監視処理の一例を示すフローチャートである。まず、VMM32が起動された状態にあり、VMM32によって、動作予定のVM(ここではVM31)をEntryするべくVMCS13が作成されて、VMXnon−rootモードへ切り替えられる(ステップS11)。VM312に動作中において、無効オペコード違反となるアクセス、例えばSyscall命令が発行されると、当該命令がフックされる(ステップS13)。無効オペコード違反はVMCS13のリスト131にExit対象として設定されていることから、Exitが発行され、CPU11はVMXrootモードに遷移する(ステップS15)。次いで、フック内容分析部324によって、Exit原因となった無効オペコードに対して分析が行われる(ステップS17)。分析の結果、その原因がSyscall命令以外であれば(ステップS19でNO)、他の無効オペコードに対する対応処理が施される(ステップS21)。
一方、原因がSyscall命令の場合(ステップS19でYes)、正否評価部325によって正否の評価が行われ(ステップS23)、処置部326によって評価結果に応じた対応処理が実行される(ステップS25)。次いで、VMM32によってVMXnon−rootモードへの遷移指示が発行されると、VT12によってEntry処理が施され(ステップS27)、CPU11の制御がVM31に戻る。そして、VM31の動作状態が終了したか否かが判断され(ステップS29)、終了していなければ、ステップS13に戻り、終了したのであれば本フローを抜ける。
図7は、MSR監視処理の一例を示すフローチャートである。まず、ステップS11と同様、VMXnon−rootモードへ切り替えられる(ステップS41)。VM31の動作中において、フックの対象となるアクセス、例えばMSR1111内のSyscall命令に関するレジスタへの書込のためのwrmsr命令が発行されると、当該命令がフックされる(ステップS43)。当該命令は、リスト131に設定された内容と一致するアクセスであことから、VT12によってExitが発行され、CPU11はVMXrootモードに遷移する(ステップS45)。次いで、EXITReason(Exitの原因)を参照する分析が行われる(ステップS47)。分析の結果、原因がカーネルによるwrmsr命令以外であれば(ステップS49でNO)、他の対応処理が施される(ステップS51)。
一方、原因がカーネルによるwrmsr命令の場合(ステップS49でYes)、環境監視部327によって、前述した書込命令無効処理が実行される(ステップS53)。次いで、VMM32によってVMXnon−rootモードへの遷移指示が発行されると、VT12によってEntry処理が施され(ステップS55)、CPU11の制御がVM31に戻る。そして、VM31の動作状態が終了したか否かが判断され(ステップS57)、終了していなければ、ステップS43に戻り、終了したのであれば本フローを抜ける。
図8は、ログ処理の一例を示すフローチャートである。まず、Syscall命令がフックされたかどうかが判断され(ステップS71)、フックされていなければ、本フローを抜ける。一方、フックされた場合、前述したようにVT12を介して、Exit処理が実行されて(ステップS73)、CPU11の制御がVMM32に移行する。VMM32は、Exit発生原因をVMCS13を参照して、ログ記憶部60に読み出して、記録する(ステップS75)。次いで、Entry処理が実行されて(ステップS77)、VM31の動作の終了まで(ステップS79でNO)、同様なログ処理が継続される。ここでは、Syscall命令をログ対象としたが、特定のフック理由、例えば無効オペコード違反に該当する命令をログ対象とする場合も同様となる。
図9は、環境監視処理の一例を示すフローチャートである。まず、ステップS11と同様、VMXnon−rootモードへ切り替えられる(ステップS101)。VM31の動作中において、フックの対象となるアクセス、すなわち前記した根本的な環境設定値が設定されたレジスタ群111やVMCS13(リスト131と一致するレジスタ等(特定のレジスタ等))へのアクセス命令が発行されると(ステップS103)、当該命令がフックされ、VT12を介してExitされる(ステップS105)。CPU11はVMXrootモードに遷移し、次いで、EXITReason(Exitの原因)を参照する分析が行われる(ステップS107)。分析の結果、原因が特定のレジスタ等への書込アクセス命令以外であれば(ステップS109でNO)、他の対応処理が施される(ステップS111)。
一方、原因が特定のレジスタ等への書込アクセス命令の場合(ステップS109でYes)、環境監視部327によって、前述したようにアクセスを阻止する処理が実行される(ステップS113)。次いで、VMM32によってVMXnon−rootモードへの遷移指示が発行されると、VT12によってEntry処理が施され(ステップS115)、CPU11の制御がVM31に戻る。そして、VM31の動作状態が終了したか否かが判断され(ステップS117)、終了していなければ、ステップS103に戻り、終了したのであれば本フローを抜ける。これによって、仮にVM動作中に不正プログラムによって、リソースに対する処理要求が意図されても、その命令は阻止、無効とされる。
なお、本実施形態では、Syscall命令を無効オペコード違反としてExit対象とごしたが、無効オペコード違反に限定されず、Exit対象としてフックできれば他の条件でフックするようにしてもよい。
また、本実施形態では、Intel(登録商標)VMMに基づいて説明したが、これに限定されず、AMD社のVMM、ゲストカーネルをリング1あるいは2(ゲストアプリケーションをリング3など)で制御する態様にも同様に適用可能である。
また、環境監視部327の機能は、Syscall命令を無効オペコード違反としてExitし、分析し、正否評価し、さらに代行して処置する機能部分と(前記実施形態のように)関連させる場合の他、それらとは無関係に、根本的な環境設定値の適正保持を目的とした課題解決手段である。
1情報処理装置
11 CPU(プロセッサ)
111 レジスタ群
12 VT
13 VMCS
131 リスト
30 RAM
31 VM
32 VMM
322 フック処理部(検知手段)
324 フック内容分析部(検知手段)
325 正否評価部(評価手段、無効手段)
326 処置部(処置手段)
327 環境監視部
328 ログ処理部
60 ログ記憶部
11 CPU(プロセッサ)
111 レジスタ群
12 VT
13 VMCS
131 リスト
30 RAM
31 VM
32 VMM
322 フック処理部(検知手段)
324 フック内容分析部(検知手段)
325 正否評価部(評価手段、無効手段)
326 処置部(処置手段)
327 環境監視部
328 ログ処理部
60 ログ記憶部
Claims (10)
- リソースに対する処理要求のためのカーネルへのアクセス命令の発行を検知する検知手段と、
前記検知手段によって検知された前記アクセス命令の正否を評価する評価手段と、
評価結果に応じた処置の命令を発行する処置手段とを備えた情報処理装置。 - 前記アクセス命令を無効にする無効手段を備えた請求項1に記載の情報処理装置。
- 仮想マシンの動作を監視する仮想マシンモニタを含み、
前記検知手段、前記評価手段及び前記処置手段は、前記仮想マシンモニタに備えられ、
前記検知手段は、前記アクセス命令が前記仮想マシンから発行される時点で制御を前記仮想マシンモニタに遷移させる請求項1に記載の情報処理装置。 - 前記アクセス命令を無効にする無効手段が、前記仮想マシンモニタに備えられたことを特徴とする請求項3に記載の情報処理装置。
- 前記検知手段は、前記アクセス命令を無効オペコード違反として検知することを特徴とする請求項3又は4に記載の情報処理装置。
- 前記アクセス命令は、シスコール命令であり、
前記評価手段は、前記シスコール命令を構成するAPIに関する情報との照合に基づいて正否を評価することを特徴とする請求項3〜5のいずれかに記載の情報処理装置。 - 前記処置手段は、前記評価手段が前記アクセス命令を正当と判断した場合、前記アクセス命令と同一の内容を前記カーネルへ発行し、前記評価手段が前記アクセス命令を不当と判断した場合、前記アクセス命令をスルーする命令を前記カーネルへ発行するか、又は前記アクセス命令をスキップする命令を前記アクセス命令の発行元に戻すことを特徴とする請求項3〜6のいずれかに記載の情報処理装置。
- リソースに対する処理要求のためのカーネルへのアクセス命令の発行を検知する検知工程と、
前記検知工程によって検知された前記アクセス命令の正否を評価する評価工程と、
評価結果に応じた処置の命令を発行する処置工程とを備えた情報処理監視方法。 - リソースに対する処理要求のためのカーネルへのアクセス命令の発行を検知する検知手段、
前記検知手段によって検知された前記アクセス命令の正否を評価する評価工程、
及び評価結果に応じた処置の命令を発行する処置工程としてプロセッサを機能させる
プログラム。 - リソースに対する処理要求のためのカーネルへのアクセス命令の発行を検知する検知手段、
前記検知手段によって検知された前記アクセス命令の正否を評価する評価工程、
及び評価結果に応じた処置の命令を発行する処置工程としてプロセッサを機能させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014041171A JP2015166952A (ja) | 2014-03-04 | 2014-03-04 | 情報処理装置、情報処理監視方法、プログラム、及び記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014041171A JP2015166952A (ja) | 2014-03-04 | 2014-03-04 | 情報処理装置、情報処理監視方法、プログラム、及び記録媒体 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018151044A Division JP2018174001A (ja) | 2018-08-10 | 2018-08-10 | 情報処理装置、情報処理監視方法、プログラム、及び記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015166952A true JP2015166952A (ja) | 2015-09-24 |
Family
ID=54257792
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014041171A Pending JP2015166952A (ja) | 2014-03-04 | 2014-03-04 | 情報処理装置、情報処理監視方法、プログラム、及び記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015166952A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017068776A (ja) * | 2015-10-02 | 2017-04-06 | 富士通株式会社 | 通信制御装置、通信制御方法及び通信制御プログラム |
JP2018129019A (ja) * | 2017-02-08 | 2018-08-16 | エーオー カスペルスキー ラボAO Kaspersky Lab | 仮想マシンにおける悪意のあるファイルを分析するシステム及び方法 |
JP2020171281A (ja) * | 2019-04-11 | 2020-10-22 | 深▲せん▼市康特客科技有限公司 | 霧化装置の寿命状態の表示が可能な電子タバコ |
WO2023007570A1 (ja) * | 2021-07-27 | 2023-02-02 | ハミングヘッズ株式会社 | 情報処理方法、プログラム、記憶媒体 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06131204A (ja) * | 1992-10-22 | 1994-05-13 | Fujitsu Ltd | システムコール機能制限システム |
JP2004075060A (ja) * | 2002-08-12 | 2004-03-11 | Rosemount Aerospace Inc | デュアルチャネル電子マルチファンクションプローブおよび異なりかつ独立したエアデータ出力を実現する方法 |
JP2009102006A (ja) * | 2008-12-15 | 2009-05-14 | Bridgestone Cycle Co | 自転車用錠装置 |
JP2013522761A (ja) * | 2010-03-15 | 2013-06-13 | シマンテック コーポレーション | 仮想環境においてネットワークアクセス制御を行うシステムおよび方法 |
-
2014
- 2014-03-04 JP JP2014041171A patent/JP2015166952A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06131204A (ja) * | 1992-10-22 | 1994-05-13 | Fujitsu Ltd | システムコール機能制限システム |
JP2004075060A (ja) * | 2002-08-12 | 2004-03-11 | Rosemount Aerospace Inc | デュアルチャネル電子マルチファンクションプローブおよび異なりかつ独立したエアデータ出力を実現する方法 |
JP2009102006A (ja) * | 2008-12-15 | 2009-05-14 | Bridgestone Cycle Co | 自転車用錠装置 |
JP2013522761A (ja) * | 2010-03-15 | 2013-06-13 | シマンテック コーポレーション | 仮想環境においてネットワークアクセス制御を行うシステムおよび方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017068776A (ja) * | 2015-10-02 | 2017-04-06 | 富士通株式会社 | 通信制御装置、通信制御方法及び通信制御プログラム |
JP2018129019A (ja) * | 2017-02-08 | 2018-08-16 | エーオー カスペルスキー ラボAO Kaspersky Lab | 仮想マシンにおける悪意のあるファイルを分析するシステム及び方法 |
US10339301B2 (en) | 2017-02-08 | 2019-07-02 | AO Kaspersky Lab | System and method of analysis of files for maliciousness in a virtual machine |
US10642973B2 (en) | 2017-02-08 | 2020-05-05 | AO Kaspersky Lab | System and method of analysis of files for maliciousness and determining an action |
JP2020171281A (ja) * | 2019-04-11 | 2020-10-22 | 深▲せん▼市康特客科技有限公司 | 霧化装置の寿命状態の表示が可能な電子タバコ |
WO2023007570A1 (ja) * | 2021-07-27 | 2023-02-02 | ハミングヘッズ株式会社 | 情報処理方法、プログラム、記憶媒体 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6370098B2 (ja) | 情報処理装置、情報処理監視方法、プログラム、及び記録媒体 | |
Payne et al. | Lares: An architecture for secure active monitoring using virtualization | |
Ge et al. | Sprobes: Enforcing kernel code integrity on the trustzone architecture | |
Shi et al. | Deconstructing Xen. | |
Azab et al. | HIMA: A hypervisor-based integrity measurement agent | |
Wang et al. | Isolating commodity hosted hypervisors with hyperlock | |
US7996836B1 (en) | Using a hypervisor to provide computer security | |
RU2723668C1 (ru) | Фильтрация событий для приложений безопасности виртуальных машин | |
US20180211046A1 (en) | Analysis and control of code flow and data flow | |
US20120216281A1 (en) | Systems and Methods for Providing a Computing Device Having a Secure Operating System Kernel | |
KR101701014B1 (ko) | 운영 체제에의 악성 활동 보고 | |
US10621340B2 (en) | Hybrid hypervisor-assisted security model | |
US10467410B2 (en) | Apparatus and method for monitoring confidentiality and integrity of target system | |
US9626508B2 (en) | Providing supervisor control of control transfer execution profiling | |
JP2015166952A (ja) | 情報処理装置、情報処理監視方法、プログラム、及び記録媒体 | |
JP2018174001A (ja) | 情報処理装置、情報処理監視方法、プログラム、及び記録媒体 | |
Hua et al. | Barrier: a lightweight hypervisor for protecting kernel integrity via memory isolation | |
Suzaki et al. | Kernel memory protection by an insertable hypervisor which has VM introspection and stealth breakpoints | |
Yao | Smm protection in edk ii | |
CN111194447B (zh) | 监视控制流完整性 | |
JP2019008503A (ja) | 情報処理監視装置、情報処理監視方法、プログラム、記録媒体及び情報処理装置 | |
Lengyel et al. | Pitfalls of virtual machine introspection on modern hardware | |
Davoli et al. | On Kernel's Safety in the Spectre Era (And KASLR is Formally Dead) | |
Cheng et al. | Building dynamic integrity protection for multiple independent authorities in virtualization-based infrastructure | |
JP2018036695A (ja) | 情報処理監視装置、情報処理監視方法、監視プログラム、記録媒体及び情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170302 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171031 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20180515 |