JP2007072969A - Operation history protection device and operation history protection program - Google Patents

Operation history protection device and operation history protection program Download PDF

Info

Publication number
JP2007072969A
JP2007072969A JP2005262111A JP2005262111A JP2007072969A JP 2007072969 A JP2007072969 A JP 2007072969A JP 2005262111 A JP2005262111 A JP 2005262111A JP 2005262111 A JP2005262111 A JP 2005262111A JP 2007072969 A JP2007072969 A JP 2007072969A
Authority
JP
Japan
Prior art keywords
operation history
processing unit
history
process processing
specific
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
Application number
JP2005262111A
Other languages
Japanese (ja)
Inventor
Hiroshi Fujimoto
拓 藤本
Takashi Suzuki
敬 鈴木
Takehiro Nakayama
雄大 中山
Atsushi Takeshita
敦 竹下
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.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2005262111A priority Critical patent/JP2007072969A/en
Publication of JP2007072969A publication Critical patent/JP2007072969A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To safely protect an operation history of a process from a buffer overflow attack or the like while suppressing performance degradation of an entire system. <P>SOLUTION: A restricted authorization process processing part 200 controls a restricted authorization process operating based on a restricted authorization level which is the restricted authorization level lower than a privilege level which the various functions of an operation system can be utilized, and which only a part of various functions can be utilized. A kernel privilege process processing part 300 controls a kernel privilege process operating based on the privilege level. The restricted authorization process processing part 200 records a history of operation of the restricted authorization process in the restricted authorization process processing part 200. The kernel privilege process processing part 300 records a history of specific operation out of the operation history recorded in the restricted authorization process processing part in the kernel privilege process processing part 300. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、プロセスの動作履歴をバッファオーバーフロー攻撃等から保護する動作履歴保護装置及び動作履歴保護プログラムに関する。   The present invention relates to an operation history protection device and an operation history protection program for protecting an operation history of a process from a buffer overflow attack or the like.

パーソナルコンピュータ、PDA(Personal Digital Assistant)や携帯電話等の端末装置は、ネットワークを介してプログラムを受信し、受信したプログラムを実行している。これによれば、端末装置は、必要なアプリケーションを実行するためのプログラムを迅速に取得することができるため、端末装置の利便性を向上させることができる。   A terminal device such as a personal computer, a PDA (Personal Digital Assistant), or a mobile phone receives the program via the network and executes the received program. According to this, since the terminal device can quickly acquire a program for executing a necessary application, the convenience of the terminal device can be improved.

一方、ネットワークを介して送信されるプログラムを構成するコードには、端末装置の内部データを破壊するコード、端末装置に対する不正操作を実行するコード、端末装置が用いるリソースを乱用するコードなどの不正コードが含まれる場合がある。このため、ダウンロード可能なアプリケーションの拡大に伴ない、当該不正コードによるシステム障害を未然に防ぐ処理、又は当該不正コードによるシステム障害が発生してもシステムの状態を適切に復旧させる処理の重要性が増している。   On the other hand, the code that constitutes the program transmitted via the network includes illegal codes such as a code that destroys internal data of the terminal device, a code that executes an illegal operation on the terminal device, and a code that abuses resources used by the terminal device May be included. For this reason, the importance of processing to prevent system failure due to the malicious code in advance with the expansion of downloadable applications, or processing to properly restore the system state even if system failure due to the malicious code occurs is important. It is increasing.

従来から端末装置は、プログラムにより生成されたプロセスの動作履歴を逐次記録(例えば、オペレーティングシステムで用いられるSYSLOGが動作履歴を逐次記録)し、当該プロセスによりシステム障害が発生した場合には、記録したプロセスの動作履歴を参照することによりシステム障害が発生する前のシステムの状態に復旧させる。   Conventionally, the terminal device sequentially records the operation history of the process generated by the program (for example, SYSLOG used in the operating system records the operation history sequentially), and records when a system failure occurs due to the process. By referring to the operation history of the process, the system state before the occurrence of the system failure is restored.

しかしながら、上記システム障害の復旧が行われるためには、プロセスの動作履歴自体の信頼性が保証されなければならない。このため、システム障害に関わる動作履歴が破壊されたり、動作履歴が上記不正コードを含むプログラムにより改竄された場合には、端末装置は、上記動作履歴を本来の目的に利用することができなくなる。   However, in order to recover the system failure, it is necessary to guarantee the reliability of the process operation history itself. For this reason, when the operation history related to the system failure is destroyed or the operation history is falsified by the program including the illegal code, the terminal device cannot use the operation history for the original purpose.

この点を解決するための従来技術として特許文献1で提案されている動作履歴正当性検証技術を例にして説明する。   An operation history validity verification technique proposed in Patent Document 1 will be described as an example of a conventional technique for solving this point.

当該動作履歴正当性検証技術では、現時点の動作履歴とその前の動作履歴とを含むデータに対して電子署名が施されて記録される。記録された電子署名は公開鍵により復号化され、復号化後のデータと予め算出したデータとが一致している場合には、復号化後のデータは正当なデータであると判定される。   In the operation history correctness verification technique, an electronic signature is applied to data including the current operation history and the previous operation history and recorded. The recorded electronic signature is decrypted with the public key, and if the decrypted data matches the data calculated in advance, the decrypted data is determined to be valid data.

一方、復号化後のデータと予め算出したデータとが一致していない場合には、復号化後のデータは、正当なデータではなく、改竄されたデータであると判定される。当該動作履歴正当性検証技術によれば、上記電子署名の正当性を検証することにより動作履歴の正当性を検証することができる。
特開2003−143139号公報
On the other hand, if the decrypted data and the pre-calculated data do not match, it is determined that the decrypted data is not legitimate data but is falsified data. According to the operation history validity verification technology, the validity of the operation history can be verified by verifying the validity of the electronic signature.
JP 2003-143139 A

ところで、プログラムにより生成されたプロセスは、オペレーティングシステムの各種機能を利用することができる特権レベルに基づいて動作するカーネル特権プロセスと、特権レベルよりも低い制限付権限レベルであり、且つ各種機能の一部のみの機能を利用することができる制限付権限レベルに基づいて動作する制限付権限プロセスとに分類される。   By the way, the process generated by the program is a kernel privilege process that operates based on a privilege level that can use various functions of the operating system, a restricted authority level that is lower than the privilege level, and one of various functions. It is classified into a restricted authority process that operates based on a restricted authority level that can use only the functions of the department.

制限付権限プロセスは、該制限付権限プロセスが動作する制限付権限プロセス領域のみに対するアクセス権を有し、カーネル特権プロセスが動作するカーネル特権プロセス領域に対するアクセス権を有しない。従って、制限付権限プロセスは、該制限付権限プロセス自体の動作履歴を制限付権限プロセス領域に記録することとなる。   The restricted authority process has an access right only to the restricted authority process area in which the restricted authority process operates, and does not have an access right to the kernel privileged process area in which the kernel privileged process operates. Therefore, the restricted authority process records the operation history of the restricted authority process itself in the restricted authority process area.

しかしながら、制限付権限プロセス領域で用いられるファイルやプログラム等は、カーネル特権プロセス領域と比較して、悪意の目的を持って端末装置を利用する悪意者から改竄される恐れが高い。例えば、バッファオーバーフロー攻撃等を利用して端末装置の管理者権限を取得した悪意者は、制限付権限プロセス領域内のファイルやプログラム等を改竄することができる。このため、制限付権限プロセス領域に記録された動作履歴の信頼性は、カーネル特権プロセス領域と比較して低くなる。   However, files, programs, and the like used in the restricted authority process area are more likely to be falsified by a malicious person who uses the terminal device for malicious purposes than the kernel privileged process area. For example, a Service-to-Self who has acquired the administrator authority of the terminal device using a buffer overflow attack or the like can tamper with a file or program in the restricted authority process area. For this reason, the reliability of the operation history recorded in the restricted authority process area is lower than that in the kernel privileged process area.

従来からの制限付権限プロセスの動作履歴は、制限付権限プロセス領域で保護されている。このため、上記悪意者が端末装置の管理者権限を取得することにより、動作履歴の正当性を検証するための電子署名等の検証情報が破壊、又は当該検証情報を作成する処理自体が改竄されるという安全性が損なわれる恐れが生じていた。   The operation history of the conventional restricted authority process is protected in the restricted authority process area. For this reason, when the Service-to-Self acquires the administrator authority of the terminal device, verification information such as an electronic signature for verifying the validity of the operation history is destroyed, or the process itself for creating the verification information is falsified. There was a risk that the safety might be impaired.

この点を解決するためには、制限付権限プロセスではなくカーネル特権プロセスが制限付権限プロセスの動作履歴を上記バッファオーバーフロー攻撃等から保護する方法が考えられる。1つ目の方法としては、カーネル特権プロセスが制限付権限プロセスの動作を監視し、当該カーネル特権プロセスが制限付権限プロセスの動作履歴を取得してその動作履歴を記録する方法が考えられる。2つ目としては、制限付権限プロセスの動作履歴の正当性を保証するために、カーネル特権プロセスが全ての制限付権限プロセスの動作履歴に対する電子署名をカーネル特権プロセス領域に記録することが考えられる。   In order to solve this point, a method in which the kernel privilege process, not the restricted authority process, protects the operation history of the restricted authority process from the buffer overflow attack or the like can be considered. As a first method, a method in which a kernel privileged process monitors the operation of a restricted authority process, the kernel privileged process acquires an operation history of the restricted authority process, and records the operation history can be considered. Second, in order to guarantee the validity of the operation history of the restricted authority process, it is conceivable that the kernel privileged process records an electronic signature for the operation history of all restricted authority processes in the kernel privileged process area. .

ところが、1つ目の方法では、カーネル特権プロセス自体が記録する制限付権限プロセスの動作履歴は、制限付権限プロセス自体が記録する制限付権限プロセスの動作履歴と比較して、利用者にとって理解し難い言語体系で構成されており、有用性に乏しい。   However, in the first method, the operation history of the restricted authority process recorded by the kernel privileged process itself is compared with the operation history of the restricted authority process recorded by the restricted authority process itself and understood by the user. It is composed of difficult language systems and is not very useful.

一方、2つ目の方法では、上記端末装置がマルチタスクのオペレーティングシステムを実行することができる場合には、通常は同時並行して多数の制限付権限プロセスが動作することとなる。従って、カーネル特権プロセスが、「全て」の制限付権限プロセスの動作履歴に対して電子署名を施し、その電子署名をカーネル特権プロセス領域で記憶することとなると、カーネル特権プロセスは、カーネル特権プロセス自体の処理量を増大させてしまい、端末装置のシステム全体に対する深刻な性能劣化を引き起こす場合がある。   On the other hand, in the second method, when the terminal device can execute a multitasking operating system, a number of restricted authority processes usually operate in parallel at the same time. Therefore, when the kernel privileged process applies an electronic signature to the operation history of the “all” restricted authority process and stores the electronic signature in the kernel privileged process area, the kernel privileged process itself becomes the kernel privileged process itself. May cause serious performance degradation of the terminal device system as a whole.

そこで、本発明は以上の点に鑑みて成されたものであり、システム全体の性能劣化を抑制しつつ、プロセスの動作履歴をバッファオーバーフロー攻撃等から安全に保護することができる動作履歴保護装置及び動作履歴保護プログラムを提供することを目的とする。   Therefore, the present invention has been made in view of the above points, and an operation history protection device that can safely protect a process operation history from a buffer overflow attack or the like while suppressing performance deterioration of the entire system, and An object is to provide an operation history protection program.

上記課題を解決するために、本発明の第1の特徴は、オペレーティングシステムの各種機能を利用することができる特権レベルに基づいて動作するカーネル特権プロセスを制御するカーネル特権プロセス処理部と、特権レベルよりも低い制限付権限レベルであり、各種機能の一部のみを利用することができる制限付権限レベルに基づいて動作する制限付権限プロセスを制御する制限付権限プロセス処理部とを備え、制限付権限プロセス処理部は、制限付権限プロセスの動作の履歴を制限付権限プロセス処理部に記録し、カーネル特権プロセス処理部は、制限付権限プロセス処理部に記録される動作の履歴のうちの特定動作の履歴をカーネル特権プロセス処理部に記録することを要旨とする。   In order to solve the above-described problem, a first feature of the present invention is that a kernel privileged process processing unit that controls a kernel privileged process that operates based on a privilege level that can use various functions of an operating system, and a privilege level A restricted authority process processing unit that controls a restricted authority process that operates based on a restricted authority level that can use only a part of various functions. The privileged process processing unit records the history of operations of the restricted privileged process in the restricted privileged process processing unit, and the kernel privileged process processing unit selects a specific operation from the history of operations recorded in the restricted privileged process processing unit. The history is recorded in the kernel privileged process processing unit.

かかる特徴によれば、カーネル特権プロセス処理部が制限付権限プロセスの「全ての動作」の履歴を保護するのではなく、制限付権限プロセスの全ての動作のうちの「特定動作」の履歴をカーネル特権プロセス処理部に記録する。これにより、動作履歴保護装置は、カーネル特権プロセス処理部における処理負担を増大させないようにすることができる。このため、動作履歴保護装置は、制限付権限プロセスの「特定動作」の履歴をカーネル特権プロセス処理部内で記録することにより、システム全体の性能劣化を抑制しつつ、制限付権限プロセスの特定動作の履歴をバッファオーバーフロー攻撃等から安全に保護することができる。   According to such a feature, the kernel privileged process processing unit does not protect the history of “all operations” of the restricted authority process, but stores the history of “specific operations” of all the operations of the restricted authority process. Record in the privileged process processing part. Thereby, the operation history protection device can prevent the processing load on the kernel privileged process processing unit from increasing. For this reason, the operation history protection device records the history of the “specific operation” of the restricted authority process in the kernel privileged process processing unit, thereby suppressing the performance degradation of the entire system and suppressing the specific operation of the restricted authority process. History can be safely protected from buffer overflow attacks.

本発明の第2の特徴は、特定動作がオペレーティングシステムの設定に関する動作であることを要旨とする。   The gist of the second feature of the present invention is that the specific operation is an operation related to setting of the operating system.

本発明の第3の特徴は、制限付権限プロセスが第1プロセスと第2プロセスとを含んでおり、カーネル特権プロセス処理部が、第1プロセスと第2プロセスとのプロセス間通信が実行中である場合には、第1プロセスと第2プロセスとのそれぞれの特定動作の履歴をカーネル特権プロセス処理部に記録することを要旨とする。   A third feature of the present invention is that the restricted authority process includes a first process and a second process, and the kernel privileged process processing unit is executing inter-process communication between the first process and the second process. In some cases, the history of specific operations of the first process and the second process is recorded in the kernel privileged process processing unit.

本発明の第4の特徴は、制限付権限プロセスが第1プロセスと第2プロセスとを含んでおり、カーネル特権プロセス処理部が、第1プロセスの特定動作が実行中であるときに、第1プロセスに基づいて生成された第2プロセスの特定動作が実行中である場合には、第1プロセスと第2プロセスとのそれぞれの特定動作の履歴をカーネル特権プロセス処理部に記録することを要旨とする。   According to a fourth aspect of the present invention, when the restricted authority process includes a first process and a second process, and the kernel privileged process processing unit executes the specific operation of the first process, the first process is performed. When the specific operation of the second process generated based on the process is being executed, the history of the specific operation of each of the first process and the second process is recorded in the kernel privileged process processing unit. To do.

本発明の第5の特徴は、カーネル特権プロセス処理部が、特定動作を実行中である制限付権限プロセスの信頼性の度合を示す信頼度の大きさに応じて、特定動作の履歴をカーネル特権プロセス処理部に記録するか否か決定することを要旨とする。   The fifth feature of the present invention is that the kernel privileged process processing unit stores the history of the specific operation according to the degree of reliability indicating the degree of reliability of the restricted authority process that is executing the specific operation. The gist is to determine whether or not to record in the process processing unit.

本発明の第6の特徴は、カーネル特権プロセス処理部が、カーネル特権プロセス処理部のみが参照可能な鍵情報を用いることにより、制限付権限プロセス処理部に記録される特定動作の履歴を暗号化することを要旨とする。   The sixth feature of the present invention is that the kernel privileged process processing unit encrypts a history of specific operations recorded in the restricted authority process processing unit by using key information that can be referred to only by the kernel privileged process processing unit. The gist is to do.

本発明の第7の特徴は、カーネル特権プロセス処理部が、制限付権限プロセス処理部に記録される特定動作の履歴の複製をカーネル特権プロセス処理部に記録することを要旨とする。   The gist of the seventh feature of the present invention is that the kernel privileged process processing unit records a copy of the history of the specific operation recorded in the restricted authority process processing unit in the kernel privileged process processing unit.

本発明の第8の特徴は、カーネル特権プロセス処理部が、制限付権限プロセス処理部に記録される特定動作の履歴のハッシュ値をカーネル特権プロセス処理部に記録することを要旨とする。   The eighth feature of the present invention is summarized in that the kernel privileged process processing unit records the hash value of the history of the specific operation recorded in the restricted authority process processing unit in the kernel privileged process processing unit.

本発明の第9の特徴は、カーネル特権プロセス処理部が、信頼度の大きさに応じて、制限付権限プロセス処理部に記録される特定動作の履歴の複製をカーネル特権プロセス処理部に記録する処理、又は制限付権限プロセス処理部に記録される特定動作の履歴のハッシュ値をカーネル特権プロセス処理部に記録する処理のいずれかを決定することを要旨とする。   According to a ninth feature of the present invention, the kernel privileged process processing unit records, in the kernel privileged process processing unit, a copy of a history of specific operations recorded in the restricted authority process processing unit according to the reliability level. The gist of the present invention is to determine either the process or the process of recording the hash value of the history of the specific operation recorded in the restricted authority process processing unit in the kernel privileged process processing unit.

本発明の第10の特徴は、カーネル特権プロセス処理部が、制限付権限プロセス処理部に記録された特定動作の履歴のハッシュ値とカーネル特権プロセス処理部に記録したハッシュ値とが同一である場合には、特定動作の履歴が正当な履歴であると判定することを要旨とする。   The tenth feature of the present invention is that the kernel privileged process processing unit has the same hash value recorded in the kernel privileged process processing unit and the hash value of the specific operation history recorded in the restricted authority process processing unit. The gist is to determine that the history of the specific action is a valid history.

本発明の第11の特徴は、カーネル特権プロセス処理部は、制限付権限プロセスが実行中の特定動作を検出する特定動作検出部と、検出された特定動作の履歴が保護対象であることを個々に識別するための固有の識別情報を発行する識別情報発行部と、制限付権限プロセスの動作の履歴の保護を要求するための動作履歴保護要求情報を制限付権限プロセスから取得したことに基づいて、動作履歴保護要求情報の要求元の制限付権限プロセスのプロセスIDが識別情報に含まれている場合には、制限付権限プロセスの特定動作の履歴をカーネル特権プロセス処理部に記録させる動作履歴記録部とを備えることを要旨とする。   The eleventh feature of the present invention is that the kernel privileged process processing unit is configured to detect a specific operation being executed by the restricted authority process, and to detect that the history of the detected specific operation is a protection target. Based on the fact that the identification information issuing unit that issues unique identification information for identifying the operation history and the operation history protection request information for requesting protection of the operation history of the restricted authority process are obtained from the restricted authority process When the process ID of the restricted authority process that is the request source of the operation history protection request information is included in the identification information, the operation history record that records the history of the specific operation of the restricted authority process in the kernel privileged process processing unit It is a summary to provide a part.

本発明の第12の特徴は、特定動作検出部が、制限付権限プロセスが発行したシステムコールに特定のライブラリ関数が含まれている場合には、制限付権限プロセスが実行中の特定動作を検出することを要旨とする。   A twelfth feature of the present invention is that the specific action detecting unit detects a specific action being executed by the restricted authority process when the specific library function is included in the system call issued by the restricted authority process. The gist is to do.

本発明の第13の特徴は、特定動作検出部が単位時間当りに特定動作を検出した検出回数を算出するものであり、算出された検出回数が予め設定された設定回数を超えている場合には、動作履歴記録部により動作履歴保護要求情報が取得された後の動作履歴記録部における処理の開始を所定時間遅延させる遅延処理部を備えることを要旨とする。   A thirteenth feature of the present invention is to calculate the number of detections by which the specific action detecting unit has detected a specific action per unit time, and when the calculated number of detections exceeds a preset number of times. The gist of the invention is that it includes a delay processing unit that delays the start of processing in the operation history recording unit after the operation history protection request information is acquired by the operation history recording unit for a predetermined time.

本発明の第14の特徴は、識別情報発行部は、制限付権限プロセスが発行したシステムコールに含まれる特定のライブラリ関数の種類、及び制限付権限プロセスの信頼性の度合を示す信頼度の大きさに応じて、識別情報を発行するか否か決定することを要旨とする。   A fourteenth feature of the present invention is that the identification information issuing unit has a high reliability indicating the type of a specific library function included in the system call issued by the restricted authority process and the degree of reliability of the restricted authority process. Accordingly, the gist is to determine whether or not to issue identification information.

本発明の第15の特徴は、動作履歴保護要求情報が第1動作履歴保護要求情報と第2動作履歴保護要求情報とを含んでおり、第1動作履歴保護要求情報が制限付権限プロセスの動作の履歴の記録先に対するアクセス権の付与を要求するためのシステムコールであり、第2動作履歴保護要求情報がアクセス権が付与された記録先に対して制限付権限プロセスの動作の履歴を記録するためのシステムコールであり、動作履歴記録部が、第1動作履歴保護要求情報の要求元の制限付権限プロセスのプロセスIDが識別情報に含まれている場合には、第2動作履歴保護要求情報に含まれている制限付権限プロセスの動作の履歴をカーネル特権プロセス処理部に記録させることを要旨とする。   According to a fifteenth feature of the present invention, the operation history protection request information includes first operation history protection request information and second operation history protection request information, and the first operation history protection request information is an operation of a restricted authority process. Is a system call for requesting the granting of access right to the recording destination of the history, and the second operation history protection request information records the history of the operation of the restricted authority process for the recording destination to which the access right is granted. Second operation history protection request information when the operation history recording unit includes the process ID of the restricted authority process of the request source of the first operation history protection request information in the identification information. The gist is to record the history of the operation of the restricted authority process included in the kernel privileged process processing unit.

本発明の第16の特徴は、動作履歴保護要求情報が第3動作履歴保護要求情報を含んでおり、第3動作履歴保護要求情報がアクセス権が付与された記録先に対するアクセス権の解除を要求するためのシステムコールであり、動作履歴記録部が、第3動作履歴保護要求情報を制限付権限プロセスから取得した場合には、動作履歴記録部の処理を終了することを要旨とする。   According to a sixteenth feature of the present invention, the operation history protection request information includes the third operation history protection request information, and the third operation history protection request information requests release of the access right to the recording destination to which the access right is given. The operation history recording unit ends the processing of the operation history recording unit when the operation history recording unit acquires the third operation history protection request information from the restricted authority process.

本発明の特徴によれば、システム全体の性能劣化を抑制しつつ、プロセスの動作履歴をバッファオーバーフロー攻撃等から安全に保護することができる。   According to the characteristics of the present invention, it is possible to safely protect the operation history of a process from a buffer overflow attack and the like while suppressing the performance degradation of the entire system.

[第1実施形態]
(動作履歴保護装置の構成)
図1は、本実施形態における動作履歴保護装置100の概略構成図である。図1に示すように、動作履歴保護装置100は、制限付権限プロセス処理部200と、カーネル特権プロセス処理部300とを備えている。
[First Embodiment]
(Configuration of operation history protection device)
FIG. 1 is a schematic configuration diagram of an operation history protection device 100 according to the present embodiment. As shown in FIG. 1, the operation history protection device 100 includes a restricted authority process processing unit 200 and a kernel privileged process processing unit 300.

制限付権限プロセス処理部200は、オペレーティングシステムの各種機能を利用することができる特権レベルよりも低い制限付権限レベルであり、各種機能の一部のみを利用することができる制限付権限レベルに基づいて動作するプロセス210を制御する。なお、プロセス210は、制限付権限プロセスを構成する。   The restricted authority process processing unit 200 is a restricted authority level lower than a privilege level that can use various functions of the operating system, and is based on the restricted authority level that can use only some of the various functions. Control the process 210 that operates. The process 210 constitutes a restricted authority process.

制限付権限プロセス処理部200は、プロセス210と、動作履歴記録部220とを備えている。プロセス210は、プロセス210の動作履歴を動作履歴記録部220に順次記録する。   The restricted authority process processing unit 200 includes a process 210 and an operation history recording unit 220. The process 210 sequentially records the operation history of the process 210 in the operation history recording unit 220.

カーネル特権プロセス処理部300は、オペレーティングシステムの各種機能を利用することができる特権レベルに基づいて動作するカーネル特権プロセスを制御する。   The kernel privileged process processing unit 300 controls a kernel privileged process that operates based on a privilege level at which various functions of the operating system can be used.

カーネル特権プロセス処理部300は、特定動作検出部310と、識別情報発行部320と、動作履歴保護規則情報記憶部330と、動作履歴保護要求情報検出部340と、監視リスト情報記憶部350と、動作履歴保護制御部360と、保護情報記録部370とを備えている。なお、特定動作検出部310、識別情報発行部320、動作履歴保護要求情報検出部340及び動作履歴保護制御部360は、カーネル特権プロセスを構成する。   The kernel privileged process processing unit 300 includes a specific operation detection unit 310, an identification information issuing unit 320, an operation history protection rule information storage unit 330, an operation history protection request information detection unit 340, a monitoring list information storage unit 350, An operation history protection control unit 360 and a protection information recording unit 370 are provided. The specific operation detecting unit 310, the identification information issuing unit 320, the operation history protection request information detecting unit 340, and the operation history protection control unit 360 constitute a kernel privilege process.

特定動作検出部310は、プロセス210が実行中の特定動作を検出する。例えば、特定動作検出部310は、プロセス210が発行したシステムコール(後述するライブラリ関数呼出システムコール230など)に特定のライブラリ関数が含まれている場合には、プロセス210が実行中の特定動作を検出する。   The specific action detection unit 310 detects a specific action that the process 210 is executing. For example, if a specific library function is included in a system call (such as a library function call system call 230 described later) issued by the process 210, the specific operation detection unit 310 performs a specific operation being executed by the process 210. To detect.

識別情報発行部320は、特定動作検出部310により検出された特定動作に基づいて、当該特定動作の履歴が保護対象であることを個々に識別するための固有の識別情報321を発行する。   Based on the specific operation detected by the specific operation detection unit 310, the identification information issuing unit 320 issues unique identification information 321 for individually identifying that the history of the specific operation is a protection target.

又は、識別情報発行部320は、後述する動作履歴保護規則情報331を参照し、プロセス210が発行したシステムコールに含まれる特定のライブラリ関数の種類、及びプロセスの信頼性の度合を示す信頼度の大きさに応じて、識別情報321を発行するか否か決定する。   Alternatively, the identification information issuing unit 320 refers to the operation history protection rule information 331 described later, and the reliability information indicating the type of a specific library function included in the system call issued by the process 210 and the reliability of the process. It is determined whether or not the identification information 321 is issued according to the size.

動作履歴保護規則情報記憶部330は、図2に示す動作履歴保護規則情報331を記憶する。図2に示すように、動作履歴保護規則情報331は、プロセス210の特定動作に関するライブラリ関数と、そのライブラリ関数を呼び出したプロセス210の特定動作の履歴を保護対象とするか否か決定するための動作履歴保護規則とにより構成されている。   The operation history protection rule information storage unit 330 stores the operation history protection rule information 331 shown in FIG. As shown in FIG. 2, the operation history protection rule information 331 is used to determine whether or not a library function related to a specific operation of the process 210 and a history of the specific operation of the process 210 that called the library function are to be protected. And operation history protection rules.

ここで、動作履歴保護規則は、プロセス210の信頼度により定められている。プロセス210の信頼度は、プロセス210を生成したプログラムの信頼性の度合により決定される。   Here, the operation history protection rule is determined by the reliability of the process 210. The reliability of the process 210 is determined by the degree of reliability of the program that generated the process 210.

本実施形態では、例えば、プログラムが任意のベンダーから提供された場合には、プログラムの信頼性は低い場合が多いため、当該プログラムが生成したプロセス210の信頼度は「低」に設定される。プログラムが一定実績のあるベンダーから提供された場合には、プログラムの信頼性は任意のベンダーから提供されたプログラムよりも高いため、当該プログラムが生成したプロセス210の信頼度は「中」に設定される。プログラムが予めシステムに設定されている場合には、プログラムの信頼性は一定実績のあるベンダーから提供されたプログラムよりも高いため、当該プログラムが生成したプロセス210の信頼度は「高」に設定される。   In the present embodiment, for example, when a program is provided from an arbitrary vendor, the reliability of the program is often low, so the reliability of the process 210 generated by the program is set to “low”. If the program is provided by a vendor with a certain track record, the reliability of the program 210 generated by the program is set to “medium” because the reliability of the program is higher than the program provided by any vendor. The If the program is set in the system in advance, the reliability of the program is higher than that of a program provided by a vendor with a certain track record, so the reliability of the process 210 generated by the program is set to “high”. The

図3は、本実施形態における識別情報321の内容を示す図である。図3に示すように、識別情報321は、特定動作を実行中であるプロセス210を個々に識別するための固有のプロセスIDと、プロセス210が特定動作を実行中に呼び出したライブラリ関数とにより構成されている。   FIG. 3 is a diagram showing the contents of the identification information 321 in the present embodiment. As shown in FIG. 3, the identification information 321 is composed of a unique process ID for individually identifying the process 210 that is executing the specific operation, and a library function that the process 210 calls while executing the specific operation. Has been.

動作履歴保護要求情報検出部340は、プロセス210の動作履歴の保護を要求するための動作履歴保護要求情報をプロセス210から取得したことに基づいて、識別情報321及び監視リスト情報351を参照し、特定の動作履歴保護要求情報(後述する第2動作履歴保護要求情報)のみを動作履歴保護制御部360に送信する。   The operation history protection request information detection unit 340 refers to the identification information 321 and the monitoring list information 351 based on the fact that the operation history protection request information for requesting the protection of the operation history of the process 210 is acquired from the process 210. Only specific operation history protection request information (second operation history protection request information described later) is transmitted to the operation history protection control unit 360.

動作履歴保護制御部360は、動作履歴保護要求情報検出部340により取得された特定の動作履歴保護要求情報に基づいて、該動作履歴保護要求情報に含まれているプロセス210の特定動作の履歴を保護情報記録部370に記録する。   Based on the specific operation history protection request information acquired by the operation history protection request information detection unit 340, the operation history protection control unit 360 stores the specific operation history of the process 210 included in the operation history protection request information. Recorded in the protection information recording unit 370.

本実施形態では、動作履歴保護要求情報は、第1動作履歴保護要求情報(後述するopenシステムコール240)と、第2動作履歴保護要求情報(後述するwriteシステムコール250)と、第3動作履歴保護要求情報(後述するcloseシステムコール260)とを含んでいる。   In the present embodiment, the operation history protection request information includes first operation history protection request information (open system call 240 described later), second operation history protection request information (write system call 250 described later), and third operation history. It includes protection request information (a close system call 260 described later).

動作履歴保護要求情報検出部340は、第1動作履歴保護要求情報(openシステムコール240)の要求元のプロセス210のプロセスIDが識別情報に含まれいる場合には、第2動作履歴保護要求情報(writeシステムコール250)を動作履歴保護制御部360に送信する。動作履歴保護制御部360は、動作履歴保護要求情報検出部340から送信された第2動作履歴保護要求情報に基づいて、当該第2動作履歴保護要求情報に含まれているプロセス210の動作履歴を保護情報記録部370に記録する。   The operation history protection request information detection unit 340, when the process ID of the process 210 of the request source of the first operation history protection request information (open system call 240) is included in the identification information, (Write system call 250) is transmitted to the operation history protection control unit 360. Based on the second operation history protection request information transmitted from the operation history protection request information detection unit 340, the operation history protection control unit 360 stores the operation history of the process 210 included in the second operation history protection request information. Recorded in the protection information recording unit 370.

動作履歴保護制御部360は、動作履歴保護要求情報検出部340から送信された第3動作履歴保護要求情報(closeシステムコール260)に基づいて、動作履歴保護制御部360の処理を終了する。   The operation history protection control unit 360 ends the process of the operation history protection control unit 360 based on the third operation history protection request information (close system call 260) transmitted from the operation history protection request information detection unit 340.

なお、動作履歴保護要求情報検出部340と、監視リスト情報記憶部350と、動作履歴保護制御部360と、保護情報記録部370とは、動作履歴記録部を構成する。   The operation history protection request information detection unit 340, the monitoring list information storage unit 350, the operation history protection control unit 360, and the protection information recording unit 370 constitute an operation history recording unit.

(動作履歴保護装置の動作)
次に、本実施形態における動作履歴保護装置100の動作について図4を参照しながら説明する。
(Operation of the operation history protection device)
Next, the operation of the operation history protection device 100 in this embodiment will be described with reference to FIG.

図4に示すように、S101において、特定動作検出部310は、プロセス210が実行中の特定動作を検出する。ここで、プロセス210が実行中の特定動作とは、プロセス210が予め設定された特定のライブラリ関数を呼び出している動作である。当該特定動作には、オペレーティングシステムの設定に関する動作などが含まれている。   As illustrated in FIG. 4, in S <b> 101, the specific action detection unit 310 detects a specific action that the process 210 is executing. Here, the specific operation being executed by the process 210 is an operation in which the process 210 calls a specific library function set in advance. The specific operation includes an operation related to setting of the operating system.

本実施形態では、ライブラリ関数を記述するコードの先頭にライブラリ関数呼出システムコール230(図1参照)が設定されている。ライブラリ関数呼出システムコール230は、ライブラリ関数を特定するための情報を備えており、プロセス210が呼び出す特定のライブラリ関数名と、プロセス210が特定のライブラリ関数を呼び出すか否か判定するためのフラグとを含んでいる。   In this embodiment, a library function call system call 230 (see FIG. 1) is set at the head of the code describing the library function. The library function call system call 230 includes information for specifying a library function, a specific library function name that the process 210 calls, and a flag for determining whether or not the process 210 calls a specific library function. Is included.

フラグは、プロセス210が特定のライブラリ関数を呼び出す場合には「1」となり、プロセス210が特定のライブラリ関数を呼び出さない場合には「0」となる。ライブラリ関数呼出システムコール230の一例を以下に示す。   The flag is “1” when the process 210 calls a specific library function, and is “0” when the process 210 does not call a specific library function. An example of the library function call system call 230 is shown below.

Func_CALL(“ライブラリ関数名”,フラグ)
例えば、特定動作検出部310は、プロセス210が発行したライブラリ関数呼出システムコール230を取得する。特定動作検出部310は、ライブラリ関数呼出システムコール230に含まれているフラグが「1」である場合には、ライブラリ関数呼出システムコール230に含まれている“ライブラリ関数名”に対応する特定のライブラリ関数をプロセス210が呼び出していることを検出する。この場合には、特定動作検出部310は、プロセス210が特定のライブラリ関数を呼び出していることを検出することにより、プロセス210が特定動作を実行中であることを検出することができる。
Func_CALL ("library function name", flag)
For example, the specific operation detection unit 310 acquires a library function call system call 230 issued by the process 210. When the flag included in the library function call system call 230 is “1”, the specific operation detection unit 310 specifies a specific function corresponding to the “library function name” included in the library function call system call 230. It detects that process 210 is calling a library function. In this case, the specific operation detection unit 310 can detect that the process 210 is executing a specific operation by detecting that the process 210 is calling a specific library function.

S103において、特定動作検出部310は、プロセス210が特定動作を実行中であることを示す情報を検出結果情報として識別情報発行部320に送信する。検出結果情報には、特定動作を実行中であるプロセス210を個々に識別するための固有のプロセスID、及び当該プロセス210が呼び出した特定のライブラリ関数が含まれている。   In S103, the specific operation detection unit 310 transmits information indicating that the process 210 is executing the specific operation to the identification information issuing unit 320 as detection result information. The detection result information includes a unique process ID for individually identifying the process 210 that is executing the specific operation, and a specific library function called by the process 210.

S105において、識別情報発行部320は、検出結果情報に基づいて、検出結果情報に含まれているライブラリ関数の種類、及び特定動作の実行中のプロセスの信頼度の大きさに応じて、識別情報321を発行するか否か決定する。   In S105, the identification information issuing unit 320 determines the identification information based on the detection result information according to the type of the library function included in the detection result information and the reliability of the process that is executing the specific operation. It is determined whether or not 321 is issued.

例えば、検出結果情報に含まれているライブラリ関数が「func_1」であり、そのライブラリ関数「func_1」を呼び出したプロセス210のプロセスIDが「3828」である場合を考える。この場合には、識別情報発行部320は、図2に示す動作履歴保護規則情報を参照し、当該ライブラリ関数「func_1」に対応する動作履歴保護規則が「全てのプロセスについて保護する」という規則であるため、当該検出結果情報に対応する識別情報321を発行することを決定する。識別情報発行部320は、プロセスID「3828」及びライブラリ関数「func_1」により構成される識別情報321を発行する(図3参照)。   For example, consider a case where the library function included in the detection result information is “func_1” and the process ID of the process 210 that called the library function “func_1” is “3828”. In this case, the identification information issuing unit 320 refers to the operation history protection rule information shown in FIG. 2, and the operation history protection rule corresponding to the library function “func_1” is a rule that “protects all processes”. Therefore, it is determined to issue the identification information 321 corresponding to the detection result information. The identification information issuing unit 320 issues identification information 321 configured by the process ID “3828” and the library function “func_1” (see FIG. 3).

S107において、識別情報発行部320は、発行した識別情報321を動作履歴保護要求情報検出部340に送信する。   In S107, the identification information issuing unit 320 transmits the issued identification information 321 to the operation history protection request information detection unit 340.

S109において、動作履歴保護要求情報検出部340は、識別情報321に基づいて、プロセス210により送信された「特定の動作履歴保護要求情報」を検出する。   In S <b> 109, the operation history protection request information detection unit 340 detects “specific operation history protection request information” transmitted by the process 210 based on the identification information 321.

ここで、動作履歴保護要求情報は、プロセス210から3段階に渡って送信される。以下では各段階で送信される動作履歴保護要求情報について説明する。本実施形態では2段階目に送信された動作履歴保護要求情報が、上記「特定の動作履歴保護要求情報」として検出される。なお、図5に示す順序でライブラリ関数が記述されている。   Here, the operation history protection request information is transmitted from the process 210 in three stages. Hereinafter, the operation history protection request information transmitted at each stage will be described. In the present embodiment, the operation history protection request information transmitted in the second stage is detected as the “specific operation history protection request information”. Library functions are described in the order shown in FIG.

(1)1段階目に送信される動作履歴保護要求情報
1段階目に送信される動作履歴保護要求情報(第1動作履歴保護要求情報)は、プロセス210の動作履歴の記録先(動作履歴記録部220内の記録先)に対するアクセス権の付与を要求するためのopenシステムコール240(図1参照)である。openシステムコール240の一例を以下に示す。
(1) Operation History Protection Request Information Transmitted in the First Stage The operation history protection request information (first operation history protection request information) transmitted in the first stage is an operation history recording destination (operation history record) of the process 210. This is an open system call 240 (see FIG. 1) for requesting the granting of the access right to the recording destination in the section 220. An example of the open system call 240 is shown below.

open(“ファイルのpath名”,“アクセス権”,“ファイルパーミッション”,“フラグ”)
上記の通りopenシステムコール240は、プロセス210の動作履歴の記録先である“ファイルのpath名”と、必要に応じて設定されるアクセス権(追加書込みを行う場合のアクセス権)と、システム内で一意にファイルを識別するためのファイルパーミッションと、システムコールが動作履歴保護要求情報に関するopenシステムコール240であるか否か判定するためのフラグとを含んでいる。
open (“file path name”, “access right”, “file permission”, “flag”)
As described above, the open system call 240 includes the “path name of the file” that is the recording destination of the operation history of the process 210, the access right (access right when performing additional writing) set as necessary, Includes a file permission for uniquely identifying a file and a flag for determining whether or not the system call is an open system call 240 related to operation history protection request information.

フラグは、システムコールが動作履歴保護要求情報に関するopenシステムコール240である場合には「1」となり、システムコールが動作履歴保護要求情報に関するopenシステムコール240でない場合には「0」となる。   The flag is “1” when the system call is an open system call 240 related to operation history protection request information, and is “0” when the system call is not an open system call 240 related to operation history protection request information.

動作履歴保護要求情報検出部340は、フラグ「1」が設定されたopenシステムコール240をプロセス210から取得した場合に、openシステムコール240の発行元のプロセス210のプロセスIDを含む識別情報321が発行されている場合には、そのプロセスIDと、openシステムコール240に含まれている“ファイルのpath名”に対応するファイルディスクリプタとを監視リスト情報351に登録する。   When the operation history protection request information detection unit 340 acquires the open system call 240 in which the flag “1” is set from the process 210, the identification information 321 including the process ID of the process 210 that issued the open system call 240 is obtained. If issued, the process ID and the file descriptor corresponding to the “file path name” included in the open system call 240 are registered in the monitoring list information 351.

例えば、以下に示すopenシステムコール240を考える。   For example, consider the open system call 240 shown below.

open(“var/log/xxx”,“0_WONLY|0_APPEND”,“0644”,“1”)
上記のopenシステムコール240がプロセスID「3828」のプロセス210により発行された場合には、動作履歴保護要求情報検出部340は、図3に示す識別情報321にプロセスID「3828」が含まれているため、当該プロセスID「3828」と「var/log/xxx」に対応するファイルディスクリプタ「11」とを監視リスト情報351(図6参照)に登録する。
open (“var / log / xxx”, “0_WONLY | 0_APPEND”, “0644”, “1”)
When the above open system call 240 is issued by the process 210 having the process ID “3828”, the operation history protection request information detecting unit 340 includes the process ID “3828” in the identification information 321 shown in FIG. Therefore, the process ID “3828” and the file descriptor “11” corresponding to “var / log / xxx” are registered in the monitoring list information 351 (see FIG. 6).

(2)2段階目に送信される動作履歴保護要求情報
2段階目に送信される動作履歴保護要求情報(第2動作履歴保護要求情報)は、アクセス権が付与された記録先に対してプロセス210の動作履歴を記録するためのwriteシステムコール250(図1参照)である。writeシステムコール250の一例を以下に示す。
(2) Operation history protection request information transmitted in the second stage The operation history protection request information (second operation history protection request information) transmitted in the second stage is a process for the recording destination to which the access right is given. This is a write system call 250 (see FIG. 1) for recording an operation history 210. An example of the write system call 250 is shown below.

write(“記録先のファイルディスクリプタ”,“記録内容”,“記録サイズ”)
上記の通りwriteシステムコール250は、一般的に用いられるwriteシステムコールと同様の内容である。
write ("recording file descriptor", "recording contents", "recording size")
As described above, the write system call 250 has the same contents as the commonly used write system call.

動作履歴保護要求情報検出部340は、writeシステムコール250をプロセス210から取得した場合に、writeシステムコール250の発行元のプロセス210のプロセスID及び“登録先のファイルディスクリプタ”が監視リスト情報351に登録されている場合には、writeシステムコール250を上記特定の動作履歴保護要求情報として検出する。   When the write system call 250 is acquired from the process 210, the operation history protection request information detection unit 340 stores the process ID of the process 210 that issued the write system call 250 and the “registered file descriptor” in the monitoring list information 351. If it is registered, the write system call 250 is detected as the specific operation history protection request information.

例えば、以下に示すwriteシステムコール250を考える。   For example, consider the following write system call 250.

write(“11”,“記録内容”,“10”)
上記のwriteシステムコール250がプロセスID「3828」のプロセス210により発行された場合には、動作履歴保護要求情報検出部340は、図6に示す監視リスト情報351に、プロセスID「3828」及びファイルディスクリプタ「11」が含まれているため、writeシステムコール250を上記特定の動作履歴保護要求情報として検出する。
write (“11”, “record contents”, “10”)
When the write system call 250 is issued by the process 210 with the process ID “3828”, the operation history protection request information detection unit 340 adds the process ID “3828” and the file to the monitoring list information 351 shown in FIG. Since the descriptor “11” is included, the write system call 250 is detected as the specific operation history protection request information.

(3)3段階目に送信される動作履歴保護要求情報
3段階目に送信される動作履歴保護要求情報(第3動作履歴保護要求情報)は、アクセス権が付与された記録先に対するアクセス権の解除を要求するためのcloseシステムコール260(図1参照)である。closeシステムコール260の一例を以下に示す。
(3) Operation history protection request information transmitted in the third stage The operation history protection request information (third operation history protection request information) transmitted in the third stage is the access right for the recording destination to which the access right is given. This is a close system call 260 (see FIG. 1) for requesting release. An example of the close system call 260 is shown below.

close(“記録先のファイルディスクリプタ”)
上記の通りcloseシステムコール260は、一般的に用いられるcloseシステムコールと同様の内容を含んでいる。
close ("record descriptor of the recording destination")
As described above, the close system call 260 includes the same content as a generally used close system call.

動作履歴保護要求情報検出部340は、closeシステムコール260をプロセス210から取得した場合に、closeシステムコール260の発行元のプロセス210のプロセスID、及び“記録先のファイルディスクリプタ”が監視リスト情報351に登録されている場合には、当該プロセスID及び“記録先のファイルディスクリプタ”により構成される登録内容を監視リスト情報351の中から消去する。   If the operation history protection request information detection unit 340 acquires the close system call 260 from the process 210, the process ID of the process 210 that issued the close system call 260 and the “recording destination file descriptor” are the monitoring list information 351. Registered in the monitoring list information 351, the registered contents constituted by the process ID and “recording destination file descriptor” are deleted from the monitoring list information 351.

例えば、以下に示すcloseシステムコール260を考える。   For example, consider the following close system call 260.

close(“11”)
上記のcloseシステムコール260がプロセスID「3828」のプロセス210により発行された場合には、動作履歴保護要求情報検出部340は、図6に示す監視リスト情報351に、プロセスID「3828」及びファイルディスクリプタ「11」により構成される登録内容を監視リスト情報351の中から消去する。当該登録内容が消去された後の監視リスト情報351は、図7に示す通りである。
close (“11”)
When the above close system call 260 is issued by the process 210 with the process ID “3828”, the operation history protection request information detection unit 340 adds the process ID “3828” and the file to the monitoring list information 351 shown in FIG. The registered content constituted by the descriptor “11” is deleted from the monitoring list information 351. The monitoring list information 351 after the registration contents are deleted is as shown in FIG.

S113において、動作履歴保護要求情報検出部340は、検出した動作履歴保護要求情報(writeシステムコール250)を検出結果情報として動作履歴保護制御部360に送信する。   In S113, the operation history protection request information detection unit 340 transmits the detected operation history protection request information (write system call 250) to the operation history protection control unit 360 as detection result information.

S115において、動作履歴保護制御部360は、検出結果情報(writeシステムコール250)に含まれている“記録内容(プロセス210の特定動作の履歴)”を保護する。例えば、動作履歴保護制御部360は、検出結果情報に含まれている“記録内容”のハッシュ値を保護情報記録部370に記録させたり、検出結果情報に含まれている“記録内容”をそのまま保護情報記録部370に記憶させる。これらの保護の手法については、後述の実施形態において詳細に説明する。   In S115, the operation history protection control unit 360 protects “record contents (history of specific operation of process 210)” included in the detection result information (write system call 250). For example, the operation history protection control unit 360 causes the protection information recording unit 370 to record the hash value of “recording content” included in the detection result information, or the “recording content” included in the detection result information as it is. It is stored in the protection information recording unit 370. These protection methods will be described in detail in an embodiment described later.

かかる特徴によれば、カーネル特権プロセス処理部300がプロセス210の「全ての動作」の履歴を記録するのではなく、プロセス210の全ての動作のうちの「特定動作」の履歴をカーネル特権プロセス処理部300に記録する。これにより、動作履歴保護装置100は、カーネル特権プロセス処理部300における処理負担を増大させないようにすることができる。このため、動作履歴保護装置100は、プロセス210の「特定動作」の履歴をカーネル特権プロセス処理部300内で記録することにより、システム全体の性能劣化を抑制しつつ、プロセス210の特定動作の履歴をバッファオーバーフロー攻撃等から安全に保護することができる。   According to this feature, the kernel privileged process processing unit 300 does not record the history of “all operations” of the process 210, but stores the history of “specific operations” of all the operations of the process 210. Recorded in the unit 300. As a result, the operation history protection device 100 can prevent the processing load on the kernel privileged process processing unit 300 from increasing. For this reason, the operation history protection apparatus 100 records the history of the “specific operation” of the process 210 in the kernel privileged process processing unit 300, thereby suppressing the performance degradation of the entire system and the history of the specific operation of the process 210. Can be safely protected from buffer overflow attacks and the like.

また、カーネル特権プロセス処理部300は、プロセス210が特定動作を実行しているか否かについて常に監視していなくても、openシステムコール240及びcloseシステムコール260を取得するだけで、プロセス210の特定動作の開始・終了を検出することができる。このため、カーネル特権プロセス処理部300は、カーネル特権プロセス処理部300の処理負担を増大させないようにすることができ、システム全体の性能劣化を抑制することができる。   Further, even if the kernel privileged process processing unit 300 does not always monitor whether or not the process 210 is executing a specific operation, the kernel privileged process processing unit 300 can specify the process 210 only by acquiring the open system call 240 and the close system call 260. The start / end of the operation can be detected. For this reason, the kernel privileged process processing unit 300 can prevent the processing load of the kernel privileged process processing unit 300 from increasing, and can suppress deterioration in performance of the entire system.

また、カーネル特権プロセス処理部300は、プロセス210が発行した特定のライブラリ関数の種類、及び当該プロセス210の信頼度の大きさに応じて、プロセス210の特定動作の履歴をカーネル特権プロセス処理部300に記録(保護)するか否か決定する。   Further, the kernel privileged process processing unit 300 displays the history of specific operations of the process 210 according to the type of the specific library function issued by the process 210 and the reliability of the process 210. Decide whether to record (protect).

例えば、カーネル特権プロセス処理部300は、システムに元々格納されている信頼度の高いプログラムにより生成されたプロセス210の特定動作の履歴を保護せずに、システムに元々格納されておらず、システムに障害を及ぼす可能性の高いプログラムより生成されたプロセス210の特定動作の履歴をカーネル特権プロセス処理部300に記録する。   For example, the kernel privileged process processing unit 300 does not protect the history of specific operations of the process 210 generated by a highly reliable program originally stored in the system, and is not originally stored in the system. A history of specific operations of the process 210 generated by a program that is likely to cause a failure is recorded in the kernel privileged process processing unit 300.

これにより、カーネル特権プロセス処理部300は、必要以上にプロセス210の特定動作の履歴を記録しないため、カーネル特権プロセス処理部300の処理負担を増大させないようにすることができる。   Thereby, since the kernel privileged process processing unit 300 does not record the history of the specific operation of the process 210 more than necessary, the processing load on the kernel privileged process processing unit 300 can be prevented from increasing.

(変更例1)
なお、本実施形態における動作履歴保護装置100は、上記内容に限定されずに以下に示す変更を加えることができる。本変更例では、動作履歴保護装置100は、プロセス210の特定動作の履歴に対応する識別情報321を既に発行しているときに、(1)プロセス210が呼び出したライブラリ関数の処理が終了した場合又は(2)プロセス210が他のライブラリ関数を呼び出した場合)には、以下に示すように識別情報321が削除又は追加される。
(Modification 1)
Note that the operation history protection device 100 according to the present embodiment is not limited to the above contents, and can be modified as follows. In this modification, the operation history protection device 100 has already issued the identification information 321 corresponding to the history of the specific operation of the process 210, and (1) the processing of the library function called by the process 210 is completed. Or (2) when the process 210 calls another library function), the identification information 321 is deleted or added as shown below.

図8は、本変更例における動作履歴保護装置100の内部構成を示す図である。図8に示す特定動作検出部310及び識別情報発行部320の機能が図1に示す同各部の機能と異なるだけであり、図8に示す特定動作検出部310及び識別情報発行部320以外の機能は図1に示す同各部の機能と同様である。このため、特定動作検出部310及び識別情報発行部320のみの処理について、上記(1)及び上記(2)のそれぞれに分けて説明する。   FIG. 8 is a diagram illustrating an internal configuration of the operation history protection device 100 according to this modification. The functions of the specific operation detection unit 310 and the identification information issuing unit 320 shown in FIG. 8 are only different from the functions of the respective units shown in FIG. 1, and functions other than the specific operation detection unit 310 and the identification information issuing unit 320 shown in FIG. Is the same as the function of each part shown in FIG. For this reason, the processes of only the specific operation detection unit 310 and the identification information issuing unit 320 will be described separately for the above (1) and (2).

(1)プロセス210が呼び出したライブラリ関数の処理が終了した場合
特定動作検出部310は、フラグが「0」に設定されたライブラリ関数呼出システムコールをライブラリ関数終了システムコール231としてプロセス210から取得することにより、プロセス210が呼び出したライブラリ関数の処理が終了(すなわち、プロセス210の特定動作が終了)したことを検出する。
(1) When the processing of the library function called by the process 210 is completed The specific operation detection unit 310 acquires the library function call system call whose flag is set to “0” from the process 210 as the library function end system call 231. As a result, it is detected that the processing of the library function called by the process 210 has ended (that is, the specific operation of the process 210 has ended).

例えば、特定動作検出部310は、プロセスID「3828」のプロセス210が発行したライブラリ関数終了システムコール231を取得することにより、当該プロセスID「3828」のプロセス210が呼び出したライブラリ関数「func_1」の処理が終了したことを検出する。識別情報発行部320は、既に発行した識別情報321の中から、プロセスID「3828」の行からなる識別情報321を消去する(図9参照)。その後の処理については第1実施形態と同様の処理であるため、ここでの詳細な説明は省略する。   For example, the specific operation detection unit 310 acquires the library function end system call 231 issued by the process 210 with the process ID “3828”, and thereby acquires the library function “func_1” called by the process 210 with the process ID “3828”. Detect that the process is complete. The identification information issuing unit 320 deletes the identification information 321 including the row of the process ID “3828” from the identification information 321 that has already been issued (see FIG. 9). Since the subsequent processes are the same as those in the first embodiment, a detailed description thereof is omitted here.

かかる特徴によれば、カーネル特権プロセス処理部300は、プロセス210の特動作の終了を常に監視しなくても、プロセス210が発行したライブラリ関数終了システムコール231のみを取得するだけで、プロセス210の特定動作が終了したことを検出することができるため、カーネル特権プロセス処理部300の処理負担を増大させないようにすることができる。   According to such a feature, the kernel privileged process processing unit 300 does not always monitor the end of the special operation of the process 210, but only acquires the library function end system call 231 issued by the process 210. Since the end of the specific operation can be detected, the processing load of the kernel privileged process processing unit 300 can be prevented from increasing.

(2)プロセス210が他のライブラリ関数を呼び出した場合
特定動作検出部310は、フラグが「1」に設定されたライブラリ関数呼出システムコール230を更に取得することにより、プロセス210が他のライブラリ関数を呼び出したことを検出する。
(2) When the process 210 calls another library function
The specific operation detection unit 310 further acquires a library function call system call 230 whose flag is set to “1”, thereby detecting that the process 210 has called another library function.

例えば、特定動作検出部310は、更に取得したライブラリ関数呼出システムコール230に基づいて、プロセスID「3828」のプロセス210がライブラリ関数「func_2」を更に呼び出したことを検出する。この場合には、識別情報発行部320は、プロセスID「3828」のある行にライブラリ関数「func_2」を追加し、プロセスID「3828」及びライブラリ関数「func_2」により構成される識別情報321を発行する(図10参照)。その後の処理については第1実施形態と同様の処理であるため、ここでの詳細な説明は省略する。   For example, the specific operation detection unit 310 further detects that the process 210 with the process ID “3828” further calls the library function “func_2” based on the acquired library function call system call 230. In this case, the identification information issuing unit 320 adds the library function “func_2” to a line with the process ID “3828”, and issues the identification information 321 configured by the process ID “3828” and the library function “func_2”. (See FIG. 10). Since the subsequent processes are the same as those in the first embodiment, a detailed description thereof is omitted here.

かかる特徴によれば、カーネル特権プロセス処理部300は、プロセス210がさらに他のライブラリ関数を呼び出すことにより、当該他のライブラリ関数に対応する識別情報をさらに発行する。これにより、カーネル特権プロセス処理部300は、更に発行した識別情報を用いて、当該他のライブラリ関数を呼び出したプロセス210の特定動作の履歴もカーネル特権プロセス処理部300に記録することができる。   According to this feature, the kernel privileged process processing unit 300 further issues identification information corresponding to the other library function when the process 210 calls the other library function. As a result, the kernel privileged process processing unit 300 can also record in the kernel privileged process processing unit 300 the history of the specific operation of the process 210 that called the other library function using the issued identification information.

(変更例2)
なお、本実施形態における動作履歴保護装置100は、上記内容に限定されずに以下に示す変更を加えることができる。本変更例における動作履歴保護装置100は、第1プロセスと第2プロセスとのプロセス間通信が実行中である場合には、第1プロセスと第2プロセスとのそれぞれの特定動作の履歴に対応する識別情報321を発行してもよい。
(Modification 2)
Note that the operation history protection device 100 according to the present embodiment is not limited to the above contents, and can be modified as follows. The operation history protection device 100 according to this modification corresponds to the specific operation history of each of the first process and the second process when inter-process communication between the first process and the second process is being executed. The identification information 321 may be issued.

ここでは、第1プロセスであるプロセス211の特定動作の履歴に対応する識別情報321、第2プロセスであるプロセス210の動作の履歴に対応する識別情報321が既に発行されていることを前提にして説明する。   Here, it is assumed that the identification information 321 corresponding to the history of the specific operation of the process 211 as the first process and the identification information 321 corresponding to the history of the operation of the process 210 as the second process have already been issued. explain.

本変更例では、プロセス211とプロセス210とがプロセス間通信を実行することにより、プロセス211が特定動作を実行中にアクセスしたリソースがプロセス210に渡されることがある。このため、当該プロセス210は、当該リソースに対してアクセスすることがあり、プロセス211と同等の特定動作を実行することがある。これにより、動作履歴保護装置100は、当該プロセス210の特定動作の履歴に対応する識別情報321を、プロセス211の特定動作の履歴に対応する識別情報321と同等のものとして新たに発行する必要がある。以下ではここまでの処理について詳細に説明する。   In this modified example, the process 211 and the process 210 execute inter-process communication, so that a resource accessed while the process 211 is executing a specific operation may be passed to the process 210. For this reason, the process 210 may access the resource, and may execute a specific operation equivalent to the process 211. As a result, the operation history protection apparatus 100 needs to newly issue the identification information 321 corresponding to the specific operation history of the process 210 as being equivalent to the identification information 321 corresponding to the specific operation history of the process 211. is there. Hereinafter, the processing up to this point will be described in detail.

図11は、本変更例における動作履歴保護装置100の内部構成を示す図である。図11に示す特定動作検出部310及び識別情報発行部320の機能が図1に示す同各部の機能と異なるだけであり、図11に示す特定動作検出部310及び識別情報発行部320以外の機能は図1に示す同各部の機能と同様である。このため、特定動作検出部310及び識別情報発行部320のみの処理について説明する。   FIG. 11 is a diagram illustrating an internal configuration of the operation history protection device 100 according to the present modification. The functions of the specific operation detecting unit 310 and the identification information issuing unit 320 shown in FIG. 11 are only different from the functions of the respective units shown in FIG. 1, and functions other than the specific operation detecting unit 310 and the identification information issuing unit 320 shown in FIG. Is the same as the function of each part shown in FIG. Therefore, only the specific operation detection unit 310 and the identification information issuing unit 320 will be described.

図12は、本変更例における識別情報321の内容を示す図である。図12に示すように、図3に示す識別情報321に対して「送信側ファイルディスクリプタ」及び「受信元プロセスID」がさらに加えられている。「送信側ファイルディスクリプタ」には、送信側のプロセスがpipe等を生成した際のファイルディスクリプタが記録される。「受信元プロセスID」には、受信側のプロセスが送信側のデータを受信した場合に受信側のプロセスIDが送信側のプロセスIDとして記録される。   FIG. 12 is a diagram showing the contents of the identification information 321 in the present modification example. As shown in FIG. 12, “transmission side file descriptor” and “reception source process ID” are further added to the identification information 321 shown in FIG. In the “transmission side file descriptor”, a file descriptor when a process on the transmission side generates a pipe or the like is recorded. In the “reception source process ID”, when the process on the reception side receives the data on the transmission side, the process ID on the reception side is recorded as the process ID on the transmission side.

以下では、プロセスID「3828」のプロセス210が、プロセス間通信におけるデータの受信側であるとする。プロセスID「11556」のプロセス211が、プロセス間通信における送信側であるとする。この場合に、pipeを用いたプロセス間通信が実行されたことを例にして説明する。   In the following, it is assumed that the process 210 with the process ID “3828” is the data receiving side in the inter-process communication. Assume that the process 211 with the process ID “11556” is the transmission side in the inter-process communication. In this case, an explanation will be given taking as an example that interprocess communication using pipe has been executed.

pipeの受信用ファイルディスクリプタの格納先をpp[0]、送信用ファイルディスクリプタの格納先をpp[1]とすると、プロセス211(送信側)は、先ず以下のプロセス間通信システムコール232を発行する。なお、上記送信用ファイルディスクリプタの値は「21」であるものとする。   Assuming that the storage destination of the pipe file reception descriptor is pp [0] and the storage destination of the transmission file descriptor is pp [1], the process 211 (transmission side) first issues the following inter-process communication system call 232. . It is assumed that the value of the transmission file descriptor is “21”.

pipe(pp);パイプの生成
特定動作検知部110は、プロセスID「11556」のプロセス211(送信側)が発行したプロセス間通信システムコール232を取得し、プロセスID「11556」に対応する送信用ファイルディスクリプタの値に「21」を設定する(図13に示す識別情報を参照)。
pipe (pp); pipe generation The specific operation detection unit 110 acquires the inter-process communication system call 232 issued by the process 211 (transmission side) with the process ID “11556”, and performs transmission for the process ID “11556”. “21” is set as the value of the file descriptor (see the identification information shown in FIG. 13).

そして、プロセス211(送信側)が生成したpipeを利用して、プロセス210(受信側)がプロセス211(送信側)のデータを受信する場合には、プロセス211及びプロセス210は以下のシステムコールを発行する。   When the process 210 (reception side) receives the data of the process 211 (transmission side) using the pipe generated by the process 211 (transmission side), the process 211 and the process 210 make the following system call. Issue.

write(pp[1],outmsg,strlen(msg));データの送信(プロセス211)
read(pp[0],inmsg,strlen(msg));データの受信(プロセス210)
特定動作検出部310は、pp[0]の値「21」が設定されたreadシステムコールを取得したことに基づいて、プロセス211(送信側)からプロセス210(受信側)にデータが送信されたことを検出する。この場合には、プロセス210(受信側)は、プロセス211(送信側)が呼び出したライブラリ関数(func_2)を継承することとなる。
write (pp [1], outmsg, strlen (msg)); data transmission (process 211)
read (pp [0], inmsg, strlen (msg)); data reception (process 210)
The specific operation detection unit 310 transmits data from the process 211 (transmission side) to the process 210 (reception side) based on the acquisition of the read system call in which the value “21” of pp [0] is set. Detect that. In this case, the process 210 (reception side) inherits the library function (func_2) called by the process 211 (transmission side).

このため、識別情報発行部320は、プロセス210のプロセスID「3828」、及び継承後のライブラリ関数「func_2」により構成される新たな識別情報321を追加し、当該新たな識別情報321における送信元プロセスIDに「11556」を設定する(図14参照)。なお、プロセス211のプロセスID「11556」が設定された識別情報321が消去された場合には、上記新たな識別情報321も消去される。   For this reason, the identification information issuing unit 320 adds new identification information 321 configured by the process ID “3828” of the process 210 and the library function “func_2” after inheritance, and the transmission source in the new identification information 321 “11556” is set in the process ID (see FIG. 14). When the identification information 321 set with the process ID “11556” of the process 211 is deleted, the new identification information 321 is also deleted.

その後の処理については第1実施形態と同様の処理であるため、ここでの詳細な説明は省略する。   Since the subsequent processes are the same as those in the first embodiment, a detailed description thereof is omitted here.

かかる特徴によれば、カーネル特権プロセス処理部300は、プロセス210(受信側)の特定動作の履歴に対応する識別情報321を発行していても(図14に示す1段目の識別情報)、さらに当該プロセス210(受信側)の特定動作の履歴に対応する識別情報321を、プロセス211(送信側)の特定動作の履歴に対応する識別情報と同等の識別情報(図14に示す2段目の識別情報)として新たに発行する。   According to such a feature, even if the kernel privileged process processing unit 300 issues the identification information 321 corresponding to the history of the specific operation of the process 210 (receiving side) (the first-stage identification information shown in FIG. 14), Furthermore, the identification information 321 corresponding to the specific operation history of the process 210 (reception side) is replaced with identification information equivalent to the identification information corresponding to the specific operation history of the process 211 (transmission side) (second level shown in FIG. 14). New identification information).

これにより、カーネル特権プロセス処理部300は、プロセス間通信を実行しているプロセス210(受信側)の特定動作の履歴に対応する識別情報を適切に発行することができるため、プロセス間通信を実行しているプロセス211(送信側)及びプロセス210(受信側)のそれぞれの特定動作の履歴を適切に記録することができる。   As a result, the kernel privileged process processing unit 300 can appropriately issue identification information corresponding to the history of the specific operation of the process 210 (receiving side) executing the inter-process communication, and therefore executes the inter-process communication. The specific operation history of each of the process 211 (transmission side) and the process 210 (reception side) can be appropriately recorded.

(変更例3)
なお、本実施形態における動作履歴保護装置100は、上記内容に限定されずに以下に示す変更を加えることができる。本変更例における動作履歴保護装置100は、第1プロセスの特定動作が実行中であるときに、当該第1プロセスに基づいて生成された第2プロセスの特定動作が実行中である場合には、当該第1プロセスと第2プロセスとのそれぞれの特定動作の履歴に対応する識別情報321を発行してもよい
図15は、本変更例における動作履歴保護装置100の内部構成を示す図である。図15に示す特定動作検出部310及び識別情報発行部320の機能が図1に示す同各部の機能と異なるだけであり、図15に示す特定動作検出部310及び識別情報発行部320以外の機能は図1に示す同各部の機能と同様である。このため、特定動作検出部310及び識別情報発行部320のみの処理について説明する。
(Modification 3)
Note that the operation history protection device 100 according to the present embodiment is not limited to the above contents, and can be modified as follows. When the specific operation of the first process is being executed and the specific operation of the second process generated based on the first process is being executed when the specific operation of the first process is being executed, Identification information 321 corresponding to the specific operation history of each of the first process and the second process may be issued. FIG. 15 is a diagram illustrating an internal configuration of the operation history protection device 100 according to the present modification. The functions of the specific operation detecting unit 310 and the identification information issuing unit 320 shown in FIG. 15 are only different from the functions of the respective units shown in FIG. 1, and functions other than the specific operation detecting unit 310 and the identification information issuing unit 320 shown in FIG. Is the same as the function of each part shown in FIG. Therefore, only the specific operation detection unit 310 and the identification information issuing unit 320 will be described.

特定動作検出部310は、既に発行されている識別情報321を構成するプロセスIDのプロセス210が発行した子プロセス生成システムコール234を取得し、プロセス210に基づいて子プロセス233が生成されたことを検出する。   The specific operation detection unit 310 acquires the child process generation system call 234 issued by the process 210 of the process ID constituting the identification information 321 that has already been issued, and confirms that the child process 233 has been generated based on the process 210. To detect.

本実施形態における子プロセス生成システムコール234は、プロセス210(いわゆる親プロセス)を複製することにより子プロセス233を生成するためのシステムコールである。子プロセス生成システムコール234には、forkシステムコール、cloneシステムコール等が含まれている。   The child process generation system call 234 in this embodiment is a system call for generating a child process 233 by duplicating the process 210 (so-called parent process). The child process generation system call 234 includes a fork system call, a clone system call, and the like.

識別情報発行部320は、プロセス210に基づいて子プロセス233が生成された場合には、当該子プロセス233の特定動作の履歴に対応する識別情報321を発行する。   When the child process 233 is generated based on the process 210, the identification information issuing unit 320 issues the identification information 321 corresponding to the specific operation history of the child process 233.

