JP2005063224A - セキュアosのセキュリティポリシを自動的に生成する方法及び装置並びに該方法を実行するためのプログラム - Google Patents

セキュアosのセキュリティポリシを自動的に生成する方法及び装置並びに該方法を実行するためのプログラム 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
English (en)
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/ja
Publication of JP2005063224A publication Critical patent/JP2005063224A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】 セキュアOS上でアプリケーションを動作させるためのセキュリティポリシを自動生成する。
【解決手段】 ソースコードまたはモデリング図から、ターゲットのオペレーティングシステム(OS)と強制アクセス制御の実装形態に依存しない第1の中間表記を生成し(ステップ202、204)、第1の中間表記の生成に際し、あるアクセス関係についてはセキュリティポリシ内で設定するアクセス権限が複数候補挙げられる場合にはユーザに候補のアクセス権限を提示することによりそのアクセス関係のアクセス権限を解決し(ステップ203、207)、第1の中間表記に基づき、ターゲットのOSと強制アクセス制御の実装形態の情報からターゲットのディレクトリ構造に依存しない第2の中間表記を生成し(ステップ205)、第2の中間表記に基づき、ターゲットのディレクトリ構造の情報からセキュリティポリシを生成する(ステップ206)。
【選択図】 図2

Description

本発明は、リソースのラベリングと強制アクセス制御(MAC:Mandatory Access Control)機構などを導入したセキュアなオペレーティングシステム(OS:Operating System、以下、セキュアなオペレーティングシステムのことをセキュアOSと呼ぶ)における、セキュリティポリシと呼ばれるセキュリティ設定を自動的に生成する方法及び装置に関する。
軍事設備を含んだ中央省庁においては、従来の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は、中央省庁以外でも、ユーザやスーパーユーザが不適切なセキュリティ設定を行うことによる情報漏洩・サーバへの不正侵入・不正利用を特に警戒する環境において、今後普及が進むことが予測されている。
セキュアOSは、セキュリティポリシと呼ぶセキュリティの設定をきめ細かく施すことにより高いセキュリティを実現している。このセキュリティポリシは、一般に、OSによって書式等が異なるばかりでなく、各OSで複数の強制アクセス制御の実装形態を利用できる場合には、それぞれの強制アクセス制御の実装形態によっても書式が異なる。例えば、セキュアOSのMAC機構は、ユーザやスーパーユーザが従来の任意アクセス制御(DAC:Discretionary Access Control)の範囲でどのような設定を行っても、予めセキュリティ管理者が設定したMACのセキュリティポリシで許可しているアクセス権限を越えてプロセスが動作することができないようになっている、そのため、あるアプリケーションをMAC機構に対応したセキュアOS上で動作させるためには、セキュリティポリシにおいて、そのアプリケーションのプロセスがどのようなプロセス、ファイル、ソケットといったリソースにアクセスする権限が必要なのかを羅列しなければならない。
従来、このセキュリティポリシは人手によって生成する他はなく、アプリケーションの動作とセキュア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>
上述したように、セキュアOSのセキュリティポリシの生成に際しては、従来、その大半に人手が介在し、また、セキュリティポリシの作成者は、アプリケーションの動作とセキュアOS仕様・セキュリティポリシの文法の双方を知る必要がある。また、アプリケーションが必要としていないセキュリティポリシを追加してしまうことにより、セキュリティホールが混入する恐れがある。さらに、セキュリティポリシの設定は難解であり、一般に、アプリケーションの開発者とセキュリティポリシを理解して設定できる開発者とは別となっている。このため、セキュアOSを利用するためにはコストがかかってしまう。
本発明は、このような問題を解決し、セキュアOS上でアプリケーションを使用するためにセキュリティポリシを生成する際に、アプリケーションのソースファイルないし開発時に使用するモデリング図からセキュリティポリシの雛型を生成し、さらにアプリケーションを使用するセキュアOSの環境に特化したセキュリティポリシを自動的に生成することができる方法及び装置を提供することにある。
本発明による、リソースへのラベリングと強制アクセス制御機構とを備えたセキュアOSにおいてアプリケーションを動作させるために用いられるセキュリティポリシを自動的に生成する方法は、アプリケーションを表わすソースコードまたはモデリング図から、ターゲットのOSと強制アクセス制御の実装形態に依存しない第1の中間表記を生成する、第1の中間表記生成段階と、第1の中間表記の生成に際し、あるアクセス関係についてはセキュリティポリシ内で設定するアクセス権限が複数候補挙げられる場合にはユーザに候補のアクセス権限を提示することによりそのアクセス関係のアクセス権限を解決する段階と、第1の中間表記に基づき、ターゲットのOSと強制アクセス制御の実装形態の情報からターゲットのディレクトリ構造に依存しない第2の中間表記を生成する段階と、第2の中間表記に基づき、ターゲットのディレクトリ構造の情報からセキュリティポリシを生成する段階と、を有する。
ここでソースコードとして、既存のコンパイラには無視されてその既存のコンパイラには影響を与えない構文からなるとともにセキュリティポリシの生成に必要な情報を持つ指示子をソースコードに埋め込んだ指示子表記拡張ソースコードを用いる場合には、第1の中間表記生成段階は、この指示子表記拡張ソースコードから指示子表記を抽出する段階と、指示子表記から第1の中間表記を生成する段階と、を備えればよい。この場合、セキュリティポリシ生成に必要な情報を埋め込むことができるように文法を拡張したセキュリティポリシ記述拡張モデリング図を入力として、このセキュリティポリシ記述拡張モデリング図を指示子表記拡張ソースコードに変換するようにしてもよい。
ソースコードとして既存文法によるソースコードを用いる場合には、第1の中間表記生成段階は、既存文法によるソースコードにおいてプロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出する段階と、抽出されたアクセス権限から第1の中間表記を生成する段階と、を備えればよい。この場合、既存文法によるモデリング図を入力として、この既存文法によるモデリング図を既存文法によるソースコードに変換するようにしてもよい。
モデリング図として、上述したセキュリティポリシ記述拡張モデリング図を用いる場合には、第1の中間表記生成段階は、セキュリティポリシ記述拡張モデリング図からセキュリティポリシ記述を抽出する段階と、セキュリティポリシ記述から第1の中間表記を生成する段階と、を備えればよい。
モデリング図として既存文法によるモデリング図を用いる場合には、第1の中間表記生成段階は、プロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出する段階と、抽出されたアクセス権限から第1の中間表記を生成する段階と、を備えればよい。
本発明による、リソースへのラベリングと強制アクセス制御機構とを備えたセキュアOSにおいてアプリケーションを動作させるために用いられるセキュリティポリシを自動的に生成する装置は、アプリケーションを表わすソースコードまたはモデリング図から、ターゲットのOSと強制アクセス制御の実装形態に依存しない第1の中間表記を生成する、第1の中間表記生成手段と、第1の中間表記の生成に際し、あるアクセス関係についてはセキュリティポリシ内で設定するアクセス権限が複数候補挙げられる場合にはユーザに候補のアクセス権限を提示することによりそのアクセス関係のアクセス権限を解決する手段と、第1の中間表記に基づき、ターゲットのOSと強制アクセス制御の実装形態の情報からターゲットのディレクトリ構造に依存しない第2の中間表記を生成し、第2の中間表記に基づき、ターゲットのディレクトリ構造の情報からセキュリティポリシを生成する手段と、を有する。
ここでソースコードとして、上述したような指示子表記拡張ソースコードを用いるためには、第1の中間表記生成手段は、指示子表記拡張ソースコードから指示子表記を抽出し、指示子表記から第1の中間表記を生成する手段を備えていればよい。この場合、上述したセキュリティポリシ記述拡張モデリング図を入力として、セキュリティポリシ記述拡張モデリング図を指示子表記拡張ソースコードに変換する手段をさらに設けてもよい。
ソースコードとして既存文法によるソースコードを用いるためには、第1の中間表記生成手段は、その既存文法によるソースコードにおいてプロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出し、抽出されたアクセス権限から第1の中間表記を生成する手段を備えていればよい。
モデリング図として上述したセキュリティポリシ記述拡張モデリング図を用いるためには、第1の中間表記生成手段は、セキュリティポリシ記述拡張モデリング図からセキュリティポリシ記述を抽出し、セキュリティポリシ記述から第1の中間表記を生成する手段を備えていればよい。
モデリング図として既存文法によるモデリング図を用いる場合には、第1の中間表記生成手段は、プロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出し、抽出されたアクセス権限から第1の中間表記を生成する手段を備えていればよい。
本発明によれば、セキュアOSのセキュリティポリシの自動的に生成することが可能となって、セキュアOSとセキュアOS上で動作させるアプリケーションの開発・導入・維持管理時のコストを削減することができる。さらに、アプリケーションのソースファイルからセキュリティポリシを自動的に生成する場合において、そのアプリケーションが必要としていないセキュリティポリシが追加されることが防がれ、これにより、セキュリティの強化が可能になる。
次に、本発明の好ましい実施の形態について、図面を参照して説明する。図1は、本発明の実施の一形態のセキュリティポリシ自動生成装置の構成を示すブロック図である。
図1に示したセキュリティポリシ自動生成装置100は、アプリケーションの指示子表記拡張ソースコード11、既存文法によるアプリケーションのソースコード12、既存文法によるアプリケーションのモデリング図13、アプリケーションのセキュリティポリシ記述拡張モデリング図14のいずれかを入力として、そのアプリケーションをセキュアOS上で動作させるためのセキュリティポリシ16を生成するものである。ここで指示子表記拡張ソースコード11とは、セキュリティポリシの自動生成に必要な情報を埋め込むことができるような指示子を埋め込んだソースコードのことを指す。この場合、この指示子は、既存のコンパイラには無視され、既存のコンパイラの処理には影響を与えないような構文からなっている。セキュリティポリシ記述拡張モデリング図14とは、セキュリティポリシ生成に必要な情報を記述できるように文法を拡張したモデリング図のことを指す。
セキュリティポリシ自動生成部装置100は、指示子表記拡張ソースコード11から指示子を抽出する指示子抽出部111と、既存文法によるソースコード12を解釈するソースコード解釈部112と、セキュリティポリシ記述拡張モデリング図14を指示子表記拡張ソースコード11に変換する拡張モデリング図変換部113と、既存文法によるモデリング図13を解釈するモデリング図解釈部114と、セキュリティポリシ記述拡張モデリング図14からセキュリティポリシ記述を抽出するセキュリティポリシ記述抽出部115、既存文法によるソースコードまたはモデリング図の解釈結果に基づき、アプリケーションのプロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出するアクセス権限抽出部121と、抽出された指示子、アクセス権限あるいはセキュリティポリシ記述に基づいてセキュリティポリシ16を生成するセキュリティポリシ生成部131と、ユーザに対して問合せを行うユーザ問合せ部141と、を備えている。
具体的には、指示子抽出部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を介してユーザに問い合わせ、アクセス権限の解決を行う。
次に、このセキュリティポリシ自動生成装置100によるセキュリティポリシの自動生成について、説明する。上述したようにこのセキュリティポリシ自動生成装置100は、指示子表記拡張ソースコード11、既存文法によるソースコード12、既存文法によるモデリング図13、セキュリティポリシ記述拡張モデリング図14のいずれかを入力としてセキュリティポリシを生成するものであるから、これら指示子表記拡張ソースコード11、既存文法によるソースコード12、既存文法によるモデリング図13及びセキュリティポリシ記述拡張モデリング図14のそれぞれごとに、どのようにしてセキュリティポリシが生成されるかを説明する。
指示子表示拡張ソースコード11がセキュリティポリシ自動作成装置100に与えられると、指示子抽出部111は、指示子表記拡張ソースコード11から指示子を抽出して中間表記1に変換し、セキュリティポリシ生成部131は指示子に基づく中間表記1をセキュリティポリシに変換することにより、セキュリティポリシを生成する。
既存文法によるソースコード12がセキュリティポリシ自動作成装置100に与えられると、ソースコード解釈部112は、セキュリティポリシ自動生成に必要となるアクセス権限に関する情報を抽出しやすいように、このソースコードの低級言語への変換を行う。その後、アクセス権限抽出部121は、低級言語に変換されたソースコードに基づいて、対象とするアプリケーションが必要とするアクセス権限を抽出・蓄積してそれを中間表記1に変換し、セキュリティポリシ生成部131は、抽出・蓄積されたアクセス権限に基づく中間表記1をセキュリティポリシに変換することにより、セキュリティポリシ16を生成する。
セキュリティポリシ記述拡張モデリング図14からのセキュリティポリシの生成には、2通りの手順がある。第1の手順では、セキュリティポリシ記述拡張モデリング図14がセキュリティポリシ自動生成装置100に与えられると、拡張モデリング図変換部113によってセキュリティポリシ記述拡張モデリング図14が指示子表記拡張ソースコード11に変換し、その後、上述した指示子表記拡張ソースコード11に対する手順によって、セキュリティポリシ16が生成する。2つ目の手順では、セキュリティポリシ記述拡張モデリング図14がセキュリティポリシ自動生成装置100に与えられると、セキュリティポリシ記述抽出部115は、セキュリティポリシ記述拡張モデリング図14に含まれるセキュリティポリシ記述を抽出して中間表記1に変換し、セキュリティポリシ生成部131はこのセキュリティポリシ記述に基づく中間表記1をセキュリティポリシに変換し、これによってセキュリティポリシ16が生成する。
既存文法によるモデリング図13からのセキュリティポリシ16の生成には2通りの手順がある。1つ目の手順では、モデリング図変換装置15によって既存文法によるモデリング図13を既存文法によるソースコード12に変換し、このソースコード12をセキュリティポリシ自動生成装置100に与えることにより、上述した既存文法によるソースコード12からのセキュリティポリシ16の生成の手順にしたがって、セキュリティポリシ16を生成する。モデリング図からソースコードを生成するモデリング図変換装置15としては、既存技術によるものを使用することができる。2つ目の手順では、既存文法のモデリング図13がセキュリティポリシ自動生成装置100に与えられると、モデリング図解釈部114は、このモデリング図13から、対象とするアプリケーションにおいてどのようなアクセスが発生するかを抽出し、アクセス権限抽出部121は、モデリング図解釈部114での抽出結果に応じて、対象とするアプリケーションが必要とするアクセス権限を抽出・蓄積して、蓄積したアクセス権限に基づく中間表記1を生成する。その後、セキュリティポリシ生成部131は、抽出・蓄積されたアクセス権限に基づく中間表記1をセキュリティポリシに変換することにより、セキュリティポリシ16を生成する。
図2は、このセキュリティポリシ自動生成装置100において、セキュリティポリシ記述拡張モデリング図14と指示子表記拡張ソースコード11のいずれかを入力としてセキュリティポリシを自動生成する処理を示すフローチャートである。ここでは、セキュリティポリシ記述拡張モデリング図については、上述した1つ目の手順で処理されるものとする。
入力があると、まずステップ201において、その入力がセキュリティポリシ記述拡張モデリング図であるか指示子表記拡張ソースコードであるかを判定する。
入力がセキュリティポリシ記述拡張モデリング図である場合には、拡張モデリング図変換部113にそのセキュリティポリシ記述拡張モデリング図がわたされ、ステップ211において、拡張モデリング図変換部113は、そのモデリング図中のセキュリティポリシ記述を抽出し、ステップ212において、セキュリティポリシ記述を指示子表記に変換する。このステップ211、212と並行して、ステップ221において、拡張モデリング図変換部113は、モデリング図中のセキュリティポリシ記述以外の記述を抽出し、ステップ222において、セキュリティポリシ記述以外の記述をソースコードに変換する。ステップ212での指示子表記への変換とステップ222でのソースコードへの変換が終了すると、これらの指示子表記とソースコードとを、ステップ223において、指示子を含んだ指示子表記拡張ソースコードに統合する。これにより、拡張モデリング図変換部113での処理は終了する。その後、ステップ202に移行する。
ステップ201において入力が指示子表記拡張ソースコードであった場合には、そのままステップ202に移行する。
ステップ202では、指示子抽出部111が、指示子表記拡張ソースコードから、指示子表記を抽出する。次にステップ203において、指示子表記においてそれぞれの設定項目について複数のアクセス権限候補があるかどうかを判定し、複数のアクセス権限候補がある場合には、ステップ207においてユーザ問合せ部141によってユーザにそれらアクセス権限候補を提示し、ユーザはアクセス権限の1つを選択する。全ての設定項目のアクセス権限の候補がそれぞれ1つずつ決まると、ステップ204において、指示子抽出部111は、指示子表記をターゲットのOSと強制アクセス制御の実装形態に依存しない中間表記1に変換する。その後、セキュリティポリシ生成部131は、ステップ205において、ターゲットのOSと強制アクセス制御の実装形態の情報とに基づいて、中間表記1をターゲットのディレクトリ構造に依存しない中間表記2に変換し、ステップ206において、ディレクトリ構造の情報に基づいて、最終的なセキュリティポリシを生成する。ターゲットのOSと強制アクセス制御の実装形態とディレクトリ構造とに関する情報は、予め、あるいはセキュリティポリシの生成時に、セキュリティポリシ生成部131に入力として与えられる。実際に本実施形態に基づいてセキュリティポリシを生成する際には、アプリケーションをステップ205の段階の中間表記2のセキュリティポリシとともに配布し、ターゲットのホストにインストールする際にディレクトリ情報を収集してステップ206を実行するようにしてもよい。
図3は、このセキュリティポリシ自動生成装置100において、既存文法によるモデリング図13あるいは既存文法によるソースコード12のいずれかを入力としてセキュリティポリシを自動生成する処理を示すフローチャートである。ここでは、既存文法については、上述した1つ目の手順で処理されるものとする。
入力があると、まずステップ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を実行するようにしてもよい。
図4は、このセキュリティポリシ自動生成装置100において、セキュリティポリシ記述拡張モデリング図14について上述した2つ目の手順を適用してセキュリティポリシを自動生成する処理を示すフローチャートである。
まず、ステップ401において、セキュリティポリシ記述抽出部115は、セキュリティポリシ記述拡張モデリング図中のセキュリティポリシ記述を抽出する。次にステップ402において、それぞれの設定項目について複数のアクセス権限候補があるかどうかを判定し、複数のアクセス権限候補がある場合には、ステップ406においてユーザ問合せ部141によってユーザにそれらアクセス権限候補を提示し、ユーザはアクセス権限の1つを選択する。全ての設定項目のアクセス権限の候補がそれぞれ1つずつ決まると、セキュリティポリシ記述抽出部115は、ステップ403において、セキュリティポリシ記述をターゲットのOSと強制アクセス制御の実装形態に依存しない中間表記1に変換する。その後、図2に示した場合と同様に、セキュリティポリシ生成部131は、ステップ404において、ターゲットのOSと強制アクセス制御の実装形態の情報とに基づいて、中間表記1をターゲットのディレクトリ構造に依存しない中間表記2に変換し、ステップ405において、ディレクトリ構造の情報に基づいて、最終的なセキュリティポリシを生成する。この場合も、アプリケーションをステップ404の段階の中間表記2のセキュリティポリシとともに配布し、ターゲットのホストにインストールする際にディレクトリ情報を収集してステップ405を実行するようにしてもよい。
図5は、このセキュリティポリシ自動生成装置100において、既存文法によるモデリング図13について上述した2つ目の手順を適用してセキュリティポリシを自動生成する処理を示すフローチャートである。
まず、ステップ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を実行するようにしてもよい。
以上のようにして本実施形態のセキュリティポリシ自動生成装置100を用いることにより、アプリケーションについて、その指示子表記拡張ソースコード11、既存文法によるソースコード12、既存文法によるモデリング図13、及びセキュリティポリシ記述拡張モデリング図14の各々からセキュリティポリシを自動生成することが可能になる。なお、当然ことながら、このセキュリティポリシ自動生成装置100は、入力として何を用いるのかに応じて、指示子抽出部111、ソースコード解釈部112、拡張モデリング図変換部113、モデリング図解釈部114、セキュリティポリシ記述抽出部115及びアクセス権限抽出部121のうちの一部を省略することができる。例えば指示子表記拡張ソースコードのみを対象にするのであれば、指示子抽出部111、セキュリティポリシ生成部131及びユーザ問合せ部141のみを設ければよい。
以上説明したセキュリティポリシ自動生成装置100は、一般には、セキュリティポリシを自動生成するためのコンピュータプログラムを、パーソナルコンピュータやワークステーションなどのコンピュータに読み込ませ、そのプログラムを実行させることによっても実現できる。セキュリティポリシの自動生成を実行するためのプログラムは、CD−ROMなどの記録媒体によって、あるいはネットワークを介して、コンピュータに読み込まれる。そのようなコンピュータは、例えば、CPUと、プログラムやデータを格納するためのハードディスク装置と、主メモリと、キーボードやマウスなどの入力装置と、CRTや液晶ディスプレイなどの表示装置と、CD−ROM等の記録媒体を読み取る読み取り装置と、ネットワークと接続するための通信インタフェースとから構成されている。ハードディスク装置、主メモリ、入力装置、表示装置、読み取り装置及び通信インタフェースは、いずれもCPUに接続している。このコンピュータでは、セキュリティポリシの自動生成を行うためのプログラムを格納した記録媒体を読み取り装置に装着してそのプログラムを記録媒体から読み出してハードディスク装置に格納し、あるいはそのようなプログラムをネットワークを介してダウンロードしてハードディスク装置に格納し、ハードディスク装置に格納されたプログラムをCPUが実行し、さらに、対象とするアプリケーションの指示子表記拡張ソースコード、既存文法によるソースコード、既存文法によるモデリング図あるいはセキュリティポリシ記述拡張モデリングを与えることによって、セキュリティポリシの自動生成が行われる。
本発明の実施の一形態のセキュリティポリシ自動作成装置の構成を示すブロック図である。 セキュリティポリシ記述拡張モデリング図と指示子表記拡張ソースコードのいずれかを入力としてセキュリティポリシを自動生成する処理を示すフローチャートである。 既存文法によるモデリング図と既存文法にゆおるソースコードのいずれかを入力としてセキュリティポリシを自動生成する処理をフローチャートである。 指示子表記拡張ソースコードを経由せずにセキュリティポリシ記述拡張モデリング図からセキュリティポリシを自動生成する処理を示すフローチャートである。 既存文法によるソースコードを経由せずに既存文法によるモデリング図からセキュリティポリシを自動生成する処理を示すフローチャートである。
符号の説明
11 指示子表記拡張ソースコード
12 既存文法のソースコード
13 既存文法のモデリング図
14 セキュリティポリシ記述拡張モデリング図
15 モデリング図変換装置
16 生成されたセキュリティポリシ
100 セキュリティポリシ自動生成装置
111 指示子抽出部
112 ソースコード解釈部
113 拡張モデリング図変換部
114 モデリング図解釈部
115 セキュリティポリシ記述抽出部
121 アクセス権限抽出部
131 セキュリティポリシ生成部
141 ユーザ問合せ部

Claims (15)

  1. リソースへのラベリングと強制アクセス制御機構とを備えたオペレーティングシステムにおいてアプリケーションを動作させるために用いられるセキュリティポリシを自動的に生成する方法であって、
    前記アプリケーションを表わすソースコードまたはモデリング図から、ターゲットのオペレーティングシステムと強制アクセス制御の実装形態に依存しない第1の中間表記を生成する、第1の中間表記生成段階と、
    前記第1の中間表記の生成に際し、あるアクセス関係についてはセキュリティポリシ内で設定するアクセス権限が複数候補挙げられる場合にはユーザに候補のアクセス権限を提示することにより当該アクセス関係のアクセス権限を解決する段階と、
    前記第1の中間表記に基づき、前記ターゲットのオペレーティングシステムと強制アクセス制御の実装形態の情報から前記ターゲットのディレクトリ構造に依存しない第2の中間表記を生成する段階と、
    前記第2の中間表記に基づき、前記ターゲットのディレクトリ構造の情報からセキュリティポリシを生成する段階と、
    を有する、セキュリティポリシを自動的に生成する方法。
  2. 前記第1の中間表記生成段階は、
    既存のコンパイラには無視されて前記既存のコンパイラには影響を与えない構文からなるとともにセキュリティポリシの生成に必要な情報を持つ指示子をソースコードに埋め込んだ指示子表記拡張ソースコードを対象として、前記指示子表記拡張ソースコードから指示子表記を抽出する段階と、
    前記指示子表記から前記第1の中間表記を生成する段階と、
    を有する、請求項1に記載のセキュリティポリシを自動的に生成する方法。
  3. セキュリティポリシ生成に必要な情報を埋め込むことができるように文法を拡張したセキュリティポリシ記述拡張モデリング図を入力として、該セキュリティポリシ記述拡張モデリング図を前記指示子表記拡張ソースコードに変換する段階をさらに有する、請求項2に記載のセキュリティポリシを自動的に生成する方法。
  4. 前記第1の中間表記生成段階は、
    既存文法によるソースコードを対象として、前記既存文法によるソースコードにおいてプロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出する段階と、
    前記抽出されたアクセス権限から前記第1の中間表記を生成する段階と、
    を有する、請求項1に記載のセキュリティポリシを自動的に生成する方法。
  5. 既存文法によるモデリング図を入力として、該既存文法によるモデリング図を前記既存文法によるソースコードに変換する段階をさらに有する、請求項4に記載のセキュリティポリシを自動的に生成する方法。
  6. 前記第1の中間表記生成段階は、
    セキュリティポリシ生成に必要な情報を埋め込むことができるように文法を拡張したセキュリティポリシ記述拡張モデリング図を入力として、該セキュリティポリシ記述拡張モデリング図からセキュリティポリシ記述を抽出する段階と、
    前記セキュリティポリシ記述から前記第1の中間表記を生成する段階と、
    を有する、請求項1に記載のセキュリティポリシを自動的に生成する方法。
  7. 前記第1の中間表記生成段階は、
    既存文法によるモデリング図を入力として、プロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出する段階と、
    前記抽出されたアクセス権限から前記第1の中間表記を生成する段階と、
    を有する、請求項1に記載のセキュリティポリシを自動的に生成する方法。
  8. リソースへのラベリングと強制アクセス制御機構とを備えたオペレーティングシステムにおいてアプリケーションを動作させるために用いられるセキュリティポリシを自動的に生成する装置であって、
    前記アプリケーションを表わすソースコードまたはモデリング図から、ターゲットのオペレーティングシステムと強制アクセス制御の実装形態に依存しない第1の中間表記を生成する、第1の中間表記生成手段と、
    前記第1の中間表記の生成に際し、あるアクセス関係についてはセキュリティポリシ内で設定するアクセス権限が複数候補挙げられる場合にはユーザに候補のアクセス権限を提示することにより当該アクセス関係のアクセス権限を解決する手段と、
    前記第1の中間表記に基づき、前記ターゲットのオペレーティングシステムと強制アクセス制御の実装形態の情報から前記ターゲットのディレクトリ構造に依存しない第2の中間表記を生成し、前記第2の中間表記に基づき、前記ターゲットのディレクトリ構造の情報からセキュリティポリシを生成する手段と、
    を有する、セキュリティポリシを自動的に生成する装置。
  9. 前記第1の中間表記生成手段は、既存のコンパイラには無視されて前記既存のコンパイラには影響を与えない構文からなるとともにセキュリティポリシの生成に必要な情報を持つ指示子をソースコードに埋め込んだ指示子表記拡張ソースコードを対象として、前記指示子表記拡張ソースコードから指示子表記を抽出し、前記指示子表記から前記第1の中間表記を生成する手段を有する、請求項8に記載のセキュリティポリシを自動的に生成する装置。
  10. セキュリティポリシ生成に必要な情報を埋め込むことができるように文法を拡張したセキュリティポリシ記述拡張モデリング図を入力として、該セキュリティポリシ記述拡張モデリング図を前記指示子表記拡張ソースコードに変換する手段をさらに有する、請求項9に記載のセキュリティポリシを自動的に生成する装置。
  11. 前記第1の中間表記生成手段は、既存文法によるソースコードを対象として、該既存文法によるソースコードにおいてプロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出し、前記抽出されたアクセス権限から前記第1の中間表記を生成する手段を有する、請求項8に記載のセキュリティポリシを自動的に生成する装置。
  12. 前記第1の中間表記生成手段は、セキュリティポリシ生成に必要な情報を埋め込むことができるように文法を拡張したセキュリティポリシ記述拡張モデリング図を入力として、該セキュリティポリシ記述拡張モデリング図からセキュリティポリシ記述を抽出し、前記セキュリティポリシ記述から前記第1の中間表記を生成する手段を有する、請求項8に記載のセキュリティポリシを自動的に生成する装置。
  13. 前記第1の中間表記生成手段は、既存文法によるモデリング図を入力として、プロセスがどのリソースにどのようなアクセス権限を必要とするかを抽出し、前記抽出されたアクセス権限から前記第1の中間表記を生成する手段を有する、請求項8に記載のセキュリティポリシを自動的に生成する装置。
  14. リソースへのラベリングと強制アクセス制御機構とを備えたオペレーティングシステムにおいてアプリケーションを動作させるために用いられるセキュリティポリシを自動的に生成するために、コンピュータに、
    前記アプリケーションを表わすソースコードまたはモデリング図から、ターゲットのオペレーティングシステムと強制アクセス制御の実装形態に依存しない第1の中間表記を生成する処理と、
    前記第1の中間表記の生成に際し、あるアクセス関係についてはセキュリティポリシ内で設定するアクセス権限が複数候補挙げられる場合にはユーザに候補のアクセス権限を提示することにより当該アクセス関係のアクセス権限を解決する処理と、
    前記第1の中間表記に基づき、前記ターゲットのオペレーティングシステムと強制アクセス制御の実装形態の情報から前記ターゲットのディレクトリ構造に依存しない第2の中間表記を生成する処理と、
    前記第2の中間表記に基づき、前記ターゲットのディレクトリ構造の情報からセキュリティポリシを生成する処理と、
    を実行させるプログラム。
  15. コンピュータが読み取り可能な記録媒体であって、請求項14に記載のプログラムを格納した記録媒体。

