JP2019008732A - Access control device, access control method and access control program - Google Patents

Access control device, access control method and access control program Download PDF

Info

Publication number
JP2019008732A
JP2019008732A JP2017126639A JP2017126639A JP2019008732A JP 2019008732 A JP2019008732 A JP 2019008732A JP 2017126639 A JP2017126639 A JP 2017126639A JP 2017126639 A JP2017126639 A JP 2017126639A JP 2019008732 A JP2019008732 A JP 2019008732A
Authority
JP
Japan
Prior art keywords
file
access
identification information
source process
integrity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017126639A
Other languages
Japanese (ja)
Other versions
JP6787841B2 (en
Inventor
剛 永吉
Takeshi Nagayoshi
剛 永吉
宮本 剛
Takeshi Miyamoto
宮本  剛
和巳 木下
Kazumi Kinoshita
和巳 木下
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017126639A priority Critical patent/JP6787841B2/en
Publication of JP2019008732A publication Critical patent/JP2019008732A/en
Application granted granted Critical
Publication of JP6787841B2 publication Critical patent/JP6787841B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

To prevent integrity of an access destination file from being lost by an access source process.SOLUTION: An access detection and control part 14 of an access control device 10 detects access to a file by a process. A file data integrity determination part 16 determines, based upon file data, whether the file is altered. An access source process integrity determination part 17 determines whether identification information on an access source process is included in identification information of a permitted process permitted to access the file. An access control determination part 19 determines that access by the access source process is safe when it is determined that the file that the access source process is to access is not altered and when it is determined that the identification information of the access source process is included in the identification information of the permitted process, and determines that the access by the access source process is risky when not.SELECTED DRAWING: Figure 4

Description

本発明は、アクセス制御装置、アクセス制御方法およびアクセス制御プログラムに関する。   The present invention relates to an access control device, an access control method, and an access control program.

従来より、コンピュータ上で存在および動作することが許可されているアプリケーションおよびアプリケーションコンポーネント(ライブラリファイル、設定ファイル等)を予めホワイトリストに登録しておくアプリケーション制御技術がある。このアプリケーション制御技術は、アプリケーションおよびアプリケーションコンポーネントがホワイトリストに登録されており、かつこれらのファイルの完全性が確認されている場合、その動作を許可し、ホワイトリストに登録されていない場合、または、これらのファイルの完全性が失われている場合、その動作を許可しないというものである(例えば、非特許文献1参照)。ファイルの完全性とは、例えば、ファイルが改ざんされていないことをいう。   Conventionally, there is an application control technique in which applications and application components (such as library files and setting files) that are allowed to exist and operate on a computer are registered in advance in a white list. This application control technology allows the operation if the application and application components are whitelisted and the integrity of these files has been verified and is not whitelisted, or When the integrity of these files is lost, the operation is not permitted (see, for example, Non-Patent Document 1). File integrity means, for example, that the file has not been tampered with.

ファイルに対するアクセス制御の観点によれば、アプリケーションおよびアプリケーションコンポーネントはアクセス先ファイルであり、ライブラリや設定ファイルを参照するアプリケーションプロセスはアクセス元プロセスと見ることができる。上述の従来技術はアクセス先ファイルの完全性を確認できる場合のみ、アクセス元プロセスが目的とするファイルアクセスを許可するものである。   From the viewpoint of controlling access to a file, an application and an application component are access destination files, and an application process that refers to a library or a setting file can be regarded as an access source process. The above-described conventional technique permits the intended file access by the access source process only when the integrity of the access destination file can be confirmed.

Adam Sedgewick et al.、“Guide to Application Whitelisting”、[online]、NIST Special Publication 800-167、National Institute of Standards and Technology、[平成29年6月12日検索]、インターネット〈URL:http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-167.pdf〉Adam Sedgewick et al., “Guide to Application Whitelisting”, [online], NIST Special Publication 800-167, National Institute of Standards and Technology, [Search June 12, 2017], Internet <URL: http: // nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-167.pdf>

しかしながら、上述の従来技術は、ファイルアクセスにおいて、アクセス先ファイルの完全性は確認できるが、ファイルへアクセスするアクセス元プロセスの完全性は確認できない。アクセス元プロセスの完全性が失われるとは、例えば、アクセス元プロセスがマルウェア等の不適切なプロセスであることを含む。よって、アクセス元プロセスによるファイルアクセスの結果、アクセス先ファイルの完全性が失われることを防止できないという問題がある。   However, although the above-described conventional technology can confirm the integrity of the access destination file in file access, it cannot confirm the integrity of the access source process accessing the file. The loss of the integrity of the access source process includes, for example, that the access source process is an inappropriate process such as malware. Therefore, there is a problem that it is impossible to prevent the integrity of the access destination file from being lost as a result of the file access by the access source process.

アクセス先ファイルがアプリケーションプロセスの実行ファイル、ライブラリ、設定ファイル、入出力ファイルなどである場合、アクセス先ファイルが不正に改ざんされていれば、当該アプリケーションプロセスが不正に動作する可能性がある。一方、アクセス元プロセスが改ざんされているなど不正なものである場合、当該プロセスがアクセスすることによってアクセス先ファイルが不正に改ざんされる可能性がある。さらに、そのように改ざんされたアクセス先ファイルが、さらに別のアプリケーションプロセスの不正な動作につながる可能性がある。すなわち、ファイルアクセスの安全性を確認するには、アクセス先ファイルの完全性と、アクセス元プロセスの完全性の、両方を確認することが必要である。   When the access destination file is an execution file, library, setting file, input / output file, or the like of the application process, if the access destination file has been tampered with, the application process may operate illegally. On the other hand, if the access source process is illegal such as falsified, the access destination file may be illegally altered by accessing the process. Furthermore, there is a possibility that the access destination file altered in such a manner may lead to an unauthorized operation of another application process. That is, in order to confirm the safety of file access, it is necessary to confirm both the integrity of the access destination file and the integrity of the access source process.

なお、上述の従来技術において、網羅的かつ正確なアプリケーションホワイトリストを作成することが可能であれば、コンピュータシステム上で完全性を欠いたアプリケーションプロセスの実行を防ぐことができるため、個々のファイルアクセスに着目してアクセス元プロセスの完全性を確認するまでも無い。しかしながら、一般的な環境において、網羅的かつ正確なアプリケーションホワイトリストを作成し維持することは、多くのコストがかかり難しい。   In the above-described prior art, if it is possible to create an exhaustive and accurate application white list, it is possible to prevent execution of an application process lacking in integrity on a computer system. There is no need to check the completeness of the access source process. However, creating and maintaining an exhaustive and accurate application whitelist in a general environment is costly and difficult.

本願が開示する実施形態の一例は、上述に鑑みてなされたものであって、アクセス元プロセスによりアクセス先ファイルの完全性が失われることを防止することを目的とする。   An example of an embodiment disclosed in the present application has been made in view of the above, and an object thereof is to prevent loss of integrity of an access destination file by an access source process.

本願の実施形態の一例において、アクセス制御装置は、ファイルへのアクセスを許可されている許可プロセスの識別情報を該ファイルごとに記憶する記憶部と、ファイルに対するアクセス元プロセスのアクセスを検知する検知部と、ファイルのファイルデータに基づいて、該ファイルが改ざんされているか否かを判定するファイル判定部と、前記検知部によりファイルに対するアクセスが検知されたアクセス元プロセスの識別情報が前記許可プロセスの識別情報に含まれているか否かを判定するプロセス判定部と、前記ファイル判定部により、前記アクセス元プロセスがアクセスしようとしているファイルが改ざんされていないと判定され、かつ、前記アクセス元プロセスの識別情報が前記許可プロセスの識別情報に含まれていると判定された場合には、該ファイルに対する前記アクセス元プロセスのアクセスを安全と判定し、該ファイルが改ざんされていると判定された、または、前記アクセス元プロセスの識別情報が前記許可プロセスの識別情報に含まれていないと判定された場合には、該ファイルに対する前記アクセス元プロセスのアクセスを危険と判定するアクセス制御判定部とを備えた。   In one example of an embodiment of the present application, an access control device includes a storage unit that stores identification information of a permitted process permitted to access a file for each file, and a detection unit that detects access of an access source process to the file. A file determination unit that determines whether the file has been tampered with based on the file data of the file, and identification information of the access source process in which access to the file is detected by the detection unit is the identification of the permitted process A process determination unit that determines whether or not the information is included in the information, and the file determination unit determines that the file that the access source process is trying to access has not been tampered with, and the identification information of the access source process Is included in the identification information of the authorization process. In this case, it is determined that access of the access source process to the file is safe and it is determined that the file has been tampered with, or the identification information of the access source process is included in the identification information of the permitted process. And an access control determination unit that determines that the access source process accesses the file as dangerous.

本願の実施形態の一例によれば、例えば、アクセス元プロセスによるファイルアクセスの結果、アクセス先ファイルの完全性が失われることを防止することができる。   According to an example of the embodiment of the present application, for example, it is possible to prevent the integrity of the access destination file from being lost as a result of the file access by the access source process.

図1は、ファイルと、依存プロセスと、アクセス元プロセスとの関係の一例を示す図である。FIG. 1 is a diagram illustrating an example of a relationship among a file, a dependent process, and an access source process. 図2は、制御フラグと、ファイルデータ完全性およびアクセス元プロセス完全性との関係の一例を示す図である。FIG. 2 is a diagram illustrating an example of the relationship between the control flag, file data integrity, and access source process integrity. 図3は、ファイルおよびプロセスの再帰的な完全性確認の一例を示す図である。FIG. 3 is a diagram illustrating an example of recursive integrity confirmation of files and processes. 図4は、実施形態1のアクセス制御装置の構成の一例を示す図である。FIG. 4 is a diagram illustrating an example of the configuration of the access control apparatus according to the first embodiment. 図5は、実施形態1のアクセス対象ファイルリストと、プロセスACLと、依存プロセスリストと、不完全プロセスリストの一例を示す図である。FIG. 5 is a diagram illustrating an example of an access target file list, a process ACL, a dependent process list, and an incomplete process list according to the first embodiment. 図6は、実施形態1における判定結果リストの一例を示す図である。FIG. 6 is a diagram illustrating an example of a determination result list according to the first embodiment. 図7は、実施形態1の初期設定処理の一例を示すフローチャートである。FIG. 7 is a flowchart illustrating an example of the initial setting process according to the first embodiment. 図8は、実施形態1のファイルアクセス制御処理の一例を示すフローチャートである。FIG. 8 is a flowchart illustrating an example of the file access control process according to the first embodiment. 図9は、実施形態2のアクセス制御装置の構成の一例を示す図である。FIG. 9 is a diagram illustrating an example of the configuration of the access control apparatus according to the second embodiment. 図10は、実施形態2のアクセス対象ファイルリストと、プロセスACLの一例を示す図である。FIG. 10 is a diagram illustrating an example of an access target file list and a process ACL according to the second embodiment. 図11は、実施形態2のファイルアクセス制御処理の一例を示すフローチャートである。FIG. 11 is a flowchart illustrating an example of a file access control process according to the second embodiment. 図12は、プログラムが実行されることにより、アクセス制御装置が実現されるコンピュータの一例を示す図である。FIG. 12 is a diagram illustrating an example of a computer in which an access control apparatus is realized by executing a program.

以下、本願の実施形態の一例のアクセス制御装置、アクセス制御方法およびアクセス制御プログラムの実施形態を説明する。なお、以下の実施形態は、一例を示すに過ぎず、本願を限定するものではない。以下の各実施形態において、既出の同一構成および同一処理については、説明を省略する。また、以下に示す各実施形態は、矛盾しない範囲で適宜組合せることができる。   Hereinafter, an embodiment of an access control device, an access control method, and an access control program as an example of an embodiment of the present application will be described. In addition, the following embodiment shows only an example and does not limit this application. In each of the following embodiments, the description of the same configuration and the same processing as described above will be omitted. Moreover, each embodiment shown below can be combined suitably in the range which is not contradictory.

[実施形態1]
(ファイルと、依存プロセスと、アクセス元プロセスとの関係)
実施形態1の説明に先立ち、ファイルのアクセス制御について説明する。図1は、ファイルと、依存プロセスと、アクセス元プロセスとの関係の一例を示す図である。図1では、アクセス元プロセス、ファイルF、依存プロセスは、オペレーティングシステムにより管理されているとする。なお、図1は、あくまで一例を示すに過ぎず、アクセス元プロセス、ファイルF、依存プロセスそれぞれの数、ファイルアクセスの関係、依存関係は、図示のものに限られない。
[Embodiment 1]
(Relationship between files, dependent processes, and access source processes)
Prior to the description of the first embodiment, file access control will be described. FIG. 1 is a diagram illustrating an example of a relationship among a file, a dependent process, and an access source process. In FIG. 1, it is assumed that the access source process, the file F, and the dependent process are managed by the operating system. Note that FIG. 1 is merely an example, and the number of access source processes, files F, and dependent processes, file access relationships, and dependency relationships are not limited to those illustrated.

図1に例示するファイルFは、データファイル、設定ファイル、プログラムファイル、スクリプトファイル等である。プログラムファイルは、実行ファイル、ライブラリファイル等である。ここで、ファイルFが「ファイルデータ完全性V1」を有するとは、ファイルFのファイルデータのダイジェスト値(例えばハッシュ値)と、事前定義したファイルFの参照ダイジェスト値とが一致することをいう。   The file F illustrated in FIG. 1 is a data file, a setting file, a program file, a script file, or the like. The program file is an execution file, a library file, or the like. Here, the fact that the file F has “file data integrity V1” means that the digest value (for example, hash value) of the file data of the file F matches the reference digest value of the file F that is defined in advance.

また、図1に例示する依存プロセスは、依存プロセスの動作の正当性(以下、「依存プロセス完全性」という)が、当該依存プロセスが依存関係にあるファイルFの「ファイルデータ完全性V1」に依存するプロセスである。依存プロセスは、アプリケーションプロセス、オペレーティングシステム、インタプリタプロセス等である。   In addition, the dependency process illustrated in FIG. 1 has the correctness of the operation of the dependency process (hereinafter referred to as “dependence process integrity”) as “file data integrity V1” of the file F in which the dependency process is dependent. It is a dependent process. The dependent process is an application process, an operating system, an interpreter process, or the like.

例えば、依存プロセスは、依存プロセス完全性が、アプリケーションプロセスの実行ファイルであるファイルFの「ファイルデータ完全性V1」に依存する、当該アプリケーションプロセスである。また、例えば、依存プロセスは、依存プロセス完全性が、アプリケーションプロセスのライブラリファイルであるファイルFの「ファイルデータ完全性V1」に依存する、当該アプリケーションプロセスである。   For example, the dependent process is an application process whose dependent process integrity depends on the “file data integrity V1” of the file F that is an execution file of the application process. Further, for example, the dependent process is an application process whose dependency process integrity depends on “file data integrity V1” of the file F that is a library file of the application process.

また、例えば、依存プロセスは、依存プロセス完全性が、アプリケーションプロセスへの入力データのデータファイルであるファイルFの「ファイルデータ完全性V1」に依存する、当該アプリケーションプロセスである。また、例えば、依存プロセスは、依存プロセス完全性が、アプリケーションプロセスの設定ファイルであるファイルFの「ファイルデータ完全性V1」に依存する、当該アプリケーションプロセスである。依存プロセスは、オペレーティングシステムを介して、依存プロセスの実行ファイルパス等によって識別される。   Further, for example, the dependent process is an application process whose dependent process integrity depends on “file data integrity V1” of the file F that is a data file of input data to the application process. Further, for example, the dependent process is an application process whose dependency process integrity depends on “file data integrity V1” of the file F that is a setting file of the application process. The dependent process is identified by the execution file path of the dependent process through the operating system.

また、図1に例示するアクセス元プロセスは、ファイルFに対してアクセスするプロセスである。アクセス元プロセスは、依存プロセス同様、アプリケーションプロセス、オペレーティングシステム、インタプリタプロセス等である。   The access source process illustrated in FIG. 1 is a process for accessing the file F. The access source process is an application process, an operating system, an interpreter process, etc. as well as a dependent process.

例えば、アクセス元プロセスは、データファイルであるファイルFを参照または更新するアプリケーションプロセスである。また、例えば、アクセス元プロセスは、設定ファイルであるファイルFを参照するアプリケーションプロセスである。また、例えば、アクセス元プロセスは、プログラムファイルであるファイルFを実行するオペレーティングシステムである。また、例えば、アクセス元プロセスは、スクリプトファイルであるファイルFを実行するインタプリタプロセスである。   For example, the access source process is an application process that references or updates a file F that is a data file. For example, the access source process is an application process that refers to the file F that is a setting file. Further, for example, the access source process is an operating system that executes a file F that is a program file. For example, the access source process is an interpreter process that executes a file F that is a script file.

ここで、アクセス元プロセスが「アクセス元プロセス完全性V2」を有するとは、アクセス元プロセスがファイルFに対してファイルアクセスが許可されているプロセスとしてプロセスACL(Access Control List)に登録されており、かつ、当該アクセス元プロセスが依存関係にあるファイルが「ファイルデータ完全性V1」を有することをいう。アクセス元プロセスは、オペレーティングシステムを介して、アクセス元プロセスの実行ファイルパス等によって識別される。図1において、アクセス元プロセスが依存関係にあるファイルは、不図示のファイルである。   Here, the access source process having “access source process integrity V2” means that the access source process is registered in the process ACL (Access Control List) as a process in which file access to the file F is permitted. In addition, a file on which the access source process is dependent has “file data integrity V1”. The access source process is identified by the execution file path or the like of the access source process via the operating system. In FIG. 1, the file with which the access source process is dependent is a file (not shown).

ここで、アクセス元プロセスが「アクセス元プロセス完全性V2」を有さない場合、アクセス元プロセスによるファイルFへのファイルアクセスの結果、ファイルFが「ファイルデータ完全性V1」を有さなくなるおそれが生じる。また、ファイルFが「ファイルデータ完全性V1」を有さない場合、依存プロセスが、アクセス元プロセスとして振る舞う際の「アクセス元プロセス完全性V2」も有さなくなるおそれが生じる。このように、「ファイルデータ完全性V1」および「アクセス元プロセス完全性V2」は、再帰的に伝播していく。   Here, when the access source process does not have “access source process integrity V2”, the file F may not have “file data integrity V1” as a result of the file access to the file F by the access source process. Arise. Further, if the file F does not have “file data integrity V1”, the dependent process may not have “access source process integrity V2” when acting as the access source process. Thus, “file data integrity V1” and “access source process integrity V2” propagate recursively.

(アクセス制御判定)
そこで、実施形態1では、アクセス元プロセスがファイルFに対してファイルアクセスを開始し、かつ、ファイルFの参照または更新が未実施の状態が検知された時点で、当該アクセス元プロセスのファイルアクセスを一時停止させて、「アクセス制御V4」の判定を行う。アクセス元プロセスがファイルFに対してファイルアクセスを開始したとは、例えば、アクセス元プロセスがオペレーティングシステムに対してファイルFのオープンを指示したことや、オペレーティングシステムによるファイルFの起動イベントを検知したことをいう。「アクセス制御V4」の判定は、「ファイルデータ完全性V1」、「アクセス元プロセス完全性V2」、「アクセス完全性V3」の各判定を含む。
(Access control judgment)
Therefore, in the first embodiment, when the access source process starts file access to the file F and when it is detected that the reference or update of the file F is not performed, the file access of the access source process is performed. It is temporarily stopped and “access control V4” is determined. The access source process has started file access to the file F, for example, that the access source process has instructed the operating system to open the file F, or that the operating system has detected the start event of the file F. Say. The determination of “access control V4” includes determination of “file data integrity V1”, “access source process integrity V2”, and “access integrity V3”.

ファイルFの「ファイルデータ完全性V1」の判定では、ファイルFのファイルデータのダイジェスト値を算出し、算出したダイジェスト値と、事前定義しておいた当該ファイルデータの参照ダイジェスト値とが一致するか否かを判定する。ファイルFのダイジェスト値と、参照ダイジェスト値とを比較した結果、両者が一致する場合、ファイルFの「ファイルデータ完全性V1」の判定結果をOKと判定し、両者が一致しない場合、ファイルFの「ファイルデータ完全性V1」の判定結果をNGと判定する。   In the determination of the “file data integrity V1” of the file F, the digest value of the file data of the file F is calculated, and whether the calculated digest value matches the predefined reference digest value of the file data. Determine whether or not. As a result of comparing the digest value of the file F with the reference digest value, if both match, the determination result of the “file data integrity V1” of the file F is determined to be OK, and if both do not match, the file F The determination result of “file data integrity V1” is determined as NG.

なお、「ファイルデータ完全性V1」の判定は、ファイルFがプログラムファイル等、ファイルデータが更新されず固定である“データ固定ファイル”である場合に実行され、ログファイル等、ファイルデータが更新される“データ変動ファイル”である場合には実行されない。   The determination of “file data integrity V1” is executed when the file F is a “data fixed file” such as a program file and the file data is not updated and is fixed, and the file data such as a log file is updated. If it is a “data fluctuation file”, it is not executed.

「アクセス元プロセス完全性V2」の判定では、アクセス元プロセスがファイルFに対してファイルアクセスが許可されているプロセスとしてプロセスACLに登録されており、かつ、当該アクセス元プロセスが依存関係にあるファイルの「ファイルデータ完全性V1」の判定結果がOKであるか否かを判定する。アクセス元プロセスがプロセスACLに登録されており、かつ、当該アクセス元プロセスが依存関係にあるファイルの「ファイルデータ完全性V1」の判定結果がOKである場合、アクセス元プロセスの「アクセス元プロセス完全性V2」の判定結果をOKと判定する。一方、アクセス元プロセスがプロセスACLに登録されていない、または、当該アクセス元プロセスが依存関係にあるファイルの「ファイルデータ完全性V1」の判定結果がNGである場合、アクセス元プロセスの「アクセス元プロセス完全性V2判定」の判定結果をNGと判定する。   In the determination of “access source process integrity V2”, the access source process is registered in the process ACL as a process in which file access is permitted for the file F, and the access source process has a dependency relationship. It is determined whether or not the determination result of “file data integrity V1” is OK. If the access source process is registered in the process ACL and the determination result of “file data integrity V1” of the file having the dependency on the access source process is OK, the “access source process complete” of the access source process The determination result of “character V2” is determined to be OK. On the other hand, if the access source process is not registered in the process ACL or the determination result of “file data integrity V1” of the file having the dependency on the access source process is NG, the “access source of the access source process” The determination result of “process integrity V2 determination” is determined to be NG.

「アクセス完全性V3」の判定では、「ファイルデータ完全性V1」および「アクセス元プロセス完全性V2」の判定結果がともにNGでない場合、アクセス元プロセスによるファイルFに対するファイルアクセスの「アクセス完全性V3」の判定結果をOK(安全)と判定する。一方、「ファイルデータ完全性V1判定」または「アクセス元プロセス完全性V2判定」の判定結果のいずれかがNGの場合、アクセス元プロセスによるファイルFに対するファイルアクセスの「アクセス完全性V3」の判定結果をNG(危険)と判定する。   In the determination of “access integrity V3”, if the determination results of “file data integrity V1” and “access source process integrity V2” are not NG, “access integrity V3” of the file access to the file F by the access source process. "Is determined to be OK (safe). On the other hand, if either of the determination results of “file data integrity V1 determination” or “access source process integrity V2 determination” is NG, the determination result of “access integrity V3” of file access to the file F by the access source process Is judged as NG (dangerous).

そして、実施形態1では、「制御フラグ」に応じて「アクセス制御V4」を行う。「制御フラグ」は、ファイルFごとに設定される、「ファイルデータ完全性V1」または「アクセス元プロセス完全性V2」の判定結果のいずれかがNGであった場合の動作モードを指定する。「制御フラグ」が指定する動作モードには、“記録モード”および“遮断モード”がある。   In the first embodiment, “access control V4” is performed according to the “control flag”. The “control flag” designates an operation mode when either of the determination results of “file data integrity V1” or “access source process integrity V2” set for each file F is NG. The operation modes specified by the “control flag” include “recording mode” and “cut-off mode”.

“記録モード”では、「ファイルデータ完全性V1」および「アクセス元プロセス完全性V2」の各判定結果を記録して、アクセス元プロセスによるファイルFに対するファイルアクセスを許可する。“遮断モード”では、アクセス元プロセスのファイルFに対するファイルアクセスを遮断する。“遮断モード”または“記録モード”をファイルFごとに設定することによって、柔軟なファイルアクセスの制御および管理が可能になる。   In the “recording mode”, each determination result of “file data integrity V1” and “access source process integrity V2” is recorded, and file access to the file F by the access source process is permitted. In the “blocking mode”, file access to the file F of the access source process is blocked. By setting the “blocking mode” or “recording mode” for each file F, flexible file access control and management becomes possible.

なお、“遮断モード”は、“記録モード”よりセキュリティ的に安全であるが、事後的にリスク分析するケースも多いことから、“遮断モード”あっても、アクセス元プロセスのファイルFに対するファイルアクセスを遮断しつつ、「ファイルデータ完全性V1」および「アクセス元プロセス完全性V2」の各判定結果を記録してもよい。   The “blocking mode” is more secure than the “recording mode”, but since there are many cases where risk analysis is performed afterwards, file access to the file F of the access source process is possible even in the “blocking mode”. Each determination result of “file data integrity V1” and “access source process integrity V2” may be recorded.

「アクセス制御V4」の判定では、「アクセス完全性V3」の判定結果および「制御フラグ」に基づいて、一時停止していたアクセス元プロセスのファイルFに対するファイルアクセスの“許可”または“遮断”を判定する。「アクセス制御V4」の判定では、「アクセス完全性V3」の判定結果がOK、または、「制御フラグ」が“記録モード”の場合、アクセス元プロセスによるファイルFに対するファイルアクセスを“許可”と判定する。また、「アクセス制御V4」では、「アクセス完全性V3」の判定結果がNG、かつ、「制御フラグ」が“遮断モード”の場合、アクセス元プロセスによるファイルFに対するファイルアクセスを“遮断”と判定する。   In the determination of “access control V4”, based on the determination result of “access integrity V3” and the “control flag”, “permitted” or “blocked” file access to the file F of the access source process that has been suspended is determined. judge. In the determination of “access control V4”, when the determination result of “access integrity V3” is OK or the “control flag” is “recording mode”, the access to the file F by the access source process is determined to be “permitted”. To do. In “access control V4”, if the determination result of “access integrity V3” is NG and the “control flag” is “blocking mode”, the file access to the file F by the access source process is determined to be “blocking”. To do.

(制御フラグと、ファイルデータ完全性およびアクセス元プロセス完全性との関係)
図2は、制御フラグと、ファイルデータ完全性およびアクセス元プロセス完全性との関係の一例を示す図である。なお、ファイルFが“データ固定ファイル”である場合、プログラムファイル等のデータが更新されないファイルであるので、ダイジェスト値が固定値であり、「ファイルデータ完全性V1」が判定できる。一方、ファイルFが“データ変動ファイル”である場合、ログファイル等のデータが更新されるファイルであるので、ダイジェスト値が固定値でなく、「ファイルデータ完全性V1」が判定できない。
(Relationship between control flags and file data integrity and access source process integrity)
FIG. 2 is a diagram illustrating an example of the relationship between the control flag, file data integrity, and access source process integrity. When the file F is a “data fixed file”, since the data such as a program file is not updated, the digest value is a fixed value, and “file data integrity V1” can be determined. On the other hand, when the file F is a “data fluctuation file”, since the data such as the log file is updated, the digest value is not a fixed value and “file data integrity V1” cannot be determined.

図2(a)に示すように、「制御フラグ」“記録モード”の場合であって、「ファイルデータ完全性V1」の判定結果がNGの場合、ファイルFの分類が“データ固定ファイル”であると、“依存プロセスの完全性にリスク”が存在することになる。“依存プロセスの完全性にリスク”が存在するとは、ファイルFの不完全性リスクが、依存プロセスへと伝播するおそれがあることをいう。   As shown in FIG. 2A, in the case of “control flag” “recording mode” and the determination result of “file data integrity V1” is NG, the classification of file F is “data fixed file”. If there is, there is a “risk in the integrity of dependent processes”. The existence of “risk in the integrity of the dependent process” means that the incompleteness risk of the file F may be propagated to the dependent process.

また、「制御フラグ」“記録モード”の場合であって、「アクセス元プロセス完全性V2」の判定結果がNGの場合、ファイルFの分類が“データ固定ファイル”であると、“ファイルFの完全性にリスク”が存在することになる。“ファイルFの完全性にリスク”が存在するとは、アクセス元プロセスの不完全性リスクが、ファイルFへと伝播するおそれがあることをいう。   Further, in the case of “control flag” “recording mode” and the determination result of “access source process integrity V2” is NG, if the classification of the file F is “data fixed file”, There is a “risk” in integrity. The presence of “risk in the integrity of file F” means that the incompleteness risk of the access source process may be propagated to file F.

また、図2(a)に示すように、「制御フラグ」“記録モード”の場合であって、ファイルFの分類が“データ変動ファイル”であると、ファイルデータの完全性V1は判定できないため、ファイルデータV1の完全性がNGのケースは存在しない。また、「制御フラグ」“記録モード”の場合であって、「アクセス元プロセス完全性V2」の判定結果がNGの場合、ファイルFの分類が“データ変動ファイル”であると、“ファイルFの完全性にリスク”が存在するとともに、“依存プロセスの完全性にリスク”が存在することになる。   Further, as shown in FIG. 2A, in the case of “control flag” “recording mode” and the file F classification is “data fluctuation file”, the completeness V1 of the file data cannot be determined. There is no case where the integrity of the file data V1 is NG. Further, in the case of “control flag” “recording mode” and the determination result of “access source process integrity V2” is NG, if the classification of the file F is “data fluctuation file”, “Risk in completeness” and “risk in dependent process integrity”.

なお、図2(a)において、「制御フラグ」“記録モード”の場合であって、“データ固定ファイル”であるファイルFに対する「アクセス元プロセス完全性V2」の判定結果がNGであっても、ファイルFに対する次回のアクセスを検知するまでは、ファイルFにアクセスするプロセスが存在しないため、ファイルFの“依存プロセスの完全性にリスク”は生じない。以降のファイルFに対するアクセス時に、ファイルFの「ファイルデータ完全性V1判定」の判定結果がNGと判定されれば、“依存プロセスの完全性にリスク”が生じる。また、図2(a)において、“データ変動ファイル”であるファイルFに対する「アクセス元プロセス完全性V2」の判定結果がNGであった場合、その時点でファイルFの“依存プロセスの完全性にリスク”が生じる。   In FIG. 2A, even when the “control flag” is “recording mode” and the determination result of “access source process integrity V2” for the file F which is “data fixed file” is NG. Until the next access to the file F is detected, there is no process for accessing the file F, and therefore there is no “risk in the integrity of dependent processes” of the file F. If the determination result of the “file data integrity V1 determination” of the file F is determined to be NG during subsequent access to the file F, “risk in dependency process integrity” occurs. Further, in FIG. 2A, when the determination result of “access source process integrity V2” for the file F which is a “data fluctuation file” is NG, the “dependence process integrity of the file F at that time is determined. "Risk" occurs.

また、図2(b)に示すように、「制御フラグ」“遮断モード”の場合であって、「ファイルデータ完全性V1」の判定結果がNGの場合は、ファイルFの分類が“データ固定ファイル”であると、“依存プロセスの完全性を保護”することになる。また、「制御フラグ」“遮断モード”の場合であって、「アクセス元プロセス完全性V2」の判定結果がNGの場合は、ファイルFの分類が“データ固定ファイル”であると、“ファイルFの完全性を保護”することになる。   Further, as shown in FIG. 2B, in the case of “control flag” “blocking mode” and the determination result of “file data integrity V1” is NG, the classification of file F is “data fixed”. If it is a "file", it "protects the integrity of dependent processes". In the case of “control flag” “blocking mode” and the determination result of “access source process integrity V2” is NG, if the classification of file F is “data fixed file”, “file F Protects the integrity of

また、図2(b)に示すように、「制御フラグ」“遮断モード”の場合であって、ファイルFの分類が“データ変動ファイル”であると、ファイルデータの完全性V1は判定できないため、ファイルデータV1の完全性がNGのケースは存在しない。また、「制御フラグ」“遮断モード”の場合であって、「アクセス元プロセス完全性V2」の確認結果がNGの場合は、ファイルFの分類が“データ変動ファイル”であると、“ファイルFの完全性を保護”するとともに、“依存プロセスの完全性を保護”することになる。   Further, as shown in FIG. 2B, when the control flag is “blocking mode” and the classification of the file F is “data fluctuation file”, the completeness V1 of the file data cannot be determined. There is no case where the integrity of the file data V1 is NG. In the case of “control flag” “blocking mode” and the confirmation result of “access source process integrity V2” is NG, if the classification of file F is “data fluctuation file”, “file F Protects the integrity of the dependent processes ”and“ protects the integrity of dependent processes ”.

(ファイルおよびプロセスの再帰的な完全性確認)
図3は、ファイルおよびプロセスの再帰的な完全性確認の一例を示す図である。図3の例示では、「監視対象ファイル」“ファイル6”に対して、「監視対象ファイルを依存対象とするプロセス」、「監視対象ファイルの許可プロセス」がある。「監視対象ファイルを依存対象とするプロセス」は、“プロセス(AP4)”“プロセス(AP5)”である。APは、Application(アプリケーション)の略である。また、「監視対象ファイルの許可プロセス」は、“プロセス(AP2)”“プロセス(AP3)”である。
(Recursive integrity check of files and processes)
FIG. 3 is a diagram illustrating an example of recursive integrity confirmation of files and processes. In the example of FIG. 3, for “monitoring target file” and “file 6”, there are “process that makes the monitoring target file a dependency target” and “monitoring target file permission process”. “Processes whose monitoring target file is a dependency target” are “process (AP4)” and “process (AP5)”. AP is an abbreviation for Application. The “monitored file permission process” is “process (AP2)” and “process (AP3)”.

また、「監視対象ファイルの許可プロセス」に対して、「監視対象ファイルの許可プロセスの依存対象ファイル」がある。「監視対象ファイルの許可プロセスの依存対象ファイル」は、“ファイル2”〜“ファイル5”がある。   In addition, there is a “dependency target file of the monitoring target file permission process” for the “monitoring target file permission process”. “Dependent files of the monitoring target file permission process” include “file 2” to “file 5”.

また、「監視対象ファイルの許可プロセスの依存対象ファイル」に対して、「監視対象ファイルの許可プロセスの依存対象ファイルの許可プロセス」がある。「監視対象ファイルの許可プロセスの依存対象ファイルの許可プロセス」は、“プロセス(AP1)”がある。   In addition, there is a “permission process of the dependency target file for the monitoring target file permission process” as opposed to the “dependency target file of the monitoring target file permission process”. “Process (AP1)” is the “permission process of the dependency target file of the monitoring target file permission process”.

また、「監視対象ファイルの許可プロセスの依存対象ファイルの許可プロセス」に対して「監視対象ファイルの許可プロセスの依存対象ファイルの許可プロセスの依存対象ファイル」がある。「監視対象ファイルの許可プロセスの依存対象ファイルの許可プロセスの依存対象ファイル」は、“ファイル1”である。   In addition, there is a “dependency target file for the dependency target file for the monitoring target file permission process” as opposed to a “permission process for the dependency target file for the monitoring target file permission process”. The “dependency target file of the permitted process of the permitted process file of the permitted process of the monitoring target file” is “file 1”.

“ファイル1”は、“プロセス(AP1)”が依存する、AP1の実行ファイル(AP1実行ファイル)である。なお、“ファイル1”は、ファイルアクセス時に、「ファイルデータ完全性V1」、「アクセス元プロセス完全性V2」、「アクセス完全性V3」の各判定が実行される。   “File 1” is an execution file (AP1 execution file) of AP1 on which “process (AP1)” depends. For “file 1”, each determination of “file data integrity V1”, “access source process integrity V2”, and “access integrity V3” is executed during file access.

“プロセス(AP1)”は、“ファイル1”が実行されることにより動作するプロセスである。すなわち、“プロセス(AP1)”は、“ファイル1”に依存関係にある。“プロセス(AP1)”は、実行時に、“ファイル3”および“ファイル4”にファイルアクセスする。   “Process (AP1)” is a process that operates when “file 1” is executed. That is, “process (AP1)” is dependent on “file 1”. The “process (AP1)” accesses the “file 3” and the “file 4” during execution.

“ファイル2”は、“プロセス(AP2)”の実行ファイルである。“ファイル3”は、“プロセス(AP2)”のライブラリファイルである。“ファイル4”は、“プロセス(AP2)”の入力データのファイルであるとともに、“プロセス(AP1)”の出力データのファイルである。すなわち、“プロセス(AP1)”の出力データは、“プロセス(AP2)”の入力データである。また、“ファイル5”は、“プロセス(AP3)”の実行ファイルである。これら“ファイル2”〜“ファイル3”、“ファイル5”は、“データ固定ファイル”であるため、ファイルアクセス時に、「ファイルデータ完全性V1」、「アクセス元プロセス完全性V2」、「アクセス完全性V3」の各判定が実行される。また、“ファイル4”は、“データ変動ファイル”であるため、ファイルアクセス時に、「ファイルデータ完全性V1」の判定は実行されず、「アクセス元プロセス完全性V2」、「アクセス完全性V3」の各判定が実行される。   “File 2” is an execution file of “Process (AP2)”. “File 3” is a library file of “Process (AP2)”. “File 4” is an input data file of “process (AP2)” and an output data file of “process (AP1)”. That is, the output data of “process (AP1)” is the input data of “process (AP2)”. “File 5” is an execution file of “process (AP3)”. Since these “file 2” to “file 3” and “file 5” are “data fixed files”, at the time of file access, “file data integrity V1”, “access source process integrity V2”, “access completeness”. Each determination of “characteristic V3” is executed. Further, since “file 4” is a “data variation file”, the determination of “file data integrity V1” is not executed at the time of file access, and “access source process integrity V2” and “access integrity V3” are performed. Each determination is performed.

“プロセス(AP2)”は、“ファイル2”および“ファイル3”が実行され、“ファイル4”を入力データのファイルとすることにより動作するプロセスである。すなわち、“プロセス(AP2)”は、“ファイル2”〜“ファイル4”に依存関係にある。“プロセス(AP2)”は、実行時に、“ファイル6”にファイルアクセスし、プロセス(AP1)の出力データを“ファイル6”へ出力する。また、プロセス(AP3)”は、“ファイル5”が実行されることにより動作するプロセスである。すなわち、“プロセス(AP3)”は、“ファイル5”に依存関係にある。“プロセス(AP3)”は、実行時に、“ファイル6”にファイルアクセスする。   “Process (AP2)” is a process that operates by executing “file 2” and “file 3” and setting “file 4” as a file of input data. That is, “process (AP2)” is dependent on “file 2” to “file 4”. At the time of execution, “process (AP2)” accesses file “file 6” and outputs the output data of process (AP1) to “file 6”. The process (AP3) ”is a process that operates when“ file 5 ”is executed, that is,“ process (AP3) ”is dependent on“ file 5 ”. "Accesses the file" file 6 "at the time of execution.

“ファイル6”は、“プロセス(AP1)”の出力データである。“ファイル6”は、“データ変動ファイル”であるため、ファイルアクセス時に、「ファイルデータ完全性V1」の判定は実行されず、「アクセス元プロセス完全性V2」、「アクセス完全性V3」の各判定が実行される。“プロセス(AP4)”および“プロセス(AP5)”は、“ファイル6”と依存関係にあるプロセスである。   “File 6” is output data of “process (AP1)”. Since “file 6” is a “data fluctuation file”, the determination of “file data integrity V1” is not executed at the time of file access, and each of “access source process integrity V2” and “access integrity V3” is determined. Judgment is performed. “Process (AP4)” and “Process (AP5)” are processes having a dependency relationship with “File 6”.

このように、“ファイル1”の「ファイルデータ完全性V1」の有無が、“プロセス(AP1)”→“ファイル3”および“ファイル4”と伝播するが、“ファイル1”が改ざんされた際、“遮断モード”の場合には、“ファイル3”および“ファイル4”、ならびに以降の“プロセスAP2”、“ファイル6”は、改ざんによる“ファイル1”の「ファイルデータ完全性V1」の喪失の影響から遮断される。一方、“ファイル1”の“記録モード”の場合には、“ファイル1”を起点に“プロセス(AP2)”まで、「ファイルデータ完全性V1」の喪失が連鎖して伝播することが記録される。この記録をもとに、“ファイル6”の「アクセス制御V4」を実行することができる。   Thus, the presence or absence of “file data integrity V1” of “file 1” propagates from “process (AP1)” to “file 3” and “file 4”, but when “file 1” is tampered with In the case of “blocking mode”, “file 3” and “file 4”, and subsequent “process AP2” and “file 6” lose “file data integrity V1” of “file 1” due to tampering. It is cut off from the influence of. On the other hand, in the “record mode” of “file 1”, it is recorded that the loss of “file data integrity V1” is propagated in a chain from “file 1” to “process (AP2)”. The Based on this record, “access control V4” of “file 6” can be executed.

(実施形態1のアクセス制御装置)
図4は、実施形態1のアクセス制御装置の構成の一例を示す図である。実施形態1のアクセス制御装置10は、ファイル管理システム20と接続される。ファイル管理システム20では、オペレーティングシステム上で、アクセス元プロセスP1が動作し、アクセス対象ファイルF1へアクセスする。
(Access Control Device of Embodiment 1)
FIG. 4 is a diagram illustrating an example of the configuration of the access control apparatus according to the first embodiment. The access control apparatus 10 according to the first embodiment is connected to a file management system 20. In the file management system 20, the access source process P1 operates on the operating system to access the access target file F1.

アクセス制御装置10は、記憶部11、制御部12、入出力部13、アクセス検知・制御部14、データ取得部15、ファイルデータ完全性判定部16、アクセス元プロセス完全性判定部17、不完全プロセスリスト管理部18、アクセス制御判定部19を有する。   The access control device 10 includes a storage unit 11, a control unit 12, an input / output unit 13, an access detection / control unit 14, a data acquisition unit 15, a file data integrity determination unit 16, an access source process integrity determination unit 17, an incomplete A process list management unit 18 and an access control determination unit 19 are included.

(記憶部が記憶する情報)
図5は、実施形態1のアクセス対象ファイルリストと、プロセスACLと、依存プロセスリストと、不完全プロセスリストの一例を示す図である。図6は、実施形態1における判定結果リストの一例を示す図である。記憶部11は、磁気記憶装置または半導体記憶装置等の記憶装置である。
(Information stored in the storage unit)
FIG. 5 is a diagram illustrating an example of an access target file list, a process ACL, a dependent process list, and an incomplete process list according to the first embodiment. FIG. 6 is a diagram illustrating an example of a determination result list according to the first embodiment. The storage unit 11 is a storage device such as a magnetic storage device or a semiconductor storage device.

図5に示すように、記憶部11は、初期設定されるデータとして、アクセス対象ファイルリストL1、アクセス対象ファイルリストL1の1レコードごとのリスト群L2、リスト群L2から生成される不完全プロセスリストL3を格納する。また、リスト群L2ぞれぞれは、ファイルパスL2−1、プロセスACL_L2−2、依存プロセスリストL2−3を含む。また、記憶部11は、判定結果リストL4を格納する。アクセス対象ファイルリストL1、リスト群L2、不完全プロセスリストL3、判定結果リストL4は、ファイル、DBMS(Data Base Management System)、あるいはプログラムのメモリ領域などに記録され、参照および更新される。   As shown in FIG. 5, the storage unit 11 stores, as data to be initialized, an access target file list L1, a list group L2 for each record of the access target file list L1, and an incomplete process list generated from the list group L2. L3 is stored. Each list group L2 includes a file path L2-1, a process ACL_L2-2, and a dependent process list L2-3. The storage unit 11 stores a determination result list L4. The access target file list L1, the list group L2, the incomplete process list L3, and the determination result list L4 are recorded in a file, a DBMS (Data Base Management System), or a memory area of a program, and are referred to and updated.

アクセス対象ファイルリストL1は、「ファイルパス」「参照ダイジェスト値」「アクセス元プロセス完全性判定フラグ」「制御フラグ」の項目を有する。「ファイルパス」は、ファイル管理システム20におけるアクセス元プロセスP1のアクセス対象ファイルF1のファイルパスである。   The access target file list L1 includes items of “file path”, “reference digest value”, “access source process integrity determination flag”, and “control flag”. “File path” is the file path of the access target file F1 of the access source process P1 in the file management system 20.

「参照ダイジェスト値」は、アクセス対象ファイルF1の「ファイルデータ完全性V1」を判定するためのアクセス対象ファイルF1の参照ダイジェスト値であり、アクセス対象ファイルF1のファイルデータをSHA-256等のhash関数で変換した値である。なお、アクセス対象ファイルF1が、ログファイル等のデータが変更または更新されるファイルである場合には、「参照ダイジェスト値」は定義されない。   The “reference digest value” is a reference digest value of the access target file F1 for determining “file data integrity V1” of the access target file F1, and the file function of the access target file F1 is a hash function such as SHA-256. It is the value converted by. When the access target file F1 is a file in which data such as a log file is changed or updated, the “reference digest value” is not defined.

「アクセス元プロセス完全性判定フラグ」は、ファイル管理システム20におけるアクセス対象ファイルF1の「アクセス元プロセス完全性V2」を判定する場合は“YES”、判定しない場合は“NO”がセットされる。なお、アクセス対象ファイルF1が、「参照ダイジェスト値」が定義されないログファイル等のデータが変更または更新されるファイルである場合には、「アクセス元プロセス完全性判定フラグ」“YES”がセットされることが必須である。   The “access source process integrity determination flag” is set to “YES” when determining “access source process integrity V2” of the access target file F1 in the file management system 20, and “NO” when not determining. If the access target file F1 is a file in which data such as a log file for which the “reference digest value” is not defined is changed or updated, “access source process integrity determination flag” “YES” is set. It is essential.

「制御フラグ」“遮断モード”は、「ファイルデータ完全性V1」および「アクセス元プロセス完全性V2」のいずれかの判定結果がNGであれば、アクセス対象ファイルF1に対するファイルアクセスを遮断する制御を行う動作モードである。また、「制御フラグ」“記録モード”は、「ファイルデータ完全性V1」および「アクセス元プロセス完全性V2」のいずれかの判定結果がNGであっても、アクセス対象ファイルF1に対するファイルアクセスを遮断せずに許可し、「ファイルデータ完全性V1」および「アクセス元プロセス完全性V2」の判定結果を記録する制御を行う動作モードである。   “Control flag” “blocking mode” is a control for blocking file access to the access target file F1 if the determination result of either “file data integrity V1” or “access source process integrity V2” is NG. This is the operation mode to be performed. The “control flag” and “recording mode” block the file access to the access target file F1 even if the determination result of either “file data integrity V1” or “access source process integrity V2” is NG. This is an operation mode in which control is performed without permission and recording determination results of “file data integrity V1” and “access source process integrity V2”.

例えば、アクセス対象ファイルリストL1において、「ファイルパス」“d1/d2/f1”のアクセス対象ファイルF1は、「参照ダイジェスト値」が“f1のhash値”であり、「アクセス元プロセス完全性判定フラグ」が“YES”であり、「制御フラグ」が“遮断モード”である。   For example, in the access target file list L1, the access target file F1 having the “file path” “d1 / d2 / f1” has the “reference digest value” as “h1 hash value” and the “access source process integrity determination flag” "Is" YES ", and" control flag "is" blocking mode ".

なお、アクセス対象ファイルリストL1における「アクセス対象ファイルF1」は、ファイル管理システム20上の全てのファイルではなく、ファイル管理システム20上のファイルのうちの、保護対象であるアクセス先ファイルおよびこれらに対するアクセス元プロセスの依存対象ファイルである。   The “access target file F1” in the access target file list L1 is not all the files on the file management system 20, but is the access destination file that is the protection target among the files on the file management system 20, and the access to these files. This is the dependency target file of the original process.

そして、アクセス対象ファイルリストL1の「ファイルパス」“d1/d2/f1”のレコードに対応するリスト群L2は、“d1/d2/f1”を格納するファイルパスL2−1、プロセスACL_L2−2、依存プロセスリストL2−3を含む。プロセスACL_L2−2は、アクセス対象ファイルF1ごとのリストであり、「ファイルパス」“d1/d2/f1”のアクセス対象ファイルF1に対してアクセスを許可するアクセス元プロセスP1の実行ファイルが格納されるファイルパスのリストである。また、依存プロセスリストL2−3は、アクセス対象ファイルF1ごとのリストであり、アクセス対象ファイルF1に対して動作の正当性を依存する依存プロセスの実行ファイルが格納されるファイルパスのリストである。   The list group L2 corresponding to the record of “file path” “d1 / d2 / f1” in the access target file list L1 includes a file path L2-1 storing “d1 / d2 / f1”, a process ACL_L2-2, A dependency process list L2-3 is included. The process ACL_L2-2 is a list for each access target file F1, and stores an execution file of the access source process P1 that permits access to the access target file F1 of the “file path” “d1 / d2 / f1”. A list of file paths. The dependency process list L2-3 is a list for each access target file F1, and is a list of file paths in which execution files of the dependency processes that depend on the legitimacy of the operation for the access target file F1 are stored.

例えば、プロセスACL_L2−2において、「ファイルパス」“d1/d2/f1”のアクセス対象ファイルF1へのファイルアクセスが許可されている「許可プロセスの実行ファイルパス」は、“d1/d2/f1”“d1/d4/f5”“d1/d5/f7”・・・である。また、依存プロセスリストL2−3において、「ファイルパス」“d1/d2/f1”のアクセス対象ファイルF1に対して動作の正当性を依存する「依存プロセスの実行ファイルパス」は、“d1/d2/f1”“d1/d4/f5”・・・である。   For example, in the process ACL_L2-2, the “executable file path of the permitted process” for which the file access to the access target file F1 of the “file path” “d1 / d2 / f1” is permitted is “d1 / d2 / f1”. “D1 / d4 / f5”, “d1 / d5 / f7”, and so on. In the dependency process list L2-3, the “execution file path of the dependency process” that depends on the correctness of the operation with respect to the access target file F1 of the “file path” “d1 / d2 / f1” is “d1 / d2”. / f1 ”“ d1 / d4 / f5 ”...

不完全プロセスリストL3は、全てのリスト群L2で共有されるリストとして、不完全プロセスリスト管理部18により生成され、更新される。不完全プロセスリストL3は、依存プロセスリストL2−3にファイルパスが登録されている依存プロセスのうち、依存プロセスの完全性を損なっているリスクがあるプロセスの実行ファイルパスを記録するリストである。“依存プロセスの完全性を損なっている”とは、依存プロセスが依存する依存対象ファイルの「ファイルデータ完全性V1」が損なわれていることをいう。不完全プロセスリストL3は、「アクセス元プロセス完全性V2」の判定の際に、プロセスACL_L2−2とともに参照される。   The incomplete process list L3 is generated and updated by the incomplete process list management unit 18 as a list shared by all the list groups L2. The incomplete process list L3 is a list that records an execution file path of a process that has a risk of impairing the integrity of the dependent process among the dependent processes whose file paths are registered in the dependent process list L2-3. “The integrity of the dependent process is impaired” means that “file data integrity V1” of the dependency target file on which the dependent process depends is impaired. The incomplete process list L3 is referred to together with the process ACL_L2-2 when determining “access source process integrity V2”.

すなわち、アクセス対象ファイルF1にアクセスするアクセス元プロセスP1の実行ファイルのファイルパスが、プロセスACL_L2−2に登録されており、不完全プロセスリストL3に登録されていない場合に、「アクセス元プロセス完全性V2」の判定結果がOKと判定される。一方、アクセス対象ファイルF1にアクセスするアクセス元プロセスP1の実行ファイルのファイルパスが、プロセスACL_L2−2に登録されていない、または、不完全プロセスリストL3に登録されている場合に、「アクセス元プロセス完全性V2」の判定結果がNGと判定される。   That is, when the file path of the execution file of the access source process P1 that accesses the access target file F1 is registered in the process ACL_L2-2 and not registered in the incomplete process list L3, “access source process completeness” The determination result of “V2” is determined to be OK. On the other hand, if the file path of the execution file of the access source process P1 that accesses the access target file F1 is not registered in the process ACL_L2-2 or registered in the incomplete process list L3, “access source process” The determination result of “completeness V2” is determined to be NG.

また、不完全プロセスリストL3は、アクセス対象ファイルF1の「ファイルデータ完全性V1」の判定結果がNGであり、かつ、アクセス対象ファイルF1の「制御フラグ」“記録モード”である場合に、依存プロセスリストL2−3に登録されている依存プロセスの実行ファイルパスが追加される。   The incomplete process list L3 depends on the determination result of “file data integrity V1” of the access target file F1 being NG and the “control flag” “recording mode” of the access target file F1. The execution file path of the dependent process registered in the process list L2-3 is added.

判定結果リストL4は、一時停止中のファイルアクセスに対する、判定結果の記録の一時保管データを記録するために自動生成され、更新される。判定結果リストL4には、アクセス対象ファイルF1の「ファイルデータ完全性V1」の判定結果、「アクセス元プロセス完全性V2」の判定結果が記録される。そして、判定結果リストL4には、「ファイルデータ完全性V1」および「アクセス元プロセス完全性V2」の判定結果がともにNGでない場合、「アクセス完全性V3」の判定結果OKが記録され、「ファイルデータ完全性V1」および「アクセス元プロセス完全性V2」の少なくともいずれかの判定結果がNGである場合、「アクセス完全性V3」の判定結果NGが記録される。   The determination result list L4 is automatically generated and updated in order to record temporary storage data of determination result records for the suspended file access. In the determination result list L4, the determination result of “file data integrity V1” and the determination result of “access source process integrity V2” of the access target file F1 are recorded. If the determination results of “file data integrity V1” and “access source process integrity V2” are not NG, the determination result OK of “access integrity V3” is recorded in the determination result list L4, and “file When the determination result of at least one of “data integrity V1” and “access source process integrity V2” is NG, the determination result NG of “access integrity V3” is recorded.

また、判定結果リストL4には、「アクセス完全性V3」の判定結果がOK、または、「制御フラグ」が“記録モード”のとき、「アクセス制御V4」“許可”の判定結果が記録される。一方、判定結果リストL4には、「アクセス完全性V3」の判定結果がNG、かつ、「制御フラグ」が“遮断モード”のとき、「アクセス制御V4」“遮断”の判定結果が記録される。   The determination result list L4 records the determination result of “access control V4” and “permitted” when the determination result of “access integrity V3” is OK or the “control flag” is “recording mode”. . On the other hand, in the determination result list L4, when the determination result of “access integrity V3” is NG and the “control flag” is “blocking mode”, the determination result of “access control V4” and “blocking” is recorded. .

図4の説明に戻る。制御部12は、CPU(Central Processing Unit)等の処理装置であり、アクセス制御装置10の全体制御を行う。制御部12は、記憶部11、入出力部13、アクセス検知・制御部14、データ取得部15、ファイルデータ完全性判定部16、アクセス元プロセス完全性判定部17、不完全プロセスリスト管理部18、アクセス制御判定部19を制御する。   Returning to the description of FIG. The control unit 12 is a processing device such as a CPU (Central Processing Unit) and performs overall control of the access control device 10. The control unit 12 includes a storage unit 11, an input / output unit 13, an access detection / control unit 14, a data acquisition unit 15, a file data integrity determination unit 16, an access source process integrity determination unit 17, and an incomplete process list management unit 18. The access control determination unit 19 is controlled.

入出力部13は、アクセス対象ファイルリストL1、アクセス対象ファイルリストL1に登録されている全ての「ファイルパス」に対応するファイルパスL2−1、プロセスACL_L2−2、依存プロセスリストL2−3を含むリスト群L2を登録するためのインターフェースを提供する。具体的には、入出力部13は、入力に関しては、アクセス対象ファイルリストL1、ファイルパスL2−1、プロセスACL_L2−2、依存プロセスリストL2−3を含むリスト群L2のデータを記載した入力データを、オペレータが入力するためのユーザインターフェースにより実現される。入出力部13は、出力に関しては、出力データをログファイルとして出力、あるいは、出力データを表示するユーザインターフェースにより実現される。   The input / output unit 13 includes an access target file list L1, a file path L2-1 corresponding to all “file paths” registered in the access target file list L1, a process ACL_L2-2, and a dependent process list L2-3. An interface for registering the list group L2 is provided. Specifically, the input / output unit 13 inputs data that describes data of the list group L2 including the access target file list L1, the file path L2-1, the process ACL_L2-2, and the dependent process list L2-3. Is realized by a user interface for an operator to input. The input / output unit 13 is realized by a user interface that outputs output data as a log file or displays output data.

アクセス検知・制御部14は、ファイル管理システム20上で、例えば、アクセス元プロセスP1がアクセス対象ファイルF1をopenし、かつ、アクセス対象ファイルF1のファイルデータへのアクセスが未実施の状態を検知し、当該ファイルアクセスを一時停止させる。そして、アクセス検知・制御部14は、アクセス元プロセスIDおよびアクセス対象ファイルパスを制御部12へ送信する。   On the file management system 20, the access detection / control unit 14 detects, for example, a state in which the access source process P1 opens the access target file F1 and the access to the file data of the access target file F1 is not performed. Suspend the file access. Then, the access detection / control unit 14 transmits the access source process ID and the access target file path to the control unit 12.

そして、アクセス検知・制御部14は、「アクセス制御V4」が“許可”のとき、ファイルアクセス検知で一時停止していたファイルアクセスを許可して一時停止を解除する。また、アクセス検知・制御部14は、「アクセス制御V4」が“遮断”のとき、ファイルアクセス検知で一時停止していたファイルアクセスを遮断する。アクセス検知・制御部14は、例えば、Linux(登録商標、以下同様)のAPI(Application Programming Interface)であるfanotifyを用いて、Linuxファイルシステム上のファイルアクセスについてアクセス検知および制御を実施することができる。また、別の例としては、オペレーティングシステムがプログラムを実行するために、プログラムファイルにアクセスする契機を検知し、制御することができる。   Then, when the “access control V4” is “permitted”, the access detection / control unit 14 permits the file access that has been suspended by the file access detection and releases the suspension. In addition, when the “access control V4” is “blocked”, the access detection / control unit 14 blocks the file access that has been temporarily stopped by the file access detection. The access detection / control unit 14 can perform access detection and control for file access on the Linux file system using, for example, fanotify which is an API (Application Programming Interface) of Linux (registered trademark, the same applies hereinafter). . As another example, in order for the operating system to execute a program, an opportunity to access a program file can be detected and controlled.

データ取得部15は、アクセス元プロセスIDを制御部12から受信し、アクセス元プロセスP1の実行ファイルパスを制御部12へ入力する。そして、データ取得部15は、アクセス対象ファイルF1のファイルデータを取得し、制御部12へ入力する。データ取得部15の機能は、オペレーティングシステムの機能を利用することで実現できる。   The data acquisition unit 15 receives the access source process ID from the control unit 12, and inputs the execution file path of the access source process P1 to the control unit 12. Then, the data acquisition unit 15 acquires the file data of the access target file F1 and inputs it to the control unit 12. The function of the data acquisition unit 15 can be realized by using the function of the operating system.

ファイルデータ完全性判定部16は、記憶部11のアクセス対象ファイルリストL1において、アクセス対象ファイルF1のファイルパスに対応する参照ダイジェスト値が定義されている場合、すなわちアクセス対象ファイルF1が“データ固定ファイル”である場合、アクセス対象ファイルF1のファイルデータのダイジェスト値を算出し、算出したダイジェスト値と参照ダイジェスト値を比較する。そして、ファイルデータ完全性判定部16は、比較結果が一致する場合には「ファイルデータ完全性V1」の判定結果をOKと判定し、一致しない場合には「ファイルデータ完全性V1」の判定結果をNGと判定する。なお、ファイルデータ完全性判定部16は、アクセス対象ファイルF1が“データ変動ファイル”である場合、アクセス対象ファイルF1のファイルパスに対応する参照ダイジェスト値が定義されておらず、「ファイルデータ完全性V1」の判定を行わないので、判定結果は存在せず、判定結果を“NA”とする。   When the reference digest value corresponding to the file path of the access target file F1 is defined in the access target file list L1 of the storage unit 11, the file data integrity determination unit 16 determines that the access target file F1 is “data fixed file”. If "," the digest value of the file data of the access target file F1 is calculated, and the calculated digest value is compared with the reference digest value. The file data integrity determination unit 16 determines that the determination result of “file data integrity V1” is OK when the comparison results match, and determines the determination result of “file data integrity V1” when they do not match. Is determined to be NG. Note that when the access target file F1 is a “data variation file”, the file data integrity determination unit 16 does not define a reference digest value corresponding to the file path of the access target file F1, and “file data integrity Since the determination of “V1” is not performed, there is no determination result, and the determination result is “NA”.

アクセス元プロセス完全性判定部17は、「アクセス対象ファイルF1のプロセスACL_L2−2に、アクセス元プロセスP1の実行ファイルパスの記載があり、かつ、不完全プロセスリストL3にアクセス元プロセスP1の実行ファイルパスの記載がないこと」の真偽を判定する。アクセス元プロセス完全性判定部17は、「アクセス対象ファイルF1のプロセスACL_L2−2に、アクセス元プロセスP1の実行ファイルパスの記載があり、かつ、不完全プロセスリストL3にアクセス元プロセスP1の実行ファイルパスの記載がないこと」が真であれば、「アクセス元プロセス完全性V2」の判定結果をOKと判定する。   The access source process integrity determination unit 17 states that “the process ACL_L2-2 of the access target file F1 includes the execution file path of the access source process P1, and the incomplete process list L3 includes the execution file of the access source process P1. Judgment of authenticity of “no pass description”. The access source process integrity determination unit 17 states that “the process ACL_L2-2 of the access target file F1 includes the execution file path of the access source process P1, and the incomplete process list L3 includes the execution file of the access source process P1. If “no path description” is true, the determination result of “access source process integrity V2” is OK.

一方、アクセス元プロセス完全性判定部17は、「アクセス対象ファイルF1のプロセスACL_L2−2に、アクセス元プロセスP1の実行ファイルパスの記載があり、かつ、不完全プロセスリストL3にアクセス元プロセスP1の実行ファイルパスの記載がないこと」が偽であれば、「アクセス元プロセス完全性V2」の判定結果をNGと判定する。   On the other hand, the access source process integrity determination unit 17 states that “the process ACL_L2-2 of the access target file F1 includes the execution file path of the access source process P1, and the incomplete process list L3 includes the access source process P1. If “execution file path is not described” is false, the determination result of “access source process integrity V2” is determined to be NG.

不完全プロセスリスト管理部18は、「アクセス対象ファイルF1の「ファイルデータ完全性V1」が判定結果NGであり、かつ、アクセス対象ファイルF1の「制御フラグ」が“記録モード”である」とき、アクセス対象ファイルF1の依存プロセスリストL2−3に記載されている実行ファイルパスを、不完全プロセスリストL3に追加する。   When the “file data integrity V1” of the access target file F1 is the determination result NG and the “control flag” of the access target file F1 is “recording mode”, the incomplete process list management unit 18 The execution file path described in the dependent process list L2-3 of the access target file F1 is added to the incomplete process list L3.

アクセス制御判定部19は、ファイルデータ完全性判定部16による「ファイルデータ完全性V1」の判定結果、および、アクセス元プロセス完全性判定部17による「アクセス元プロセス完全性V2」の判定結果がともにNGでない場合、「アクセス完全性V3」の判定結果をOKと判定する。また、アクセス制御判定部19は、ファイルデータ完全性判定部16による「ファイルデータ完全性V1」の判定結果、および、アクセス元プロセス完全性判定部17による「アクセス元プロセス完全性V2」の判定結果のいずれかがNGのとき、「アクセス完全性V3」の判定結果をNGと判定する。   The access control determination unit 19 includes both the determination result of “file data integrity V1” by the file data integrity determination unit 16 and the determination result of “access source process integrity V2” by the access source process integrity determination unit 17. If it is not NG, the determination result of “access integrity V3” is determined to be OK. The access control determination unit 19 also determines the result of “file data integrity V1” by the file data integrity determination unit 16 and the result of determination of “access source process integrity V2” by the access source process integrity determination unit 17. When any of the above is NG, the determination result of “access integrity V3” is determined to be NG.

そして、アクセス制御判定部19は、「アクセス完全性V3」の判定結果がOK、または、「制御フラグ」が“記録モード”のとき、「アクセス制御V4」は“許可”と判定する。また、アクセス制御判定部19は、「アクセス完全性V3」の判定結果NG、かつ、「制御フラグ」が“遮断モード”のとき、「アクセス制御V4」は“遮断”と判定する。   Then, the access control determination unit 19 determines that “access control V4” is “permitted” when the determination result of “access integrity V3” is OK or the “control flag” is “recording mode”. The access control determination unit 19 determines that “access control V4” is “blocking” when the determination result NG of “access integrity V3” is “NG” and the “control flag” is “blocking mode”.

(実施形態1の初期設定処理)
図7は、実施形態1の初期設定処理の一例を示すフローチャートである。実施形態1の初期設定処理は、オペレータの操作時に、アクセス制御装置10の制御部12により実行される。ステップS11では、制御部12は、入出力部13を介して、オペレータによる指示に応じて、アクセス対象ファイルリストL1、アクセス対象ファイルリストL1に記載されている全ての「ファイルパス」に対応するファイルパスL2−1、プロセスACL_L2−2、依存プロセスリストL2−3を含むリスト群L2の初期設定の登録を受け付け、記憶部11に格納する。制御部12は、ステップS11が終了すると、実施形態1の初期設定処理を終了する。
(Initial setting process of Embodiment 1)
FIG. 7 is a flowchart illustrating an example of the initial setting process according to the first embodiment. The initial setting process of the first embodiment is executed by the control unit 12 of the access control apparatus 10 when operated by the operator. In step S11, the control unit 12 receives files corresponding to all “file paths” described in the access target file list L1 and the access target file list L1 via the input / output unit 13 in accordance with an instruction from the operator. The initial setting registration of the list group L2 including the path L2-1, the process ACL_L2-2, and the dependent process list L2-3 is accepted and stored in the storage unit 11. When step S11 ends, the control unit 12 ends the initial setting process of the first embodiment.

(実施形態1のファイルアクセス制御処理)
図8は、実施形態1のファイルアクセス制御処理の一例を示すフローチャートである。実施形態1の初期設定処理は、アクセス制御装置10により、随時実行される。先ず、ステップS21では、アクセス検知・制御部14は、ファイル管理システム20上で、アクセス元プロセスP1がアクセス対象ファイルF1をopenし、かつ、アクセス対象ファイルF1のファイルデータへのアクセス未実施の状態を検知し、アクセスを一時的に停止する。そして、アクセス検知・制御部14は、アクセス元プロセスIDと、アクセス対象ファイルパスを制御部12へ送信する(以上、ステップS21)。
(File access control processing of Embodiment 1)
FIG. 8 is a flowchart illustrating an example of the file access control process according to the first embodiment. The initial setting process of the first embodiment is executed by the access control device 10 as needed. First, in step S21, the access detection / control unit 14 is in a state in which the access source process P1 opens the access target file F1 and the access to the file data of the access target file F1 is not performed on the file management system 20. Is detected and access is temporarily stopped. Then, the access detection / control unit 14 transmits the access source process ID and the access target file path to the control unit 12 (step S21).

次に、ステップS22では、データ取得部15は、アクセス元プロセスIDを制御部12から受信し、アクセス元プロセスP1の実行ファイルパスを制御部12へ入力するとともに、アクセス対象ファイルF1のファイルパスのファイルデータを取得し、制御部12へ入力する。   Next, in step S22, the data acquisition unit 15 receives the access source process ID from the control unit 12, inputs the execution file path of the access source process P1 to the control unit 12, and sets the file path of the access target file F1. File data is acquired and input to the control unit 12.

次に、ステップS23では、ファイルデータ完全性判定部16は、記憶部11のアクセス対象ファイルリストL1にアクセス対象ファイルパスに対応する参照ダイジェスト値が定義されている場合、すなわち“データ固定ファイル”である場合には、アクセス対象ファイルF1のファイルデータのダイジェスト値を算出し、算出したダイジェスト値と参照ダイジェスト値とを比較する。そして、ファイルデータ完全性判定部16は、算出したダイジェスト値と参照ダイジェスト値とが一致するならば、アクセス対象ファイルF1の「ファイルデータ完全性V1」の判定結果をOKと判定し、一致しないならば、アクセス対象ファイルF1の「ファイルデータ完全性V1」の判定結果をNGと判定する。なお、ステップS23では、ファイルデータ完全性判定部16は、アクセス対象ファイルF1が“データ変動ファイル”である場合、アクセス対象ファイルF1のファイルパスに対応する参照ダイジェスト値が定義されておらず、「ファイルデータ完全性V1」の判定を行わないので、判定結果は存在せず、判定結果を“NA”とする(以上、ステップS23)。   Next, in step S23, the file data integrity determination unit 16 determines that the reference digest value corresponding to the access target file path is defined in the access target file list L1 of the storage unit 11, that is, “data fixed file”. If there is, the digest value of the file data of the access target file F1 is calculated, and the calculated digest value is compared with the reference digest value. Then, the file data integrity determination unit 16 determines that the determination result of “file data integrity V1” of the access target file F1 is OK if the calculated digest value and the reference digest value match, and if they do not match. For example, the determination result of “file data integrity V1” of the access target file F1 is determined to be NG. In step S23, when the access target file F1 is the “data variation file”, the file data integrity determination unit 16 does not define a reference digest value corresponding to the file path of the access target file F1, and “ Since the determination of “file data integrity V1” is not performed, there is no determination result, and the determination result is “NA” (step S23).

次に、ステップS24では、アクセス元プロセス完全性判定部17は、「アクセス対象ファイルF1のプロセスACL_L2−2に、アクセス元プロセスP1の実行ファイルパスの記載があり、かつ、不完全プロセスリストL3にアクセス元プロセスP1の実行ファイルパスの記載がないこと」の真偽を判定する。アクセス元プロセス完全性判定部17は、「アクセス対象ファイルF1のプロセスACL_L2−2に、アクセス元プロセスP1の実行ファイルパスの記載があり、かつ、不完全プロセスリストL3にアクセス元プロセスP1の実行ファイルパスの記載がないこと」が真であれば、「アクセス元プロセス完全性V2」の判定結果をOKと判定する。一方、アクセス元プロセス完全性判定部17は、「アクセス対象ファイルF1のプロセスACL_L2−2に、アクセス元プロセスP1の実行ファイルパスの記載があり、かつ、不完全プロセスリストL3にアクセス元プロセスP1の実行ファイルパスの記載がないこと」が偽であれば、「アクセス元プロセス完全性V2」の判定結果をNGと判定する(以上、ステップS24)。   Next, in step S24, the access source process integrity determination unit 17 states that “the process ACL_L2-2 of the access target file F1 has a description of the execution file path of the access source process P1 and the incomplete process list L3. Whether the execution file path of the access source process P1 is not described "is determined. The access source process integrity determination unit 17 states that “the process ACL_L2-2 of the access target file F1 includes the execution file path of the access source process P1, and the incomplete process list L3 includes the execution file of the access source process P1. If “no path description” is true, the determination result of “access source process integrity V2” is OK. On the other hand, the access source process integrity determination unit 17 states that “the process ACL_L2-2 of the access target file F1 includes the execution file path of the access source process P1, and the incomplete process list L3 includes the access source process P1. If “no execution file path is described” is false, the determination result of “access source process integrity V2” is NG (step S24).

次に、ステップS25では、不完全プロセスリスト管理部18は、「アクセス対象ファイルF1の「ファイルデータ完全性V1」の判定結果NGであり、かつ、アクセス対象ファイルF1の「制御フラグ」が“記録モード”である」とき、アクセス対象ファイルF1の依存プロセスリストL2−3に記載されている依存プロセスの実行ファイルパスを、不完全プロセスリストL3に追加する。   Next, in step S25, the incomplete process list management unit 18 determines that “the determination result NG of“ file data integrity V1 ”of the access target file F1 is NG” and the “control flag” of the access target file F1 is “recorded” When it is “mode”, the execution file path of the dependent process described in the dependent process list L2-3 of the access target file F1 is added to the incomplete process list L3.

次に、ステップS26では、アクセス制御判定部19は、ステップS23による「ファイルデータ完全性V1」およびステップS24による「アクセス元プロセス完全性V2」がともに判定結果がNGでないとき、「アクセス完全性V3」の判定結果をOKと判定する。また、アクセス制御判定部19は、ステップS23による「ファイルデータ完全性V1」およびステップS24による「アクセス元プロセス完全性V2」のいずれかの判定結果がNGのとき、「アクセス完全性V3」の判定結果をNGと判定する。そして、アクセス制御判定部19は、「アクセス完全性V3」が判定結果がOK、または、「制御フラグ」が“記録モード”のとき、「アクセス制御V4」を“許可”と判定する。また、アクセス制御判定部19は、「アクセス完全性V3」が判定結果NG、かつ、「制御フラグ」が“遮断モード”のとき、「アクセス制御V4」を“遮断”と判定する(以上、ステップS26)。   Next, in step S26, the access control determination unit 19 determines that “access integrity V3” when both “file data integrity V1” in step S23 and “access source process integrity V2” in step S24 are not NG. Is determined to be OK. The access control determination unit 19 determines “access integrity V3” when the determination result of “file data integrity V1” in step S23 and “access source process integrity V2” in step S24 is NG. The result is determined as NG. Then, the access control determination unit 19 determines that “access control V4” is “permitted” when “access integrity V3” is “OK” or “control flag” is “recording mode”. Further, the access control determination unit 19 determines that “access control V4” is “blocking” when “access integrity V3” is the determination result NG and “control flag” is “blocking mode” (steps above). S26).

