JP2008250680A - Security requirement analysis support device and computer program - Google Patents
Security requirement analysis support device and computer program Download PDFInfo
- Publication number
- JP2008250680A JP2008250680A JP2007091242A JP2007091242A JP2008250680A JP 2008250680 A JP2008250680 A JP 2008250680A JP 2007091242 A JP2007091242 A JP 2007091242A JP 2007091242 A JP2007091242 A JP 2007091242A JP 2008250680 A JP2008250680 A JP 2008250680A
- Authority
- JP
- Japan
- Prior art keywords
- goal
- model
- attacker
- information
- elements
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、セキュリティ要求分析支援装置及びコンピュータプログラムに関する。 The present invention relates to a security requirement analysis support apparatus and a computer program.
コンピュータシステムの開発工程は、要件定義、設計、製造、試験という流れが一般的である。開発工程において、手戻りを極力なくしてスムーズに開発を進め、かつ、システムの品質を上げるためには、要件定義を明確に規定することが効果的である。開発対象システムの要件定義、すなわち、開発対象システムに要求される機能を分析するために用いられる従来の手法の1つにゴール指向要求分析があり、その代表的な分析手法としてi*(アイ・スター)がある。 The development process of a computer system generally has a flow of requirements definition, design, manufacturing, and testing. In the development process, it is effective to clearly define the requirement definition in order to proceed smoothly with minimal rework and improve the quality of the system. One of the conventional methods used to analyze the requirements of the development target system, that is, to analyze the functions required for the development target system is goal-oriented requirement analysis. Star).
図13は、i*による分析例を示す。i*では、ゴールの達成などに関心・責任を持つ実体である「アクタ」(モデルでは、アクタの責任範囲を、円形のアクタ境界で示す)、達成されたかどうかが明確なゴールである「ハードゴール」、達成されたかどうかを明確にできない「ソフトゴール」(一般に、0から1までの達成度を持つ)、ゴールを達成するための手順である「タスク」、ゴールの達成やタスク実行のために使用する物理的実体、または情報である「リソース」などの要素をノードとし、これらのノード間の依存関係を図として記述することにより要求を可視可する。これにより、ステークホルダ間の利害関係や依存関係を全体的に俯瞰しながら要求される機能を分析することができ、従って、人間が理解しやすく、効率的な分析を可能としている。 FIG. 13 shows an analysis example using i *. In i *, the “actor” is an entity that has an interest and responsibility for achieving the goal, etc. (in the model, the responsibility area of the actor is indicated by a circular actor boundary). “Goal”, “Soft Goal” that cannot be clearly determined whether or not it is achieved (generally having a degree of achievement from 0 to 1), “Task” that is a procedure to achieve the goal, for goal achievement and task execution The request is made visible by describing the physical entity used in the process or an element such as “resource” as information as a node and describing the dependency relationship between these nodes as a diagram. As a result, it is possible to analyze the required functions while looking over the stakeholder's interests and dependencies as a whole, and therefore, it is easy for humans to understand and enables efficient analysis.
近年、このi*において、セキュリティに関する要求を分析するように拡張された手法が提案されている(例えば、非特許文献1参照)。非特許文献1に記載の手法では、考慮すべき通常のステークホルダに加えて、攻撃者となるステークホルダを考慮し、攻撃者の悪意ある目的を抽出して、それらの目的の達成を不可能にするかまたは軽減させるための目的やタスクを通常のステークホルダに追加する。これにより、セキュリティを考慮した要求分析を行うことができる。 In recent years, in i *, an extended method has been proposed to analyze security-related requirements (see, for example, Non-Patent Document 1). In the method described in Non-Patent Document 1, in addition to normal stakeholders to be considered, an attacker's stakeholder is considered, and the attacker's malicious objectives are extracted to make it impossible to achieve those objectives. Add objectives or tasks to normal stakeholders to reduce or mitigate. As a result, it is possible to perform requirements analysis in consideration of security.
図14は、通常のi*のプロセスと、非特許文献1によって拡張されたプロセスを示す図であり、図15及び図16は、この非特許文献1により拡張されたプロセスによって生成されたゴールモデルの一例である。図14に示すように、通常のi*のプロセスでは、まずアクタを特定することから始める(ステップS910)。そして、特定したアクタ間の依存関係を分析して戦略依存モデルを作成した後(ステップS912)、ゴール及びタスクを特定する(ステップS914)。続いて、アクタ内の依存関係を分析してゴールを比較評価することによって戦略原理モデルを作成し(ステップS916)、さらに、ノード間の依存関係を特定する(ステップS918)。このS912〜S918の過程を、部分的または全体的に適宜繰り返してゴールモデルを作成する。 FIG. 14 is a diagram showing a normal i * process and a process extended by Non-Patent Document 1. FIGS. 15 and 16 show a goal model generated by the process extended by Non-Patent Document 1. It is an example. As shown in FIG. 14, in the normal i * process, first, an actor is specified (step S910). Then, after analyzing the dependency relationship between the specified actors and creating a strategy dependency model (step S912), a goal and a task are specified (step S914). Subsequently, a strategy principle model is created by analyzing the dependency relationship in the actor and comparing and evaluating the goal (step S916), and further, the dependency relationship between nodes is specified (step S918). The process of S912 to S918 is appropriately repeated partially or entirely to create a goal model.
拡張プロセスにおいては、攻撃者を特定し、攻撃者モデルを生成する(ステップS920、S922)。ここでは、攻撃者をアクタとして特定するが、ドメインモデルの全アクタを、潜在的攻撃者(例えば、悪意のあるユーザ、悪意を持って改造された装置)とみなす。この攻撃者は、対応するドメインモデルのアクタと同じゴール、タスク及びリソースを持つものである。
つぎに、アクタの悪意を特定し、悪意モデルを生成する(ステップS924、S926)。つまり、ドメインモデルの要素に加えて、攻撃者のゴールとして悪意を特定する。
続いて、脆弱性を分析して、脆弱性モデルを生成する(ステップS928、S930)。脆弱性の分析においては、攻撃の影響を受ける可能性がある要素を特定するが、悪意のゴールやタスクから負の貢献関係を受ける要素、悪意のゴールやタスクに依存する要素は脆弱であるとする。
In the expansion process, an attacker is identified and an attacker model is generated (steps S920 and S922). Here, attackers are identified as actors, but all actors in the domain model are considered as potential attackers (eg, malicious users, maliciously modified devices). This attacker has the same goals, tasks and resources as the corresponding domain model actor.
Next, the malicious intention of the actor is specified, and a malicious model is generated (steps S924 and S926). In other words, in addition to the elements of the domain model, malicious intention is specified as the goal of the attacker.
Subsequently, the vulnerability is analyzed and a vulnerability model is generated (steps S928 and S930). In the analysis of vulnerabilities, the elements that can be affected by the attack are identified, but elements that receive negative contributions from malicious goals and tasks, and elements that depend on malicious goals and tasks are considered vulnerable. To do.
図15にも示すように、攻撃者を特定し、その攻撃者の悪意を特定して悪意モデルを生成し、その悪意から発生する攻撃を受ける可能性から脆弱性モデルを生成した後、その脆弱性を突く攻撃方法を特定して、攻撃方法モデルを作成する(ステップS932、S934)。つまり、攻撃方法を、悪意を達成する手段であるタスクとして特定する。また、ドメインモデル(通常のi*モデル)の要素を利用(「悪用」)してもよい。 As shown in FIG. 15, the attacker is identified, the malicious intention of the attacker is identified, a malicious model is generated, and the vulnerability model is generated from the possibility of being attacked by the malicious intention. An attack method that makes a difference is identified and an attack method model is created (steps S932 and S934). That is, the attack method is specified as a task that is a means for achieving malicious intent. Further, elements of the domain model (ordinary i * model) may be used (“abuse”).
攻撃方法のモデルが作成されると、図16に示すように、その攻撃に対する対策を特定して、対策モデルを生成する(ステップS936、S938)。つまり、元のドメインモデルに戻り、特定した各攻撃方法に対し、「その攻撃に対抗したい」というソフトゴールを設定する。あるいは、さらに詳しく、「攻撃を回避したい」、あるいは「攻撃を検出したい」といったゴールを設定した方が好ましい。そして、これらのソフトゴールに正の貢献関係を持つタスクとして、対策を特定する。 When the attack method model is created, a countermeasure against the attack is identified and a countermeasure model is generated as shown in FIG. 16 (steps S936 and S938). That is, returning to the original domain model, a soft goal “I want to counter the attack” is set for each identified attack method. Or, more specifically, it is preferable to set a goal such as “I want to avoid an attack” or “I want to detect an attack”. Then, measures are identified as tasks that have a positive contribution to these soft goals.
また、一方、新たな仕様書を作成する際に、既存仕様書事例を格納した事前データベースを利用し、編集作業全体の効率化を図ることのできるセキュリティ設計支援装置がある(例えば、特許文献1参照)。
非特許文献1には、セキュリティに関する要求を分析するよう拡張された手法について開示されているが、これは、人為的な分析手順を示しているに過ぎない。よって、分析の結果の信頼性(網羅性や妥当性)は、分析者が、分析対象となるドメインにおいて考慮すべき攻撃者(ステップS920)、悪意(ステップS924)、攻撃方法(ステップS932)を漏れなく発見できるかどうかに依存する(図15)。しかし、それらを漏れなく発見できるかどうかは、分析者のセキュリティに関する知識、対象ドメインに関する知識、分析の熟練度等に依存する。従って、これらの知識や経験を持たない分析者には、この手法を効果的に活用し、精度の高い分析を実施することは困難であった。そのため、セキュリティ要求分析の非熟練者であっても、熟練者に近い高精度な分析を行えるようにすることが求められている。 Non-Patent Document 1 discloses an extended method for analyzing security requirements, but this shows only an artificial analysis procedure. Therefore, the reliability (coverability and validity) of the analysis results is determined by the attacker (step S920), malicious (step S924), and attack method (step S932) that the analyst should consider in the domain to be analyzed. It depends on whether it can be found without omission (FIG. 15). However, whether or not they can be discovered without fail depends on the security knowledge of the analyst, knowledge of the target domain, skill of analysis, and the like. Therefore, it has been difficult for analysts who do not have such knowledge and experience to effectively utilize this method and perform highly accurate analysis. Therefore, even a non-experienced person in security requirement analysis is required to be able to perform highly accurate analysis close to the skilled person.
また、ゴールモデルの作成過程で、要素(ゴール、タスク、資源)の重複や矛盾が発生する可能性がある。図17は、冗長な要素が含まれている場合の例を示す図である。同図において、悪意ゴールG1は、サブゴールSG1及びSG2の両者が成り立つときに達成される。しかし、サブゴールSG2「操作ログを消す」を不可能ならしめるタスクT1「消去不能なログをとる」がすでにゴールモデルに存在しているため、サブゴールSG2は達成されない。悪意ゴールG1は、サブゴールSG1及びSG2のAND条件により成り立っており、サブゴールSG1が達成されないとその上位のゴールG1も達成されないため、この部分全体の分析が不要となる。従来は、分析図の作成中に、このような要素の重複や矛盾を自動で検証する手段がないため、人間の目視により確認する必要があった。これは、コストが大きく、モデルが複雑になればなるほど見逃される可能性も大きかった。 In addition, elements (goals, tasks, resources) may be duplicated or contradicted during the goal model creation process. FIG. 17 is a diagram illustrating an example in which redundant elements are included. In the figure, the malicious goal G1 is achieved when both of the subgoals SG1 and SG2 hold. However, the subgoal SG2 cannot be achieved because the task T1 “Take a log that cannot be deleted” that makes the subgoal SG2 “delete operation log” impossible is already present in the goal model. The malicious goal G1 is formed by the AND condition of the subgoals SG1 and SG2, and if the subgoal SG1 is not achieved, the higher-order goal G1 is not achieved. Conventionally, there is no means for automatically verifying such overlapping or contradiction of elements during the creation of an analysis diagram, so it has been necessary to confirm it visually by humans. This was costly and could be overlooked as the model became more complex.
そこで、特許文献1では、属性の包含関係を基にして要件定義の重複・矛盾を類推している。この技術により、重複を類推する場合の例について説明する。例えば、「脅威A:特権ユーザが重要データを改ざんする(属性:<攻撃者・要因>管理者、<保護対象資産>情報、<脅威種別・攻撃方法>全ての改ざん)」、「脅威B:管理者権限を持つ外部委託業者が重要顧客情報を改ざんする(属性:<攻撃者・要因>外部委託管理者、<保護対象資産>顧客情報、<脅威種別・攻撃方法>全ての改ざん)」があったとする。また、管理者には、外部委託管理者と内部管理者が包含されることが定義されているものとする。この場合、<攻撃者・要因>で示される関与者、<保護対象資産>で示される情報資産の両属性において、脅威Aと脅威Bは階層(包含)関係にあり(管理者⊃外部委託管理者、情報⊃顧客情報)、<脅威種別・攻撃方法>で示される攻撃方法属性が一致することから、脅威Aと脅威Bが重複する可能性があると判断する。 Therefore, in Patent Document 1, the duplication and contradiction of requirement definitions are inferred based on the inclusion relation of attributes. An example in which duplication is estimated by this technique will be described. For example, “threat A: privileged user alters important data (attributes: <attacker / factor> administrator, <protected asset> information, <threat type / attack method> all alterations”), “threat B: An outsourcer with administrator authority alters important customer information (attributes: <attacker / factor> outsource administrator, <protected asset> customer information, <threat type / attack method> all alterations) " Suppose there was. Further, it is assumed that the manager includes an outsource manager and an internal manager. In this case, threat A and threat B have a hierarchical (inclusion) relationship in both attributes of the actor indicated by <Attack / Factor> and the information asset indicated by <Protected Asset> (Administrator / Outsource Management) Since the attack method attributes indicated by <Person, Information> Customer Information) and <Threat Type / Attack Method> match, it is determined that threat A and threat B may overlap.
また、矛盾を類推する場合の例について説明する。例えば、「前提条件A:システム管理者は特権の悪用をしないものとする。(属性:<攻撃者・要因>管理者、<保護対象資産>全て、<脅威種別・攻撃方法>全て)」、「脅威B:管理者権限を持つ外部委託業者が重要顧客情報を改ざんする。(属性:<攻撃者・要因>外部委託管理者、<保護対象資産>顧客情報、<脅威種別・攻撃方法>全ての改ざん)」があったとする。また、管理者として、外部委託管理者と内部管理者が包含されることが定義されているものとする。この場合、<攻撃者・要因>で示される関与者属性において、前提条件Aと脅威Bが階層(包含)関係にあることから、前提条件Aと脅威Bが矛盾する可能性があると類推する。 An example in the case of inferring contradiction will be described. For example, “Prerequisite A: The system administrator shall not abuse privileges. (Attributes: <Attack / Factor> Administrator, <Protected Asset> All, <Threat Type / Attack Method> All”) “Threat B: Outsourcer with administrator authority alters important customer information. (Attributes: <Attack / Factor> Outsource Administrator, <Protected Asset> Customer Information, <Threat Type / Attack Method>” Falsification) ”. In addition, it is defined that the manager includes an outsource manager and an internal manager. In this case, since the precondition A and the threat B have a hierarchical (inclusion) relationship in the participant attribute indicated by <Attack / Factor>, it is analogized that the precondition A and the threat B may conflict. .
このように、特許文献1の技術においては、要件にいくつかの属性を付与して管理し、属性の包含関係を基にして重複・矛盾を類推しているが、全ての脅威・要件等の要素間を比較しなければならないため、処理コストが高いという問題がある。例えば、n個の要素の場合、(n−1)2回の比較を行わなければならない。また、集合の包含関係という単純な判断基準しか持たないため、類推結果の信頼性が低いという問題がある。 As described above, in the technique of Patent Document 1, some attributes are assigned to the requirements and managed, and duplication / inconsistency is inferred based on the inclusion relation of the attributes. Since the elements must be compared, there is a problem that the processing cost is high. For example, for n elements, (n-1) two comparisons must be made. In addition, there is a problem that the reliability of the analogy result is low because it has only a simple criterion of inclusion of sets.
本発明は、このような事情に鑑みてなされたものであり、セキュリティを考慮したシステム要件定義を分析する際に、非熟練者であっても、熟練者と同等のレベルのセキュリティ分析を効率的に、かつ低コストで行えるよう支援することのできるセキュリティ要求分析支援装置及びコンピュータプログラムを提供することをその目的とする。 The present invention has been made in view of such circumstances, and when analyzing a system requirement definition considering security, even a non-skilled person can efficiently perform security analysis at the same level as a skilled person. Furthermore, it is an object of the present invention to provide a security requirement analysis support apparatus and a computer program that can be supported at a low cost.
上記課題を解決するために、本発明は、開発システムによって達成すべきゴールと、当該ゴールを達成するためのゴールまたはタスク、あるいは、リソースのうち1以上とを要素として含むゴールモデルに、セキュリティを脅かす攻撃者のモデルの候補を提示することによりセキュリティ分析を支援するセキュリティ要求分析支援装置であって、ゴールモデルを構成する要素と、当該要素間の依存関係との情報を示すゴールモデルデータを記憶するゴールモデル情報記憶部と、悪意のある攻撃者が目標とするゴールである悪意ゴールを達成するための要素、及び、当該要素間の依存関係により示される攻撃者モデルと、矛盾または重複のため当該攻撃者モデルを構成する要素とは同時成立しない要素との情報からなる攻撃者モデルデータをドメインに対応させて記憶する攻撃データベースと、前記ゴールモデルが属するドメインの情報に対応した攻撃者モデルデータを前記攻撃データベースから読み出すデータベース入出力部と、前記データベース入出力部が読み出した攻撃者モデルデータの示す同時成立しない要素の情報と、前記ゴールモデル情報記憶部内のゴールモデルデータの示す要素の情報とに基づいて、当該攻撃者モデルデータの中から、当該ゴールモデルデータの示す要素とは同時成立しない要素が含まれている攻撃者モデルデータを特定し、さらに、特定した攻撃者モデルデータの示す要素と、当該要素間の依存関係との情報から、同時成立しない前記要素を削除したときに悪意ゴールが達成されるか否かを判断し、同時成立しない前記要素を削除したときにも悪意ゴールが達成される場合は、当該攻撃者モデルデータを、当該攻撃者モデルデータの示す攻撃者モデルから同時成立しない当該要素を削除するとともに、当該要素を削除した場合に成立しない要素を削除した新たな攻撃者モデルを示すよう変更する攻撃者モデル情報生成部と、前記攻撃者モデル情報生成部により、前記ゴールモデルデータの示す要素と同時成立しない要素が含まれていないと判断された前記攻撃者モデルデータ、及び、変更された攻撃者モデルデータの示す攻撃者モデルを表示するよう指示するゴールモデル情報制御部と、を備えることを特徴とするセキュリティ要求分析支援装置である。 In order to solve the above-described problems, the present invention provides security to a goal model including a goal to be achieved by a development system and one or more of goals or tasks or resources for achieving the goal as elements. A security requirement analysis support device that supports security analysis by presenting threatening attacker model candidates, and stores goal model data indicating information on elements constituting the goal model and dependencies between the elements For conflict or duplication with the goal model information storage unit to be used, the element for achieving the malicious goal, which is the goal targeted by the malicious attacker, and the attacker model indicated by the dependency between the elements The attacker model data consisting of information about the elements that are not established simultaneously with the elements that make up the attacker model An attack database stored in correspondence with the in-line, a database input / output unit that reads out attacker model data corresponding to information of a domain to which the goal model belongs, and an attacker model data read out by the database input / output unit Based on the information on the elements that are not established simultaneously and the information on the elements indicated by the goal model data in the goal model information storage unit, the elements indicated by the goal model data are simultaneously established from the attacker model data. When attacker model data that contains elements that are not included is identified, and the elements that do not hold simultaneously are deleted from the information about the elements indicated by the identified attacker model data and the dependencies between the elements, malicious It is also malicious when judging whether or not the goal is achieved and deleting the elements that are not established simultaneously If the rule is achieved, the attacker model data is deleted from the attacker model indicated by the attacker model data, and the elements that are not established simultaneously are deleted. The attacker model information generation unit that changes to indicate a new attacker model, and the attack that has been determined by the attacker model information generation unit as not to contain an element that does not coincide with the element indicated by the goal model data And a goal model information control unit for instructing to display the attacker model data and the attacker model indicated by the changed attacker model data.
また、本発明は、上述するセキュリティ要求分析支援装置であって、ドメインに対応する語句、及び、当該語句の類似語の情報を記憶する共通用語データベースをさらに備え、前記ゴールモデルデータ内の要素の情報は、要素の説明を示す記述の情報を含み、前記攻撃者モデル情報生成部は、前記ゴールモデル情報記憶部内のゴールモデルデータにより示される要素の情報から、当該要素の記述に使用されている語句を抽出し、前記データベース入出力部は、前記ゴールモデルが属するドメインとして、前記攻撃者モデル情報生成部により抽出された語句、及び、当該抽出された語句の類似語が対応付けられているドメインを前記共通用語データベースから読み出す、ことを特徴とする。 In addition, the present invention is the security requirement analysis support apparatus described above, further comprising a common term database that stores information on words corresponding to domains and similar words of the words, and includes elements of the goal model data. The information includes description information indicating the description of the element, and the attacker model information generation unit is used for description of the element from the information of the element indicated by the goal model data in the goal model information storage unit A word is extracted, and the database input / output unit is a domain to which a word extracted by the attacker model information generation unit and a similar word of the extracted word are associated as a domain to which the goal model belongs Is read from the common term database.
また、本発明は、上述するセキュリティ要求分析支援装置であって、前記攻撃データベースは、攻撃者モデルに含まれる要素と同時成立しない要素の説明を示す記述の情報を少なくとも含む同時成立不可要素データをさらに記憶し、前記攻撃者モデルに含まれる要素と同時成立しない要素の記述に含まれる語句の同義語を記憶する共通用語データベースをさらに備え、前記データベース入出力部は、前記ゴールモデル情報記憶部内のゴールモデルデータにより示される要素の記述に使用されている語句の同義語の情報を前記共通用語データベースから読み出すとともに、前記同時成立不可要素データを前記攻撃データベースから読み出し、前記攻撃者モデル情報生成部は、前記データベース入出力部が読み出した同義語の情報と同時成立不可要素データの入力を受け、当該同時成立不可要素データのうち、前記同義語が記述に含まれる同時成立不可要素データを特定し、前記攻撃者モデル候補群の中から、この特定した同時成立不可要素により示される同時成立しない要素のデータが含まれている攻撃者モデルデータを、前記ゴールモデルデータにより示される要素とは同時に成立しない要素が含まれている攻撃者モデルデータであると判断する、ことを特徴とする。 Further, the present invention is the security requirement analysis support apparatus described above, wherein the attack database includes element information that cannot be simultaneously established including at least information of a description indicating an element that is not simultaneously established with an element included in the attacker model. And further comprising a common term database for storing synonyms of phrases included in the description of elements that are not simultaneously established with elements included in the attacker model, wherein the database input / output unit includes: The synonym information of the phrase used in the description of the element indicated by the goal model data is read from the common term database, the element data that cannot be simultaneously established is read from the attack database, and the attacker model information generating unit is , Not synonymous with synonym information read by the database input / output unit In response to the input of raw data, among the non-simultaneous simultaneous element data, the simultaneous synonym non-capable element data including the synonym included in the description is identified, and the identified simultaneous unsatisfiable element is selected from the attacker model candidate group Determining that the attacker model data including the data of the elements that are not simultaneously established indicated by is the attacker model data including the elements that are not simultaneously established with the elements indicated by the goal model data; It is characterized by.
また、本発明は、上述するセキュリティ要求分析支援装置であって、前記ゴールモデル情報記憶部は、前記ゴールモデル情報制御部により出力が指示された攻撃者モデルデータの中から、ユーザにより選択された攻撃者モデルデータの情報を記憶し、前記攻撃者モデル情報生成部は、前記ゴールモデルに要素が追加された場合、前記ゴールモデル情報記憶部内に記憶されている前記攻撃者モデルデータの示す同時成立しない要素の情報に基づいて、新たに追加された要素と同時成立しない要素のデータが含まれている攻撃者モデルデータを特定し、さらに、特定した攻撃者モデルデータの示す要素と、当該要素間の依存関係との情報から、同時成立しない前記要素を削除したときに悪意ゴールが達成されるか否かを判断し、悪意ゴールが達成されない場合には、当該攻撃者モデルデータを前記ゴールモデル情報記憶部から削除し、同時成立しない前記要素を削除したときにも悪意ゴールが達成される場合は、特定した攻撃者モデルデータを、当該攻撃者モデルデータの示す攻撃者モデルから同時成立しない当該要素を削除するとともに、当該要素を削除した場合に成立しない要素を削除した新たな攻撃者モデルを示すよう変更し、前記ゴールモデル情報制御部は、前記攻撃者モデル情報生成部により削除された攻撃者モデルデータの示す攻撃者モデルを表示から消去するとともに、変更前の攻撃者モデルの表示を変更された前記攻撃者モデルデータの示す新たな攻撃者モデルの表示に変更するよう指示する、ことを特徴とする。 Further, the present invention is the security requirement analysis support device described above, wherein the goal model information storage unit is selected by a user from attacker model data whose output is instructed by the goal model information control unit. The attacker model data is stored, and the attacker model information generation unit, when an element is added to the goal model, the simultaneous establishment indicated by the attacker model data stored in the goal model information storage unit Based on the information of the elements that are not included, the attacker model data that contains the data of the elements that are not simultaneously established with the newly added elements is identified, and the elements indicated by the identified attacker model data are It is judged from the information with the dependency relationship of whether or not the malicious goal is achieved when the elements that are not simultaneously established are deleted, and the malicious goal is achieved. If not, the attacker model data is deleted from the goal model information storage unit, and when the malicious goal is achieved even when the elements that are not simultaneously established are deleted, the identified attacker model data is The goal model information control is performed by deleting the element that is not simultaneously established from the attacker model indicated by the attacker model data, and changing to indicate a new attacker model from which the element that is not established when the element is deleted. The unit deletes the attacker model indicated by the attacker model data deleted by the attacker model information generation unit from the display, and also displays a new indication of the attacker model data after the change of the display of the attacker model before the change. It is characterized by instructing to change to the display of a simple attacker model.
また、本発明は、開発システムによって達成すべきゴールと、当該ゴールを達成するためのゴールまたはタスク、あるいは、リソースのうち1以上とを要素として含むゴールモデルに、セキュリティを脅かす攻撃者のモデルの候補を提示することによりセキュリティ分析を支援するセキュリティ要求分析支援装置として用いられるコンピュータを、ゴールモデルを構成する要素と、当該要素間の依存関係との情報を示すゴールモデルデータを記憶するゴールモデル情報記憶部、悪意のある攻撃者が目標とするゴールである悪意ゴールを達成するための要素、及び、当該要素間の依存関係により示される攻撃者モデルと、矛盾または重複のため当該攻撃者モデルを構成する要素とは同時成立しない要素との情報からなる攻撃者モデルデータをドメインに対応させて記憶する攻撃データベース、前記ゴールモデルが属するドメインの情報に対応した攻撃者モデルデータを前記攻撃データベースから読み出すデータベース入出力部、前記データベース入出力部が読み出した攻撃者モデルデータの示す同時成立しない要素の情報と、前記ゴールモデル情報記憶部内のゴールモデルデータの示す要素の情報とに基づいて、当該攻撃者モデルデータの中から、当該ゴールモデルデータの示す要素とは同時成立しない要素が含まれている攻撃者モデルデータを特定し、さらに、特定した攻撃者モデルデータの示す要素と、当該要素間の依存関係との情報から、同時成立しない前記要素を削除したときに悪意ゴールが達成されるか否かを判断し、同時成立しない前記要素を削除したときにも悪意ゴールが達成される場合は、当該攻撃者モデルデータを、当該攻撃者モデルデータの示す攻撃者モデルから同時成立しない当該要素を削除するとともに、当該要素を削除した場合に成立しない要素を削除した新たな攻撃者モデルを示すよう変更する攻撃者モデル情報生成部、前記攻撃者モデル情報生成部により、前記ゴールモデルデータの示す要素と同時成立しない要素が含まれていないと判断された前記攻撃者モデルデータ、及び、変更された攻撃者モデルデータの示す攻撃者モデルを表示するよう指示するゴールモデル情報制御部、として機能させることを特徴とするコンピュータプログラムである。 In addition, the present invention provides a model of an attacker who threatens security in a goal model that includes, as elements, a goal to be achieved by the development system and a goal or task for achieving the goal, or one or more of resources. Goal model information for storing goal model data indicating information on elements constituting the goal model and dependencies between the elements, using a computer used as a security requirement analysis support apparatus for supporting security analysis by presenting candidates The memory unit, the elements for achieving the malicious goal, which is the goal that the malicious attacker is aiming for, and the attacker model indicated by the dependency between the elements, and the attacker model for contradiction or duplication Attacker model data consisting of information about elements that do not hold simultaneously with constituent elements The attack database stored in correspondence with the in-line, the database input / output unit for reading the attacker model data corresponding to the information of the domain to which the goal model belongs, from the attack database, the attacker model data read by the database input / output unit Based on the information of the elements that are not established simultaneously and the information of the elements indicated by the goal model data in the goal model information storage unit, the elements that are not established simultaneously with the elements indicated by the goal model data from the attacker model data The malicious goal is determined when the elements that are not simultaneously established are deleted from the information of the elements indicated by the identified attacker model data and the dependency relationship between the elements. Judgment is also made when it is determined whether it is achieved and the elements that are not simultaneously established are deleted. Is achieved, the attacker model data is deleted from the attacker model indicated by the attacker model data, and the new element is deleted. An attacker model information generation unit that changes to indicate an attacker model, and the attacker model data determined by the attacker model information generation unit as not including an element that is not simultaneously established with the element indicated by the goal model data And a goal model information control unit that instructs to display the attacker model indicated by the changed attacker model data.
本発明によれば、セキュリティ要求分析において、考慮を忘れやすい攻撃を発見できる可能性が高まるという効果がある。また、その際、不必要な分析は除去されるため、分析効率が高まる。また、ゴールモデルの作成過程で、要素の重複や矛盾を検証することもできる。これらの結果、セキュリティに関する要求分析の信頼性(網羅性や妥当性)が高まり、初心者であっても、容易にセキュリティ要求分析を行うことを支援することができる。また、ゴールモデルを構成する全ての要素の組み合わせについて比較を行う必要がないため、処理コストを低減することも可能である。 According to the present invention, there is an effect that in the security requirement analysis, there is an increased possibility of finding an attack that is easily forgotten. At this time, unnecessary analysis is removed, so that analysis efficiency is increased. In addition, duplication and contradiction of elements can be verified in the goal model creation process. As a result, the reliability (coverage and validity) of security-related requirements analysis is enhanced, and even a novice can easily support security requirements analysis. Further, since it is not necessary to compare all combinations of elements constituting the goal model, it is possible to reduce the processing cost.
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
図1は、本発明の一実施の形態によるセキュリティ要求分析支援装置10の動作概要について説明するための図である。
まず、セキュリティ要求分析支援装置10は、分析者の作成したゴール指向要求分析の分析図、すなわち、ゴールモデルに使用されている語句と、その語句とドメインの関係を解析して、現在分析している対象のドメインを推定する。つまり、共通用語データベース30(以下、データベースを「DB」と記載)内に、ドメインと当該ドメインに関連する語句とを対応付けた情報と、ドメインに関連する語句の同義語の情報とを保持しておく。そして、ゴールモデルのノードである各要素に含まれる語句、及び、その語句の同義語が含まれる数が最も多いドメインを、現在作成中のゴールモデルが属するドメインであると類推する。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a diagram for explaining an outline of the operation of the security requirement
First, the security requirement
次に、セキュリティ要求分析支援装置10は、ドメインごとに想定される攻撃者・悪意ゴール・脆弱性・攻撃手法に関する情報を蓄積した攻撃DB40から、類推されたドメインに対応する攻撃者モデルを読み出して、これを攻撃者モデル候補とする。また、これらの攻撃者モデル候補を全て合わせて攻撃者モデル候補群とする。セキュリティ要求分析支援装置10は、現在作成しているゴールモデル内にすでに記述されているタスクを参照して、矛盾や重複のため、不要な攻撃者モデル候補を削除するとともに、攻撃者モデル候補から不要なモデル部分を削除した、新たな攻撃者モデル候補を作成して、現在の攻撃者モデル候補と置き換え、新たな攻撃者モデル候補群を作成する。セキュリティ要求分析支援装置10は、新たに作成した攻撃者モデル候補群に含まれる攻撃者モデル候補をゴールモデル上に表示し、これらの表示した攻撃者モデル候補が必要であるか否かをユーザに選択させる。ユーザは、候補から選択した攻撃者モデルの悪意ゴールが達成されないように要素を追加し、セキュリティに関するゴールモデルを作成する。
Next, the security requirement
図2は、図1の動作概要において、セキュリティ要求分析支援装置10が攻撃者モデル候補群から、不要な攻撃者モデル候補を削除するとともに、攻撃者モデル候補における不要な部分の削除を行って新たな攻撃者モデル候補を作成し、ユーザに表示するときの処理概要について説明するための図である。セキュリティ要求分析支援装置10は、以下に示す(手順1)〜(手順6)のように動作する。
FIG. 2 shows an outline of the operation shown in FIG. 1, in which the security requirement
(手順1)まず、セキュリティ要求分析支援装置10は、攻撃DB40から、推定されたドメインに対応した攻撃者モデル(悪意ゴール木)の集合を全て読み出す。そして、読み出した攻撃者モデルを攻撃者モデル候補とし、これらの攻撃者モデル候補の集合である攻撃者モデル候補群を生成する。
(手順2)セキュリティ要求分析支援装置10は、(手順1)において生成した攻撃者モデル候補群から、未選択の攻撃者モデル候補を選択する。
(手順3)セキュリティ要求分析支援装置10は、(手順2)において選択した攻撃者モデルが、現在のゴールモデル内にある要素と重複や矛盾があるか判断する。
(手順4)(手順3)において、重複や矛盾があると判断した場合、攻撃者モデル候補を構成する悪意ゴール木におけるAND/ORの関係を考慮して、削除可能な要素を最大限に削除して新しい悪意ゴール木を作成し、新たな攻撃者モデル候補とする。
(Procedure 1) First, the security requirement
(Procedure 2) The security requirement
(Procedure 3) The security requirement
(Procedure 4) If it is determined in (Procedure 3) that there is duplication or contradiction, the deleteable elements are deleted as much as possible in consideration of the AND / OR relationship in the malicious goal tree constituting the attacker model candidate. Then, a new malicious goal tree is created and set as a new attacker model candidate.
例えば、図2において、攻撃者モデル候補に含まれる悪意ゴールG1は、サブゴールSG1及びSG2のAND、つまり、サブゴールSG1及びSG2の両者が成り立つときに達成される。ここで、サブゴールSG2を不可能ならしめるタスクT1がすでに現在のゴールモデル内に存在している場合、サブゴールSG2は達成されない。悪意ゴールG1は、サブゴールSG1及びSG2のAND条件により成り立っており、サブゴールSG1が達成されないとその上位のゴールG1も達成されないため、この攻撃者モデル候補自体が不要となる。
あるいは、攻撃者モデル候補の悪意ゴールG1が、サブゴールSG1とSG2のOR、つまり、サブゴールSG1またはSG2のどちらかが成り立つときに達成されるとする。ここで、サブゴールSG2を不可能ならしめるタスクT1がすでに現在のゴールモデル内に存在しているため、サブゴールSG2は達成されない。このときは、サブゴールSG2のみを削除した悪意ゴール木が新たな攻撃者モデル候補として生成される。
For example, in FIG. 2, the malicious goal G1 included in the attacker model candidate is achieved when the AND of the subgoals SG1 and SG2, that is, both the subgoals SG1 and SG2 hold. If the task T1 that makes the subgoal SG2 impossible is already present in the current goal model, the subgoal SG2 is not achieved. The malicious goal G1 is formed by the AND condition of the subgoals SG1 and SG2, and if the subgoal SG1 is not achieved, the higher-order goal G1 is not achieved, so that this attacker model candidate itself is not necessary.
Alternatively, it is assumed that the malicious goal G1 of the attacker model candidate is achieved when the OR of the subgoals SG1 and SG2, that is, one of the subgoals SG1 and SG2 holds. Here, since the task T1 that makes the subgoal SG2 impossible is already present in the current goal model, the subgoal SG2 is not achieved. At this time, a malicious goal tree in which only the subgoal SG2 is deleted is generated as a new attacker model candidate.
(手順5)セキュリティ要求分析支援装置10は、(手順4)にて作成した新たな攻撃者モデル候補をゴールモデル内に表示し、ユーザに必要か否かを選択させる。なお、悪意ゴール木自体が削除となった攻撃者モデル候補の場合には、何も表示せずに(手順6)へ進む。
(手順6)攻撃者モデル候補群内の全ての攻撃者モデル候補について(手順3)〜(手順5)を行った場合には処理を終了し、まだ(手順3)〜(手順5)を行っていない攻撃者モデル候補がある場合には、ふたたび(手順2)からの処理を行う。
(Procedure 5) The security requirement
(Procedure 6) When (Procedure 3) to (Procedure 5) are performed for all the attacker model candidates in the attacker model candidate group, the process ends, and (Procedure 3) to (Procedure 5) are still performed. If there is an attacker model candidate that has not been received, the processing from (procedure 2) is performed again.
図3は、同実施の形態によるセキュリティ要求分析支援装置10の機能ブロック図である。
同図において、セキュリティ要求分析支援装置10は、外部環境に設置された外部記憶装置20、共通用語DB30、攻撃DB40と接続される。外部記憶装置20、共通用語DB30、攻撃DB40は、例えば、ぞれぞれ、1または複数のサーバなどで構成することができる。外部記憶装置20は、ゴール指向要求分析により作成されたゴールモデルのデータを記述したゴールモデルファイルを保存する。共通用語DB30は、特定ドメインにおける定型語彙や、当該定型語彙の同義語、類義語などの情報を蓄積する。攻撃DB40は、ドメイン毎の攻撃者の典型的な攻撃パターンの悪意ゴール木、すなわち、攻撃者モデルを示す攻撃者モデルデータを保存する。
FIG. 3 is a functional block diagram of the security requirement
In FIG. 1, the security requirement
セキュリティ要求分析支援装置10は、ゴールモデルファイル入出力部11、ゴールモデル情報記憶部12、ゴールモデル情報制御部13、攻撃者モデル情報生成部14、DB入出力部15、ゴールモデル情報表示部16からなり、入力装置50を備える。
The security requirement
ゴールモデルファイル入出力部11は、外部記憶装置20に対し、ゴールモデルファイルの入出力を行う。ゴールモデル情報記憶部12は、ゴールモデルファイル入出力部11から入力したゴールモデルファイルであるゴールモデル情報を記憶するとともに、ゴールモデル情報制御部13により生成・編集したゴールモデル情報を記憶する。ゴールモデル情報制御部13は、ゴールモデル情報記憶部12内に記憶されているゴールモデル情報の読み込み、更新、および削除を行うとともに、攻撃者モデル情報生成部14と通信し、攻撃者モデルデータの入出力を行う。
The goal model file input /
攻撃者モデル情報生成部14は、ゴールモデル情報制御部13からゴールモデル情報の入力を受け、当該ゴールモデルを構成するノードの定義データに基づいてDB検索式を作成し、DB入出力部15へ出力するとともに、DB入出力部15から返送された結果を入力する。攻撃者モデル情報生成部14は、DB入出力部15から検索結果として返送された攻撃者モデルからなる攻撃者モデル候補群について、現在のゴールモデルとの矛盾・重複検証処理を行い、新たな攻撃者モデル候補群を生成してゴールモデル情報制御部13へ出力する。
The attacker model
DB入出力部15は、攻撃者モデル情報生成部14からDB検索式の入力を受けて共通用語DB30または攻撃DB40へ当該DB検索式を出力し、返送された検索結果の入力を受け、攻撃者モデル情報生成部14へ当該検索結果を出力する。ゴールモデル情報表示部16は、ゴールモデルや攻撃者モデルを外部の表示装置(ディスプレイなど)に表示する。また、入力装置50は、キーボードやマウスの操作などによりユーザから入力された情報をゴールモデル情報制御部13へ出力する。
The DB input /
図4は、図3に示す攻撃者モデル情報生成部14内の機能ブロック図を示す。
攻撃者モデル情報生成部14は、ゴールモデル情報入出力部14a、制御部14b、字句抽出部14c、攻撃モデル生成部14dを備える。
FIG. 4 shows a functional block diagram in the attacker model
The attacker model
制御部14bは、ゴールモデル情報入出力部14a、字句抽出部14c、攻撃モデル生成部14d、およびDB入出力部15とのデータの入出力の流れを制御する。ゴールモデル情報入出力部14aは、ゴールモデル情報制御部13から、ゴールモデル情報の入力を受けるとともに、攻撃モデル生成部14dにおいて生成された攻撃者モデル候補を制御部14bから読み込み、ゴールモデル情報制御部13へ出力する。字句抽出部14cは、制御部14bからゴールモデル情報の入力を受け、各要素(アクタ、ゴール、タスクなど)の名称を抽出するとともに、共通用語DB30への検索式を生成し、制御部14bへ出力する。攻撃モデル生成部14dは、制御部14bから現状のゴールモデル情報を入力し、それに対応した攻撃者モデルのデータをDB入出力部15から読み込む。また、攻撃モデル生成部14dは、現状のゴールモデルの情報と、攻撃者モデル候補の攻撃者モデルデータとを入力し、AND/OR関係を考慮して新たな候補木(新たな攻撃者モデル候補)に再構築する。
The
図5は、外部記憶装置20に記憶される情報を示す図である。
外部記憶装置20は、ゴールモデルファイルを記憶する。ゴールモデルファイルには、ゴールモデルのノードを構成する各要素の情報を示す要素データが含まれる。要素データには、要素を一意に特定する要素ID、当該要素がアクタ/ゴール/ソフトゴール/タスク/資源などのうちいずれであるかを示す要素種別、当該要素の名称などの説明を示す記述、アクタ領域、上位の要素を示す上位関連、下位の要素を示す下位関連、同時成立することが矛盾、あるいは、重複する要素などの情報が含まれる。同時成立することが矛盾、あるいは、重複する要素は、要素IDにより示すことができるが、本情報は設定されていなくともよい。
FIG. 5 is a diagram showing information stored in the
The
同図に示すゴールモデルの場合、外部記憶装置20は、複数のゴールモデルファイルを記憶しており、ゴールモデルファイルには、アクタ、ゴール、ソフトゴール、タスク、資源の要素データが含まれる。アクタの要素データには、アクタ名称「医療スタッフ」が設定されている。ゴールの要素データには、要素ID「ゴール1」、要素種別「ゴール」、記述「カルテの管理を容易にする」、下位関連「ゴール2とゴール3のAND」が設定されているもの、要素ID「ゴール2」、要素種別「ゴール」、記述「高速に検索する」、上位関連「ゴール1(ゴール2とゴール3のAND)」、下位関連「タスク1」が設定されているもの、要素ID「ゴール3」、要素種別「ゴール」、記述「高速に検索する」、上位関連「ゴール1(ゴール2とゴール3のAND)」、下位関連「タスク1」が設定されているものがある。タスクの要素データには、要素ID「タスク1」、要素種別「タスク」、記述「電子的に管理する」、上位関連「ゴール2、ゴール3、ソフトゴール」、下位関連「資源1、資源2」が設定されているものがある。ソフトゴールの要素データには、要素ID「ソフトゴール1」、要素種別「ソフトゴール」、記述「情報を漏洩しない」、下位関連「タスク1」が設定されているものがある。資源の要素データには、要素ID「資源1」、要素種別「資源」、記述「端末」、上位関連「タスク1」が設定されているもの、要素ID「資源2」、要素種別「資源」、記述「DB」、上位関連「タスク1」が設定されているものがある。
In the case of the goal model shown in the figure, the
図6は、セキュリティ要求分析支援装置10のゴールモデル情報記憶部12に記憶され、ゴールモデルファイル入出力部11によって外部記憶装置20へ出力されるゴールモデルファイルを示す図である。同図において、ゴールモデル情報記憶部12は、現在作業中のゴールモデルファイルを一時的に保持している。ここで保持されるゴールモデルファイルは、外部記憶装置20に記憶されるゴールモデルファイルと同じデータ構成である。
FIG. 6 is a diagram illustrating a goal model file stored in the goal model
図7は、共通用語DB30が保持する情報を示す図である。
同図において、共通用語DB30は、ドメイン名称と、当該ドメイン名称に対応する語句(語句名称)とを対応付けて記憶している。さらに、共通用語DB30は、同義の複数の語句を対応付けた情報を示す同義語データ、類似の意味を有する複数の語句を対応付けた情報を示す類義語データを記憶している。例えば、共通用語DB30には、ドメイン名称「医療ドメイン」には、語句名称「医者、患者、医療事務員、…」とが対応付けられて記憶される。また、同義語データには、「医療事務員=医療スタッフ、…」などの情報が含まれる。
FIG. 7 is a diagram illustrating information stored in the
In the figure, the
図8は、攻撃DB40が保持する情報を示す図である。
同図において、攻撃DB40は、ドメイン名称と、攻撃者モデルデータとを対応付けた情報を記憶する。攻撃者モデルデータには、攻撃者モデルデータを識別する攻撃ID、及び、攻撃者の名称の情報と、攻撃者のゴールである悪意ゴール(攻撃者要素)の要素データ、及び、ソフトゴール(攻撃者ソフトゴール)、タスク(攻撃者タスク)、資源(攻撃者資源)などのうち1以上の要素の要素データとが含まれる。さらに、攻撃DB40は、攻撃者モデルデータ内の要素データにより示される要素とは同時に成立することが矛盾、あるいは、重複する要素の要素データである同時成立不可要素データを保持する。
FIG. 8 is a diagram illustrating information stored in the
In the figure, the
図9は、攻撃者モデルデータに含まれる要素データと、同時成立が矛盾する要素データの具体例を示す。
同図に示す、攻撃者モデルの候補は、悪意ゴール「ゴール1」が、サブゴール「ゴール2」と「ゴール3」のANDに依存しており、サブゴール「ゴール3」は、サブゴール「ゴール4」と「ゴール5」のORに依存するものとする。また、サブゴール「ゴール3」は、タスク「タスク1」とは矛盾するため同時に存在できないものとする。
FIG. 9 shows a specific example of element data included in the attacker model data and element data in which simultaneous establishment is contradictory.
The attacker model candidate shown in the figure is that the malicious goal “goal 1” depends on the AND of the subgoals “goal 2” and “
このとき、悪意ゴールである「ゴール1」の要素データには、要素ID「G1」、要素種別「ゴール」、記述「ゴール1」、アクタ領域「悪意のある医療スタッフ」、上位関連「なし」、下位関連「ゴール1=AND(ゴール2,ゴール3)」、同時成立矛盾「なし」、同時成立重複「なし」が設定される。また、悪意ゴールのサブゴールである「ゴール3」の要素データには、要素ID「G3」、要素種別「ゴール」、記述「ゴール3」、アクタ領域「悪意のある医療スタッフ」、上位関連「ゴール1=AND(ゴール2,ゴール3)」、下位関連「ゴール3=OR(ゴール4,ゴール5)」、同時成立矛盾「T1」、同時成立重複「なし」が設定される。なお、「ゴール1=AND(ゴール2,ゴール3)」は、ゴール1が、ゴール2及びゴール3の両方が達成されたときに達成されることを、「ゴール3=OR(ゴール4,ゴール5)」は、ゴール3が、ゴール4またはゴール5のいずれかが達成されたときに達成されることを示す。
At this time, the element data of “Goal 1”, which is a malicious goal, includes an element ID “G1”, an element type “Goal”, a description “Goal 1”, an actor area “Malicious medical staff”, and an upper relationship “None”. Subordinate relation “goal 1 = AND (goal 2, goal 3)”, simultaneous establishment contradiction “none”, and simultaneous establishment duplication “none” are set. The element data of “
また、「ゴール3」の要素データに、同時成立矛盾するとして記述される要素ID「T1」により特定されるタスク1の同時成立不可要素データには、要素ID「T1」、要素種別「タスク」、記述「タスク1」、アクタ領域「悪意のある医療スタッフ」、上位関連「なし」、下位関連「なし」、同時成立矛盾「G3」、同時成立重複「なし」が設定されている。
さらに、同図においては、タスク1と実質的に同値の要素であるタスクt1が分析者により生成されたゴールモデルに含まれているものとする。ゴールモデル情報内のタスクt1の要素データには、要素ID「T999」、要素種別「タスク」、記述「タスクt1」、アクタ領域「悪意のある医療スタッフ」、上位関連「なし」、下位関連「なし」、同時成立矛盾「なし」、同時成立重複「なし」が設定されている。
In addition, in the element data of “
Further, in the figure, it is assumed that a task t1, which is an element substantially equivalent to task 1, is included in the goal model generated by the analyst. The element data of the task t1 in the goal model information includes an element ID “T999”, an element type “task”, a description “task t1”, an actor area “malicious medical staff”, an upper relation “none”, and a lower relation “ “None”, simultaneous establishment contradiction “none”, and simultaneous establishment duplication “none” are set.
次に、セキュリティ要求分析支援装置10の動作について説明する。
図10は、セキュリティ要求分析支援装置10の処理概要を示すフローチャートである。
まず、セキュリティ要求分析支援装置10のゴールモデルファイル入出力部11は、外部記憶装置20から編集対象のゴールモデルファイルを読み込む(ステップS110)。この編集対象のゴールモデルファイルは、例えば、入力装置50により入力されたファイル名により特定される。ゴールモデル情報記憶部12は、ゴールモデルファイル入出力部11が外部記憶装置20から読み出したゴールモデルファイルを、ゴールモデル情報として格納する(ステップS120)。
Next, the operation of the security requirement
FIG. 10 is a flowchart showing an outline of processing of the security request
First, the goal model file input /
続いて、攻撃者モデル情報生成部14が、ゴールモデル情報制御部13を介してゴールモデル情報記憶部12からゴールモデル情報の入力を受ける(ステップS130)。攻撃者モデル情報生成部14は、ゴールモデル情報内の各要素データの記述に含まれる用語から、ドメインを検索するための検索式を生成してDB入出力部15へ出力する(ステップS140)。DB入出力部15は、入力された当該検索式により共通用語DB30を検索した結果の入力を受ける(ステップS150)。攻撃者モデル情報生成部14は、DB入出力部15から、ステップS150におけるドメイン検索結果の入力を受ける。
Subsequently, the attacker model
続いて、ゴールモデル情報記憶部12は、ステップS150において受信した結果から、攻撃者モデル候補となる攻撃者モデルデータを検索するための検索式を生成してDB入出力部15へ出力する(ステップS160)。DB入出力部15は、入力された当該検索式により攻撃DB40を検索した結果を受信する(ステップS170)。攻撃者モデル情報生成部14は、DB入出力部15から、ステップS180における攻撃者モデル検索結果の入力を受ける。
Subsequently, the goal model
攻撃者モデル情報生成部14は、DB入出力部15から攻撃者モデルデータの検索結果の入力を受けると、これら攻撃者モデルデータを合わせて攻撃者モデル候補群とする(ステップS180)。攻撃者モデル情報生成部14により生成された攻撃者モデル候補群がゴールモデル情報制御部13に入力されると(ステップS190)、ゴールモデル情報制御部13は、入力された攻撃者モデル候補群内の攻撃者モデルデータで規定される攻撃者モデル候補をゴールモデル情報表示部16へ出力する。ゴールモデル情報表示部16は、攻撃者モデルデータが入力されると、当該データで示される攻撃者モデル候補を順に表示し、入力装置50により表示した攻撃者モデル候補の要/不要の情報の入力を受ける(ステップS200)。これにより、ゴールモデル情報制御部13は、要と入力された攻撃者モデル候補の攻撃者モデルデータを、現在のゴールモデル情報に追加してゴールモデル情報記憶部12に書き込む。
When the attacker model
攻撃者モデル候補群内のすべての攻撃者モデルデータについて要否が選択され、入力装置50により保存の指示が入力されると、ゴールモデルファイル入出力部11は、ゴールモデル情報記憶部12からゴールモデル情報の入力を受ける(ステップS210)。ゴールモデルファイル入出力部11は、入力されたゴールモデル情報が設定されたゴールモデルファイルを外部記憶装置20へ出力する(ステップS220)。外部記憶装置20は、ゴールモデルファイル入出力部11から入力されたゴールモデルファイルを記憶する。
When necessity is selected for all the attacker model data in the attacker model candidate group and a save instruction is input by the
図11は、セキュリティ要求分析支援装置10内の攻撃者モデル情報生成部14において実行される処理のフローチャートである。
攻撃者モデル情報生成部14のゴールモデル情報入出力部14aは、図10のステップS130において、ゴールモデル情報制御部13がゴールモデル情報記憶部12から読み出したゴールモデル情報の入力を受ける(ステップS310)。字句抽出部14cは、ステップS310において入力されたゴールモデル情報から、各要素の属性を抽出する。具体的には、字句抽出部14cは、ゴールモデル情報に含まれる各要素データから記述情報を読み出し、この記述情報に含まれる語句を抽出する(ステップS320)。例えば、図1のゴールモデルであれば、アクタの記述「医療事務員」、「医者」、「患者」、タスクの記述「カルテ」、「管理」などの語句が抽出される。
FIG. 11 is a flowchart of processing executed in the attacker model
The goal model information input /
字句抽出部14cは、抽出した語句の同義語を読み出すための検索式K1と、共通用語DB30内に登録されているドメイン名のうち、当該ドメイン名に対応して記憶されている語句の中に、抽出した語句、検索式K1により取得した同義語が含まれている数が最も多いものを読み出すための検索式K2を生成する。制御部14bは、字句抽出部14cが生成した検索式K1及びK2をDB入出力部15へ出力し、DB入出力部15が共通用語DB30から得た検索式K2による検索結果を受信する。制御部14bがDB入出力部15から受信した検索式K2の検索結果の情報を字句抽出部14cへ出力する(ステップS330)。
The
例えば、図1のゴールモデルであれば、検索式K1により、抽出した語句「医療事務員」に対応した「医療スタッフ」という同義語が読み出される。続いて、検索式K2により、全てのドメインの中から、「医療事務員」、「医者」、「患者」、「管理」、「医療スタッフ」のいずれかが、対応する語句に最も多く含まれるドメインを検索し、その結果、「医者」、「患者」、「医療スタッフ」という3つの語句が対応づけられている「医療ドメイン」が、検索結果として得られる。 For example, in the case of the goal model shown in FIG. 1, the synonym “medical staff” corresponding to the extracted phrase “medical clerk” is read out by the search formula K1. Subsequently, the search expression K2 includes the most frequently included words in any one of “medical clerk”, “doctor”, “patient”, “management”, and “medical staff” among all domains. A domain is searched, and as a result, a “medical domain” in which three phrases “doctor”, “patient”, and “medical staff” are associated is obtained as a search result.
字句抽出部14cは、入力された検索結果により示されるドメインに対応した攻撃者モデルデータを読み出すための検索式K3を生成する。制御部14bは、字句抽出部14cが生成した検索式K3をDB入出力部15へ出力し、DB入出力部15が共通用語DB30から得た検索式K3による検索結果を受信する。制御部14bは、DB入出力部15から受信した検索式K3の検索結果の情報を攻撃モデル生成部14dへ出力する(ステップS340)。
The
攻撃モデル生成部14dは、ステップS340において入力された検索式K3の検索結果により示される全ての攻撃者モデルデータの集合を攻撃者モデル候補群とする。そして、現在のゴールモデル情報と、攻撃者モデル候補群内の各攻撃者モデルデータとを参照して、冗長または重複する要素がある場合には、攻撃者モデルデータの示す攻撃者モデルの候補木を再構築するか、あるいは、攻撃者モデルデータ自体を削除する。攻撃モデル生成部14dは、冗長または重複する要素がなく、攻撃モデルの修正を行わなかった攻撃者モデルデータ、あるいは、冗長または重複する要素があったため、攻撃モデルを再構築した攻撃者モデルデータをゴールモデル情報制御部13に出力する(ステップS350、ステップS360:NO)。
The attack
ゴールモデル情報制御部13は、入力された攻撃者モデルデータで示される攻撃者モデル候補を表示するようゴールモデル情報表示部16へ指示する。なお、このとき、攻撃者モデルデータの各要素データで示されるアクタ領域に、当該要素データで示される要素が表示されるようにする。ゴールモデル情報制御部13は、ゴールモデル情報表示部16により表示されている攻撃者モデル候補の要/不要の情報の入力を受ける。そして、要が入力された攻撃者モデル候補の攻撃者モデルデータを、ゴールモデル情報としてゴールモデル情報記憶部12に書き込む。攻撃モデル生成部14dは、全ての攻撃者モデル候補群内に含まれる攻撃者モデルデータについて再構築が必要か否かを判断し終えたかを判断し、再構築が必要か否かの判定を全ての攻撃者モデルデータについて完了した場合、処理を終了する(ステップS360:YES)。
The goal model
図12は、図11のステップS350において実行される攻撃者モデル候補の候補木再構築処理のフローチャートである。
攻撃モデル生成部14dは、現在のゴールモデル内の各アクタに含まれる要素の全てについて、当該要素と同値の要素の要素データが、攻撃DB40内に登録さているか否かの情報を読み出す(ステップS410)。具体的には、まず、ゴールモデル情報の要素のうち、同時成立不可要素と同値の要素を特定する。つまり、攻撃モデル生成部14dは、ゴールモデル情報記憶部12内に記憶されているゴールモデル情報内の各要素データから記述データを読み出す。そして、読み出した記述データの示す語句の類義語を検索するための検索式K4を生成する。制御部14bは、攻撃モデル生成部14dが生成した検索式K4をDB入出力部15に出力する。制御部14bは、DB入出力部15が、検索式K4により共通用語DB30から取得した類義語検索結果の入力を受け、攻撃モデル生成部14dへ出力する。
FIG. 12 is a flowchart of candidate tree reconstruction processing for an attacker model candidate executed in step S350 of FIG.
The attack
攻撃モデル生成部14dは、類義語検索結果で示される類義語が記述データとして設定されている同時成立不可要素データを読み出すための検索式K5を生成する。制御部14bは、攻撃モデル生成部14dが生成した検索式K5をDB入出力部15に出力する。制御部14bは、DB入出力部15が、検索式K5により攻撃DB40から取得した同時成立不可要素データの検索結果の入力を受け、攻撃モデル生成部14dへ出力する。
このようにして、ゴールモデルに含まれている要素と同値の要素を示す同時成立不可要素データが得られると、当該同時成立不可要素データの同時成立矛盾、及び、同時成立重複から要素IDを読み出し、内部のメモリに保存する。
The attack
In this way, when element data that cannot be simultaneously established indicating an element having the same value as the element included in the goal model is obtained, the element ID is read from the simultaneous establishment contradiction and the simultaneous establishment overlap of the element that cannot be simultaneously established. Save to internal memory.
なお、図11において、ドメインに対応した攻撃者モデルデータを読み出すための検索式K3とともに、検索式K3により読み出された攻撃者モデルデータ内の同時成立矛盾、同時成立重複の情報で特定される同時成立不可要素データを読み出すための検索式K5’を攻撃DB40に出力するようにしてもよい。この場合、攻撃モデル生成部14dは、類義語検索結果で示される類義語が記述データに設定されている同時成立不可要素データを、検索式K5’の検索結果として得た同時成立不可要素データの中から特定すればよい。
In FIG. 11, the search formula K3 for reading the attacker model data corresponding to the domain and the information on simultaneous establishment contradiction and simultaneous establishment overlap in the attacker model data read by the search formula K3 are specified. You may make it output search formula K5 'for reading the element data which cannot be formed simultaneously to attack DB40. In this case, the attack
図9を例にした場合、既に作成されているゴールモデルに、記述「タスクt1」のタスク(要素ID「T999」)があるとする。このとき、ゴールモデル情報に含まれる要素データからは、記述「タスクt1」が読み出され、共通用語DB30からは、「タスクt1」の類義語「タスク1」を含んだ検索結果が読み出される。この類義語「タスク1」が記述に設定され、かつ、同じ要素種別「タスク」、アクタ領域「悪意のある医療スタッフ」である同時成立不可要素データ(要素ID「T1」)の要素が、「タスクt1」が記述に設定されたゴールモデルのタスク(要素ID「T999」)と同値であると判断される。この同値であると判断された同時成立不可要素データ(要素ID「T1」)から読み出された同時成立矛盾の要素ID「G3」が、攻撃モデル生成部14d内のメモリに保存される。
Taking FIG. 9 as an example, it is assumed that a task (element ID “T999”) with the description “task t1” is included in the already created goal model. At this time, the description “task t1” is read from the element data included in the goal model information, and the search result including the synonym “task 1” of “task t1” is read from the
次に、攻撃モデル生成部14dは、攻撃者モデルデータ内の要素データの中に、ステップS410においてメモリに保持した要素IDにより特定されるものがあるか否かを判断する(ステップS420)。そして、メモリに保持した要素IDにより特定される要素データがあった場合、当該要素データ内の上位関連情報から、該当するノードの上位関連を判断する(ステップS430)。
Next, the attack
ステップS430において、上位関係が「なし」、または、「OR」であると判断した場合、当該要素が該当するノードの下位階層の全てのノード、および、自ノードを削除した形状の攻撃者モデルを表す攻撃者モデルデータを生成する(ステップS440)。具体的には、攻撃者モデルデータ内の要素データから、当該要素データを削除し、この削除した要素データ内の下位関連情報に要素IDが記述されていた場合には、当該要素IDにより特定される全ての要素データを削除し、さらに、この削除した要素データ内の下位関連情報に要素IDが記述されていた場合には、当該要素IDにより特定される全ての要素データを削除することを繰り返す。 If it is determined in step S430 that the upper relationship is “none” or “OR”, all the nodes in the lower hierarchy of the node corresponding to the element and the attacker model having the shape in which the own node is deleted are displayed. The attacker model data to be represented is generated (step S440). Specifically, when the element data is deleted from the element data in the attacker model data, and the element ID is described in the lower related information in the deleted element data, it is specified by the element ID. If the element ID is described in the lower related information in the deleted element data, the process repeatedly deletes all the element data specified by the element ID. .
一方、ステップS430において、上位関係が「AND」であると判断した場合、当該要素が該当するノードの親ノード、当該要素が該当するノードと同階層の全てのノード、当該要素が該当するノードの下位階層の全てのノード、および、自ノードを削除した形状の攻撃者モデルを表す攻撃者モデルデータを生成する(ステップS450)。具体的には、攻撃者モデルデータ内の要素データから、当該要素データを削除するとともに、この削除した要素データの上位関連情報に記述されている上位及び同階層の要素の要素IDにより特定される要素データを全て削除する。さらに、この削除した要素データ内の下位関連情報に要素IDが記述されていた場合には、当該要素IDにより特定される全ての要素データを削除し、さらに、この削除した要素データ内の下位関連情報に要素IDが記述されていた場合には、当該要素IDにより特定される全ての要素データを削除することを、下位関連情報が「なし」となるまで繰り返す。 On the other hand, if it is determined in step S430 that the upper relationship is “AND”, the parent node of the node to which the element corresponds, all the nodes in the same hierarchy as the node to which the element corresponds, and the node to which the element corresponds to All the nodes in the lower hierarchy and the attacker model data representing the attacker model having the shape in which the own node is deleted are generated (step S450). Specifically, the element data is deleted from the element data in the attacker model data, and specified by the element IDs of the upper and lower elements described in the upper related information of the deleted element data. Delete all element data. Further, when the element ID is described in the lower-level related information in the deleted element data, all the element data specified by the element ID are deleted, and further, the lower-level related information in the deleted element data is deleted. When the element ID is described in the information, the deletion of all the element data specified by the element ID is repeated until the lower related information becomes “none”.
攻撃モデル生成部14dは、ステップS440またはステップS450において再構築した攻撃者モデルを示す攻撃者モデルデータをゴールモデル情報制御部13に出力する(ステップS460)。ゴールモデル情報制御部13は、入力した攻撃者モデルデータにより示される、攻撃者モデルを候補としてゴールモデル情報表示部16に表示させる。
The attack
なお、攻撃者モデルデータの選択が終了した後、再び、ゴールモデルが編集されてノードが追加された場合、そのノードが追加されたタイミング、あるいは、ノード追加後に、攻撃者モデルデータ更新指示が入力されたタイミングで、新たに追加されたノードの要素データについて、再び、図12のステップS410と同様の手順により、同値の同時成立不可要素データを特定する。そして、ゴールモデル情報記憶部12内に記憶されている、すなわち、ユーザに一旦選択された攻撃者モデルデータについて、図11と同様の手順により、新たに追加されたノードの要素と同値の要素を示す同時成立不可要素データとの同時成立性を確認する。そして、同時成立しない要素を削除したときに悪意ゴールが達成されない場合には、当該攻撃者モデルデータをゴールモデル情報記憶部12から削除するとともに、ゴールモデル情報表示部16が表示するゴールモデルから当該攻撃者モデルデータの表示を消去する。また、同時成立しない要素を削除したときにも悪意ゴールが達成される場合は、当該要素を削除するとともに、当該要素を削除した場合に成立しない要素を削除して再構築を行った攻撃者モデルのデータを作成して、ゴールモデル情報記憶部12内の現在の攻撃者モデルデータと置き換えるとともに、ゴールモデル情報表示部16に、置き換え前の攻撃者モデルデータに基づいて表示されている現在の攻撃モデルの表示を、置き換え後の攻撃者モデルデータの示す新たなゴールモデルの表示に変更するよう指示することにより、削除した要素の表示を消去する。これにより、新たに追加されたノードについても、矛盾、冗長な攻撃者モデルデータの要素を削除することができる。
In addition, after the selection of the attacker model data is completed, if the goal model is edited again and a node is added, the attacker model data update instruction is input when the node is added or after the node is added. At the same timing, the element data of the newly added node is identified again by the same procedure as in step S410 in FIG. Then, for the attacker model data stored in the goal model
上記実施の形態によれば、セキュリティ要求分析において、考慮を忘れやすい攻撃を発見できる可能性が高まるという効果がある。また、その際、不必要な分析は除去されるため、分析効率が高まる。また、ゴールモデルの作成過程で、要素の重複や矛盾を検証することもできる。これらの結果、セキュリティに関する要求分析の信頼性(網羅性や妥当性)が高まり、初心者であっても、容易にセキュリティ要求分析を行うことを支援することができる。また、処理コストを低減することも可能である。 According to the above-described embodiment, there is an effect that in the security requirement analysis, there is an increased possibility that an attack that is easily forgotten can be found. At this time, unnecessary analysis is removed, so that analysis efficiency is increased. In addition, duplication and contradiction of elements can be verified in the goal model creation process. As a result, the reliability (coverage and validity) of security-related requirements analysis is enhanced, and even a novice can easily support security requirements analysis. In addition, the processing cost can be reduced.
なお、上述のセキュリティ要求分析支援装置10、外部記憶装置20、共通用語DB30、攻撃DB40は、内部にコンピュータシステムを有している。そして、セキュリティ要求分析支援装置10の、外部記憶装置20、共通用語DB30、攻撃DB40の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、CPU及び各種メモリやOS、周辺機器等のハードウェアを含むものである。
The security requirement
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW system is used.
The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Furthermore, the “computer-readable recording medium” dynamically holds a program for a short time like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. In this case, a volatile memory in a computer system serving as a server or a client in that case, and a program that holds a program for a certain period of time are also included. The program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.
10…セキュリティ要求分析支援装置
11…ゴールモデルファイル入出力部
12…ゴールモデル情報記憶部
13…ゴールモデル情報制御部
14…攻撃者モデル情報生成部
14a…ゴールモデル情報入出力部
14b…制御部
14c…字句抽出部
14d…攻撃モデル生成部
15…DB入出力部
16…ゴールモデル情報表示部
20…外部記憶装置
30…共通用語DB
40…攻撃DB
50…入力装置
DESCRIPTION OF
40 ... Attack DB
50 ... Input device
Claims (5)
ゴールモデルを構成する要素と、当該要素間の依存関係との情報を示すゴールモデルデータを記憶するゴールモデル情報記憶部と、
悪意のある攻撃者が目標とするゴールである悪意ゴールを達成するための要素、及び、当該要素間の依存関係により示される攻撃者モデルと、矛盾または重複のため当該攻撃者モデルを構成する要素とは同時成立しない要素との情報からなる攻撃者モデルデータをドメインに対応させて記憶する攻撃データベースと、
前記ゴールモデルが属するドメインの情報に対応した攻撃者モデルデータを前記攻撃データベースから読み出すデータベース入出力部と、
前記データベース入出力部が読み出した攻撃者モデルデータの示す同時成立しない要素の情報と、前記ゴールモデル情報記憶部内のゴールモデルデータの示す要素の情報とに基づいて、当該攻撃者モデルデータの中から、当該ゴールモデルデータの示す要素とは同時成立しない要素が含まれている攻撃者モデルデータを特定し、さらに、特定した攻撃者モデルデータの示す要素と、当該要素間の依存関係との情報から、同時成立しない前記要素を削除したときに悪意ゴールが達成されるか否かを判断し、同時成立しない前記要素を削除したときにも悪意ゴールが達成される場合は、当該攻撃者モデルデータを、当該攻撃者モデルデータの示す攻撃者モデルから同時成立しない当該要素を削除するとともに、当該要素を削除した場合に成立しない要素を削除した新たな攻撃者モデルを示すよう変更する攻撃者モデル情報生成部と、
前記攻撃者モデル情報生成部により、前記ゴールモデルデータの示す要素と同時成立しない要素が含まれていないと判断された前記攻撃者モデルデータ、及び、変更された攻撃者モデルデータの示す攻撃者モデルを表示するよう指示するゴールモデル情報制御部と、
を備えることを特徴とするセキュリティ要求分析支援装置。 By presenting a candidate model of an attacker that threatens security to a goal model that includes the goal to be achieved by the development system and the goal or task to achieve the goal, or one or more of the resources as elements. A security requirement analysis support device for supporting security analysis,
A goal model information storage unit that stores goal model data indicating information on the elements constituting the goal model and the dependencies between the elements;
Elements that achieve the malicious goal, which is the goal that the malicious attacker is aiming for, and the attacker model indicated by the dependency between the elements, and the elements that make up the attacker model due to contradiction or duplication An attack database that stores attacker model data consisting of information on elements that are not simultaneously established in association with a domain,
A database input / output unit that reads attacker model data corresponding to information of a domain to which the goal model belongs, from the attack database;
Based on the information on the non-concurrent elements indicated by the attacker model data read by the database input / output unit and the information on the elements indicated by the goal model data in the goal model information storage unit, from among the attacker model data The attacker model data that includes an element that does not hold simultaneously with the element indicated by the goal model data is identified, and further, from the information of the element indicated by the identified attacker model data and the dependency relationship between the elements. Determining whether the malicious goal is achieved when the elements that are not simultaneously established are deleted, and if the malicious goal is achieved even when the elements that are not simultaneously established are deleted, the attacker model data is The element that is not simultaneously established from the attacker model indicated by the attacker model data is deleted and the element is not established. And attacker model information generating unit that changes to indicate a new attacker model removing an element,
The attacker model information determined by the attacker model information generation unit as not including elements that are not simultaneously established with the elements indicated by the goal model data, and the attacker models indicated by the changed attacker model data A goal model information control unit that instructs to display
A security requirement analysis support apparatus comprising:
前記ゴールモデルデータ内の要素の情報は、要素の説明を示す記述の情報を含み、
前記攻撃者モデル情報生成部は、前記ゴールモデル情報記憶部内のゴールモデルデータにより示される要素の情報から、当該要素の記述に使用されている語句を抽出し、
前記データベース入出力部は、前記ゴールモデルが属するドメインとして、前記攻撃者モデル情報生成部により抽出された語句、及び、当該抽出された語句の類似語が対応付けられているドメインを前記共通用語データベースから読み出す、
ことを特徴とする請求項1に記載のセキュリティ要求分析支援装置。 A common term database that stores information on words corresponding to the domain and similar words of the words;
The element information in the goal model data includes descriptive information indicating an explanation of the element,
The attacker model information generation unit extracts a phrase used in the description of the element from information on the element indicated by the goal model data in the goal model information storage unit,
The database input / output unit assigns, as the domain to which the goal model belongs, a domain in which words extracted by the attacker model information generation unit and similar words of the extracted words are associated with the common term database Read from the
The security requirement analysis support device according to claim 1, wherein:
前記攻撃者モデルに含まれる要素と同時成立しない要素の記述に含まれる語句の同義語を記憶する共通用語データベースをさらに備え、
前記データベース入出力部は、前記ゴールモデル情報記憶部内のゴールモデルデータにより示される要素の記述に使用されている語句の同義語の情報を前記共通用語データベースから読み出すとともに、前記同時成立不可要素データを前記攻撃データベースから読み出し、
前記攻撃者モデル情報生成部は、前記データベース入出力部が読み出した同義語の情報と同時成立不可要素データの入力を受け、当該同時成立不可要素データのうち、前記同義語が記述に含まれる同時成立不可要素データを特定し、前記攻撃者モデル候補群の中から、この特定した同時成立不可要素により示される同時成立しない要素のデータが含まれている攻撃者モデルデータを、前記ゴールモデルデータにより示される要素とは同時に成立しない要素が含まれている攻撃者モデルデータであると判断する、
ことを特徴とする請求項1に記載のセキュリティ要求分析支援装置。 The attack database further stores element data that cannot be simultaneously formed including at least information of a description indicating an element that is not simultaneously formed with an element included in the attacker model;
Further comprising a common term database for storing synonyms of words included in the description of elements that are not simultaneously established with elements included in the attacker model,
The database input / output unit reads from the common term database information on synonyms of words and phrases used in the description of the element indicated by the goal model data in the goal model information storage unit, and the element data that cannot be simultaneously established. Read from the attack database,
The attacker model information generation unit receives the synonym information read by the database input / output unit and the element data that cannot be simultaneously established, and the synonym is included in the description of the element data that cannot be simultaneously established. Unsuccessful element data is identified, and from the attacker model candidate group, the attacker model data including the data of the elements that are not simultaneously represented as indicated by the identified simultaneously unsatisfiable element is represented by the goal model data. Judge that it is attacker model data that contains elements that do not hold simultaneously with the elements shown.
The security requirement analysis support device according to claim 1, wherein:
前記攻撃者モデル情報生成部は、前記ゴールモデルに要素が追加された場合、前記ゴールモデル情報記憶部内に記憶されている前記攻撃者モデルデータの示す同時成立しない要素の情報に基づいて、新たに追加された要素と同時成立しない要素のデータが含まれている攻撃者モデルデータを特定し、さらに、特定した攻撃者モデルデータの示す要素と、当該要素間の依存関係との情報から、同時成立しない前記要素を削除したときに悪意ゴールが達成されるか否かを判断し、悪意ゴールが達成されない場合には、当該攻撃者モデルデータを前記ゴールモデル情報記憶部から削除し、同時成立しない前記要素を削除したときにも悪意ゴールが達成される場合は、特定した攻撃者モデルデータを、当該攻撃者モデルデータの示す攻撃者モデルから同時成立しない当該要素を削除するとともに、当該要素を削除した場合に成立しない要素を削除した新たな攻撃者モデルを示すよう変更し、
前記ゴールモデル情報制御部は、前記攻撃者モデル情報生成部により削除された攻撃者モデルデータの示す攻撃者モデルを表示から消去するとともに、変更前の攻撃者モデルの表示を変更された前記攻撃者モデルデータの示す新たな攻撃者モデルの表示に変更するよう指示する、
ことを特徴とする請求項1に記載のセキュリティ要求分析支援装置。 The goal model information storage unit stores information on the attacker model data selected by the user from the attacker model data whose output is instructed by the goal model information control unit,
When an element is added to the goal model, the attacker model information generation unit is newly based on information on the elements that are not simultaneously established indicated by the attacker model data stored in the goal model information storage unit. Identifies attacker model data that contains data of elements that are not established at the same time as the added elements, and establishes them simultaneously from the information indicated by the identified attacker model data and the dependency between the elements. It is determined whether or not a malicious goal is achieved when the element is deleted, and if the malicious goal is not achieved, the attacker model data is deleted from the goal model information storage unit and not simultaneously established If the malicious goal is achieved even when the element is deleted, the identified attacker model data is extracted from the attacker model indicated by the attacker model data. Deletes the established non relevant elements when changes to indicate a new attacker model removing an element that does not hold when deleting the element,
The goal model information control unit erases the attacker model indicated by the attacker model data deleted by the attacker model information generation unit from the display and changes the display of the attacker model before the change. Instruct to change to the display of the new attacker model indicated by the model data.
The security requirement analysis support device according to claim 1, wherein:
ゴールモデルを構成する要素と、当該要素間の依存関係との情報を示すゴールモデルデータを記憶するゴールモデル情報記憶部、
悪意のある攻撃者が目標とするゴールである悪意ゴールを達成するための要素、及び、当該要素間の依存関係により示される攻撃者モデルと、矛盾または重複のため当該攻撃者モデルを構成する要素とは同時成立しない要素との情報からなる攻撃者モデルデータをドメインに対応させて記憶する攻撃データベース、
前記ゴールモデルが属するドメインの情報に対応した攻撃者モデルデータを前記攻撃データベースから読み出すデータベース入出力部、
前記データベース入出力部が読み出した攻撃者モデルデータの示す同時成立しない要素の情報と、前記ゴールモデル情報記憶部内のゴールモデルデータの示す要素の情報とに基づいて、当該攻撃者モデルデータの中から、当該ゴールモデルデータの示す要素とは同時成立しない要素が含まれている攻撃者モデルデータを特定し、さらに、特定した攻撃者モデルデータの示す要素と、当該要素間の依存関係との情報から、同時成立しない前記要素を削除したときに悪意ゴールが達成されるか否かを判断し、同時成立しない前記要素を削除したときにも悪意ゴールが達成される場合は、当該攻撃者モデルデータを、当該攻撃者モデルデータの示す攻撃者モデルから同時成立しない当該要素を削除するとともに、当該要素を削除した場合に成立しない要素を削除した新たな攻撃者モデルを示すよう変更する攻撃者モデル情報生成部、
前記攻撃者モデル情報生成部により、前記ゴールモデルデータの示す要素と同時成立しない要素が含まれていないと判断された前記攻撃者モデルデータ、及び、変更された攻撃者モデルデータの示す攻撃者モデルを表示するよう指示するゴールモデル情報制御部、
として機能させることを特徴とするコンピュータプログラム。 By presenting a candidate model of an attacker that threatens security to a goal model that includes the goal to be achieved by the development system and the goal or task to achieve the goal, or one or more of the resources as elements. A computer used as a security requirement analysis support device for supporting security analysis,
A goal model information storage unit for storing goal model data indicating information on elements constituting the goal model and dependencies between the elements;
Elements that achieve the malicious goal, which is the goal that the malicious attacker is aiming for, and the attacker model indicated by the dependency between the elements, and the elements that make up the attacker model due to contradiction or duplication An attack database that stores attacker model data consisting of information about elements that do not hold simultaneously with the domain,
A database input / output unit for reading attacker model data corresponding to information of a domain to which the goal model belongs, from the attack database;
Based on the information on the non-concurrent elements indicated by the attacker model data read by the database input / output unit and the information on the elements indicated by the goal model data in the goal model information storage unit, from among the attacker model data The attacker model data that includes an element that does not hold simultaneously with the element indicated by the goal model data is identified, and further, from the information of the element indicated by the identified attacker model data and the dependency relationship between the elements. Determining whether the malicious goal is achieved when the elements that are not simultaneously established are deleted, and if the malicious goal is achieved even when the elements that are not simultaneously established are deleted, the attacker model data is The element that is not simultaneously established from the attacker model indicated by the attacker model data is deleted and the element is not established. An attacker model information generating unit that changes to indicate a new attacker model removing an element,
The attacker model information determined by the attacker model information generation unit as not including elements that are not simultaneously established with the elements indicated by the goal model data, and the attacker models indicated by the changed attacker model data Goal model information control unit that instructs to display
A computer program that functions as a computer program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007091242A JP4954767B2 (en) | 2007-03-30 | 2007-03-30 | Security requirement analysis support apparatus and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007091242A JP4954767B2 (en) | 2007-03-30 | 2007-03-30 | Security requirement analysis support apparatus and computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008250680A true JP2008250680A (en) | 2008-10-16 |
JP4954767B2 JP4954767B2 (en) | 2012-06-20 |
Family
ID=39975551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007091242A Expired - Fee Related JP4954767B2 (en) | 2007-03-30 | 2007-03-30 | Security requirement analysis support apparatus and computer program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4954767B2 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004220459A (en) * | 2003-01-17 | 2004-08-05 | Hitachi Ltd | Security design support device |
JP2006350708A (en) * | 2005-06-16 | 2006-12-28 | Hitachi Ltd | Security design support method and support device |
-
2007
- 2007-03-30 JP JP2007091242A patent/JP4954767B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004220459A (en) * | 2003-01-17 | 2004-08-05 | Hitachi Ltd | Security design support device |
JP2006350708A (en) * | 2005-06-16 | 2006-12-28 | Hitachi Ltd | Security design support method and support device |
Also Published As
Publication number | Publication date |
---|---|
JP4954767B2 (en) | 2012-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10346485B1 (en) | Semi structured question answering system | |
Missier et al. | Provenance and data differencing for workflow reproducibility analysis | |
CN101165688B (en) | Temporal association method and system between assets in a knowledge system | |
US20120131387A1 (en) | Managing automated and manual application testing | |
JP5487180B2 (en) | Test case generation program and test case generation apparatus | |
Nguyen et al. | Generating and selecting resilient and maintainable locators for Web automated testing | |
Gransden et al. | SEPIA: search for proofs using inferred automata | |
Molka et al. | Conformance checking for BPMN-based process models | |
She et al. | Pitfalls in language models for code intelligence: A taxonomy and survey | |
Rios et al. | A unifying framework for the systematic analysis of git workflows | |
JP4954767B2 (en) | Security requirement analysis support apparatus and computer program | |
JP5017349B2 (en) | Specification information management apparatus and specification information management program | |
Risch et al. | Measuring and facilitating data repeatability in web science | |
US20170103359A1 (en) | Identifying and assigning microtasks | |
CN106776296A (en) | Startup method, device and starting device that coverage rate is detected | |
Bosu | Modeling modern code review practices in open source software development organizations | |
JP2008234409A (en) | Security threat analysis support system, method therefor, and security threat analysis support program | |
JP2009140362A (en) | Security level evaluation device and security level evaluation program | |
Treder et al. | Data Quality | |
JP4874670B2 (en) | Policy management apparatus, policy management program, and policy management method | |
CN110175045A (en) | Android application program beats again bag data processing method and processing device | |
Emi et al. | Technical Report on the Checkfor. ai AI-Generated Text Classifier | |
JP7513125B2 (en) | Training data generation system, method, program, model generation system, and log generation system | |
JPWO2019176011A1 (en) | Search text utilization device and search text utilization method | |
Akbar | PORTRAIT OF CONTEXTUAL TAFSIR IN INDONESIA: A STUDY OF SYSTEMATIC LITERATURE REVIEW |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100318 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120222 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120306 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120314 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4954767 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150323 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |