JP5585303B2 - ライブラリ実行管理システム、ライブラリ実行管理方法およびプログラム - Google Patents

ライブラリ実行管理システム、ライブラリ実行管理方法およびプログラム Download PDF

Info

Publication number
JP5585303B2
JP5585303B2 JP2010187901A JP2010187901A JP5585303B2 JP 5585303 B2 JP5585303 B2 JP 5585303B2 JP 2010187901 A JP2010187901 A JP 2010187901A JP 2010187901 A JP2010187901 A JP 2010187901A JP 5585303 B2 JP5585303 B2 JP 5585303B2
Authority
JP
Japan
Prior art keywords
library
application
called
information
execution
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.)
Expired - Fee Related
Application number
JP2010187901A
Other languages
English (en)
Other versions
JP2012048342A (ja
Inventor
陽 伊藤
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2010187901A priority Critical patent/JP5585303B2/ja
Publication of JP2012048342A publication Critical patent/JP2012048342A/ja
Application granted granted Critical
Publication of JP5585303B2 publication Critical patent/JP5585303B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、ライブラリ実行管理システム、ライブラリ実行管理方法およびプログラムに関し、特にライブラリを使用するアプリケーションの実行をアプリケーションの起動に際して制御するライブラリ実行管理システム、ライブラリ実行管理方法およびプログラムに関する。
アプリケーションソフトウェア(以下「アプリケーション」と称する)は、コンピュータに何らかの処理を実行させるソフトウェア・プログラムであり、実行可能ファイルとして提供される。ライブラリは、一般的に汎用性の高いプログラムが再利用可能な形で提供されたものであり、他のプログラムから呼び出され、実行される。ライブラリの例としてDLL(Dynamic Link Library)が挙げられる。アプリケーションは、起動時もしくは実行中にライブラリを呼び出し、読み込むことによって、ライブラリの機能を使用することができる。
アプリケーションやライブラリにセキュリティ的な脆弱性が存在する場合、そのまま使用すると、不正アクセスやウィルス感染の原因となることがある。このような脆弱性はセキュリティパッチを適用することによって解消できるが、セキュリティパッチの適用は再起動を必要とする等システムに影響を与えるため、運用の都合上即座に実施することが難しい場合がある。また、セキュリティパッチがリリースされていない場合には脆弱性を解消することができない。
上記のような問題点を解決する技術が特許文献1に記載されている。特許文献1記載のセキュリティ管理装置は、脆弱性を持つライブラリを使用するアプリケーションを起動しようとした際に、アプリケーションの実行を停止する。
特開2007−241803号公報
上述したセキュリティ管理装置は、アプリケーションを実行する前に、アプリケーションが使用するライブラリを特定するための解析処理が必要であるという問題点がある。また、アプリケーションの実行中に動的に読み込まれるライブラリの脆弱性については対応できないという問題点もある。
本発明の目的は、上述した課題を解決し、利用状況に応じてライブラリの実行管理を行うライブラリ実行管理システム、ライブラリ実行管理方法およびプログラムを提供することにある。
本発明に係るライブラリ実行管理システムは、
ライブラリがアプリケーションまたは他のライブラリから呼び出されたことを検知し、呼び出した当該アプリケーションまたは当該ライブラリと呼び出された当該ライブラリを表すライブラリ呼び出し履歴情報を蓄積するライブラリ呼び出し履歴情報蓄積手段と、
ファイルの実行の可否に関する情報であるファイル実行可否情報を提供するファイル実行可否情報提供手段と、
アプリケーションの起動に際して、ライブラリ呼び出し履歴情報を参照して当該アプリケーションより呼び出される可能性があるライブラリを抽出し、抽出されたライブラリに対応するファイル実行可否情報に基づいて当該アプリケーションの起動制御処理を行うアプリケーション起動制御手段とを備える。
本発明に係るライブラリ実行管理方法は、
ライブラリがアプリケーションまたは他のライブラリから呼び出されたことを検知し、呼び出した当該アプリケーションまたは当該ライブラリと呼び出された当該ライブラリを表すライブラリ呼び出し履歴情報を蓄積し、
アプリケーションの起動に際して、ライブラリ呼び出し履歴情報を参照して当該アプリケーションより呼び出される可能性があるライブラリを抽出し、
抽出されたライブラリに対応する、ファイルの実行の可否に関する情報であるファイル実行可否情報に基づいて当該アプリケーションの起動制御処理を行う。
本発明に係るプログラムは、
コンピュータに、
ライブラリがアプリケーションまたは他のライブラリから呼び出されたことを検知し、呼び出した当該アプリケーションまたは当該ライブラリと呼び出された当該ライブラリを表すライブラリ呼び出し履歴情報を蓄積する機能と、
アプリケーションの起動に際して、ライブラリ呼び出し履歴情報を参照して当該アプリケーションより呼び出される可能性があるライブラリを抽出する機能と、
抽出されたライブラリに対応する、ファイルの実行の可否に関する情報であるファイル実行可否情報に基づいて当該アプリケーションの起動制御処理を行う機能とを実現させる。
本発明に係るライブラリ実行管理システム、ライブラリ実行管理方法およびプログラムは、利用状況に応じたライブラリの実行管理を可能にする。
本発明の第1の実施形態に係るライブラリ実行管理システムの構成を示すブロック図である。 本発明の第1の実施形態における、アプリケーションおよびライブラリの呼び出し関係を表す図である。 本発明の第1の実施形態における、ライブラリ呼び出し履歴情報161のデータ内容を表す表である。 本発明の第1の実施形態における、ファイル実行可否情報171のデータ内容を表す表である。 本発明の第1の実施形態に係るライブラリ実行管理システム100において、ライブラリが呼び出された際の処理動作を説明するシーケンス図である。 本発明の第1の実施形態に係るライブラリ実行管理システム100において、アプリケーションが起動された際の処理動作を説明するシーケンス図である。 本発明の第2の実施形態に係るライブラリ実行管理システムの構成を示すブロック図である。 本発明の第2の実施形態における、アプリケーションおよびライブラリの呼び出し関係を表す図である。 本発明の第2の実施形態における、ライブラリ呼び出し履歴情報161のデータ内容を表す表である。 本発明の第2の実施形態における、ファイル危険度情報172のデータ内容を表す表である。 本発明の第2の実施形態における、実行可否判定基準情報173のデータ内容を表す表である。 本発明の第2の実施形態に係るライブラリ実行管理システム100において、ライブラリが呼び出された際の処理動作を説明するシーケンス図である。 本発明の第2の実施形態に係るライブラリ実行管理システム100において、アプリケーションが起動された際の処理動作を説明するシーケンス図である。 本発明の第3の実施形態に係るライブラリ実行管理システムの構成を示すブロック図である。 コンピュータを構成する要素の例を表すブロック構成図である。
以下、本発明の実施形態について図面を参照して詳細に説明する。
[第1の実施形態]
図1は、本発明の第1の実施形態に係るライブラリ実行管理システムの構成を示すブロック図である。図1に示すライブラリ実行管理システム100は、ライブラリ呼び出し検知部110と、ライブラリ呼び出し履歴情報蓄積部120と、ライブラリ読み込み制御部130と、アプリケーション起動検知部140と、アプリケーション起動制御部150と、記憶装置160と、ファイル実行可否情報提供部170とを備えている。
ライブラリ呼び出し検知部110は、ライブラリに対する、アプリケーションや他のライブラリからの呼び出しを検知する。
ライブラリ呼び出し履歴情報蓄積部120は、ライブラリ呼び出し検知部110が検知した呼び出しに関するライブラリ呼び出し履歴情報161を記憶装置160に出力し、蓄積する。ライブラリ呼び出し履歴情報161は、呼び出した側であるアプリケーションまたはライブラリを示す情報(例えばファイル名)と、呼び出された側であるライブラリを示す情報(例えばファイル名)を含む。記憶装置160は、磁気ディスク装置のようなストレージ媒体でもよいし、メモリ装置のような半導体記憶装置でもよい。
ファイル実行可否情報提供部170は、ファイル実行可否情報171を提供する。ファイル実行可否情報提供部170は、記憶装置等にファイル実行可否情報171を保持していてもよい。あるいは、ファイル実行可否情報提供部170は、外部の装置からデータ通信等を用いてファイル実行可否情報171を取得してもよい。
ファイル実行可否情報171は、個々のファイルについての、実行の可否や実行に際しての条件など、ファイルの実行に関する情報である。ここでのファイルとは、コンピュータで実行されるファイルであり、ライブラリ等が含まれる。例えば、ファイル実行可否情報171は、対象ファイルの実行の禁止を表す情報を含む。また、例えば、ファイル実行可否情報171は、対象ファイルを実行するときに警告メッセージを表示したり、実行記録を保存したりすること等の、対象ファイルの実行に際しての条件を表す情報を含む。
ファイル実行可否情報171は、ファイルの脆弱性に対する対処を表す情報であってもよい。この場合、第1の実施形態に係るライブラリ実行管理システムは、脆弱性が存在するライブラリの実行を禁止したり、脆弱性が存在するライブラリの実行に際して利用者に警告を発したりすることができる。また、ファイル実行可否情報171は、それ以外の理由に基づく対処を表す情報であってもよい。例えば、ファイル実行可否情報171は、利用者が指定するファイルの実行の禁止や、実行に際しての条件を表す情報であってもよい。この場合、第1の実施形態に係るライブラリ実行管理システムは、利用者の指定に従ったライブラリの実行制御を行うことができる。
ライブラリ読み込み制御部130は、ライブラリ呼び出し検知部110がライブラリの呼び出しを検知すると、当該ライブラリに対応するファイル実行可否情報171を参照し、参照したファイル実行可否情報171に基づいた制御を行う。例えば、当該ライブラリの実行が禁止されていた場合、ライブラリ読み込み制御部130は当該ライブラリの読み込みを中断する。また、例えば、実行するときに警告を出力するように指定されていた場合、ライブラリ読み込み制御部130は当該ライブラリの読み込みに際して警告メッセージの表示を行う。
アプリケーション起動検知部140は、アプリケーションに対する起動要求を検知する。
アプリケーション起動制御部150は、アプリケーション起動検知部140がアプリケーションの起動要求を検知すると、ライブラリ呼び出し履歴情報161を参照する。そして、当該アプリケーションより呼び出されたことがあるライブラリを、呼び出される可能性があるライブラリとして抽出する。また、呼び出されたライブラリがさらに呼び出したライブラリも、大本の当該アプリケーションより呼び出される可能性があるライブラリとして同様に抽出する。
次に、アプリケーション起動制御部150は、上記抽出されたライブラリに対応するファイル実行可否情報171を参照し、参照したファイル実行可否情報171に基づいた制御を行う。例えば、上記抽出されたライブラリに実行が禁止されているライブラリが含まれていた場合、アプリケーション起動制御部150は当該アプリケーションの起動を中断する。また、例えば、実行するときに警告を出力するように指定されているライブラリが含まれていた場合、アプリケーション起動制御部150は当該アプリケーションの起動に際して当該ライブラリに関する警告メッセージの表示を行う。
図2は、本発明の第1の実施形態における、アプリケーションおよびライブラリの呼び出し関係を表す図である。図2では、矢印がつなぐ四角が、呼び出した側と呼び出された側のアプリケーションまたはライブラリを表している。A.exe,B.exeおよびC.exeはアプリケーションであり、a.dll,b.dll,c.dll,d.dllおよびe.dllはライブラリである。また、矢印の向きは、呼び出した側から呼び出された側に向かっている。例えば、アプリケーションA.exeは、アプリケーションa.dllを呼び出している。
図3は、本発明の第1の実施形態における、ライブラリ呼び出し履歴情報161のデータ内容を表す表であり、図2に対応している。
図4は、本発明の第1の実施形態における、ファイル実行可否情報171のデータ内容を表す表である。
ライブラリ呼び出し履歴情報161およびファイル実行可否情報171は、図3および図4の表の各行を項目として含むレコードからなるデータベースに格納されていてもよい。
図5は、本発明の第1の実施形態に係るライブラリ実行管理システム100において、ライブラリが呼び出された際の処理動作を説明するシーケンス図である。以下、ライブラリが呼び出された際の、第1の実施形態に係るライブラリ実行管理システム100の処理動作について図3および図5を参照して説明する。
まず、ライブラリ呼び出し検知部110が、ライブラリが呼び出されたことを検知する(ステップS501)。
次に、ライブラリ呼び出し履歴情報蓄積部120が、ライブラリ呼び出し履歴情報161を記憶装置160に出力し、蓄積する(ステップS502)。ライブラリ呼び出し履歴情報蓄積部120が出力するライブラリ呼び出し履歴情報161は、呼び出した側であるアプリケーションまたはライブラリのファイル名と、呼び出された側であるライブラリのファイル名を含む。例えば、ライブラリb.dllがライブラリd.dllを呼び出した場合、ライブラリ呼び出し履歴情報蓄積部120は、図3の連番5のレコードを記憶装置160に出力する。
一方で、ステップS501の後、ライブラリ読み込み制御部130が、呼び出されたライブラリに対応するファイル実行可否情報171を、ファイル実行可否情報提供部170より参照する(ステップS503)。
次に、ライブラリ読み込み制御部130は、ステップS503で参照したファイル実行可否情報171に基づいて、呼び出されたライブラリの制御方法を決定する。すなわち、ライブラリ読み込み制御部130は、ファイル実行可否情報171に基づいて、ライブラリの読み込みの中断や、読み込みに際しての警告メッセージの出力などを行うことを決定する。そして、ライブラリ読み込み制御部130は、決定した制御方法に従い、呼び出されたライブラリの読み込み制御を実行する(ステップS504)。
なお、ステップS503で呼び出されたライブラリに対応するファイル実行可否情報171が存在しなかった場合、ライブラリ読み込み制御部130は、通常通りのライブラリ読み込みを行ってもよい。
図6は、本発明の第1の実施形態に係るライブラリ実行管理システム100において、アプリケーションが起動された際の処理動作を説明するシーケンス図である。以下、アプリケーションが起動された際の、第1の実施形態に係るライブラリ実行管理システム100の処理動作について図3,図4および図6を参照して説明する。
まず、アプリケーション起動検知部140が、アプリケーションが起動されたことを検知する(ステップS601)。
次に、アプリケーション起動制御部150が、記憶装置160よりライブラリ呼び出し履歴情報161を参照し、起動されたアプリケーションから過去に呼び出されたことがあるライブラリを抽出する(ステップS602)。
例えば、アプリケーションA.exeが起動された場合、図3の連番1のレコードと連番4のレコードが参照され、ライブラリa.dllとd.dllが抽出される。このように、ライブラリ呼び出し履歴情報161のレコードを、呼び出された側のライブラリが呼び出しているライブラリをキーとして順次検索することにより、過去に呼び出されたことがあるライブラリを抽出することができる。
次に、アプリケーション起動制御部150は、ステップS602で抽出したライブラリに対応するファイル実行可否情報171を、ファイル実行可否情報提供部170より参照する(ステップS603)。
次に、アプリケーション起動制御部150は、ステップS603で参照したファイル実行可否情報171に基づいて、起動されたアプリケーションの制御方法を決定する。すなわち、アプリケーション起動制御部150は、ファイル実行可否情報171に基づいて、アプリケーションの起動の中断や、起動に際しての警告メッセージの出力などを行うことを決定する。そして、アプリケーション起動制御部150は、決定した制御方法に従い、起動されたアプリケーションの起動制御を実行する(ステップS604)。
例えば、アプリケーションA.exeが起動され、ステップS602でライブラリa.dllとd.dllが抽出された場合、d.dllに対応する図4の連番2のレコードが参照される。そして、アプリケーション起動制御部150は、参照したファイル実行可否情報171、即ち「実行禁止」に従い、アプリケーションA.exeの起動を中断する。
なお、ステップS602で、起動されたアプリケーションから過去に呼び出されたことがあるライブラリが存在しなかった場合、アプリケーション起動制御部150は、通常通りのアプリケーション起動を行ってもよい。同様に、ステップS603で、過去に呼び出されたライブラリに対応するファイル実行可否情報171が存在しなかった場合も、アプリケーション起動制御部150は、通常通りのアプリケーション起動を行ってもよい。
ステップS602では、複数のライブラリが抽出されてもよい。また、ステップS603では、複数のファイル実行可否情報171が参照されてもよい。複数のファイル実行可否情報171が参照された場合、アプリケーション起動制御部150は、参照された全ての実行可否情報に基づいて起動制御を行ってもよいし、その一部の実行可否情報に基づいて行ってもよい。一部の実行可否情報に基づいて起動制御を行う場合、あるファイル実行可否情報171が表す起動制御を、他のファイル実行可否情報171が表すものに優先して行ってもよい。例えば、あるライブラリを実行するときに警告を表示することを表す情報と、他のあるライブラリの実行を禁止する情報が参照されたとする。この場合、アプリケーション起動制御部150は、実行の禁止を優先し、警告の表示を行わず、アプリケーションの起動を中断してもよい。
実行するときに警告を表示することを表すファイル実行可否情報171が参照された場合、アプリケーション起動制御部150は、アプリケーション起動に際して警告を表示すると共に、利用者の承認入力を受け付けてもよい。そして、アプリケーション起動制御部150は、利用者が実行を承認した場合はアプリケーションを起動し、承認しなかった場合は起動を中断してもよい。あるいは、アプリケーション起動制御部150は、利用者がコンピュータにログイン中であれば警告の表示、承認入力またはその両方を行い、ログイン中でなければ起動を中断してもよい。
このように、本発明の第1の実施形態に係るライブラリ実行管理システム100は、事前にアプリケーションを解析すること無しに、実行が禁止されているライブラリの実行を防止することができる。なぜならば、ライブラリ呼び出し履歴情報161とファイル実行可否情報171に基づいて、アプリケーション起動制御部150がアプリケーションの起動制御を行うからである。すなわち、過去に呼び出されたことがあるライブラリを抽出し、それらのライブラリの実行可否を参照して、アプリケーション起動制御部150がアプリケーションの起動制御を行うからである。
また、本発明の第1の実施形態に係るライブラリ実行管理システム100は、動的に呼び出されるライブラリに対しても、実行が禁止されているライブラリの実行を防止することができる。すなわち、アプリケーションに記載されていないライブラリであっても、実行が禁止されているライブラリの実行を防止することができる。
さらに、本発明の第1の実施形態に係るライブラリ実行管理システム100は、利用状況に応じたライブラリの実行管理を可能にする。すなわち、例えば、実際に呼び出されたライブラリに限って、そのライブラリに対応する実行可否情報に基づいたライブラリの実行管理を行うことができる。
なお、図5の処理において、ライブラリが呼び出された際に、ライブラリ呼び出し履歴情報161を蓄積する処理(ステップS502)のみが行われてもよい。すなわち、ライブラリ読み込み制御部130が、呼び出されたライブラリの制御をファイル実行可否情報171に基づいて行う処理(ステップS503〜S504)を行わず、常に通常通りのライブラリ読み込み制御を行ってもよい。この場合、過去に実行されたことがないライブラリの制御を行うことができない反面、アプリケーションの実行途中における、ライブラリの読み込みが中断されることによるアプリケーションの異常終了の発生を防止できる。
[第2の実施形態]
次に、本発明の第2の実施形態を説明する。
図7は、本発明の第2の実施形態に係るライブラリ実行管理システムの構成を示すブロック図である。図7に示すライブラリ実行管理システム100は、図1と同様に、ライブラリ呼び出し検知部110と、ライブラリ呼び出し履歴情報蓄積部120と、ライブラリ読み込み制御部130と、アプリケーション起動検知部140と、アプリケーション起動制御部150と、記憶装置160と、ファイル実行可否情報提供部170とを備えている。
第2の実施形態におけるライブラリ呼び出し履歴情報蓄積部120は、図1と同様に、ライブラリ呼び出し検知部110が検知した呼び出しに関するライブラリ呼び出し履歴情報161を記憶装置160に出力し、蓄積する。ただし、第2の実施形態におけるライブラリ呼び出し履歴情報161は、呼び出した側であるアプリケーションまたはライブラリを示す情報と呼び出された側であるライブラリを示す情報に加え、累積呼び出し回数を含む。
第2の実施形態におけるファイル実行可否情報提供部170は、図1のファイル実行可否情報171の代わりに、ファイル危険度情報172と実行可否判定基準情報173を提供する。ファイル実行可否情報提供部170は、第1の実施形態と同様に、記憶装置等にファイル危険度情報172と実行可否判定基準情報173を保持していてもよい。あるいは、ファイル実行可否情報提供部170は、外部の装置からデータ通信等を用いてファイル危険度情報172と実行可否判定基準情報173を取得してもよい。
ファイル危険度情報172は、個々のファイルについての、実行におけるファイルの危険度を表す情報である。危険度とは、例えば、ファイルを実行することにより、ファイルの脆弱性に起因する攻撃を受ける可能性や、攻撃を受けることにより発生する損害の重大さを表す。
実行可否判定基準情報173は、ファイルの実行に際して、ファイルの危険度などに基づいてどのような制御を行うかの判定基準を表す情報である。例えば、実行可否判定基準情報173は、危険度が大きなファイルの実行の禁止を表す情報を含む。また、例えば、実行可否判定基準情報173は、危険度が小さなファイルを実行するときに警告メッセージを表示したり、実行記録を保存したりすること等の、実行に際しての条件を表す情報を含む。
第2の実施形態におけるライブラリ読み込み制御部130は、図1のファイル実行可否情報171の代わりに、ファイル危険度情報172と実行可否判定基準情報173を参照する。そして、ライブラリ読み込み制御部130は、参照したこれらの情報に基づいた制御を行う。
同様に、第2の実施形態におけるアプリケーション起動制御部150も、図1のファイル実行可否情報171の代わりに、ファイル危険度情報172と実行可否判定基準情報173を参照する。そして、アプリケーション起動制御部150は、参照したこれらの情報に基づいた制御を行う。
第2の実施形態におけるライブラリ呼び出し検知部110、アプリケーション起動検知部140および記憶装置160については図1と同様であるため、説明を省略する。
図8は、本発明の第2の実施形態における、アプリケーションおよびライブラリの呼び出し関係を表す図である。図8では、図2の内容に加えて、矢印の近傍の数字が、ライブラリの累積呼び出し回数を表している。例えば、アプリケーションA.exeによるアプリケーションa.dllの累積呼び出し回数は、15回である。
図9は、本発明の第2の実施形態における、ライブラリ呼び出し履歴情報161のデータ内容を表す表であり、図8に対応している。
図10は、本発明の第2の実施形態における、ファイル危険度情報172のデータ内容を表す表である。
図11は、本発明の第2の実施形態における、実行可否判定基準情報173のデータ内容を表す表である。図11において、累積呼び出し回数の「−」は、累積呼び出し回数が何回であっても構わないことを表している。例えば、連番1のレコードは、危険度が「大」の場合、累積呼び出し回数が何回であっても「実行禁止」であることを表している。
図12は、本発明の第2の実施形態に係るライブラリ実行管理システム100において、ライブラリが呼び出された際の処理動作を説明するシーケンス図である。以下、ライブラリが呼び出された際の、第2の実施形態に係るライブラリ実行管理システム100の処理動作について図9および図12を参照して説明する。
まず、ライブラリ呼び出し検知部110が、ライブラリが呼び出されたことを検知する(ステップS1201)。これは図5と同様である。
次に、ライブラリ呼び出し履歴情報蓄積部120が、ライブラリ呼び出し履歴情報161を記憶装置160に出力し、蓄積する(ステップS1202)。ライブラリ呼び出し履歴情報蓄積部120が出力するライブラリ呼び出し履歴情報161は、呼び出した側であるアプリケーションまたはライブラリのファイル名と、呼び出された側であるライブラリのファイル名と、累積呼び出し回数を含む。
該当するライブラリに関するライブラリ呼び出し履歴情報161が既に存在している場合、ライブラリ呼び出し履歴情報蓄積部120は、「累積呼び出し回数」の値を1加算して更新する。例えば、図9の状態において、ライブラリb.dllがライブラリd.dllを呼び出した場合、ライブラリ呼び出し履歴情報蓄積部120は、当該ライブラリに対応する図9の連番5のレコードの「累積呼び出し回数」の値を6から7に更新する。
逆に、該当するライブラリに関するライブラリ呼び出し履歴情報161が存在しない場合、ライブラリ呼び出し履歴情報蓄積部120は、「呼び出した側」および「呼び出された側」の値が該当するライブラリのファイル名であり、「累積呼び出し回数」の値が1であるレコードを新規に登録する。例えば、図9の状態において、ライブラリd.dllがライブラリf.dll(図示しない)を呼び出し、かつ、当該ライブラリに対応するレコードが存在しなかったとする。この場合、ライブラリ呼び出し履歴情報蓄積部120は、「呼び出した側」がd.dll,「呼び出された側」がf.dll,「累積呼び出し回数」が1であるレコードを新規に登録する。
一方で、ステップS1201の後、ライブラリ読み込み制御部130が、呼び出されたライブラリに対応するファイル危険度情報172と、実行可否判定基準情報173を、ファイル実行可否情報提供部170より参照する(ステップS1203)。
次に、ライブラリ読み込み制御部130は、ステップS1203で参照したファイル危険度情報172および実行可否判定基準情報173に基づいて、呼び出されたライブラリの制御方法を決定する。すなわち、ライブラリ読み込み制御部130は、ファイル危険度情報172および実行可否判定基準情報173に基づいて、ライブラリの読み込みの中断や、読み込みに際しての警告メッセージの出力などを行うことを決定する。そして、ライブラリ読み込み制御部130は、決定した制御方法に従い、呼び出されたライブラリの読み込み制御を実行する(ステップS1204)。
なお、ステップS1203で呼び出されたライブラリに対応するファイル危険度情報172が存在しなかった場合、ライブラリ読み込み制御部130は、通常通りのライブラリ読み込みを行ってもよい。
図13は、本発明の第2の実施形態に係るライブラリ実行管理システム100において、アプリケーションが起動された際の処理動作を説明するシーケンス図である。以下、アプリケーションが起動された際の、第2の実施形態に係るライブラリ実行管理システム100の処理動作について図9,図10,図11および図13を参照して説明する。
まず、アプリケーション起動検知部140が、アプリケーションが起動されたことを検知する(ステップS1301)。これは図6と同様である。
次に、アプリケーション起動制御部150が、記憶装置160よりライブラリ呼び出し履歴情報161を参照し、起動されたアプリケーションから過去に呼び出されたことがあるライブラリと、その累積呼び出し回数を抽出する(ステップS1302)。
例えば、アプリケーションA.exeが起動された場合、図9の連番1のレコードと連番4のレコードが参照され、ライブラリa.dllと累積呼び出し回数15,ライブラリd.dllと累積呼び出し回数12が抽出される。
次に、アプリケーション起動制御部150は、ステップS1302で抽出したライブラリに対応するファイル危険度情報172と、実行可否判定基準情報173を、ファイル実行可否情報提供部170より参照する(ステップS1303)。ここで、アプリケーション起動制御部150は、ステップS1302で抽出した累積呼び出し回数に基づいて実行可否判定基準情報173を参照する。具体的には、例えば、抽出したライブラリの危険度が「中」であった場合、図11の連番2のレコードと連番3のレコードにおいて、累積呼び出し回数
に基づいてどちらかのレコードを選択する。
次に、アプリケーション起動制御部150は、ステップS1303で参照したファイル危険度情報172と実行可否判定基準情報173に基づいて、起動されたアプリケーションの制御方法を決定する。すなわち、アプリケーション起動制御部150は、ファイル危険度情報172と実行可否判定基準情報173に基づいて、アプリケーションの起動の中断や、起動に際しての警告メッセージの出力などを行うことを決定する。そして、アプリケーション起動制御部150は、決定した制御方法に従い、起動されたアプリケーションの起動制御を実行する(ステップS1304)。
例えば、アプリケーションA.exeが起動され、ステップS1302でライブラリa.dllとd.dllが抽出された場合、a.dllとd.dllに対応する図10の連番1のレコードと連番3のレコードが参照される。次に、アプリケーション起動制御部150は、参照したファイル危険度情報172、即ち危険度「小」および「中」に対応する実行可否判定基準情報173を参照する。ここで、危険度「小」には図11の連番4のレコードが該当する。危険度「中」には図11の連番2と連番3のレコードが該当するが、d.dllの累積呼び出し回数「12」に従い、連番2のレコードが選択される。最終的に、アプリケーション起動制御部150は、図11の連番2のレコードと連番4のレコードを参照する。そして、アプリケーション起動制御部150は、参照した実行可否判定基準情報173、即ち「実行禁止」と「警告」に従い、アプリケーションA.exeの起動を中断する。
なお、ステップS1302で、起動されたアプリケーションから過去に呼び出されたことがあるライブラリが存在しなかった場合、アプリケーション起動制御部150は、通常通りのアプリケーション起動を行ってもよい。同様に、ステップS1303で、過去に呼び出されたライブラリに対応するファイル危険度情報172が存在しなかった場合も、アプリケーション起動制御部150は、通常通りのアプリケーション起動を行ってもよい。
ステップS1302では、複数のライブラリが抽出されてもよい。また、ステップS1303では、複数のファイル危険度情報172および実行可否判定基準情報173が参照されてもよい。複数の実行可否判定基準情報173が参照された場合、アプリケーション起動制御部150は、参照された全ての実行可否情報に基づいて起動制御を行ってもよいし、その一部の実行可否情報に基づいて行ってもよい。一部の実行可否情報に基づいて起動制御を行う場合、ある実行可否判定基準情報173が表す起動制御を、他の実行可否判定基準情報173が表すものに優先して行ってもよい。例えば、あるライブラリを実行するときに警告を表示することを表す情報と、他のあるライブラリの実行を禁止する情報が参照されたとする。この場合、アプリケーション起動制御部150は、実行の禁止を優先し、警告の表示を行わず、アプリケーションの起動を中断してもよい。
実行するときに警告を表示することを表す実行可否判定基準情報173が参照された場合、アプリケーション起動制御部150は、アプリケーション起動に際して警告を表示すると共に、利用者の承認入力を受け付けてもよい。そして、アプリケーション起動制御部150は、利用者が実行を承認した場合はアプリケーションを起動し、承認しなかった場合は起動を中断してもよい。あるいは、アプリケーション起動制御部150は、利用者がコンピュータにログイン中であれば警告の表示、承認入力またはその両方を行い、ログイン中でなければ起動を中断してもよい。
このように、本発明の第2の実施形態に係るライブラリ実行管理システム100は、第1の実施形態と同様の効果を有しながら、ライブラリの呼び出し回数に応じた柔軟なライブラリの実行管理を行うことができる。なぜならば、ライブラリ呼び出し履歴情報161,ファイル危険度情報172および実行可否判定基準情報173に加え、ライブラリの累積呼び出し回数に基づいて、アプリケーション起動制御部150がアプリケーションの起動制御を行うからである。このことにより、ライブラリの利用頻度に応じたライブラリの実行管理が可能になる。
なお、図12の処理において、ライブラリが呼び出された際に、ライブラリ呼び出し履歴情報161を蓄積する処理(ステップS1202)のみが行われてもよい。すなわち、ライブラリ読み込み制御部130が、呼び出されたライブラリの制御をファイル危険度情報172および実行可否判定基準情報173に基づいて行う処理(ステップS1203〜S1204)を行わず、常に通常通りのライブラリ読み込み制御を行ってもよい。この場合、過去に実行されたことがないライブラリの制御を行うことができない反面、アプリケーションの実行途中における、ライブラリの読み込みが中断されることによるアプリケーションの異常終了の発生を防止できる。
ライブラリ呼び出し履歴情報161の累積呼び出し回数は、大本の呼び出し側であるアプリケーション単位に計数されてもよい。第2の実施形態においては、図8および図9を参照すると、例えばd.dllからe.dllへの累積呼び出し回数9は、大本のアプリケーションであるA.exeとB.exeからの呼び出し回数の合計となっている。これを、例えば図9の表に「大本のアプリケーション」の項目を追加することにより、A.exeとB.exe別に計数してもよい。この場合、大本のアプリケーション単位にライブラリの呼び出しの有無および頻度を管理することができる。すなわち、アプリケーション毎のライブラリの呼び出しの有無および頻度に基づいたライブラリの実行管理を行うことができる。
[第3の実施形態]
次に、本発明の第3の実施形態を説明する。
図14は、本発明の第3の実施形態に係るライブラリ実行管理システムの構成を示すブロック図である。図14に示すライブラリ実行管理システム100は、ライブラリ呼び出し履歴情報蓄積部120と、アプリケーション起動制御部150と、ファイル実行可否情報提供部170とを備えている。
ライブラリ呼び出し履歴情報蓄積部120は、ライブラリがアプリケーションや他のライブラリから呼び出されると、ライブラリ呼び出し履歴情報161を記憶装置等に出力し、蓄積する。ライブラリ呼び出し履歴情報161は、呼び出した側であるアプリケーションまたはライブラリを示す情報と、呼び出された側であるライブラリを示す情報を含む。
ファイル実行可否情報提供部170は、ファイル実行可否情報171を提供する。ファイル実行可否情報171は、個々のファイルについての、実行の可否や実行に際しての条件など、ファイルの実行に関する情報である。
アプリケーション起動制御部150は、アプリケーションの起動が要求されると、ライブラリ呼び出し履歴情報161を参照する。そして、当該アプリケーションより呼び出されたことがあるライブラリを、呼び出される可能性があるライブラリとして抽出する。また、呼び出されたライブラリがさらに呼び出したライブラリも、大本の当該アプリケーションより呼び出される可能性があるライブラリとして同様に抽出する。次に、アプリケーション起動制御部150は、上記抽出されたライブラリに対応するファイル実行可否情報171を参照し、参照したファイル実行可否情報171に基づいた制御を行う。
このように、本発明の第3の実施形態に係るライブラリ実行管理システム100は、事前にアプリケーションを解析すること無しに、実行が禁止されているライブラリの実行を防止することができる。なぜならば、ライブラリ呼び出し履歴情報161とファイル実行可否情報171に基づいて、アプリケーション起動制御部150がアプリケーションの起動制御を行うからである。すなわち、過去に呼び出されたことがあるライブラリを抽出し、それらのライブラリの実行可否を参照して、アプリケーション起動制御部150がアプリケーションの起動制御を行うからである。
また、本発明の第3の実施形態に係るライブラリ実行管理システム100は、動的に呼び出されるライブラリに対しても、実行が禁止されているライブラリの実行を防止することができる。すなわち、アプリケーションに記載されていないライブラリであっても、実行が禁止されているライブラリの実行を防止することができる。
さらに、本発明の第3の実施形態に係るライブラリ実行管理システム100は、利用状況に応じたライブラリの実行管理を可能にする。すなわち、例えば、実際に呼び出されたライブラリに限って、そのライブラリに対応する実行可否情報に基づいたライブラリの実行管理を行うことができる。
上記の第1〜第3の実施形態におけるライブラリ実行管理システムは、専用のハードウェアによって実現されてもよいし、コンピュータによって実現されてもよい。
図15は、コンピュータを構成する要素の例を表すブロック構成図である。図15のコンピュータ900は、CPU(Central Processing Unit)910と、RAM(Random Access Memory)920と、ROM(Read Only Memory)930と、ストレージ媒体940と、通信インタフェース950を備えている。前述したライブラリ実行管理システムの構成要素は、プログラムがコンピュータ900において実行されることにより実現されてもよい。具体的には、前述した図1,図7および図14に記載のライブラリ実行管理システムの構成要素は、CPU910がROM930あるいはストレージ媒体940からプログラムを読み込んで実行することにより実現されてもよい。そして、このような場合において、本発明は、係るコンピュータ・プログラムのコード或いは記憶媒体によって構成される。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
ライブラリがアプリケーションまたは他のライブラリから呼び出されたことを検知し、呼び出した当該アプリケーションまたは当該ライブラリと呼び出された当該ライブラリを表すライブラリ呼び出し履歴情報を蓄積するライブラリ呼び出し履歴情報蓄積手段と、
ファイルの実行の可否に関する情報であるファイル実行可否情報を提供するファイル実行可否情報提供手段と、
前記アプリケーションの起動に際して、前記ライブラリ呼び出し履歴情報を参照して当該アプリケーションより呼び出される可能性がある前記ライブラリを抽出し、抽出された前記ライブラリに対応する前記ファイル実行可否情報に基づいて当該アプリケーションの起動制御処理を行うアプリケーション起動制御手段とを備えたライブラリ実行管理システム。
(付記2)
前記ライブラリ呼び出し履歴情報蓄積手段が、当該ライブラリの累積呼び出し回数をさらに蓄積し、
前記アプリケーション起動制御手段が、前記ファイル実行可否情報と前記ライブラリの累積呼び出し回数に基づいて当該アプリケーションの前記起動制御処理を行う付記1に記載のライブラリ実行管理システム。
(付記3)
前記アプリケーション起動制御手段が、前記起動制御処理において、前記アプリケーションの起動を中止する付記1または2に記載のライブラリ実行管理システム。
(付記4)
前記アプリケーション起動制御手段が、前記起動制御処理において、前記アプリケーションより呼び出される可能性がある前記ライブラリに関して警告する付記1乃至3のいずれかに記載のライブラリ実行管理システム。
(付記5)
ライブラリがアプリケーションまたは他のライブラリから呼び出されたことを検知し、呼び出した当該アプリケーションまたは当該ライブラリと呼び出された当該ライブラリを表すライブラリ呼び出し履歴情報を蓄積し、
前記アプリケーションの起動に際して、前記ライブラリ呼び出し履歴情報を参照して当該アプリケーションより呼び出される可能性がある前記ライブラリを抽出し、
抽出された前記ライブラリに対応する、ファイルの実行の可否に関する情報であるファイル実行可否情報に基づいて当該アプリケーションの起動制御処理を行うライブラリ実行管理方法。
(付記6)
前記ライブラリ呼び出し履歴情報が、当該ライブラリの累積呼び出し回数をさらに含み、
前記アプリケーションの起動制御処理が、前記ファイル実行可否情報と前記ライブラリの累積呼び出し回数に基づいて行われる付記5に記載のライブラリ実行管理方法。
(付記7)
前記アプリケーションの起動制御処理が、前記アプリケーションの起動を中止する処理である付記5または6に記載のライブラリ実行管理方法。
(付記8)
前記アプリケーションの起動制御処理が、前記アプリケーションより呼び出される可能性がある前記ライブラリに関して警告する処理である付記5乃至7に記載のライブラリ実行管理方法。
(付記9)
コンピュータに、
ライブラリがアプリケーションまたは他のライブラリから呼び出されたことを検知し、呼び出した当該アプリケーションまたは当該ライブラリと呼び出された当該ライブラリを表すライブラリ呼び出し履歴情報を蓄積する機能と、
前記アプリケーションの起動に際して、前記ライブラリ呼び出し履歴情報を参照して当該アプリケーションより呼び出される可能性がある前記ライブラリを抽出する機能と、
抽出された前記ライブラリに対応する、ファイルの実行の可否に関する情報であるファイル実行可否情報に基づいて当該アプリケーションの起動制御処理を行う機能とを実現させるプログラム。
(付記10)
前記ライブラリ呼び出し履歴情報が、当該ライブラリの累積呼び出し回数をさらに含み、
前記アプリケーションの起動制御処理が、前記ファイル実行可否情報と前記ライブラリの累積呼び出し回数に基づいて行われる付記9に記載のプログラム。
(付記11)
前記アプリケーションの起動制御処理が、前記アプリケーションの起動を中止する処理である付記9または10に記載のプログラム。
(付記12)
前記アプリケーションの起動制御処理が、前記アプリケーションより呼び出される可能性がある前記ライブラリに関して警告する処理である付記9乃至11に記載のプログラム。
100 ライブラリ実行管理システム
110 ライブラリ呼び出し検知部
120 ライブラリ呼び出し履歴情報蓄積部
130 ライブラリ読み込み制御部
140 アプリケーション起動検知部
150 アプリケーション起動制御部
160 記憶装置
161 ライブラリ呼び出し履歴情報
170 ファイル実行可否情報提供部
171 ファイル実行可否情報
172 ファイル危険度情報
173 実行可否判定基準情報
900 コンピュータ
910 CPU
920 RAM
930 ROM
940 ストレージ媒体
950 通信インタフェース

Claims (7)

  1. ライブラリがアプリケーションまたは他のライブラリから呼び出されたことを検知し、呼び出した当該アプリケーションまたは当該ライブラリと呼び出された当該ライブラリを表すライブラリ呼び出し履歴情報を蓄積するライブラリ呼び出し履歴情報蓄積手段と、
    ファイルの実行の可否に関する情報であるファイル実行可否情報を提供するファイル実行可否情報提供手段と、
    前記アプリケーションの起動に際して、前記ライブラリ呼び出し履歴情報を参照して当該アプリケーションより呼び出される可能性がある前記ライブラリを抽出し、抽出された前記ライブラリに対応する前記ファイル実行可否情報に基づいて当該アプリケーションの起動制御処理を行うアプリケーション起動制御手段とを備え、
    前記ライブラリ呼び出し履歴情報蓄積手段が、当該ライブラリの累積呼び出し回数をさらに蓄積し、
    前記アプリケーション起動制御手段が、前記ファイル実行可否情報と前記ライブラリの累積呼び出し回数に基づいて当該アプリケーションの前記起動制御処理を行うライブラリ実行管理システム。
  2. 前記アプリケーション起動制御手段が、前記起動制御処理において、前記アプリケーションの起動を中止する請求項1に記載のライブラリ実行管理システム。
  3. 前記アプリケーション起動制御手段が、前記起動制御処理において、前記アプリケーションより呼び出される可能性がある前記ライブラリに関して警告する請求項1又は2に記載のライブラリ実行管理システム。
  4. 履歴情報蓄積手段が、ライブラリがアプリケーションまたは他のライブラリから呼び出されたことを検知し、呼び出した当該アプリケーションまたは当該ライブラリと呼び出された当該ライブラリを表すライブラリ呼び出し履歴情報を蓄積し、
    ファイル実行可否情報提供手段が、前記アプリケーションの起動に際して、前記ライブラリ呼び出し履歴情報を参照して当該アプリケーションより呼び出される可能性がある前記ライブラリを抽出し、
    アプリケーション起動制御手段が、抽出された前記ライブラリに対応する、ファイルの実行の可否に関する情報であるファイル実行可否情報に基づいて当該アプリケーションの起動制御処理を行う動作を、前記履歴情報蓄積手段と、前記ファイル実行可否情報提供手段と、前記アプリケーション起動制御手段とを備えるライブラリ実行管理システムに実行させ、
    前記ライブラリ呼び出し履歴情報が、当該ライブラリの累積呼び出し回数をさらに含み、
    前記アプリケーションの起動制御処理が、前記ファイル実行可否情報と前記ライブラリの累積呼び出し回数に基づいて行われるライブラリ実行管理方法。
  5. 前記アプリケーションの起動制御処理が、前記アプリケーションの起動を中止する処理である請求項4に記載のライブラリ実行管理方法。
  6. コンピュータに、
    ライブラリがアプリケーションまたは他のライブラリから呼び出されたことを検知し、呼び出した当該アプリケーションまたは当該ライブラリと呼び出された当該ライブラリを表すライブラリ呼び出し履歴情報を蓄積する機能と、
    前記アプリケーションの起動に際して、前記ライブラリ呼び出し履歴情報を参照して当該アプリケーションより呼び出される可能性がある前記ライブラリを抽出する機能と、
    抽出された前記ライブラリに対応する、ファイルの実行の可否に関する情報であるファイル実行可否情報に基づいて当該アプリケーションの起動制御処理を行う機能とを実現させ、
    前記ライブラリ呼び出し履歴情報が、当該ライブラリの累積呼び出し回数をさらに含み、
    前記アプリケーションの起動制御処理が、前記ファイル実行可否情報と前記ライブラリの累積呼び出し回数に基づいて行われるプログラム。
  7. 前記アプリケーションの起動制御処理が、前記アプリケーションの起動を中止する処理である請求項6に記載のプログラム。
JP2010187901A 2010-08-25 2010-08-25 ライブラリ実行管理システム、ライブラリ実行管理方法およびプログラム Expired - Fee Related JP5585303B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010187901A JP5585303B2 (ja) 2010-08-25 2010-08-25 ライブラリ実行管理システム、ライブラリ実行管理方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010187901A JP5585303B2 (ja) 2010-08-25 2010-08-25 ライブラリ実行管理システム、ライブラリ実行管理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2012048342A JP2012048342A (ja) 2012-03-08
JP5585303B2 true JP5585303B2 (ja) 2014-09-10

Family

ID=45903173

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010187901A Expired - Fee Related JP5585303B2 (ja) 2010-08-25 2010-08-25 ライブラリ実行管理システム、ライブラリ実行管理方法およびプログラム

Country Status (1)

Country Link
JP (1) JP5585303B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9507933B2 (en) * 2012-08-01 2016-11-29 Mitsubishi Electric Corporation Program execution apparatus and program analysis apparatus
JP5702352B2 (ja) * 2012-10-31 2015-04-15 株式会社オプティム ユーザ端末、信頼性管理サーバ、不正遠隔操作防止方法、及び不正遠隔操作防止プログラム
SG11201506642PA (en) * 2013-02-25 2015-09-29 Beyondtrust Software Inc Systems and methods of risk based rules for application control
EP3087525B1 (en) * 2013-12-27 2020-07-15 McAfee, LLC Frequency-based reputation

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005327036A (ja) * 2004-05-13 2005-11-24 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP4722730B2 (ja) * 2006-03-10 2011-07-13 富士通株式会社 セキュリティ管理プログラム、セキュリティ管理装置、およびセキュリティ管理方法

Also Published As

Publication number Publication date
JP2012048342A (ja) 2012-03-08

Similar Documents

Publication Publication Date Title
US10083294B2 (en) Systems and methods for detecting return-oriented programming (ROP) exploits
US11295021B2 (en) Using a threat model to monitor host execution in a virtualized environment
US8079085B1 (en) Reducing false positives during behavior monitoring
US9443080B2 (en) Application execution in a restricted application execution environment
TWI569164B (zh) 在具有安全網域與較不安全網域之資料處理設備之例外處理
US20130160126A1 (en) Malware remediation system and method for modern applications
US9313222B2 (en) Method, electronic device, and user interface for on-demand detecting malware
US20070050848A1 (en) Preventing malware from accessing operating system services
KR20180032566A (ko) 다수 소프트웨어 개체들에 걸쳐서 악성 행동을 트래킹하기 위한 시스템들 및 방법들
KR20180018531A (ko) 인터프리터 가상 머신을 이용한 행동 멀웨어 탐지
WO2015113052A1 (en) Detecting and preventing execution of software exploits
CN106326735B (zh) 防注入的方法和装置
US11593473B2 (en) Stack pivot exploit detection and mitigation
JP5585303B2 (ja) ライブラリ実行管理システム、ライブラリ実行管理方法およびプログラム
US20190286820A1 (en) Apparatus and method for detecting container rootkit
KR101716690B1 (ko) 데이터 무단 엑세스 차단 방법 및 그 기능이 구비된 컴퓨팅 장치
KR20210001057A (ko) 랜섬웨어 탐지 및 차단 방법
US9804932B2 (en) Method and device for processing data and electronic apparatus
JP2017174426A (ja) ユーザモードコンポーネント注入技法
US9619306B2 (en) Information processing device, control method thereof, and recording medium
JP5392494B2 (ja) ファイルチェック装置、ファイルチェックプログラムおよびファイルチェック方法
JP5997005B2 (ja) 情報処理装置、プロセスの正常終了判定方法およびプログラム
US10534910B1 (en) Using threat model to monitor host execution
US9098356B2 (en) Hook re-entry prevention device and recording medium, in which program for executing method thereof in computer is recorded thereon
CN115994350A (zh) 拦截文件打开方式变更方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130716

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140319

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140408

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140603

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140624

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140707

R150 Certificate of patent or registration of utility model

Ref document number: 5585303

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees