JP2008250680A - Security requirement analysis support device and computer program - Google Patents

Security requirement analysis support device and computer program Download PDF

Info

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
Application number
JP2007091242A
Other languages
Japanese (ja)
Other versions
JP4954767B2 (en
Inventor
Hiroaki Oguro
博昭 小黒
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.)
NTT Data Group Corp
Original Assignee
NTT Data 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 NTT Data Corp filed Critical NTT Data Corp
Priority to JP2007091242A priority Critical patent/JP4954767B2/en
Publication of JP2008250680A publication Critical patent/JP2008250680A/en
Application granted granted Critical
Publication of JP4954767B2 publication Critical patent/JP4954767B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To perform support such that even a nonexpert can efficiently perform security analysis of a level equivalent to an expert at low cost when creating a system requirement definition considering security. <P>SOLUTION: Information wherein a domain and a related term are associated and information of a term equivalent to the term related to the domain are held inside a common term DB, and it is analogized that the domain having the most number of the terms included in each element that is a node of a goal model or the most number of the included terms equivalent to the term is the domain to which the goal model belongs. When reading an attacker model corresponding to the analogized domain from an attack DB, an unnecessary attacker model candidate is deleted in reference to a task already described inside the presently creating goal model, an attacker model candidate wherein an unnecessary model portion is deleted from the attacker model candidate is created and displayed, and a user is made to select whether it is necessary or not. <P>COPYRIGHT: (C)2009,JPO&INPIT

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参照)。
特開2004−220459号公報 Liu他,“Security and Privacy Requirements Analysis within a Social Setting”,11th IEEE International Conference on Requirements Engineering (RE’03),2003年,pp.151-161
On the other hand, when creating a new specification, there is a security design support device that can improve the efficiency of the entire editing work by using a pre-database that stores existing specification examples (for example, Patent Document 1). reference).
JP 2004-220459 A Liu et al., “Security and Privacy Requirements Analysis within a Social Setting”, 11th IEEE International Conference on Requirements Engineering (RE'03), 2003, pp.151-161.

非特許文献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)回の比較を行わなければならない。また、集合の包含関係という単純な判断基準しか持たないため、類推結果の信頼性が低いという問題がある。 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 analysis support apparatus 10 according to an embodiment of the present invention.
First, the security requirement analysis support device 10 analyzes the analysis diagram of the goal-oriented requirement analysis created by the analyst, that is, the phrase used in the goal model and the relationship between the phrase and the domain, and analyzes it now. Estimate the target domain. That is, the common term database 30 (hereinafter referred to as “DB”) holds information in which a domain and a phrase related to the domain are associated with each other and information on synonyms of the phrase related to the domain. Keep it. Then, the domain having the largest number of words and phrases that are included in each element that is a node of the goal model and the synonyms of the words is analogized as the domain to which the goal model currently being created belongs.

次に、セキュリティ要求分析支援装置10は、ドメインごとに想定される攻撃者・悪意ゴール・脆弱性・攻撃手法に関する情報を蓄積した攻撃DB40から、類推されたドメインに対応する攻撃者モデルを読み出して、これを攻撃者モデル候補とする。また、これらの攻撃者モデル候補を全て合わせて攻撃者モデル候補群とする。セキュリティ要求分析支援装置10は、現在作成しているゴールモデル内にすでに記述されているタスクを参照して、矛盾や重複のため、不要な攻撃者モデル候補を削除するとともに、攻撃者モデル候補から不要なモデル部分を削除した、新たな攻撃者モデル候補を作成して、現在の攻撃者モデル候補と置き換え、新たな攻撃者モデル候補群を作成する。セキュリティ要求分析支援装置10は、新たに作成した攻撃者モデル候補群に含まれる攻撃者モデル候補をゴールモデル上に表示し、これらの表示した攻撃者モデル候補が必要であるか否かをユーザに選択させる。ユーザは、候補から選択した攻撃者モデルの悪意ゴールが達成されないように要素を追加し、セキュリティに関するゴールモデルを作成する。   Next, the security requirement analysis support apparatus 10 reads out an attacker model corresponding to the analogized domain from the attack DB 40 in which information related to the attacker / malicious goal / vulnerability / attack method assumed for each domain is accumulated. This is the attacker model candidate. Also, all these attacker model candidates are combined into an attacker model candidate group. The security requirement analysis support device 10 refers to a task already described in the currently created goal model, deletes an unnecessary attacker model candidate due to contradiction or duplication, and removes from the attacker model candidate. A new attacker model candidate from which unnecessary model portions are deleted is created, replaced with the current attacker model candidate, and a new attacker model candidate group is created. The security requirement analysis support device 10 displays the attacker model candidates included in the newly created attacker model candidate group on the goal model, and informs the user whether or not these displayed attacker model candidates are necessary. Let them choose. The user adds an element so that the malicious goal of the attacker model selected from the candidates is not achieved, and creates a goal model related to security.

図2は、図1の動作概要において、セキュリティ要求分析支援装置10が攻撃者モデル候補群から、不要な攻撃者モデル候補を削除するとともに、攻撃者モデル候補における不要な部分の削除を行って新たな攻撃者モデル候補を作成し、ユーザに表示するときの処理概要について説明するための図である。セキュリティ要求分析支援装置10は、以下に示す(手順1)〜(手順6)のように動作する。   FIG. 2 shows an outline of the operation shown in FIG. 1, in which the security requirement analysis support device 10 deletes unnecessary attacker model candidates from the attacker model candidate group and deletes unnecessary portions from the attacker model candidates. It is a figure for demonstrating the process outline | summary at the time of creating a simple attacker model candidate and displaying it to a user. The security request analysis support device 10 operates as shown in (Procedure 1) to (Procedure 6) below.