次に、ステップS27では、アクセス検知・制御部14は、「アクセス制御V4」が“許可”のとき、ステップS21のファイルアクセス検知で一時停止していたファイルアクセスを許可する。また、アクセス検知・制御部14は、「アクセス制御V4」が“遮断”のとき、ステップS21のファイルアクセス検知で一時停止していたファイルアクセスを遮断する(以上、ステップS27)。ステップS27が終了すると、アクセス制御装置10は、実施形態1のファイルアクセス制御処理を終了する。   Next, in step S27, when the “access control V4” is “permitted”, the access detection / control unit 14 permits the file access that has been temporarily stopped by the file access detection in step S21. Further, when the “access control V4” is “blocked”, the access detection / control unit 14 blocks the file access that has been temporarily stopped by the file access detection in step S21 (step S27). When step S27 ends, the access control apparatus 10 ends the file access control process of the first embodiment.

以上の実施形態1によれば、ファイルシステム上のファイルに対するプログラムプロセスからのアクセスが適正であるか否かを判定する。そして、完全性を欠いたファイルに対するアクセス、アクセスを許可されていないプログラムプロセスからファイルへのアクセス、および、完全性を欠いたファイルに依存するプログラムプロセスからファイルへのアクセスは不適正と判定し、アクセスを遮断するか、または、不適正なアクセスが実行された記録を残す。   According to the first embodiment described above, it is determined whether or not the access from the program process to the file on the file system is appropriate. It is determined that access to a file that lacks integrity, access to a file from a program process that is not permitted to access, and access to a file from a program process that depends on a file that lacks integrity, is inappropriate. Block access or leave a record of improper access.

例えば、ファイルアクセスにおいて、アクセス元プロセスの完全性を判定することで、アクセス元プロセスがマルウェア等の不適切なプロセスである場合に、アクセス元プロセスによるファイルアクセスを遮断し、アクセス先ファイルの完全性が失われることを防止できる。さらに、アクセス先ファイルごとに記録モードか遮断モードかを定義し、不完全プロセスリストを用いることにより、アクセス元プロセスが不完全なプロセスであっても、アクセス元プロセスによるファイルアクセスを許可しつつ、記録モードにてファイルアクセスのログを記録する。よって、ファイル→プロセス→ファイルと伝播する完全性喪失の連鎖の記録をたどって、柔軟なファイルのアクセス制御ができる。   For example, in file access, by determining the integrity of the access source process, if the access source process is an inappropriate process such as malware, the file access by the access source process is blocked, and the access destination file is complete Can be prevented from being lost. Furthermore, by defining whether the access mode is the recording mode or the blocking mode for each access destination file and using the incomplete process list, even if the access source process is an incomplete process, the access source process is allowed to access the file. Record file access log in recording mode. Therefore, it is possible to perform flexible file access control by following a record of a chain of integrity loss propagating from file → process → file.

(実施形態1の変形例)
実施形態1の変形例では、不完全プロセスリストL3に代えて、依存プロセスリストL2−3にファイルパスが登録されている依存プロセスのうち、依存プロセスの完全性を喪失していない完全プロセスのリストを用いてもよい。または、不完全プロセスリストL3に代えて、依存プロセスリストL2−3にファイルパスが登録されている依存プロセスの全プロセスに完全および不完全のいずれかを示す情報を対応付けて記録したリストを用いてもよい。
(Modification of Embodiment 1)
In the modification of the first embodiment, instead of the incomplete process list L3, among the dependent processes whose file paths are registered in the dependent process list L2-3, a list of complete processes that have not lost the integrity of the dependent processes May be used. Alternatively, instead of the incomplete process list L3, a list in which information indicating either complete or incomplete is associated with all the processes of the dependent processes whose file paths are registered in the dependent process list L2-3 is used. May be.

[実施形態2]
実施形態1では、アクセス制御装置10は、記憶部11に、アクセス対象ファイルリストL1、ファイルパスL2−1、プロセスACL_L2−2、依存プロセスリストL2−3を含むリスト群L2、リスト群L2から生成される不完全プロセスリストL3を格納する。しかし、アクセス対象ファイルリストL1から「制御フラグ」を除外し、リスト群L2から依存プロセスリストL2−3および不完全プロセスリストL3を省略した形態で実施されてもよい。以下、この実施形態2について説明する。
[Embodiment 2]
In the first embodiment, the access control device 10 generates, in the storage unit 11, a list group L2 including an access target file list L1, a file path L2-1, a process ACL_L2-2, a dependent process list L2-3, and a list group L2. Stored incomplete process list L3. However, it may be implemented in a form in which the “control flag” is excluded from the access target file list L1, and the dependent process list L2-3 and the incomplete process list L3 are omitted from the list group L2. Hereinafter, the second embodiment will be described.

(実施形態2のファイルアクセス制御装置および記憶部が記憶する情報)
図9は、実施形態2のアクセス制御装置の構成の一例を示す図である。図10は、実施形態2のアクセス対象ファイルリストと、プロセスACLの一例を示す図である。実施形態2のアクセス制御装置10Aは、実施形態1のアクセス制御装置10と比較して、記憶部11に代えて記憶部11A、アクセス元プロセス完全性判定部17に代えてアクセス元プロセス完全性判定部17A、アクセス制御判定部19に代えてアクセス制御判定部19Aを有する。また、実施形態2のアクセス制御装置10Aは、実施形態1のアクセス制御装置10と比較して、不完全プロセスリスト管理部18が省略されている。
(Information stored in the file access control device and the storage unit of the second embodiment)
FIG. 9 is a diagram illustrating an example of the configuration of the access control apparatus according to the second embodiment. FIG. 10 is a diagram illustrating an example of an access target file list and a process ACL according to the second embodiment. Compared to the access control device 10 of the first embodiment, the access control device 10A of the second embodiment replaces the storage unit 11 with the storage unit 11A and the access source process integrity determination unit 17 with the access source process integrity determination. Instead of the unit 17A and the access control determination unit 19, an access control determination unit 19A is provided. Further, in the access control device 10A of the second embodiment, the incomplete process list management unit 18 is omitted as compared to the access control device 10 of the first embodiment.

また、実施形態2のアクセス制御装置10Aの記憶部11Aに格納されるアクセス対象ファイルリストL1Aは、実施形態2のアクセス対象ファイルリストL1と比較して、「制御フラグ」の項目が省略されている。また、実施形態2のアクセス制御装置10Aの記憶部11Aに格納されるリスト群L2Aは、実施形態1のリスト群L2と比較して、依存プロセスリストL2−3が省略されている。また、実施形態2では、アクセス制御装置10Aの記憶部11Aにおいて、不完全プロセスリストL3が省略されている。その他の点は、実施形態2のアクセス制御装置10Aは、実施形態1のアクセス制御装置10と同様である。   The access target file list L1A stored in the storage unit 11A of the access control apparatus 10A of the second embodiment omits the item “control flag” as compared to the access target file list L1 of the second embodiment. . The list group L2A stored in the storage unit 11A of the access control apparatus 10A according to the second embodiment omits the dependency process list L2-3 as compared with the list group L2 according to the first embodiment. In the second embodiment, the incomplete process list L3 is omitted in the storage unit 11A of the access control apparatus 10A. In other respects, the access control apparatus 10A of the second embodiment is the same as the access control apparatus 10 of the first embodiment.

アクセス元プロセス完全性判定部17Aは、「アクセス対象ファイルF1のプロセスACL_L2−2に、アクセス元プロセスP1の実行ファイルパスの記載があること」の真偽を確認する。そして、アクセス元プロセス完全性判定部17Aは、「アクセス対象ファイルF1のプロセスACL_L2−2に、アクセス元プロセスP1の実行ファイルパスの記載があること」が真であれば、「アクセス元プロセス完全性V2」の判定結果をOKと判定する。   The access source process integrity determination unit 17A confirms the authenticity of “the process ACL_L2-2 of the access target file F1 includes the execution file path of the access source process P1”. Then, the access source process completeness determination unit 17A determines that “the process ACL_L2-2 of the access target file F1 includes the execution file path of the access source process P1” is true. The determination result of “V2” is determined to be OK.

