JP2005063224A - Method and device for automatically generating security policy of secure os, and program for executing the method - Google Patents

Method and device for automatically generating security policy of secure os, and program for executing the method Download PDF

Info

Publication number
JP2005063224A
JP2005063224A JP2003293787A JP2003293787A JP2005063224A JP 2005063224 A JP2005063224 A JP 2005063224A JP 2003293787 A JP2003293787 A JP 2003293787A JP 2003293787 A JP2003293787 A JP 2003293787A JP 2005063224 A JP2005063224 A JP 2005063224A
Authority
JP
Japan
Prior art keywords
security policy
generating
notation
source code
access
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
JP2003293787A
Other languages
Japanese (ja)
Inventor
Shunichi Konno
俊一 今野
Yoichi Hirose
洋一 廣瀬
Junpei Watase
順平 渡瀬
Mitsuyasu Ito
光恭 伊藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2003293787A priority Critical patent/JP2005063224A/en
Publication of JP2005063224A publication Critical patent/JP2005063224A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To automatically generate a security policy for operating an application on a secure OS. <P>SOLUTION: A first intermediate notation independent from implementation forms of operating system (OS) and forced access control of a target is generated from a source code or a modeling view (steps 202 and 204). In the generation of the first intermediate notation, with respect to a certain access relation, when a plurality of candidates are given for an access authority to be set in the security policy, the access authority of the candidates is presented to a user, whereby the access authority of the access relation is solved (steps 203 and 207). A second intermediate notation dependent from the directory structure of the target is generated from information for the implementation forms of OS and forced access control of the target based on the first intermediate notation (step 205), and the security policy is generated from information for the directory structure of the target based on the second intermediate notation (step 206). <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、リソースのラベリングと強制アクセス制御(MAC:Mandatory Access Control)機構などを導入したセキュアなオペレーティングシステム(OS:Operating System、以下、セキュアなオペレーティングシステムのことをセキュアOSと呼ぶ)における、セキュリティポリシと呼ばれるセキュリティ設定を自動的に生成する方法及び装置に関する。   The present invention provides security in a secure operating system (OS: Operating System, hereinafter referred to as a secure OS) in which resource labeling and a mandatory access control (MAC) mechanism are introduced. The present invention relates to a method and an apparatus for automatically generating a security setting called a policy.

軍事設備を含んだ中央省庁においては、従来のOSよりも高いセキュリティを有するOSが必要とされ、セキュアOS(例えば、非特許文献1を参照 )の中でも、特に、トラステッド(Trusted)OSと呼ばれるTCSEC(Trusted Computer Systems Evaluation Criteria)のB1レベル及びCMWEC(Compartmented Mode Workstation Evaluation Criteria) で求められている機能を実装しているOSの普及が進んできた。セキュアOSは、トラステッドOSほど厳しい実装要件は必要とされないものの、MAC機構などトラステッドOSの実装要件の一部を満たしているOSのことを指している。セキュアOSは、中央省庁以外でも、ユーザやスーパーユーザが不適切なセキュリティ設定を行うことによる情報漏洩・サーバへの不正侵入・不正利用を特に警戒する環境において、今後普及が進むことが予測されている。   Central government agencies that include military equipment require OSs with higher security than conventional OSs. Among secure OSs (see, for example, Non-Patent Document 1), TCSEC called a Trusted OS is particularly preferred. The spread of OSs that implement the functions required by the B1 level of (Trusted Computer Systems Evaluation Criteria) and CMWEC (Compartmented Mode Workstation Evaluation Criteria) has progressed. A secure OS refers to an OS that satisfies some of the requirements for implementing a trusted OS, such as a MAC mechanism, although implementation requirements that are not as strict as those of a trusted OS are required. Secure OSs are expected to spread further in environments that are particularly wary of information leaks, unauthorized intrusion and unauthorized use of servers by inappropriate security settings by users and superusers other than central government ministries and agencies. Yes.

セキュアOSは、セキュリティポリシと呼ぶセキュリティの設定をきめ細かく施すことにより高いセキュリティを実現している。このセキュリティポリシは、一般に、OSによって書式等が異なるばかりでなく、各OSで複数の強制アクセス制御の実装形態を利用できる場合には、それぞれの強制アクセス制御の実装形態によっても書式が異なる。例えば、セキュアOSのMAC機構は、ユーザやスーパーユーザが従来の任意アクセス制御(DAC:Discretionary Access Control)の範囲でどのような設定を行っても、予めセキュリティ管理者が設定したMACのセキュリティポリシで許可しているアクセス権限を越えてプロセスが動作することができないようになっている、そのため、あるアプリケーションをMAC機構に対応したセキュアOS上で動作させるためには、セキュリティポリシにおいて、そのアプリケーションのプロセスがどのようなプロセス、ファイル、ソケットといったリソースにアクセスする権限が必要なのかを羅列しなければならない。   The secure OS realizes high security by finely setting a security setting called a security policy. In general, the format of this security policy is not only different depending on the OS, but also in the case where a plurality of mandatory access control implementation forms can be used in each OS, the format differs depending on the implementation form of each mandatory access control. For example, the MAC mechanism of the secure OS is based on the MAC security policy set in advance by the security administrator, no matter what setting the user or super user performs within the range of conventional discretionary access control (DAC). The process cannot operate beyond the permitted access authority. Therefore, in order to operate a certain application on the secure OS corresponding to the MAC mechanism, the process of the application is required in the security policy. Must list what processes, files, sockets, etc. resources they need to have access to.

従来、このセキュリティポリシは人手によって生成する他はなく、アプリケーションの動作とセキュアOSの仕様・セキュリティポリシの双方を理解している開発者が各アプリケーション、OS、強制アクセス制御の実装形態ごとにセキュリティポリシを生成する必要があった。また、先述のようにセキュリティポリシがターゲットマシンのディレクトリ構造に左右されるMAC機構に対応する場合は、ディレクトリ構造も考慮してセキュリティポリシを生成しなければならない。このようにセキュリティポリシを生成するためには多くの情報を必要とするため、セキュアOS上でアプリケーションを動作させるためには、アプリケーションの開発時、導入時、さらには維持管理時にも多くのコストがかかることになる。これは、セキュアOSの普及の阻害要因となっている。
日立ソフトウェアエンジニアリング株式会社開発本部著、“オペレーティングシステムのセキュリティ機能拡張の調査”IPAセキュリティセンター調査報告、[online]、2002年3月11日掲載、IPAセキュリティセンター、[2003年7月9日確認]、インターネット<URL: http://www.ipa.go.jp/security/fy13/report/secure_os/secure_os.html>
Conventionally, this security policy has not been generated manually, but a developer who understands both the operation of the application and the specifications / security policy of the secure OS can determine the security policy for each application, OS, and implementation of mandatory access control. Needed to be generated. As described above, when the security policy corresponds to the MAC mechanism that depends on the directory structure of the target machine, the security policy must be generated in consideration of the directory structure. As described above, since a lot of information is required to generate a security policy, in order to run an application on a secure OS, a lot of costs are required at the time of development, introduction, and maintenance of the application. It will take. This is an obstacle to the spread of secure OS.
Hitachi Software Engineering Co., Ltd., Development Headquarters, “Investigation of Operating System Security Function Expansion”, IPA Security Center Survey Report, [online], published on March 11, 2002, IPA Security Center, [Confirmed July 9, 2003] Internet <URL: http://www.ipa.go.jp/security/fy13/report/secure_os/secure_os.html>

上述したように、セキュアOSのセキュリティポリシの生成に際しては、従来、その大半に人手が介在し、また、セキュリティポリシの作成者は、アプリケーションの動作とセキュアOS仕様・セキュリティポリシの文法の双方を知る必要がある。また、アプリケーションが必要としていないセキュリティポリシを追加してしまうことにより、セキュリティホールが混入する恐れがある。さらに、セキュリティポリシの設定は難解であり、一般に、アプリケーションの開発者とセキュリティポリシを理解して設定できる開発者とは別となっている。このため、セキュアOSを利用するためにはコストがかかってしまう。   As described above, when generating a security policy for a secure OS, the majority of them have conventionally involved human intervention, and the creator of the security policy knows both the operation of the application and the grammar of the secure OS specification / security policy. There is a need. Also, adding a security policy that is not required by the application may lead to security holes. Furthermore, setting a security policy is difficult, and is generally separate from an application developer and a developer who can understand and set the security policy. For this reason, it is expensive to use the secure OS.