(手順1)まず、セキュリティ要求分析支援装置10は、攻撃DB40から、推定されたドメインに対応した攻撃者モデル(悪意ゴール木)の集合を全て読み出す。そして、読み出した攻撃者モデルを攻撃者モデル候補とし、これらの攻撃者モデル候補の集合である攻撃者モデル候補群を生成する。
(手順2)セキュリティ要求分析支援装置10は、(手順1)において生成した攻撃者モデル候補群から、未選択の攻撃者モデル候補を選択する。
(手順3)セキュリティ要求分析支援装置10は、(手順2)において選択した攻撃者モデルが、現在のゴールモデル内にある要素と重複や矛盾があるか判断する。
(手順4)(手順3)において、重複や矛盾があると判断した場合、攻撃者モデル候補を構成する悪意ゴール木におけるAND/ORの関係を考慮して、削除可能な要素を最大限に削除して新しい悪意ゴール木を作成し、新たな攻撃者モデル候補とする。
(Procedure 1) First, the security requirement analysis support device 10 reads all sets of attacker models (malicious goal trees) corresponding to the estimated domains from the attack DB 40. Then, the read attacker model is set as an attacker model candidate, and an attacker model candidate group that is a set of these attacker model candidates is generated.
(Procedure 2) The security requirement analysis support apparatus 10 selects an unselected attacker model candidate from the attacker model candidate group generated in (Procedure 1).
(Procedure 3) The security requirement analysis support apparatus 10 determines whether the attacker model selected in (Procedure 2) overlaps or contradicts the elements in the current goal model.
(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 analysis support apparatus 10 displays the new attacker model candidate created in (Procedure 4) in the goal model, and allows the user to select whether or not it is necessary. In the case of an attacker model candidate whose malicious goal tree itself is deleted, nothing is displayed and the process proceeds to (Procedure 6).
(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 analysis support apparatus 10 according to the embodiment.
In FIG. 1, the security requirement analysis support device 10 is connected to an external storage device 20, a common term DB 30, and an attack DB 40 installed in an external environment. The external storage device 20, the common term DB 30, and the attack DB 40 can each be configured with one or a plurality of servers, for example. The external storage device 20 stores a goal model file that describes goal model data created by goal-oriented requirement analysis. The common term DB 30 stores information such as fixed vocabulary in a specific domain, synonyms and synonyms of the fixed vocabulary. The attack DB 40 stores a malicious goal tree of a typical attack pattern of an attacker for each domain, that is, attacker model data indicating an attacker model.

セキュリティ要求分析支援装置10は、ゴールモデルファイル入出力部11、ゴールモデル情報記憶部12、ゴールモデル情報制御部13、攻撃者モデル情報生成部14、DB入出力部15、ゴールモデル情報表示部16からなり、入力装置50を備える。   The security requirement analysis support apparatus 10 includes a goal model file input / output unit 11, a goal model information storage unit 12, a goal model information control unit 13, an attacker model information generation unit 14, a DB input / output unit 15, and a goal model information display unit 16. The input device 50 is provided.

ゴールモデルファイル入出力部11は、外部記憶装置20に対し、ゴールモデルファイルの入出力を行う。ゴールモデル情報記憶部12は、ゴールモデルファイル入出力部11から入力したゴールモデルファイルであるゴールモデル情報を記憶するとともに、ゴールモデル情報制御部13により生成・編集したゴールモデル情報を記憶する。ゴールモデル情報制御部13は、ゴールモデル情報記憶部12内に記憶されているゴールモデル情報の読み込み、更新、および削除を行うとともに、攻撃者モデル情報生成部14と通信し、攻撃者モデルデータの入出力を行う。   The goal model file input / output unit 11 inputs / outputs a goal model file to / from the external storage device 20. The goal model information storage unit 12 stores goal model information that is a goal model file input from the goal model file input / output unit 11 and stores goal model information generated and edited by the goal model information control unit 13. The goal model information control unit 13 reads, updates, and deletes the goal model information stored in the goal model information storage unit 12 and communicates with the attacker model information generation unit 14 to store the attacker model data. Perform input / output.

攻撃者モデル情報生成部14は、ゴールモデル情報制御部13からゴールモデル情報の入力を受け、当該ゴールモデルを構成するノードの定義データに基づいてDB検索式を作成し、DB入出力部15へ出力するとともに、DB入出力部15から返送された結果を入力する。攻撃者モデル情報生成部14は、DB入出力部15から検索結果として返送された攻撃者モデルからなる攻撃者モデル候補群について、現在のゴールモデルとの矛盾・重複検証処理を行い、新たな攻撃者モデル候補群を生成してゴールモデル情報制御部13へ出力する。   The attacker model information generation unit 14 receives the input of the goal model information from the goal model information control unit 13, creates a DB search formula based on the definition data of the nodes constituting the goal model, and sends it to the DB input / output unit 15. In addition to outputting, the result returned from the DB input / output unit 15 is input. The attacker model information generation unit 14 performs a contradiction / duplication verification process with the current goal model for the attacker model candidate group consisting of the attacker models returned from the DB input / output unit 15 as a search result, and creates a new attack. A candidate model candidate group is generated and output to the goal model information control unit 13.

DB入出力部15は、攻撃者モデル情報生成部14からDB検索式の入力を受けて共通用語DB30または攻撃DB40へ当該DB検索式を出力し、返送された検索結果の入力を受け、攻撃者モデル情報生成部14へ当該検索結果を出力する。ゴールモデル情報表示部16は、ゴールモデルや攻撃者モデルを外部の表示装置(ディスプレイなど)に表示する。また、入力装置50は、キーボードやマウスの操作などによりユーザから入力された情報をゴールモデル情報制御部13へ出力する。   The DB input / output unit 15 receives an input of the DB search formula from the attacker model information generation unit 14, outputs the DB search formula to the common term DB 30 or the attack DB 40, receives the returned search result, and receives the attacker The search result is output to the model information generation unit 14. The goal model information display unit 16 displays the goal model and the attacker model on an external display device (display or the like). Further, the input device 50 outputs information input from the user by operating a keyboard or a mouse to the goal model information control unit 13.

図4は、図3に示す攻撃者モデル情報生成部14内の機能ブロック図を示す。
攻撃者モデル情報生成部14は、ゴールモデル情報入出力部14a、制御部14b、字句抽出部14c、攻撃モデル生成部14dを備える。
FIG. 4 shows a functional block diagram in the attacker model information generation unit 14 shown in FIG.
The attacker model information generation unit 14 includes a goal model information input / output unit 14a, a control unit 14b, a lexical extraction unit 14c, and an attack model generation unit 14d.

制御部14bは、ゴールモデル情報入出力部14a、字句抽出部14c、攻撃モデル生成部14d、およびDB入出力部15とのデータの入出力の流れを制御する。ゴールモデル情報入出力部14aは、ゴールモデル情報制御部13から、ゴールモデル情報の入力を受けるとともに、攻撃モデル生成部14dにおいて生成された攻撃者モデル候補を制御部14bから読み込み、ゴールモデル情報制御部13へ出力する。字句抽出部14cは、制御部14bからゴールモデル情報の入力を受け、各要素(アクタ、ゴール、タスクなど)の名称を抽出するとともに、共通用語DB30への検索式を生成し、制御部14bへ出力する。攻撃モデル生成部14dは、制御部14bから現状のゴールモデル情報を入力し、それに対応した攻撃者モデルのデータをDB入出力部15から読み込む。また、攻撃モデル生成部14dは、現状のゴールモデルの情報と、攻撃者モデル候補の攻撃者モデルデータとを入力し、AND/OR関係を考慮して新たな候補木(新たな攻撃者モデル候補)に再構築する。   The control unit 14b controls the data input / output flow with the goal model information input / output unit 14a, the lexical extraction unit 14c, the attack model generation unit 14d, and the DB input / output unit 15. The goal model information input / output unit 14a receives input of goal model information from the goal model information control unit 13, reads the attacker model candidate generated by the attack model generation unit 14d from the control unit 14b, and controls goal model information control. To the unit 13. The lexical extraction unit 14c receives the input of the goal model information from the control unit 14b, extracts the name of each element (actor, goal, task, etc.) and generates a search expression for the common term DB 30 to the control unit 14b. Output. The attack model generation unit 14d inputs the current goal model information from the control unit 14b, and reads the data of the attacker model corresponding to the goal model information from the DB input / output unit 15. Further, the attack model generation unit 14d inputs information on the current goal model and the attacker model data of the attacker model candidate, and considers an AND / OR relationship to create a new candidate tree (new attacker model candidate). To rebuild).

図5は、外部記憶装置20に記憶される情報を示す図である。
外部記憶装置20は、ゴールモデルファイルを記憶する。ゴールモデルファイルには、ゴールモデルのノードを構成する各要素の情報を示す要素データが含まれる。要素データには、要素を一意に特定する要素ID、当該要素がアクタ/ゴール/ソフトゴール/タスク/資源などのうちいずれであるかを示す要素種別、当該要素の名称などの説明を示す記述、アクタ領域、上位の要素を示す上位関連、下位の要素を示す下位関連、同時成立することが矛盾、あるいは、重複する要素などの情報が含まれる。同時成立することが矛盾、あるいは、重複する要素は、要素IDにより示すことができるが、本情報は設定されていなくともよい。
FIG. 5 is a diagram showing information stored in the external storage device 20.
The external storage device 20 stores the goal model file. The goal model file includes element data indicating information of each element constituting the goal model node. In the element data, an element ID for uniquely identifying the element, an element type indicating whether the element is an actor / goal / soft goal / task / resource, etc., a description indicating an explanation of the name of the element, It includes information such as an actor area, a higher-level association indicating a higher-level element, a lower-level relationship indicating a lower-level element, contradiction or simultaneous duplication. Elements that are contradictory or overlapped at the same time can be indicated by element IDs, but this information need not be set.

同図に示すゴールモデルの場合、外部記憶装置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 external storage device 20 stores a plurality of goal model files, and the goal model file includes element data of actors, goals, soft goals, tasks, and resources. The actor name “medical staff” is set in the element data of the actor. In the element data of the goal, the element ID “goal 1”, the element type “goal”, the description “easily manage the medical record”, and the lower relation “AND of goal 2 and goal 3” are set. ID “goal 2”, element type “goal”, description “search at high speed”, upper relation “goal 1 (AND of goal 2 and goal 3)”, lower relation “task 1”, elements There is an ID “goal 3”, element type “goal”, description “search at high speed”, upper relation “goal 1 (AND of goal 2 and goal 3)”, lower relation “task 1”. . The element data of the task includes an element ID “task 1”, an element type “task”, a description “electronically manage”, a higher-level relationship “goal 2, goal 3, soft goal”, and a lower-level relationship “resource 1, resource 2” "Is set. Some soft goal element data are set with an element ID “soft goal 1”, an element type “soft goal”, a description “does not leak information”, and a subordinate “task 1”. In the element data of the resource, the element ID “resource 1”, the element type “resource”, the description “terminal”, the upper relation “task 1” are set, the element ID “resource 2”, the element type “resource” , The description “DB” and the upper relation “task 1” are set.

図6は、セキュリティ要求分析支援装置10のゴールモデル情報記憶部12に記憶され、ゴールモデルファイル入出力部11によって外部記憶装置20へ出力されるゴールモデルファイルを示す図である。同図において、ゴールモデル情報記憶部12は、現在作業中のゴールモデルファイルを一時的に保持している。ここで保持されるゴールモデルファイルは、外部記憶装置20に記憶されるゴールモデルファイルと同じデータ構成である。   FIG. 6 is a diagram illustrating a goal model file stored in the goal model information storage unit 12 of the security requirement analysis support device 10 and output to the external storage device 20 by the goal model file input / output unit 11. In the figure, the goal model information storage unit 12 temporarily holds a goal model file currently being worked on. The goal model file held here has the same data configuration as the goal model file stored in the external storage device 20.

図7は、共通用語DB30が保持する情報を示す図である。
同図において、共通用語DB30は、ドメイン名称と、当該ドメイン名称に対応する語句(語句名称)とを対応付けて記憶している。さらに、共通用語DB30は、同義の複数の語句を対応付けた情報を示す同義語データ、類似の意味を有する複数の語句を対応付けた情報を示す類義語データを記憶している。例えば、共通用語DB30には、ドメイン名称「医療ドメイン」には、語句名称「医者、患者、医療事務員、…」とが対応付けられて記憶される。また、同義語データには、「医療事務員=医療スタッフ、…」などの情報が含まれる。
FIG. 7 is a diagram illustrating information stored in the common term DB 30.
In the figure, the common term DB 30 stores a domain name and a phrase (phrase name) corresponding to the domain name in association with each other. Furthermore, the common term DB 30 stores synonym data indicating information in which a plurality of synonymous words are associated with each other, and synonym data indicating information in which a plurality of words having similar meanings are associated with each other. For example, the common term DB 30 stores the phrase name “doctor, patient, medical clerk,...” In association with the domain name “medical domain”. The synonym data includes information such as “medical clerk = medical staff,...”.

図8は、攻撃DB40が保持する情報を示す図である。
同図において、攻撃DB40は、ドメイン名称と、攻撃者モデルデータとを対応付けた情報を記憶する。攻撃者モデルデータには、攻撃者モデルデータを識別する攻撃ID、及び、攻撃者の名称の情報と、攻撃者のゴールである悪意ゴール(攻撃者要素)の要素データ、及び、ソフトゴール(攻撃者ソフトゴール)、タスク(攻撃者タスク)、資源(攻撃者資源)などのうち1以上の要素の要素データとが含まれる。さらに、攻撃DB40は、攻撃者モデルデータ内の要素データにより示される要素とは同時に成立することが矛盾、あるいは、重複する要素の要素データである同時成立不可要素データを保持する。
FIG. 8 is a diagram illustrating information stored in the attack DB 40.
In the figure, the attack DB 40 stores information in which domain names are associated with attacker model data. The attacker model data includes an attack ID for identifying the attacker model data, information on the name of the attacker, element data of a malicious goal (attacker element) that is an attacker's goal, and a soft goal (attack). Element data of one or more elements such as an attacker soft goal), a task (an attacker task), and a resource (an attacker resource). Furthermore, the attack DB 40 holds element data that is inconsistent with the element indicated by the element data in the attacker model data, or that cannot be simultaneously established, which is element data of an overlapping element.

図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 “goal 3”, and the subgoal “goal 3” is subgoal “goal 4”. And “Goal 5” OR. Further, the subgoal “goal 3” is inconsistent with the task “task 1” and cannot exist at the same time.

このとき、悪意ゴールである「ゴール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 “goal 3”, which is a sub-goal of the malicious goal, includes an element ID “G3”, an element type “goal”, a description “goal 3”, an actor area “malicious medical staff”, an upper-related “goal” “1 = AND (goal 2, goal 3)”, lower-level relation “goal 3 = OR (goal 4, goal 5)”, simultaneous establishment contradiction “T1”, and simultaneous establishment duplication “none” are set. “Goal 1 = AND (Goal 2, Goal 3)” means that Goal 1 is achieved when both Goal 2 and Goal 3 are achieved, “Goal 3 = OR (Goal 4, Goal 4). "5)" indicates that goal 3 is achieved when either goal 4 or goal 5 is achieved.

また、「ゴール3」の要素データに、同時成立矛盾するとして記述される要素ID「T1」により特定されるタスク1の同時成立不可要素データには、要素ID「T1」、要素種別「タスク」、記述「タスク1」、アクタ領域「悪意のある医療スタッフ」、上位関連「なし」、下位関連「なし」、同時成立矛盾「G3」、同時成立重複「なし」が設定されている。
さらに、同図においては、タスク1と実質的に同値の要素であるタスクt1が分析者により生成されたゴールモデルに含まれているものとする。ゴールモデル情報内のタスクt1の要素データには、要素ID「T999」、要素種別「タスク」、記述「タスクt1」、アクタ領域「悪意のある医療スタッフ」、上位関連「なし」、下位関連「なし」、同時成立矛盾「なし」、同時成立重複「なし」が設定されている。
In addition, in the element data of “goal 3”, the element ID “T1” and the element type “task” are included in the element data “task 1” specified by the element ID “T1” described as conflicting inconsistency. , Description “task 1”, actor area “malicious medical staff”, upper relation “none”, lower relation “none”, simultaneous establishment contradiction “G3”, and simultaneous establishment duplication “none” are set.
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 analysis support device 10 will be described.
FIG. 10 is a flowchart showing an outline of processing of the security request analysis support apparatus 10.
First, the goal model file input / output unit 11 of the security requirement analysis support device 10 reads a goal model file to be edited from the external storage device 20 (step S110). The goal model file to be edited is specified by, for example, a file name input by the input device 50. The goal model information storage unit 12 stores the goal model file read by the goal model file input / output unit 11 from the external storage device 20 as goal model information (step S120).

続いて、攻撃者モデル情報生成部14が、ゴールモデル情報制御部13を介してゴールモデル情報記憶部12からゴールモデル情報の入力を受ける(ステップS130)。攻撃者モデル情報生成部14は、ゴールモデル情報内の各要素データの記述に含まれる用語から、ドメインを検索するための検索式を生成してDB入出力部15へ出力する(ステップS140)。DB入出力部15は、入力された当該検索式により共通用語DB30を検索した結果の入力を受ける(ステップS150)。攻撃者モデル情報生成部14は、DB入出力部15から、ステップS150におけるドメイン検索結果の入力を受ける。   Subsequently, the attacker model information generation unit 14 receives the goal model information from the goal model information storage unit 12 via the goal model information control unit 13 (step S130). The attacker model information generation unit 14 generates a search expression for searching a domain from terms included in the description of each element data in the goal model information, and outputs the search expression to the DB input / output unit 15 (step S140). The DB input / output unit 15 receives an input of a result of searching the common term DB 30 using the input search formula (step S150). The attacker model information generation unit 14 receives the input of the domain search result in step S150 from the DB input / output unit 15.

続いて、ゴールモデル情報記憶部12は、ステップS150において受信した結果から、攻撃者モデル候補となる攻撃者モデルデータを検索するための検索式を生成してDB入出力部15へ出力する(ステップS160)。DB入出力部15は、入力された当該検索式により攻撃DB40を検索した結果を受信する(ステップS170)。攻撃者モデル情報生成部14は、DB入出力部15から、ステップS180における攻撃者モデル検索結果の入力を受ける。   Subsequently, the goal model information storage unit 12 generates a search expression for searching for the attacker model data as an attacker model candidate from the result received in step S150, and outputs it to the DB input / output unit 15 (step). S160). The DB input / output unit 15 receives the result of searching the attack DB 40 using the input search formula (step S170). The attacker model information generation unit 14 receives the attacker model search result input in step S180 from the DB input / output unit 15.

攻撃者モデル情報生成部14は、DB入出力部15から攻撃者モデルデータの検索結果の入力を受けると、これら攻撃者モデルデータを合わせて攻撃者モデル候補群とする(ステップS180)。攻撃者モデル情報生成部14により生成された攻撃者モデル候補群がゴールモデル情報制御部13に入力されると(ステップS190)、ゴールモデル情報制御部13は、入力された攻撃者モデル候補群内の攻撃者モデルデータで規定される攻撃者モデル候補をゴールモデル情報表示部16へ出力する。ゴールモデル情報表示部16は、攻撃者モデルデータが入力されると、当該データで示される攻撃者モデル候補を順に表示し、入力装置50により表示した攻撃者モデル候補の要/不要の情報の入力を受ける(ステップS200)。これにより、ゴールモデル情報制御部13は、要と入力された攻撃者モデル候補の攻撃者モデルデータを、現在のゴールモデル情報に追加してゴールモデル情報記憶部12に書き込む。   When the attacker model information generation unit 14 receives an input of the search result of the attacker model data from the DB input / output unit 15, the attacker model data is combined into an attacker model candidate group (step S180). When the attacker model candidate group generated by the attacker model information generation unit 14 is input to the goal model information control unit 13 (step S190), the goal model information control unit 13 The attacker model candidate specified by the attacker model data is output to the goal model information display unit 16. When the attacker model data is input, the goal model information display unit 16 sequentially displays the attacker model candidates indicated by the data, and inputs necessary / unnecessary information of the attacker model candidates displayed by the input device 50. (Step S200). As a result, the goal model information control unit 13 adds the attacker model data of the attacker model candidate that has been input as necessary to the current goal model information and writes it to the goal model information storage unit 12.