例えば、プロセス210のプロセスIDが「3828」であり、プロセス210に基づいて生成された子プロセス233のプロセスIDが「3829」である場合を考える。また、図3に示す通り、プロセスID「3828」及びそれに対応するライブラリ関数「func_1」が設定された識別情報321が既に発行されている場合を考える。   For example, consider a case where the process ID of the process 210 is “3828” and the process ID of the child process 233 generated based on the process 210 is “3829”. Further, as shown in FIG. 3, a case is considered in which identification information 321 in which the process ID “3828” and the corresponding library function “func_1” are set has already been issued.

識別情報発行部320は、親プロセスであるプロセス210のライブラリ関数「func_1」を複製し、子プロセス233のプロセスID「3829」及び複製したライブラリ関数「func_1」を含む識別情報321(図16参照)を新たに発行する。その後の処理については第1実施形態と同様の処理であるため、ここでの詳細な説明は省略する。   The identification information issuing unit 320 duplicates the library function “func_1” of the process 210 that is the parent process, and includes identification information 321 including the process ID “3829” of the child process 233 and the duplicated library function “func_1” (see FIG. 16). Is newly issued. Since the subsequent processes are the same as those in the first embodiment, a detailed description thereof is omitted here.

かかる特徴によれば、カーネル特権プロセス処理部300は、プロセス210(親プロセス)に基づいて子プロセス233が生成されることにより、当該子プロセス233の特定動作の履歴に対応する識別情報321も発行する。このため、カーネル特権プロセス処理部300は、プロセス210の識別情報及び子プロセス233を含む識別情報を用いて、プロセス210の特定動作の履歴を記録するだけではなく、子プロセス210の特定動作の履歴も記録することができる。   According to such a feature, the kernel privileged process processing unit 300 issues the identification information 321 corresponding to the history of the specific operation of the child process 233 by generating the child process 233 based on the process 210 (parent process). To do. Therefore, the kernel privileged process processing unit 300 not only records the specific operation history of the process 210 using the identification information of the process 210 and the identification information including the child process 233, but also records the specific operation history of the child process 210. Can also be recorded.

[第2実施形態]
第1実施形態では、カーネル特権プロセス処理部がプロセスの特定動作の履歴を保護対象するか否か決定しているが、本実施形態では、制限付権限プロセス処理部がプロセスの特定動作の履歴を保護対象するか否か決定している点で異なる。以下、具体的に説明する。
[Second Embodiment]
In the first embodiment, the kernel privileged process processing unit determines whether or not to protect the specific operation history of the process. However, in this embodiment, the restricted authority process processing unit stores the specific operation history of the process. It differs in that it is determined whether or not to protect. This will be specifically described below.

図17は、本実施形態における動作履歴保護装置400の概略構成図である。図17に示すように、動作履歴保護装置400は、制限付権限プロセス処理部500と、カーネル特権プロセス処理部600とを備えている。   FIG. 17 is a schematic configuration diagram of the operation history protection device 400 in the present embodiment. As illustrated in FIG. 17, the operation history protection device 400 includes a restricted authority process processing unit 500 and a kernel privileged process processing unit 600.

制限付権限プロセス処理部500は、プロセス510と、動作履歴記録部520とを備えている。カーネル特権プロセス処理部600は、特定動作検出部610と、識別情報発行部620と、動作履歴保護規則情報記憶部630と、動作履歴保護要求情報検出部640と、監視リスト情報記憶部650と、暗号化設定規則情報記憶部660と、動作履歴保護制御部670と、保護情報記録部680とを備えている。   The restricted authority process processing unit 500 includes a process 510 and an operation history recording unit 520. The kernel privileged process processing unit 600 includes a specific operation detection unit 610, an identification information issuing unit 620, an operation history protection rule information storage unit 630, an operation history protection request information detection unit 640, a monitoring list information storage unit 650, An encryption setting rule information storage unit 660, an operation history protection control unit 670, and a protection information recording unit 680 are provided.

図17に示す暗号化設定規則情報記憶部660が図1に示す構成に加えられ、及び動作履歴保護制御部670の機能が図1に示す同部の機能と異なるだけである。図17に示す暗号化設定規則情報記憶部660及び動作履歴保護制御部670以外の機能は図1に示す同各部の機能と同様である。このため、暗号化設定規則情報記憶部660及び動作履歴保護制御部670のみの処理について説明する。   An encryption setting rule information storage unit 660 shown in FIG. 17 is added to the configuration shown in FIG. 1, and only the function of the operation history protection control unit 670 is different from the function of the same unit shown in FIG. Functions other than the encryption setting rule information storage unit 660 and the operation history protection control unit 670 shown in FIG. 17 are the same as the functions of the respective units shown in FIG. Therefore, only the processing of the encryption setting rule information storage unit 660 and the operation history protection control unit 670 will be described.

本実施形態で用いられるwriteシステムコール540の一例を以下に示す。   An example of the write system call 540 used in this embodiment is shown below.

write(“記録先のファイルディスクリプタ”,“記録内容”,“記録サイズ”,“保護フラグ”)
上記のwriteシステムコール540には、第1実施形態のwriteシステムコールの内容に加えて保護フラグが加えられている。
write (“recording file descriptor”, “recording content”, “recording size”, “protection flag”)
In the above write system call 540, a protection flag is added in addition to the contents of the write system call of the first embodiment.

暗号化設定規則情報記憶部660は、図18に示す暗号化設定規則情報661を記憶している。図18に示すように、暗号化設定規則情報661には、保護フラグの内容と、それに対応するプロセス510の動作履歴の保護方法(記録方法)の内容とが含まれている。   The encryption setting rule information storage unit 660 stores encryption setting rule information 661 shown in FIG. As shown in FIG. 18, the encryption setting rule information 661 includes the content of the protection flag and the content of the protection method (recording method) of the operation history of the process 510 corresponding thereto.

動作履歴保護制御部670は、動作履歴保護要求情報検出部640により該当するwriteシステムコール540が検出された場合には、当該writeシステムコール540に設定されている保護フラグを参照する。動作履歴保護制御部670は、保護フラグが「0」である場合には、writeシステムコール540に設定されている記録内容をそのままプロセス510に送信する。プロセス510は、当該記録内容を動作履歴記録部520に記録させる。   If the corresponding write system call 540 is detected by the operation history protection request information detection unit 640, the operation history protection control unit 670 refers to the protection flag set in the write system call 540. When the protection flag is “0”, the operation history protection control unit 670 transmits the recorded content set in the write system call 540 to the process 510 as it is. The process 510 causes the operation history recording unit 520 to record the recorded content.

一方、動作履歴保護制御部670は、保護フラグが「1」である場合には、カーネル特権プロセス処理部600のみが参照可能な鍵情報を用いて、writeシステムコール540に設定されている記録内容を暗号化し、暗号化後の記録内容を保護対象特定動作履歴としてプロセス510に送信する。プロセス510は、当該保護対象特定動作履歴を動作履歴記録部520に記録させる。   On the other hand, when the protection flag is “1”, the operation history protection control unit 670 uses the key information that can be referred to only by the kernel privileged process processing unit 600 and the recorded contents set in the write system call 540. Is encrypted, and the recorded content after the encryption is transmitted to the process 510 as the protection target specific operation history. The process 510 causes the operation history recording unit 520 to record the protection target specific operation history.

かかる特徴によれば、カーネル特権プロセス処理部600だけではなく、制限付権限プロセス処理部500も保護フラグを用いてプロセス510の特定動作の履歴を保護対象するか否か決定することができる。これにより、動作履歴保護装置400は、上記保護フラグを用いて、プロセス510の特定動作の履歴を保護対象するか否かについて「プロセス510側」から容易に設定させることができる。   According to such a feature, not only the kernel privileged process processing unit 600 but also the restricted authority process processing unit 500 can determine whether or not to protect the history of specific operations of the process 510 using the protection flag. Thereby, the operation history protection device 400 can easily set from the “process 510 side” whether or not to protect the history of the specific operation of the process 510 using the protection flag.

また、カーネル特権プロセス処理部600は、プロセス510の特定動作の履歴を暗号化する。これにより、カーネル特権プロセス処理部600は、プロセス510の特定動作(例えば、個人情報のアクセスに関する動作)の履歴が悪意者に取得されても、当該プロセス510の特定動作を実行させないようにすることができ、個人情報の漏洩を防止することができる。   Further, the kernel privileged process processing unit 600 encrypts a history of specific operations of the process 510. As a result, the kernel privileged process processing unit 600 prevents the specific operation of the process 510 from being executed even if a malicious user acquires a history of the specific operation of the process 510 (for example, an operation related to access to personal information). And leakage of personal information can be prevented.

更に、プロセス510の特定動作の履歴を暗号化するための鍵情報が、カーネル特権プロセス処理部600にのみ記憶されていることにより、カーネル特権プロセス処理部600は、当該鍵情報を悪意者に容易に取得させないようにすることができる。   Furthermore, since the key information for encrypting the history of the specific operation of the process 510 is stored only in the kernel privileged process processing unit 600, the kernel privileged process processing unit 600 can easily obtain the key information for a malicious person. You can prevent it from getting.

[第3実施形態]
本実施形態では、第2実施形態におけるプロセスの動作履歴の保護方法とは異なる保護方法について説明する。
[Third Embodiment]
In the present embodiment, a protection method different from the process operation history protection method in the second embodiment will be described.

図19は、本実施形態における動作履歴保護装置700の概略構成図である。図19に示すように、動作履歴保護装置700は、制限付権限プロセス処理部800と、カーネル特権プロセス処理部900とを備えている。   FIG. 19 is a schematic configuration diagram of an operation history protection device 700 according to this embodiment. As illustrated in FIG. 19, the operation history protection device 700 includes a restricted authority process processing unit 800 and a kernel privileged process processing unit 900.

制限付権限プロセス処理部800は、プロセス810と、動作履歴記録部820とを備えている。カーネル特権プロセス処理部900は、特定動作検出部910と、識別情報発行部920と、重要度決定規則情報記憶部930と、動作履歴保護規則情報記憶部935と、動作履歴保護要求情報検出部940と、監視リスト情報記憶部950と、保護レベル決定規則情報記憶部960と、動作履歴保護制御部970と、保護情報記録部980とを備えている。なお、図19に示す各部のうち、図1に示す同一名称の部については、特段の説明をしていない限り同様の機能を有するものとする。   The restricted authority process processing unit 800 includes a process 810 and an operation history recording unit 820. The kernel privileged process processing unit 900 includes a specific operation detection unit 910, an identification information issuance unit 920, an importance determination rule information storage unit 930, an operation history protection rule information storage unit 935, and an operation history protection request information detection unit 940. A monitoring list information storage unit 950, a protection level determination rule information storage unit 960, an operation history protection control unit 970, and a protection information recording unit 980. Note that, among the parts shown in FIG. 19, the parts having the same names shown in FIG. 1 have the same functions unless otherwise specified.

重要度決定規則情報記憶部930は、図20に示す重要度決定規則情報931を記憶する。図20に示すように、重要度決定規則情報931には、プロセス810が呼び出した特定のライブラリ関数と、その特定のライブラリ関数を呼び出したプロセス810の信頼度と、プロセス810の特定動作の履歴に対する重要性の度合を示す重要度とが含まれている。   The importance determination rule information storage unit 930 stores importance determination rule information 931 shown in FIG. As shown in FIG. 20, the importance determination rule information 931 includes a specific library function called by the process 810, the reliability of the process 810 calling the specific library function, and the history of the specific operation of the process 810. And importance indicating the degree of importance.

識別情報発行部920は、図2に示す動作履歴保護規則情報936を参照し、プロセス810の特定動作の履歴に対応する識別情報921(図3参照)を発行する。識別情報発行部920は、図20に示す重要度決定規則情報931を参照し、識別情報921に含まれるライブラリ関数に基づいて重要度を決定し、その重要度及び識別IDを識別情報921(図21参照)に設定する。識別情報発行部920は、当該識別情報921を動作履歴保護要求情報検出部940及び動作履歴保護制御部970に送信する。   The identification information issuing unit 920 issues identification information 921 (see FIG. 3) corresponding to the history of the specific operation of the process 810 with reference to the operation history protection rule information 936 shown in FIG. The identification information issuing unit 920 refers to the importance determination rule information 931 shown in FIG. 20, determines the importance based on the library function included in the identification information 921, and assigns the importance and the identification ID to the identification information 921 (FIG. 21). The identification information issuing unit 920 transmits the identification information 921 to the operation history protection request information detection unit 940 and the operation history protection control unit 970.

保護レベル決定規則情報記憶部960は、図22に示す保護レベル決定規則情報961を記憶する。図22に示すように、保護レベル決定規則情報961には、重要度と、その重要度に対応するプロセス810の動作履歴の保護方法とが含まれている。   The protection level determination rule information storage unit 960 stores protection level determination rule information 961 shown in FIG. As shown in FIG. 22, the protection level determination rule information 961 includes the importance level and the method of protecting the operation history of the process 810 corresponding to the importance level.

動作履歴保護制御部970は、動作履歴保護要求情報により動作履歴保護要求情報(writeシステムコール840)が検出された場合には、当該動作履歴保護要求情報の要求元のプロセス810のプロセスIDが含まれている識別情報921を参照する。動作履歴保護制御部970は、当該識別情報921に設定された重要度に応じて、動作履歴保護要求情報に含まれている記録内容の保護方法を決定する。   When the operation history protection request information (write system call 840) is detected from the operation history protection request information, the operation history protection control unit 970 includes the process ID of the process 810 that requested the operation history protection request information. The identification information 921 is referred to. The operation history protection control unit 970 determines a method for protecting the recorded content included in the operation history protection request information according to the importance set in the identification information 921.

上記保護方法には、プロセス810の特定動作の履歴の複製をそのまま保護情報記憶部980に記憶する方法、プロセス810の特定動作の履歴に対応するハッシュ値を保護情報記憶部980に記録する方法などが含まれている。なお、保護情報記憶部980は、ハッシュ値記録部を構成する。   The protection method includes a method of storing a copy of the history of the specific operation of the process 810 as it is in the protection information storage unit 980, a method of recording a hash value corresponding to the history of the specific operation of the process 810 in the protection information storage unit 980, and the like. It is included. The protection information storage unit 980 constitutes a hash value recording unit.

又、動作履歴保護制御部970は、プロセス810の特定動作の履歴のハッシュ値を算出し、当該ハッシュ値を保護情報記憶部980に記録する。動作履歴保護制御部970は、動作履歴記録部820に記録された特定動作の履歴のロールバックを実行する前に、当該動作履歴記録部820に記録された特定動作の履歴のハッシュ値を算出し、そのハッシュ値と保護情報記憶部980に記録されたハッシュ値とが同一である場合には、当該動作履歴記録部820に記憶された特定動作の履歴が正当であると判定する。なお、動作履歴保護制御部970は、算出部及び判定部を構成する。   In addition, the operation history protection control unit 970 calculates a hash value of the history of the specific operation of the process 810 and records the hash value in the protection information storage unit 980. The operation history protection control unit 970 calculates a hash value of the history of the specific operation recorded in the operation history recording unit 820 before executing rollback of the history of the specific operation recorded in the operation history recording unit 820. If the hash value and the hash value recorded in the protection information storage unit 980 are the same, it is determined that the history of the specific operation stored in the operation history recording unit 820 is valid. Note that the operation history protection control unit 970 constitutes a calculation unit and a determination unit.

次に、本実施形態における動作履歴保護装置700の動作について図23を参照しながら説明する。   Next, the operation of the operation history protection device 700 in this embodiment will be described with reference to FIG.

図23に示すように、S201において、特定動作検出部910は、プロセス810が実行中の特定動作を検出する。   As illustrated in FIG. 23, in S201, the specific action detection unit 910 detects a specific action that the process 810 is executing.

S203において、特定動作検出部910は、プロセス810が特定動作を実行中であることを示す情報を検出結果情報として識別情報発行部920に送信する。検出結果情報には、特定動作を実行中であるプロセス810を個々に識別するための固有のプロセスID、及び当該プロセス810が呼び出した特定のライブラリ関数が含まれている。   In step S <b> 203, the specific operation detection unit 910 transmits information indicating that the process 810 is executing the specific operation to the identification information issuing unit 920 as detection result information. The detection result information includes a unique process ID for individually identifying the process 810 that is executing the specific operation, and a specific library function called by the process 810.

S205において、識別情報発行部920は、検出結果情報に基づいて、検出結果情報に含まれているライブラリ関数の種類、及び特定動作を実行中であるのプロセス810の信頼度の大きさに応じて、プロセス810の特定動作の履歴を保護対象にするか否か決定する(図2参照)。   In S205, based on the detection result information, the identification information issuing unit 920 corresponds to the type of library function included in the detection result information and the reliability of the process 810 that is executing the specific operation. Then, it is determined whether or not the history of the specific operation of the process 810 is to be protected (see FIG. 2).

また、識別情報発行部920は、プロセス810の特定動作の履歴を保護対象にすることを決定した場合には、図20に示す重要度決定規則情報931を参照し、プロセス810の特定動作の実行中に呼び出されたライブラリ関数の種類及びそのプロセス810の信頼度を用いて重要度を決定する。   Further, when the identification information issuing unit 920 determines that the history of the specific operation of the process 810 is to be protected, the identification information issuing unit 920 executes the specific operation of the process 810 with reference to the importance determination rule information 931 illustrated in FIG. The importance is determined using the type of library function called in and the reliability of the process 810.