JP2003293787A 2003-08-15 2003-08-15 セキュアosのセキュリティポリシを自動的に生成する方法及び装置並びに該方法を実行するためのプログラム Pending JP2005063224A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003293787A JP2005063224A (ja) 2003-08-15 2003-08-15 セキュアosのセキュリティポリシを自動的に生成する方法及び装置並びに該方法を実行するためのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003293787A JP2005063224A (ja) 2003-08-15 2003-08-15 セキュアosのセキュリティポリシを自動的に生成する方法及び装置並びに該方法を実行するためのプログラム

Publications (1)

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

Family

ID=34370578

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003293787A Pending JP2005063224A (ja) 2003-08-15 2003-08-15 セキュアosのセキュリティポリシを自動的に生成する方法及び装置並びに該方法を実行するためのプログラム

Country Status (1)

Country Link
JP (1) JP2005063224A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008126773A1 (ja) * 2007-04-05 2008-10-23 Nec Corporation 情報処理システム、情報処理方法
JP2009020782A (ja) * 2007-07-13 2009-01-29 Hitachi Software Eng Co Ltd セキュア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 (ja) * 2007-04-05 2008-10-23 Nec Corporation 情報処理システム、情報処理方法
JP5317020B2 (ja) * 2007-04-05 2013-10-16 日本電気株式会社 情報処理システム、情報処理方法
JP2009020782A (ja) * 2007-07-13 2009-01-29 Hitachi Software Eng Co Ltd セキュア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
US8549514B2 (en) Distributing customized software products
JP2007535761A (ja) 抗タンパーコードを生成するシステム及び方法
JP2009053740A (ja) 操作ログを記録するためのシステム、方法およびコンピュータ・プログラム
US8904492B2 (en) Method of controlling information processing system, computer-readable recording medium storing program for controlling apparatus
JP4848430B2 (ja) 仮想役割
EP3355229B1 (en) Analysis device, analysis method, and analysis program
CN113360947A (zh) 数据脱敏方法及装置、计算机可读存储介质、电子设备
CN113778897A (zh) 接口的自动测试方法、装置、设备及存储介质
US8418170B2 (en) Method and system for assessing deployment and un-deployment of software installations
KR101364599B1 (ko) 어플리케이션의 유해성 판단 방법 및 시스템
JP2005063224A (ja) セキュアosのセキュリティポリシを自動的に生成する方法及び装置並びに該方法を実行するためのプログラム
WO2021044502A1 (ja) テスト設計装置、テスト設計方法、テスト設計プログラム及びテスト設計システム
EP3872630A2 (en) Request processing method and apparatus, electronic device, and computer storage medium
CN115794253A (zh) 应用集成方法、装置、电子设备及计算机可读存储介质
JP5150546B2 (ja) 情報処理装置、操作履歴取得方法、コンピュータプログラム
CN110837612B (zh) 统一资源标识符uri数据的获取方法和装置、存储介质
JP6705482B2 (ja) システム構築パラメータ管理装置、システム構築パラメータ管理システム、システム構築パラメータ管理方法、及び、システム構築パラメータ管理プログラム
JP2007018091A (ja) 情報処理装置、情報処理システム、アプリケーション開発支援方法及びプログラム
García-Zubía et al. Remote laboratories from the software engineering point of view
JP6818568B2 (ja) 通信装置、通信仕様差分抽出方法及び通信仕様差分抽出プログラム
CN112486460A (zh) 自动导入接口文档的方法、系统、设备和介质
JP2005050314A (ja) アプリケーションソフトウェアストリーミングのためのアプリケーションソフトウェア再パッケージシステム、及びその方法
JP2018005915A (ja) アプリケーションパッケージを提供する方法およびシステム、アプリケーションを実行する方法およびシステム
Wrigley Behaviour Modelling in the Design of Systems of Systems
JP6920501B1 (ja) 情報処理システム、プログラム、及び情報処理方法

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