攻撃者モデル候補群内のすべての攻撃者モデルデータについて要否が選択され、入力装置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 input device 50, the goal model file input / output unit 11 reads the goal model information storage unit 12 from the goal model information storage unit 12. An input of model information is received (step S210). The goal model file input / output unit 11 outputs the goal model file in which the input goal model information is set to the external storage device 20 (step S220). The external storage device 20 stores the goal model file input from the goal model file input / output unit 11.

図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 information generation unit 14 in the security request analysis support apparatus 10.
The goal model information input / output unit 14a of the attacker model information generation unit 14 receives the input of the goal model information read from the goal model information storage unit 12 by the goal model information control unit 13 in step S130 of FIG. 10 (step S310). ). The lexical extraction unit 14c extracts the attribute of each element from the goal model information input in step S310. Specifically, the lexical extraction unit 14c reads the description information from each element data included in the goal model information, and extracts the phrase included in the description information (step S320). For example, in the case of the goal model of FIG. 1, phrases such as an actor description “medical clerk”, “doctor”, “patient”, a task description “karte”, and “management” are extracted.

字句抽出部14cは、抽出した語句の同義語を読み出すための検索式K1と、共通用語DB30内に登録されているドメイン名のうち、当該ドメイン名に対応して記憶されている語句の中に、抽出した語句、検索式K1により取得した同義語が含まれている数が最も多いものを読み出すための検索式K2を生成する。制御部14bは、字句抽出部14cが生成した検索式K1及びK2をDB入出力部15へ出力し、DB入出力部15が共通用語DB30から得た検索式K2による検索結果を受信する。制御部14bがDB入出力部15から受信した検索式K2の検索結果の情報を字句抽出部14cへ出力する(ステップS330)。   The lexical extraction unit 14c includes a search expression K1 for reading the synonym of the extracted word and a word stored in correspondence with the domain name among the domain names registered in the common term DB 30. A search formula K2 for reading out the extracted word / phrase having the largest number of synonyms acquired by the search formula K1 is generated. The control unit 14b outputs the search formulas K1 and K2 generated by the lexical extraction unit 14c to the DB input / output unit 15, and the DB input / output unit 15 receives a search result based on the search formula K2 obtained from the common term DB 30. The control unit 14b outputs the search result information of the search formula K2 received from the DB input / output unit 15 to the lexical extraction unit 14c (step S330).

例えば、図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 lexical extraction unit 14c generates a search formula K3 for reading attacker model data corresponding to the domain indicated by the input search result. The control unit 14b outputs the search formula K3 generated by the lexical extraction unit 14c to the DB input / output unit 15, and the DB input / output unit 15 receives a search result based on the search formula K3 obtained from the common term DB 30. The control unit 14b outputs information on the search result of the search formula K3 received from the DB input / output unit 15 to the attack model generation unit 14d (step S340).

攻撃モデル生成部14dは、ステップS340において入力された検索式K3の検索結果により示される全ての攻撃者モデルデータの集合を攻撃者モデル候補群とする。そして、現在のゴールモデル情報と、攻撃者モデル候補群内の各攻撃者モデルデータとを参照して、冗長または重複する要素がある場合には、攻撃者モデルデータの示す攻撃者モデルの候補木を再構築するか、あるいは、攻撃者モデルデータ自体を削除する。攻撃モデル生成部14dは、冗長または重複する要素がなく、攻撃モデルの修正を行わなかった攻撃者モデルデータ、あるいは、冗長または重複する要素があったため、攻撃モデルを再構築した攻撃者モデルデータをゴールモデル情報制御部13に出力する(ステップS350、ステップS360:NO)。   The attack model generation unit 14d sets a set of all attacker model data indicated by the search result of the search expression K3 input in step S340 as an attacker model candidate group. Then, referring to the current goal model information and each attacker model data in the attacker model candidate group, if there are redundant or overlapping elements, the attacker model candidate tree indicated by the attacker model data Or the attacker model data itself is deleted. The attack model generation unit 14d uses the attacker model data that has no redundant or overlapping elements and the attack model has not been corrected, or the attacker model data obtained by reconstructing the attack model because there are redundant or overlapping elements. It outputs to the goal model information control part 13 (step S350, step S360: NO).

ゴールモデル情報制御部13は、入力された攻撃者モデルデータで示される攻撃者モデル候補を表示するようゴールモデル情報表示部16へ指示する。なお、このとき、攻撃者モデルデータの各要素データで示されるアクタ領域に、当該要素データで示される要素が表示されるようにする。ゴールモデル情報制御部13は、ゴールモデル情報表示部16により表示されている攻撃者モデル候補の要/不要の情報の入力を受ける。そして、要が入力された攻撃者モデル候補の攻撃者モデルデータを、ゴールモデル情報としてゴールモデル情報記憶部12に書き込む。攻撃モデル生成部14dは、全ての攻撃者モデル候補群内に含まれる攻撃者モデルデータについて再構築が必要か否かを判断し終えたかを判断し、再構築が必要か否かの判定を全ての攻撃者モデルデータについて完了した場合、処理を終了する(ステップS360:YES)。   The goal model information control unit 13 instructs the goal model information display unit 16 to display the attacker model candidates indicated by the inputted attacker model data. At this time, the element indicated by the element data is displayed in the actor area indicated by each element data of the attacker model data. The goal model information control unit 13 receives input of necessary / unnecessary information of an attacker model candidate displayed by the goal model information display unit 16. Then, the attacker model data of the attacker model candidate to which the key is input is written in the goal model information storage unit 12 as goal model information. The attack model generation unit 14d determines whether or not it is necessary to reconstruct the attacker model data included in all the attacker model candidate groups, and determines whether or not reconstruction is necessary. If the attacker model data is completed, the process ends (step S360: YES).

図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 model generation unit 14d reads out information on whether or not element data of an element equivalent to the element is registered in the attack DB 40 for all elements included in each actor in the current goal model (step S410). ). Specifically, first, among the elements of the goal model information, an element having the same value as the element that cannot be simultaneously established is identified. That is, the attack model generation unit 14 d reads the description data from each element data in the goal model information stored in the goal model information storage unit 12. Then, a search expression K4 for searching for synonyms of the phrase indicated by the read description data is generated. The control unit 14b outputs the search expression K4 generated by the attack model generation unit 14d to the DB input / output unit 15. In the control unit 14b, the DB input / output unit 15 receives an input of the synonym search result acquired from the common term DB 30 by the search formula K4, and outputs it to the attack model generation unit 14d.

攻撃モデル生成部14dは、類義語検索結果で示される類義語が記述データとして設定されている同時成立不可要素データを読み出すための検索式K5を生成する。制御部14bは、攻撃モデル生成部14dが生成した検索式K5をDB入出力部15に出力する。制御部14bは、DB入出力部15が、検索式K5により攻撃DB40から取得した同時成立不可要素データの検索結果の入力を受け、攻撃モデル生成部14dへ出力する。
このようにして、ゴールモデルに含まれている要素と同値の要素を示す同時成立不可要素データが得られると、当該同時成立不可要素データの同時成立矛盾、及び、同時成立重複から要素IDを読み出し、内部のメモリに保存する。
The attack model generation unit 14d generates a search formula K5 for reading out the element data that cannot be simultaneously established in which the synonym indicated by the synonym search result is set as the description data. The control unit 14b outputs the search expression K5 generated by the attack model generation unit 14d to the DB input / output unit 15. In the control unit 14b, the DB input / output unit 15 receives an input of the search result of the simultaneous dissatisfiable element data acquired from the attack DB 40 by the search formula K5, and outputs it to the attack model generation unit 14d.
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 model generation unit 14d uses the simultaneous dissatisfiable element data in which the synonym indicated by the synonym search result is set in the description data from among the simultaneous dissatisfiable element data obtained as the search result of the search formula K5 ′. What is necessary is just to specify.

図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 common term DB 30. This synonym “task 1” is set in the description, and the element of the element data “element ID“ T1 ”) having the same element type“ task ”and the actor area“ malicious medical staff ”cannot be formed simultaneously is“ task It is determined that “t1” is equivalent to the goal model task (element ID “T999”) set in the description. The simultaneous establishment contradiction element ID “G3” read from the simultaneous establishment impossible element data (element ID “T1”) determined to be the same value is stored in the memory in the attack model generation unit 14d.

次に、攻撃モデル生成部14dは、攻撃者モデルデータ内の要素データの中に、ステップS410においてメモリに保持した要素IDにより特定されるものがあるか否かを判断する(ステップS420)。そして、メモリに保持した要素IDにより特定される要素データがあった場合、当該要素データ内の上位関連情報から、該当するノードの上位関連を判断する(ステップS430)。   Next, the attack model generation unit 14d determines whether any element data in the attacker model data is specified by the element ID held in the memory in step S410 (step S420). If there is element data specified by the element ID held in the memory, the upper relation of the corresponding node is determined from the upper relation information in the element data (step S430).

ステップ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 model generation unit 14d outputs the attacker model data indicating the attacker model reconstructed in Step S440 or Step S450 to the goal model information control unit 13 (Step S460). The goal model information control unit 13 causes the goal model information display unit 16 to display the attacker model indicated by the input attacker model data as a candidate.

なお、攻撃者モデルデータの選択が終了した後、再び、ゴールモデルが編集されてノードが追加された場合、そのノードが追加されたタイミング、あるいは、ノード追加後に、攻撃者モデルデータ更新指示が入力されたタイミングで、新たに追加されたノードの要素データについて、再び、図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 information storage unit 12, that is, once selected by the user, an element having the same value as the element of the newly added node is obtained by the same procedure as in FIG. Confirm the simultaneous establishment with the element data that cannot be formed simultaneously. If the malicious goal is not achieved when elements that are not simultaneously established are deleted, the attacker model data is deleted from the goal model information storage unit 12 and the goal model displayed by the goal model information display unit 16 Clear the display of attacker model data. In addition, if the malicious goal is achieved even when elements that do not hold simultaneously are deleted, the attacker model that deleted and reconstructed the elements that did not hold when the elements were deleted Is replaced with the current attacker model data in the goal model information storage unit 12, and the current attack displayed on the goal model information display unit 16 based on the attacker model data before the replacement. By instructing the display of the model to be changed to the display of a new goal model indicated by the replaced attacker model data, the display of the deleted element is deleted. Thereby, the element of the inconsistent and redundant attacker model data can be deleted even for the newly added node.

上記実施の形態によれば、セキュリティ要求分析において、考慮を忘れやすい攻撃を発見できる可能性が高まるという効果がある。また、その際、不必要な分析は除去されるため、分析効率が高まる。また、ゴールモデルの作成過程で、要素の重複や矛盾を検証することもできる。これらの結果、セキュリティに関する要求分析の信頼性(網羅性や妥当性)が高まり、初心者であっても、容易にセキュリティ要求分析を行うことを支援することができる。また、処理コストを低減することも可能である。   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 analysis support device 10, the external storage device 20, the common term DB 30, and the attack DB 40 described above have a computer system inside. The operation processes of the external storage device 20, the common term DB 30, and the attack DB 40 of the security requirement analysis support device 10 are stored in a computer-readable recording medium in the form of a program, and the computer system reads this program. The above processing is performed by executing the above. Here, the computer system includes a CPU, various memories, an OS, and hardware such as peripheral devices.

また、「コンピュータシステム」は、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.

本発明の一実施の形態によるセキュリティ要求分析支援装置の動作概要を説明するための図である。It is a figure for demonstrating the operation | movement outline | summary of the security requirement analysis assistance apparatus by one embodiment of this invention. 同実施の形態によるセキュリティ要求分析支援装置における攻撃者モデル再構築の処理概要を説明するための図である。It is a figure for demonstrating the process outline | summary of the attacker model reconstruction in the security requirement analysis assistance apparatus by the embodiment. 同実施の形態によるセキュリティ要求分析支援装置の機能ブロック図である。It is a functional block diagram of the security requirement analysis support device by the embodiment. 同実施の形態によるセキュリティ要求分析支援装置の攻撃者モデル情報生成部内の機能ブロック図を示す。The functional block diagram in the attacker model information generation part of the security requirement analysis assistance device by the embodiment is shown. 同実施の形態による外部記憶装置に記憶される情報を示す図である。It is a figure which shows the information memorize | stored in the external storage device by the embodiment. 同実施の形態によるゴールモデルファイルを示す図である。It is a figure which shows the goal model file by the embodiment. 同実施の形態による共通用語DBが保持する情報を示す図である。It is a figure which shows the information which common term DB by the same embodiment hold | maintains. 同実施の形態による攻撃DBが保持する情報を示す図である。It is a figure which shows the information which attack DB by the same embodiment hold | maintains. 同実施の形態による攻撃者モデルデータに含まれる要素データと、同時成立が矛盾する要素データの例を示す図である。It is a figure which shows the example of the element data contained in the attacker model data by the embodiment, and the element data in which simultaneous establishment is contradictory. 同実施の形態によるセキュリティ要求分析支援装置における処理概要を示すフローチャートである。It is a flowchart which shows the process outline | summary in the security requirement analysis assistance apparatus by the embodiment. 同実施の形態によるセキュリティ要求分析支援装置内の攻撃者モデル情報生成部における処理のフローチャートである。It is a flowchart of the process in the attacker model information generation part in the security requirement analysis assistance apparatus by the embodiment. 同実施の形態によるセキュリティ要求分析支援装置内の攻撃者モデル情報生成部における候補木再構築処理のフローチャートである。It is a flowchart of the candidate tree reconstructing process in the attacker model information generating unit in the security requirement analysis support device according to the embodiment. 従来技術のゴール指向要求分析を用いたゴールモデルの分析例を示す。An example of goal model analysis using prior art goal-oriented requirement analysis is shown. 従来技術によって拡張されたプロセスを示す図である。FIG. 4 shows a process extended by the prior art. 図14に示すプロセスによって生成されたゴールモデルの例を示す。The example of the goal model produced | generated by the process shown in FIG. 14 is shown. 図14に示すプロセスによって生成されたゴールモデルの例を示す。The example of the goal model produced | generated by the process shown in FIG. 14 is shown. ゴールモデルに冗長な要素が含まれている場合の例を示す図である。It is a figure which shows the example when a redundant element is contained in the goal model.

符号の説明Explanation of symbols

10…セキュリティ要求分析支援装置
11…ゴールモデルファイル入出力部
12…ゴールモデル情報記憶部
13…ゴールモデル情報制御部
14…攻撃者モデル情報生成部
14a…ゴールモデル情報入出力部
14b…制御部
14c…字句抽出部
14d…攻撃モデル生成部
15…DB入出力部
16…ゴールモデル情報表示部
20…外部記憶装置
30…共通用語DB
40…攻撃DB
50…入力装置
DESCRIPTION OF SYMBOLS 10 ... Security requirement analysis support apparatus 11 ... Goal model file input / output part 12 ... Goal model information storage part 13 ... Goal model information control part 14 ... Attacker model information generation part 14a ... Goal model information input / output part 14b ... Control part 14c ... Lexical extraction unit 14d ... Attack model generation unit 15 ... DB input / output unit 16 ... Goal model information display unit 20 ... External storage device 30 ... Common term DB
40 ... Attack DB
50 ... Input device

Claims (5)

開発システムによって達成すべきゴールと、当該ゴールを達成するためのゴールまたはタスク、あるいは、リソースのうち1以上とを要素として含むゴールモデルに、セキュリティを脅かす攻撃者のモデルの候補を提示することによりセキュリティ分析を支援するセキュリティ要求分析支援装置であって、
ゴールモデルを構成する要素と、当該要素間の依存関係との情報を示すゴールモデルデータを記憶するゴールモデル情報記憶部と、
悪意のある攻撃者が目標とするゴールである悪意ゴールを達成するための要素、及び、当該要素間の依存関係により示される攻撃者モデルと、矛盾または重複のため当該攻撃者モデルを構成する要素とは同時成立しない要素との情報からなる攻撃者モデルデータをドメインに対応させて記憶する攻撃データベースと、
前記ゴールモデルが属するドメインの情報に対応した攻撃者モデルデータを前記攻撃データベースから読み出すデータベース入出力部と、
前記データベース入出力部が読み出した攻撃者モデルデータの示す同時成立しない要素の情報と、前記ゴールモデル情報記憶部内のゴールモデルデータの示す要素の情報とに基づいて、当該攻撃者モデルデータの中から、当該ゴールモデルデータの示す要素とは同時成立しない要素が含まれている攻撃者モデルデータを特定し、さらに、特定した攻撃者モデルデータの示す要素と、当該要素間の依存関係との情報から、同時成立しない前記要素を削除したときに悪意ゴールが達成されるか否かを判断し、同時成立しない前記要素を削除したときにも悪意ゴールが達成される場合は、当該攻撃者モデルデータを、当該攻撃者モデルデータの示す攻撃者モデルから同時成立しない当該要素を削除するとともに、当該要素を削除した場合に成立しない要素を削除した新たな攻撃者モデルを示すよう変更する攻撃者モデル情報生成部と、
前記攻撃者モデル情報生成部により、前記ゴールモデルデータの示す要素と同時成立しない要素が含まれていないと判断された前記攻撃者モデルデータ、及び、変更された攻撃者モデルデータの示す攻撃者モデルを表示するよう指示するゴールモデル情報制御部と、
を備えることを特徴とするセキュリティ要求分析支援装置。
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:
開発システムによって達成すべきゴールと、当該ゴールを達成するためのゴールまたはタスク、あるいは、リソースのうち1以上とを要素として含むゴールモデルに、セキュリティを脅かす攻撃者のモデルの候補を提示することによりセキュリティ分析を支援するセキュリティ要求分析支援装置として用いられるコンピュータを、
ゴールモデルを構成する要素と、当該要素間の依存関係との情報を示すゴールモデルデータを記憶するゴールモデル情報記憶部、
悪意のある攻撃者が目標とするゴールである悪意ゴールを達成するための要素、及び、当該要素間の依存関係により示される攻撃者モデルと、矛盾または重複のため当該攻撃者モデルを構成する要素とは同時成立しない要素との情報からなる攻撃者モデルデータをドメインに対応させて記憶する攻撃データベース、
前記ゴールモデルが属するドメインの情報に対応した攻撃者モデルデータを前記攻撃データベースから読み出すデータベース入出力部、
前記データベース入出力部が読み出した攻撃者モデルデータの示す同時成立しない要素の情報と、前記ゴールモデル情報記憶部内のゴールモデルデータの示す要素の情報とに基づいて、当該攻撃者モデルデータの中から、当該ゴールモデルデータの示す要素とは同時成立しない要素が含まれている攻撃者モデルデータを特定し、さらに、特定した攻撃者モデルデータの示す要素と、当該要素間の依存関係との情報から、同時成立しない前記要素を削除したときに悪意ゴールが達成されるか否かを判断し、同時成立しない前記要素を削除したときにも悪意ゴールが達成される場合は、当該攻撃者モデルデータを、当該攻撃者モデルデータの示す攻撃者モデルから同時成立しない当該要素を削除するとともに、当該要素を削除した場合に成立しない要素を削除した新たな攻撃者モデルを示すよう変更する攻撃者モデル情報生成部、
前記攻撃者モデル情報生成部により、前記ゴールモデルデータの示す要素と同時成立しない要素が含まれていないと判断された前記攻撃者モデルデータ、及び、変更された攻撃者モデルデータの示す攻撃者モデルを表示するよう指示するゴールモデル情報制御部、
として機能させることを特徴とするコンピュータプログラム。
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.
JP2007091242A 2007-03-30 2007-03-30 Security requirement analysis support apparatus and computer program Expired - Fee Related JP4954767B2 (en)

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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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