本発明は、このような問題を解決し、セキュアOS上でアプリケーションを使用するためにセキュリティポリシを生成する際に、アプリケーションのソースファイルないし開発時に使用するモデリング図からセキュリティポリシの雛型を生成し、さらにアプリケーションを使用するセキュアOSの環境に特化したセキュリティポリシを自動的に生成することができる方法及び装置を提供することにある。   The present invention solves such a problem, and generates a security policy template from an application source file or a modeling diagram used during development when generating a security policy for using an application on a secure OS. Another object of the present invention is to provide a method and apparatus capable of automatically generating a security policy specialized for a secure OS environment using an application.

本発明による、リソースへのラベリングと強制アクセス制御機構とを備えたセキュアOSにおいてアプリケーションを動作させるために用いられるセキュリティポリシを自動的に生成する方法は、アプリケーションを表わすソースコードまたはモデリング図から、ターゲットのOSと強制アクセス制御の実装形態に依存しない第1の中間表記を生成する、第1の中間表記生成段階と、第1の中間表記の生成に際し、あるアクセス関係についてはセキュリティポリシ内で設定するアクセス権限が複数候補挙げられる場合にはユーザに候補のアクセス権限を提示することによりそのアクセス関係のアクセス権限を解決する段階と、第1の中間表記に基づき、ターゲットのOSと強制アクセス制御の実装形態の情報からターゲットのディレクトリ構造に依存しない第2の中間表記を生成する段階と、第2の中間表記に基づき、ターゲットのディレクトリ構造の情報からセキュリティポリシを生成する段階と、を有する。   According to the present invention, a method for automatically generating a security policy used for operating an application in a secure OS having a resource labeling and a mandatory access control mechanism is obtained from a source code representing an application or a modeling diagram. In the first intermediate notation generation stage for generating the first intermediate notation that does not depend on the OS and the implementation form of mandatory access control, and in the generation of the first intermediate notation, a certain access relationship is set in the security policy. When there are a plurality of candidates for access authority, the stage of resolving the access authority of the access relationship by presenting the candidate access authority to the user, and implementation of the target OS and forced access control based on the first intermediate notation From the form information, the target directory structure Based on the generating a second intermediate representation which is independent, a second intermediate representation comprises generating a security policy from the information in the directory structure of the target, the.

ここでソースコードとして、既存のコンパイラには無視されてその既存のコンパイラには影響を与えない構文からなるとともにセキュリティポリシの生成に必要な情報を持つ指示子をソースコードに埋め込んだ指示子表記拡張ソースコードを用いる場合には、第1の中間表記生成段階は、この指示子表記拡張ソースコードから指示子表記を抽出する段階と、指示子表記から第1の中間表記を生成する段階と、を備えればよい。この場合、セキュリティポリシ生成に必要な情報を埋め込むことができるように文法を拡張したセキュリティポリシ記述拡張モデリング図を入力として、このセキュリティポリシ記述拡張モデリング図を指示子表記拡張ソースコードに変換するようにしてもよい。   Here, as the source code, the directive notation extension that has a syntax that is ignored by the existing compiler and does not affect the existing compiler and that has information necessary for generating the security policy is embedded in the source code. In the case of using the source code, the first intermediate notation generation step includes a step of extracting the indicator notation from the indicator notation extended source code and a step of generating the first intermediate notation from the indicator notation. You just have to prepare. In this case, the security policy description extended modeling diagram whose grammar is extended so that the information necessary for generating the security policy can be embedded is input, and this security policy description extended modeling diagram is converted into the indicator notation extended source code. May be.

ソースコードとして既存文法によるソースコードを用いる場合には、第1の中間表記生成段階は、既存文法によるソースコードにおいてプロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出する段階と、抽出されたアクセス権限から第1の中間表記を生成する段階と、を備えればよい。この場合、既存文法によるモデリング図を入力として、この既存文法によるモデリング図を既存文法によるソースコードに変換するようにしてもよい。   In the case of using source code according to an existing grammar as source code, the first intermediate notation generation stage extracts what resources and what access authority the process requires in the source code according to the existing grammar; Generating a first intermediate representation from the extracted access authority. In this case, a modeling diagram based on the existing grammar may be input to the modeling diagram based on the existing grammar and converted into source code based on the existing grammar.

モデリング図として、上述したセキュリティポリシ記述拡張モデリング図を用いる場合には、第1の中間表記生成段階は、セキュリティポリシ記述拡張モデリング図からセキュリティポリシ記述を抽出する段階と、セキュリティポリシ記述から第1の中間表記を生成する段階と、を備えればよい。   When the above-described security policy description extended modeling diagram is used as a modeling diagram, the first intermediate notation generation step includes a step of extracting a security policy description from the security policy description extended modeling diagram, and a first step from the security policy description. Generating an intermediate representation.

モデリング図として既存文法によるモデリング図を用いる場合には、第1の中間表記生成段階は、プロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出する段階と、抽出されたアクセス権限から第1の中間表記を生成する段階と、を備えればよい。   When using a modeling diagram based on an existing grammar as a modeling diagram, the first intermediate notation generation step is a step of extracting what access authority is required for which resource by the process, and from the extracted access authority. Generating a first intermediate representation.

本発明による、リソースへのラベリングと強制アクセス制御機構とを備えたセキュアOSにおいてアプリケーションを動作させるために用いられるセキュリティポリシを自動的に生成する装置は、アプリケーションを表わすソースコードまたはモデリング図から、ターゲットのOSと強制アクセス制御の実装形態に依存しない第1の中間表記を生成する、第1の中間表記生成手段と、第1の中間表記の生成に際し、あるアクセス関係についてはセキュリティポリシ内で設定するアクセス権限が複数候補挙げられる場合にはユーザに候補のアクセス権限を提示することによりそのアクセス関係のアクセス権限を解決する手段と、第1の中間表記に基づき、ターゲットのOSと強制アクセス制御の実装形態の情報からターゲットのディレクトリ構造に依存しない第2の中間表記を生成し、第2の中間表記に基づき、ターゲットのディレクトリ構造の情報からセキュリティポリシを生成する手段と、を有する。   According to the present invention, an apparatus for automatically generating a security policy used for operating an application in a secure OS having a resource labeling and a mandatory access control mechanism is obtained from a source code representing an application or a modeling diagram. When generating the first intermediate notation and the first intermediate notation generating means for generating the first intermediate notation that does not depend on the OS and the implementation form of the mandatory access control, a certain access relationship is set in the security policy. When there are a plurality of candidates for access authority, means for resolving the access authority of the access relationship by presenting the candidate access authority to the user, and implementation of target OS and forced access control based on the first intermediate notation From the form information, the target directory structure Generating a second intermediate representation which does not depend on, based on the second intermediate representation comprises means for generating a security policy from the information in the directory structure of the target, the.

ここでソースコードとして、上述したような指示子表記拡張ソースコードを用いるためには、第1の中間表記生成手段は、指示子表記拡張ソースコードから指示子表記を抽出し、指示子表記から第1の中間表記を生成する手段を備えていればよい。この場合、上述したセキュリティポリシ記述拡張モデリング図を入力として、セキュリティポリシ記述拡張モデリング図を指示子表記拡張ソースコードに変換する手段をさらに設けてもよい。   Here, in order to use the indicator notation extended source code as described above as the source code, the first intermediate notation generating unit extracts the indicator notation from the indicator notation extended source code, It suffices to have a means for generating one intermediate representation. In this case, there may be further provided means for converting the security policy description extended modeling diagram into the indicator notation extended source code with the above-described security policy description extended modeling diagram as an input.

ソースコードとして既存文法によるソースコードを用いるためには、第1の中間表記生成手段は、その既存文法によるソースコードにおいてプロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出し、抽出されたアクセス権限から第1の中間表記を生成する手段を備えていればよい。   In order to use the source code based on the existing grammar as the source code, the first intermediate notation generating means extracts and extracts what access authority the process requires in the source code based on the existing grammar. It suffices to have means for generating the first intermediate notation from the access authority that has been set.

モデリング図として上述したセキュリティポリシ記述拡張モデリング図を用いるためには、第1の中間表記生成手段は、セキュリティポリシ記述拡張モデリング図からセキュリティポリシ記述を抽出し、セキュリティポリシ記述から第1の中間表記を生成する手段を備えていればよい。   In order to use the above-described security policy description extended modeling diagram as a modeling diagram, the first intermediate notation generation unit extracts the security policy description from the security policy description extended modeling diagram, and uses the first intermediate notation from the security policy description. What is necessary is just to provide the means to produce | generate.

