JP2005044243A - Access control rule generation device, access control rule generation method and computer program - Google Patents

Access control rule generation device, access control rule generation method and computer program Download PDF

Info

Publication number
JP2005044243A
JP2005044243A JP2003279522A JP2003279522A JP2005044243A JP 2005044243 A JP2005044243 A JP 2005044243A JP 2003279522 A JP2003279522 A JP 2003279522A JP 2003279522 A JP2003279522 A JP 2003279522A JP 2005044243 A JP2005044243 A JP 2005044243A
Authority
JP
Japan
Prior art keywords
access
resource
access control
program
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2003279522A
Other languages
Japanese (ja)
Inventor
Taikun Yasuda
泰勲 安田
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2003279522A priority Critical patent/JP2005044243A/en
Publication of JP2005044243A publication Critical patent/JP2005044243A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a device and method that can streamline automatic generation processing of optimum access control rules depending on a use environment such as a user or a program in various information processing devices such as information appliances and PCs. <P>SOLUTION: For the generation of access control rules to be loaded into various information processors such as information appliances and PCs, access history information about each resource is acquired from a program execution trace, accessibility to each resource at program execution is inferred from resource relevance such as information on directory matching, type matching or network port category matching, and utility functions balanced in dependence on a use environment such as the access-control-rule-applied program, user or equipment, specifically, utility functions of balanced false positives and false negatives, are applied to set access control rules based on Bayesian estimation. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、アクセス制御ルール生成装置、およびアクセス制御ルール生成方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、情報家電、PC等、様々な情報処理装置におけるデバイス、データファイルなどに対するアクセス制御を適切に実行するためのアクセスルールを効率的に構築することを可能としたアクセス制御ルール生成装置、およびアクセス制御ルール生成方法、並びにコンピュータ・プログラムに関する。   The present invention relates to an access control rule generation device, an access control rule generation method, and a computer program. Furthermore, in detail, an access control rule generation capable of efficiently constructing an access rule for appropriately executing access control for devices, data files, etc. in various information processing apparatuses such as information appliances and PCs The present invention relates to an apparatus, an access control rule generation method, and a computer program.

情報家電、PC等の情報処理装置においては、各機器に応じたデータ処理、例えば文書作成、データベース検索、図表作成、ゲームプログラム、通信処理、インターネット接続処理等、機器に格納されたプログラムに従った様々なデータ処理が実行される。このようなデータ処理において、各プログラムは自身が動作するために必要なリソース、すなわち、データファイル、システムファイル、ネットワークポート、あるいはハードディスク等の記憶手段などの各種デバイス等のリソースをライブラリやオペレーティングシステムを経由してアクセスする。   In information processing devices such as information home appliances and PCs, data processing corresponding to each device, for example, document creation, database search, chart creation, game program, communication processing, Internet connection processing, etc. Various data processing is performed. In such data processing, each program needs resources necessary for its operation, that is, resources such as data files, system files, network ports, storage devices such as hard disks, etc., as libraries and operating systems. To access via.

しかし、情報家電、PC等の情報処理装置の多くはネットワーク接続がなされ、プログラムのバグやセキュリティホールを利用して計算機上のリソースを不正にアクセスするという攻撃が頻繁に行なわれており、大きな問題になっている。これらの攻撃が成功すると、任意のファイルの読み込み/改竄/削除/実行など行なわれるため、大きな被害を受ける。そのため、この問題に対するセキュリティ対策が非常に重要な課題となっている。ネットワーク接続のなされていないPC等であっても、正当なユーザ以外の不正なユーザによるPCの操作がなされた場合には、データやデバイスに不正なアクセスがなされると、データ改竄等の可能性があり被害を発生させる。   However, many information processing devices such as information appliances and PCs are connected to the network, and attacks that illegally access resources on computers using bugs and security holes in programs are frequently performed. It has become. If these attacks are successful, any file will be read / tampered / deleted / executed, and so on, and will be greatly damaged. For this reason, security measures against this problem are very important issues. Even if the PC is not connected to the network, if the PC is operated by an unauthorized user other than a legitimate user, if the data or device is illegally accessed, the possibility of data falsification etc. Cause damage.

これらの攻撃に対しての対策はいくつか提案されている。対策の方向性として、
(1)各攻撃毎に個別の対策を施す方法と、
(2)各攻撃を区別しない汎用的な対策を施す方法、
の2種類がある。
Several countermeasures against these attacks have been proposed. As direction of measures,
(1) A method of taking individual measures for each attack;
(2) A general-purpose measure that does not distinguish between attacks,
There are two types.

(1)の個別の対策の具体例としては、スタックオーバフロー対策である[Stack Guard],[Stack Smashing Protector],[PaX],[libsafe]などの手法がある。   As a specific example of the individual countermeasure (1), there are methods such as [Stack Guard], [Stack Smashing Protector], [PaX], and [libsafe] that are stack overflow countermeasures.

[Stack Guard]や、[Stack Smashing Protector]は、スタックの改竄を検知し、攻撃されたプログラムの実行を停止することによって被害を食い止める方式である。[PaX]は、スタック上のコードの実行を禁止することによって、攻撃されたプログラム上のスタックオーバフローしたコードの実行を食い止める方式である。[libsafe]は脆弱性のある関数をオーバライドし、入力データのチェック等を行なうことによってスタックオーバフローを未然に防ぐ方式である。その他の個別対策としては、プログラム自身のセキュリティホールやバグ修正、あるいは機能や仕様の変更を行うなどの対症療法的な手法がある。   [Stack Guard] and [Stack Smashing Protector] are methods for detecting damage of the stack and stopping the execution of the attacked program to stop the damage. [PaX] is a method of stopping execution of code that has overflowed in the attacked program by prohibiting execution of code on the stack. [Libsafe] is a method of preventing stack overflow by overriding a vulnerable function and checking input data. As other individual measures, there are symptomatic methods such as security holes and bug correction of the program itself, or changes in functions and specifications.

(2)の汎用的な対策としては、OSレベルやアプリケーションレベルにおいてリソースへのアクセス制御を行う方法がある。例えばアクセス制御の方式の具体例として、[アクセス制御リスト/表方式]、[TypeEnforcement方式]、[Role BasedAccess Control方式]、[Compartment方式]等が提案されている。これらのアクセス制御方式は基本的には全て、PC等の計算機上の能動的主体が受動的主体にどのようなアクセスを許可するか/禁止するかを定義し、その内容に従って実際のアクセス制御を行なう手法である。   As a general measure of (2), there is a method of controlling access to resources at the OS level or the application level. For example, [Access control list / table method], [TypeEnforcement method], [Role BasedAccess Control method], [Compartment method] and the like have been proposed as specific examples of the access control method. Basically, all these access control methods define what kind of access an active subject on a computer such as a PC is allowed / prohibited to a passive subject, and perform actual access control according to the contents. It is a technique to do.

これらの方式の違いは能動的主体、受動的主体、アクセスの形態の定義の仕方である。アクセス制御リスト/表形式は、能動的主体をプログラム、受動的主体をファイルやデバイスなどの実際の計算機リソース、アクセスを各リソースに対して行なえる形態をそのまま用いる方式である。Type Enforcement方式は、能動的主体はプログラムの集合、受動的主体は計算機リソースの集合、アクセスは各リソースに対して行なえる形態をそのまま用いる方式である。本方式では、プログラムの集合や計算機リソースの集合は任意の組み合わせが定義できる。Role Based Access Control方式は、能動的主体はユーザ、受動的主体とアクセス形態を合わせたもの(権限とよぶ)を用いて、ユーザに権限を付与する形を取る方式である。ユーザや権限はアクセス制御の設定を行なうものが自由に定義する。Compartment方式は、能動的主体はプロセスサブツリー、受動的主体は計算機リソース、アクセス形態は各リソースに対して行なえる形態をそのまま用いる方式である。   The difference between these methods is how to define active, passive, and access forms. The access control list / table format is a system that uses an active entity as a program, a passive entity as an actual computer resource such as a file or a device, and a form that allows access to each resource as it is. The Type Enforcement method is a method that uses a form in which an active subject is a set of programs, a passive subject is a set of computer resources, and access can be made to each resource. In this method, a set of programs and a set of computer resources can be defined in any combination. The Role Based Access Control method is a method in which an active subject is a user, and a passive subject and a combination of access forms (referred to as authority) are used to grant authority to the user. Users and authority can be freely defined by those who set access control. The Compartment system is a system that uses a process sub-tree as an active entity, a computer resource as a passive entity, and an access mode that can be used for each resource.

個別対策は既に攻撃方法が判明している攻撃を分析して行なうものであるため、攻撃に対して最適な防御がとれる反面、未知の攻撃に対しては無力な場合が多い。一方、汎用的な対策では個別対策ほどは最適な防御は取れないが既知/未知を問わず攻撃に対して一定の防御効果を発揮するという特徴がある。   The individual countermeasure is performed by analyzing an attack whose attack method is already known, so that it can protect optimally against the attack, but is often ineffective against an unknown attack. On the other hand, general-purpose countermeasures are not as optimal as individual countermeasures, but have a feature that they exhibit a certain protective effect against attacks regardless of whether they are known or unknown.

近年、プログラムのセキュリティホールは毎日の様に報告されており、これら全てをキャッチアップしていくことは現実的には難しく且つ常に対応するまでのタイムラグが発生するため、汎用的な対策が非常に重要になっている。汎用的な対策である各種のアクセス制御を利用する場合、必ずアクセス制御のための設定であるセキュリティポリシを作成する必要がある。セキュリティポリシとは能動的主体、すなわちプロセスやユーザ等が、受動的主体、すなわち、各種計算機リソースにどの様なアクセス態様、すなわち読み取り(read)、書き込み(write)等のアクセス態様を許可するかあるいは禁止するかを表したルールの集合である。セキュリティポリシに基づくアクセス制御構成を開示した従来技術としては、例えば特許文献1に記載の技術がある。   In recent years, security holes in programs have been reported every day, and it is actually difficult to catch up all of them, and there is a time lag until they always respond. It has become important. When using various types of access control, which is a general measure, it is necessary to create a security policy that is a setting for access control. A security policy means that an active entity, that is, a process or a user, permits a passive entity, that is, what access mode, that is, an access mode such as read or write, to various computer resources. It is a set of rules that indicates whether to prohibit. As a prior art disclosing an access control configuration based on a security policy, for example, there is a technique described in Patent Document 1.

しかし、セキュリティポリシは、保護したい対象や動作させるプログラムなどを全てを網羅的に含めなければならないため、非常に大量の設定(例えば数百から数万行程度)になるという作成困難性の問題がある。また、各プログラムやユーザが実際にどのように計算機リソースにアクセスするかを記述するには、プログラムの知識やその運用状態などの知識を持っていなければならないため、非常に高度な知識と技術が要求されるという問題がある。   However, the security policy must comprehensively include all of the objects to be protected and the programs to be operated, so there is a problem of difficulty in creating such a very large number of settings (for example, several hundred to tens of thousands of lines). is there. In addition, in order to describe how each program or user actually accesses computer resources, it is necessary to have knowledge of the program and its operational status, so very advanced knowledge and technology are required. There is a problem that it is required.

従って、人間がマニュアル処理により一から最適なセキュリティポリシを作成することは非常に時間を要する困難な作業となり、実際の問題としてこの作業の困難さのためにアクセス制御機構はあまり普及していない。   Accordingly, it is very difficult for humans to create an optimal security policy from scratch by manual processing. As an actual problem, access control mechanisms are not so popular because of the difficulty of this work.

このセキュリティポリシの作成の困難さの問題を解決するためにセキュリティポリシを自動生成するいくつかの方法が提案されている。このセキュリティポリシの自動生成手法は、以下の(A),(B)2種類に分類できる。   Several methods for automatically generating a security policy have been proposed to solve the problem of difficulty in creating the security policy. This automatic security policy generation method can be classified into the following two types (A) and (B).

(A)1つ目は、プログラムを事前に実行し、その実行結果にあったリソースアクセスを人間が判断し、セキュリティポリシとして組み込む方法である。この方式を取るものは多く、例えば[SELinux],[Linux Intrusion Detection System],[Janus]等多くのアクセス制御機構が採用している。   (A) The first is a method in which a program is executed in advance, resource access according to the execution result is determined by a human, and incorporated as a security policy. Many of them adopt this method, and for example, many access control mechanisms such as [SELinux], [Linux Induction Detection System], and [Janus] are employed.

(B)2つ目は、ソースコードを解析し、コードからリソースアクセスを抽出する方法である。この方式は、[Java]のセキュリティ機構用のものとして[Access Rights Analysis for Java]という論文として、IBMから提案されているものがある。   (B) The second is a method of analyzing the source code and extracting resource access from the code. This method is proposed by IBM as a paper called [Access Rights Analysis for Java] for the security mechanism of [Java].

上記(A)の方法は、プログラムを実行した範囲内のみをセキュリティポリシに組み込むため、精度の高いセキュリティポリシを作成するためにはプログラムの全てのパターンを実行する必要があり、プログラムの実行の手間が非常に大きいという問題がある。   In the method (A), since only the range in which the program is executed is incorporated into the security policy, it is necessary to execute all patterns of the program in order to create a highly accurate security policy. There is a problem that is very large.

また、(B)の方法は、プログラムのソースコードからパラメータを抽出するためセキュリティポリシ生成の手間は少ないが、実行時に渡されるパラメータ(プログラムの引数や設定ファイルの内容など)が解析できない。その結果、充分なリソースアクセスを抽出できず生成したセキュリティポリシの精度が低いという問題がある。   In the method (B), since parameters are extracted from the source code of the program, there is little effort for generating a security policy, but parameters (program arguments, contents of setting files, etc.) passed at the time of execution cannot be analyzed. As a result, there is a problem that the accuracy of the generated security policy is low because sufficient resource access cannot be extracted.

このように、これまでのセキュリティポリシの自動生成手法では、セキュリティポリシの精度と生成の手間の削減の両方を同時に満たすことはできない。さらに上記(A),(B)の手法に共通の問題点として、セキュリティポリシの生成に対して、[false negative]や、[false positive]のリスクのバランスを考慮せず、常に[false negative]を最小、[false positive]は無視というバランスのみを適用しているという点がある。   As described above, the conventional automatic generation method of the security policy cannot satisfy both the accuracy of the security policy and the reduction of the generation effort at the same time. Furthermore, as a problem common to the above methods (A) and (B), the security policy is always generated without considering the risk balance of [false negative] or [false positive], regardless of the generation of the security policy. There is a point that only the balance of ignoring is applied to [false positive].

[false negative]とは不正アクセスを正常アクセスと見なすことであり、この場合、禁止すべきリソースアクセスを許可してしまうセキュリティポリシを生成すること指す。[false positive]とは正常アクセスを不正アクセスと見なすことであり、この場合、許可すべきリソースアクセスを禁止してしまうセキュリティポリシを生成すること指す。セキュリティに関する判断を行なう場合、常にリスクのバランスを見て判断を行なうべきである。   [False negative] is to regard unauthorized access as normal access, and in this case, to generate a security policy that permits resource access to be prohibited. [False positive] means that normal access is regarded as unauthorized access, and in this case, generation of a security policy that prohibits resource access that should be permitted. When making security decisions, you should always look at the balance of risks.

PC等の情報処理装置(計算機)は様々な用途に用いられており、セキュリティを考える場合は用途に合わせて多様な[false negative]、[false positive]のバランスを取る必要がある。例えば、情報家電へのアクセス制御機構の適用を考えた場合、これらの情報家電は、コンピュータの知識がない一般のユーザが利用することが多い。従って、正常アクセスを不正アクセスと見なす[false positive]を頻繁に発生させると、ユーザは、正しい操作が誤りであったと誤解してしまい、操作のやり直し当を行わずに操作をあきらめてしまうといった場合が発生する。このような正常利用時にアクセス制限により操作の継続を停止してしまうことは問題である。従って、コンピュータの知識がない一般のユーザが利用することが多い情報家電等の機器に設定するセキュリティポリシは、通常の利用時に問題が発生しない設定とすることが最優先となる。つまり[false positive]を最小にすることが求められる。しかしながら、既存のセキュリティポリシの自動生成方法ではこのような適用先の要求に合わせたセキュリティポリシの生成ができないという問題がある。
特開2002−215440号公報
Information processing apparatuses (computers) such as PCs are used for various purposes, and when considering security, it is necessary to balance various [false negative] and [false positive] according to the purpose. For example, when application of an access control mechanism to information home appliances is considered, these information home appliances are often used by general users who do not have computer knowledge. Therefore, if [false positive] in which normal access is regarded as unauthorized access is frequently generated, the user misunderstands that the correct operation is incorrect, and the user gives up the operation without performing the operation again. Will occur. It is a problem that the continuation of the operation is stopped due to the access restriction during such normal use. Accordingly, the highest priority is set to a security policy that is set for a device such as an information home appliance that is often used by a general user who does not have computer knowledge, so that no problem occurs during normal use. That is, it is required to minimize [false positive]. However, there is a problem in that an existing security policy automatic generation method cannot generate a security policy according to the request of the application destination.
JP 2002-215440 A

上述したように、既存のセキュリティポリシの自動生成手法として知られる2つの手法、すなわち、
(A)プログラムの事前実行により、実行結果にあったリソースアクセスを人間が判断し、セキュリティポリシとして組み込む方法、
(B)ソースコードを解析し、コードからリソースアクセスを抽出する方法、
上記2つの手法が知られているが、(A)の方法は、プログラムの実行範囲に基づくセキュリティポリシの設定を基本とするため、精度の高いセキュリティポリシを作成するためにはプログラムの全てのパターンを実行する必要があり、プログラムの実行の手間が非常に大きいという問題がある。(B)の方法は、プログラムのソースコードからパラメータを抽出するためセキュリティポリシ生成の手間は少ないが、実行時に渡されるパラメータ(プログラムの引数や設定ファイルの内容など)が解析が困難となり、その結果、充分なリソースアクセスを抽出できず生成したセキュリティポリシの精度が低いという問題がある。
As mentioned above, there are two known methods for automatically generating existing security policies:
(A) A method in which a human determines resource access according to an execution result by pre-execution of a program and incorporates it as a security policy;
(B) a method of analyzing source code and extracting resource access from the code;
The above two methods are known. Since the method (A) is based on the setting of a security policy based on the execution range of the program, all patterns of the program are required to create a highly accurate security policy. There is a problem that it takes a lot of time to execute the program. The method (B) extracts the parameters from the source code of the program, so the security policy generation is less, but it is difficult to analyze the parameters (program arguments, setting file contents, etc.) passed at the time of execution. There is a problem that the accuracy of the generated security policy is low because sufficient resource access cannot be extracted.

また、(A)、(B)の両方法とも一律なポリシ設定手法であるため、機器に応じたあるいはアプリケーションに応じた[false positive]および、[false negative]のバランスの調整処理ができないという問題がある。   In addition, since both methods (A) and (B) are uniform policy setting methods, there is a problem in that it is impossible to adjust the balance between [false positive] and [false negative] according to the device or the application. There is.

本発明は、このような既存のセキュリティポリシの自動生成手法における問題点に鑑みてなされたものであり、セキュリティポリシの自動生成を少ない手間と精度を両立させて実現するアクセス制御ルール生成装置、およびアクセス制御ルール生成方法、並びにコンピュータ・プログラムを提供することを目的とする。   The present invention has been made in view of the problems in such an existing security policy automatic generation method, and an access control rule generation device that realizes automatic generation of a security policy with both effort and accuracy, and An object is to provide an access control rule generation method and a computer program.

さらに、[false positive]および、[false negative]のバランスを考慮したセキュリティポリシの生成を可能としたアクセス制御ルール生成装置、およびアクセス制御ルール生成方法、並びにコンピュータ・プログラムを提供することを目的とする。   It is another object of the present invention to provide an access control rule generation device, an access control rule generation method, and a computer program capable of generating a security policy in consideration of the balance between [false positive] and [false negative]. .

さらに、具体的には、本発明はプログラムの実行トレース結果にあるリソースアクセスからそのプログラムが行なうと思われるリソースアクセスかどうかを類推し、さらにそのリソースへのアクセスが不正である確率/正当である確率とその被害の大きさを考慮して最終的なアクセスの許可/不許可を決定するという方式を実現することによって、少ない手間と精度の両立および[false positive]と、[false negative]とののバランスを考慮したセキュリティポリシの生成を可能にするアクセス制御ルール生成装置、およびアクセス制御ルール生成方法、並びにコンピュータ・プログラムを提供することを目的とする。   More specifically, the present invention infers whether or not the resource access that the program is supposed to perform from the resource access in the execution trace result of the program, and further, the probability / rightness that the access to the resource is illegal By realizing a method of determining the final access permission / denial in consideration of the probability and the magnitude of the damage, it is possible to achieve both a balance of less effort and accuracy and [false positive] and [false negative]. It is an object of the present invention to provide an access control rule generation device, an access control rule generation method, and a computer program that enable generation of a security policy in consideration of the balance of the above.

本発明の第1の側面は、
情報処理装置のリソースに対するアクセス制御ルールを生成するアクセス制御ルール生成装置であり、
アクセス制御ルールの適用対象プログラムを実行し、リソースアクセス履歴情報を含むプログラム実行トレースを取得し、予め設定されたリソース間の関連性情報に基づいて、前記プログラムの実行における各リソースのアクセス有無を推定する実行トレース解析処理部と、
各リソース毎に予め設定されたアクセス発生有無各々に対応する初期確率と、その尤度情報と、フォールスポジティブおよびフォールスネガティブのバランス調整に基づいて設定した効用関数を入力するパラメータ入力処理部と、
前記実行トレース解析処理部から入力するプログラム実行時における各リソースのアクセス有無情報と、前記パラメータ入力処理部から入力する初期確率、尤度情報、および効用関数に基づくベイズ推定処理により各リソース毎のアクセス制御ルールを設定するセキュリティポリシ生成部と、
を有することを特徴とするアクセス制御ルール生成装置にある。
The first aspect of the present invention is:
An access control rule generation device that generates an access control rule for a resource of an information processing device,
Executes the program subject to access control rules, obtains a program execution trace including resource access history information, and estimates the presence / absence of access to each resource in the execution of the program based on the relevance information between resources set in advance An execution trace analysis processing unit,
A parameter input processing unit for inputting an initial function corresponding to each occurrence of access preset for each resource, its likelihood information, and a utility function set based on a balance adjustment of false positive and false negative,
Access information for each resource by Bayesian estimation processing based on the access presence / absence information of each resource during program execution input from the execution trace analysis processing unit and the initial probability, likelihood information, and utility function input from the parameter input processing unit A security policy generator that sets control rules;
The access control rule generation device is characterized by comprising:

さらに、本発明のアクセス制御ルール生成装置の一実施態様において、前記セキュリティポリシ生成部は、前記実行トレース解析処理部から入力するプログラム実行時における各リソースのアクセス有無情報と、前記パラメータ入力処理部から入力する初期確率、尤度情報とに基づいて、各リソースの正当アクセスの事後確率と、不正アクセスの事後確率を算出する確率演算処理部と、前記確率演算処理部の算出した事後確率データと、前記パラメータ入力処理部から入力する効用関数に基づいて、各リソース毎のアクセス禁止に伴う期待損失値と、アクセス許可に伴う期待損失値を算出する期待損失演算処理部と、前記期待損失演算処理部の算出する期待損失値に基づいて、各リソース毎のアクセス制御ルールを設定するアクセス判断処理部と、を有することを特徴とする。   Furthermore, in one embodiment of the access control rule generation device of the present invention, the security policy generation unit includes access information on each resource at the time of program execution input from the execution trace analysis processing unit, and the parameter input processing unit. Based on the input initial probability and likelihood information, the posterior probability of legitimate access of each resource, the probability calculation processing unit for calculating the posterior probability of unauthorized access, the posterior probability data calculated by the probability calculation processing unit, Based on the utility function input from the parameter input processing unit, an expected loss value associated with access prohibition for each resource, an expected loss calculation processing unit that calculates an expected loss value associated with access permission, and the expected loss calculation processing unit Access decision processing that sets access control rules for each resource based on the expected loss value calculated by And having a, the.

さらに、本発明のアクセス制御ルール生成装置の一実施態様において、前記フォールスポジティブおよびフォールスネガティブのバランス調整に基づいて設定した効用関数は、それぞれフォールスポジティブ効用関数fp()と、フォールスネガティブ効用関数fn()であり、前記効用関数fp()、fn()は、バランス設定のための重み付け係数を決定する重み関数ω(fp)、ω(fn)を含み、該重み関数ω(fp)、ω(fn)は、アクセス制御ルールの適用対象となるプログラム、または機器の少なくともいずれかに基づいて設定される関数であり、該重み関数ω(fp)、ω(fn)の設定により、フォールスポジティブ優先、あるいはフォールスネガティブ優先の設定調整を行った効用関数であることを特徴とする。   Furthermore, in one embodiment of the access control rule generation device of the present invention, the utility functions set based on the balance adjustment of the false positive and the false negative are the false positive utility function fp () and the false negative utility function fn ( The utility functions fp () and fn () include weighting functions ω (fp) and ω (fn) that determine weighting coefficients for setting the balance, and the weighting functions ω (fp) and ω ( fn) is a function set based on at least one of the program or device to which the access control rule is applied, and false positive priority is set by setting the weight functions ω (fp) and ω (fn). Or it is the utility function which performed setting adjustment of false negative priority.

さらに、本発明のアクセス制御ルール生成装置の一実施態様において、前記効用関数fp()、fn()は、重み付け係数の比:ω(fn)/ω(fp)>1を満足するフォールスポジティブ優先設定とした効用関数であることを特徴とする。   Furthermore, in one embodiment of the access control rule generation device of the present invention, the utility functions fp (), fn () are false positive priority satisfying a ratio of weighting factors: ω (fn) / ω (fp)> 1. It is a utility function that has been set.

さらに、本発明のアクセス制御ルール生成装置の一実施態様において、前記効用関数fp()、fn()は、重み付け係数の比:ω(fp)/ω(fn)>1を満足するフォールスネガティブ優先設定とした効用関数であることを特徴とする。   Furthermore, in one embodiment of the access control rule generation device of the present invention, the utility functions fp (), fn () are false negative priority satisfying a ratio of weighting coefficients: ω (fp) / ω (fn)> 1. It is a utility function that has been set.

さらに、本発明のアクセス制御ルール生成装置の一実施態様において、前記実行トレース解析処理部において適用するリソース間の関連性情報は、同一ディレクトリにあるリソースを関連性ありとする情報であり、前記実行トレース解析処理部は、前記プログラムの実行におけるリソースアクセスの発生したリソースと同一ディレクトリにあるリソースをプログラム実行におけるアクセス発生リソースとして類推する処理を実行する構成であることを特徴とする。   Furthermore, in one embodiment of the access control rule generation device of the present invention, the relevance information between resources applied in the execution trace analysis processing unit is information that makes resources in the same directory relevant, and the execution The trace analysis processing unit is configured to execute a process for analogizing a resource in the same directory as a resource in which resource access has occurred in the execution of the program as an access occurrence resource in program execution.

さらに、本発明のアクセス制御ルール生成装置の一実施態様において、前記実行トレース解析処理部において適用するリソース間の関連性情報は、同一種別のリソースを関連性ありとする情報であり、前記実行トレース解析処理部は、前記プログラムの実行におけるリソースアクセスの発生したリソースと同一種別のリソースをプログラム実行におけるアクセス発生リソースとして類推する処理を実行する構成であることを特徴とする。   Furthermore, in one embodiment of the access control rule generation device of the present invention, the relevance information between resources applied in the execution trace analysis processing unit is information regarding relevance of the same type of resource, and the execution trace The analysis processing unit is configured to execute a process of analogizing a resource of the same type as a resource in which resource access has occurred during execution of the program as an access occurrence resource in program execution.

さらに、本発明のアクセス制御ルール生成装置の一実施態様において、前記実行トレース解析処理部において適用するリソース間の関連性情報は、同一カテゴリのネットワークポートを関連性のあるリソースとする情報であり、前記実行トレース解析処理部は、前記プログラムの実行におけるリソースアクセスの発生したネットワークポートと同一カテゴリのネットワークポートをプログラム実行におけるアクセス発生リソースとして類推する処理を実行する構成であることを特徴とする。   Furthermore, in one embodiment of the access control rule generation device of the present invention, the relevance information between resources applied in the execution trace analysis processing unit is information regarding network ports of the same category as related resources, The execution trace analysis processing unit is configured to execute a process of analogizing a network port of the same category as a network port in which resource access has occurred during execution of the program as an access occurrence resource in program execution.

さらに、本発明のアクセス制御ルール生成装置の一実施態様において、前記リソースは、情報処理装置内のハードウェア、およびプログラム、システムデータ、ユーザデータを含むソフトゥェアを含むことを特徴とする。   Furthermore, in one embodiment of the access control rule generation device of the present invention, the resource includes hardware in the information processing device and software including a program, system data, and user data.

さらに、本発明の第2の側面は、
情報処理装置のリソースに対するアクセス制御ルールを生成するアクセス制御ルール生成方法であり、
アクセス制御ルールの適用対象プログラムを実行し、リソースアクセス履歴情報を含むプログラム実行トレースを取得し、予め設定されたリソース間の関連性情報に基づいて、前記プログラムの実行における各リソースのアクセス有無を推定する実行トレース解析処理ステップと、
各リソース毎に予め設定されたアクセス発生有無各々に対応する初期確率と、その尤度情報と、フォールスポジティブおよびフォールスネガティブのバランス調整に基づいて設定した効用関数を入力するパラメータ入力処理ステップと、
前記実行トレース解析処理において取得したプログラム実行時における各リソースのアクセス有無情報と、前記パラメータ入力処理において入力する初期確率、尤度情報、および効用関数に基づくベイズ推定処理により各リソース毎のアクセス制御ルールを設定するセキュリティポリシ生成ステップと、
を有することを特徴とするアクセス制御ルール生成方法にある。
Furthermore, the second aspect of the present invention provides
An access control rule generation method for generating an access control rule for a resource of an information processing device,
Executes the program subject to access control rules, obtains a program execution trace including resource access history information, and estimates the presence / absence of access to each resource in the execution of the program based on the relevance information between resources set in advance Execution trace analysis processing step to perform,
A parameter input processing step for inputting an initial probability corresponding to each occurrence of access preset for each resource, its likelihood information, and a utility function set based on a balance adjustment of false positive and false negative,
Access control rules for each resource by Bayesian estimation processing based on access probability information of each resource at the time of program execution acquired in the execution trace analysis processing, initial probability input in the parameter input processing, likelihood information, and utility function A security policy generation step for setting
There is an access control rule generation method characterized by comprising:

さらに、本発明のアクセス制御ルール生成方法の一実施態様において、前記セキュリティポリシ生成ステップは、前記実行トレース解析処理において取得したプログラム実行時における各リソースのアクセス有無情報と、前記パラメータ入力処理において入力する初期確率、尤度情報とに基づいて、各リソースの正当アクセスの事後確率と、不正アクセスの事後確率を算出する確率演算処理ステップと、前記確率演算処理ステップにおいて算出した事後確率データと、前記パラメータ入力処理ステップにおいて入力した効用関数に基づいて、各リソース毎のアクセス禁止に伴う期待損失値と、アクセス許可に伴う期待損失値を算出する期待損失演算処理ステップと、前記期待損失演算処理ステップにおいて算出した期待損失値に基づいて、各リソース毎のアクセス制御ルールを設定するアクセス判断処理ステップと、を有することを特徴とする。   Furthermore, in one embodiment of the access control rule generation method of the present invention, the security policy generation step inputs the access presence / absence information of each resource at the time of program execution acquired in the execution trace analysis process and the parameter input process. Based on the initial probability and likelihood information, the posterior probability of legitimate access of each resource, the probability calculation processing step for calculating the posterior probability of unauthorized access, the posterior probability data calculated in the probability calculation processing step, and the parameter Based on the utility function input at the input processing step, an expected loss value associated with access prohibition for each resource, an expected loss calculation step for calculating an expected loss value associated with access permission, and calculated at the expected loss calculation processing step Each based on expected loss value An access determination process step of setting access control rules for each source, and having a.

さらに、本発明のアクセス制御ルール生成方法の一実施態様において、前記フォールスポジティブおよびフォールスネガティブのバランス調整に基づいて設定した効用関数は、それぞれフォールスポジティブ効用関数fp()と、フォールスネガティブ効用関数fn()であり、前記効用関数fp()、fn()は、バランス設定のための重み付け係数を決定する重み関数ω(fp)、ω(fn)を含み、該重み関数ω(fp)、ω(fn)は、アクセス制御ルールの適用対象となるプログラム、または機器の少なくともいずれかに基づいて設定される関数であり、該重み関数ω(fp)、ω(fn)の設定により、フォールスポジティブ優先、あるいはフォールスネガティブ優先の設定調整を行った効用関数であることを特徴とする。   Furthermore, in one embodiment of the access control rule generation method of the present invention, the utility functions set based on the balance adjustment of the false positive and the false negative are respectively the false positive utility function fp () and the false negative utility function fn ( The utility functions fp () and fn () include weighting functions ω (fp) and ω (fn) that determine weighting coefficients for setting the balance, and the weighting functions ω (fp) and ω ( fn) is a function set based on at least one of the program or device to which the access control rule is applied, and false positive priority is set by setting the weight functions ω (fp) and ω (fn). Or it is the utility function which performed setting adjustment of false negative priority.

さらに、本発明のアクセス制御ルール生成方法の一実施態様において、前記効用関数fp()、fn()は、重み付け係数の比:ω(fn)/ω(fp)>1を満足するフォールスポジティブ優先設定とした効用関数であることを特徴とする。   Furthermore, in one embodiment of the access control rule generation method of the present invention, the utility functions fp () and fn () have a false positive priority satisfying a ratio of weighting coefficients: ω (fn) / ω (fp)> 1. It is a utility function that has been set.

さらに、本発明のアクセス制御ルール生成方法の一実施態様において、前記効用関数fp()、fn()は、重み付け係数の比:ω(fp)/ω(fn)>1を満足するフォールスネガティブ優先設定とした効用関数であることを特徴とする。   Furthermore, in one embodiment of the access control rule generation method of the present invention, the utility functions fp () and fn () are false negative priority satisfying a ratio of weighting coefficients: ω (fp) / ω (fn)> 1. It is a utility function that has been set.

さらに、本発明のアクセス制御ルール生成方法の一実施態様において、前記トレース解析処理ステップにおいて適用するリソース間の関連性情報は、同一ディレクトリにあるリソースを関連性ありとする情報であり、前記実行トレース解析処理ステップは、前記プログラムの実行におけるリソースアクセスの発生したリソースと同一ディレクトリにあるリソースをプログラム実行におけるアクセス発生リソースとして類推する処理を実行することを特徴とする。   Furthermore, in one embodiment of the access control rule generation method of the present invention, the relevance information between resources applied in the trace analysis processing step is information that makes the resources in the same directory relevant, and the execution trace The analysis processing step is characterized by executing a process of analogizing a resource in the same directory as the resource in which the resource access has occurred in the execution of the program as an access occurrence resource in the program execution.

さらに、本発明のアクセス制御ルール生成方法の一実施態様において、前記実行トレース解析処理ステップにおいて適用するリソース間の関連性情報は、同一種別のリソースを関連性ありとする情報であり、前記実行トレース解析処理ステップは、前記プログラムの実行におけるリソースアクセスの発生したリソースと同一種別のリソースをプログラム実行におけるアクセス発生リソースとして類推する処理を実行することを特徴とする。   Furthermore, in one embodiment of the access control rule generation method of the present invention, the relevance information between resources applied in the execution trace analysis processing step is information that makes the same type of resource relevant, and the execution trace The analysis processing step is characterized by executing a process of analogizing a resource of the same type as a resource in which resource access has occurred during execution of the program as an access occurrence resource in program execution.

さらに、本発明のアクセス制御ルール生成方法の一実施態様において、前記実行トレース解析処理ステップにおいて適用するリソース間の関連性情報は、同一カテゴリのネットワークポートを関連性のあるリソースとする情報であり、前記実行トレース解析処理ステップは、前記プログラムの実行におけるリソースアクセスの発生したネットワークポートと同一カテゴリのネットワークポートをプログラム実行におけるアクセス発生リソースとして類推する処理を実行することを特徴とする。   Furthermore, in one embodiment of the access control rule generation method of the present invention, the relevance information between resources applied in the execution trace analysis processing step is information regarding network ports of the same category as related resources, The execution trace analysis processing step executes a process of analogizing a network port in the same category as a network port in which resource access has occurred in the execution of the program as an access occurrence resource in program execution.

さらに、本発明の第3の側面は、
情報処理装置のリソースに対するアクセス制御ルール生成処理を実行するコンピュータ・プログラムであり、
アクセス制御ルールの適用対象プログラムを実行し、リソースアクセス履歴情報を含むプログラム実行トレースを取得し、予め設定されたリソース間の関連性情報に基づいて、前記プログラムの実行における各リソースのアクセス有無を推定する実行トレース解析処理ステップと、
各リソース毎に予め設定されたアクセス発生有無各々に対応する初期確率と、その尤度情報と、フォールスポジティブおよびフォールスネガティブのバランス調整に基づいて設定した効用関数を入力するパラメータ入力処理ステップと、
前記実行トレース解析処理において取得したプログラム実行時における各リソースのアクセス有無情報と、前記パラメータ入力処理において入力する初期確率、尤度情報、および効用関数に基づくベイズ推定処理により各リソース毎のアクセス制御ルールを設定するセキュリティポリシ生成ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
Furthermore, the third aspect of the present invention provides
A computer program for executing access control rule generation processing for resources of an information processing device,
Executes the program subject to access control rules, obtains a program execution trace including resource access history information, and estimates the presence / absence of access to each resource in the execution of the program based on the relevance information between resources set in advance Execution trace analysis processing step to perform,
A parameter input processing step for inputting an initial probability corresponding to each occurrence of access preset for each resource, its likelihood information, and a utility function set based on a balance adjustment of false positive and false negative,
Access control rules for each resource by Bayesian estimation processing based on access probability information of each resource at the time of program execution acquired in the execution trace analysis processing, initial probability input in the parameter input processing, likelihood information, and utility function A security policy generation step for setting
There is a computer program characterized by comprising:

なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、CDやFD、MOなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。   The computer program of the present invention is, for example, a storage medium or communication medium provided in a computer-readable format to a computer system capable of executing various program codes, such as a CD, FD, or MO. It is a computer program that can be provided by a recording medium or a communication medium such as a network. By providing such a program in a computer-readable format, processing corresponding to the program is realized on the computer system.

本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。   Other objects, features, and advantages of the present invention will become apparent from a more detailed description based on embodiments of the present invention described later and the accompanying drawings. In this specification, the system is a logical set configuration of a plurality of devices, and is not limited to one in which the devices of each configuration are in the same casing.

本発明の構成によれば、情報家電、PC等のさまざまな情報処理装置に搭載するアクセス制御ルールの生成において、プログラム実行トレースによって各リソースのアクセス履歴情報を取得するとともに、ディレクトリの同一性、種別同一性、カテゴリ同一のネットワークポートなどの情報等のリソース関連性に基づいて、プログラム実行時の各リソースに対するアクセス有無を類推し、かつ、アクセス制御ルールの適用プログラム、ユーザ、機器等の使用環境に応じてバランス設定した効用関数、具体的には、フォールスポジティブおよびフォールスネガティブのバランスを調整した効用関数を適用してベイズ推定に基づくアクセス制御ルールを設定する構成としたので、情報家電、PC等の様々な情報処理装置における使用環境に応じた最適なアクセス制御ルールの効率的な自動生成処理が可能となる。   According to the configuration of the present invention, in the generation of access control rules mounted on various information processing apparatuses such as information appliances and PCs, access history information of each resource is acquired by a program execution trace, and the identity and type of the directory Based on resource relevance, such as information on network ports with the same identity and category, the presence or absence of access to each resource at the time of program execution is inferred, and the use environment of the application program, user, device, etc. of the access control rule The utility function set according to the balance, specifically, the utility function that adjusts the balance of false positive and false negative is applied to set the access control rule based on Bayesian estimation. According to the usage environment of various information processing devices Efficient automatic generation processing of a suitable access control rules can be performed.

また、本発明の構成によれば、フォールスポジティブおよびフォールスネガティブのバランス調整に基づいて設定した効用関数を入力し、このパラメータに基づいてアクセス制御ルールを設定する構成としたので、フォールスポジティブ優先設定、あるいはフォールスネガティブ優先設定など、アクセス制御ルールの適用対象となるプログラムや機器、などの使用環境に応じた任意の設定が可能であり、要求に応じた最適なアクセス制御ルールをパラメータの変更のみで容易に生成することが可能となる。   Further, according to the configuration of the present invention, the utility function set based on the balance adjustment of false positive and false negative is input, and the access control rule is set based on this parameter. Or, it is possible to make arbitrary settings according to the usage environment such as programs and devices to which the access control rules are applied, such as false negative priority settings, and it is easy to change the optimal access control rules according to the request only by changing the parameters. Can be generated.

さらに、本発明の構成によれば、プログラムの実行トレースの取得においてアクセスの有無の判定をするのみならず、リソースの関連性、具体的には、
(1)プログラム実行トレース中にアクセスリソースとして記録されたアクセスファイルと同じディレクトリにあるファイルを関連性のあるファイルとして抽出する方式、
(2)プログラム実行トレース中にアクセスリソースとして記録されたアクセスファイルと同じ種別のファイルやデバイスを関連性のあるファイル、デバイスとして抽出する方式、
(3)プログラム実行トレース中にアクセスリソースとして記録されたネットワークポートと同じカテゴリにあるポートを抽出する方式、
これらいずれかの方式あるいはこれらの組み合わせを適用して各リソースのアクセス有無の類推を実行する構成としたので、プログラムの実行トレースにおける実際のアクセスの発生の有無に関わらず、情報処理装置の有する各リソースについてのアクセス類推が可能であり、類推したアクセス有無に基づくアクセス制御ルールを生成する構成としたので、効率的に、かつ精度の高いアクセス制御ルールの生成が可能となる。
Furthermore, according to the configuration of the present invention, not only the presence / absence of access in acquiring the execution trace of the program, but also the relevance of the resource, specifically,
(1) A method of extracting a file in the same directory as an access file recorded as an access resource during a program execution trace as a related file,
(2) A method of extracting a file or device of the same type as the access file recorded as an access resource during the program execution trace as a related file or device,
(3) A method for extracting a port in the same category as the network port recorded as the access resource during the program execution trace,
Since any one of these methods or a combination of these is applied to execute the analogy of whether or not each resource is accessed, each information processing apparatus has each regardless of whether or not an actual access occurs in the program execution trace. Since access analogy for resources is possible and an access control rule is generated based on the presence / absence of analogy access, an access control rule can be generated efficiently and with high accuracy.

以下、図面を参照しながら本発明のアクセス制御ルール生成装置、およびアクセス制御ルール生成方法、並びにコンピュータ・プログラムについて詳細に説明する。   Hereinafter, an access control rule generation device, an access control rule generation method, and a computer program according to the present invention will be described in detail with reference to the drawings.

まず、本発明のアクセス制御ルール生成装置、およびアクセス制御ルール生成方法を適用して生成したアクセス制御ルールの適用処理構成について、図1を参照して説明する。図1は、情報家電、PC等の情報処理装置における様々なプログラムの実行形態を説明する図である。図1に示すように情報処理装置では、ユーザの実行するデータ処理、例えば文書作成や、データベース検索、通信処理、ゲームなど、様々なプログラムが動作する。図1には、プログラムA110、プログラムB120、プログラムA130を示してある。   First, an application processing configuration of an access control rule generated by applying the access control rule generation device and the access control rule generation method of the present invention will be described with reference to FIG. FIG. 1 is a diagram for explaining execution forms of various programs in an information processing apparatus such as an information home appliance and a PC. As shown in FIG. 1, in the information processing apparatus, various programs such as data processing executed by the user, such as document creation, database search, communication processing, and a game, operate. FIG. 1 shows a program A110, a program B120, and a program A130.

各プログラムは自身が動作するために必要なリソース、すなわち、システムファイルデータファイル、ネットワークポート、ハードディスク、CPU等のハードウェアデバイスを、ライブラリやオペレーティングシステム(OS)150を経由してアクセスする。図1には各プログラムの実行においてアクセスするリソースとして、デバイスA〜C・・からなるデバイス152、ネットワーク接続に適用するソケットA〜C・・からなるネットワークソケット153、システムファイルデータファイル等のファイルA〜C・・からなるファイル154を例示している。   Each program accesses a resource necessary for its operation, that is, a hardware device such as a system file data file, a network port, a hard disk, and a CPU via a library and an operating system (OS) 150. FIG. 1 shows, as resources to be accessed in the execution of each program, a device 152 consisting of devices A to C,..., A network socket 153 consisting of sockets A to C applied to network connection, and a file A such as a system file data file. A file 154 consisting of .about.C .. is illustrated.

各プログラムの実行におけるこれらのリソースに対するアクセスについての正当性を判断し、正当でないアクセスであると判断した場合にアクセスを拒否する制御機構として、図1に示すアクセス制御部が設定される。   The access control unit shown in FIG. 1 is set as a control mechanism that judges the legitimacy of access to these resources in the execution of each program and rejects access when it is judged that the access is not legitimate.

図1には、アクセス制御部として、各プログラム対応のアクセス制御機構であるプログラム対応アクセス制御部A111、プログラム対応アクセス制御部B121、プログラム対応アクセス制御部C131、および、オペレーティングシステム(OS)150側に設定されたOS側アクセス制御部151を示してある。   In FIG. 1, as an access control unit, a program-compatible access control unit A111, a program-compatible access control unit B121, a program-compatible access control unit C131, and an operating system (OS) 150 side which are access control mechanisms corresponding to each program are shown. The set OS side access control unit 151 is shown.

例えばプログラムA110を実行する際のユーザの操作、入力に基づく各種リソースに対するアクセス要求の正当性、妥当性については、プログラム対応アクセス制御部A111、およびOS側アクセス制御部151において判定され、判定結果に基づいてリソースに対するアクセスの許可あるいは禁止処理がなされる。プログラムB120を実行する際のユーザの操作、入力に基づく各種リソースに対するアクセス要求の正当性、妥当性については、プログラム対応アクセス制御部B121、およびOS側アクセス制御部151において判定され、判定結果に基づいてリソースに対するアクセスの許可あるいは禁止処理がなされる。   For example, the validity and validity of access requests for various resources based on user operations and inputs when executing the program A110 are determined by the program-compatible access control unit A111 and the OS-side access control unit 151, and the determination result is Based on this, access permission or prohibition processing for the resource is performed. The validity and validity of access requests for various resources based on user operations and inputs when executing the program B120 are determined by the program-compatible access control unit B121 and the OS-side access control unit 151, and based on the determination results The access is permitted or prohibited for the resource.

なお、図には、プログラム対応のアクセス制御部と、OS側のアクセス制御部とを持つ構成例を示してあるが、これらのいずれか一方のアクセス制御部を持つ構成としてもよい。   In the figure, a configuration example having an access control unit corresponding to a program and an access control unit on the OS side is shown, but a configuration having any one of these access control units may be adopted.

これらのアクセス制御部は、アクセスの正当性を判断する指針としてのセキュリティポリシを記憶部に保持し、セキュリティポリシに従ってユーザの入力、操作に基づくアクセス要求についての正当性、妥当性を判定する。セキュリティポリシは、情報処理装置の持つハードウェア、およびユーザデータを含む各種ソフトウェアからなる情報処理装置においてアクセス可能な各リソースに対するアクセスルールを定めたデータである。   These access control units hold a security policy as a guideline for determining the legitimacy of access in the storage unit, and determine the legitimacy and validity of an access request based on user input and operation according to the security policy. The security policy is data that defines an access rule for each resource that can be accessed in an information processing apparatus that includes hardware included in the information processing apparatus and various types of software including user data.

以下に説明する本発明のアクセス制御ルール生成装置、およびアクセス制御ルール生成方法を適用して、アクセスルールの生成処理が実行される。本発明のアクセス制御ルール生成処理は、アクセスルールを設定する対象となるプログラムの実行処理を伴う自動生成処理として行われる。   An access rule generation process is executed by applying the access control rule generation device and the access control rule generation method of the present invention described below. The access control rule generation process according to the present invention is performed as an automatic generation process that accompanies an execution process of a program for which an access rule is set.

図2に本発明のアクセス制御ルール生成装置の構成を示すブロック図を示す。なお、図2に示す構成図は、アクセス制御ルール生成装置の持つ処理機能を示す図である。具体的なハードウェアとしては、いわゆるデータ処理部としてのCPU、メモリ領域としてのRAM,ROM、データ入力部、データ出力部等を備えたPC等の情報処理装置によって構成可能である。PC等の情報処理装置において説明するアクセス制御ルール生成処理シーケンスに従った処理を実行することにより、アクセス制御ルール生成処理が行われる。アクセス制御ルール生成処理シーケンスは、コンピュータ・プログラムとして設定可能である。アクセス制御ルール生成処理シーケンスを記録したコンピュータ・プログラムに従ってCPU制御の下に処理を実行することで、アクセス制御ルール自動生成が実行される。図2に示す構成図は、アクセス制御ルールの自動生成処理において実行される各処理を個別に機能ブロックとして示したブロック図である。   FIG. 2 is a block diagram showing the configuration of the access control rule generation device of the present invention. The configuration diagram shown in FIG. 2 is a diagram illustrating processing functions of the access control rule generation device. Specific hardware can be configured by an information processing apparatus such as a CPU including a CPU as a so-called data processing unit, a RAM, a ROM as a memory area, a data input unit, a data output unit, and the like. An access control rule generation process is performed by executing a process according to an access control rule generation process sequence described in an information processing apparatus such as a PC. The access control rule generation processing sequence can be set as a computer program. By executing processing under CPU control in accordance with a computer program that records the access control rule generation processing sequence, access control rule automatic generation is executed. The block diagram shown in FIG. 2 is a block diagram showing each process executed in the automatic generation process of the access control rule as a function block individually.

図2を参照して本発明のアクセス制御ルール生成処理について説明する。アクセス制御ルール生成装置は、図2に示すように、アクセスルールを設定する対象となるプログラムの実行トレースの取得および解析を行なう実行トレース解析処理部210、ユーザからの各種パラメータの入力部としてのパラメータ入力処理部220、実行トレース結果および入力パラメータからセキュリティポリシを生成するセキュリティポリシ生成処理部230から構成される。   The access control rule generation process of the present invention will be described with reference to FIG. As shown in FIG. 2, the access control rule generation device includes an execution trace analysis processing unit 210 that acquires and analyzes an execution trace of a program for which an access rule is set, and parameters as input units for various parameters from a user. The input processing unit 220 includes a security policy generation processing unit 230 that generates a security policy from execution trace results and input parameters.

実行トレース解析処理部210は、リソースアクセス記録処理部211、リソースアクセス類推処理部212からなる。これらは、ハードウェアとしては、CPU、メモリ、RAM,ROM等の二次記憶装置等から構成される。パラメータ入力処理部220は、確率初期分布入力処理部221、効用関数入力処理部214からなる。これらはハードウェアとしては、CPU、メモリ、二次記憶装置等から構成される。セキュリティポリシ生成処理部230は、確率演算処理部231、期待損失値演算処理部232、アクセス判断処理部233、セキュリティポリシ変換処理部234を有する。これらはCPU、メモリ、二次記憶装置等から構成される。   The execution trace analysis processing unit 210 includes a resource access record processing unit 211 and a resource access analogy processing unit 212. These are composed of a secondary storage device such as a CPU, a memory, a RAM, and a ROM as hardware. The parameter input processing unit 220 includes a probability initial distribution input processing unit 221 and a utility function input processing unit 214. These are composed of a CPU, a memory, a secondary storage device, and the like as hardware. The security policy generation processing unit 230 includes a probability calculation processing unit 231, an expected loss value calculation processing unit 232, an access determination processing unit 233, and a security policy conversion processing unit 234. These are composed of a CPU, a memory, a secondary storage device and the like.

実行トレース解析処理部210におけるリソースアクセス記録処理部211は、アクセスルールを設定する対象となるプログラムを実行過程におけるリソースアクセスの実行トレース結果を記録し、取得した実行トレース結果をリソースアクセス類推処理部212に提供する。   The resource access record processing unit 211 in the execution trace analysis processing unit 210 records the execution trace result of the resource access in the course of executing the program for which the access rule is set, and uses the acquired execution trace result as the resource access analogy processing unit 212. To provide.

リソースアクセス類推処理部212は、実行トレース解析処理部210から受領したプログラム実行トレース結果からリソースアクセスの関連性を抽出する。リソースアクセス関連性の抽出方法としては、例えば、
(1)プログラム実行トレース中にアクセスリソースとして記録されたアクセスファイルと同じディレクトリにあるファイルを関連性のあるファイルとして抽出する方式、
(2)プログラム実行トレース中にアクセスリソースとして記録されたアクセスファイルと同じ種別のファイルやデバイスを関連性のあるファイル、デバイスとして抽出する方式、
(3)プログラム実行トレース中にアクセスリソースとして記録されたネットワークポートと同じカテゴリにあるポートを抽出する方式、
これらの各方式のいずれかを適用する、あるいは組み合わせて適用する方法、総合的に適用する方法等がある。
The resource access analogy processing unit 212 extracts resource access relevance from the program execution trace result received from the execution trace analysis processing unit 210. As a method for extracting resource access relevance, for example,
(1) A method of extracting a file in the same directory as an access file recorded as an access resource during a program execution trace as a related file,
(2) A method of extracting a file or device of the same type as the access file recorded as an access resource during the program execution trace as a related file or device,
(3) A method for extracting a port in the same category as the network port recorded as the access resource during the program execution trace,
There are a method of applying any of these methods, a method of applying them in combination, a method of applying them comprehensively, and the like.

なお、ファイルの種別とは、ファイルのデータ形式、例えばテキストデータファイル、音声データファィル、ビデオデータファイル、実行ファイル等のデータ形式に基づく種別、あるいは属性、すなわち、システム用ファィル、ユーザ用ファィル等の属性に基づく種別によって各ファイルを分類し、プログラム実行トレース中にアクセスリソースとして記録されたアクセスファイルと同じ種別のファイルを関連性のあるファイルとして抽出する。   The file type refers to a file data format, for example, a type based on a data format such as a text data file, an audio data file, a video data file, an execution file, or an attribute, that is, a system file, a user file, etc. Each file is classified according to the type based on the attribute, and a file of the same type as the access file recorded as the access resource during the program execution trace is extracted as a related file.

また、デバイスの種別とは、デバイスの種類、すなわち、HDD、FDD、ネットワーク、音声、ビデオ、メモリ、クロック等の個々のデバイスを区分して設定する。さらに、ネットワークポートのカテゴリ分けは、IANA(Internet Assigned Numbers Authority)が定義しているカテゴリ、すなわち、[Well−known],[Registered],[Dynamic]の各ポートや、TCP/IPを実装した装置で利用されているカテゴリ区分を適用する。   The device type is set by classifying device types, that is, individual devices such as HDD, FDD, network, audio, video, memory, and clock. Furthermore, network ports are categorized into categories defined by IANA (Internet Assigned Numbers Authority), that is, [Well-known], [Registered], [Dynamic] ports, and devices that implement TCP / IP. Apply the category classification used in.

なお、ファイル、デバイス、ネットワークソケット(ポート)等のリソースの区分については、上記設定に限らず、様々な設定が可能であり、任意の設定に基づいて関連性の有無を判定することが可能である。   Note that the resource classification such as file, device, and network socket (port) is not limited to the above settings, and various settings are possible, and it is possible to determine the presence or absence of relevance based on any setting. is there.

パラメータ入力処理部220は確率初期分布入力処理部221、効用関数入力処理部222からなる。確率初期分布入力処理部221では、初期確率P(X)と尤度P(D|X)から構成される初期確率分布をユーザ入力に基づいて、あるいは記憶手段から受領し、セキュリティポリシ生成部230の確率演算処理部231に出力する。効用関数入力処理部222は、リスクの大きさとフォールスポジティブ(false positive)と、フォールスネガティブ(false negative)のバランスを表現する効用関数U(A|X)をユーザ入力に基づいて、あるいは記憶手段から受領し、セキュリティポリシ生成部230の期待損失値演算処理部232に出力する。   The parameter input processing unit 220 includes a probability initial distribution input processing unit 221 and a utility function input processing unit 222. The initial probability distribution input processing unit 221 receives an initial probability distribution composed of initial probabilities P (X) and likelihoods P (D | X) based on user input or from storage means, and generates a security policy generation unit 230. To the probability calculation processing unit 231. The utility function input processing unit 222 generates a utility function U (A | X) that expresses the balance between risk magnitude, false positive, and false negative based on user input or from storage means. It is received and output to the expected loss value calculation processing unit 232 of the security policy generation unit 230.

フォールスネガティブ(false negative)とは不正アクセスを正常アクセスと見なしてしまう誤った処理態様であり、設定されたアクセスルールに基づくアクセス制御を実行した場合に、フォールスネガティブ(false negative)が発生すると、禁止すべきリソースアクセスを許可してしまうということである。フォールスポジティブ(false positive)は、正常アクセスを不正アクセスと見なす誤った処理態様であり、設定されたアクセスルールに基づくアクセス制御を実行した場合に、フォールスポジティブ(false positive)が発生すると、許可すべきリソースアクセスを禁止してしまうということになる。   False negative is an erroneous processing mode that regards unauthorized access as normal access. When access control based on a set access rule is executed, if false negative occurs, it is prohibited. It means that resource access that should be allowed is permitted. False positive is an erroneous processing mode in which normal access is regarded as unauthorized access. When access control based on a set access rule is executed, if false positive occurs, it should be permitted. This means that resource access is prohibited.

完璧なアクセスルールの生成を行うことは困難であり、フォールスポジティブ(false positive)が発生した場合のリスクの大きさ、フォールスネガティブ(false negative)が発生した場合のリスクの大きさを考慮したアクセスルールを設定することが必要となる。   It is difficult to generate a perfect access rule, and an access rule that considers the magnitude of risk when a false positive occurs and the magnitude of the risk when a false negative occurs It is necessary to set.

なお、本発明のアクセス制御ルール生成処理においては、ベイズ理論を適用した処理を行っている。ベイズ理論は、不特定の状況(=不完全情報)下における特定事象の発生確率を予測する手法である。すなわち、結果(状況)に基づいて原因(事象)の発生確率を推定する統計的推論手法である。   In the access control rule generation process of the present invention, a process applying Bayesian theory is performed. Bayesian theory is a technique for predicting the probability of occurrence of a specific event under unspecified circumstances (= incomplete information). That is, it is a statistical inference method for estimating the occurrence probability of the cause (event) based on the result (situation).

ベイズ理論の概要について簡単に説明する。ある確率変数Xに対する初期確率をP(X)とする。例えばX1=喫煙者、X2=非喫煙者としたとき、喫煙者である確率P(X1)=0.4、非喫煙者である確率P(X2)=0.6等が事前確率として設定される。   An outline of Bayesian theory will be briefly explained. Let P (X) be the initial probability for a certain random variable X. For example, when X1 = smoker and X2 = non-smoker, the probability P (X1) = 0.4 of being a smoker and the probability P (X2) = 0.6 of being a non-smoker are set as prior probabilities. The

このとき、事象Dが観測されたときの確率変数Xの尤度、すなわち、確率変数Xの場合にDが観測される確率をP(D|X)とする。具体的には、D1=肺がんとしたとき、尤度P(D1|X1)は、喫煙者が肺がんにかかる確率を示し、尤度P(D1|X2)は、非喫煙者が肺がんにかかる確率を示す。例えば、
尤度P(D1|X1)=0.09
尤度P(D1|X2)=0.03
のように算出される。
At this time, the likelihood of the random variable X when the event D is observed, that is, the probability that D is observed in the case of the random variable X is P (D | X). Specifically, when D1 = lung cancer, the likelihood P (D1 | X1) indicates the probability that the smoker will have lung cancer, and the likelihood P (D1 | X2) indicates the probability that the non-smoker will have lung cancer. Indicates. For example,
Likelihood P (D1 | X1) = 0.09
Likelihood P (D1 | X2) = 0.03
It is calculated as follows.

また、観測結果Dの元での確率変数Xに対する事後確率をP(X|D)とする。これは、すなわち事象Dが観測された場合の確率変数Xの確率を示す。具体的には、肺がんの人が喫煙者である事後確率は、P(X1|D)として示される。   Further, the posterior probability for the random variable X under the observation result D is P (X | D). This indicates the probability of the random variable X when event D is observed. Specifically, the posterior probability that a person with lung cancer is a smoker is indicated as P (X1 | D).

肺がんの人が喫煙者である事後確率は、P(X1|D)の計算は、下記条件、すなわち、
喫煙者である初期確率P(X1)=0.4
非喫煙者である初期確率P(X2)=0.6
尤度P(D1|X1)=0.09
尤度P(D1|X2)=0.03
とした場合、
The posterior probability that a person with lung cancer is a smoker is calculated by the following condition: P (X1 | D)
Initial probability P (X1) = 0.4
Initial probability P (X2) = 0.6 non-smoker
Likelihood P (D1 | X1) = 0.09
Likelihood P (D1 | X2) = 0.03
If

P(X1|D)=0.4×0.09/(0.4×0.09+0.6×0.03)
≒0.6667
となる。
このようにベイズ理論は、結果に基づいて、原因の確率を推定する理論である。
P (X1 | D) = 0.4 × 0.09 / (0.4 × 0.09 + 0.6 × 0.03)
≒ 0.6667
It becomes.
Thus, the Bayesian theory is a theory for estimating the cause probability based on the result.

本発明のアクセス制御ルール生成処理においては、初期確率P(X)と尤度P(D|X)が、リソース毎に定義される。また、損失(リスク)の大きさを表す値と、アクセスルール適用先(プログラムや機器)の要求に基づいたフォールスポジティブ(false positive)、フォールスネガティブ(false negative)のバランスを表す重み付け係数から構成される関数として設定される効用関数U(A|X)についても、リソース毎に定義される。   In the access control rule generation process of the present invention, an initial probability P (X) and likelihood P (D | X) are defined for each resource. Also, it is composed of a value representing the magnitude of loss (risk) and a weighting coefficient representing the balance of false positive and false negative based on the request of the access rule application destination (program or device). The utility function U (A | X) set as a function is also defined for each resource.

本方式における確率モデルを表現するためのパラメータ:X,D,Aは、下記の定義を持つパラメータである。
X={正当アクセス(X1),不正アクセス(X2)}
D={事象が観測できた(D1),事象が観測できない(D2)}
A={アクセス禁止(A1),アクセス許可(A2)}
となる。
Parameters for expressing the probability model in this method: X, D, and A are parameters having the following definitions.
X = {legitimate access (X1), unauthorized access (X2)}
D = {Event could be observed (D1), event could not be observed (D2)}
A = {Access prohibition (A1), Access permission (A2)}
It becomes.

よって本確率モデルにおいて、初期確率P(X)は、P(X1),P(X2)の2種類となり、尤度はP(D1|X1),P(D1|X2),P(D2|X1),P(D2|X2)の4種類となる。初期確率P(X1),P(X2)は、事前知識がない状態での各リソースに対応する不正アクセスの確率および正当アクセスの確率を示す。   Therefore, in this probability model, the initial probability P (X) has two types, P (X1) and P (X2), and the likelihoods are P (D1 | X1), P (D1 | X2), and P (D2 | X1). ), P (D2 | X2). The initial probabilities P (X1) and P (X2) indicate the probability of unauthorized access and the probability of proper access corresponding to each resource in the absence of prior knowledge.

尤度P(D1|X1),P(D1|X2),P(D2|X1),P(D2|X2)は、不正アクセスおよび正当アクセスの場合に実行トレース解析処理部210における推論処理において利用される各方式の事象の観測結果を示す条件付き確率を表す。   The likelihoods P (D1 | X1), P (D1 | X2), P (D2 | X1), and P (D2 | X2) are used in the inference process in the execution trace analysis processing unit 210 in the case of unauthorized access and legitimate access. Represents a conditional probability indicating the observation result of each type of event.

初期確率P(X1),P(X2)、および尤度P(D1|X1),P(D1|X2),P(D2|X1),P(D2|X2)の例を図3に示す。これらの確率分布は過去の攻撃事例を分析すること等で得ることができる。   FIG. 3 shows examples of initial probabilities P (X1), P (X2) and likelihoods P (D1 | X1), P (D1 | X2), P (D2 | X1), P (D2 | X2). These probability distributions can be obtained by analyzing past attack cases.

図3に示す例において、例えばリソースとしてのファイルAは、種別がシステムファイルであり、初期確率は、
P(X1)=0.9
P(X2)=0.1
である。
すなわち、ファイルAに対するアクセスが正当である初期確率は0.9であり、不正である初期確率は0.1である。
In the example shown in FIG. 3, for example, the file A as a resource is a system file of type, and the initial probability is
P (X1) = 0.9
P (X2) = 0.1
It is.
That is, the initial probability that the access to the file A is valid is 0.9, and the initial probability that it is illegal is 0.1.

また、尤度は、
P(D1|X1)=0.95
P(D1|X2)=0.05
P(D2|X1)=0.1
P(D2|X2)=0.9
である。
すなわち、ファイルAに対する正当アクセスが観察される確率P(D1|X1)=0.95、ファイルAに対する不正アクセスが観察される確率P(D1|X2)=0.05、ファイルAに対する正当アクセスが観察されない確率P(D2|X1)=0.1、ファイルAに対する不正アクセスが観察されない確率P(D2|X2)=0.9である。
The likelihood is
P (D1 | X1) = 0.95
P (D1 | X2) = 0.05
P (D2 | X1) = 0.1
P (D2 | X2) = 0.9
It is.
That is, the probability P (D1 | X1) = 0.95 that the legitimate access to the file A is observed, the probability P (D1 | X2) = 0.05 that the unauthorized access to the file A is observed, and the legitimate access to the file A The probability P (D2 | X1) = 0.1 that is not observed and the probability P (D2 | X2) = 0.9 that unauthorized access to the file A is not observed.

以下、ファイルB、デバイスI,J、ポートX,Y他、アクセスルールの設定対象としてのリソースの個々について、初期確率および尤度が過去の攻撃事例を分析すること等で取得され、これらの情報が、ユーザ入力あるいは記憶部から取得されて、パラメータ入力処理部220の確率処理分布入力処理部211を介して、セキュリティポリシ生成処理部
230の確率演算処理部に入力される。
In the following, the initial probability and likelihood are obtained by analyzing past attack cases, etc. for each of the resources that are the target of setting access rules, such as file B, devices I and J, ports X and Y, etc. Is acquired from the user input or the storage unit, and is input to the probability calculation processing unit of the security policy generation processing unit 230 via the probability processing distribution input processing unit 211 of the parameter input processing unit 220.

効用関数U(A|X)は、A,Xの取りうる値で4通りのパラメータを取るが内容を考慮すると以下のように定義できる。
U(A1|X1)=fp()(false positive時の損失を表す,fp()≦0)
U(A1|X2)=0(適切に禁止時の損失を表す)
U(A2|X1)=0(適切に許可時の損失を表す)
U(A2|X2)=fn()(false negative時の損失を表す,fn()≦0)
The utility function U (A | X) takes four parameters with possible values of A and X, but can be defined as follows in consideration of the contents.
U (A1 | X1) = fp () (representing a loss at the time of false positive, fp () ≦ 0)
U (A1 | X2) = 0 (appropriately represents a loss when prohibited)
U (A2 | X1) = 0 (appropriately represents a loss at the time of permission)
U (A2 | X2) = fn () (representing a loss at the time of false negative, fn () ≦ 0)

以上から、入力すべき効用関数はfp(),fn()の2種類となる。   From the above, there are two types of utility functions to be input, fp () and fn ().

fp(),fn()は、損失(リスク)の大きさを表す値と、適応先の要求に基づいたフォールスポジティブ(false positive)、フォールスネガティブ(false negative)のバランスを表す重み付け係数から構成される効用関数であり、以下のように定義する。   fp () and fn () are composed of a value representing the magnitude of loss (risk) and a weighting coefficient representing the balance between false positive and false negative based on the request of the adaptation destination. This utility function is defined as follows.

fp()=loss(A1|X1)×ω(fp)≦0・・・(式1)
fn()=loss(A2|X2)×ω(fn)≦0・・・(式2)
fp () = loss (A1 | X1) × ω (fp) ≦ 0 (Expression 1)
fn () = loss (A2 | X2) × ω (fn) ≦ 0 (Expression 2)

上記式におけるloss(A|X)は、リソース毎に定義されるアクセスを許可または禁止した場合の損失を定量的に表す損失関数である。具体的には、あるリソースに対する侵害が発生した場合(漏洩、改竄など)にどのくらい損害が発生するかを示す関数である。   The loss (A | X) in the above equation is a loss function that quantitatively represents a loss when access defined for each resource is permitted or prohibited. Specifically, it is a function indicating how much damage occurs when an infringement on a certain resource occurs (leakage, tampering, etc.).

例として、損失関数を被害金額で表す場合、システムファイルやデバイス等が破壊された場合に被る被害額(回収修理費用等)を損失関数として定義することになる。ω(fp),ω(fn)はそれぞれ、フォールスポジティブ(false positive)、フォールスネガティブ(false negative)の重みを表す関数であり、ω(fp)とω(fn)の比を調整することによって、フォールスポジティブ(false positive)優先とした設定、あるいはフォールスネガティブ(false negative)優先とした設定など、生成するアクセスルールの設定を自在に変更することができる。   As an example, when the loss function is represented by the damage amount, the damage amount (collection repair cost, etc.) incurred when the system file or device is destroyed is defined as the loss function. ω (fp) and ω (fn) are functions representing the weights of false positive and false negative, respectively, and by adjusting the ratio of ω (fp) and ω (fn), It is possible to freely change the setting of the access rule to be generated, such as a setting that gives priority to false positive or a setting that gives priority to false negative.

具体的には、フォールスポジティブ(false positive)の優先設定とするためにはω(fn)/ω(fp)>1を満し、フォールスネガティブ(false negative)の優先設定とするためにはω(fp)/ω(fn)>1を満すようにすればよい。   More specifically, ω (fn) / ω (fp)> 1 is satisfied for priority setting of false positive, and ω (f (n) for priority setting of false negative. It is sufficient to satisfy fp) / ω (fn)> 1.

ω(fn)/ω(fp)の値が1より大きくなるにつれてフォールスポジティブ(false positive)の割合は減るが、フォールスネガティブ(false negative)の割合が増え、同様にω(fp)/ω(fn)の値が1より大きくなるにつれてフォールスネガティブ(false negative)の割合は減るが、フォールスポジティブ(false positive)の割合が増える。   The ratio of false positive decreases as the value of ω (fn) / ω (fp) is greater than 1, but the ratio of false negative increases, and similarly ω (fp) / ω (fn As the value of) becomes larger than 1, the ratio of false negative decreases, but the ratio of false positive increases.

重み付けと、フォールスポジティブ(false positive)およびフォールスネガティブ(false negative)の関係を表したグラフを図4に示す。図4において、例えば、フォールスポジティブ(false positive)の重み係数ω(fp)=k1とし、フォールスネガティブ(false negative)の重み係数ω(fn)=k2とした場合、フォールスネガティブ(false negative)の優先領域にポイント301が設定され、この設定によるアクセスルールを生成した場合は、フォールスネガティブ(false negative)を優先したアクセスルールが設定されることになる。   FIG. 4 shows a graph showing the relationship between weighting, false positive and false negative. In FIG. 4, for example, when the false positive weighting factor ω (fp) = k1 and the false negative weighting factor ω (fn) = k2, the priority of the false negative is given priority. When a point 301 is set in the area and an access rule is generated according to this setting, an access rule giving priority to false negative is set.

なお、フォールスポジティブ(false positive)の重み係数を設定する重み係数決定関数ω(fp)と、フォールスネガティブ(false negative)の重み係数設定する重み係数決定関数ω(fn)の各々は相互の依存関係はなく独立した関数として設定可能であり、また、これらの関数はアクセスルール適用先(プログラム、情報処理機器など)に合わせて自由に定義してよい。ただし、効用関数は常に0以下になるような関数であり、損失が大きいほど値は小さくなる(絶対値は大きくなる)。   Note that a weighting factor determination function ω (fp) for setting a false positive weighting factor and a weighting factor determination function ω (fn) for setting a false negative weighting factor are mutually dependent. These functions can be set as independent functions, and these functions may be freely defined according to the access rule application destination (program, information processing device, etc.). However, the utility function is a function that is always 0 or less, and the value decreases as the loss increases (the absolute value increases).

図5に効用関数の要素である損失関数と重み付け関数の例を示す。図5に示すように、損失関数と重み付け関数はリソース毎に定義される。損失関数loss(A|X)は、各リソースに対してアクセスを許可または禁止した場合の損失を定量的に表す損失関数である。図5において、例えばリソースとしてのファイルAに対する正当アクセスを禁止した場合の損失関数は、loss(A1|X1)=−10,000であり、ファイルAに対する不正アクセスを許可した場合の損失関数は、loss(A2|X2)=−10,000である。   FIG. 5 shows an example of a loss function and a weighting function that are elements of the utility function. As shown in FIG. 5, the loss function and the weighting function are defined for each resource. The loss function loss (A | X) is a loss function that quantitatively represents a loss when access is permitted or prohibited for each resource. In FIG. 5, for example, the loss function when the legitimate access to the file A as a resource is prohibited is loss (A1 | X1) = − 10,000, and the loss function when the unauthorized access to the file A is permitted is loss (A2 | X2) = − 10,000.

また、ファイルAに対応するフォールスポジティブ(false positive)の重み関数ω(fp)、フォールスネガティブ(false negative)の重み関数ω(fn)は、a〜cの3種類の設定態様があり、
a.通常設定では、ω(fp)=1、ω(fn)=1
b.低フォールスポジティブ優先設定では、ω(fp)=3、ω(fn)=1
c.低フォールスネガティブ優先設定では、ω(fp)=1、ω(fn)=3
とした設定がある。
これらの設定からアクセスルールの適用対象としてのプログラムや機器に対応して適切な設定を選択してアクセスルールを生成することができる。なお、図5に示す設定例は一例に過ぎず、この他、様々な設定が可能である。
Further, the false function weight function ω (fp) and the false negative weight function ω (fn) corresponding to the file A have three types of setting modes a to c,
a. In the normal setting, ω (fp) = 1, ω (fn) = 1
b. In the low false positive priority setting, ω (fp) = 3, ω (fn) = 1
c. In the low false negative priority setting, ω (fp) = 1, ω (fn) = 3
There is a setting.
From these settings, it is possible to generate an access rule by selecting an appropriate setting corresponding to a program or device as an access rule application target. Note that the setting example shown in FIG. 5 is merely an example, and various other settings are possible.

次に、図2に戻り、セキュリティポリシ生成処理部230の処理構成について説明する。セキュリティポリシ生成処理部230は、確率演算処理部231、期待損失値演算処理部232、アクセス判断処理部233、セキュリティポリシ変換処理部234を有する。   Next, returning to FIG. 2, the processing configuration of the security policy generation processing unit 230 will be described. The security policy generation processing unit 230 includes a probability calculation processing unit 231, an expected loss value calculation processing unit 232, an access determination processing unit 233, and a security policy conversion processing unit 234.

確率演算処理部231は、パラメータ入力処理部220の確率初期分布入力処理部221から受け取った事前確率P(X)および尤度P(D|X)を用い、ベイズ推定を利用して正当アクセスおよぶ不正アクセスの事後確率P(X|D)を計算する。ベイズ推定は、前述したように、結果に基づいて、原因の確立を推定する理論である。事後確率P(X|D)は、事象Dが観測された場合の確率変数Xの確率を示す。   The probability calculation processing unit 231 uses the prior probabilities P (X) and likelihood P (D | X) received from the probability initial distribution input processing unit 221 of the parameter input processing unit 220, and performs legitimate access using Bayesian estimation. The posterior probability P (X | D) of unauthorized access is calculated. As described above, Bayesian estimation is a theory that estimates the establishment of a cause based on the result. The posterior probability P (X | D) indicates the probability of the random variable X when the event D is observed.

事象が観測(D=D1)、すなわち、あるリソースに対するアクセスが発生したことを観測できた場合における
正当アクセスである事後確率P(X1|D1)
不正アクセスである事後確率P(X2|D1)
との算出式は以下の(式3)、(式4)に示す式となる。
Observed event (D = D1), that is, posterior probability P (X1 | D1) that is a legitimate access when observing that access to a certain resource has occurred
A posteriori probability P (X2 | D1) for unauthorized access
The calculation formulas are as shown in the following (formula 3) and (formula 4).

D=D1の場合
P(X1|D1)
={P(X1)P(D1|X1)}/{P(X1)P(D1|X1)+P(X2)P(D1|X2)}
・・・(式3)
P(X2|D1)
={P(X2)P(D1|X2)}/{P(X1)P(D1|X1)+P(X2)P(D1|X2)}
・・・(式4)
When D = D1 P (X1 | D1)
= {P (X1) P (D1 | X1)} / {P (X1) P (D1 | X1) + P (X2) P (D1 | X2)}
... (Formula 3)
P (X2 | D1)
= {P (X2) P (D1 | X2)} / {P (X1) P (D1 | X1) + P (X2) P (D1 | X2)}
... (Formula 4)

また事象が未観測(D=D2)、すなわち、あるリソースに対するアクセスが発生したことを観測できなかった場合における
正当アクセスである事後確率P(X1|D2)
不正アクセスである事後確率P(X2|D2)
との算出式は以下の(式5)、(式6)に示す式となる。
In addition, the posterior probability P (X1 | D2) is a legitimate access when the event is not observed (D = D2), that is, when the access to a certain resource cannot be observed.
Possibilities P (X2 | D2) for illegitimate access
Are calculated by the following equations (Equation 5) and (Equation 6).

D=D2の場合
P(X1|D2)
={P(X1)P(D2|X1)}/{P(X1)P(D2|X1)+P(X2)P(D2|X2)}
・・・(式5)
P(X2|D2)
={P(X2)P(D2|X2)}/{P(X1)P(D2|X1)+P(X2)P(D2|X2)}
・・・(式6)
When D = D2 P (X1 | D2)
= {P (X1) P (D2 | X1)} / {P (X1) P (D2 | X1) + P (X2) P (D2 | X2)}
... (Formula 5)
P (X2 | D2)
= {P (X2) P (D2 | X2)} / {P (X1) P (D2 | X1) + P (X2) P (D2 | X2)}
... (Formula 6)

上記各式に示すように、
事象が観測できた場合の正当アクセスの事後確率(式3)
事象が観測できた場合の不正アクセスの事後確率(式4)
事象が観測できなかった場合の正当アクセスの事後確率(式5)
事象が観測できなかった場合の不正アクセスの事後確率(式6)
がそれぞれ確率演算処理部231において算出される。
As shown in the above equations,
Possibilities of legitimate access when an event can be observed (Formula 3)
Possibilities of unauthorized access when events can be observed (Formula 4)
Possibilities of legitimate access when event cannot be observed (Formula 5)
Possibilities of unauthorized access when no events can be observed (Formula 6)
Are calculated in the probability calculation processing unit 231.

期待損失値演算処理部232は、パラメータ入力処理部220の効用関数入力部222から受け取った効用関数U(A|X)と、確率演算処理部231で計算した事後確率P(X|D)を用いて、期待損失値E[U(A),D]を計算する。期待損失値の算出処理においても、事象が観測(D=D1)すなわち、あるリソースに対するアクセスが発生したことを観測できた場合と、事象が観測されなかった(D=D2)すなわち、あるリソースに対するアクセスが発生したことを観測できなかった場合、それぞれにおいて、下記のように算出される。   The expected loss value calculation processing unit 232 uses the utility function U (A | X) received from the utility function input unit 222 of the parameter input processing unit 220 and the posterior probability P (X | D) calculated by the probability calculation processing unit 231. To calculate the expected loss value E [U (A), D]. Also in the process of calculating the expected loss value, when an event is observed (D = D1), that is, when an access to a certain resource can be observed, and when an event is not observed (D = D2), that is, for a certain resource When it cannot be observed that the access has occurred, each is calculated as follows.

A.事象が観測(D=D1)すなわち、あるリソースに対するアクセスが発生したことを観測できた場合、
(A1)アクセス禁止に伴う期待損失値:E[U(A1),D1]
E[U(A1),D1]
=U(A1|X1)P(X1|D1)+U(A1|X2)P(X2|D1)
=fp()×P(X1|D1)+0×P(X2|D1)
=fp()×P(X1|D1)
・・・(式7)
A. When an event is observed (D = D1), that is, when an access to a certain resource can be observed,
(A1) Expected loss value due to access prohibition: E [U (A1), D1]
E [U (A1), D1]
= U (A1 | X1) P (X1 | D1) + U (A1 | X2) P (X2 | D1)
= Fp () * P (X1 | D1) + 0 * P (X2 | D1)
= Fp () * P (X1 | D1)
... (Formula 7)

(A2)アクセス許可に伴う期待損失値:E[U(A2),D1]
E[U(A2),D1]
=U(A2|X1)P(X1|D1)+U(A2|X2)P(X2|D1)
=0×P(X1|D1)+fn()×P(X2|D1)
=fn()×P(X2|D1)
・・・(式8)
(A2) Expected loss value associated with access permission: E [U (A2), D1]
E [U (A2), D1]
= U (A2 | X1) P (X1 | D1) + U (A2 | X2) P (X2 | D1)
= 0 × P (X1 | D1) + fn () × P (X2 | D1)
= Fn () x P (X2 | D1)
... (Formula 8)

このように、事象が観測(D=D1)すなわち、あるリソースに対するアクセスが発生したことを観測できた場合のアクセス禁止に伴う期待損失値:E[U(A1),D1]と、アクセス許可に伴う期待損失値:E[U(A2),D1]は、上記(式7)、(式8)によって算出される。   As described above, the event is observed (D = D1), that is, when the access to a certain resource can be observed, the expected loss value associated with the access prohibition: E [U (A1), D1] and the access permission The accompanying expected loss value: E [U (A2), D1] is calculated by the above (formula 7) and (formula 8).

(式7)、(式8)は、(式3)および(式4)で算出した事後確率P(X1|D1)およびP(X2|D1)を代入することで具体的数値を得ることができる。   In (Expression 7) and (Expression 8), specific numerical values can be obtained by substituting the posterior probabilities P (X1 | D1) and P (X2 | D1) calculated in (Expression 3) and (Expression 4). it can.

B.事象が観測できない(D=D2)すなわち、あるリソースに対するアクセスが発生したことを観測できなかった場合、
(B1)アクセス禁止に伴う期待損失値:E[U(A1),D2]
E[U(A1),D2]
=U(A1|X1)P(X1|D2)+U(A1|X2)P(X2|D2)
=fp()×P(X1|D2)+0×P(X2|D2)
=fp()×P(X1|D2)
・・・(式9)
B. If an event cannot be observed (D = D2), that is, if an access to a certain resource cannot be observed,
(B1) Expected loss value due to access prohibition: E [U (A1), D2]
E [U (A1), D2]
= U (A1 | X1) P (X1 | D2) + U (A1 | X2) P (X2 | D2)
= Fp () * P (X1 | D2) + 0 * P (X2 | D2)
= Fp () * P (X1 | D2)
... (Formula 9)

(B2)アクセス許可に伴う期待損失値:E[U(A2),D2]
E[U(A2),D2]
=U(A2|X1)P(X1|D2)+U(A2|X2)P(X2|D2)
=0×P(X1|D2)+fn()×P(X2|D2)
=fn()×P(X2|D2)
・・・(式10)
(B2) Expected loss value associated with access permission: E [U (A2), D2]
E [U (A2), D2]
= U (A2 | X1) P (X1 | D2) + U (A2 | X2) P (X2 | D2)
= 0 × P (X1 | D2) + fn () × P (X2 | D2)
= Fn () * P (X2 | D2)
... (Formula 10)

(式9)、(式10)は、(式5)および(式6)で算出した事後確率P(X1|D2)およびP(X2|D2)を代入することで具体的数値を得ることができる。   In (Expression 9) and (Expression 10), specific numerical values can be obtained by substituting the posterior probabilities P (X1 | D2) and P (X2 | D2) calculated in (Expression 5) and (Expression 6). it can.

具体的な例として、図3に示すファイルA、すなわち、
P(X1)=0.9
P(X2)=0.1
すなわち、ファイルAに対するアクセスが正当である初期確率は0.9であり、不正である初期確率は0.1であり、尤度が下記設定、
P(D1|X1)=0.95
P(D1|X2)=0.05
P(D2|X1)=0.1
P(D2|X2)=0.9
である。
As a specific example, file A shown in FIG.
P (X1) = 0.9
P (X2) = 0.1
That is, the initial probability that the access to the file A is valid is 0.9, the initial probability that it is illegal is 0.1, and the likelihood is set as follows:
P (D1 | X1) = 0.95
P (D1 | X2) = 0.05
P (D2 | X1) = 0.1
P (D2 | X2) = 0.9
It is.

すなわち、ファイルAに対する正当アクセスが観察される確率P(D1|X1)=0.95、ファイルAに対する不正アクセスが観察される確率P(D1|X2)=0.05、ファイルAに対する正当アクセスが観察されない確率P(D2|X1)=0.1、ファイルAに対する不正アクセスが観察されない確率P(D2|X2)=0.9であるファイルAに対する期待損失値を、図5に示す損失関数loss(A|D)、重み付け関数ω(fp)、ω(fn)の各設定で計算した結果としての事後確率P(X|D)と、期待損失値E[U(A),D]の各値を図6〜図8に示す。   That is, the probability P (D1 | X1) = 0.95 that the legitimate access to the file A is observed, the probability P (D1 | X2) = 0.05 that the unauthorized access to the file A is observed, and the legitimate access to the file A The expected loss value for the file A in which the probability P (D2 | X1) = 0.1 that is not observed and the probability P (D2 | X2) = 0.9 that the unauthorized access to the file A is not observed is the loss function loss shown in FIG. (A | D), each of the posterior probability P (X | D) as a result calculated by setting each of the weighting functions ω (fp) and ω (fn) and the expected loss value E [U (A), D] The values are shown in FIGS.

図6に示すように、
ファイルAについて、
事象が観測(D=D1)、すなわち、ファイルAに対するアクセスが発生したことを観測できた場合において、
正当アクセスの事後確率P(X1|D1)=0.988439
不正アクセスの事後確率P(X2|D1)=0.011561
と算出される。
As shown in FIG.
About file A
When the event is observed (D = D1), that is, when access to file A can be observed,
Probability of posterior access P (X1 | D1) = 0.888439
Poor probability of unauthorized access P (X2 | D1) = 0.011561
Is calculated.

このとき、ファイルAに対応するフォールスポジティブ(false positive)の重み関数ω(fp)、フォールスネガティブ(false negative)の重み関数ω(fn)は、a〜cの3種類の設定態様、すなわち、
a.通常設定では、ω(fp)=1、ω(fn)=1
b.低フォールスポジティブ優先設定では、ω(fp)=3、ω(fn)=1
c.低フォールスネガティブ優先設定では、ω(fp)=1、ω(fn)=3
とした設定の各々についての期待損失値は、以下のように算出される。
At this time, the false function weight function ω (fp) and the false negative weight function ω (fn) corresponding to the file A are set in three types of setting modes a to c, that is,
a. In the normal setting, ω (fp) = 1, ω (fn) = 1
b. In the low false positive priority setting, ω (fp) = 3, ω (fn) = 1
c. In the low false negative priority setting, ω (fp) = 1, ω (fn) = 3
The expected loss value for each of the settings is calculated as follows.

a.通常設定、ω(fp)=1、ω(fn)=1の場合、
アクセス禁止に伴う期待損失値:E[U(A1),D1]=−9884.39
アクセス許可に伴う期待損失値:E[U(A2),D1]=−115.607
a. When normal setting, ω (fp) = 1, ω (fn) = 1,
Expected loss value due to access prohibition: E [U (A1), D1] = − 9884.39
Expected loss value associated with access permission: E [U (A2), D1] = − 115.607

b.低フォールスポジティブ優先設定、ω(fp)=3、ω(fn)=1の場合、
アクセス禁止に伴う期待損失値:E[U(A1),D1]=−29653.2
アクセス許可に伴う期待損失値:E[U(A2),D1]=−115.607
b. Low false positive priority setting, ω (fp) = 3, ω (fn) = 1,
Expected loss value due to access prohibition: E [U (A1), D1] =-29653.2
Expected loss value associated with access permission: E [U (A2), D1] = − 115.607

c.低フォールスネガティブ優先設定、ω(fp)=1、ω(fn)=3の場合、
アクセス禁止に伴う期待損失値:E[U(A1),D1]=−9884.39
アクセス許可に伴う期待損失値:E[U(A2),D1]=−346.821
c. In the case of low false negative priority setting, ω (fp) = 1, ω (fn) = 3,
Expected loss value due to access prohibition: E [U (A1), D1] = − 9884.39
Expected loss value associated with access permission: E [U (A2), D1] =-346.821

これらの各期待損失値をグラフにして示した図が図7である。   FIG. 7 shows a graph showing these expected loss values.

また、ファイルAについて、
事象が観測されなかった(D=D2)、すなわち、ファイルAに対するアクセスが発生したことを観測できなかった場合において、
正当アクセスの事後確率P(X1|D2)=0.333333
不正アクセスの事後確率P(X2|D2)=0.666667
と算出される。
For file A,
If no event was observed (D = D2), that is, it could not be observed that access to file A occurred,
Probability of posterior access P (X1 | D2) = 0.333333
Poor probability of unauthorized access P (X2 | D2) = 0.666667
Is calculated.

このとき、期待損失値は、以下のように算出される。
a.通常設定、ω(fp)=1、ω(fn)=1の場合、
アクセス禁止に伴う期待損失値:E[U(A1),D2]=−3333.33
アクセス許可に伴う期待損失値:E[U(A2),D2]=−6666.667
At this time, the expected loss value is calculated as follows.
a. When normal setting, ω (fp) = 1, ω (fn) = 1,
Expected loss value due to access prohibition: E [U (A1), D2] = − 3333.33
Expected loss value associated with access permission: E [U (A2), D2] = − 666666.667

b.低フォールスポジティブ優先設定、ω(fp)=3、ω(fn)=1の場合、
アクセス禁止に伴う期待損失値:E[U(A1),D2]=−10,000
アクセス許可に伴う期待損失値:E[U(A2),D2]=−6666.67
b. Low false positive priority setting, ω (fp) = 3, ω (fn) = 1,
Expected loss value due to access prohibition: E [U (A1), D2] = − 10,000
Expected loss value associated with access permission: E [U (A2), D2] = − 66666.67

c.低フォールスネガティブ優先設定、ω(fp)=1、ω(fn)=3の場合、
アクセス禁止に伴う期待損失値:E[U(A1),D2]=−3333.33
アクセス許可に伴う期待損失値:E[U(A2),D2]=−20,000
c. In the case of low false negative priority setting, ω (fp) = 1, ω (fn) = 3,
Expected loss value due to access prohibition: E [U (A1), D2] = − 3333.33
Expected loss value associated with access permission: E [U (A2), D2] = − 20,000

これらの各期待損失値をグラフにして示した図が図8である。   FIG. 8 is a graph showing these expected loss values.

図2に示すセキュリティポリシ生成処理部230のアクセス判断処理部233は、期待損失値演算処理部232が計算したアクセス禁止/許可時の期待損失値を比較し、数値の大きい方(0に近い方)を、そのリソースに対するアクセスルールとして設定する。すなわち、アクセス禁止/許可の設定を行う。この選択結果が、リソースアクセスに与えるアクセス権となる。これらの設定は、リソース毎に行われる。   The access determination processing unit 233 of the security policy generation processing unit 230 shown in FIG. 2 compares the expected loss value at the time of access prohibition / permission calculated by the expected loss value calculation processing unit 232, and the larger one (the one closer to 0) ) As an access rule for the resource. That is, access prohibition / permission is set. This selection result is an access right to be given to resource access. These settings are made for each resource.

セキュリティポリシ変換処理部234は、アクセス判断処理部233が計算したアクセス権および対象となるリソース指定から実際に利用するアクセス制御機構が用いる設定の形式に変換する処理を行なう。対象とするアクセス制御機構に対する条件は特にない。例として、アクセス制御機構として、LIDS(Linux Intrusion Detection System)を用いた時の出力結果を、以下に示す。   The security policy conversion processing unit 234 converts the access right calculated by the access determination processing unit 233 and the target resource designation into a setting format used by the access control mechanism that is actually used. There are no specific conditions for the target access control mechanism. As an example, an output result when LIDS (Linux Induction Detection System) is used as an access control mechanism is shown below.

LIDSは設定にコマンド入力を必要とするため、セキュリティポリシ変換処理部はリソース毎のアクセス可否の結果をLIDSのコマンド入力の集合に変換し出力する。   Since LIDS requires a command input for setting, the security policy conversion processing unit converts the access permission result for each resource into a set of LIDS command inputs.

#!/bin/sh
# begin of security policy for LIDS
LIDSCONF=/sbin/lidsconf
$LIDSCONF -A -o /sbin -j READONLY
$LIDSCONF -A -o /bin -j READONLY
$LIDSCONF -A -o /boot -j READONLY
$LIDSCONF -A -o /lib -j READONLY
$LIDSCONF -A -o /usr -j READONLY
$LIDSCONF -A -o /etc -j READONLY
$LIDSCONF -A -o /etc/lids -j DENY
$LIDSCONF -A -o /etc/shadow -j DENY
$LIDSCONF -A -o /var/log -j APPEND
$LIDSCONF -A -o /var/log/wtmp -j WRITE
$LIDSCONF -A -s /bin/login -o /etc/shadow -j READONLY
$LIDSCONF -A -s /bin/su -o /etc/shadow -j READONLY
$LIDSCONF -A -s /bin/login -o /var/log/lastlog -j WRITE
$LIDSCONF -A -s /etc/rc.d/rc -o CAP_KILL_PROTECTED -j GRANT
$LIDSCONF -A -s /etc/rc.d/rc -o CAP_NET_ADMIN -j GRANT
$LIDSCONF -A -s /etc/rc.d/rc -o CAP_SYS_ADMIN -j GRANT
$LIDSCONF -A -s /etc/rc.d/init.d/halt -o CAP_KILL_PROTECTED -j GRANT
$LIDSCONF -A -s /etc/rc.d/init.d/halt -o CAP_SYS_ADMIN -j GRANT
$LIDSCONF -A -s /etc/rc.d/init.d/halt -o CAP_SYS_RAWIO -j GRANT
$LIDSCONF -A -s /etc/rc.d/init.d/halt -o CAP_NET_ADMIN -j GRANT
$LIDSCONF -A -s /usr/sbin/sshd -o /etc/shadow -j READONLY
$LIDSCONF -A -s /usr/sbin/sshd -o CAP_NET_BIND_SERVICE 22-22 -j GRANT
$LIDSCONF -A -s /usr/bin/ssh -o CAP_NET_BIND_SERVICE 0-1023 -j GRANT
$LIDSCONF -A -s /usr/bin/sudo -o /etc/shadow -j READONLY
$LIDSCONF -A -s /sbin/init -o /etc -j WRITE
$LIDSCONF -A -o /var/lock/subsys -j WRITE
# end of security policy for LIDS
#! / bin / sh
# begin of security policy for LIDS
LIDSCONF = / sbin / lidsconf
$ LIDSCONF -A -o / sbin -j READONLY
$ LIDSCONF -A -o / bin -j READONLY
$ LIDSCONF -A -o / boot -j READONLY
$ LIDSCONF -A -o / lib -j READONLY
$ LIDSCONF -A -o / usr -j READONLY
$ LIDSCONF -A -o / etc -j READONLY
$ LIDSCONF -A -o / etc / lids -j DENY
$ LIDSCONF -A -o / etc / shadow -j DENY
$ LIDSCONF -A -o / var / log -j APPEND
$ LIDSCONF -A -o / var / log / wtmp -j WRITE
$ LIDSCONF -A -s / bin / login -o / etc / shadow -j READONLY
$ LIDSCONF -A -s / bin / su -o / etc / shadow -j READONLY
$ LIDSCONF -A -s / bin / login -o / var / log / lastlog -j WRITE
$ LIDSCONF -A -s /etc/rc.d/rc -o CAP_KILL_PROTECTED -j GRANT
$ LIDSCONF -A -s /etc/rc.d/rc -o CAP_NET_ADMIN -j GRANT
$ LIDSCONF -A -s /etc/rc.d/rc -o CAP_SYS_ADMIN -j GRANT
$ LIDSCONF -A -s /etc/rc.d/init.d/halt -o CAP_KILL_PROTECTED -j GRANT
$ LIDSCONF -A -s /etc/rc.d/init.d/halt -o CAP_SYS_ADMIN -j GRANT
$ LIDSCONF -A -s /etc/rc.d/init.d/halt -o CAP_SYS_RAWIO -j GRANT
$ LIDSCONF -A -s /etc/rc.d/init.d/halt -o CAP_NET_ADMIN -j GRANT
$ LIDSCONF -A -s / usr / sbin / sshd -o / etc / shadow -j READONLY
$ LIDSCONF -A -s / usr / sbin / sshd -o CAP_NET_BIND_SERVICE 22-22 -j GRANT
$ LIDSCONF -A -s / usr / bin / ssh -o CAP_NET_BIND_SERVICE 0-1023 -j GRANT
$ LIDSCONF -A -s / usr / bin / sudo -o / etc / shadow -j READONLY
$ LIDSCONF -A -s / sbin / init -o / etc -j WRITE
$ LIDSCONF -A -o / var / lock / subsys -j WRITE
# end of security policy for LIDS

上述したように、本発明のアクセス制御ルール生成処理では、リソースアクセスのトレースを取る手間を減らすために、少数のリソースアクセス結果から当該プログラムが行なうと思われる多数のリソースアクセスを推論する。さらに、リソースアクセスの可否を決めるために、アクセス許可したときの損失およびアクセス禁止したときの損失を表すパラメータ(効用関数)と、アクセスが不正/正当である確率の両方を用いている。これにより、アクセス可否の精度を高めると共にフォールスポジティブ(false positive)と、フォールスネガティブ(false negative)とのバランスも考慮することを可能にしている。   As described above, in the access control rule generation processing of the present invention, in order to reduce the trouble of taking a resource access trace, a large number of resource accesses that the program is supposed to perform are inferred from a small number of resource access results. Furthermore, in order to determine whether or not resource access is possible, both a parameter (utility function) indicating a loss when access is permitted and a loss when access is prohibited and a probability that access is illegal / legitimate are used. Thereby, it is possible to improve the accuracy of accessibility and to consider the balance between false positive and false negative.

次に、図9のフローチャートを参照して、本発明のアクセス制御ルール生成処理手順について説明する。各ステップの処理について説明する。まず、ステップS101において、アクセス制御ルール生成処理対象となるプログラムを実行し、プログラム実行においてアクセスしたリソースの履歴情報(プログラム実行トレース)を取得する。この処理は、図2の実行トレース解析処理部210のリソースアクセス記録処理部211において行う。   Next, the access control rule generation processing procedure of the present invention will be described with reference to the flowchart of FIG. The process of each step will be described. First, in step S101, a program that is an access control rule generation process target is executed, and history information (program execution trace) of resources accessed in program execution is acquired. This processing is performed in the resource access record processing unit 211 of the execution trace analysis processing unit 210 in FIG.