識別情報発行部920は、特定動作を実行しているプロセス810のプロセスID、当該プロセス810の特定動作の実行中に呼び出されたライブラリ関数、識別情報を個々に識別するための固有の識別ID、決定した重要度を含む識別情報921を発行する。   The identification information issuing unit 920 includes a process ID of the process 810 executing the specific operation, a library function called during execution of the specific operation of the process 810, a unique identification ID for individually identifying the identification information, Identification information 921 including the determined importance is issued.

S207において、識別情報発行部920は、発行した識別情報921を動作履歴保護要求情報検出部940及び動作履歴保護制御部970に送信する。   In step S <b> 207, the identification information issuing unit 920 transmits the issued identification information 921 to the operation history protection request information detection unit 940 and the operation history protection control unit 970.

S209において、動作履歴保護要求情報検出部940は、動作履歴保護要求情報であるopenシステムコール830をプロセス810から取得する。   In step S209, the operation history protection request information detection unit 940 obtains an open system call 830 that is operation history protection request information from the process 810.

S211において、動作履歴保護要求情報検出部940は、発行された各識別情報の中から、当該openシステムコール830の発行元のプロセス810のプロセスIDを含む識別情報921を特定する。   In step S <b> 211, the operation history protection request information detection unit 940 specifies identification information 921 including the process ID of the process 810 that issued the open system call 830 from among the issued identification information.

動作履歴保護要求情報検出部940は、特定した識別情報921に含まれている識別IDを、openシステムコール830に対する返り値としてプロセス810に返信する。プロセス810は、返り値である識別IDと、プロセス810の動作履歴とを動作履歴記録部820に記録させる。   The operation history protection request information detection unit 940 returns the identification ID included in the identified identification information 921 to the process 810 as a return value for the open system call 830. The process 810 records the identification ID as a return value and the operation history of the process 810 in the operation history recording unit 820.

また、動作履歴保護要求情報検出部940は、openシステムコール830の発行元のプロセス810のプロセスIDと、openシステムコール830に含まれている“ファイルのpath名”に対応するファイルディスクリプタとを監視リスト情報951に登録する。   The operation history protection request information detection unit 940 also monitors the process ID of the process 810 that issued the open system call 830 and the file descriptor corresponding to the “file path name” included in the open system call 830. Register in the list information 951.

更に、動作履歴保護要求情報検出部940は、動作履歴保護要求情報であるwriteシステムコール840をプロセス810から取得した場合には、writeシステムコール840の発行元のプロセス810のプロセスID及び“登録先のファイルディスクリプタ”が監視リスト情報951に登録されている場合には、S213において、writeシステムコール840を検出結果情報として動作履歴保護制御部970に送信する。   Further, when the operation history protection request information detection unit 940 obtains the write system call 840 that is the operation history protection request information from the process 810, the process ID of the process 810 that issued the write system call 840 and the “registration destination” Is registered in the monitoring list information 951, the write system call 840 is transmitted to the operation history protection control unit 970 as detection result information in S213.

S215において、動作履歴保護制御部970は、S211において上記特定された識別情報921に基づいて、該識別情報921に含まれている重要度に応じて、受信したwriteシステムコール840に含まれている“記録内容(プロセス210の特定動作の履歴)”の保護方法を決定する。具体的には以下の通りである。   In S215, the operation history protection control unit 970 is included in the received write system call 840 according to the importance included in the identification information 921 based on the identification information 921 specified in S211. A protection method of “record contents (history of specific operation of process 210)” is determined. Specifically, it is as follows.

S215−1において、動作履歴保護制御部970は、上記識別情報921に含まれている重要度が「高」・「中」・「低」のいずれであるか判定する。   In step S215-1, the operation history protection control unit 970 determines whether the importance included in the identification information 921 is “high”, “medium”, or “low”.

S215−2において、動作履歴保護制御部970は、上記識別情報921に設定された重要度が「高」である場合には、該識別情報921に含まれている識別IDと、動作履歴保護要求情報に含まれている記録内容(プロセス210の特定動作の履歴)の複製とを保護情報記録部980に記録させる。   In S215-2, when the importance set in the identification information 921 is “high”, the operation history protection control unit 970 determines the identification ID included in the identification information 921 and the operation history protection request. The protection information recording unit 980 records the copy of the recording content (the history of the specific operation of the process 210) included in the information.