モデリング図として既存文法によるモデリング図を用いる場合には、第1の中間表記生成手段は、プロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出し、抽出されたアクセス権限から第1の中間表記を生成する手段を備えていればよい。   When a modeling diagram based on an existing grammar is used as a modeling diagram, the first intermediate notation generation unit extracts what access authority is required for which resource by the process, and the first access authority is extracted from the extracted access authority. It suffices to have a means for generating the intermediate representation.

本発明によれば、セキュアOSのセキュリティポリシの自動的に生成することが可能となって、セキュアOSとセキュアOS上で動作させるアプリケーションの開発・導入・維持管理時のコストを削減することができる。さらに、アプリケーションのソースファイルからセキュリティポリシを自動的に生成する場合において、そのアプリケーションが必要としていないセキュリティポリシが追加されることが防がれ、これにより、セキュリティの強化が可能になる。   According to the present invention, it is possible to automatically generate a security policy for a secure OS, and it is possible to reduce costs during development, introduction, and maintenance management of a secure OS and an application operating on the secure OS. . Furthermore, when a security policy is automatically generated from an application source file, it is possible to prevent a security policy not required by the application from being added, thereby enhancing security.

次に、本発明の好ましい実施の形態について、図面を参照して説明する。図1は、本発明の実施の一形態のセキュリティポリシ自動生成装置の構成を示すブロック図である。   Next, a preferred embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing a configuration of an automatic security policy generation apparatus according to an embodiment of the present invention.

図1に示したセキュリティポリシ自動生成装置100は、アプリケーションの指示子表記拡張ソースコード11、既存文法によるアプリケーションのソースコード12、既存文法によるアプリケーションのモデリング図13、アプリケーションのセキュリティポリシ記述拡張モデリング図14のいずれかを入力として、そのアプリケーションをセキュアOS上で動作させるためのセキュリティポリシ16を生成するものである。ここで指示子表記拡張ソースコード11とは、セキュリティポリシの自動生成に必要な情報を埋め込むことができるような指示子を埋め込んだソースコードのことを指す。この場合、この指示子は、既存のコンパイラには無視され、既存のコンパイラの処理には影響を与えないような構文からなっている。セキュリティポリシ記述拡張モデリング図14とは、セキュリティポリシ生成に必要な情報を記述できるように文法を拡張したモデリング図のことを指す。   The automatic security policy generation apparatus 100 shown in FIG. 1 includes an application indicator notation extension source code 11, an application source code 12 based on an existing grammar, an application modeling based on an existing grammar 13, an application security policy description extended modeling diagram 14 As an input, a security policy 16 for generating the application on the secure OS is generated. Here, the indicator notation extension source code 11 refers to source code in which an indicator capable of embedding information necessary for automatic generation of a security policy is embedded. In this case, this directive has a syntax that is ignored by the existing compiler and does not affect the processing of the existing compiler. Security Policy Description Extended Modeling FIG. 14 is a modeling diagram in which the grammar is extended so that information necessary for generating a security policy can be described.

セキュリティポリシ自動生成部装置100は、指示子表記拡張ソースコード11から指示子を抽出する指示子抽出部111と、既存文法によるソースコード12を解釈するソースコード解釈部112と、セキュリティポリシ記述拡張モデリング図14を指示子表記拡張ソースコード11に変換する拡張モデリング図変換部113と、既存文法によるモデリング図13を解釈するモデリング図解釈部114と、セキュリティポリシ記述拡張モデリング図14からセキュリティポリシ記述を抽出するセキュリティポリシ記述抽出部115、既存文法によるソースコードまたはモデリング図の解釈結果に基づき、アプリケーションのプロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出するアクセス権限抽出部121と、抽出された指示子、アクセス権限あるいはセキュリティポリシ記述に基づいてセキュリティポリシ16を生成するセキュリティポリシ生成部131と、ユーザに対して問合せを行うユーザ問合せ部141と、を備えている。   The security policy automatic generation unit 100 includes an indicator extraction unit 111 that extracts an indicator from the indicator notation extension source code 11, a source code interpretation unit 112 that interprets a source code 12 based on an existing grammar, and security policy description extension modeling. An extension modeling diagram conversion unit 113 that converts FIG. 14 into the indicator notation extension source code 11, a modeling diagram interpretation unit 114 that interprets a modeling diagram 13 based on an existing grammar, and a security policy description extracted from the security policy description extension modeling diagram 14 A security policy description extracting unit 115, an access authority extracting unit 121 for extracting what access authority an application process requires based on an interpretation result of a source code or a modeling diagram based on an existing grammar, and an extraction The And indicator, and a security policy generating unit 131 for generating a security policy 16 based on the access rights or security policy description, the user query 141 to query the user, the.

具体的には、指示子抽出部111は、指示子表記拡張ソースコード11中の指示子表記を抽出し、これをターゲットのOSと強制アクセス制御の実装形態に依存しない中間表記1に変換する。ソースコード解釈部112は、既存文法によるソースコード12をアセンブリ言語などの低級言語表記に変換する。モデリング図解釈部114は、既存文法によるモデリング図13をプロセス対リソースの関係を記した中間表記0に変換する。セキュリティポリシ記述抽出部115は、セキュリティポリシ記述モデリング図14中のセキュリティポリシ記述を抽出して、これを、ターゲットのOSと強制アクセス制御の実装形態に依存しない中間表記1に変換する。アクセス権限抽出部121は、上述した低級言語表記あるいは中間表記0から、必要なアクセス権限を抽出・蓄積して、蓄積したアクセス権限を、ターゲットのOSと強制アクセス制御の実装形態に依存しない中間表記1に変換する。セキュリティポリシ生成部131は、中間表記1をターゲットのディレクトリ構造に依存しない中間表記2に変換し、さらに最終的なセキュリティポリシを生成する。なお、対象とするアプリケーションにおいて、あるアクセス関係についてセキュリティポリシ内で設定するアクセス権限が複数候補挙げられる場合があるが、これについては、ユーザ問合せ部141がこれら複数のアクセス権限候補をユーザに提示し、ユーザが選択したアクセス権限によってセキュリティポリシが設定されるようにしている。すなわち、指示子抽出部111、セキュリティポリシ記述抽出部及びアクセス権限抽出部121は、中間表記1を生成する際に複数のアクセス権限候補があってそれを解決しなければならないときに、ユーザ問合せ部141を介してユーザに問い合わせ、アクセス権限の解決を行う。   Specifically, the indicator extraction unit 111 extracts the indicator notation in the indicator notation extension source code 11 and converts it to the intermediate notation 1 that does not depend on the target OS and the implementation form of the mandatory access control. The source code interpreter 112 converts the source code 12 in the existing grammar into a lower language notation such as assembly language. The modeling diagram interpretation unit 114 converts the modeling diagram 13 based on the existing grammar into an intermediate notation 0 describing the process-resource relationship. The security policy description extraction unit 115 extracts the security policy description in FIG. 14 of the security policy description modeling and converts it into the intermediate notation 1 that does not depend on the target OS and the implementation form of the mandatory access control. The access authority extracting unit 121 extracts and accumulates necessary access authority from the above-described lower language notation or intermediate notation 0, and the accumulated access authority does not depend on the target OS and the implementation form of forced access control. Convert to 1. The security policy generation unit 131 converts the intermediate notation 1 into the intermediate notation 2 that does not depend on the target directory structure, and further generates a final security policy. In the target application, there may be a plurality of candidates for the access authority to be set in the security policy for a certain access relationship. For this, the user inquiry unit 141 presents the plurality of access authority candidates to the user. The security policy is set according to the access right selected by the user. That is, the indicator extracting unit 111, the security policy description extracting unit, and the access authority extracting unit 121 have a plurality of access authority candidates when the intermediate notation 1 is generated and the user inquiry unit has to be resolved. The user is inquired via 141 and the access authority is resolved.

次に、このセキュリティポリシ自動生成装置100によるセキュリティポリシの自動生成について、説明する。上述したようにこのセキュリティポリシ自動生成装置100は、指示子表記拡張ソースコード11、既存文法によるソースコード12、既存文法によるモデリング図13、セキュリティポリシ記述拡張モデリング図14のいずれかを入力としてセキュリティポリシを生成するものであるから、これら指示子表記拡張ソースコード11、既存文法によるソースコード12、既存文法によるモデリング図13及びセキュリティポリシ記述拡張モデリング図14のそれぞれごとに、どのようにしてセキュリティポリシが生成されるかを説明する。   Next, automatic generation of a security policy by the security policy automatic generation apparatus 100 will be described. As described above, the security policy automatic generation apparatus 100 receives as input any one of the indicator notation extended source code 11, the source code 12 based on the existing grammar, the modeling diagram 13 based on the existing grammar, and the security policy description extended modeling diagram 14. The security policy is determined for each of the indicator notation extended source code 11, the existing grammar source code 12, the existing grammar modeling FIG. 13 and the security policy description extended modeling FIG. Explain how it is generated.

指示子表示拡張ソースコード11がセキュリティポリシ自動作成装置100に与えられると、指示子抽出部111は、指示子表記拡張ソースコード11から指示子を抽出して中間表記1に変換し、セキュリティポリシ生成部131は指示子に基づく中間表記1をセキュリティポリシに変換することにより、セキュリティポリシを生成する。   When the indicator display extension source code 11 is given to the automatic security policy creation device 100, the indicator extraction unit 111 extracts the indicator from the indicator notation extension source code 11 and converts it into the intermediate notation 1, thereby generating a security policy. The unit 131 generates a security policy by converting the intermediate notation 1 based on the indicator into a security policy.

既存文法によるソースコード12がセキュリティポリシ自動作成装置100に与えられると、ソースコード解釈部112は、セキュリティポリシ自動生成に必要となるアクセス権限に関する情報を抽出しやすいように、このソースコードの低級言語への変換を行う。その後、アクセス権限抽出部121は、低級言語に変換されたソースコードに基づいて、対象とするアプリケーションが必要とするアクセス権限を抽出・蓄積してそれを中間表記1に変換し、セキュリティポリシ生成部131は、抽出・蓄積されたアクセス権限に基づく中間表記1をセキュリティポリシに変換することにより、セキュリティポリシ16を生成する。   When the source code 12 based on the existing grammar is given to the automatic security policy creation device 100, the source code interpretation unit 112 makes it possible to extract information related to the access authority necessary for automatic generation of the security policy so that the lower-level language of this source code can be extracted. Convert to. Thereafter, the access authority extraction unit 121 extracts and accumulates the access authority required by the target application based on the source code converted into the lower language, converts it into the intermediate notation 1, and generates a security policy generation unit. 131 generates the security policy 16 by converting the intermediate notation 1 based on the extracted / accumulated access authority into a security policy.

セキュリティポリシ記述拡張モデリング図14からのセキュリティポリシの生成には、2通りの手順がある。第1の手順では、セキュリティポリシ記述拡張モデリング図14がセキュリティポリシ自動生成装置100に与えられると、拡張モデリング図変換部113によってセキュリティポリシ記述拡張モデリング図14が指示子表記拡張ソースコード11に変換し、その後、上述した指示子表記拡張ソースコード11に対する手順によって、セキュリティポリシ16が生成する。2つ目の手順では、セキュリティポリシ記述拡張モデリング図14がセキュリティポリシ自動生成装置100に与えられると、セキュリティポリシ記述抽出部115は、セキュリティポリシ記述拡張モデリング図14に含まれるセキュリティポリシ記述を抽出して中間表記1に変換し、セキュリティポリシ生成部131はこのセキュリティポリシ記述に基づく中間表記1をセキュリティポリシに変換し、これによってセキュリティポリシ16が生成する。   Security Policy Description Extended Modeling There are two procedures for generating a security policy from FIG. In the first procedure, when the security policy description extended modeling FIG. 14 is given to the automatic security policy generation apparatus 100, the extended modeling diagram conversion unit 113 converts the security policy description extended modeling FIG. 14 into the indicator notation extended source code 11. Thereafter, the security policy 16 is generated by the procedure for the indicator notation extension source code 11 described above. In the second procedure, when the security policy description extended modeling FIG. 14 is given to the automatic security policy generation apparatus 100, the security policy description extraction unit 115 extracts the security policy description included in the security policy description extended modeling FIG. Then, the security policy generation unit 131 converts the intermediate description 1 based on the security policy description into a security policy, and thereby the security policy 16 generates.

既存文法によるモデリング図13からのセキュリティポリシ16の生成には2通りの手順がある。1つ目の手順では、モデリング図変換装置15によって既存文法によるモデリング図13を既存文法によるソースコード12に変換し、このソースコード12をセキュリティポリシ自動生成装置100に与えることにより、上述した既存文法によるソースコード12からのセキュリティポリシ16の生成の手順にしたがって、セキュリティポリシ16を生成する。モデリング図からソースコードを生成するモデリング図変換装置15としては、既存技術によるものを使用することができる。2つ目の手順では、既存文法のモデリング図13がセキュリティポリシ自動生成装置100に与えられると、モデリング図解釈部114は、このモデリング図13から、対象とするアプリケーションにおいてどのようなアクセスが発生するかを抽出し、アクセス権限抽出部121は、モデリング図解釈部114での抽出結果に応じて、対象とするアプリケーションが必要とするアクセス権限を抽出・蓄積して、蓄積したアクセス権限に基づく中間表記1を生成する。その後、セキュリティポリシ生成部131は、抽出・蓄積されたアクセス権限に基づく中間表記1をセキュリティポリシに変換することにより、セキュリティポリシ16を生成する。   Modeling with Existing Grammar There are two procedures for generating the security policy 16 from FIG. In the first procedure, the modeling diagram conversion device 15 converts the modeling diagram 13 based on the existing grammar into the source code 12 based on the existing grammar, and the source code 12 is given to the security policy automatic generation device 100, whereby the existing grammar described above. The security policy 16 is generated according to the procedure for generating the security policy 16 from the source code 12 according to the above. As the modeling diagram conversion device 15 that generates source code from a modeling diagram, an existing technology can be used. In the second procedure, when the modeling diagram 13 of the existing grammar is given to the security policy automatic generation apparatus 100, the modeling diagram interpretation unit 114 generates what access in the target application from the modeling diagram 13. The access authority extraction unit 121 extracts and accumulates the access authority required by the target application in accordance with the extraction result of the modeling diagram interpretation unit 114, and intermediate notation based on the accumulated access authority 1 is generated. Thereafter, the security policy generation unit 131 generates the security policy 16 by converting the intermediate notation 1 based on the extracted / accumulated access authority into a security policy.

図2は、このセキュリティポリシ自動生成装置100において、セキュリティポリシ記述拡張モデリング図14と指示子表記拡張ソースコード11のいずれかを入力としてセキュリティポリシを自動生成する処理を示すフローチャートである。ここでは、セキュリティポリシ記述拡張モデリング図については、上述した1つ目の手順で処理されるものとする。   FIG. 2 is a flowchart showing a process for automatically generating a security policy with either the security policy description extended modeling FIG. 14 or the indicator notation extended source code 11 as an input in the automatic security policy generation apparatus 100. Here, it is assumed that the security policy description extended modeling diagram is processed in the first procedure described above.

入力があると、まずステップ201において、その入力がセキュリティポリシ記述拡張モデリング図であるか指示子表記拡張ソースコードであるかを判定する。   If there is an input, it is first determined in step 201 whether the input is a security policy description extended modeling diagram or an indicator notation extended source code.

入力がセキュリティポリシ記述拡張モデリング図である場合には、拡張モデリング図変換部113にそのセキュリティポリシ記述拡張モデリング図がわたされ、ステップ211において、拡張モデリング図変換部113は、そのモデリング図中のセキュリティポリシ記述を抽出し、ステップ212において、セキュリティポリシ記述を指示子表記に変換する。このステップ211、212と並行して、ステップ221において、拡張モデリング図変換部113は、モデリング図中のセキュリティポリシ記述以外の記述を抽出し、ステップ222において、セキュリティポリシ記述以外の記述をソースコードに変換する。ステップ212での指示子表記への変換とステップ222でのソースコードへの変換が終了すると、これらの指示子表記とソースコードとを、ステップ223において、指示子を含んだ指示子表記拡張ソースコードに統合する。これにより、拡張モデリング図変換部113での処理は終了する。その後、ステップ202に移行する。   When the input is a security policy description extended modeling diagram, the extended modeling diagram conversion unit 113 passes the security policy description extended modeling diagram. In step 211, the extended modeling diagram conversion unit 113 displays the security in the modeling diagram. The policy description is extracted, and in step 212, the security policy description is converted into an indicator notation. In parallel with these steps 211 and 212, in step 221, the extended modeling diagram conversion unit 113 extracts descriptions other than the security policy description in the modeling diagram, and in step 222, descriptions other than the security policy description are used as source code. Convert. When the conversion to the indicator notation in step 212 and the conversion to the source code in step 222 are completed, these indicator notation and source code are converted into the indicator notation extended source code including the indicator in step 223. To integrate. Thereby, the processing in the extended modeling diagram conversion unit 113 ends. Thereafter, the process proceeds to step 202.

ステップ201において入力が指示子表記拡張ソースコードであった場合には、そのままステップ202に移行する。   If the input is the indicator notation extension source code in step 201, the process proceeds to step 202 as it is.

ステップ202では、指示子抽出部111が、指示子表記拡張ソースコードから、指示子表記を抽出する。次にステップ203において、指示子表記においてそれぞれの設定項目について複数のアクセス権限候補があるかどうかを判定し、複数のアクセス権限候補がある場合には、ステップ207においてユーザ問合せ部141によってユーザにそれらアクセス権限候補を提示し、ユーザはアクセス権限の1つを選択する。全ての設定項目のアクセス権限の候補がそれぞれ1つずつ決まると、ステップ204において、指示子抽出部111は、指示子表記をターゲットのOSと強制アクセス制御の実装形態に依存しない中間表記1に変換する。その後、セキュリティポリシ生成部131は、ステップ205において、ターゲットのOSと強制アクセス制御の実装形態の情報とに基づいて、中間表記1をターゲットのディレクトリ構造に依存しない中間表記2に変換し、ステップ206において、ディレクトリ構造の情報に基づいて、最終的なセキュリティポリシを生成する。ターゲットのOSと強制アクセス制御の実装形態とディレクトリ構造とに関する情報は、予め、あるいはセキュリティポリシの生成時に、セキュリティポリシ生成部131に入力として与えられる。実際に本実施形態に基づいてセキュリティポリシを生成する際には、アプリケーションをステップ205の段階の中間表記2のセキュリティポリシとともに配布し、ターゲットのホストにインストールする際にディレクトリ情報を収集してステップ206を実行するようにしてもよい。   In step 202, the indicator extraction unit 111 extracts the indicator notation from the indicator notation extended source code. Next, in step 203, it is determined whether or not there are a plurality of access authority candidates for each setting item in the indicator notation. If there are a plurality of access authority candidates, in step 207, the user inquiry unit 141 sends them to the user. Access authority candidates are presented, and the user selects one of the access authorities. When the access authority candidates for all the setting items are determined one by one, in step 204, the indicator extraction unit 111 converts the indicator notation into an intermediate notation 1 that does not depend on the target OS and the implementation of forced access control. To do. Thereafter, in step 205, the security policy generation unit 131 converts the intermediate notation 1 into the intermediate notation 2 that does not depend on the directory structure of the target, based on the target OS and information on the implementation form of the mandatory access control. The final security policy is generated based on the directory structure information. Information regarding the target OS, the mandatory access control implementation form, and the directory structure is given as an input to the security policy generation unit 131 in advance or when generating the security policy. When a security policy is actually generated based on the present embodiment, the application is distributed together with the security policy of the intermediate notation 2 in the step 205, and directory information is collected when the application is installed on the target host. May be executed.

図3は、このセキュリティポリシ自動生成装置100において、既存文法によるモデリング図13あるいは既存文法によるソースコード12のいずれかを入力としてセキュリティポリシを自動生成する処理を示すフローチャートである。ここでは、既存文法については、上述した1つ目の手順で処理されるものとする。   FIG. 3 is a flowchart showing a process for automatically generating a security policy by using either the modeling FIG. 13 based on the existing grammar or the source code 12 based on the existing grammar in the security policy automatic generating apparatus 100. Here, it is assumed that the existing grammar is processed by the first procedure described above.

入力があると、まずステップ301において、その入力が既存文法のモデリング図であるか既存文法のソースコードであるかを判定する。入力が既存文法のモデリング図である場合には、ステップ311において、それをモデリング図変換装置15に与えて既存文法のソースコードに変換する。その後、入力されたあるいはモデリング図から変換されたソースコードを、ステップ302において、ソースコード解釈部112は、アセンブリ言語などの低級言語表記に変換する。ステップ303において、アクセス権限抽出部121は、必要なアクセス権限をその低級言語表記から抽出・蓄積する。これは例えば、アセンブリ言語表記のソースコード中でシステムコールが発行される部位に着目して、どのようなシステムコールを発行する権限を与える必要があるかを蓄積することによって実現できる。ステップ304では、それぞれの設定項目について複数のアクセス権限候補があるかどうかを判定し、複数のアクセス権限候補がある場合には、ステップ208においてユーザ問合せ部141によってユーザにそれらアクセス権限候補を提示し、ユーザはアクセス権限の1つを選択する。全ての設定項目のアクセス権限の候補がそれぞれ1つずつ決まると、ステップ305において、アクセス権限抽出部121は、蓄積されているアクセス権限をターゲットのOSと強制アクセス制御の実装形態に依存しない中間表記1に変換する。その後、図2に示した場合と同様に、セキュリティポリシ生成部131は、ステップ306において、ターゲットのOSと強制アクセス制御の実装形態の情報とに基づいて、中間表記1をターゲットのディレクトリ構造に依存しない中間表記2に変換し、ステップ307において、ディレクトリ構造の情報に基づいて、最終的なセキュリティポリシを生成する。この場合も、アプリケーションをステップ306の段階の中間表記2のセキュリティポリシとともに配布し、ターゲットのホストにインストールする際にディレクトリ情報を収集してステップ307を実行するようにしてもよい。   If there is an input, it is first determined in step 301 whether the input is a modeling diagram of an existing grammar or a source code of an existing grammar. If the input is a modeling diagram of an existing grammar, in step 311, the input is given to the modeling diagram conversion device 15 to convert it into a source code of the existing grammar. Thereafter, in step 302, the source code interpretation unit 112 converts the input source code or the source code converted from the modeling diagram into a lower language notation such as an assembly language. In step 303, the access authority extraction unit 121 extracts and accumulates necessary access authority from the lower language representation. This can be realized, for example, by accumulating what kind of system call authority needs to be given by paying attention to the part where the system call is issued in the source code written in assembly language. In step 304, it is determined whether or not there are a plurality of access authority candidates for each setting item. If there are a plurality of access authority candidates, the user inquiry unit 141 presents these access authority candidates to the user in step 208. The user selects one of the access authorities. When the access authority candidates for all the setting items are determined one by one, in step 305, the access authority extraction unit 121 displays the accumulated access authority as an intermediate notation that does not depend on the target OS and the implementation form of the forced access control. Convert to 1. Thereafter, as in the case shown in FIG. 2, the security policy generation unit 131 relies on the target directory structure for the intermediate notation 1 in step 306 based on the target OS and information on the implementation form of the forced access control. In step 307, a final security policy is generated based on the directory structure information. In this case as well, the application may be distributed together with the security policy of the intermediate notation 2 at the stage of step 306, and directory information may be collected when executing the installation on the target host to execute step 307.

図4は、このセキュリティポリシ自動生成装置100において、セキュリティポリシ記述拡張モデリング図14について上述した2つ目の手順を適用してセキュリティポリシを自動生成する処理を示すフローチャートである。   FIG. 4 is a flowchart showing a process for automatically generating a security policy by applying the second procedure described above with respect to the security policy description extended modeling FIG.

まず、ステップ401において、セキュリティポリシ記述抽出部115は、セキュリティポリシ記述拡張モデリング図中のセキュリティポリシ記述を抽出する。次にステップ402において、それぞれの設定項目について複数のアクセス権限候補があるかどうかを判定し、複数のアクセス権限候補がある場合には、ステップ406においてユーザ問合せ部141によってユーザにそれらアクセス権限候補を提示し、ユーザはアクセス権限の1つを選択する。全ての設定項目のアクセス権限の候補がそれぞれ1つずつ決まると、セキュリティポリシ記述抽出部115は、ステップ403において、セキュリティポリシ記述をターゲットのOSと強制アクセス制御の実装形態に依存しない中間表記1に変換する。その後、図2に示した場合と同様に、セキュリティポリシ生成部131は、ステップ404において、ターゲットのOSと強制アクセス制御の実装形態の情報とに基づいて、中間表記1をターゲットのディレクトリ構造に依存しない中間表記2に変換し、ステップ405において、ディレクトリ構造の情報に基づいて、最終的なセキュリティポリシを生成する。この場合も、アプリケーションをステップ404の段階の中間表記2のセキュリティポリシとともに配布し、ターゲットのホストにインストールする際にディレクトリ情報を収集してステップ405を実行するようにしてもよい。   First, in step 401, the security policy description extraction unit 115 extracts a security policy description in the security policy description extended modeling diagram. Next, in step 402, it is determined whether or not there are a plurality of access authority candidates for each setting item. If there are a plurality of access authority candidates, in step 406, the user inquiry unit 141 assigns these access authority candidates to the user. Present and the user selects one of the access rights. When the access authority candidates for all the setting items are determined one by one, in step 403, the security policy description extracting unit 115 changes the security policy description to the intermediate notation 1 that does not depend on the target OS and the implementation form of the mandatory access control. Convert. Thereafter, as in the case shown in FIG. 2, the security policy generation unit 131 depends on the target directory structure for intermediate notation 1 in step 404 based on the target OS and information on the implementation form of the forced access control. In step 405, a final security policy is generated based on the directory structure information. Also in this case, the application may be distributed together with the security policy of the intermediate notation 2 at the stage of step 404, and the directory information may be collected when executing the installation on the target host to execute step 405.

図5は、このセキュリティポリシ自動生成装置100において、既存文法によるモデリング図13について上述した2つ目の手順を適用してセキュリティポリシを自動生成する処理を示すフローチャートである。   FIG. 5 is a flowchart showing a process for automatically generating a security policy by applying the second procedure described above with respect to FIG.

まず、ステップ501において、モデリング図解釈部121は、モデリング図を各プロセス対リソースの関係を記した中間表記0に変換する。次に、アクセス権限抽出部121は、ステップ502において、中間表記0から各プロセス対リソースの必要なアクセス権限を抽出する。次に、ステップ503において、それぞれの設定項目につきアクセス権限を候補が複数有り得るかどうかを判定し、アクセス権限候補が複数ある場合には、ステップ507においてユーザ問合せ部141によってユーザにそれらアクセス権限候補を提示し、ユーザはアクセス権限の1つを選択する。全ての設定項目のアクセス権限の候補がそれぞれ1つずつ決まると、アクセス権限抽出部121は、ステップ504において、中間表記0をターゲットのOSと強制アクセス制御の実装形態に依存しない中間表記1に変換する。その後、図2に示した場合と同様に、セキュリティポリシ生成部131は、ステップ505において、ターゲットのOSと強制アクセス制御の実装形態の情報とに基づいて、中間表記1をターゲットのディレクトリ構造に依存しない中間表記2に変換し、ステップ506において、ディレクトリ構造の情報に基づいて、最終的なセキュリティポリシを生成する。この場合も、アプリケーションをステップ505の段階の中間表記2のセキュリティポリシとともに配布し、ターゲットのホストにインストールする際にディレクトリ情報を収集してステップ506を実行するようにしてもよい。   First, in step 501, the modeling diagram interpretation unit 121 converts the modeling diagram into an intermediate notation 0 describing the relationship between each process and the resource. Next, in step 502, the access authority extraction unit 121 extracts the necessary access authority for each process-to-resource from the intermediate notation 0. Next, in step 503, it is determined whether or not there can be a plurality of access authority candidates for each setting item. If there are a plurality of access authority candidates, in step 507, the user inquiry unit 141 assigns these access authority candidates to the user. Present and the user selects one of the access rights. When the access authority candidates for all the setting items are determined one by one, the access authority extraction unit 121 converts the intermediate expression 0 into the intermediate expression 1 that does not depend on the target OS and the implementation form of the forced access control in step 504. To do. After that, as in the case shown in FIG. 2, the security policy generation unit 131 depends on the target directory structure for intermediate notation 1 in step 505 based on the target OS and the information on the implementation form of forced access control. In step 506, a final security policy is generated based on the directory structure information. Also in this case, the application may be distributed together with the security policy of the intermediate notation 2 in the stage of step 505, and directory information may be collected and executed in step 506 when installed on the target host.

以上のようにして本実施形態のセキュリティポリシ自動生成装置100を用いることにより、アプリケーションについて、その指示子表記拡張ソースコード11、既存文法によるソースコード12、既存文法によるモデリング図13、及びセキュリティポリシ記述拡張モデリング図14の各々からセキュリティポリシを自動生成することが可能になる。なお、当然ことながら、このセキュリティポリシ自動生成装置100は、入力として何を用いるのかに応じて、指示子抽出部111、ソースコード解釈部112、拡張モデリング図変換部113、モデリング図解釈部114、セキュリティポリシ記述抽出部115及びアクセス権限抽出部121のうちの一部を省略することができる。例えば指示子表記拡張ソースコードのみを対象にするのであれば、指示子抽出部111、セキュリティポリシ生成部131及びユーザ問合せ部141のみを設ければよい。   As described above, by using the security policy automatic generation apparatus 100 of the present embodiment, the indicator notation extension source code 11, the source code 12 based on the existing grammar, the modeling diagram 13 based on the existing grammar, and the security policy description for the application. It becomes possible to automatically generate a security policy from each of the extended modeling diagrams 14. Of course, the automatic security policy generation apparatus 100 has an indicator extraction unit 111, a source code interpretation unit 112, an extended modeling diagram conversion unit 113, a modeling diagram interpretation unit 114, depending on what is used as an input. A part of the security policy description extraction unit 115 and the access authority extraction unit 121 can be omitted. For example, if only the indicator notation extended source code is targeted, only the indicator extraction unit 111, the security policy generation unit 131, and the user inquiry unit 141 may be provided.

以上説明したセキュリティポリシ自動生成装置100は、一般には、セキュリティポリシを自動生成するためのコンピュータプログラムを、パーソナルコンピュータやワークステーションなどのコンピュータに読み込ませ、そのプログラムを実行させることによっても実現できる。セキュリティポリシの自動生成を実行するためのプログラムは、CD−ROMなどの記録媒体によって、あるいはネットワークを介して、コンピュータに読み込まれる。そのようなコンピュータは、例えば、CPUと、プログラムやデータを格納するためのハードディスク装置と、主メモリと、キーボードやマウスなどの入力装置と、CRTや液晶ディスプレイなどの表示装置と、CD−ROM等の記録媒体を読み取る読み取り装置と、ネットワークと接続するための通信インタフェースとから構成されている。ハードディスク装置、主メモリ、入力装置、表示装置、読み取り装置及び通信インタフェースは、いずれもCPUに接続している。このコンピュータでは、セキュリティポリシの自動生成を行うためのプログラムを格納した記録媒体を読み取り装置に装着してそのプログラムを記録媒体から読み出してハードディスク装置に格納し、あるいはそのようなプログラムをネットワークを介してダウンロードしてハードディスク装置に格納し、ハードディスク装置に格納されたプログラムをCPUが実行し、さらに、対象とするアプリケーションの指示子表記拡張ソースコード、既存文法によるソースコード、既存文法によるモデリング図あるいはセキュリティポリシ記述拡張モデリングを与えることによって、セキュリティポリシの自動生成が行われる。   Generally, the security policy automatic generation apparatus 100 described above can be realized by causing a computer such as a personal computer or a workstation to read a computer program for automatically generating a security policy and executing the program. A program for executing automatic generation of a security policy is read into a computer by a recording medium such as a CD-ROM or via a network. Such computers include, for example, a CPU, a hard disk device for storing programs and data, a main memory, an input device such as a keyboard and a mouse, a display device such as a CRT and a liquid crystal display, a CD-ROM, and the like. A reading device for reading the recording medium, and a communication interface for connecting to a network. The hard disk device, main memory, input device, display device, reading device, and communication interface are all connected to the CPU. In this computer, a recording medium storing a program for automatically generating a security policy is loaded into a reading device, the program is read from the recording medium and stored in a hard disk device, or such a program is stored via a network. The downloaded program is stored in the hard disk device, and the program stored in the hard disk device is executed by the CPU. In addition, the target application indicator notation extension source code, the existing grammar source code, the existing grammar modeling diagram, or the security policy By providing extended description modeling, automatic generation of security policies is performed.

本発明の実施の一形態のセキュリティポリシ自動作成装置の構成を示すブロック図である。It is a block diagram which shows the structure of the security policy automatic creation apparatus of one Embodiment of this invention. セキュリティポリシ記述拡張モデリング図と指示子表記拡張ソースコードのいずれかを入力としてセキュリティポリシを自動生成する処理を示すフローチャートである。It is a flowchart which shows the process which produces | generates a security policy automatically by inputting either a security policy description extended modeling figure or indicator notation extended source code. 既存文法によるモデリング図と既存文法にゆおるソースコードのいずれかを入力としてセキュリティポリシを自動生成する処理をフローチャートである。10 is a flowchart showing a process for automatically generating a security policy by using either a modeling diagram based on an existing grammar and a source code that follows the existing grammar as an input. 指示子表記拡張ソースコードを経由せずにセキュリティポリシ記述拡張モデリング図からセキュリティポリシを自動生成する処理を示すフローチャートである。It is a flowchart which shows the process which produces | generates a security policy automatically from a security policy description expansion | extension modeling figure without going through indicator notation extended source code. 既存文法によるソースコードを経由せずに既存文法によるモデリング図からセキュリティポリシを自動生成する処理を示すフローチャートである。It is a flowchart which shows the process which produces | generates a security policy automatically from the modeling figure by an existing grammar, without going through the source code by an existing grammar.

符号の説明Explanation of symbols

11 指示子表記拡張ソースコード
12 既存文法のソースコード
13 既存文法のモデリング図
14 セキュリティポリシ記述拡張モデリング図
15 モデリング図変換装置
16 生成されたセキュリティポリシ
100 セキュリティポリシ自動生成装置
111 指示子抽出部
112 ソースコード解釈部
113 拡張モデリング図変換部
114 モデリング図解釈部
115 セキュリティポリシ記述抽出部
121 アクセス権限抽出部
131 セキュリティポリシ生成部
141 ユーザ問合せ部
11 Directive extension source code 12 Existing grammar source code 13 Existing grammar modeling diagram 14 Security policy description extended modeling diagram 15 Modeling diagram converter 16 Generated security policy 100 Security policy automatic generator 111 Indicator extractor 112 Source Code interpretation unit 113 Extended modeling diagram conversion unit 114 Modeling diagram interpretation unit 115 Security policy description extraction unit 121 Access authority extraction unit 131 Security policy generation unit 141 User inquiry unit

Claims (15)

リソースへのラベリングと強制アクセス制御機構とを備えたオペレーティングシステムにおいてアプリケーションを動作させるために用いられるセキュリティポリシを自動的に生成する方法であって、
前記アプリケーションを表わすソースコードまたはモデリング図から、ターゲットのオペレーティングシステムと強制アクセス制御の実装形態に依存しない第1の中間表記を生成する、第1の中間表記生成段階と、
前記第1の中間表記の生成に際し、あるアクセス関係についてはセキュリティポリシ内で設定するアクセス権限が複数候補挙げられる場合にはユーザに候補のアクセス権限を提示することにより当該アクセス関係のアクセス権限を解決する段階と、
前記第1の中間表記に基づき、前記ターゲットのオペレーティングシステムと強制アクセス制御の実装形態の情報から前記ターゲットのディレクトリ構造に依存しない第2の中間表記を生成する段階と、
前記第2の中間表記に基づき、前記ターゲットのディレクトリ構造の情報からセキュリティポリシを生成する段階と、
を有する、セキュリティポリシを自動的に生成する方法。
A method for automatically generating a security policy used to run an application in an operating system with resource labeling and mandatory access control mechanisms,
Generating a first intermediate representation from the source code or modeling diagram representing the application, wherein the first intermediate representation is independent of a target operating system and mandatory access control implementation;
When generating the first intermediate notation, if there are a plurality of candidates for the access authority set in the security policy for a certain access relation, the access authority for the access relation is resolved by presenting the candidate access authority to the user. And the stage of
Generating a second intermediate representation that is independent of the target directory structure from the target operating system and information on implementation of mandatory access control based on the first intermediate representation;
Generating a security policy from information on the directory structure of the target based on the second intermediate notation;
A method for automatically generating a security policy.
前記第1の中間表記生成段階は、
既存のコンパイラには無視されて前記既存のコンパイラには影響を与えない構文からなるとともにセキュリティポリシの生成に必要な情報を持つ指示子をソースコードに埋め込んだ指示子表記拡張ソースコードを対象として、前記指示子表記拡張ソースコードから指示子表記を抽出する段階と、
前記指示子表記から前記第1の中間表記を生成する段階と、
を有する、請求項1に記載のセキュリティポリシを自動的に生成する方法。
The first intermediate representation generation stage includes:
Targeting an extension source code that has a syntax that is ignored by an existing compiler and does not affect the existing compiler, and that has a directive having information necessary for generating a security policy embedded in the source code, Extracting indicator notation from the indicator notation extension source code;
Generating the first intermediate notation from the indicator notation;
The method of automatically generating a security policy according to claim 1, comprising:
セキュリティポリシ生成に必要な情報を埋め込むことができるように文法を拡張したセキュリティポリシ記述拡張モデリング図を入力として、該セキュリティポリシ記述拡張モデリング図を前記指示子表記拡張ソースコードに変換する段階をさらに有する、請求項2に記載のセキュリティポリシを自動的に生成する方法。   The process further includes the step of converting the security policy description extended modeling diagram into the indicator notation extended source code by using the security policy description extended modeling diagram whose grammar has been extended so that information necessary for generating the security policy can be embedded. A method for automatically generating a security policy according to claim 2. 前記第1の中間表記生成段階は、
既存文法によるソースコードを対象として、前記既存文法によるソースコードにおいてプロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出する段階と、
前記抽出されたアクセス権限から前記第1の中間表記を生成する段階と、
を有する、請求項1に記載のセキュリティポリシを自動的に生成する方法。
The first intermediate representation generation stage includes:
Extracting what resources and what access rights a process needs in the source code with the existing grammar for the source code with the existing grammar;
Generating the first intermediate representation from the extracted access rights;
The method of automatically generating a security policy according to claim 1, comprising:
既存文法によるモデリング図を入力として、該既存文法によるモデリング図を前記既存文法によるソースコードに変換する段階をさらに有する、請求項4に記載のセキュリティポリシを自動的に生成する方法。   5. The method of automatically generating a security policy according to claim 4, further comprising the step of converting a modeling diagram based on an existing grammar into a source code based on the existing grammar using a modeling diagram based on the existing grammar as an input. 前記第1の中間表記生成段階は、
セキュリティポリシ生成に必要な情報を埋め込むことができるように文法を拡張したセキュリティポリシ記述拡張モデリング図を入力として、該セキュリティポリシ記述拡張モデリング図からセキュリティポリシ記述を抽出する段階と、
前記セキュリティポリシ記述から前記第1の中間表記を生成する段階と、
を有する、請求項1に記載のセキュリティポリシを自動的に生成する方法。
The first intermediate representation generation stage includes:
Extracting a security policy description extended modeling diagram from the security policy description extended modeling diagram as an input, and a security policy description extended modeling diagram whose grammar has been extended so that information necessary for generating a security policy can be embedded;
Generating the first intermediate representation from the security policy description;
The method of automatically generating a security policy according to claim 1, comprising:
前記第1の中間表記生成段階は、
既存文法によるモデリング図を入力として、プロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出する段階と、
前記抽出されたアクセス権限から前記第1の中間表記を生成する段階と、
を有する、請求項1に記載のセキュリティポリシを自動的に生成する方法。
The first intermediate representation generation stage includes:
Using an existing grammar modeling diagram as input, extracting what resources and what access rights the process needs,
Generating the first intermediate representation from the extracted access rights;
The method of automatically generating a security policy according to claim 1, comprising:
リソースへのラベリングと強制アクセス制御機構とを備えたオペレーティングシステムにおいてアプリケーションを動作させるために用いられるセキュリティポリシを自動的に生成する装置であって、
前記アプリケーションを表わすソースコードまたはモデリング図から、ターゲットのオペレーティングシステムと強制アクセス制御の実装形態に依存しない第1の中間表記を生成する、第1の中間表記生成手段と、
前記第1の中間表記の生成に際し、あるアクセス関係についてはセキュリティポリシ内で設定するアクセス権限が複数候補挙げられる場合にはユーザに候補のアクセス権限を提示することにより当該アクセス関係のアクセス権限を解決する手段と、
前記第1の中間表記に基づき、前記ターゲットのオペレーティングシステムと強制アクセス制御の実装形態の情報から前記ターゲットのディレクトリ構造に依存しない第2の中間表記を生成し、前記第2の中間表記に基づき、前記ターゲットのディレクトリ構造の情報からセキュリティポリシを生成する手段と、
を有する、セキュリティポリシを自動的に生成する装置。
A device that automatically generates a security policy used to run an application in an operating system with resource labeling and mandatory access control mechanisms,
First intermediate notation generating means for generating a first intermediate notation independent of a target operating system and mandatory access control implementation from a source code or modeling diagram representing the application;
When generating the first intermediate notation, if there are a plurality of candidates for the access authority set in the security policy for a certain access relation, the access authority for the access relation is resolved by presenting the candidate access authority to the user. Means to
Based on the first intermediate notation, a second intermediate notation that does not depend on the directory structure of the target is generated from information on the target operating system and mandatory access control implementation, and based on the second intermediate notation, Means for generating a security policy from information on the directory structure of the target;
A device that automatically generates a security policy.
前記第1の中間表記生成手段は、既存のコンパイラには無視されて前記既存のコンパイラには影響を与えない構文からなるとともにセキュリティポリシの生成に必要な情報を持つ指示子をソースコードに埋め込んだ指示子表記拡張ソースコードを対象として、前記指示子表記拡張ソースコードから指示子表記を抽出し、前記指示子表記から前記第1の中間表記を生成する手段を有する、請求項8に記載のセキュリティポリシを自動的に生成する装置。   The first intermediate notation generating means embeds a directive in the source code that has a syntax that is ignored by an existing compiler and does not affect the existing compiler and that has information necessary for generating a security policy. 9. The security according to claim 8, further comprising means for extracting an indicator notation from the indicator notation extension source code and generating the first intermediate notation from the indicator notation for an indicator notation extended source code. A device that automatically generates a policy. セキュリティポリシ生成に必要な情報を埋め込むことができるように文法を拡張したセキュリティポリシ記述拡張モデリング図を入力として、該セキュリティポリシ記述拡張モデリング図を前記指示子表記拡張ソースコードに変換する手段をさらに有する、請求項9に記載のセキュリティポリシを自動的に生成する装置。   It further has means for converting the security policy description extended modeling diagram into the indicator notation extended source code by using the security policy description extended modeling diagram whose grammar has been extended so that information necessary for generating the security policy can be embedded. An apparatus for automatically generating the security policy according to claim 9. 前記第1の中間表記生成手段は、既存文法によるソースコードを対象として、該既存文法によるソースコードにおいてプロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出し、前記抽出されたアクセス権限から前記第1の中間表記を生成する手段を有する、請求項8に記載のセキュリティポリシを自動的に生成する装置。   The first intermediate notation generation means extracts, for the source code according to the existing grammar, what access authority is required for which resource in the source code according to the existing grammar, and the extracted access 9. The apparatus for automatically generating a security policy according to claim 8, comprising means for generating the first intermediate representation from an authority. 前記第1の中間表記生成手段は、セキュリティポリシ生成に必要な情報を埋め込むことができるように文法を拡張したセキュリティポリシ記述拡張モデリング図を入力として、該セキュリティポリシ記述拡張モデリング図からセキュリティポリシ記述を抽出し、前記セキュリティポリシ記述から前記第1の中間表記を生成する手段を有する、請求項8に記載のセキュリティポリシを自動的に生成する装置。   The first intermediate notation generating means receives as input a security policy description extended modeling diagram whose grammar is extended so that information necessary for generating a security policy can be embedded, and generates a security policy description from the security policy description extended modeling diagram. 9. The apparatus for automatically generating a security policy according to claim 8, comprising means for extracting and generating the first intermediate representation from the security policy description. 前記第1の中間表記生成手段は、既存文法によるモデリング図を入力として、プロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出し、前記抽出されたアクセス権限から前記第1の中間表記を生成する手段を有する、請求項8に記載のセキュリティポリシを自動的に生成する装置。   The first intermediate notation generation means receives a modeling diagram based on an existing grammar as input, extracts what kind of access authority a process requires, and extracts the first intermediate expression from the extracted access authority 9. The apparatus for automatically generating a security policy according to claim 8, comprising means for generating a notation. リソースへのラベリングと強制アクセス制御機構とを備えたオペレーティングシステムにおいてアプリケーションを動作させるために用いられるセキュリティポリシを自動的に生成するために、コンピュータに、
前記アプリケーションを表わすソースコードまたはモデリング図から、ターゲットのオペレーティングシステムと強制アクセス制御の実装形態に依存しない第1の中間表記を生成する処理と、
前記第1の中間表記の生成に際し、あるアクセス関係についてはセキュリティポリシ内で設定するアクセス権限が複数候補挙げられる場合にはユーザに候補のアクセス権限を提示することにより当該アクセス関係のアクセス権限を解決する処理と、
前記第1の中間表記に基づき、前記ターゲットのオペレーティングシステムと強制アクセス制御の実装形態の情報から前記ターゲットのディレクトリ構造に依存しない第2の中間表記を生成する処理と、
前記第2の中間表記に基づき、前記ターゲットのディレクトリ構造の情報からセキュリティポリシを生成する処理と、
を実行させるプログラム。
To automatically generate a security policy that is used to run applications in an operating system with resource labeling and mandatory access control mechanisms,
Processing to generate a first intermediate representation independent of the target operating system and mandatory access control implementation from the source code or modeling diagram representing the application;
When generating the first intermediate notation, if there are a plurality of candidates for the access authority set in the security policy for a certain access relation, the access authority for the access relation is resolved by presenting the candidate access authority to the user. Processing to
Based on the first intermediate notation, generating a second intermediate notation independent of the target directory structure from information on the target operating system and mandatory access control implementation;
A process of generating a security policy from information on the directory structure of the target based on the second intermediate notation;
A program that executes
コンピュータが読み取り可能な記録媒体であって、請求項14に記載のプログラムを格納した記録媒体。