一方、アクセス元プロセス完全性判定部17Aは、「アクセス対象ファイルF1のプロセスACL_L2−2に、アクセス元プロセスP1の実行ファイルパスの記載があること」が偽であれば、「アクセス元プロセス完全性V2」の判定結果をNGと判定する。   On the other hand, if the access source process integrity determination unit 17A indicates that “the process ACL_L2-2 of the access target file F1 includes the execution file path of the access source process P1” is false, The determination result of “V2” is determined to be NG.

すなわち、実施形態2では、「アクセス元プロセス完全性V2」の判定の際、「不完全プロセスリストL3にアクセス元プロセスP1の実行ファイルパスの記載がないこと」を判定条件に含めない。これは、実施形態1において「アクセス元プロセス完全性V2」の判定の際に参照する不完全プロセスリストL3が、「ファイルデータ完全性V1」を有さないファイルを実行した“依存プロセスの完全性にリスク”が存在する点を考慮するためのリストであり、実施形態2では、このリスクが再帰的に伝播することを考慮しないためである。なお、実施形態2において、アクセス元プロセスの依存対象ファイルを、アクセス対象ファイルリストL1に記載することによって、完全性にリスクのあるアクセス元プロセスが実行されることを遮断または記録することができる。すなわち、許可プロセスの依存対象ファイルがアクセス先ファイルであるファイルアクセスおいて、依存対象ファイルの改ざんを判定し、判定の結果に応じてこのファイルアクセスを遮断または記録することによって、依存対象ファイルの依存プロセスがアクセス元プロセスであるファイルアクセスにおける依存対象ファイルの改ざんの影響を遮断または記録することができる。なお、許可プロセスの依存対象ファイルがアクセス先ファイルであるファイルアクセスには、例えば、許可プロセスの実行ファイルに対するオペレーティングシステムのアクセス、許可プロセスの設定ファイルに対する許可プロセス自体のアクセスがある。   In other words, in the second embodiment, when “access source process integrity V2” is determined, “the execution file path of the access source process P1 is not described in the incomplete process list L3” is not included in the determination condition. This is because the incomplete process list L3 referred to in the determination of “access source process integrity V2” in the first embodiment executes a file that does not have “file data integrity V1”. This is because the risk is present in the list, and in the second embodiment, this risk is not considered recursively propagating. In the second embodiment, by describing the dependency target file of the access source process in the access target file list L1, it is possible to block or record that the access source process having a risk of integrity is executed. In other words, in the file access where the dependency target file of the permitted process is the access destination file, it is determined whether the dependency target file has been tampered with, and depending on the result of the determination, this file access is blocked or recorded. It is possible to block or record the influence of falsification of the dependent file in the file access in which the process is the access source process. The file access in which the dependency process dependent file is the access destination file includes, for example, an operating system access to the execution file of the permission process and an access of the permission process itself to the setting file of the permission process.

アクセス制御判定部19Aは、ファイルデータ完全性判定部16による「ファイルデータ完全性V1」の判定結果、および、アクセス元プロセス完全性判定部17Aによる「アクセス元プロセス完全性V2」の判定結果がともにNGでない場合、「アクセス完全性V3」の判定結果をOKと判定する。また、アクセス制御判定部19Aは、ファイルデータ完全性判定部16による「ファイルデータ完全性V1」の判定結果、および、アクセス元プロセス完全性判定部17Aによる「アクセス元プロセス完全性V2」の判定結果のいずれかがNGのとき、「アクセス完全性V3」の判定結果をNGと判定する。   The access control determination unit 19A has both the determination result of “file data integrity V1” by the file data integrity determination unit 16 and the determination result of “access source process integrity V2” by the access source process integrity determination unit 17A. If it is not NG, the determination result of “access integrity V3” is determined to be OK. The access control determination unit 19A also determines the determination result of “file data integrity V1” by the file data integrity determination unit 16 and the determination result of “access source process integrity V2” by the access source process integrity determination unit 17A. When any of the above is NG, the determination result of “access integrity V3” is determined to be NG.

そして、アクセス制御判定部19Aは、「アクセス完全性V3」の判定結果がOKのとき、「アクセス制御V4」は“許可”と判定する。また、アクセス制御判定部19Aは、「アクセス完全性V3」の判定結果NGのとき、「アクセス制御V4」は“遮断”と判定する。   Then, the access control determination unit 19A determines that “access control V4” is “permitted” when the determination result of “access integrity V3” is OK. Further, the access control determination unit 19A determines that “access control V4” is “blocked” when the determination result of “access integrity V3” is NG.

(実施形態2のファイルアクセス制御処理)
図11は、実施形態2のファイルアクセス制御処理の一例を示すフローチャートである。図11において、ステップS21〜ステップS23は、実施形態1と同様である。ステップS23に続いてステップS24’では、アクセス元プロセス完全性判定部17Aは、「アクセス対象ファイルのプロセスACL_L2−2に、アクセス元プロセスP1の実行ファイルパスの記載があること」の真偽を判定する。アクセス元プロセス完全性判定部17Aは、「アクセス対象ファイルのプロセスACL_L2−2に、アクセス元プロセスP1の実行ファイルパスの記載があること」が真であれば、「アクセス元プロセス完全性V2」の判定結果をOKと判定する。一方、アクセス元プロセス完全性判定部17Aは、「アクセス対象ファイルのプロセスACL_L2−2に、アクセス元プロセスP1の実行ファイルパスの記載があること」が偽であれば「アクセス元プロセス完全性V2」の判定結果をNGと判定する(以上、ステップS24’)。
(File access control process of the second embodiment)
FIG. 11 is a flowchart illustrating an example of a file access control process according to the second embodiment. In FIG. 11, step S21 to step S23 are the same as those in the first embodiment. In step S24 ′ following step S23, the access source process integrity determination unit 17A determines whether the access file process ACL_L2-2 has a description of the execution file path of the access source process P1. To do. If “the process ACL_L2-2 of the access target file includes the description of the execution file path of the access source process P1” is true, the access source process integrity determination unit 17A sets “access source process integrity V2”. The determination result is determined to be OK. On the other hand, if the access source process integrity determination unit 17A indicates that the process ACL_L2-2 of the access target file includes the execution file path of the access source process P1, the access source process integrity determination unit 17A sets “access source process integrity V2”. Is determined to be NG (step S24 ′).

次に、ステップS26’では、アクセス制御判定部19Aは、ステップS23によるアクセス対象ファイルF1の「ファイルデータ完全性V1」およびステップS24’による「アクセス元プロセス完全性V2」がともに判定結果がNGでないとき、「アクセス完全性V3」の判定結果をOKと判定する。また、アクセス制御判定部19Aは、ステップS23による「ファイルデータ完全性V1」およびステップS24’による「アクセス元プロセス完全性V2」のいずれかの判定結果がNGのとき、「アクセス完全性V3」の判定結果をNGと判定する。そして、アクセス制御判定部19Aは、「アクセス完全性V3」が判定結果がOKのとき、「アクセス制御V4」を“許可”と判定する。また、アクセス制御判定部19Aは、「アクセス完全性V3」の判定結果がNGのとき、「アクセス制御V4」を“遮断”と判定する(以上、ステップS26’)。   Next, in step S26 ′, the access control determination unit 19A determines that “file data integrity V1” of the access target file F1 in step S23 and “access source process integrity V2” in step S24 ′ are not NG. At this time, the determination result of “access integrity V3” is determined to be OK. Further, the access control determination unit 19A sets “access integrity V3” when the determination result of “file data integrity V1” in step S23 and “access source process integrity V2” in step S24 ′ is NG. The determination result is determined as NG. Then, the access control determination unit 19A determines that “access control V4” is “permitted” when the determination result of “access integrity V3” is OK. Further, when the determination result of “access integrity V3” is NG, the access control determination unit 19A determines that “access control V4” is “blocking” (step S26 ′).

次に、ステップS27’では、アクセス検知・制御部14は、「アクセス制御V4」が“許可”のとき、ファイルアクセス検知で一時停止していたファイルアクセスを許可する。一方、アクセス検知・制御部14は、「アクセス制御V4」が“遮断”のとき、ファイルアクセス検知で一時停止していたファイルアクセスを遮断する(以上、ステップS27’)。ステップS27’が終了すると、アクセス制御装置10Aは、実施形態2のファイルアクセス制御処理を終了する。   Next, in step S27 ', the access detection / control unit 14 permits the file access that has been temporarily stopped by the file access detection when "access control V4" is "permitted". On the other hand, when the “access control V4” is “blocked”, the access detection / control unit 14 blocks the file access that has been temporarily stopped by the file access detection (step S27 ′). When step S27 'ends, the access control apparatus 10A ends the file access control process of the second embodiment.

以上の実施形態2によれば、依存プロセスリストL2−3および不完全プロセスリストL3を用いず、完全性を欠いたファイルに対するアクセス、および、アクセスを許可されていないプログラムプロセスからファイルへのアクセスは不適正と判定し、アクセスを遮断するか、または、不適正なアクセスが実行された記録を残すことで、簡易な構成および処理で、ファイルシステム上のファイルに対するプログラムプロセスからのアクセスが適正であるか否かを判定できる。   According to the second embodiment described above, access to a file lacking completeness and access from a program process that is not permitted to access without using the dependent process list L2-3 and the incomplete process list L3 Access from the program process to files on the file system is appropriate with a simple configuration and processing by judging that the access is inappropriate and blocking the access or leaving a record of execution of inappropriate access. It can be determined whether or not.

(実施形態2の変形例)
実施形態2のアクセス制御装置10Aは、「制御フラグ」を導入せず、「アクセス完全性V3」の判定結果がNGのとき、常に“遮断モード”で動作するが、これに限られず、常に“記録モード”で動作するとしてもよい。
(Modification of Embodiment 2)
The access control apparatus 10A according to the second embodiment does not introduce the “control flag” and always operates in the “blocking mode” when the determination result of “access integrity V3” is NG. It may be operated in the “recording mode”.

(アクセス制御装置の装置構成について)
図4および図9に示すアクセス制御装置10、10Aの各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、アクセス制御装置10、10Aの機能の分散および統合の具体的形態は図示のものに限られず、全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散または統合して構成することができる。例えば、アクセス検知・制御部14は、アクセス検知部と、アクセス制御部とに分散されてもよい。
(Device configuration of access control device)
Each component of the access control apparatuses 10 and 10A shown in FIGS. 4 and 9 is functionally conceptual and does not necessarily need to be physically configured as illustrated. In other words, the specific form of distribution and integration of the functions of the access control devices 10 and 10A is not limited to that shown in the figure, and all or a part of them can be functionally functioned in arbitrary units according to various loads or usage conditions. It can be physically distributed or integrated. For example, the access detection / control unit 14 may be distributed between an access detection unit and an access control unit.

また、実施形態1および2において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともできる。もしくは、実施形態1および2において説明した各処理のうち、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記および図示の処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて適宜変更することができる。   In addition, among the processes described in the first and second embodiments, all or a part of the processes described as being automatically performed can be manually performed. Alternatively, all or part of the processes described as being manually performed among the processes described in the first and second embodiments can be automatically performed by a known method. In addition, the above-described and illustrated processing procedures, control procedures, specific names, and information including various data and parameters can be changed as appropriate unless otherwise specified.

(プログラムについて)
図12は、プログラムが実行されることにより、アクセス制御装置が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。コンピュータ1000において、これらの各部はバス1080によって接続される。
(About the program)
FIG. 12 is a diagram illustrating an example of a computer in which an access control apparatus is realized by executing a program. The computer 1000 includes a memory 1010 and a CPU 1020, for example. The computer 1000 also includes a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. In the computer 1000, these units are connected by a bus 1080.

メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1031に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1041に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1041に挿入される。シリアルポートインタフェース1050は、例えばマウス1051、キーボード1052に接続される。ビデオアダプタ1060は、例えばディスプレイ1061に接続される。   The memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM 1012. The ROM 1011 stores a boot program such as BIOS (Basic Input Output System). The hard disk drive interface 1030 is connected to the hard disk drive 1031. The disk drive interface 1040 is connected to the disk drive 1041. For example, a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1041. The serial port interface 1050 is connected to a mouse 1051 and a keyboard 1052, for example. The video adapter 1060 is connected to the display 1061, for example.

ハードディスクドライブ1031は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、アクセス制御装置10の各処理を規定するプログラムは、コンピュータ1000によって実行される指令が記述されたプログラムモジュール1093として、例えばハードディスクドライブ1031に記憶される。例えば、アクセス制御装置10における機能構成と同様の情報処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1031に記憶される。   The hard disk drive 1031 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094. That is, a program that defines each process of the access control apparatus 10 is stored in, for example, the hard disk drive 1031 as a program module 1093 in which a command to be executed by the computer 1000 is described. For example, a program module 1093 for executing information processing similar to the functional configuration in the access control apparatus 10 is stored in the hard disk drive 1031.

また、実施形態1および2での処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1031に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1031に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。   The setting data used in the processing in the first and second embodiments is stored as program data 1094 in, for example, the memory 1010 or the hard disk drive 1031. Then, the CPU 1020 reads the program module 1093 and the program data 1094 stored in the memory 1010 and the hard disk drive 1031 to the RAM 1012 as necessary, and executes them.

なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1031に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1041等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093やプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093やプログラムデータ1094は、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。   Note that the program module 1093 and the program data 1094 are not limited to being stored in the hard disk drive 1031, but may be stored in, for example, a removable storage medium and read out by the CPU 1020 via the disk drive 1041 or the like. Alternatively, the program module 1093 and the program data 1094 may be stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.). The program module 1093 and the program data 1094 may be read by the CPU 1020 via the network interface 1070.

以上の実施形態1および2は、本願が開示する技術に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。   Embodiments 1 and 2 described above are included in the invention disclosed in the claims and equivalents thereof, as long as they are included in the technology disclosed in the present application.