S215−3において、動作履歴保護制御部970は、上記識別情報921に含まれている重要度が「中」である場合には、1エントリの動作履歴保護要求情報に含まれている記録内容(プロセス210の特定動作の履歴)のハッシュ値、すなわち1つのwriteシステムコール840に含まれている記録内容のハッシュ値を算出し、当該ハッシュ値と、識別情報921に含まれている重要度,識別IDとを保護情報記録部980に記録させる。   In S215-3, when the importance level included in the identification information 921 is “medium”, the operation history protection control unit 970 records the content included in the operation history protection request information of one entry ( A hash value of a specific operation history of the process 210, that is, a hash value of the recorded content included in one write system call 840, and the hash value and the importance and identification included in the identification information 921 The protection information recording unit 980 records the ID.

S215−4において、動作履歴保護制御部970は、上記識別情報921に含まれている重要度が「低」である場合には、プロセス810の全ての動作履歴保護要求情報に含まれている記録内容(プロセス210の特定動作の履歴)のハッシュ値を算出し、当該ハッシュ値と、識別情報921に含まれている重要度,識別IDとを保護情報記録部980に記録させる。   In S215-4, when the importance level included in the identification information 921 is “low”, the operation history protection control unit 970 records included in all the operation history protection request information of the process 810. The hash value of the content (the history of the specific operation of the process 210) is calculated, and the protection information recording unit 980 records the hash value, the importance level and the identification ID included in the identification information 921.

かかる特徴によれば、カーネル特権プロセス処理部900は、上記重要度の大きさに応じて、プロセス810の特定動作の履歴をそのまま複製して、カーネル特権プロセス処理部900が持つ特権レベルでのみアクセス可能なカーネル特権プロセス処理部900に記録したり、プロセス810の特定動作の履歴に対応するハッシュ値をカーネル特権プロセス処理部900に記録する。これにより、カーネル特権プロセス処理部900は、カーネル特権プロセス処理部900以外の領域に記憶された情報を改竄するバッファオーバーフロー攻撃などから、プロセス810の特定動作の履歴を適切に保護することができる。   According to such a feature, the kernel privileged process processing unit 900 copies the history of the specific operation of the process 810 as it is according to the level of importance, and accesses only at the privilege level possessed by the kernel privileged process processing unit 900. It is recorded in the possible kernel privileged process processing unit 900, or a hash value corresponding to the history of the specific operation of the process 810 is recorded in the kernel privileged process processing unit 900. Thereby, the kernel privileged process processing unit 900 can appropriately protect the history of the specific operation of the process 810 from a buffer overflow attack that falsifies information stored in an area other than the kernel privileged process processing unit 900.

特に、カーネル特権プロセス処理部900は、上記重要度が「高」である場合にはプロセス810の特定動作の履歴をそのまま複製して、カーネル特権プロセス処理部900が持つ特権レベルでのみアクセス可能なカーネル特権プロセス処理部900に記録することにより、重要なプロセス810の特定動作の履歴を適切に保護することができる。   In particular, when the importance level is “high”, the kernel privileged process processing unit 900 copies the history of the specific operation of the process 810 as it is, and can be accessed only at the privilege level possessed by the kernel privileged process processing unit 900. By recording in the kernel privileged process processing unit 900, it is possible to appropriately protect the history of specific operations of the important process 810.

また、カーネル特権プロセス処理部900は、上記重要度が「中」である場合には、プロセス810の特定動作の履歴のハッシュ値を1エントリ毎に記録する。これにより、カーネル特権プロセス処理部900は、重要性の低いプロセス810の特定動作の履歴を記録する場合には、プロセス810の特定動作の履歴をそのまま複製してカーネル特権プロセス処理部900に記録するのではなく、プロセス810の特定動作の履歴のハッシュ値を1エントリ毎にカーネル特権プロセス処理部900に記録する。このため、カーネル特権プロセス処理部900は、カーネル特権プロセス処理部900に記録させる情報量をより低減することができ、システム全体の性能劣化をより抑制することができる。   Further, when the importance level is “medium”, the kernel privileged process processing unit 900 records the hash value of the history of the specific operation of the process 810 for each entry. As a result, the kernel privileged process processing unit 900 copies the specific operation history of the process 810 as it is and records it in the kernel privileged process processing unit 900 when recording the history of the specific operation of the less important process 810. Instead, the hash value of the history of the specific operation of the process 810 is recorded in the kernel privileged process processing unit 900 for each entry. For this reason, the kernel privileged process processing unit 900 can further reduce the amount of information to be recorded in the kernel privileged process processing unit 900, and can further suppress performance degradation of the entire system.

さらに、動作履歴保護装置700は、上記重要度が「低」である場合には、プロセス810の「全て」の特定動作の履歴のハッシュ値を記録させる。これにより、動作履歴保護装置700は、重要性のさらに低いプロセス810の特定動作の履歴を記録する場合には、プロセス810の特定動作の履歴のハッシュ値を1エントリ毎に記録するのではなく、プロセス810の特定動作の履歴の「全て」のハッシュ値を記録する。このため、カーネル特権プロセス処理部900は、カーネル特権プロセス処理部900に記録させる情報量をより低減することができ、システム全体の性能劣化をより抑制することができる。   Furthermore, the operation history protection apparatus 700 records the hash value of the history of specific operations of “all” in the process 810 when the importance is “low”. As a result, the operation history protection device 700 does not record the hash value of the specific operation history of the process 810 for each entry when recording the specific operation history of the less important process 810. Record the hash value of “all” in the history of specific operations of the process 810. For this reason, the kernel privileged process processing unit 900 can further reduce the amount of information to be recorded in the kernel privileged process processing unit 900, and can further suppress performance degradation of the entire system.

ここで、動作履歴記録部820に記録されたプロセス810の特定動作の履歴の正当性を検証する手法について説明する。   Here, a method for verifying the validity of the history of the specific operation of the process 810 recorded in the operation history recording unit 820 will be described.

図24に示すように、ここでは、識別IDである「38280001」と、それに対応する動作履歴であるシステム設定変更動作1乃至3とが動作履歴記録部820に記録されているものとする。システム設定変更動作1乃至3は、システムの設定を変更するための動作であるものとする。   As shown in FIG. 24, it is assumed here that the identification ID “38280001” and the system setting change operations 1 to 3 corresponding to the operation history are recorded in the operation history recording unit 820. System setting change operations 1 to 3 are operations for changing system settings.

もし、システム設定変更動作1乃至3によりシステムに何等かの異常が発生した場合には、システム設定変更動作1乃至3のロールバックが実行されることにより、再びシステム設定変更動作1乃至3が実行される。   If any abnormality occurs in the system due to the system setting changing operations 1 to 3, the system setting changing operations 1 to 3 are executed again by executing the rollback of the system setting changing operations 1 to 3. Is done.

しかし、システム設定変更動作1乃至3自体が不当に改竄された場合には、システム設定変更動作1乃至3のロールバックが実行されることにより、システムの状態が悪化することがある。   However, if the system setting change operations 1 to 3 themselves are unfairly tampered with, the system settings may deteriorate due to the rollback of the system setting change operations 1 to 3 being executed.

そこで、本実施形態における動作履歴保護装置700は、システム設定変更動作1乃至3の正当性を検証し、システム設定変更動作1乃至3のロールバックによるシステムの状態の悪化を未然に防いでいる。   Therefore, the operation history protection device 700 according to the present embodiment verifies the validity of the system setting change operations 1 to 3, and prevents deterioration of the system state due to the rollback of the system setting change operations 1 to 3.

具体的には、動作履歴保護装置700は、システム設定変更動作1乃至3のロールバックを実行する前に、図24に示す制限付権限プロセス処理部800(動作履歴記録部820)に記録されたシステム設定変更動作1乃至3の識別ID「38280001」を特定する。動作履歴保護装置700は、図25に示すカーネル特権プロセス処理部900(保護情報記録部980)を参照し、特定した識別ID「38280001」に対応する重要度を参照する。   Specifically, the operation history protection device 700 is recorded in the restricted authority process processing unit 800 (operation history recording unit 820) illustrated in FIG. 24 before executing the rollback of the system setting change operations 1 to 3. The identification ID “38280001” of the system setting changing operations 1 to 3 is specified. The operation history protection device 700 refers to the kernel privileged process processing unit 900 (protection information recording unit 980) illustrated in FIG. 25, and refers to the importance corresponding to the identified identification ID “38280001”.

動作履歴保護装置700は、図25に示す識別ID「38280001」に対応する重要度が「中」であるため、保護情報記録部980におけるハッシュ値が1エントリ毎(システム設定変更動作毎)に記録されたものであると判定する。この場合には、動作履歴保護装置700は、図24に示す識別ID「38280001」に対応するシステム設定変更動作1乃至3のそれぞれ(1エントリ毎)のハッシュ値を算出する。   Since the importance corresponding to the identification ID “3828281” shown in FIG. 25 is “medium”, the operation history protection device 700 records the hash value in the protection information recording unit 980 for each entry (each system setting change operation). It is determined that In this case, the operation history protection apparatus 700 calculates a hash value for each of the system setting change operations 1 to 3 (for each entry) corresponding to the identification ID “38280001” illustrated in FIG.

動作履歴保護装置700は、図24に示す識別ID「38280001」に対応するシステム設定変更動作1乃至3のハッシュ値のそれぞれと、図25に示す識別ID「38280001」に対応するハッシュ値のそれぞれとが同一である場合には、プロセス810の動作履歴であるシステム設定変更動作1乃至3が正当な履歴であると判定し、システム設定変更動作1乃至3をロールバックする。   The operation history protection device 700 includes each of the hash values of the system setting change operations 1 to 3 corresponding to the identification ID “38280001” illustrated in FIG. 24 and each of the hash values corresponding to the identification ID “38280001” illustrated in FIG. Are the same, the system setting change operations 1 to 3 as the operation history of the process 810 are determined to be valid histories, and the system setting change operations 1 to 3 are rolled back.

一方、動作履歴保護装置700は、システム設定変更動作1乃至3のハッシュ値のそれぞれと、識別ID「38280001」に対応するハッシュ値のそれぞれとが同一でない場合には、システム設定変更動作1乃至3が正当でないものであると判定、すなわちシステム設定変更動作1乃至3が改竄されたもの(又は書換えられたもの)であると判定し、システム設定変更動作1乃至3をロールバックしない。   On the other hand, if each of the hash values of the system setting change operations 1 to 3 and the hash value corresponding to the identification ID “38280001” are not the same, the operation history protection device 700 performs the system setting change operations 1 to 3. Is determined to be invalid, that is, it is determined that the system setting change operations 1 to 3 are falsified (or rewritten), and the system setting change operations 1 to 3 are not rolled back.

このように動作履歴保護装置700は、システム設定変更動作1乃至3のロールバックを実行する前に、当該システム設定変更動作1乃至3の正当性を検証するため、当該システム設定変更動作1乃至3のロールバックによるシステムの状態の悪化を未然に防ぐことができる。   As described above, the operation history protection device 700 verifies the validity of the system setting change operations 1 to 3 before executing the rollback of the system setting change operations 1 to 3. It is possible to prevent the deterioration of the system state due to the rollback.

[第4実施形態]
ここで、制限付権限プロセス処理部がプロセスの動作の履歴を大量に記録すると、制限付権限プロセス処理部は、カーネル特権プロセス処理部に対してプロセスの動作に関するシステムコール(ライブラリ関数呼出システムコール、openシステムコール、writeシステムコール、closeシステムコールなど)を頻繁に送信する。これにより、カーネル特権プロセス処理部における処理負担が増大し、結果的にはシステム全体の性能劣化が懸念される。
[Fourth Embodiment]
Here, when the restricted authority process processing unit records a large amount of process operation history, the restricted authority process processing unit makes a system call (library function call system call, frequently (open system call, write system call, close system call, etc.). As a result, the processing load on the kernel privileged process processing unit increases, and as a result, there is a concern about the performance degradation of the entire system.

そこで、一定期間内において制限付権限プロセス処理部がカーネル特権プロセス処理部に対してシステムコールを頻繁に送信した場合には、カーネル特権プロセス処理部は、カーネル特権プロセス処理部における処理負担を増大させないようにしている。以下、具体的に説明する。   Therefore, when the restricted authority process processing unit frequently sends system calls to the kernel privileged process processing unit within a certain period, the kernel privileged process processing unit does not increase the processing load on the kernel privileged process processing unit. I am doing so. This will be specifically described below.

図26は、本実施形態における動作履歴保護装置1000の内部構成を示す図である。図26に示すように、動作履歴保護装置1000は、制限付権限プロセス処理部1100と、カーネル特権プロセス処理部1200とを備えている。   FIG. 26 is a diagram illustrating an internal configuration of the operation history protection apparatus 1000 according to the present embodiment. As shown in FIG. 26, the operation history protection apparatus 1000 includes a restricted authority process processing unit 1100 and a kernel privileged process processing unit 1200.

制限付権限プロセス処理部1100は、プロセス1110と、動作履歴記録部1120とを備えている。カーネル特権プロセス処理部1200は、特定動作検出部1210と、識別情報発行部1220と、動作履歴保護規則情報記憶部1230と、特定動作実行履歴情報記録部1240と、特定動作制御規則情報記憶部1250と、特定動作制御部1260と、動作履歴保護要求情報検出部1270と、監視リスト情報記憶部1280と、動作履歴保護制御部1290と、保護情報記録部1300とを備えている。なお、図26に示す各部のうち、図1に示す同一名称の部については、特段の説明をしていない限り同様の機能を有するものとする。   The restricted authority process processing unit 1100 includes a process 1110 and an operation history recording unit 1120. The kernel privileged process processing unit 1200 includes a specific operation detection unit 1210, an identification information issuing unit 1220, an operation history protection rule information storage unit 1230, a specific operation execution history information recording unit 1240, and a specific operation control rule information storage unit 1250. A specific operation control unit 1260, an operation history protection request information detection unit 1270, a monitoring list information storage unit 1280, an operation history protection control unit 1290, and a protection information recording unit 1300. Note that, among the parts shown in FIG. 26, the parts having the same names shown in FIG. 1 have the same functions unless otherwise specified.

特定動作検出部1210は、単位時間当りにプロセス1110が特定動作を検出した検出回数を算出する。本実施形態では当該検出回数は、1秒間当りの平均回数とする。   The specific operation detection unit 1210 calculates the number of times that the process 1110 has detected a specific operation per unit time. In the present embodiment, the number of times of detection is an average number of times per second.

例えば、特定動作検出部1210は、プロセス1110が発行したライブラリ関数呼出システムコール1130を取得したことに基づいて、プロセス1110の特定動作を検出し、当該ライブラリ関数呼出システムコール1130によりライブラリ関数が呼び出された呼出時刻、そのライブラリ関数、そのライブラリ関数が呼び出された1秒間当りの平均回数を特定動作実行履歴情報として特定動作実行履歴情報記録部1240に記録させる(後述する図28及び図29参照)。   For example, the specific operation detection unit 1210 detects the specific operation of the process 1110 based on the acquisition of the library function call system call 1130 issued by the process 1110, and the library function is called by the library function call system call 1130. The specific operation execution history information recording unit 1240 records the call time, the library function, and the average number of times the library function is called per second as the specific operation execution history information (see FIGS. 28 and 29 described later).

特定動作制御規則情報記憶部1250は、後述する設定回数(回数/秒)が設定された特定動作制御規則情報を記憶する。   The specific operation control rule information storage unit 1250 stores specific operation control rule information in which a set number of times (number of times / second) described later is set.

特定動作制御部1260は、特定動作実行履歴情報記録部1240に記録された1秒間当りの平均回数が予め設定された設定回数(回数/秒)を超える場合には、動作履歴保護要求情報検出部1270により動作履歴保護要求情報が取得された後の動作履歴保護要求情報検出部1270における処理の開始を所定時間遅延させる。なお、特定動作制御部1260及び動作履歴保護要求情報検出部1270は、遅延処理部を構成する。   When the average number of times per second recorded in the specific operation execution history information recording unit 1240 exceeds a preset number of times (number of times / second), the specific operation control unit 1260 detects an operation history protection request information detection unit. The start of processing in the operation history protection request information detection unit 1270 after the operation history protection request information is acquired by 1270 is delayed for a predetermined time. The specific operation control unit 1260 and the operation history protection request information detection unit 1270 constitute a delay processing unit.

次に、本実施形態における動作履歴保護装置1000の動作について図27を参照しながら説明する。図27に示すA部分以外は、図4に示す動作と同様であるため、ここでの詳細な説明は省略する。よって、図27に示すA部分のみについて説明する。   Next, the operation of the operation history protection apparatus 1000 in this embodiment will be described with reference to FIG. Except for the part A shown in FIG. 27, the operation is the same as that shown in FIG. Therefore, only the portion A shown in FIG. 27 will be described.

図27に示すA部分のS309において、特定動作検出部1210は、プロセス1110が発行したライブラリ関数呼出システムコール1130を取得したことに基づいて、当該ライブラリ関数呼出システムコール1130によりライブラリ関数が呼び出された呼出時刻と、そのライブラリ関数と、そのライブラリ関数が呼び出された1秒間当りの平均回数とを特定動作実行履歴情報として特定動作実行履歴情報記録部1240に記録させる。   In step S309 of part A shown in FIG. 27, the specific operation detection unit 1210 has called the library function by the library function call system call 1130 based on the acquisition of the library function call system call 1130 issued by the process 1110. The specific operation execution history information recording unit 1240 records the call time, the library function, and the average number of times per second that the library function is called as specific operation execution history information.

S311において、特定動作制御部1260は、特定動作制御規則情報に従い、特定動作実行履歴情報記録部1240に記憶された1秒間当りの平均回数が予め設定された設定回数を超える場合には、プロセス1110からの動作履歴保護要求情報に対する処理を遅延させるための制御指示情報を動作履歴保護要求情報検出部1270に送信する。   In S311, the specific operation control unit 1260 determines that the process 1110 is performed when the average number of times per second stored in the specific operation execution history information recording unit 1240 exceeds the preset number of times according to the specific operation control rule information. The control instruction information for delaying the processing for the operation history protection request information from is transmitted to the operation history protection request information detection unit 1270.

例えば、特定動作制御部1260は、特定動作実行履歴情報が図28に示す内容である場合には、最新の1秒間当りの平均回数[3.5]が予め設定された設定回数「20」(1秒間当りのライブラリ関数の呼出回数が20回)を超えないため、上記制御指示情報を動作履歴保護要求情報検出部1270に送信しない。このため、動作履歴保護要求情報検出部1270は、上記制御指示情報が送信されないため、図28に示すプロセスID「3828」のプロセスが発行した動作履歴保護要求情報に対する処理を遅延させない。   For example, when the specific operation execution history information has the content shown in FIG. 28, the specific operation control unit 1260 sets the preset average number of times [3.5] per second [3.5] to “20” ( Since the number of library function calls per second does not exceed 20), the control instruction information is not transmitted to the operation history protection request information detection unit 1270. For this reason, since the control instruction information is not transmitted, the operation history protection request information detection unit 1270 does not delay the processing for the operation history protection request information issued by the process with the process ID “3828” illustrated in FIG.

また、上記特定動作制御部1260は、特定動作実行履歴情報が図29に示す内容である場合には、最新の1秒間当りの平均回数[20.5]が予め設定された設定回数「20」を超えるため、上記制御指示情報を動作履歴保護要求情報検出部1270に送信する。このため、動作履歴保護要求情報検出部1270は、S313において上記制御指示情報を受信するため、図28に示すプロセスID「11556」のプロセスが発行した動作履歴保護要求情報(openシステムコール、writeシステムコール、closeシステムコールなど)に対する処理を所定時間(1msなど)遅延させる。   In addition, when the specific operation execution history information has the contents shown in FIG. 29, the specific operation control unit 1260 sets the preset number of times “20” in which the latest average number [20.5] per second is set in advance. Therefore, the control instruction information is transmitted to the operation history protection request information detection unit 1270. For this reason, the operation history protection request information detection unit 1270 receives the control instruction information in S313, so that the operation history protection request information (open system call, write system) issued by the process with the process ID “11556” shown in FIG. A process for a call, a close system call, etc.) is delayed for a predetermined time (1 ms, etc.).

かかる特徴によれば、制限付権限プロセス処理部1100が、一定期間内においてカーネル特権プロセス処理部1200に対してシステムコールを設定回数以上送信した場合には、カーネル特権プロセス処理部1200が、動作履歴保護要求情報に対する処理を遅延させる。これにより、カーネル特権プロセス処理部1200は、カーネル特権プロセス処理部1200における処理負担を上記一定期間内において増大させないようにすることができる。   According to such a feature, when the restricted authority process processing unit 1100 transmits a system call to the kernel privileged process processing unit 1200 more than the set number of times within a certain period, the kernel privileged process processing unit 1200 Delay processing of protection request information. Thereby, the kernel privileged process processing unit 1200 can prevent the processing load on the kernel privileged process processing unit 1200 from increasing within the certain period.

このため、一定期間内において動作履歴保護装置1000に対して外部から大量にアクセスを実行し、これに伴ないカーネル特権プロセス処理部1200に対して制限付権限プロセス処理部1100から大量にアクセスを実行させ、カーネル特権プロセス処理部1200における処理負担を増大させてシステム全体の動作処理を不能にさせるサービス不能攻撃から、カーネル特権プロセス処理部1200はシステム全体を保護することができる。   For this reason, a large amount of external access is made to the operation history protection device 1000 within a certain period, and a large amount of access is made from the restricted privileged process processing unit 1100 to the kernel privileged process processing unit 1200 accordingly. Therefore, the kernel privileged process processing unit 1200 can protect the entire system from a denial of service attack that increases the processing load on the kernel privileged process processing unit 1200 and disables the operation processing of the entire system.

以上、本発明の一例を説明したが、具体例を例示したに過ぎず、特に本発明を限定するものではなく、各実施形態及び各変更例における具体的構成等は、適宜設計変更可能である。また、各実施形態及び各変更例の具体的構成のそれぞれは、組み合わせることが可能である。さらに、各実施形態及び各変更例の作用及び効果は、本発明から生じる最も好適な作用及び効果を列挙したに過ぎず、本発明による作用及び効果は、各実施形態及び各変更例に記載されたものに限定されるものではない。   In the above, an example of the present invention has been described, but only a specific example has been illustrated, and the present invention is not particularly limited. Specific configurations and the like in each embodiment and each modified example can be appropriately changed in design. . In addition, each of the specific configurations of each embodiment and each modified example can be combined. Furthermore, the actions and effects of each embodiment and each modified example are merely a list of the most preferable actions and effects resulting from the present invention, and the actions and effects according to the present invention are described in each embodiment and each modified example. It is not limited to the ones.

第1実施形態における動作履歴保護装置の内部構成を示す図である。It is a figure which shows the internal structure of the operation | movement history protection apparatus in 1st Embodiment. 第1実施形態における動作履歴保護規則情報の内容を示す図である。It is a figure which shows the content of the operation history protection rule information in 1st Embodiment. 第1実施形態における識別情報の内容を示す図である。It is a figure which shows the content of the identification information in 1st Embodiment. 第1実施形態における動作履歴保護装置の動作を示す図である。It is a figure which shows operation | movement of the operation history protection apparatus in 1st Embodiment. 第1実施形態における各処理の実行順序を示す図である。It is a figure which shows the execution order of each process in 1st Embodiment. 第1実施形態における監視リスト情報の内容を示す図である。It is a figure which shows the content of the monitoring list information in 1st Embodiment. 第1実施形態における監視リスト情報の内容を示す図である。It is a figure which shows the content of the monitoring list information in 1st Embodiment. 変更例1における動作履歴保護装置の内部構成を示す図である。It is a figure which shows the internal structure of the operation history protection apparatus in the example 1 of a change. 変更例1における識別情報の内容を示す図である。It is a figure which shows the content of the identification information in the example 1 of a change. 変更例1における識別情報の内容を示す図である。It is a figure which shows the content of the identification information in the example 1 of a change. 変更例2における動作履歴保護装置の内部構成を示す図である。It is a figure which shows the internal structure of the operation log | history protection apparatus in the example 2 of a change. 変更例2における識別情報の内容を示す図である。It is a figure which shows the content of the identification information in the example 2 of a change. 変更例2における識別情報の内容を示す図である。It is a figure which shows the content of the identification information in the example 2 of a change. 変更例2における識別情報の内容を示す図である。It is a figure which shows the content of the identification information in the example 2 of a change. 変更例3における動作履歴保護装置の内部構成を示す図である。It is a figure which shows the internal structure of the operation history protection apparatus in the example 3 of a change. 変更例3における識別情報の内容を示す図である。It is a figure which shows the content of the identification information in the example 3 of a change. 第2実施形態における動作履歴保護装置の内部構成を示す図である。It is a figure which shows the internal structure of the operation log | history protection apparatus in 2nd Embodiment. 第2実施形態における暗号化設定規則情報の内容を示す図である。It is a figure which shows the content of the encryption setting rule information in 2nd Embodiment. 第3実施形態における動作履歴保護装置の内部構成を示す図である。It is a figure which shows the internal structure of the operation log | history protection apparatus in 3rd Embodiment. 第3実施形態における重要度決定規則情報の内容を示す図である。It is a figure which shows the content of the importance determination rule information in 3rd Embodiment. 第3実施形態における識別情報の内容を示す図である。It is a figure which shows the content of the identification information in 3rd Embodiment. 第3実施形態における保護レベル決定規則情報の内容を示す図である。It is a figure which shows the content of the protection level determination rule information in 3rd Embodiment. 第3実施形態における動作履歴保護装置の動作を示す図である。It is a figure which shows operation | movement of the operation history protection apparatus in 3rd Embodiment. 第3実施形態における制限付権限プロセス処理部内の動作履歴の内容を示す図である。It is a figure which shows the content of the operation | movement history in the restricted authority process processing part in 3rd Embodiment. 第3実施形態におけるカーネル特権プロセス処理部内の動作履歴の内容を示す図である。It is a figure which shows the content of the operation history in the kernel privileged process processing part in 3rd Embodiment. 第4実施形態における動作履歴保護装置の内部構成を示す図である。It is a figure which shows the internal structure of the operation | movement history protection apparatus in 4th Embodiment. 第4実施形態における動作履歴保護装置の動作を示す図である。It is a figure which shows operation | movement of the operation history protection apparatus in 4th Embodiment. 第4実施形態における特定動作実行履歴の内容を示す図である。It is a figure which shows the content of the specific operation execution log | history in 4th Embodiment. 第4実施形態における特定動作実行履歴の内容を示す図である。It is a figure which shows the content of the specific operation execution log | history in 4th Embodiment.

符号の説明Explanation of symbols

100…動作履歴保護装置、110…特定動作検知部、200…制限付権限プロセス処理部、210…プロセス、220…動作履歴記録部、300…カーネル特権プロセス処理部、310…特定動作検出部、320…識別情報発行部、330…動作履歴保護規則情報記憶部、340…動作履歴保護要求情報検出部、350…監視リスト情報記憶部、360…動作履歴保護制御部、370…保護情報記録部、400…動作履歴保護装置、500…制限付権限プロセス処理部、510…プロセス、520…動作履歴記録部、600…カーネル特権プロセス処理部、610…特定動作検出部、620…識別情報発行部、630…動作履歴保護規則情報記憶部、640…動作履歴保護要求情報検出部、650…監視リスト情報記憶部、660…暗号化設定規則情報記憶部、670…動作履歴保護制御部、680…保護情報記録部、700…動作履歴保護装置、800…制限付権限プロセス処理部、810…プロセス、820…動作履歴記録部、900…カーネル特権プロセス処理部、910…特定動作検出部、920…識別情報発行部、930…重要度決定規則情報記憶部、935…動作履歴保護規則情報記憶部、940…動作履歴保護要求情報検出部、950…監視リスト情報記憶部、960…保護レベル決定規則情報記憶部、970…動作履歴保護制御部、980…保護情報記録部、1000…動作履歴保護装置、1100…制限付権限プロセス処理部、1110…プロセス、1120…動作履歴記録部、1200…カーネル特権プロセス処理部、1210…特定動作検出部、1220…識別情報発行部、1230…信頼度決定規則情報記憶部、1240…特定動作実行履歴情報記録部、1250…特定動作制御規則情報記憶部、1260…特定動作制御部、1270…動作履歴保護要求情報検出部、1280…監視リスト情報記憶部、1290…動作履歴保護制御部、1300…保護情報記録部   DESCRIPTION OF SYMBOLS 100 ... Operation history protection apparatus, 110 ... Specific operation detection part, 200 ... Restricted authority process processing part, 210 ... Process, 220 ... Operation history recording part, 300 ... Kernel privileged process processing part, 310 ... Specific operation detection part, 320 ... identification information issuing unit, 330 ... operation history protection rule information storage unit, 340 ... operation history protection request information detection unit, 350 ... monitoring list information storage unit, 360 ... operation history protection control unit, 370 ... protection information recording unit, 400 ... operation history protection device, 500 ... restricted authority process processing unit, 510 ... process, 520 ... operation history recording unit, 600 ... kernel privileged process processing unit, 610 ... specific operation detection unit, 620 ... identification information issuing unit, 630 ... Operation history protection rule information storage unit, 640 ... Operation history protection request information detection unit, 650 ... Monitoring list information storage unit, 660 ... Encryption Regular rule information storage unit, 670 ... operation history protection control unit, 680 ... protection information recording unit, 700 ... operation history protection device, 800 ... restricted authority process processing unit, 810 ... process, 820 ... operation history recording unit, 900 ... Kernel privileged process processing unit, 910 ... specific operation detection unit, 920 ... identification information issuing unit, 930 ... importance level decision rule information storage unit, 935 ... operation history protection rule information storage unit, 940 ... operation history protection request information detection unit, 950 ... Monitoring list information storage unit, 960 ... Protection level determination rule information storage unit, 970 ... Operation history protection control unit, 980 ... Protection information recording unit, 1000 ... Operation history protection device, 1100 ... Restricted authority process processing unit, 1110 ... Process, 1120 ... Operation history recording unit, 1200 ... Kernel privileged process processing unit, 1210 ... Specific operation detection unit, 1220 Identification information issuing unit, 1230 ... reliability determination rule information storage unit, 1240 ... specific operation execution history information recording unit, 1250 ... specific operation control rule information storage unit, 1260 ... specific operation control unit, 1270 ... operation history protection request information detection Unit, 1280 ... monitoring list information storage unit, 1290 ... operation history protection control unit, 1300 ... protection information recording unit

Claims (17)

オペレーティングシステムの各種機能を利用することができる特権レベルに基づいて動作するカーネル特権プロセスを制御するカーネル特権プロセス処理部と、
前記特権レベルよりも低い制限付権限レベルであり、前記各種機能の一部のみを利用することができる前記制限付権限レベルに基づいて動作する制限付権限プロセスを制御する制限付権限プロセス処理部とを備え、
前記制限付権限プロセス処理部は、前記制限付権限プロセスの動作の履歴を前記制限付権限プロセス処理部に記録し、
前記カーネル特権プロセス処理部は、前記制限付権限プロセス処理部に記録される動作の履歴のうちの特定動作の履歴を前記カーネル特権プロセス処理部に記録することを特徴とする動作履歴保護装置。
A kernel privileged process processing unit for controlling a kernel privileged process operating based on a privilege level capable of using various functions of the operating system;
A restricted authority process processing unit that controls a restricted authority process that is based on the restricted authority level that is a restricted authority level lower than the privilege level and that can use only a part of the various functions; With
The restricted authority process processing unit records an operation history of the restricted authority process in the restricted authority process processing unit,
The kernel privileged process processing unit records in the kernel privileged process processing unit a history of specific operations out of operation histories recorded in the restricted authority process processing unit.
前記特定動作は、前記オペレーティングシステムの設定に関する動作であることを特徴とする請求項1に記載の動作履歴保護装置。   The operation history protection device according to claim 1, wherein the specific operation is an operation related to setting of the operating system. 前記制限付権限プロセスは、第1プロセスと第2プロセスとを含んでおり、
前記カーネル特権プロセス処理部は、前記第1プロセスと前記第2プロセスとのプロセス間通信が実行中である場合には、前記第1プロセスと前記第2プロセスとのそれぞれの前記特定動作の履歴を前記カーネル特権プロセス処理部に記録することを特徴とする請求項1に記載の動作履歴保護装置。
The restricted authority process includes a first process and a second process,
When the inter-process communication between the first process and the second process is being executed, the kernel privileged process processing unit records the specific operation history of each of the first process and the second process. The operation history protection device according to claim 1, wherein the operation history protection device records the information in the kernel privileged process processing unit.
前記制限付権限プロセスは、第1プロセスと第2プロセスとを含んでおり、
前記カーネル特権プロセス処理部は、前記第1プロセスの前記特定動作が実行中であるときに、前記第1プロセスに基づいて生成された前記第2プロセスの前記特定動作が実行中である場合には、前記第1プロセスと前記第2プロセスとのそれぞれの前記特定動作の履歴を前記カーネル特権プロセス処理部に記録することを特徴とする請求項1に記載の動作履歴保護装置。
The restricted authority process includes a first process and a second process,
When the specific operation of the second process generated based on the first process is being executed when the specific operation of the first process is being executed, the kernel privileged process processing unit 2. The operation history protection device according to claim 1, wherein the history of the specific operation of each of the first process and the second process is recorded in the kernel privileged process processing unit.
前記カーネル特権プロセス処理部は、前記特定動作を実行中である前記制限付権限プロセスの信頼性の度合を示す信頼度の大きさに応じて、前記特定動作の履歴を前記カーネル特権プロセス処理部に記録するか否か決定することを特徴とする請求項1に記載の動作履歴保護装置。   The kernel privileged process processing unit stores the history of the specific operation in the kernel privileged process processing unit according to a reliability level indicating a reliability level of the restricted authority process that is executing the specific operation. 2. The operation history protection device according to claim 1, wherein it is determined whether or not to record. 前記カーネル特権プロセス処理部は、前記カーネル特権プロセス処理部のみが参照可能な鍵情報を用いることにより、前記制限付権限プロセス処理部に記録される前記特定動作の履歴を暗号化することを特徴とする請求項1に記載の動作履歴保護装置。   The kernel privileged process processing unit encrypts the history of the specific operation recorded in the restricted authority process processing unit by using key information that can be referred to only by the kernel privileged process processing unit. The operation history protection device according to claim 1. 前記カーネル特権プロセス処理部は、前記制限付権限プロセス処理部に記録される前記特定動作の履歴の複製を前記カーネル特権プロセス処理部に記録することを特徴とする請求項1に記載の動作履歴保護装置。   The operation history protection according to claim 1, wherein the kernel privileged process processing unit records a copy of the history of the specific operation recorded in the restricted privileged process processing unit in the kernel privileged process processing unit. apparatus. 前記カーネル特権プロセス処理部は、前記制限付権限プロセス処理部に記録される前記特定動作の履歴のハッシュ値を前記カーネル特権プロセス処理部に記録することを特徴とする請求項1に記載の動作履歴保護装置。   2. The operation history according to claim 1, wherein the kernel privileged process processing unit records a hash value of the history of the specific operation recorded in the restricted authority process processing unit in the kernel privileged process processing unit. Protective device. 前記カーネル特権プロセス処理部は、前記信頼度の大きさに応じて、前記制限付権限プロセス処理部に記録される前記特定動作の履歴の複製を前記カーネル特権プロセス処理部に記録する処理、又は前記制限付権限プロセス処理部に記録される前記特定動作の履歴のハッシュ値を前記カーネル特権プロセス処理部に記録する処理のいずれかを決定することを特徴とする請求項5に記載の動作履歴保護装置。   The kernel privileged process processing unit is configured to record a copy of the history of the specific operation recorded in the restricted privileged process processing unit in the kernel privileged process processing unit according to the reliability level, or 6. The operation history protection device according to claim 5, wherein one of processes for recording a hash value of the history of the specific operation recorded in the restricted authority process processing unit in the kernel privileged process processing unit is determined. . 前記カーネル特権プロセス処理部は、前記制限付権限プロセス処理部に記録された前記特定動作の履歴の前記ハッシュ値と前記カーネル特権プロセス処理部に記録した前記ハッシュ値とが同一である場合には、前記特定動作の履歴が正当な履歴であると判定することを特徴とする請求項8に記載の動作履歴保護装置。   The kernel privileged process processing unit, when the hash value recorded in the kernel privileged process processing unit is the same as the hash value of the history of the specific operation recorded in the restricted authority process processing unit, The operation history protection device according to claim 8, wherein the specific operation history is determined to be a valid history. 前記カーネル特権プロセス処理部は、
前記制限付権限プロセスが実行中の前記特定動作を検出する特定動作検出部と、
検出された前記特定動作の履歴が保護対象であることを個々に識別するための固有の識別情報を発行する識別情報発行部と、
前記制限付権限プロセスの動作の履歴の保護を要求するための動作履歴保護要求情報を前記制限付権限プロセスから取得したことに基づいて、前記動作履歴保護要求情報の要求元の前記制限付権限プロセスのプロセスIDが前記識別情報に含まれている場合には、前記制限付権限プロセスの前記特定動作の履歴を前記カーネル特権プロセス処理部に記録させる動作履歴記録部と
を備えることを特徴とする請求項5に記載の動作履歴保護装置。
The kernel privileged process processing unit
A specific action detecting unit for detecting the specific action being executed by the restricted authority process;
An identification information issuing unit that issues unique identification information for individually identifying that the detected history of the specific operation is a protection target;
Based on the fact that the operation history protection request information for requesting the protection of the operation history of the restricted authority process is acquired from the restricted authority process, the restricted authority process of the request source of the operation history protection request information And an operation history recording unit that records the history of the specific operation of the restricted authority process in the kernel privileged process processing unit when the process ID is included in the identification information. Item 6. The operation history protection device according to Item 5.
前記特定動作検出部は、前記制限付権限プロセスが発行したシステムコールに特定のライブラリ関数が含まれている場合には、前記制限付権限プロセスが実行中の前記特定動作を検出することを特徴とする請求項11に記載の動作履歴保護装置。   The specific action detecting unit detects the specific action being executed by the restricted authority process when a specific library function is included in a system call issued by the restricted authority process. The operation history protection device according to claim 11. 前記特定動作検出部は、単位時間当りに前記特定動作を検出した検出回数を算出するものであり、
算出された前記検出回数が予め設定された設定回数を超えている場合には、前記動作履歴記録部により前記動作履歴保護要求情報が取得された後の前記動作履歴記録部における処理の開始を所定時間遅延させる遅延処理部を備えることを特徴とする請求項11に記載の動作履歴保護装置。
The specific action detection unit calculates the number of times of detection of the specific action per unit time,
When the calculated number of detections exceeds a preset number of times, a predetermined start of processing in the operation history recording unit after the operation history protection request information is acquired by the operation history recording unit The operation history protection device according to claim 11, further comprising a delay processing unit that delays the time.
前記識別情報発行部は、前記制限付権限プロセスが発行した前記システムコールに含まれる前記特定のライブラリ関数の種類、及び前記制限付権限プロセスの信頼性の度合を示す信頼度の大きさに応じて、前記識別情報を発行するか否か決定することを特徴とする請求項12に記載の動作履歴保護装置。   The identification information issuing unit is responsive to a type of the specific library function included in the system call issued by the restricted authority process and a reliability level indicating a degree of reliability of the restricted authority process. The operation history protection device according to claim 12, wherein whether or not to issue the identification information is determined. 前記動作履歴保護要求情報は、第1動作履歴保護要求情報と、第2動作履歴保護要求情報とを含んでおり、
前記第1動作履歴保護要求情報は、前記制限付権限プロセスの動作の履歴の記録先に対するアクセス権の付与を要求するためのシステムコールであり、
前記第2動作履歴保護要求情報は、前記アクセス権が付与された前記記録先に対して前記制限付権限プロセスの動作の履歴を記録するためのシステムコールであり、
前記動作履歴記録部は、前記第1動作履歴保護要求情報の要求元の前記制限付権限プロセスの前記プロセスIDが前記識別情報に含まれている場合には、前記第2動作履歴保護要求情報に含まれている前記制限付権限プロセスの動作の履歴を前記カーネル特権プロセス処理部に記録させることを特徴とする請求項11に記載の動作履歴保護装置。
The operation history protection request information includes first operation history protection request information and second operation history protection request information,
The first operation history protection request information is a system call for requesting the granting of access right to the recording destination of the operation history of the restricted authority process,
The second operation history protection request information is a system call for recording an operation history of the restricted authority process for the recording destination to which the access right is granted,
The operation history recording unit includes the second operation history protection request information when the process ID of the restricted authority process requesting the first operation history protection request information is included in the identification information. The operation history protection apparatus according to claim 11, wherein the operation history of the restricted authority process included is recorded in the kernel privileged process processing unit.
前記動作履歴保護要求情報は、第3動作履歴保護要求情報を含んでおり、
前記第3動作履歴保護要求情報は、前記アクセス権が付与された前記記録先に対する前記アクセス権の解除を要求するためのシステムコールであり、
前記動作履歴記録部は、前記第3動作履歴保護要求情報を前記制限付権限プロセスから取得した場合には、前記動作履歴記録部の処理を終了することを特徴とする請求項15に記載の動作履歴保護装置。
The operation history protection request information includes third operation history protection request information,
The third operation history protection request information is a system call for requesting release of the access right to the recording destination to which the access right is granted,
16. The operation according to claim 15, wherein the operation history recording unit terminates the process of the operation history recording unit when the third operation history protection request information is acquired from the restricted authority process. History protection device.
コンピュータを、
オペレーティングシステムの各種機能を利用することができる特権レベルに基づいて動作するカーネル特権プロセスを制御するカーネル特権プロセス処理部と、
前記特権レベルよりも低い制限付権限レベルであり、前記各種機能の一部のみを利用することができる前記制限付権限レベルに基づいて動作する制限付権限プロセスを制御する制限付権限プロセス処理部として機能させる動作履歴保護プログラムであって、
前記制限付権限プロセス処理部は、前記制限付権限プロセスの動作の履歴を前記制限付権限プロセス処理部に記録し、
前記カーネル特権プロセス処理部は、前記制限付権限プロセス処理部に記録される動作の履歴のうちの特定動作の履歴を前記カーネル特権プロセス処理部に記録することを特徴とする動作履歴保護プログラム。
Computer
A kernel privileged process processing unit for controlling a kernel privileged process operating based on a privilege level capable of using various functions of the operating system;
As a restricted authority process processing unit that controls a restricted authority process that operates based on the restricted authority level that is a restricted authority level lower than the privilege level and that can use only a part of the various functions. An operation history protection program to function,
The restricted authority process processing unit records an operation history of the restricted authority process in the restricted authority process processing unit,
The kernel privileged process processing unit records a specific operation history among the operation histories recorded in the restricted authority process processing unit in the kernel privileged process processing unit.
JP2005262111A 2005-09-09 2005-09-09 Operation history protection device and operation history protection program Pending JP2007072969A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005262111A JP2007072969A (en) 2005-09-09 2005-09-09 Operation history protection device and operation history protection program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005262111A JP2007072969A (en) 2005-09-09 2005-09-09 Operation history protection device and operation history protection program

Publications (1)

Publication Number Publication Date
JP2007072969A true JP2007072969A (en) 2007-03-22

Family

ID=37934330

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005262111A Pending JP2007072969A (en) 2005-09-09 2005-09-09 Operation history protection device and operation history protection program

Country Status (1)

Country Link
JP (1) JP2007072969A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008117471A1 (en) * 2007-03-27 2008-10-02 Fujitsu Limited Audit program, audit system and audit method
WO2010131579A1 (en) * 2009-05-11 2010-11-18 日本電気株式会社 Terminal device, communication method used in the terminal device, and communication control program
JP2011511980A (en) * 2008-01-31 2011-04-14 インターナショナル・ビジネス・マシーンズ・コーポレーション Method and apparatus for operating system event notification mechanism using file system interface
KR20120081113A (en) 2009-09-30 2012-07-18 가부시키가이샤 닛폰 쇼쿠바이 Particulate water absorbent and method for producing same
WO2014058178A1 (en) * 2012-10-12 2014-04-17 한국전자통신연구원 Black box device and method for supporting restoration of a smart grid system
KR101428769B1 (en) 2012-10-12 2014-08-08 한국전자통신연구원 Black box apparatus and method for supporting reconfiguration of smart grid system
JP2021117624A (en) * 2020-01-24 2021-08-10 三菱電機株式会社 In-vehicle control device

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008117471A1 (en) * 2007-03-27 2008-10-02 Fujitsu Limited Audit program, audit system and audit method
JP5278309B2 (en) * 2007-03-27 2013-09-04 富士通株式会社 Audit program, audit system, and audit method
JP2011511980A (en) * 2008-01-31 2011-04-14 インターナショナル・ビジネス・マシーンズ・コーポレーション Method and apparatus for operating system event notification mechanism using file system interface
US8935579B2 (en) 2008-01-31 2015-01-13 International Business Machines Corporation Method and apparatus for operating system event notification mechanism using file system interface
WO2010131579A1 (en) * 2009-05-11 2010-11-18 日本電気株式会社 Terminal device, communication method used in the terminal device, and communication control program
JP5370482B2 (en) * 2009-05-11 2013-12-18 日本電気株式会社 TERMINAL DEVICE, COMMUNICATION METHOD AND COMMUNICATION CONTROL PROGRAM USED FOR THE TERMINAL DEVICE
US8782663B2 (en) 2009-05-11 2014-07-15 Nec Corporation Terminal device, communication method used in the terminal device and recording medium
KR20120081113A (en) 2009-09-30 2012-07-18 가부시키가이샤 닛폰 쇼쿠바이 Particulate water absorbent and method for producing same
WO2014058178A1 (en) * 2012-10-12 2014-04-17 한국전자통신연구원 Black box device and method for supporting restoration of a smart grid system
KR101428769B1 (en) 2012-10-12 2014-08-08 한국전자통신연구원 Black box apparatus and method for supporting reconfiguration of smart grid system
JP2021117624A (en) * 2020-01-24 2021-08-10 三菱電機株式会社 In-vehicle control device

Similar Documents

Publication Publication Date Title
US8555089B2 (en) Program execution apparatus, control method, control program, and integrated circuit
US7698744B2 (en) Secure system for allowing the execution of authorized computer program code
CN103827881B (en) Method and system for the dynamic platform safety in device operating system
JP5346608B2 (en) Information processing apparatus and file verification system
US8522015B2 (en) Authentication of binaries in memory with proxy code execution
EP3479280A1 (en) Ransomware protection for cloud file storage
CN102279760A (en) Device booting with an initial protection component
JP2006511877A (en) System and method for detecting software tampering by proactively
US20030221115A1 (en) Data protection system
CN106295407B (en) Method and device for detecting whether file is tampered
JP2008537224A (en) Safe starting method and system
JP2007072969A (en) Operation history protection device and operation history protection program
KR101828600B1 (en) Context-aware ransomware detection
US20160004859A1 (en) Method and system for platform and user application security on a device
JP2003108253A (en) Method and program for monitoring application
JP2023534502A (en) Advanced ransomware detection
JP2010097550A (en) Virus prevention program, storage device detachable from computer, and virus prevention method
JP2013164732A (en) Information processor
US9507922B1 (en) System, method, and computer program for conditionally implementing protected content
KR20200041639A (en) In-vehicle software update system and method for controlling the same
US8490208B2 (en) Method and device for detecting if a computer file has been copied and method and device for enabling such detection
CN113672925B (en) Method and device for preventing lux software attack, storage medium and electronic equipment
KR20190095056A (en) Systems and methods for detection and prevention of Ransomware
JP4627266B2 (en) Information leakage prevention system due to unknown malware
JP5392494B2 (en) File check device, file check program, and file check method