次のステップS102〜S104では、パラメータ入力処理部におけるパラメータ入力の有無を判定するステップである。ステップS102,S103において、確率初期分布入力処理部221を介する初期確率および尤度の入力を確認する。これらの情報は、入力手段によるユーザ入力でもよく、あるいは予め記憶手段に格納されたデータの読み出しとして実行してもよい。ステップS104は、効用関数入力処理部222における効用関数fp(),fn()の入力確認である。   The next steps S102 to S104 are steps for determining the presence or absence of parameter input in the parameter input processing unit. In steps S102 and S103, input of the initial probability and likelihood via the probability initial distribution input processing unit 221 is confirmed. These pieces of information may be user input by an input unit, or may be executed as reading of data stored in advance in a storage unit. Step S104 is an input confirmation of the utility functions fp () and fn () in the utility function input processing unit 222.

本方式における確率モデルを表現するためのパラメータ:X,D,Aは、
X={正当アクセス(X1),不正アクセス(X2)}
D={事象が観測できた(D1),事象が観測できない(D2)}
A={アクセス禁止(A1),アクセス許可(A2)}
であり、初期確率P(X)は、P(X1),P(X2)の2種類となり、尤度はP(D1|X1),P(D1|X2),P(D2|X1),P(D2|X2)の4種類となる。初期確率P(X1),P(X2)は、事前知識がない状態での各リソースに対応する不正アクセスの確率および正当アクセスでの確率を示す。尤度P(D1|X1),P(D1|X2),P(D2|X1),P(D2|X2)は、不正アクセスおよび正当アクセスの場合に実行トレース解析処理部210における推論処理において利用される各方式の事象が観測される条件付き確率を表す。
Parameters for expressing the probability model in this method: X, D, A are
X = {legitimate access (X1), unauthorized access (X2)}
D = {Event could be observed (D1), event could not be observed (D2)}
A = {Access prohibition (A1), Access permission (A2)}
The initial probabilities P (X) are two types, P (X1) and P (X2), and the likelihoods are P (D1 | X1), P (D1 | X2), P (D2 | X1), P There are four types (D2 | X2). The initial probabilities P (X1) and P (X2) indicate the probability of unauthorized access and the probability of proper access corresponding to each resource without prior knowledge. The likelihoods P (D1 | X1), P (D1 | X2), P (D2 | X1), and P (D2 | X2) are used in the inference process in the execution trace analysis processing unit 210 in the case of unauthorized access and legitimate access. Represents the conditional probability that an event of each type is observed.

また、効用関数fp(),fn()は、フォールスポジティブ(false positive)、フォールスネガティブ(false negative)のバランスを表す重み付け情報を示す関数である。   The utility functions fp () and fn () are functions indicating weighting information indicating the balance between false positive and false negative.

ステップS102〜S104におけるパラメータ入力がすべて行われると、次に、リソースアクセス類推処理部はトレース結果からリソースアクセスの関連情報を、以下の方式、すなわち、
(1)プログラム実行トレース中にアクセスリソースとして記録されたアクセスファイルと同じディレクトリにあるファイルを関連性のあるファイルとして抽出する方式、
(2)プログラム実行トレース中にアクセスリソースとして記録されたアクセスファイルと同じ種別のファイルやデバイスを関連性のあるファイル、デバイスとして抽出する方式、
(3)プログラム実行トレース中にアクセスリソースとして記録されたネットワークポートと同じカテゴリにあるポートを抽出する方式、
これらの各方式のいずれかを適用する、あるいは組み合わせて適用する方法、総合的に適用して、アクセスルールを生成する各リソースについてのアクセスの有無を、プログラム実行トレースおよび関連性判断に基づいて設定する。
When all the parameter inputs in steps S102 to S104 are performed, the resource access analogy processing unit next obtains the resource access related information from the trace result by the following method:
(1) A method of extracting a file in the same directory as an access file recorded as an access resource during a program execution trace as a related file,
(2) A method of extracting a file or device of the same type as the access file recorded as an access resource during the program execution trace as a related file or device,
(3) A method for extracting a port in the same category as the network port recorded as the access resource during the program execution trace,
A method of applying any of these methods, or a method of applying them in combination, or comprehensively setting whether to access each resource that generates an access rule based on the program execution trace and relevance judgment To do.

リソースアクセス類推処理部212は、プログラム実行トレースおよび、上記のリソース関連性判断基準に基づいてアクセスルールを設定するリソース各々について、プログラム実行トレースにおいてアクセスがあったと判定すべきか否かを類推する処理を行う。プログラム実行トレースにおいて実際にアクセスされなかったデバイスやファイル等のリソースであったとしても、実際にアクセスされたデバイスやファイルとの関連性があると、リソースアクセス類推処理部212が判定すれば、プログラム実行トレースにおいてアクセスがあったとみなされることになる。関連性は、ディレクトリの共通性や、データ形式の共通性、カテゴリ共通性など、予め設定されており、リソースアクセス類推処理部212において、予め設定された情報に基づいて、アクセスルールを設定するリソースについて、プログラム実行トレースにおけるアクセス有無のいずれかが設定されることになる。   The resource access analogy processing unit 212 performs a process of estimating whether or not it should be determined that there is an access in the program execution trace for each resource for which an access rule is set based on the program execution trace and the above-described resource relevance determination criteria. Do. Even if it is a resource such as a device or file that is not actually accessed in the program execution trace, if the resource access analogy processing unit 212 determines that there is a relationship with a device or file that is actually accessed, the program In the execution trace, it will be regarded as having been accessed. Relevance is preset such as directory commonality, data format commonality, category commonality, etc., and the resource access analogy processing unit 212 is a resource for setting an access rule based on preset information. Is set to whether or not there is access in the program execution trace.

次に、アクセスのあったと判定されたリソースについては、ステップS106に進み、アクセスがなかったと判定されたリソースについては、ステップS107に進む。   Next, for resources determined to have been accessed, the process proceeds to step S106, and for resources determined to have not been accessed, the process proceeds to step S107.

アクセスルール設定対象とするリソースに対するアクセスがあった、すなわち事象観測に成功したと判定された場合には、ステップS106において、変数DにD1を設定(D=D1)し、アクセスがなかった、すなわち事象観測ができなかったと判定した場合には、ステップS107において、変数DにD2を設定(D=D2)する。   When it is determined that there is access to the resource to be set as the access rule, that is, event observation is successful, in step S106, D1 is set in the variable D (D = D1), and there is no access. If it is determined that the event cannot be observed, D2 is set to the variable D (D = D2) in step S107.

次に、ステップS108において、図2に示すセキュリティポリシ生成処理部230の確率演算処理部231が、確率初期分布入力処理部221から受け取った初期確率分布、尤度と、リソースアクセス類推処理部212から受け取った変数Dを用いて事後確率P(Xn|Dn)を計算する。   Next, in step S108, the probability calculation processing unit 231 of the security policy generation processing unit 230 shown in FIG. 2 receives the initial probability distribution and likelihood received from the probability initial distribution input processing unit 221, and the resource access analogy processing unit 212. The posterior probability P (Xn | Dn) is calculated using the received variable D.

この時、リソースアクセスあり、すなわち、事象観測された場合(D=D1)には、前述した(式3)および(式4)を適用し、リソースアクセスなし、すなわち、事象観測されなかった場合(D=D2)には、(式5)および(式6)を適用して事後確率P(Xn|Dn)を算出する。   At this time, when there is resource access, that is, when an event is observed (D = D1), (Equation 3) and (Equation 4) described above are applied, and when there is no resource access, that is, when no event is observed ( For D = D2), the posterior probability P (Xn | Dn) is calculated by applying (Expression 5) and (Expression 6).

事後確率が求まると、ステップS109において、期待損失値演算処理部232は効用関数入力処理部222から受け取った効用関数と確率演算処理部231から受け取った事後確率を用いて、期待損失値E[U(An),Dn]を計算する。リソースアクセスあり、すなわち、事象観測された場合(D=D1)には、前述した(式7)および(式8)を適用し、リソースアクセスなし、すなわち、事象観測されなかった場合(D=D2)には、(式9)および(式10)を適用して期待損失値E[U(An),Dn]を算出する。   When the posterior probability is obtained, in step S109, the expected loss value calculation processing unit 232 uses the utility function received from the utility function input processing unit 222 and the posterior probability received from the probability calculation processing unit 231 to calculate the expected loss value E [U (An), Dn] is calculated. When there is resource access, that is, when an event is observed (D = D1), the above-described (Expression 7) and (Expression 8) are applied, and when there is no resource access, that is, when no event is observed (D = D2) ), The expected loss value E [U (An), Dn] is calculated by applying (Equation 9) and (Equation 10).

期待損失値が求まると、ステップS110において、アクセス判断処理部233はアクセス禁止時の期待損失値とアクセス許可時の期待損失値を比較し、アクセス禁止時の期待損失値が大きい場合にはアクセス禁止を、アクセス許可時の期待損失値が大きい場合にはアクセス許可を、そのリソースに対するアクセスルールとして設定する選択を行う。   When the expected loss value is obtained, in step S110, the access determination processing unit 233 compares the expected loss value at the time of access prohibition with the expected loss value at the time of access permission, and if the expected loss value at the time of access prohibition is large, the access is prohibited. If the expected loss value at the time of access permission is large, a selection is made to set the access permission as an access rule for the resource.

ステップS113では、まだ、アクセス可否を決定すべきリソースが残っているか否かを判定し、残っているなら、ステップS105以下の処理を未処理リソースについて実行する。すべてのアクセスルール設定対象リソースについての処理が終了すると、(S113:No)。ステップS114に進み、セキュリティポリシ変換処理部234が、各リソースに対応して設定されたアクセス制御ルールに基づいて、アクセス制御情報として実際に利用するアクセス制御機構が理解できるデータ形式に変換する処理を実行してセキュリティポリシとして設定する。以上でアクセス制御ルール生成処理を終了する。   In step S113, it is determined whether there is still a resource for which access permission is to be determined. If it remains, the processing in step S105 and subsequent steps is executed for the unprocessed resource. When the processing for all access rule setting target resources is completed (S113: No). Proceeding to step S114, the security policy conversion processing unit 234 performs a process of converting into a data format that can be understood by the access control mechanism that is actually used as the access control information, based on the access control rule set corresponding to each resource. Execute and set as security policy. This completes the access control rule generation process.

図10は、図2に示す3つの処理部、すなわち、実行トレース解析処理部210、パラメータ入力処理部220、およびセキュリティポリシ生成処理部230のそれぞれの処理手順および各処理部間のデータ入出力の対応を示す図である。   FIG. 10 shows the processing procedures of the three processing units shown in FIG. 2, that is, the execution trace analysis processing unit 210, the parameter input processing unit 220, and the security policy generation processing unit 230, and the data input / output between the processing units. It is a figure which shows correspondence.

図10を参照して、各処理部それぞれの処理、および各処理部間の送受信データについて説明する。まず、ステップS201の処理は、実行トレース解析処理部210の処理である。実行トレース解析処理部210において、アクセスルールの生成処理対象となるプログラムを実行し、プログラムの実行トレース、すなわち、アクセスしたリソースの履歴情報を取得する。さらに、同一ディレクトリ等のリソース関連性判断基準と、記録したプログラムの実行トレースに基づいてリソース各々についてのアクセスの有無、すなわち事象発生の有無を判定する。この判定結果が、リソースアクセス推論結果として、セキュリティポリシ生成処理部に渡される。   With reference to FIG. 10, processing of each processing unit and transmission / reception data between the processing units will be described. First, the process of step S201 is a process of the execution trace analysis processing unit 210. The execution trace analysis processing unit 210 executes a program that is an access rule generation processing target, and acquires an execution trace of the program, that is, history information of the accessed resource. Further, the presence / absence of an access to each resource, that is, the occurrence of an event, is determined based on a resource relevance determination criterion such as the same directory and the recorded program execution trace. This determination result is passed to the security policy generation processing unit as a resource access inference result.

パラメータ入力処理部220では、ステップS202、S203のパラメータ入力処理が実行される。ステップS202では、各リソースに対応する初期確率P(X1),P(X2)および尤度P(D1|X1),P(D1|X2),P(D2|X1),P(D2|X2)の入力が行われる。さらに、ステップS203では、各リソースに対応する効用関数fp(),fn()の入力が行われる。これらの入力された各パラメータ、すなわち初期確率、
尤度、効用関数は、セキュリティポリシ生成処理部に渡される。
The parameter input processing unit 220 executes parameter input processing in steps S202 and S203. In step S202, initial probabilities P (X1), P (X2) and likelihoods P (D1 | X1), P (D1 | X2), P (D2 | X1), P (D2 | X2) corresponding to each resource Is entered. In step S203, utility functions fp () and fn () corresponding to each resource are input. Each of these input parameters, ie the initial probability,
The likelihood and utility functions are passed to the security policy generation processing unit.

なお、ステップS201〜S203の処理は、そのシーケンスは固定ではなく、いずれが先に実行されてもよく、また並列に実行してもよい。   Note that the sequence of steps S201 to S203 is not fixed, and any of them may be executed first or in parallel.

セキュリティポリシ生成処理部230では、まず、ステップS204において、実行トレース解析処理部210から受領したリソースアクセス推論結果と、パラメータ入力処理部220から受領した初期確率P(X1),P(X2)および尤度P(D1|X1),P(D1|X2),P(D2|X1),P(D2|X2)に基づいて、事後確率P(Xn|Dn)の算出が行われる。   In the security policy generation processing unit 230, first, in step S204, the resource access inference result received from the execution trace analysis processing unit 210, the initial probabilities P (X1), P (X2), and the likelihood received from the parameter input processing unit 220. A posteriori probability P (Xn | Dn) is calculated based on the degrees P (D1 | X1), P (D1 | X2), P (D2 | X1), and P (D2 | X2).

事後確率P(Xn|Dn)の算出においては、リソースアクセス推論結果に基づいて、アクセスのあったと判定されたリソースについては、D=D1として、前述した(式3)および(式4)を適用して算出する。リソースアクセス推論結果に基づいて、アクセスのなかったと判定されたリソースについては、D=D2として、前述した(式5)および(式6)を適用して算出する。   In calculating the posterior probability P (Xn | Dn), the above-described (Expression 3) and (Expression 4) are applied to D = D1 for the resource determined to have been accessed based on the resource access inference result. To calculate. Based on the resource access inference result, the resource determined to have not been accessed is calculated by applying (Equation 5) and (Equation 6) described above as D = D2.

次に、ステップS205において、パラメータ入力処理部220から受領した効用関数と、ステップS204における確率演算処理ステップで算出した事後確率を用いて、期待損失値E[U(An),Dn]を算出する。リソースアクセスあり、すなわち、事象観測された場合(D=D1)には、前述した(式7)および(式8)を適用し、リソースアクセスなし、すなわち、事象観測されなかった場合(D=D2)には、(式9)および(式10)を適用して期待損失値E[U(An),Dn]を算出する。   Next, in step S205, the expected loss value E [U (An), Dn] is calculated using the utility function received from the parameter input processing unit 220 and the posterior probability calculated in the probability calculation processing step in step S204. . When there is resource access, that is, when an event is observed (D = D1), the above-described (Expression 7) and (Expression 8) are applied, and when there is no resource access, that is, when no event is observed (D = D2) ), The expected loss value E [U (An), Dn] is calculated by applying (Equation 9) and (Equation 10).

次に、ステップS206においてアクセス禁止時の期待損失値とアクセス許可時の期待損失値を比較し、アクセス禁止時の期待損失値が大きい場合にはアクセス禁止を、アクセス許可時の期待損失値が大きい場合にはアクセス許可を、そのリソースに対するアクセスルールとして設定する。   Next, in step S206, the expected loss value at the time of access prohibition is compared with the expected loss value at the time of access permission. If the expected loss value at the time of access prohibition is large, access is prohibited and the expected loss value at the time of access permission is large. In this case, access permission is set as an access rule for the resource.

最後にステップS207において、リソースに対応して設定したアクセスルールをアクセス制御情報として実際に利用するアクセス制御機構が理解できるデータ形式に変換してセキュリティポリシとする。   Finally, in step S207, the access rule set corresponding to the resource is converted into a data format that can be understood by the access control mechanism that is actually used as access control information to obtain a security policy.

上述したように、本発明のアクセス制御ルール生成処理においては、プログラムの実行トレースと各リソースの関連性に基づいて、各リソース毎のアクセスの有無を判定し、該判定結果と、各リソース毎に予め設定されたアクセスの初期確率P(X1),P(X2)および、その尤度P(D1|X1),P(D1|X2),P(D2|X1),P(D2|X2)に基づいて、事後確率P(Xn|Dn)、すなわち、正当アクセスの事後確率と、不正アクセスの事後確率を算出する。   As described above, in the access control rule generation process of the present invention, the presence / absence of access for each resource is determined based on the execution trace of the program and the relevance of each resource, and the determination result and each resource are determined. The preset initial probabilities P (X1), P (X2) and the likelihoods P (D1 | X1), P (D1 | X2), P (D2 | X1), P (D2 | X2) Based on this, the posterior probability P (Xn | Dn), that is, the posterior probability of legitimate access and the posterior probability of unauthorized access are calculated.

さらに、アクセスルールの適用対象、例えばプログラムや機器に応じて予め設定した効用関数、すなわち、損失(リスク)の大きさを表す値と、アクセスルールの適用対象に基づいたフォールスポジティブ(false positive)、フォールスネガティブ(false negative)のバランスを表す重み付け係数から構成される関数に基づいて、アクセス禁止に伴う期待損失値と、アクセス許可に伴う期待損失値を算出する。   Furthermore, an access rule application target, for example, a utility function set in advance according to a program or device, that is, a value representing the magnitude of loss (risk), and a false positive based on the access rule application target, Based on a function composed of weighting coefficients representing a false negative balance, an expected loss value associated with access prohibition and an expected loss value associated with access permission are calculated.

効用関数は、例えば、
a.通常設定、ω(fp)=1、ω(fn)=1
b.低フォールスポジティブ優先設定、ω(fp)=3、ω(fn)=1
c.低フォールスネガティブ優先設定、ω(fp)=1、ω(fn)=3
これらのいずれかをアクセスルールの適用対象、例えばプログラムや機器に応じて選択して設定する。
The utility function is, for example,
a. Normal setting, ω (fp) = 1, ω (fn) = 1
b. Low false positive priority setting, ω (fp) = 3, ω (fn) = 1
c. Low false negative priority setting, ω (fp) = 1, ω (fn) = 3
Any one of these is selected and set according to an access rule application target, for example, a program or a device.

各リソース毎にアクセス禁止に伴う期待損失値と、アクセス許可に伴う期待損失値を算出すると、次に、これらの2つの期待損失値の比較を行い、アクセス禁止時の期待損失値が大きい場合にはアクセス禁止を、アクセス許可時の期待損失値が大きい場合にはアクセス許可を、そのリソースに対するアクセスルールとして設定する。   After calculating the expected loss value associated with access prohibition and the expected loss value associated with access permission for each resource, the next two expected loss values are compared, and the expected loss value when access is prohibited is large. Sets access prohibition as an access rule for the resource when access is prohibited, and when the expected loss value at the time of access permission is large.

本発明のアクセス制御ルール生成処理においては、上述した手法により各リソース毎のアクセスルールを設定する構成としたので、多くのリソースに対する最適なアクセスルールの自動設定を効率的に行うことが可能となる。また、効用関数の設定、すなわち、フォールスポジティブ(false positive)、フォールスネガティブ(false negative)のバランス設定をアクセスルールの適用対象に応じて変更設定することが可能であり、ルール適用環境に応じたアクセス制御ルールを設定することが可能となる。   In the access control rule generation processing according to the present invention, since the access rule for each resource is set by the above-described method, automatic setting of the optimum access rule for many resources can be efficiently performed. . In addition, it is possible to change and set the utility function setting, that is, the balance setting of false positive and false negative according to the application target of the access rule, and access according to the rule application environment. It is possible to set a control rule.

以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。   The present invention has been described in detail above with reference to specific embodiments. However, it is obvious that those skilled in the art can make modifications and substitutions of the embodiments without departing from the gist of the present invention. In other words, the present invention has been disclosed in the form of exemplification, and should not be interpreted in a limited manner. In order to determine the gist of the present invention, the claims section described at the beginning should be considered.

以上、説明したように、本発明の構成によれば、情報家電等の様々な情報処理装置において、ユーザや、プログラム等、使用環境に応じた最適なアクセス制御ルールが効率的に生成可能となり、情報家電、PC等のさまざまな情報処理装置に搭載するアクセス制御ルールを持つセキュリティポリシの生成装置、生成方法としての適用が可能であり、本発明に従って生成したアクセスルールを持つセキュリティポリシは、情報家電、PC等のさまざまな情報処理装置に搭載することができる。   As described above, according to the configuration of the present invention, in various information processing apparatuses such as information home appliances, it is possible to efficiently generate an optimal access control rule according to a use environment such as a user or a program, A security policy generating device having an access control rule mounted on various information processing apparatuses such as information home appliances and PCs, and a security policy having an access rule generated according to the present invention can be applied as a generation method. It can be mounted on various information processing apparatuses such as a PC.

アクセス制御機構を持つ情報処理装置構成およびアクセス制御処理について説明する図である。It is a figure explaining an information processor configuration with an access control mechanism and access control processing. 本発明のアクセス制御ルール生成装置の構成を示すブロック図である。It is a block diagram which shows the structure of the access control rule production | generation apparatus of this invention. 本発明のアクセス制御ルール生成処理に適用するリソースごとの初期確率および尤度データ例について示す図である。It is a figure shown about the initial probability and likelihood data example for every resource applied to the access control rule production | generation process of this invention. フォールスポジティブとフォールスネガティブのバランスについて説明する図である。It is a figure explaining the balance of a false positive and a false negative. 本発明のアクセス制御ルール生成処理に適用する効用関数、損失関数についての例を示す図である。It is a figure which shows the example about the utility function applied to the access control rule production | generation process of this invention, and a loss function. 本発明のアクセス制御ルール生成処理において算出する事後確率、期待損失値の例について説明する図である。It is a figure explaining the example of the posterior probability calculated in the access control rule production | generation process of this invention, and an expected loss value. 本発明のアクセス制御ルール生成処理において算出する期待損失値の例(事象観測あり)を示すグラフである。It is a graph which shows the example (with event observation) of the expected loss value calculated in the access control rule production | generation process of this invention. 本発明のアクセス制御ルール生成処理において算出する期待損失値の例(事象観測なし)を示すグラフである。It is a graph which shows the example (no event observation) of the expected loss value calculated in the access control rule production | generation process of this invention. 本発明のアクセス制御ルール生成処理における処理手順を説明するフロー図である。It is a flowchart explaining the process sequence in the access control rule production | generation process of this invention. 本発明のアクセス制御ルール生成処理における各処理部の処理を説明する図である。It is a figure explaining the process of each process part in the access control rule production | generation process of this invention.

符号の説明Explanation of symbols

110,120,130 プログラム
111,121,131 プログラム対応アクセス制御部
150 オペレーティングシステム
151 OS側アクセス制御部
152 デバイス
153 ネットワークソケット
154 ファイル
210 実行トレース解析処理部
211 リソースアクセス記録処理部
212 リソースアクセス類推処理部
220 パラメータ入力部
221 確立初期分布入力処理部
222 効用関数入力処理部
230 セキュリティポリシ生成処理部
231 確率演算処理部
232 期待損失演算処理部
233 アクセス判断処理部
234 セキュリティポリシ変換処理部
110, 120, 130 Program 111, 121, 131 Program-compatible access control unit 150 Operating system 151 OS-side access control unit 152 Device 153 Network socket 154 File 210 Execution trace analysis processing unit 211 Resource access record processing unit 212 Resource access analogy processing unit 220 Parameter Input Unit 221 Established Initial Distribution Input Processing Unit 222 Utility Function Input Processing Unit 230 Security Policy Generation Processing Unit 231 Probability Calculation Processing Unit 232 Expected Loss Calculation Processing Unit 233 Access Determination Processing Unit 234 Security Policy Conversion Processing Unit

Claims (18)

情報処理装置のリソースに対するアクセス制御ルールを生成するアクセス制御ルール生成装置であり、
アクセス制御ルールの適用対象プログラムを実行し、リソースアクセス履歴情報を含むプログラム実行トレースを取得し、予め設定されたリソース間の関連性情報に基づいて、前記プログラムの実行における各リソースのアクセス有無を推定する実行トレース解析処理部と、
各リソース毎に予め設定されたアクセス発生有無各々に対応する初期確率と、その尤度情報と、フォールスポジティブおよびフォールスネガティブのバランス調整に基づいて設定した効用関数を入力するパラメータ入力処理部と、
前記実行トレース解析処理部から入力するプログラム実行時における各リソースのアクセス有無情報と、前記パラメータ入力処理部から入力する初期確率、尤度情報、および効用関数に基づくベイズ推定処理により各リソース毎のアクセス制御ルールを設定するセキュリティポリシ生成部と、
を有することを特徴とするアクセス制御ルール生成装置。
An access control rule generation device that generates an access control rule for a resource of an information processing device,
Executes the program subject to access control rules, obtains a program execution trace including resource access history information, and estimates the presence / absence of access to each resource in the execution of the program based on the relevance information between resources set in advance An execution trace analysis processing unit,
A parameter input processing unit for inputting an initial function corresponding to each occurrence of access preset for each resource, its likelihood information, and a utility function set based on a balance adjustment of false positive and false negative,
Access information for each resource by Bayesian estimation processing based on the access presence / absence information of each resource during program execution input from the execution trace analysis processing unit and the initial probability, likelihood information, and utility function input from the parameter input processing unit A security policy generator that sets control rules;
An access control rule generation device characterized by comprising:
前記セキュリティポリシ生成部は、
前記実行トレース解析処理部から入力するプログラム実行時における各リソースのアクセス有無情報と、前記パラメータ入力処理部から入力する初期確率、尤度情報とに基づいて、各リソースの正当アクセスの事後確率と、不正アクセスの事後確率を算出する確率演算処理部と、
前記確率演算処理部の算出した事後確率データと、前記パラメータ入力処理部から入力する効用関数に基づいて、各リソース毎のアクセス禁止に伴う期待損失値と、アクセス許可に伴う期待損失値を算出する期待損失演算処理部と、
前記期待損失演算処理部の算出する期待損失値に基づいて、各リソース毎のアクセス制御ルールを設定するアクセス判断処理部と、
を有することを特徴とする請求項1に記載のアクセス制御ルール生成装置。
The security policy generation unit
Based on the access presence / absence information of each resource at the time of program execution input from the execution trace analysis processing unit, and the initial probability input from the parameter input processing unit, likelihood information, A probability calculation processing unit for calculating the posterior probability of unauthorized access;
Based on the posterior probability data calculated by the probability calculation processing unit and the utility function input from the parameter input processing unit, an expected loss value associated with access prohibition for each resource and an expected loss value associated with access permission are calculated. Expected loss calculation processing unit,
An access determination processing unit that sets an access control rule for each resource based on the expected loss value calculated by the expected loss calculation processing unit;
The access control rule generation device according to claim 1, comprising:
前記フォールスポジティブおよびフォールスネガティブのバランス調整に基づいて設定した効用関数は、それぞれフォールスポジティブ効用関数fp()と、フォールスネガティブ効用関数fn()であり、前記効用関数fp()、fn()は、バランス設定のための重み付け係数を決定する重み関数ω(fp)、ω(fn)を含み、該重み関数ω(fp)、ω(fn)は、アクセス制御ルールの適用対象となるプログラム、または機器の少なくともいずれかに基づいて設定される関数であり、該重み関数ω(fp)、ω(fn)の設定により、フォールスポジティブ優先、あるいはフォールスネガティブ優先の設定調整を行った効用関数であることを特徴とする請求項1に記載のアクセス制御ルール生成装置。   The utility functions set based on the balance adjustment of the false positive and the false negative are the false positive utility function fp () and the false negative utility function fn (), respectively, and the utility functions fp () and fn () are Weighting functions ω (fp) and ω (fn) for determining weighting coefficients for balance setting are included, and the weighting functions ω (fp) and ω (fn) are programs or devices to which access control rules are applied. That is set based on at least one of the following functions, and is a utility function that has been adjusted for false positive priority or false negative priority by setting the weight functions ω (fp) and ω (fn). The access control rule generation device according to claim 1, wherein 前記効用関数fp()、fn()は、重み付け係数の比:ω(fn)/ω(fp)>1を満足するフォールスポジティブ優先設定とした効用関数であることを特徴とする請求項3に記載のアクセス制御ルール生成装置。   4. The utility function fp (), fn () is a utility function with a false positive priority setting that satisfies a ratio of weighting coefficients: ω (fn) / ω (fp)> 1. The access control rule generation device described. 前記効用関数fp()、fn()は、重み付け係数の比:ω(fp)/ω(fn)>1を満足するフォールスネガティブ優先設定とした効用関数であることを特徴とする請求項3に記載のアクセス制御ルール生成装置。   4. The utility function fp (), fn () is a utility function having a false negative priority setting that satisfies a ratio of weighting coefficients: ω (fp) / ω (fn)> 1. The access control rule generation device described. 前記実行トレース解析処理部において適用するリソース間の関連性情報は、
同一ディレクトリにあるリソースを関連性ありとする情報であり、
前記実行トレース解析処理部は、
前記プログラムの実行におけるリソースアクセスの発生したリソースと同一ディレクトリにあるリソースをプログラム実行におけるアクセス発生リソースとして類推する処理を実行する構成であることを特徴とする請求項1に記載のアクセス制御ルール生成装置。
Relevance information between resources applied in the execution trace analysis processing unit is as follows:
Information that makes resources in the same directory relevant,
The execution trace analysis processing unit
2. The access control rule generation device according to claim 1, wherein the access control rule generation apparatus is configured to execute processing for analogizing a resource in the same directory as a resource in which resource access has occurred in execution of the program as an access occurrence resource in program execution. .
前記実行トレース解析処理部において適用するリソース間の関連性情報は、
同一種別のリソースを関連性ありとする情報であり、
前記実行トレース解析処理部は、
前記プログラムの実行におけるリソースアクセスの発生したリソースと同一種別のリソースをプログラム実行におけるアクセス発生リソースとして類推する処理を実行する構成であることを特徴とする請求項1に記載のアクセス制御ルール生成装置。
Relevance information between resources applied in the execution trace analysis processing unit is as follows:
Information that makes the same type of resource relevant.
The execution trace analysis processing unit
The access control rule generation device according to claim 1, wherein the access control rule generation device according to claim 1 is configured to execute a process of analogizing a resource of the same type as a resource in which resource access has occurred in execution of the program as an access occurrence resource in program execution.
前記実行トレース解析処理部において適用するリソース間の関連性情報は、
同一カテゴリのネットワークポートを関連性のあるリソースとする情報であり、
前記実行トレース解析処理部は、
前記プログラムの実行におけるリソースアクセスの発生したネットワークポートと同一カテゴリのネットワークポートをプログラム実行におけるアクセス発生リソースとして類推する処理を実行する構成であることを特徴とする請求項1に記載のアクセス制御ルール生成装置。
Relevance information between resources applied in the execution trace analysis processing unit is as follows:
Information regarding network ports of the same category as related resources,
The execution trace analysis processing unit
2. The access control rule generation according to claim 1, wherein a process for analogizing a network port in the same category as a network port in which resource access has occurred in execution of the program as an access occurrence resource in program execution is executed. apparatus.
前記リソースは、情報処理装置内のハードウェア、およびプログラム、システムデータ、ユーザデータを含むソフトゥェアを含むことを特徴とする請求項1に記載のアクセス制御ルール生成装置。   2. The access control rule generation device according to claim 1, wherein the resource includes hardware in an information processing device and software including a program, system data, and user data. 情報処理装置のリソースに対するアクセス制御ルールを生成するアクセス制御ルール生成方法であり、
アクセス制御ルールの適用対象プログラムを実行し、リソースアクセス履歴情報を含むプログラム実行トレースを取得し、予め設定されたリソース間の関連性情報に基づいて、前記プログラムの実行における各リソースのアクセス有無を推定する実行トレース解析処理ステップと、
各リソース毎に予め設定されたアクセス発生有無各々に対応する初期確率と、その尤度情報と、フォールスポジティブおよびフォールスネガティブのバランス調整に基づいて設定した効用関数を入力するパラメータ入力処理ステップと、
前記実行トレース解析処理において取得したプログラム実行時における各リソースのアクセス有無情報と、前記パラメータ入力処理において入力する初期確率、尤度情報、および効用関数に基づくベイズ推定処理により各リソース毎のアクセス制御ルールを設定するセキュリティポリシ生成ステップと、
を有することを特徴とするアクセス制御ルール生成方法。
An access control rule generation method for generating an access control rule for a resource of an information processing device,
Executes the program subject to access control rules, obtains a program execution trace including resource access history information, and estimates the presence / absence of access to each resource in the execution of the program based on the relevance information between resources set in advance Execution trace analysis processing step to perform,
A parameter input processing step for inputting an initial probability corresponding to each occurrence of access preset for each resource, its likelihood information, and a utility function set based on a balance adjustment of false positive and false negative,
Access control rules for each resource by Bayesian estimation processing based on access probability information of each resource at the time of program execution acquired in the execution trace analysis processing, initial probability input in the parameter input processing, likelihood information, and utility function A security policy generation step for setting
An access control rule generation method characterized by comprising:
前記セキュリティポリシ生成ステップは、
前記実行トレース解析処理において取得したプログラム実行時における各リソースのアクセス有無情報と、前記パラメータ入力処理において入力する初期確率、尤度情報とに基づいて、各リソースの正当アクセスの事後確率と、不正アクセスの事後確率を算出する確率演算処理ステップと、
前記確率演算処理ステップにおいて算出した事後確率データと、前記パラメータ入力処理ステップにおいて入力した効用関数に基づいて、各リソース毎のアクセス禁止に伴う期待損失値と、アクセス許可に伴う期待損失値を算出する期待損失演算処理ステップと、
前記期待損失演算処理ステップにおいて算出した期待損失値に基づいて、各リソース毎のアクセス制御ルールを設定するアクセス判断処理ステップと、
を有することを特徴とする請求項10に記載のアクセス制御ルール生成方法。
The security policy generation step includes:
Based on the access presence / absence information of each resource at the time of program execution acquired in the execution trace analysis process and the initial probability and likelihood information input in the parameter input process, the posterior probability of legitimate access of each resource, and unauthorized access A probability calculation processing step for calculating the posterior probability of
Based on the posterior probability data calculated in the probability calculation processing step and the utility function input in the parameter input processing step, an expected loss value associated with access prohibition for each resource and an expected loss value associated with access permission are calculated. Expected loss calculation processing step;
Based on the expected loss value calculated in the expected loss calculation processing step, an access determination processing step for setting an access control rule for each resource;
The access control rule generation method according to claim 10, further comprising:
前記フォールスポジティブおよびフォールスネガティブのバランス調整に基づいて設定した効用関数は、それぞれフォールスポジティブ効用関数fp()と、フォールスネガティブ効用関数fn()であり、前記効用関数fp()、fn()は、バランス設定のための重み付け係数を決定する重み関数ω(fp)、ω(fn)を含み、該重み関数ω(fp)、ω(fn)は、アクセス制御ルールの適用対象となるプログラム、または機器の少なくともいずれかに基づいて設定される関数であり、該重み関数ω(fp)、ω(fn)の設定により、フォールスポジティブ優先、あるいはフォールスネガティブ優先の設定調整を行った効用関数であることを特徴とする請求項10に記載のアクセス制御ルール生成方法。   The utility functions set based on the balance adjustment of the false positive and the false negative are the false positive utility function fp () and the false negative utility function fn (), respectively. The utility functions fp () and fn () are Weighting functions ω (fp) and ω (fn) for determining weighting coefficients for balance setting are included, and the weighting functions ω (fp) and ω (fn) are programs or devices to which access control rules are applied. That is set based on at least one of the following functions, and is a utility function that has been adjusted for false positive priority or false negative priority by setting the weight functions ω (fp) and ω (fn). The access control rule generation method according to claim 10, wherein: 前記効用関数fp()、fn()は、重み付け係数の比:ω(fn)/ω(fp)>1を満足するフォールスポジティブ優先設定とした効用関数であることを特徴とする請求項12に記載のアクセス制御ルール生成方法。   13. The utility function fp (), fn () is a utility function having a false positive priority setting that satisfies a ratio of weighting coefficients: ω (fn) / ω (fp)> 1. The access control rule generation method described. 前記効用関数fp()、fn()は、重み付け係数の比:ω(fp)/ω(fn)>1を満足するフォールスネガティブ優先設定とした効用関数であることを特徴とする請求項12に記載のアクセス制御ルール生成方法。   13. The utility function fp (), fn () is a utility function with a false negative priority setting that satisfies a ratio of weighting coefficients: ω (fp) / ω (fn)> 1. The access control rule generation method described. 前記トレース解析処理ステップにおいて適用するリソース間の関連性情報は、
同一ディレクトリにあるリソースを関連性ありとする情報であり、
前記実行トレース解析処理ステップは、
前記プログラムの実行におけるリソースアクセスの発生したリソースと同一ディレクトリにあるリソースをプログラム実行におけるアクセス発生リソースとして類推する処理を実行することを特徴とする請求項10に記載のアクセス制御ルール生成方法。
Relevance information between resources applied in the trace analysis processing step is:
Information that makes resources in the same directory relevant,
The execution trace analysis processing step includes:
11. The access control rule generation method according to claim 10, wherein a process of analogizing a resource in the same directory as a resource in which resource access has occurred during execution of the program as an access occurrence resource in program execution is executed.
前記実行トレース解析処理ステップにおいて適用するリソース間の関連性情報は、
同一種別のリソースを関連性ありとする情報であり、
前記実行トレース解析処理ステップは、
前記プログラムの実行におけるリソースアクセスの発生したリソースと同一種別のリソースをプログラム実行におけるアクセス発生リソースとして類推する処理を実行することを特徴とする請求項10に記載のアクセス制御ルール生成方法。
Relevance information between resources applied in the execution trace analysis processing step is:
Information that makes the same type of resource relevant.
The execution trace analysis processing step includes:
11. The access control rule generation method according to claim 10, wherein a process of analogizing a resource of the same type as a resource in which resource access has occurred in execution of the program as an access occurrence resource in program execution is executed.
前記実行トレース解析処理ステップにおいて適用するリソース間の関連性情報は、
同一カテゴリのネットワークポートを関連性のあるリソースとする情報であり、
前記実行トレース解析処理ステップは、
前記プログラムの実行におけるリソースアクセスの発生したネットワークポートと同一カテゴリのネットワークポートをプログラム実行におけるアクセス発生リソースとして類推する処理を実行することを特徴とする請求項10に記載のアクセス制御ルール生成方法。
Relevance information between resources applied in the execution trace analysis processing step is:
Information regarding network ports of the same category as related resources,
The execution trace analysis processing step includes:
11. The access control rule generation method according to claim 10, wherein a process of analogizing a network port in the same category as a network port in which resource access has occurred in execution of the program as an access occurrence resource in program execution is executed.
情報処理装置のリソースに対するアクセス制御ルール生成処理を実行するコンピュータ・プログラムであり、
アクセス制御ルールの適用対象プログラムを実行し、リソースアクセス履歴情報を含むプログラム実行トレースを取得し、予め設定されたリソース間の関連性情報に基づいて、前記プログラムの実行における各リソースのアクセス有無を推定する実行トレース解析処理ステップと、
各リソース毎に予め設定されたアクセス発生有無各々に対応する初期確率と、その尤度情報と、フォールスポジティブおよびフォールスネガティブのバランス調整に基づいて設定した効用関数を入力するパラメータ入力処理ステップと、
前記実行トレース解析処理において取得したプログラム実行時における各リソースのアクセス有無情報と、前記パラメータ入力処理において入力する初期確率、尤度情報、および効用関数に基づくベイズ推定処理により各リソース毎のアクセス制御ルールを設定するセキュリティポリシ生成ステップと、
を有することを特徴とするコンピュータ・プログラム。
A computer program for executing access control rule generation processing for resources of an information processing device,
Executes the program subject to access control rules, obtains a program execution trace including resource access history information, and estimates the presence / absence of access to each resource in the execution of the program based on the relevance information between resources set in advance Execution trace analysis processing step to perform,
A parameter input processing step for inputting an initial probability corresponding to each occurrence of access preset for each resource, its likelihood information, and a utility function set based on a balance adjustment of false positive and false negative,
Access control rules for each resource by Bayesian estimation processing based on access probability information of each resource at the time of program execution acquired in the execution trace analysis processing, initial probability input in the parameter input processing, likelihood information, and utility function A security policy generation step for setting
A computer program characterized by comprising:
JP2003279522A 2003-07-25 2003-07-25 Access control rule generation device, access control rule generation method and computer program Pending JP2005044243A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003279522A JP2005044243A (en) 2003-07-25 2003-07-25 Access control rule generation device, access control rule generation method and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003279522A JP2005044243A (en) 2003-07-25 2003-07-25 Access control rule generation device, access control rule generation method and computer program

Publications (1)

Publication Number Publication Date
JP2005044243A true JP2005044243A (en) 2005-02-17

Family

ID=34265601

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003279522A Pending JP2005044243A (en) 2003-07-25 2003-07-25 Access control rule generation device, access control rule generation method and computer program

Country Status (1)

Country Link
JP (1) JP2005044243A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008126773A1 (en) * 2007-04-05 2008-10-23 Nec Corporation Information processing system and information processing method
JP2009015650A (en) * 2007-07-05 2009-01-22 Toshiba Corp Portable electronic device, operating system program of the same, and control method of the same

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008126773A1 (en) * 2007-04-05 2008-10-23 Nec Corporation Information processing system and information processing method
JP5317020B2 (en) * 2007-04-05 2013-10-16 日本電気株式会社 Information processing system and information processing method
JP2009015650A (en) * 2007-07-05 2009-01-22 Toshiba Corp Portable electronic device, operating system program of the same, and control method of the same

Similar Documents

Publication Publication Date Title
US11405400B2 (en) Hardening based on access capability exercise sufficiency
Petroni Jr et al. An Architecture for Specification-Based Detection of Semantic Integrity Violations in Kernel Dynamic Data.
US8126856B2 (en) File access management system
US8769296B2 (en) Software signature tracking
US9996693B2 (en) Automated malware signature generation
US20060101282A1 (en) System and method of aggregating the knowledge base of antivirus software applications
US20060101264A1 (en) System and method of aggregating the knowledge base of antivirus software applications
CN109684835A (en) The system and method for malicious file are detected using machine learning
US8214904B1 (en) System and method for detecting computer security threats based on verdicts of computer users
KR20180032566A (en) Systems and methods for tracking malicious behavior across multiple software entities
JP2009020812A (en) Operation detecting system
US10664619B1 (en) Automated agent for data copies verification
KR100959276B1 (en) A system for preventing installation of malicious codes using a control list at the kernel level and the computer-readable recording medium having recording the program thereof
US20230208880A1 (en) Automating trust in software upgrades
EP2584488B1 (en) System and method for detecting computer security threats based on verdicts of computer users
JP2007148946A (en) Unauthorized access detection method
JP4363214B2 (en) Access policy generation system, access policy generation method, and access policy generation program
RU2747514C2 (en) System and method for categorizing application on computing device
KR20210025448A (en) Apparatus and method for endpoint detection and response terminal based on artificial intelligence behavior analysis
JP2005044243A (en) Access control rule generation device, access control rule generation method and computer program
KR20190064264A (en) Ransomware dectecting method and apparatus based on machine learning through hybrid analysis
RU101224U1 (en) SYSTEM OF IDENTIFICATION AND MINIMIZATION OF RISK OF FALSE WORKS
CN117290823B (en) APP intelligent detection and safety protection method, computer equipment and medium
Rencelj Ling et al. Estimating time-to-compromise for industrial control system attack techniques through vulnerability data
JP5126495B2 (en) Security policy setting device linked with safety evaluation, program thereof and method thereof