F ファイル
F1 アクセス対象ファイル
P1 アクセス元プロセス
L1、L1A アクセス対象ファイルリスト
L2、L2A リスト群
L2−1 ファイルパス
L2−2 プロセスACL
L2−3 依存プロセスリスト
L3 不完全プロセスリスト
10、10A アクセス制御装置
11、11A 記憶部
12 制御部
13 入出力部
14 アクセス検知・制御部
15 データ取得部
16 ファイルデータ完全性判定部
17、17A アクセス元プロセス完全性判定部
18 不完全プロセスリスト管理部
19、19A アクセス制御判定部
20 ファイル管理システム
1000 コンピュータ
1010 メモリ
1030 ハードディスクドライブインタフェース
1031 ハードディスクドライブ
1040 ディスクドライブインタフェース
1041 ディスクドライブ
1050 シリアルポートインタフェース
1051 マウス
1052 キーボード
1060 ビデオアダプタ
1061 ディスプレイ
1070 ネットワークインタフェース
1080 バス
1092 アプリケーションプログラム
1093 プログラムモジュール
1094 プログラムデータ
F file F1 access target file P1 access source process L1, L1A access target file list L2, L2A list group L2-1 file path L2-2 process ACL
L2-3 Dependent process list L3 Incomplete process list 10, 10A Access control device 11, 11A Storage unit 12 Control unit 13 Input / output unit 14 Access detection / control unit 15 Data acquisition unit 16 File data integrity determination unit 17, 17A Access Original process integrity determination unit 18 Incomplete process list management unit 19, 19A Access control determination unit 20 File management system 1000 Computer 1010 Memory 1030 Hard disk drive interface 1031 Hard disk drive 1040 Disk drive interface 1041 Disk drive 1050 Serial port interface 1051 Mouse 1052 Keyboard 1060 Video adapter 1061 Display 1070 Network interface 1080 Bus 1092 Application program 1093 program module 1094 program data

Claims (8)

ファイルへのアクセスを許可されている許可プロセスの識別情報を該ファイルごとに記憶する記憶部と、
ファイルに対するアクセス元プロセスのアクセスを検知する検知部と、
ファイルのファイルデータに基づいて、該ファイルが改ざんされているか否かを判定するファイル判定部と、
前記検知部によりファイルに対するアクセスが検知されたアクセス元プロセスの識別情報が前記許可プロセスの識別情報に含まれているか否かを判定するプロセス判定部と、
前記ファイル判定部により、前記アクセス元プロセスがアクセスしようとしているファイルが改ざんされていないと判定され、かつ、前記アクセス元プロセスの識別情報が前記許可プロセスの識別情報に含まれていると判定された場合には、該ファイルに対する前記アクセス元プロセスのアクセスを安全と判定し、該ファイルが改ざんされていると判定された、または、前記アクセス元プロセスの識別情報が前記許可プロセスの識別情報に含まれていないと判定された場合には、該ファイルに対する前記アクセス元プロセスのアクセスを危険と判定するアクセス制御判定部と
を備えたことを特徴とするアクセス制御装置。
A storage unit that stores identification information of an authorized process permitted to access a file for each file;
A detection unit for detecting access of the access source process to the file;
A file determination unit that determines whether the file has been tampered with based on the file data of the file;
A process determination unit that determines whether or not the identification information of the permitted process includes the identification information of the access source process in which access to the file is detected by the detection unit;
The file determination unit determines that the file to be accessed by the access source process has not been tampered with, and determines that the identification information of the access source process is included in the identification information of the permitted process In this case, it is determined that access of the access source process to the file is safe and it is determined that the file has been tampered with, or the identification information of the access source process is included in the identification information of the permitted process. An access control apparatus comprising: an access control determination unit that determines that the access by the access source process to the file is dangerous when it is determined that the file is not present.
さらに、
前記記憶部は、前記アクセス元プロセスが依存する依存対象ファイルの識別情報を記憶し、
前記ファイル判定部は、前記アクセス元プロセスが依存する依存対象ファイルが改ざんされているか否かを判定する
ことを特徴とする請求項1に記載のアクセス制御装置。
further,
The storage unit stores identification information of a dependency target file on which the access source process depends,
The access control apparatus according to claim 1, wherein the file determination unit determines whether or not a dependency target file on which the access source process depends has been falsified.
さらに、
前記記憶部は、ファイルに依存する依存プロセスの識別情報を該ファイルごとに記憶するとともに、該依存プロセスのうち前記ファイル判定部により該ファイルが改ざんされていると判定された不完全プロセスの識別情報を記憶し、
前記プロセス判定部は、前記アクセス元プロセスの識別情報が前記不完全プロセスの識別情報に含まれているか否かを判定し、
前記アクセス制御判定部は、前記ファイル判定部により、前記アクセス元プロセスがアクセスしようとしているファイルが改ざんされていないと判定され、かつ、前記アクセス元プロセスの識別情報が前記許可プロセスの識別情報に含まれていると判定され、かつ、前記アクセス元プロセスの識別情報が前記不完全プロセスの識別情報に含まれていないと判定された場合には、該ファイルに対する前記アクセス元プロセスのアクセスを安全と判定し、該ファイルが改ざんされていると判定された、または、前記アクセス元プロセスの識別情報が前記許可プロセスの識別情報に含まれていないと判定された、または、前記アクセス元プロセスの識別情報が前記不完全プロセスの識別情報に含まれていると判定された場合には、該ファイルに対する前記アクセス元プロセスのアクセスを危険と判定する
ことを特徴とする請求項1または2に記載のアクセス制御装置。
further,
The storage unit stores identification information of a dependent process dependent on a file for each file, and identification information of an incomplete process in which the file determination unit determines that the file has been tampered with among the dependent processes Remember
The process determination unit determines whether the identification information of the access source process is included in the identification information of the incomplete process,
The access control determination unit determines that the file to be accessed by the access source process has not been tampered with by the file determination unit, and the identification information of the access source process is included in the identification information of the permitted process If it is determined that the access source process identification information is not included in the incomplete process identification information, the access source process access to the file is determined to be safe. Then, it is determined that the file has been tampered with, or it is determined that the identification information of the access source process is not included in the identification information of the permitted process, or the identification information of the access source process is If it is determined that it is included in the identification information of the incomplete process, the file Access control device according to claim 1 or 2, wherein the determining a risk of access of the access source process.
さらに、
前記検知部は、アクセス先ファイルに対するアクセスを検知したアクセス元プロセスのアクセスを一時停止させ、
前記アクセス制御判定部により、前記安全とされた前記アクセス元プロセスのアクセスの一時停止を解除し、前記危険とされた前記アクセス元プロセスのアクセスの一時停止を解除せず、該アクセスを遮断するアクセス制御部
を備えたことを特徴とする請求項1〜3のいずれか1項に記載のアクセス制御装置。
further,
The detection unit temporarily stops access of an access source process that has detected access to an access destination file,
The access control determination unit cancels the access suspension of the access source process regarded as safe and blocks the access without releasing the access suspension of the access source process regarded as dangerous. The access control apparatus according to claim 1, further comprising a control unit.
さらに、
前記記憶部は、遮断モードおよび記録モードのいずれかのモードを示す制御フラグを前記ファイルの識別情報それぞれに対応付けて記憶し、
前記検知部は、アクセス先ファイルに対するアクセスを検知したアクセス元プロセスのアクセスを一時停止させ、
前記アクセス制御判定部により、前記アクセス先ファイルに対する前記アクセス元プロセスのアクセスが前記危険と判定された際、前記アクセス先ファイルの識別情報に対応する前記制御フラグが前記遮断モードを示す場合には前記一時停止を解除せず該アクセスを遮断し、前記制御フラグが前記記録モードを示す場合には前記一時停止を解除するアクセス制御部と
を備えたことを特徴とする請求項1〜3のいずれか1項に記載のアクセス制御装置。
further,
The storage unit stores a control flag indicating one of a blocking mode and a recording mode in association with each identification information of the file,
The detection unit temporarily stops access of an access source process that has detected access to an access destination file,
When the access control determination unit determines that access of the access source process to the access destination file is the danger, the control flag corresponding to the identification information of the access destination file indicates the blocking mode. An access control unit that blocks the access without releasing the pause and releases the pause when the control flag indicates the recording mode. The access control apparatus according to item 1.
さらに、
前記ファイル判定部および前記プロセス判定部による判定結果を記録する
ことを特徴とする請求項1〜4のいずれか1項に記載のアクセス制御装置。
further,
The access control device according to any one of claims 1 to 4, wherein a determination result by the file determination unit and the process determination unit is recorded.
アクセス制御装置が実行するアクセス制御方法であって、
ファイルに対するアクセス元プロセスのアクセスを検知する検知ステップと、
ファイルのファイルデータに基づいて、該ファイルが改ざんされているか否かを判定するファイル判定ステップと、
前記検知ステップによりファイルに対するアクセスが検知されたアクセス元プロセスの識別情報が、ファイルへのアクセスを許可されている許可プロセスの識別情報を該ファイルごとにする記憶部に記憶されている前記許可プロセスの識別情報に含まれているか否かを判定するプロセス判定ステップと、
前記ファイル判定ステップにより、前記アクセス元プロセスがアクセスしようとしているファイルが改ざんされていないと判定され、かつ、前記アクセス元プロセスの識別情報が前記許可プロセスの識別情報に含まれていると判定された場合には、該ファイルに対する前記アクセス元プロセスのアクセスを安全と判定し、該ファイルが改ざんされていると判定された、または、前記アクセス元プロセスの識別情報が前記許可プロセスの識別情報に含まれていないと判定された場合には、該ファイルに対する前記アクセス元プロセスのアクセスを危険と判定するアクセス制御判定ステップと
を含んだことを特徴とするアクセス制御方法。
An access control method executed by an access control device,
A detection step for detecting access of the access source process to the file;
A file determination step for determining whether the file has been falsified based on the file data of the file;
The identification information of the access source process in which the access to the file is detected by the detection step is stored in the storage unit that stores the identification information of the permitted process permitted to access the file for each file. A process determination step for determining whether or not the identification information is included;
In the file determination step, it is determined that the file that the access source process is trying to access has not been falsified, and it is determined that the identification information of the access source process is included in the identification information of the permitted process In this case, it is determined that access of the access source process to the file is safe and it is determined that the file has been tampered with, or the identification information of the access source process is included in the identification information of the permitted process. An access control determination step for determining that the access by the access source process to the file is dangerous when it is determined that the file is not present.
請求項1〜6のいずれか1項に記載のアクセス制御装置としてコンピュータを機能させるためのアクセス制御プログラム。   The access control program for functioning a computer as an access control apparatus of any one of Claims 1-6.
JP2017126639A 2017-06-28 2017-06-28 Access control device, access control method and access control program Active JP6787841B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017126639A JP6787841B2 (en) 2017-06-28 2017-06-28 Access control device, access control method and access control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017126639A JP6787841B2 (en) 2017-06-28 2017-06-28 Access control device, access control method and access control program

Publications (2)

Publication Number Publication Date
JP2019008732A true JP2019008732A (en) 2019-01-17
JP6787841B2 JP6787841B2 (en) 2020-11-18

Family

ID=65027001

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017126639A Active JP6787841B2 (en) 2017-06-28 2017-06-28 Access control device, access control method and access control program

Country Status (1)

Country Link
JP (1) JP6787841B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022153410A1 (en) 2021-01-13 2022-07-21 日本電信電話株式会社 Falsification detection device, falsification detection method, and falsification detection program
WO2022153415A1 (en) 2021-01-13 2022-07-21 日本電信電話株式会社 Falsification detecting device, falsification detecting method, and falsification detecting program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022153410A1 (en) 2021-01-13 2022-07-21 日本電信電話株式会社 Falsification detection device, falsification detection method, and falsification detection program
WO2022153415A1 (en) 2021-01-13 2022-07-21 日本電信電話株式会社 Falsification detecting device, falsification detecting method, and falsification detecting program

Also Published As

Publication number Publication date
JP6787841B2 (en) 2020-11-18

Similar Documents

Publication Publication Date Title
CN106845223B (en) Method and apparatus for detecting malicious code
WO2011030455A1 (en) Secure audit system and secure audit method
US9104860B2 (en) Systems, methods and media for managing process image hijacks
KR101138748B1 (en) Apparatus, system and method for preventing malicious codes
US10671730B2 (en) Controlling configuration data storage
JP6000465B2 (en) Process inspection apparatus, process inspection program, and process inspection method
CN111400723A (en) TEE extension-based operating system kernel mandatory access control method and system
JP2023534502A (en) Advanced ransomware detection
CN106997435B (en) Method, device and system for safety prevention and control of operating system
JP6787841B2 (en) Access control device, access control method and access control program
KR100666562B1 (en) Method for protecting kernel driver and process
KR20070019191A (en) Method for protecting kernel memory and apparatus thereof
KR101429131B1 (en) Device and method for securing system
US20160239662A1 (en) Control system and authentication device
CN111222122A (en) Application authority management method and device and embedded equipment
CN111538972A (en) System and method for verifying attack resilience in digital signatures of documents
KR102463814B1 (en) Method and apparatus for monitoring server
JP6355657B2 (en) Process execution device, process execution method, and control program
KR102017016B1 (en) Apparatus and method for malware
CN112800416A (en) Safety protection system and method for calling chain
JP5126495B2 (en) Security policy setting device linked with safety evaluation, program thereof and method thereof
KR101616702B1 (en) Software Management Method Using CODESIGN
JP7119480B2 (en) Application execution authority management device, method and program
CN117290823B (en) APP intelligent detection and safety protection method, computer equipment and medium
KR20090080469A (en) Method and System for preventing installation of program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190522

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200317

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200518

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201027

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201029

R150 Certificate of patent or registration of utility model

Ref document number: 6787841

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150