A computer-readable recording medium that stores the program according to claim 14.

JP2003293787A 2003-08-15 2003-08-15 Method and device for automatically generating security policy of secure os, and program for executing the method Pending JP2005063224A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003293787A JP2005063224A (en) 2003-08-15 2003-08-15 Method and device for automatically generating security policy of secure os, and program for executing the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003293787A JP2005063224A (en) 2003-08-15 2003-08-15 Method and device for automatically generating security policy of secure os, and program for executing the method

Publications (1)

Publication Number Publication Date
JP2005063224A true JP2005063224A (en) 2005-03-10

Family

ID=34370578

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003293787A Pending JP2005063224A (en) 2003-08-15 2003-08-15 Method and device for automatically generating security policy of secure os, and program for executing the method

Country Status (1)

Country Link
JP (1) JP2005063224A (en)

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
JP2009020782A (en) * 2007-07-13 2009-01-29 Hitachi Software Eng Co Ltd Method and program for optimizing security policy of secure os
US9824224B2 (en) 2012-08-02 2017-11-21 International Business Machines Corporation Security-minded cloning method, system and program

Cited By (4)

* 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
JP2009020782A (en) * 2007-07-13 2009-01-29 Hitachi Software Eng Co Ltd Method and program for optimizing security policy of secure os
US9824224B2 (en) 2012-08-02 2017-11-21 International Business Machines Corporation Security-minded cloning method, system and program

Similar Documents

Publication Publication Date Title
US20080229303A1 (en) Method, system and computer program for distributing customized software products
JP2007535761A (en) System and method for generating anti-tamper code
JP2009053740A (en) System, method, and computer program for recording operation log
US10521201B2 (en) Information processing apparatus and method
US8904492B2 (en) Method of controlling information processing system, computer-readable recording medium storing program for controlling apparatus
JP4848430B2 (en) Virtual role
CN113360947A (en) Data desensitization method and device, computer readable storage medium and electronic equipment
EP3355229B1 (en) Analysis device, analysis method, and analysis program
CN113778897A (en) Automatic test method, device, equipment and storage medium of interface
KR101364599B1 (en) Method and system for deciding harmfulness of software application
US20090193411A1 (en) Method and system for assessing deployment and un-deployment of software installations
JP2005063224A (en) Method and device for automatically generating security policy of secure os, and program for executing the method
WO2021044502A1 (en) Test design device, test design method, test design program, and test design system
CN115794253A (en) Application integration method and device, electronic equipment and computer readable storage medium
JP5150546B2 (en) Information processing apparatus, operation history acquisition method, computer program
Kankhare et al. A cloud based system to sense security vulnerabilities of web application in open-source private cloud IAAS
CN110837612B (en) Uniform Resource Identifier (URI) data acquisition method and device and storage medium
JP2007018091A (en) Information processor, information processing system, application development support method and program
CN114389936A (en) Cross-cloud multi-cluster deployment operation and maintenance method, system, processor and storage medium
García-Zubía et al. Remote laboratories from the software engineering point of view
CN112486460A (en) Method, system, device and medium for automatically importing interface document
JP2005050314A (en) Application software repackage system for application software streaming and its method
JP4057997B2 (en) Document processing apparatus with script, document acquisition apparatus, document processing system with script, document processing method with script, and program for causing computer to execute the method
JP2018005915A (en) Method and system for providing application package, and method and system for executing application
KR20190059168A (en) Apparatus of middleware for connecting webpages and application

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050621

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050721

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20050721

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080730

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090304