JPWO2019093059A1 - Threat analyzers, threat analysis methods, and threat analysis programs - Google Patents

Threat analyzers, threat analysis methods, and threat analysis programs Download PDF

Info

Publication number
JPWO2019093059A1
JPWO2019093059A1 JP2019552672A JP2019552672A JPWO2019093059A1 JP WO2019093059 A1 JPWO2019093059 A1 JP WO2019093059A1 JP 2019552672 A JP2019552672 A JP 2019552672A JP 2019552672 A JP2019552672 A JP 2019552672A JP WO2019093059 A1 JPWO2019093059 A1 JP WO2019093059A1
Authority
JP
Japan
Prior art keywords
information
vulnerability
model information
application
functional application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019552672A
Other languages
Japanese (ja)
Inventor
三科 雄介
雄介 三科
和夫 寳木
和夫 寳木
研治 田口
研治 田口
梅澤 克之
克之 梅澤
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.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
National Institute of Advanced Industrial Science and Technology AIST
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 National Institute of Advanced Industrial Science and Technology AIST filed Critical National Institute of Advanced Industrial Science and Technology AIST
Publication of JPWO2019093059A1 publication Critical patent/JPWO2019093059A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/77Software metrics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Resources & Organizations (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

概念設計段階の対象システムに対して脅威分析を行うことのできる脅威分析装置、脅威分析方法、及び脅威分析プログラムを提供する。対象システムに含まれる機能アプリケーションについて、システムの仕様を規定するためのシステム仕様情報を用いてモデル化した機能アプリケーションモデル情報500〜900を取得する第1取得部150と、事例システムに含まれる脆弱性についてシステム仕様情報を用いてモデル化した脆弱性モデル情報1100〜1300を取得する第2取得部160と、機能アプリケーションモデル情報500〜900と脆弱性モデル情報1100〜1300とに基づいて対象システムの脅威分析を行う実行部180と、を備える。We provide threat analysis equipment, threat analysis methods, and threat analysis programs that can perform threat analysis on target systems in the conceptual design stage. For the functional application included in the target system, the first acquisition unit 150 that acquires the functional application model information 500 to 900 modeled using the system specification information for defining the system specifications, and the vulnerability included in the case system. Threat of the target system based on the second acquisition unit 160 that acquires the vulnerability model information 1100 to 1300 modeled using the system specification information, the functional application model information 500 to 900, and the vulnerability model information 1100 to 1300. An execution unit 180 for performing analysis is provided.

Description

本発明は、脅威分析装置、脅威分析方法、及び脅威分析プログラムに関する。 The present invention relates to a threat analyzer, a threat analysis method, and a threat analysis program.

従来、脅威分析方法として、米国マイクロソフト社が発表した脅威分析ツール"Microsoft Threat Modeling Tool"(以下、「MS脅威分析ツール」という)を用いるものが知られている(例えば、非特許文献1参照)。MS脅威分析ツールでは、分析対象のシステムに含まれるデータフローを組織間のインタフェースで分割した上で、データフローの両端の要素の相互作用の特性情報を抽出する。そして、あらかじめSTRIDE分類軸でまとめた脅威分類表と抽出した特性情報とを比較することで、分析対象のシステムに発生する可能性がある脅威を提示できるようにしている。ここで、STRIDE分類軸とは、「なりすまし」(Spoofing)、「改ざん」(Tampering)、「否認」(Repudiation)、「情報の漏洩」(Information disclosure)、「DoS攻撃」(Denial of service)、「権限昇格」(Elevation of privilege)の各脅威から構成される分類軸である。 Conventionally, as a threat analysis method, a threat analysis tool "Microsoft Threat Modeling Tool" (hereinafter referred to as "MS threat analysis tool") announced by Microsoft Corporation in the United States is known (see, for example, Non-Patent Document 1). .. The MS threat analysis tool divides the data flow contained in the system to be analyzed by the interface between organizations, and then extracts the characteristic information of the interaction of the elements at both ends of the data flow. Then, by comparing the threat classification table compiled in advance with the STRIDE classification axis and the extracted characteristic information, it is possible to present the threats that may occur in the system to be analyzed. Here, the STRIDE classification axis is "spoofing" (Spoofing), "tampering" (Tampering), "denial" (Repudiation), "information disclosure" (Information disclosure), "DoS attack" (Denial of service), It is a classification axis composed of each threat of "Elevation of privilege".

“マイクロソフト脅威モデリングツール2016ユーザガイド”(Microsoft Threat Modeling Tool 2016 User Guide)、[online]、マイクロソフト社(Microsoft)、[平成29年10月26日検索]、インターネット<URL:https://www.microsoft.com/en-us/download/details.aspx?id=49168&751be11f-ede8-5a0c-058c-2ee190a24fa6=True&e6b34bbe-475b-1abd-2c51-b5034bcdd6d2=True&fa43d42b-25b5-4a42-fe9b-1634f450f5ee=True> "Microsoft Threat Modeling Tool 2016 User Guide" (Microsoft Threat Modeling Tool 2016 User Guide), [online], Microsoft (Microsoft), [Search on October 26, 2017], Internet <URL: https: // www. microsoft.com/en-us/download/details.aspx?id=49168&751be11f-ede8-5a0c-058c-2ee190a24fa6=True&e6b34bbe-475b-1abd-2c51-b5034bcdd6d2=True&fa43d42b-25b5-4a42-fe9b-1634f450f5

前述したMS脅威分析ツールは、分析対象のシステムのデータフローダイアグラムを用いて脅威分析を行う。しかしながら、データフローダイアグラムはシステム設計の詳細設計段階で使用されることが多いため、MS脅威分析ツールは概念設計段階のシステムを対象として脅威分析を行うことが困難であった。 The MS threat analysis tool described above performs threat analysis using the data flow diagram of the system to be analyzed. However, since data flow diagrams are often used in the detailed design stage of system design, it has been difficult for MS threat analysis tools to perform threat analysis on systems in the conceptual design stage.

また、脆弱性事例情報として、米国MITRE社によって収集・蓄積されたCWE(Common Weakness Enumeration)と呼ばれる大部の脆弱性事例情報データベースが公開されている。しかしながら、CWEには、実際に運用されている既存システムで発見された脆弱性事例が記述されているため、概念設計段階のシステムにCWEを適用して脅威分析を行うことは困難であった。 In addition, as vulnerability case information, most of the vulnerability case information database called CWE (Common Weakness Enumeration) collected and accumulated by MITER Corporation in the United States is open to the public. However, since CWE describes vulnerabilities found in existing systems that are actually in operation, it was difficult to apply CWE to systems in the conceptual design stage for threat analysis.

そこで、本発明は、概念設計段階の対象システムに対して脅威分析を行うことのできる脅威分析装置、脅威分析方法、及び脅威分析プログラムを提供することを目的とする。 Therefore, an object of the present invention is to provide a threat analysis device, a threat analysis method, and a threat analysis program capable of performing threat analysis on a target system in the conceptual design stage.

本発明の一態様に係る脅威分析装置は、対象システムに含まれる機能アプリケーションについて、システムの仕様を規定するためのシステム仕様情報を用いてモデル化した機能アプリケーションモデル情報を取得する第1取得部と、事例システムに含まれる脆弱性についてシステム仕様情報を用いてモデル化した脆弱性モデル情報を取得する第2取得部と、機能アプリケーションモデル情報と脆弱性モデル情報とに基づいて対象システムの脅威分析を行う実行部と、を備える。 The threat analyzer according to one aspect of the present invention includes a first acquisition unit that acquires functional application model information modeled using system specification information for defining system specifications for a functional application included in a target system. , A threat analysis of the target system is performed based on the second acquisition unit that acquires the vulnerability model information modeled using the system specification information for the vulnerabilities contained in the case system, and the functional application model information and the vulnerability model information. It has an execution unit to perform.

この態様によれば、対象システムに含まれる機能アプリケーションについて、システム仕様情報を用いてモデル化した機能アプリケーションモデル情報が取得され、事例システムに含まれる脆弱性について、システム仕様情報を用いてモデル化した脆弱性モデル情報が取得される。そして、機能アプリケーションモデル情報と脆弱性モデル情報とに基づいて、対象システムの脅威分析が行われる。ここで、システム仕様情報に含まれる抽象的な仕様情報は、概念設計段階のシステムでも得ることができる。よって、同じシステム仕様情報を用いて機能アプリケーションモデル情報及び脆弱性モデル情報を取得することにより、対象システムの機能アプリケーションモデル情報と事例システムの脆弱性モデル情報とを容易に比較することができ、対象システムに存在し得る脆弱性への脅威分析を行うことができる。従って、概念設計段階の対象システムに対して脅威分析を行うことができる。 According to this aspect, the functional application model information modeled by using the system specification information is acquired for the functional application included in the target system, and the vulnerability included in the case system is modeled by using the system specification information. Vulnerability model information is acquired. Then, threat analysis of the target system is performed based on the functional application model information and the vulnerability model information. Here, the abstract specification information included in the system specification information can also be obtained in the system at the conceptual design stage. Therefore, by acquiring the functional application model information and the vulnerability model information using the same system specification information, the functional application model information of the target system and the vulnerability model information of the case system can be easily compared. It is possible to perform threat analysis for vulnerabilities that may exist in the system. Therefore, threat analysis can be performed on the target system at the conceptual design stage.

前述の態様において、脆弱性モデル情報は、攻撃成立条件及び攻撃結果の情報を含み、第2取得部は、複数の脆弱性モデル情報を取得し、機能アプリケーションモデル情報が複数の脆弱性モデル情報のうちの少なくとも一つの攻撃条件を満たすときに、該脆弱性モデル情報の攻撃成立条件及び攻撃結果の情報に基づいて機能アプリケーションモデル情報の一部を更新する更新部をさらに備え、実行部は、更新された機能アプリケーションモデル情報と複数の脆弱性モデル情報とに基づいて対象システムの脅威分析を行ってもよい。 In the above-described embodiment, the vulnerability model information includes information on the attack establishment condition and the attack result, the second acquisition unit acquires a plurality of vulnerability model information, and the functional application model information is a plurality of vulnerability model information. When at least one of the attack conditions is satisfied, an update unit is further provided to update a part of the functional application model information based on the attack establishment condition and the attack result information of the vulnerability model information, and the execution unit is updated. The threat analysis of the target system may be performed based on the function application model information and the plurality of vulnerability model information.

この態様によれば、機能アプリケーションモデル情報が複数の脆弱性モデル情報のうちの少なくとも一つの攻撃条件を満たすときに、該脆弱性モデル情報の攻撃成立条件及び攻撃結果に基づいて、機能アプリケーションモデル情報の一部が更新される。これにより、当該機能アプリケーションに接続可能な機能アプリケーションに対する脅威分析が可能になり、複数の脆弱性を組み合わせた攻撃に対する対象システムの脅威分析を行うことができる。 According to this aspect, when the functional application model information satisfies at least one attack condition of the plurality of vulnerability model information, the functional application model information is based on the attack establishment condition and the attack result of the vulnerability model information. Is partly updated. This makes it possible to analyze threats to functional applications that can be connected to the functional application, and to perform threat analysis of the target system against attacks that combine multiple vulnerabilities.

前述の態様において、対象システムは、第1機能アプリケーションと、該第1機能アプリケーションと通信接続可能な第2機能アプリケーションとを含み、第1取得部は、第1機能アプリケーションの機能アプリケーションモデル情報と第2機能アプリケーションの機能アプリケーションモデル情報とを取得し、実行部は、第1機能アプリケーションの機能アプリケーションモデル情報及び第2機能アプリケーションの機能アプリケーションモデル情報と、脆弱性モデル情報とに基づいて前記対象システムの脅威分析を行ってもよい。 In the above-described embodiment, the target system includes the first functional application and the second functional application capable of communicating with the first functional application, and the first acquisition unit includes the functional application model information of the first functional application and the first. The functional application model information of the two functional applications is acquired, and the execution unit obtains the functional application model information of the first functional application, the functional application model information of the second functional application, and the vulnerability model information of the target system. Threat analysis may be performed.

この態様によれば、第1機能アプリケーションの機能アプリケーションモデル情報と、当該第1機能アプリケーションと通信接続可能な第2機能アプリケーションの機能アプリケーションモデル情報と、脆弱性モデル情報とに基づいて、対象システムの機能分析が行われる。これにより、通信接続可能な2つの機能アプリケーションの組合せに対する攻撃の可能性を分析することができる。 According to this aspect, the target system is based on the functional application model information of the first functional application, the functional application model information of the second functional application capable of communicating with the first functional application, and the vulnerability model information. Functional analysis is performed. This makes it possible to analyze the possibility of an attack on a combination of two functional applications that can be connected by communication.

前述の態様において、脅威分析を行った対象システムに対して利用料を算出する利用料算出部をさらに備えてもよい。 In the above-described embodiment, the usage fee calculation unit for calculating the usage fee for the target system for which the threat analysis has been performed may be further provided.

この態様によれば、脅威分析を行った対象システムに対して利用料が算出される。これにより、サービス利用者に利用料を請求することで、利用料の一部をサービス利用者以外の者、例えば情報登録者に報酬として還元(フィードバック)することができる。 According to this aspect, the usage fee is calculated for the target system for which the threat analysis has been performed. As a result, by charging the service user for the usage fee, a part of the usage fee can be returned (feedback) as a reward to a person other than the service user, for example, an information registrant.

前述の態様において、脅威分析の結果、対象システムが脆弱性を含むときに、該脆弱性に対応する脆弱性モデル情報に対する報酬を利用料に基づいて算出する報酬算出部をさらに備えてもよい。 In the above-described embodiment, when the target system includes a vulnerability as a result of threat analysis, a reward calculation unit may be further provided to calculate the reward for the vulnerability model information corresponding to the vulnerability based on the usage fee.

この態様によれば、脅威分析の結果、対象システムが脆弱性を含むときに、当該脆弱性に対応する脆弱性モデル情報に対する報酬が、対象システムの利用料に基づいて算出される。これにより、脆弱性モデル情報の情報登録者に登録のインセンティブを与えることができる。従って、登録と利用のサイクルがうまく回転し、脅威分析のサービス事業が継続的事業として成立することできる。 According to this aspect, when the target system contains a vulnerability as a result of threat analysis, the reward for the vulnerability model information corresponding to the vulnerability is calculated based on the usage fee of the target system. As a result, an incentive for registration can be given to the information registrant of the vulnerability model information. Therefore, the cycle of registration and use can be rotated well, and the threat analysis service business can be established as a continuous business.

本発明の他の態様に係る脅威分析方法は、対象システムに含まれる機能アプリケーションについて、システムの仕様を規定するためのシステム仕様情報を用いてモデル化した機能アプリケーションモデル情報を取得する第1取得ステップと、事例システムに含まれる脆弱性についてシステム仕様情報を用いてモデル化した脆弱性モデル情報を取得する第2取得ステップと、機能アプリケーションモデル情報と脆弱性モデル情報とに基づいて対象システムの脅威分析を行う実行ステップと、を含む。 The threat analysis method according to another aspect of the present invention is the first acquisition step of acquiring the functional application model information modeled by using the system specification information for defining the system specifications for the functional application included in the target system. And, threat analysis of the target system based on the second acquisition step to acquire the vulnerability model information modeled using the system specification information about the vulnerability included in the case system, and the functional application model information and the vulnerability model information. Includes execution steps and.

この態様によれば、対象システムに含まれる機能アプリケーションについて、システム仕様情報を用いてモデル化した機能アプリケーションモデル情報が取得され、事例システムに含まれる脆弱性について、システム仕様情報を用いてモデル化した脆弱性モデル情報が取得される。そして、機能アプリケーションモデル情報と脆弱性モデル情報とに基づいて、対象システムの脅威分析が行われる。ここで、システム仕様情報に含まれる抽象的な仕様情報は、概念設計段階のシステムでも得ることができる。よって、同じシステム仕様情報を用いて機能アプリケーションモデル情報及び脆弱性モデル情報を取得することにより、対象システムの機能アプリケーションモデル情報と事例システムの脆弱性モデル情報とを容易に比較することができ、対象システムに存在し得る脆弱性への脅威分析を行うことができる。従って、概念設計段階の対象システムに対して脅威分析を行うことができる。 According to this aspect, the functional application model information modeled by using the system specification information is acquired for the functional application included in the target system, and the vulnerability included in the case system is modeled by using the system specification information. Vulnerability model information is acquired. Then, threat analysis of the target system is performed based on the functional application model information and the vulnerability model information. Here, the abstract specification information included in the system specification information can also be obtained in the system at the conceptual design stage. Therefore, by acquiring the functional application model information and the vulnerability model information using the same system specification information, the functional application model information of the target system and the vulnerability model information of the case system can be easily compared. It is possible to perform threat analysis for vulnerabilities that may exist in the system. Therefore, threat analysis can be performed on the target system at the conceptual design stage.

前述の態様において、脆弱性モデル情報は、攻撃成立条件及び攻撃結果の情報を含み、第2取得ステップは、複数の脆弱性モデル情報を取得し、機能アプリケーションモデル情報が複数の脆弱性モデル情報のうちの少なくとも一つの攻撃条件を満たすときに、該脆弱性モデル情報の攻撃成立条件及び攻撃結果の情報に基づいて機能アプリケーションモデル情報の一部を更新する更新ステップをさらに含み、実行ステップは、更新された機能アプリケーションモデル情報と複数の脆弱性モデル情報とに基づいて対象システムの脅威分析を行うことを含んでもよい。 In the above-described embodiment, the vulnerability model information includes information on the attack establishment condition and the attack result, the second acquisition step acquires a plurality of vulnerability model information, and the functional application model information is a plurality of vulnerability model information. When at least one of the attack conditions is satisfied, the execution step further includes an update step of updating a part of the functional application model information based on the attack establishment condition and the attack result information of the vulnerability model information. It may include performing threat analysis of the target system based on the function application model information and a plurality of vulnerability model information.

この態様によれば、機能アプリケーションモデル情報が複数の脆弱性モデル情報のうちの少なくとも一つの攻撃条件を満たすときに、該脆弱性モデル情報の攻撃成立条件及び攻撃結果に基づいて、機能アプリケーションモデル情報の一部が更新される。これにより、当該機能アプリケーションに接続可能な機能アプリケーションに対する脅威分析が可能になり、複数の脆弱性を組み合わせた攻撃に対する対象システムの脅威分析を行うことができる。 According to this aspect, when the functional application model information satisfies at least one attack condition of the plurality of vulnerability model information, the functional application model information is based on the attack establishment condition and the attack result of the vulnerability model information. Is partly updated. This makes it possible to analyze threats to functional applications that can be connected to the functional application, and to perform threat analysis of the target system against attacks that combine multiple vulnerabilities.

前述の態様において、対象システムは、第1機能アプリケーションと、該第1機能アプリケーションと通信接続可能な第2機能アプリケーションとを含み、第1取得ステップは、第1機能アプリケーションの機能アプリケーションモデル情報と第2機能アプリケーションの機能アプリケーションモデル情報とを取得し、実行ステップは、第1機能アプリケーションの機能アプリケーションモデル情報及び第2機能アプリケーションの機能アプリケーションモデル情報と、脆弱性モデル情報とに基づいて前記対象システムの脅威分析を行うことを含んでもよい。 In the above aspect, the target system includes the first functional application and the second functional application capable of communicating with the first functional application, and the first acquisition step includes the functional application model information of the first functional application and the first. The functional application model information of the two functional applications is acquired, and the execution step is based on the functional application model information of the first functional application, the functional application model information of the second functional application, and the vulnerability model information of the target system. It may include performing a threat analysis.

この態様によれば、第1機能アプリケーションの機能アプリケーションモデル情報と、当該第1機能アプリケーションと通信接続可能な第2機能アプリケーションの機能アプリケーションモデル情報と、脆弱性モデル情報とに基づいて、対象システムの機能分析が行われる。これにより、通信接続可能な2つの機能アプリケーションの組合せに対する攻撃の可能性を分析することができる。 According to this aspect, the target system is based on the functional application model information of the first functional application, the functional application model information of the second functional application capable of communicating with the first functional application, and the vulnerability model information. Functional analysis is performed. This makes it possible to analyze the possibility of an attack on a combination of two functional applications that can be connected by communication.

前述の態様において、脅威分析を行った対象システムに対して利用料を算出する利用料算出ステップをさらに含んでもよい。 In the above aspect, the usage fee calculation step of calculating the usage fee for the target system for which the threat analysis has been performed may be further included.

この態様によれば、脅威分析を行った対象システムに対して利用料が算出される。これにより、サービス利用者に利用料を請求することで、利用料の一部をサービス利用者以外の者、例えば情報登録者に報酬として還元(フィードバック)することができる。 According to this aspect, the usage fee is calculated for the target system for which the threat analysis has been performed. As a result, by charging the service user for the usage fee, a part of the usage fee can be returned (feedback) as a reward to a person other than the service user, for example, an information registrant.

前述の態様において、脅威分析の結果、対象システムが脆弱性を含むときに、該脆弱性に対応する脆弱性モデル情報に対する報酬を利用料に基づいて算出する報酬算出ステップをさらに含んでもよい。 In the above aspect, when the target system includes a vulnerability as a result of threat analysis, a reward calculation step of calculating the reward for the vulnerability model information corresponding to the vulnerability based on the usage fee may be further included.

この態様によれば、脅威分析の結果、対象システムが脆弱性を含むときに、当該脆弱性に対応する脆弱性モデル情報に対する報酬が、対象システムの利用料に基づいて算出される。これにより、脆弱性モデル情報の情報登録者に登録のインセンティブを与えることができる。従って、登録と利用のサイクルがうまく回転し、脅威分析のサービス事業が継続的事業として成立することできる。 According to this aspect, when the target system contains a vulnerability as a result of threat analysis, the reward for the vulnerability model information corresponding to the vulnerability is calculated based on the usage fee of the target system. As a result, an incentive for registration can be given to the information registrant of the vulnerability model information. Therefore, the cycle of registration and use can be rotated well, and the threat analysis service business can be established as a continuous business.

本発明の他の態様に係る脅威分析プログラムは、コンピュータに実行させる脅威分析プログラムであって、対象システムに含まれる機能アプリケーションについて、システムの仕様を規定するためのシステム仕様情報を用いてモデル化した機能アプリケーションモデル情報を取得する第1取得ステップと、事例システムに含まれる脆弱性についてシステム仕様情報を用いてモデル化した脆弱性モデル情報を取得する第2取得ステップと、機能アプリケーションモデル情報と脆弱性モデル情報とに基づいて対象システムの脅威分析を行う実行ステップと、を含む。 The threat analysis program according to another aspect of the present invention is a threat analysis program to be executed by a computer, and the functional application included in the target system is modeled by using the system specification information for defining the system specifications. The first acquisition step to acquire the functional application model information, the second acquisition step to acquire the vulnerability model information modeled using the system specification information about the vulnerabilities contained in the case system, and the functional application model information and vulnerabilities. Includes execution steps to perform threat analysis of the target system based on model information.

この態様によれば、対象システムに含まれる機能アプリケーションについて、システム仕様情報を用いてモデル化した機能アプリケーションモデル情報が取得され、事例システムに含まれる脆弱性について、システム仕様情報を用いてモデル化した脆弱性モデル情報が取得される。そして、機能アプリケーションモデル情報と脆弱性モデル情報とに基づいて、対象システムの脅威分析が行われる。ここで、システム仕様情報に含まれる抽象的な仕様情報は、概念設計段階のシステムでも得ることができる。よって、同じシステム仕様情報を用いて機能アプリケーションモデル情報及び脆弱性モデル情報を取得することにより、対象システムの機能アプリケーションモデル情報と事例システムの脆弱性モデル情報とを容易に比較することができ、対象システムに存在し得る脆弱性への脅威分析を行うことができる。従って、概念設計段階の対象システムに対して脅威分析を行うことができる。 According to this aspect, the functional application model information modeled by using the system specification information is acquired for the functional application included in the target system, and the vulnerability included in the case system is modeled by using the system specification information. Vulnerability model information is acquired. Then, threat analysis of the target system is performed based on the functional application model information and the vulnerability model information. Here, the abstract specification information included in the system specification information can also be obtained in the system at the conceptual design stage. Therefore, by acquiring the functional application model information and the vulnerability model information using the same system specification information, the functional application model information of the target system and the vulnerability model information of the case system can be easily compared. It is possible to perform threat analysis for vulnerabilities that may exist in the system. Therefore, threat analysis can be performed on the target system at the conceptual design stage.

本発明によれば、概念設計段階の対象システムに対して脅威分析を行うことのできる脅威分析装置、脅威分析方法、及び脅威分析プログラムを提供することができる。 According to the present invention, it is possible to provide a threat analysis device, a threat analysis method, and a threat analysis program capable of performing threat analysis on a target system in the conceptual design stage.

図1は、本発明の第1実施形態に係る脅威分析装置の物理構成を示すブロック図である。FIG. 1 is a block diagram showing a physical configuration of the threat analyzer according to the first embodiment of the present invention. 図2は、本発明の第1実施形態に係る脅威分析装置の機能構成を示すブロック図である。FIG. 2 is a block diagram showing a functional configuration of the threat analyzer according to the first embodiment of the present invention. 図3は、コネクティッドカーシステムのシステム仕様情報を示す図である。FIG. 3 is a diagram showing system specification information of the connected car system. 図4は、コネクティッドカーシステムの機能ブロック定義情報を示す図である。FIG. 4 is a diagram showing functional block definition information of the connected car system. 図5は、車両電子制御機能アプリケーションの機能アプリケーションモデル情報を示す図である。FIG. 5 is a diagram showing functional application model information of the vehicle electronic control function application. 図6は、車両通信制御機能アプリケーションの機能アプリケーションモデル情報を示す図である。FIG. 6 is a diagram showing functional application model information of the vehicle communication control function application. 図7は、車両情報表示機能アプリケーションの機能アプリケーションモデル情報を示す図である。FIG. 7 is a diagram showing functional application model information of the vehicle information display function application. 図8は、Web情報表示機能アプリケーションの機能アプリケーションモデル情報を示す図である。FIG. 8 is a diagram showing functional application model information of the Web information display function application. 図9は、Web情報サーバ機能アプリケーションの機能アプリケーションモデル情報を示す図である。FIG. 9 is a diagram showing functional application model information of the Web information server functional application. 図10は、コネクティッドカーシステムのシステム構成要素関係情報を示す図である。FIG. 10 is a diagram showing system component relationship information of the connected car system. 図11は、[Webサーバの偽装]の脆弱性モデル情報を示す図である。FIG. 11 is a diagram showing vulnerability model information of [Web server impersonation]. 図12は、[Webブラウザで任意のシェルコード実行]の脆弱性モデル情報1200を示す図である。FIG. 12 is a diagram showing vulnerability model information 1200 of [execution of arbitrary shellcode in a Web browser]. 図13は、[Webブラウザアプリ実行プロセスの権限昇格]の脆弱性モデル情報1300を示す図である。FIG. 13 is a diagram showing vulnerability model information 1300 of [authority promotion of Web browser application execution process]. 図14は、脅威分析処理のフローチャートである。FIG. 14 is a flowchart of the threat analysis process. 図15は、脆弱アプリケーション検索処理のフローチャートである。FIG. 15 is a flowchart of the vulnerable application search process. 図16は、Web情報表示機能アプリケーションの機能アプリケーションモデル情報に対する脆弱性モデル情報のマッチング結果を示す図である。FIG. 16 is a diagram showing a matching result of vulnerability model information with respect to the functional application model information of the Web information display function application. 図17は、Web情報サーバ機能アプリケーションの機能アプリケーションモデル情報に対する脆弱性モデル情報のマッチング結果を示す図である。FIG. 17 is a diagram showing a matching result of vulnerability model information with respect to the functional application model information of the Web information server function application. 図18は、脆弱性攻撃後の機能アプリケーションの属性値の関係を示す図である。FIG. 18 is a diagram showing the relationship between the attribute values of the functional application after the vulnerability attack. 図19は、攻撃経路ツリーを示す図である。FIG. 19 is a diagram showing an attack route tree. 図20は、本発明の第2実施形態に係る脅威分析装置の物理構成を示すブロック図である。FIG. 20 is a block diagram showing a physical configuration of the threat analyzer according to the second embodiment of the present invention. 図21は、本発明の第2実施形態に係る脅威分析装置の機能構成を示すブロック図である。FIG. 21 is a block diagram showing a functional configuration of the threat analyzer according to the second embodiment of the present invention. 図22は、対象システム管理テーブルを示す図である。FIG. 22 is a diagram showing a target system management table. 図23は、脆弱性事例情報管理テーブルを示す図である。FIG. 23 is a diagram showing a vulnerability case information management table. 図24は、脆弱性事例情報登録処理のフローチャートである。FIG. 24 is a flowchart of the vulnerability case information registration process. 図25は、脅威分析サービス管理処理のフローチャートである。FIG. 25 is a flowchart of the threat analysis service management process. 図26は、課金情報管理処理のフローチャートである。FIG. 26 is a flowchart of the billing information management process.

以下に本発明の実施形態を説明する。以下の図面の記載において、同一又は類似の構成要素は同一又は類似の符号で表している。図面は例示であり、各部の寸法や形状は模式的なものであり、本発明の技術的範囲を当該実施形態に限定して解するべきではない。 An embodiment of the present invention will be described below. In the description of the drawings below, the same or similar components are represented by the same or similar reference numerals. The drawings are examples, and the dimensions and shapes of each part are schematic, and the technical scope of the present invention should not be limited to the embodiment.

[第1実施形態]
図1から図19を用いて本発明の第1実施形態に係る脅威分析装置、脅威分析方法、及び脅威分析プログラムについて説明する。
[First Embodiment]
The threat analysis apparatus, the threat analysis method, and the threat analysis program according to the first embodiment of the present invention will be described with reference to FIGS. 1 to 19.

最初に、図1及び図2を参照しつつ、脅威分析装置100の構成について説明する。ここで、図1は、本発明の第1実施形態に係る脅威分析装置100の物理構成を示すブロック図である。図2は、本発明の第1実施形態に係る脅威分析装置100の機能構成を示すブロック図である。 First, the configuration of the threat analyzer 100 will be described with reference to FIGS. 1 and 2. Here, FIG. 1 is a block diagram showing a physical configuration of the threat analyzer 100 according to the first embodiment of the present invention. FIG. 2 is a block diagram showing a functional configuration of the threat analyzer 100 according to the first embodiment of the present invention.

図1に示すように、脅威分析装置100は、バス101と、バス101に接続された中央情報処理装置(以下、「CPU」という)102、入出力プロセッサ(以下、「IOP」という)103、及び主記憶装置107と、を備える。脅威分析装置100は、例えば、ユーザUが対話形式で使用する通常のコンピュータである。 As shown in FIG. 1, the threat analyzer 100 includes a bus 101, a central information processing unit (hereinafter referred to as “CPU”) 102 connected to the bus 101, and an input / output processor (hereinafter referred to as “IOP”) 103. And a main storage device 107. The threat analyzer 100 is, for example, a normal computer used interactively by the user U.

IOP103は、ユーザUと脅威分析装置100がやり取りするデータを入出力する表示装置104及び入力装置105に接続されている。また、IOP103は、大容量の二次記憶装置106に接続されている。さらに、IOP103は、必要に応じて主記憶装置107との間でデータやプログラムのロードや退避を実行する。 The IOP 103 is connected to a display device 104 and an input device 105 that input / output data exchanged between the user U and the threat analysis device 100. Further, the IOP 103 is connected to the large-capacity secondary storage device 106. Further, the IOP 103 loads and saves data and programs to and from the main storage device 107 as needed.

主記憶装置107には、脅威分析処理S1400及び脆弱アプリケーション検索処理S1500と、脅威分析の対象となるシステムの設計情報(以下、「対象システム設計情報120」という)と、脆弱性事例情報130と、システム仕様情報140と、脅威分析結果情報1900及び攻撃経路ツリー1950と、が格納され、記憶されている。 The main memory 107 includes a threat analysis process S1400, a vulnerability application search process S1500, system design information subject to threat analysis (hereinafter referred to as “target system design information 120”), vulnerability case information 130, and information. The system specification information 140, the threat analysis result information 1900, and the attack route tree 1950 are stored and stored.

対象システム設計情報120は、機能ブロック定義情報400と、機能アプリケーションモデル情報500,600,700,800,900(以下、「500〜900」と記す)と、システム構成要素関係情報1000と、を含んで構成される。 The target system design information 120 includes functional block definition information 400, functional application model information 500, 600, 700, 800, 900 (hereinafter referred to as “500 to 900”), and system component relationship information 1000. Consists of.

機能ブロック定義情報400は、対象システムの構成及び機能の割当てを示すためのものである。具体的には、機能ブロック定義情報400は、対象システムを構成するハードウェア及びソフトウェアについて、ハードウェアのハードブロックと、当該システムのソフトウェア、例えばオペレーティングシステム(以下、「OS」という)、Webブラウザ、アプリケーション等、との相互関係を規定した情報である。機能ブロック定義情報400は、例えば、OMG(Object Management Group)が策定したシステム記述言語Systems Modeling Language(SysML)のブロック定義図に相当する情報である。 The function block definition information 400 is for indicating the configuration of the target system and the allocation of functions. Specifically, the functional block definition information 400 describes the hardware and software constituting the target system, such as the hardware hard block of the hardware, the software of the system, for example, an operating system (hereinafter referred to as “OS”), a Web browser, and the like. Information that defines the mutual relationship with applications, etc. The functional block definition information 400 is, for example, information corresponding to a block definition diagram of the system description language Systems Modeling Language (SysML) formulated by OMG (Object Management Group).

機能アプリケーションモデル情報500〜900は、対象システムに含まれる機能アプリケーションについて、システム仕様情報140を用いてモデル化された情報である。機能アプリケーションモデル情報500〜900は、機能アプリケーションが備える様々な属性情報、例えば実行環境や入出力属性等を含む。 The functional application model information 500 to 900 is information modeled by using the system specification information 140 for the functional application included in the target system. The functional application model information 500 to 900 includes various attribute information included in the functional application, such as an execution environment and input / output attributes.

システム構成要素関係情報1000は、機能ブロック定義情報400に記載されたハードブロックと機能モジュールとの包含関係や接続関係を含む情報である。システム構成要素関係情報1000は、前述した包含関係や接続関係を、例えば表形式で表している。 The system component relationship information 1000 is information including the inclusion relationship and the connection relationship between the hard block and the function module described in the function block definition information 400. The system component relationship information 1000 represents the above-mentioned inclusion relationship and connection relationship in, for example, a table format.

脆弱性事例情報130は、脆弱性モデル情報1100,1200,1300(以下、「1100〜1300」と記す)を含んで構成される。 The vulnerability case information 130 includes vulnerability model information 1100, 1200, 1300 (hereinafter referred to as “1100 to 1300”).

脆弱性モデル情報1100〜1300は、既存のシステムであって、脆弱性への攻撃等を受けた事例のあるシステム(以下、「事例システム」という)に含まれる脆弱性について、システム仕様情報140を用いてモデル化した情報である。脆弱性モデル情報1100〜1300は、各脆弱性が備える様々な属性情報、例えば攻撃成立条件や攻撃結果等を含む。 Vulnerability model information 1100 to 1300 refers to system specification information 140 regarding vulnerabilities contained in an existing system that has a case of being attacked by a vulnerability (hereinafter referred to as "case system"). Information modeled using. Vulnerability model information 1100 to 1300 includes various attribute information included in each vulnerability, such as attack establishment conditions and attack results.

システム仕様情報140は、機能アプリケーションモデル情報500〜900及び脆弱性モデル情報1100〜1300を作成するためのものである。システム仕様情報140は、システムの仕様を規定するための抽象的な情報である。 The system specification information 140 is for creating functional application model information 500 to 900 and vulnerability model information 1100 to 1300. The system specification information 140 is abstract information for defining the system specifications.

脅威分析処理S1400及び脆弱アプリケーション検索処理S1500は、対象となるシステム(以下、「対象システム」という)の脅威分析を行うための処理である。脅威分析処理S1400及び脆弱アプリケーション検索処理S1500は、対象システム設計情報120及び脆弱性事例情報130を使用して、処理結果として脅威分析結果情報1900及び攻撃経路ツリーを出力する。 The threat analysis process S1400 and the vulnerable application search process S1500 are processes for performing threat analysis of a target system (hereinafter, referred to as “target system”). The threat analysis process S1400 and the vulnerability application search process S1500 use the target system design information 120 and the vulnerability case information 130 to output the threat analysis result information 1900 and the attack route tree as processing results.

図2に示すように、脅威分析装置100は、その機能構成として、第1取得部150と、第2取得部160と、更新部170と、実行部180と、を備える。 As shown in FIG. 2, the threat analysis device 100 includes a first acquisition unit 150, a second acquisition unit 160, an update unit 170, and an execution unit 180 as its functional configuration.

第1取得部150は、対象システムに含まれる機能アプリケーションについて、機能アプリケーションモデル情報500〜900を取得するように構成されている。第1取得部150は、対象システムが複数の機能アプリケーションを含む場合、機能アプリケーション毎に対応する機能アプリケーションモデル情報500〜900を取得する。また、第1取得部150は、機能アプリケーションモデル情報500〜900を含む対象システム設計情報120の全てを、取得するように構成されていてもよい。 The first acquisition unit 150 is configured to acquire the functional application model information 500 to 900 for the functional application included in the target system. When the target system includes a plurality of functional applications, the first acquisition unit 150 acquires the functional application model information 500 to 900 corresponding to each functional application. Further, the first acquisition unit 150 may be configured to acquire all of the target system design information 120 including the functional application model information 500 to 900.

第1取得部150は、例えば、図1に示すバス101、CPU102、IOP103、入力装置105、二次記憶装置106、及び主記憶装置107で構成することが可能である。 The first acquisition unit 150 can be composed of, for example, the bus 101, the CPU 102, the IOP 103, the input device 105, the secondary storage device 106, and the main storage device 107 shown in FIG.

第2取得部160は、事例システムに含まれる脆弱性について脆弱性モデル情報1100〜1300を取得するように構成されている。第2取得部160は、複数の事例システムがある、事例システムが複数の脆弱性を含む、及びその両方の場合、脆弱性毎に対応する脆弱性モデル情報1100〜1300を取得する。また、第2取得部160は、脆弱性モデル情報1100〜1300を含む脆弱性事例情報130の全てを、取得するように構成されていてもよい。 The second acquisition unit 160 is configured to acquire vulnerability model information 1100 to 1300 for the vulnerability included in the case system. The second acquisition unit 160 acquires vulnerability model information 1100 to 1300 corresponding to each vulnerability when there are a plurality of case systems, the case system includes a plurality of vulnerabilities, or both. Further, the second acquisition unit 160 may be configured to acquire all of the vulnerability case information 130 including the vulnerability model information 1100 to 1300.

第2取得部160は、例えば、図1に示すバス101、CPU102、IOP103、入力装置105、二次記憶装置106、及び主記憶装置107で構成することが可能である。 The second acquisition unit 160 can be composed of, for example, the bus 101, the CPU 102, the IOP 103, the input device 105, the secondary storage device 106, and the main storage device 107 shown in FIG.

更新部170は、機能アプリケーションモデル情報500〜900を更新するためのものである。具体的には、更新部170は、機能アプリケーションモデル情報500〜900の一つが、脆弱性モデル情報1100〜1300の一つに含まれる攻撃成立条件を満たすときに、脆弱性モデル情報の攻撃成立条件及び攻撃結果に基づいて、攻撃成立条件を満たす当該機能アプリケーションモデル情報の一部を更新する。 The update unit 170 is for updating the functional application model information 500 to 900. Specifically, the update unit 170 sets the attack establishment condition of the vulnerability model information when one of the functional application model information 500 to 900 satisfies the attack establishment condition included in one of the vulnerability model information 1100-1300. And, based on the attack result, a part of the relevant functional application model information that satisfies the attack establishment condition is updated.

更新部170は、例えば、図1に示すバス101、CPU102、及び主記憶装置107で構成することが可能である。 The update unit 170 can be composed of, for example, the bus 101, the CPU 102, and the main storage device 107 shown in FIG.

実行部180は、対象システムの脅威分析を行うためのものである。具体的には、実行部180は、機能アプリケーションモデル情報500〜900と脆弱性モデル情報1100〜1300とに基づいて、対象システムの脅威分析を行うように構成されている。また、実行部180は、脅威分析装置100で実行される処理の全般を行うように構成されている。 The execution unit 180 is for performing threat analysis of the target system. Specifically, the execution unit 180 is configured to perform threat analysis of the target system based on the functional application model information 500 to 900 and the vulnerability model information 1100 to 1300. Further, the execution unit 180 is configured to perform all the processing executed by the threat analysis device 100.

実行部180は、更新部170が攻撃成立条件を満たす当該機能アプリケーションモデル情報の一部を更新したときに、更新された機能アプリケーションモデル情報と脆弱性モデル情報1100〜1300とに基づいて、対象システムの脅威分析を行うように構成されている。 When the update unit 170 updates a part of the functional application model information satisfying the attack establishment condition, the execution unit 180 updates the target system based on the updated functional application model information and vulnerability model information 1100 to 1300. It is configured to perform threat analysis of.

さらに、実行部180は、複数の機能アプリケーションモデル情報500〜900が、一の機能アプリケーションモデル情報と当該一の機能アプリケーションモデル情報と通信接続可能な他の機能アプリケーションモデル情報を含むときに、一の機能アプリケーションモデル情報及び他の機能アプリケーションモデル情報と脆弱性モデル情報1100〜1300とに基づいて、対象システムの脅威分析を行うように構成されている。なお、一の機能アプリケーションモデル情報は本発明の「第1機能アプリケーションモデル情報」の一例に相当し、他の機能アプリケーションモデル情報は本発明の「第2機能アプリケーションモデル情報」の一例に相当する。 Further, the execution unit 180 is one when the plurality of functional application model information 500 to 900 includes one functional application model information and other functional application model information that can be communicated with the one functional application model information. It is configured to perform threat analysis of the target system based on the functional application model information, other functional application model information, and the vulnerability model information 1100 to 1300. One functional application model information corresponds to an example of the "first functional application model information" of the present invention, and the other functional application model information corresponds to an example of the "second functional application model information" of the present invention.

実行部180は、例えば、図1に示すバス101、CPU102、表示装置104、及び主記憶装置107で構成することが可能である。 The execution unit 180 can be composed of, for example, the bus 101, the CPU 102, the display device 104, and the main storage device 107 shown in FIG.

以下の説明において、対象システムとして、米国テスラ・モーターズ社製の電気自動車に代表される、ネット接続が可能でかつ電子制御が多用される、いわゆるコネクティッドカーのシステム(以下、「コネクティッドカーシステム」という)を例に挙げて説明する。 In the following description, the target system is a so-called connected car system (hereinafter referred to as "connected car system"), which is typified by an electric vehicle manufactured by Tesla Motors of the United States and is capable of connecting to the Internet and frequently using electronic control. ”) As an example.

次に、図3を参照しつつ、脅威分析装置100で使用されるシステム仕様情報140について説明する。図3は、コネクティッドカーシステムのシステム仕様情報140を示す図である。 Next, the system specification information 140 used in the threat analyzer 100 will be described with reference to FIG. FIG. 3 is a diagram showing system specification information 140 of the connected car system.

図3に示すように、システム仕様情報140は、項番“1”の「機能アプリケーション名称」、項番“2”の「機能アプリケーション種別」、項番“3”の「実装ユニット名」、項番“4”の「実行条件」、項番“5”の「入力数n」(nは正の整数)、項番“6”の「第1入力〜第n入力」、項番“7”の「出力数m」(mは正の整数)、項番“8”の「第1出力〜第m出力」、項番“9”の「動作順序」、及び項番“10”の「機能」、のそれぞれの主属性に大別される。項番“4”の「実行条件」、項番“6”の「第1入力〜第n入力」、及び項番“8”の「第1出力〜第m出力」は、それぞれ複数の副属性を含んでいる。 As shown in FIG. 3, the system specification information 140 includes the "functional application name" of the item number "1", the "functional application type" of the item number "2", the "mounting unit name" of the item number "3", and the item. "Execution condition" of number "4", "number of inputs n" of item number "5" (n is a positive integer), "first input to nth input" of item number "6", item number "7" "Number of outputs m" (m is a positive integer), "1st output to mth output" of item number "8", "operation order" of item number "9", and "function" of item number "10" , ”, Is roughly divided into each main attribute. The "execution condition" of the item number "4", the "first input to the nth input" of the item number "6", and the "first output to the mth output" of the item number "8" each have a plurality of sub-attributes. Includes.

各々の属性の名称と属性値の内容は、図4に示す通りである。ここでは、後述する脅威分析処理S1400及び脆弱アプリケーション検索処理S1500で重要な役割を果たす属性のみを説明し、その他の属性はその説明を省略する。 The names of the respective attributes and the contents of the attribute values are as shown in FIG. Here, only the attributes that play an important role in the threat analysis process S1400 and the vulnerable application search process S1500, which will be described later, will be described, and the description of the other attributes will be omitted.

項番“4”の「実行条件」は、その機能アプリケーションを実行するために必要なソフトウェア環境を示す。同じ機能を備える機能アプリケーションであっても、実行に必要なOSが異なる場合、影響を受ける脆弱性の有無や脆弱性の種別が異なることがある。従って、ソフトウェア環境の情報は、機能アプリケーションの脆弱性を判断する上で、重要な情報である。 The “execution condition” in item number “4” indicates the software environment required to execute the functional application. Even functional applications with the same functions may have different vulnerabilities and types of vulnerabilities that are affected if the OS required for execution is different. Therefore, information on the software environment is important information for determining vulnerabilities in functional applications.

項番“6”の「第1入力〜第n入力」及び項番“8”の「第1出力〜第m出力」は、機能アプリケーションが外部と情報を交換するチャネルであり、攻撃を受けたり、逆に攻撃したりする経路となり得ることから、脆弱性の判断において重要な情報である。項番“6”の「第1入力〜第n入力」及び項番“8”の「第1出力〜第m出力」には、それぞれ、通信経路、通信プロトコル、アクセス制御の有無を表す権限チェック、通信内容等が属性値として記述される。 The "1st input to nth input" of the item number "6" and the "1st output to the mth output" of the item number "8" are channels for the functional application to exchange information with the outside, and are attacked. On the contrary, it can be a route to attack, so it is important information in determining vulnerability. The "first input to nth input" of item number "6" and the "first output to mth output" of item number "8" are authority checks indicating the communication path, communication protocol, and the presence or absence of access control, respectively. , Communication content, etc. are described as attribute values.

前述したように、システム仕様情報140は、システムの仕様を規定するための抽象的な情報である。このシステム仕様情報140を用いて、対象システムに含まれる機能アプリケーションは、モデル化されて機能アプリケーションモデル情報500〜900が作成される。 As described above, the system specification information 140 is abstract information for defining the system specifications. Using this system specification information 140, the functional application included in the target system is modeled and the functional application model information 500 to 900 is created.

ここで、対象システムが概念設計段階である場合、対象システムの仕様が抽象的にしか規定できていないことが想定される。一方、システム仕様情報140に含まれる抽象的な仕様情報は、概念設計段階のシステムでも得ることができる。よって、対象システムが概念設計段階であっても、当該対象システムに含まれる機能アプリケーションについて、システム仕様情報140を用いてモデル化した機能アプリケーションモデル情報500〜900を取得することができる。 Here, when the target system is in the conceptual design stage, it is assumed that the specifications of the target system can be defined only abstractly. On the other hand, the abstract specification information included in the system specification information 140 can also be obtained by the system at the conceptual design stage. Therefore, even if the target system is in the conceptual design stage, it is possible to acquire the functional application model information 500 to 900 modeled by using the system specification information 140 for the functional application included in the target system.

同様に、事例システムに含まれる脆弱性について、システム仕様情報140を用いて、モデル化した脆弱性モデル情報1100〜1300が取得される。このように、同じシステム仕様情報140を用いて機能アプリケーションモデル情報500〜900及び脆弱性モデル情報1100〜1300を取得することにより、対象システムの機能アプリケーションモデル情報500〜900と事例システムの脆弱性モデル情報1100〜1300とを容易に比較することができ、対象システムに存在し得る脆弱性への脅威分析を行うことができる。従って、概念設計段階の対象システムに対して脅威分析を行うことができる。 Similarly, for the vulnerability included in the case system, the modeled vulnerability model information 1100 to 1300 is acquired by using the system specification information 140. In this way, by acquiring the functional application model information 500 to 900 and the vulnerability model information 1100 to 1300 using the same system specification information 140, the functional application model information 500 to 900 of the target system and the vulnerability model of the case system are acquired. Information 1100 to 1300 can be easily compared, and threat analysis for vulnerabilities that may exist in the target system can be performed. Therefore, threat analysis can be performed on the target system at the conceptual design stage.

次に、図4から図10を参照しつつ、脅威分析装置100で使用される対象システム設計情報120について説明する。図4は、コネクティッドカーシステムの機能ブロック定義情報400を示す図である。図5は、車両電子制御機能アプリケーション417の機能アプリケーションモデル情報500を示す図である。図6は、車両通信制御機能アプリケーション428の機能アプリケーションモデル情報600を示す図である。図7は、車両情報表示機能アプリケーション439aの機能アプリケーションモデル情報700を示す図である。図8は、Web情報表示機能アプリケーション439bの機能アプリケーションモデル情報800を示す図である。図9は、Web情報サーバ機能アプリケーション449の機能アプリケーションモデル情報900を示す図である。図10は、コネクティッドカーシステムのシステム構成要素関係情報1000を示す図である。 Next, the target system design information 120 used in the threat analyzer 100 will be described with reference to FIGS. 4 to 10. FIG. 4 is a diagram showing functional block definition information 400 of the connected car system. FIG. 5 is a diagram showing functional application model information 500 of the vehicle electronic control function application 417. FIG. 6 is a diagram showing functional application model information 600 of the vehicle communication control function application 428. FIG. 7 is a diagram showing the functional application model information 700 of the vehicle information display function application 439a. FIG. 8 is a diagram showing the functional application model information 800 of the Web information display function application 439b. FIG. 9 is a diagram showing the functional application model information 900 of the Web information server functional application 449. FIG. 10 is a diagram showing system component relationship information 1000 of the connected car system.

図4に示すように、コネクティッドカーシステムの機能ブロック定義情報400は、ハードウェアブロックである、車両電子制御ユニット(ECU)410、車両通信ゲートウェイ(GW)420、コンソールディスプレイ(CD)430、及びWebサーバ(WS)440と、機能アプリケーションである、車両電子制御機能アプリケーション417、車両通信制御機能アプリケーション428、車両情報表示機能アプリケーション439a、Web情報表示機能アプリケーション439b、及びWeb情報サーバ機能アプリケーション449と、を含む。ここで、機能アプリケーションとは、ハードウェアブロックの主記憶に格納され、CPUで実行されて、ハードウェアブロックが必要とする機能的役割を実現するアプリケーションプログラムである。 As shown in FIG. 4, the functional block definition information 400 of the connected car system is a hardware block, that is, a vehicle electronic control unit (ECU) 410, a vehicle communication gateway (GW) 420, a console display (CD) 430, and A Web server (WS) 440 and functional applications such as a vehicle electronic control function application 417, a vehicle communication control function application 428, a vehicle information display function application 439a, a Web information display function application 439b, and a Web information server function application 449. including. Here, the functional application is an application program that is stored in the main memory of the hardware block, executed by the CPU, and realizes the functional role required by the hardware block.

また、機能ブロック定義情報400は、OS(RTOS)427と、OS(Linux(登録商標))437,347と、Webブラウザ(Webkit)438と、Webサーバ(httpd)448と、をさらに含む。 Further, the functional block definition information 400 further includes an OS (RTOS) 427, an OS (Linux (registered trademark)) 437, 347, a Web browser (Webkit) 438, and a Web server (httpd) 448.

ハードウェアブロックのうち、車両電子制御ユニット(ECU)410、車両通信ゲートウェイ(GW)420、及びコンソールディスプレイ(CD)430は、車両内部に搭載される。一方、インターネット上のWebサーバ(WS)440は、車両外部に設置される。Webサーバ(WS)440は、インターネットを介して車両のコンソールディスプレイ(CD)430に接続されている。 Among the hardware blocks, the vehicle electronic control unit (ECU) 410, the vehicle communication gateway (GW) 420, and the console display (CD) 430 are mounted inside the vehicle. On the other hand, the Web server (WS) 440 on the Internet is installed outside the vehicle. The web server (WS) 440 is connected to the vehicle console display (CD) 430 via the Internet.

各ハードウェアブロックは、それぞれが独立したコンピュータシステムである。例えば、車両電子制御ユニット(ECU)410は、バス411に接続されたCPU412、IOP413、及び主記憶装置414を含む。IOP413は、ハーネス(通信アダプタ)415及びCANBus通信アダプタ416に接続され、ブロック内外のデータ通信を制御する。車両電子制御ユニット(ECU)410は、通信経路であるCANBus450を介して車両通信ゲートウェイ(GW)420に接続されている。他のハードウェアブロックである車両通信ゲートウェイ(GW)420、コンソールディスプレイ(CD)430、及びWebサーバ(WS)440は、車両電子制御ユニット(ECU)410と同様の内部構成であるため、その説明を省略する。車両通信ゲートウェイ(GW)420は、通信経路であるEthernet(登録商標)451を介してコンソールディスプレイ(CD)430に接続されている。コンソールディスプレイ(CD)430は、通信経路であるWifi452を介してWebサーバ(WS)440に接続される。 Each hardware block is an independent computer system. For example, the vehicle electronic control unit (ECU) 410 includes a CPU 412, an IOP 413, and a main storage device 414 connected to the bus 411. The IOP 413 is connected to the harness (communication adapter) 415 and the CANBus communication adapter 416 to control data communication inside and outside the block. The vehicle electronic control unit (ECU) 410 is connected to the vehicle communication gateway (GW) 420 via CANBus 450, which is a communication path. The other hardware blocks, the vehicle communication gateway (GW) 420, the console display (CD) 430, and the Web server (WS) 440, have the same internal configuration as the vehicle electronic control unit (ECU) 410. Is omitted. The vehicle communication gateway (GW) 420 is connected to the console display (CD) 430 via Ethernet (registered trademark) 451 which is a communication path. The console display (CD) 430 is connected to the Web server (WS) 440 via Wifi 452, which is a communication path.

コネクティッドカーシステムのハードウェアブロックの機能的役割は、(第1機能)車両電子制御機能及び(第2機能)Web情報表示機能の2つに大別される。2つの機能は、ともに車両運転者とのインタフェースを司るコンソールディスプレイ(CD)430の車両情報表示機能アプリケーション439a、Web情報表示機能アプリケーション439bを起点として、実行される。 The functional roles of the hardware block of the connected car system are roughly divided into two (first function) vehicle electronic control function and (second function) Web information display function. Both of the two functions are executed starting from the vehicle information display function application 439a and the Web information display function application 439b of the console display (CD) 430 that controls the interface with the vehicle driver.

(第1機能)車両電子制御機能
コンソールディスプレイ(CD)430は、車両情報表示機能アプリケーション439aを実行する。車両情報表示機能アプリケーション439aは、入力された車両運転者の指定に従い、該当する車両制御コマンド、例えば、エンジンの動作状態のモニタリングや、ドアやリアゲートの開放のためのコマンド等を作成し、作成された車両制御コマンドをEthernet451を介して車両通信ゲートウェイ(GW)420に送信する。車両通信ゲートウェイ(GW)420の車両通信制御機能アプリケーション428は、受信した車両制御コマンドをECUコマンドにプロトコル変換し、変換されたECUコマンドをCANBus450を介して車両電子制御ユニット(ECU)410に送信する。車両電子制御ユニット(ECU)410の車両電子制御機能アプリケーション417は、受信したECUコマンドに従ってユニット内部コマンドを生成し、車両運転者の指定した車両制御を実行する。
(First Function) The vehicle electronic control function console display (CD) 430 executes the vehicle information display function application 439a. The vehicle information display function application 439a is created by creating a corresponding vehicle control command, for example, a command for monitoring the operating state of an engine, a command for opening a door or a rear gate, etc., according to an input vehicle driver's designation. The vehicle control command is transmitted to the vehicle communication gateway (GW) 420 via Ethernet 451. The vehicle communication control function application 428 of the vehicle communication gateway (GW) 420 converts the received vehicle control command into an ECU command, and transmits the converted ECU command to the vehicle electronic control unit (ECU) 410 via CANBus450. .. The vehicle electronic control function application 417 of the vehicle electronic control unit (ECU) 410 generates a unit internal command according to the received ECU command, and executes vehicle control specified by the vehicle driver.

(第2機能)Web情報表示機能
コンソールディスプレイ(CD)430は、Web情報表示機能アプリケーション439bを実行する。Web情報表示機能アプリケーション439bは、入力された車両運転者の指定に従い、該当するWebページ要求コマンド、例えばhttpプロトコルのgetコマンド等を作成し、作成されたWebページ要求コマンドをWifi452を介してWebサーバ(WS)440に送信する。Webサーバ(WS)440のWeb情報サーバ機能アプリケーション449は、受信したWebページ要求コマンドに従って該当するWebページを検索し、検索結果であるページ内容、例えば、HTMLコンテンツやJavascript(登録商標)コード等を、Webページ応答コマンドとしてコンソールディスプレイ(CD)430に返信する。
(Second function) Web information display function The console display (CD) 430 executes the Web information display function application 439b. The Web information display function application 439b creates a corresponding Web page request command, for example, a get command of the http protocol, etc. according to the input vehicle driver's specification, and sends the created Web page request command to the Web server via Wifi452. (WS) Send to 440. The Web information server function application 449 of the Web server (WS) 440 searches for the corresponding Web page according to the received Web page request command, and searches for the page content that is the search result, for example, HTML content or Javascript (registered trademark) code. , Reply to the console display (CD) 430 as a Web page response command.

図5に示すように、車両電子制御機能アプリケーション417の機能アプリケーションモデル情報500は、項番“1”の属性値に車両電子制御機能アプリケーション417の名称である「車両電子制御」が記述されている。項番“2”の属性値には、車両電子制御機能アプリケーション417のソフトウェア種別である「アプリケーション」が記述されている。項番“3”の属性値には、車両電子制御機能アプリケーション417の実装ユニットである「車両電子制御ユニット(ECU)」が記述されている。車両電子制御機能アプリケーション417は、実行時に、OS、Webブラウザ、及びWebサーバを必要としない。そのため、項番“4−1”、“4−2”、“4−3”の属性値には、それぞれ「−(なし)」が記述されている。一方、項番“4−4”の属性値には、アプリケーション実行時のプロセスモードである「ユーザ」が記述されている。 As shown in FIG. 5, in the functional application model information 500 of the vehicle electronic control function application 417, "vehicle electronic control", which is the name of the vehicle electronic control function application 417, is described in the attribute value of the item number "1". .. In the attribute value of the item number "2", "application" which is a software type of the vehicle electronic control function application 417 is described. In the attribute value of the item number "3", the "vehicle electronic control unit (ECU)" which is the mounting unit of the vehicle electronic control function application 417 is described. The vehicle electronic control function application 417 does not require an OS, a Web browser, and a Web server at the time of execution. Therefore, "-(none)" is described in each of the attribute values of the item numbers "4-1", "4-2", and "4-3". On the other hand, in the attribute value of the item number "4-4", the "user" which is the process mode at the time of executing the application is described.

車両電子制御機能アプリケーション417は1系統の入力を備える。第1入力の送信元は、車両通信ゲートウェイ(GW)420で実行される車両通信制御機能アプリケーション428である。第1入力のデータは、CANBus450を介して入力され、通信プロトコルはCANであり、権限チェックは行わない。また、通信内容は、アプリコマンドであり、ECU制御コマンドを含んでいる。そのため、項番“5”の属性値には「1」が、項番“6−1”の属性値には「車両通信制御」が、項番“6−2”の属性値には「アプリケーション」が、項番“6−3”の属性値には「車両通信ゲートウェイ(GW)」が、項番“6−4”の属性値には「CANBus」が、項番“6−5”の属性値には「CAN」が、項番“6−6”の属性値には「−(なし)」が、項番“6−7”の属性値には「アプリコマンド(ECU制御コマンド)」が、それぞれ記述されている。 The vehicle electronic control function application 417 includes one system of inputs. The source of the first input is the vehicle communication control function application 428 executed by the vehicle communication gateway (GW) 420. The data of the first input is input via CANBus450, the communication protocol is CAN, and the authority check is not performed. The communication content is an application command and includes an ECU control command. Therefore, the attribute value of the item number "5" is "1", the attribute value of the item number "6-1" is "vehicle communication control", and the attribute value of the item number "6-2" is "application". However, the attribute value of item number "6-3" is "Vehicle Communication Gateway (GW)", the attribute value of item number "6-4" is "CANBus", and the attribute value of item number "6-5" is. "CAN" is used for the attribute value, "-(none)" is used for the attribute value of item number "6-6", and "app command (ECU control command)" is used for the attribute value of item number "6-7". However, each is described.

車両電子制御機能アプリケーション417は1系統の出力を備える。第1出力の送信先は、同じ車両電子制御ユニット(ECU)410で実行される、ユニット内部モジュールの車両機器ハンドラ(図示省略)である。第1出力のデータは、ハーネス(図示省略)を介して出力され、通信プロトコルはユニット内部固有のものであり、権限チェックは行わない。また、通信内容は、ユニット内部コマンドであり、ECU制御コマンドを含んでいる。そのため、項番“7”の属性値には「1」が、項番“8−1”の属性値には「車両機器ハンドラ」が、項番“8−2”の属性値には「ユニット内部モジュール」が、項番“8−3”の属性値には「車両電子制御ユニット(ECU)」が、項番“8−4”の属性値には「ハーネス」が、項番“8−5”の属性値には「ユニット内部固有」が、項番“8−6”の属性値には「−(なし)」が、項番“8−7”の属性値には「ユニット内部固有コマンド(ECU制御コマンド)」が、それぞれ記述されている。 The vehicle electronic control function application 417 includes one system of outputs. The destination of the first output is a vehicle equipment handler (not shown) of the unit internal module executed by the same vehicle electronic control unit (ECU) 410. The data of the first output is output via a harness (not shown), the communication protocol is unique to the inside of the unit, and the authority check is not performed. The communication content is a command inside the unit and includes an ECU control command. Therefore, the attribute value of item number "7" is "1", the attribute value of item number "8-1" is "vehicle equipment handler", and the attribute value of item number "8-2" is "unit". "Internal module", "Vehicle electronic control unit (ECU)" for the attribute value of item number "8-3", "harness" for the attribute value of item number "8-4", item number "8-" The attribute value of "5" is "unique inside the unit", the attribute value of item number "8-6" is "-(none)", and the attribute value of item number "8-7" is "unique inside the unit". Commands (ECU control commands) ”are described respectively.

項番“9”の属性値に、車両電子制御機能アプリケーション417の動作順序である「第1入力を入力し、次に第1出力を出力する。」が記述されている。項番“10”の属性値に、車両電子制御機能アプリケーション417の機能内容である「第1入力にECU制御コマンドが入力され、第1出力からユニットコマンドを出力して、車両機器を制御する。」が記述されている。 In the attribute value of the item number "9", "the first input is input and then the first output is output", which is the operation order of the vehicle electronic control function application 417, is described. An ECU control command is input to the first input, which is a function content of the vehicle electronic control function application 417, and a unit command is output from the first output to control the vehicle equipment in the attribute value of the item number “10”. Is described.

図6に示すように、車両通信制御機能アプリケーション428の機能アプリケーションモデル情報600は、項番“1”の属性値に車両通信制御機能アプリケーション428の名称である「車両通信制御」が記述されている。項番“2”の属性値には、車両通信制御機能アプリケーション428のソフトウェア種別である「アプリケーション」が記述されている。項番“3”の属性値には、車両通信制御機能アプリケーション428の実装ユニットである「車両通信ゲートウェイ(GW)」が記述されている。車両通信制御機能アプリケーション428は、実行時に、OSとしてRTOSが必要であるが、Webブラウザ及びWebサーバを必要としない。そのため、項番“4−1”の属性値に「RTOS」が、項番“4−2”、“4−3”の属性値に「−(なし)」が、それぞれ記述されている。一方、項番“4−4”の属性値には、アプリケーション実行時のプロセスモードである「ユーザ」が記述されている。 As shown in FIG. 6, in the functional application model information 600 of the vehicle communication control function application 428, "vehicle communication control" which is the name of the vehicle communication control function application 428 is described in the attribute value of the item number "1". .. In the attribute value of the item number "2", "application" which is a software type of the vehicle communication control function application 428 is described. In the attribute value of the item number "3", the "vehicle communication gateway (GW)" which is the mounting unit of the vehicle communication control function application 428 is described. The vehicle communication control function application 428 requires an RTOS as an OS at the time of execution, but does not require a Web browser and a Web server. Therefore, "RTOS" is described in the attribute value of the item number "4-1", and "-(none)" is described in the attribute value of the item numbers "4-2" and "4-3". On the other hand, in the attribute value of the item number "4-4", the "user" which is the process mode at the time of executing the application is described.

車両通信制御機能アプリケーション428は1系統の入力を備える。第1入力の送信元は、コンソールディスプレイ(CD)430で実行される、Webブラウザアプリケーションの車両情報表示機能アプリケーション439aである。第1入力のデータは、Ethernet451を介して入力され、通信プロトコルはUDP/IP(Port3500)であり、権限チェックは行わない。また、通信内容は、アプリコマンドであり、ECU制御コマンド(要求)を含んでいる。そのため、項番“5”の属性値には「1」が、項番“6−1”の属性値には「車両情報表示」が、項番“6−2”の属性値には「Webブラウザアプリケーション」が、項番“6−3”の属性値には「コンソールディスプレイ(CD)」が、項番“6−4”の属性値には「Ethernet」が、項番“6−5”の属性値には「UDP/IP(Port3500)」が、項番“6−6”の属性値には「−(なし)」が、項番“6−7”の属性値には「アプリコマンド(ECU制御コマンド(要求))」が、それぞれ記述されている。 The vehicle communication control function application 428 comprises one system of inputs. The source of the first input is the vehicle information display function application 439a of the Web browser application executed on the console display (CD) 430. The data of the first input is input via Ethernet451, the communication protocol is UDP / IP (Port3500), and the authority check is not performed. In addition, the communication content is an application command and includes an ECU control command (request). Therefore, the attribute value of the item number "5" is "1", the attribute value of the item number "6-1" is "vehicle information display", and the attribute value of the item number "6-2" is "Web". "Browser application" has "console display (CD)" for the attribute value of item number "6-3", "Ethernet" for the attribute value of item number "6-4", and item number "6-5". "UDP / IP (Port3500)" is the attribute value of, "-(none)" is the attribute value of item number "6-6", and "app command" is the attribute value of item number "6-7". (ECU control command (request)) ”is described respectively.

車両通信制御機能アプリケーション428は1系統の出力を備える。第1出力の送信先は、車両電子制御ユニット(ECU)410で実行される、車両電子制御機能アプリケーション417である。第1出力のデータは、CANBus450を介して出力され、通信プロトコルはCANであり、権限チェックは行わない。また、通信内容は、アプリコマンドであり、ECU制御コマンド(要求)を含んでいる。そのため、項番“7”の属性値には「1」が、項番“8−1”の属性値には「車両電子制御」が、項番“8−2”の属性値には「アプリケーション」が、項番“8−3”の属性値には「車両電子制御ユニット(ECU)」が、項番“8−4”の属性値には「CANBus」が、項番“8−5”の属性値には「CAN」が、項番“8−6”の属性値には「−(なし)」が、項番“8−7”の属性値には「アプリコマンド(ECU制御コマンド(要求))」が、それぞれ記述されている。 The vehicle communication control function application 428 includes one system of outputs. The destination of the first output is the vehicle electronic control function application 417 executed by the vehicle electronic control unit (ECU) 410. The data of the first output is output via CANBus450, the communication protocol is CAN, and the authority check is not performed. In addition, the communication content is an application command and includes an ECU control command (request). Therefore, the attribute value of the item number "7" is "1", the attribute value of the item number "8-1" is "vehicle electronic control", and the attribute value of the item number "8-2" is "application". However, the attribute value of item number "8-3" is "Vehicle electronic control unit (ECU)", and the attribute value of item number "8-4" is "CAN Bus", item number "8-5". "CAN" is used for the attribute value of, "-(none)" is used for the attribute value of item number "8-6", and "app command (ECU control command (ECU control command)" is used for the attribute value of item number "8-7". Requests)) ”are described respectively.

項番“9”の属性値に、車両通信制御機能アプリケーション428の動作順序である「第1入力が入力され、次に第1出力を出力する。」が記述されている。項番“10”の属性値に、車両通信制御アプリケーション428の機能内容である「第1入力にECU制御コマンドが入力され、プロトコル変換して第1出力から出力する。」が記述されている。 In the attribute value of the item number "9", "the first input is input, then the first output is output", which is the operation order of the vehicle communication control function application 428, is described. In the attribute value of the item number "10", "the ECU control command is input to the first input, the protocol is converted, and the output is output from the first output", which is the function content of the vehicle communication control application 428, is described.

図7に示すように、車両情報表示機能アプリケーション439aの機能アプリケーションモデル情報700は、項番“1”の属性値に車両情報表示機能アプリケーション439aの名称である「車両情報表示」が記述されている。項番“2”の属性値には、車両情報表示機能アプリケーション439aのソフトウェア種別である「Webブラウザアプリケーション」が記述されている。項番“3”の属性値には、車両情報表示機能アプリケーション439aの実装ユニットである「コンソールディスプレイ(CD)」が記述されている。車両情報表示機能アプリケーション439aは、実行時に、OSとしてLinuxと、WebブラウザとしてWebkitとが必要であるが、Webサーバを必要としない。そのため、項番“4−1”の属性値に「Linux」が、項番“4−2” の属性値に「Webkit」が、“4−3”の属性値に「−(なし)」が、それぞれ記述されている。一方、項番“4−4”の属性値には、アプリケーション実行時のプロセスモードである「特権」が記述されている。 As shown in FIG. 7, in the functional application model information 700 of the vehicle information display function application 439a, "vehicle information display" which is the name of the vehicle information display function application 439a is described in the attribute value of the item number "1". .. In the attribute value of the item number "2", the "Web browser application" which is the software type of the vehicle information display function application 439a is described. In the attribute value of the item number "3", the "console display (CD)" which is the mounting unit of the vehicle information display function application 439a is described. The vehicle information display function application 439a requires Linux as an OS and Webkit as a Web browser at the time of execution, but does not require a Web server. Therefore, "Linux" is set as the attribute value of item number "4-1", "Webkit" is set as the attribute value of item number "4-2", and "-(none)" is set as the attribute value of "4-3". , Each is described. On the other hand, in the attribute value of the item number "4-4", "privilege" which is a process mode at the time of application execution is described.

車両情報表示機能アプリケーション439aは2系統の入力を備える。第1入力の送信元は、同じコンソールディスプレイ(CD)430で実行される、ユニット内部モジュールのユーザI/Fハンドラ(図示省略)である。第1入力のデータは、ユニット内部バス(図示省略)を介して入力され、通信プロトコルはユニット内部固有のものであり、権限チェックは行わない。また、通信内容は、ユニット内部コマンドであり、ユーザ入力コマンドを含んでいる。そのため、項番“5”の属性値には「2」が、項番“6−11”の属性値には「ユーザI/Fハンドラ」が、項番“6−12”の属性値には「ユニット内部モジュール」が、項番“6−13”の属性値には「コンソールディスプレイ(CD)」が、項番“6−14”の属性値には「ユニット内部バス」が、項番“6−15”の属性値には「ユニット内部固有」が、項番“6−16”の属性値には「−(なし)」が、項番“6−17”の属性値には「ユニット内部コマンド(ユーザ入力コマンド)」が、それぞれ記述されている。 The vehicle information display function application 439a includes two inputs. The source of the first input is a user I / F handler (not shown) of the unit internal module executed on the same console display (CD) 430. The data of the first input is input via the unit internal bus (not shown), the communication protocol is unique to the unit internal, and the authority check is not performed. The communication content is a command inside the unit and includes a user input command. Therefore, "2" is used for the attribute value of item number "5", "user I / F handler" is used for the attribute value of item number "6-11", and "user I / F handler" is used for the attribute value of item number "6-12". "Unit internal module", "Console display (CD)" for the attribute value of item number "6-13", "Unit internal bus" for the attribute value of item number "6-14", item number " The attribute value of "6-15" is "unique inside the unit", the attribute value of item number "6-16" is "-(none)", and the attribute value of item number "6-17" is "unit". Internal commands (user input commands) ”are described respectively.

第2入力には、後述する第1出力からECU制御コマンド(要求)が出力された結果、車両通信ゲートウェイ(GW)420から送信されるECU制御コマンド(応答)が入力される。ECU制御コマンド(応答)の詳細については、その説明を省略する。 As a result of outputting the ECU control command (request) from the first output described later, the ECU control command (response) transmitted from the vehicle communication gateway (GW) 420 is input to the second input. The details of the ECU control command (response) will be omitted.

車両情報表示機能アプリケーション439aは1系統の出力を備える。第1出力の送信先は、車両通信ゲートウェイ(GW)420で実行される、車両通信制御機能アプリケーション428である。第1出力のデータは、Ethernet451を介して出力され、通信プロトコルはUDP/IP(Port3500)であり、権限チェックは行わない。また、通信内容は、アプリコマンドであり、ECU制御コマンド(要求)を含んでいる。そのため、項番“7”の属性値には「1」が、項番“8−1”の属性値には「車両通信制御」が、項番“8−2”の属性値には「アプリケーション」が、項番“8−3”の属性値には「車両通信ゲートウェイ(GW)」が、項番“8−4”の属性値には「Ethernet」が、項番“8−5”の属性値には「UDP/IP(Port3500)」が、項番“8−6”の属性値には「−(なし)」が、項番“8−7”の属性値には「アプリコマンド(ECU制御コマンド(要求))」が、それぞれ記述されている。 The vehicle information display function application 439a includes one system of outputs. The destination of the first output is the vehicle communication control function application 428 executed by the vehicle communication gateway (GW) 420. The data of the first output is output via Ethernet 451 and the communication protocol is UDP / IP (Port3500), and the authority check is not performed. In addition, the communication content is an application command and includes an ECU control command (request). Therefore, the attribute value of the item number "7" is "1", the attribute value of the item number "8-1" is "vehicle communication control", and the attribute value of the item number "8-2" is "application". However, the attribute value of item number "8-3" is "Vehicle Communication Gateway (GW)", the attribute value of item number "8-4" is "Ethernet", and the attribute value of item number "8-5" is. "UDP / IP (Port3500)" is the attribute value, "-(none)" is the attribute value of item number "8-6", and "app command (app command) is the attribute value of item number" 8-7 ". ECU control command (request) ”is described respectively.

項番“9”の属性値に、車両情報表示機能アプリケーション439aの動作順序である「第1入力が入力され、次に第1出力を出力し、次に第2入力が入力される。」が記述されている。項番“10”の属性値に、車両情報表示機能アプリケーション439aの機能内容である「第1入力に車両機器の動作指示が入力され、ECU制御コマンド(要求)を作成して第1出力から出力し、第2入力にECU制御コマンド(応答)が入力され、車両情報を表示する。」が記述されている。 In the attribute value of item number "9", the operation order of the vehicle information display function application 439a, "the first input is input, then the first output is output, and then the second input is input." It has been described. In the attribute value of item number "10", the function content of the vehicle information display function application 439a is "The operation instruction of the vehicle equipment is input to the first input, and the ECU control command (request) is created and output from the first output. Then, an ECU control command (response) is input to the second input, and vehicle information is displayed. "

図8に示すように、Web情報表示機能アプリケーション439bの機能アプリケーションモデル情報800は、項番“1”の属性値にWeb情報表示機能アプリケーション439bの名称である「Web情報表示」が記述されている。項番“2”の属性値には、Web情報表示機能アプリケーション439bのソフトウェア種別である「Webブラウザアプリケーション」が記述されている。項番“3”の属性値には、Web情報表示機能アプリケーション439bの実装ユニットである「コンソールディスプレイ(CD)」が記述されている。車両情報表示機能アプリケーション439aは、実行時に、OSとしてLinuxと、WebブラウザとしてWebkitとが必要であるが、Webサーバを必要としない。そのため、項番“4−1”の属性値に「Linux」が、項番“4−2” の属性値に「Webkit」が、“4−3”の属性値に「−(なし)」が、それぞれ記述されている。一方、項番“4−4”の属性値には、アプリケーション実行時のプロセスモードである「ユーザ」が記述されている。 As shown in FIG. 8, in the functional application model information 800 of the Web information display function application 439b, "Web information display" which is the name of the Web information display function application 439b is described in the attribute value of the item number "1". .. In the attribute value of the item number "2", the "Web browser application" which is the software type of the Web information display function application 439b is described. In the attribute value of item number "3", "console display (CD)" which is an implementation unit of the Web information display function application 439b is described. The vehicle information display function application 439a requires Linux as an OS and Webkit as a Web browser at the time of execution, but does not require a Web server. Therefore, "Linux" is set as the attribute value of item number "4-1", "Webkit" is set as the attribute value of item number "4-2", and "-(none)" is set as the attribute value of "4-3". , Each is described. On the other hand, in the attribute value of the item number "4-4", the "user" which is the process mode at the time of executing the application is described.

Web情報表示機能アプリケーション439bは2系統の入力を備える。第1入力の送信元は、同じコンソールディスプレイ(CD)430で実行される、ユニット内部モジュールのユーザI/Fハンドラ(図示省略)である。第1入力のデータは、ユニット内部バス(図示省略)を介して入力され、通信プロトコルはユニット内部固有のものであり、権限チェックは行わない。また、通信内容は、ユニット内部コマンドであり、ユーザ入力コマンドを含んでいる。そのため、項番“5”の属性値には「2」が、項番“6−11”の属性値には「ユーザI/Fハンドラ」が、項番“6−12”の属性値には「ユニット内部モジュール」が、項番“6−13”の属性値には「コンソールディスプレイ(CD)」が、項番“6−14”の属性値には「ユニット内部バス」が、項番“6−15”の属性値には「ユニット内部固有」が、項番“6−16”の属性値には「−(なし)」が、項番“6−17”の属性値には「ユニット内部コマンド(ユーザ入力コマンド)」が、それぞれ記述されている。 The Web information display function application 439b includes two inputs. The source of the first input is a user I / F handler (not shown) of the unit internal module executed on the same console display (CD) 430. The data of the first input is input via the unit internal bus (not shown), the communication protocol is unique to the unit internal, and the authority check is not performed. The communication content is a command inside the unit and includes a user input command. Therefore, "2" is used for the attribute value of item number "5", "user I / F handler" is used for the attribute value of item number "6-11", and "user I / F handler" is used for the attribute value of item number "6-12". "Unit internal module", "Console display (CD)" for the attribute value of item number "6-13", "Unit internal bus" for the attribute value of item number "6-14", item number " The attribute value of "6-15" is "unique inside the unit", the attribute value of item number "6-16" is "-(none)", and the attribute value of item number "6-17" is "unit". Internal commands (user input commands) ”are described respectively.

第2入力には、後述する第1出力からhttp要求コマンドが出力された結果、Webサーバ(WS)440から送信されるhttp応答コマンド(応答)が入力される。第2入力の送信元は、Webサーバ(WS)440で実行される、WebサーバアプリケーションのWeb情報サーバ機能アプリケーション449である。第2入力のデータは、Wifi452を介して入力され、通信プロトコルはTCP/IPであり、権限チェックはページアドレス、パスワードに基づくTLS通信で行う。また、通信内容は、http応答コマンドであり、ページコンテンツであるHTMLデータと、Javascriptコードを含んでいる。そのため、項番“6−21”の属性値には「Web情報サーバ」が、項番“6−22”の属性値には「Webサーバアプリケーション」が、項番“6−23”の属性値には「Webサーバ(WS)」が、項番“6−24”の属性値には「Wifi」が、項番“6−25”の属性値には「TCP/IP」が、項番“6−26”の属性値には「ページアドレス、パスワードに基づくTLS通信」が、項番“6−27”の属性値には「http応答コマンド(HTML、Javascript)」が、それぞれ記述されている。 As a result of the http request command being output from the first output described later, the http response command (response) transmitted from the Web server (WS) 440 is input to the second input. The source of the second input is the Web information server function application 449 of the Web server application executed by the Web server (WS) 440. The second input data is input via Wifi452, the communication protocol is TCP / IP, and the authority check is performed by TLS communication based on the page address and password. In addition, the communication content is an http response command, which includes HTML data which is page content and Javascript code. Therefore, the attribute value of the item number "6-21" is "Web information server", the attribute value of the item number "6-22" is "Web server application", and the attribute value of the item number "6-23" is. "Web server (WS)", "Wifi" for the attribute value of item number "6-24", "TCP / IP" for the attribute value of item number "6-25", and item number " "TLS communication based on page address and password" is described in the attribute value of "6-26", and "http response command (HTML, Javascript)" is described in the attribute value of item number "6-27". ..

Web情報表示機能アプリケーション439bは1系統の出力を備える。第1出力の送信先は、Webサーバ(WS)440で実行される、WebサーバアプリケーションのWeb情報サーバ機能アプリケーション449である。第1出力のデータは、Wifi452を介して入力され、通信プロトコルはTCP/IPであり、権限チェックはページアドレス、パスワードに基づくTLS通信で行う。また、通信内容は、http要求コマンドであり、ページアドレスとパスワードを含んでいる。そのため、項番“7”の属性値には「1」が、項番“8−1”の属性値には「Web情報サーバ」が、項番“8−2”の属性値には「Webサーバアプリケーション」が、項番“8−3”の属性値には「Webサーバ(WS)」が、項番“8−4”の属性値には「Wifi」が、項番“8−5”の属性値には「TCP/IP」が、項番“8−6”の属性値には「ページアドレス、パスワードに基づくTLS通信」が、項番“8−7”の属性値には「http要求コマンド(ページアドレス、パスワード)」が、それぞれ記述されている。 The Web information display function application 439b has one output system. The destination of the first output is the Web information server function application 449 of the Web server application executed by the Web server (WS) 440. The data of the first output is input via Wifi452, the communication protocol is TCP / IP, and the authority check is performed by TLS communication based on the page address and password. The communication content is an http request command, which includes a page address and a password. Therefore, the attribute value of the item number "7" is "1", the attribute value of the item number "8-1" is "Web information server", and the attribute value of the item number "8-2" is "Web". "Server application" has "Web server (WS)" for the attribute value of item number "8-3", "Wifi" for the attribute value of item number "8-4", and item number "8-5". The attribute value of item number is "TCP / IP", the attribute value of item number "8-6" is "TLS communication based on page address and password", and the attribute value of item number "8-7" is "http". Request commands (page address, password) "are described respectively.

項番“9”の属性値に、Web情報表示機能アプリケーション439bの動作順序である「第1入力が入力され、次に第1出力を出力し、次に第2入力が入力される。」が記述されている。項番“10”の属性値に、Web情報表示機能アプリケーション439bの機能内容である「第1入力にWebページ取得要求が入力され、http要求コマンドを作成して第1出力から出力し、第2入力にhttp応答コマンド(応答)が入力され、Web情報を表示する。」が記述されている。 In the attribute value of item number "9", the operation order of the Web information display function application 439b, "the first input is input, then the first output is output, and then the second input is input." It has been described. In the attribute value of item number "10", the function content of the Web information display function application 439b is "A Web page acquisition request is input to the first input, an http request command is created and output from the first output, and the second The http response command (response) is input and the Web information is displayed. "

図9に示すように、Web情報サーバ機能アプリケーション449の機能アプリケーションモデル情報900は、項番“1”の属性値にWeb情報サーバ機能アプリケーション449の名称である「Web情報サーバ」が記述されている。項番“2”の属性値には、Web情報サーバ機能アプリケーション449のソフトウェア種別である「Webサーバアプリケーション」が記述されている。項番“3”の属性値には、Web情報サーバ機能アプリケーション449の実装ユニットである「Webサーバ(WS)」が記述されている。Web情報サーバ機能アプリケーション449は、実行時に、OSとしてLinuxと、Webサーバとしてhttpdとが必要であるが、Webブラウザを必要としない。そのため、項番“4−1”の属性値に「Linux」が、項番“4−2” の属性値に「−(なし)」が、“4−3”の属性値に「httpd」が、それぞれ記述されている。一方、項番“4−4”の属性値には、アプリケーション実行時のプロセスモードである「ユーザ」が記述されている。 As shown in FIG. 9, in the functional application model information 900 of the Web information server function application 449, "Web information server" which is the name of the Web information server function application 449 is described in the attribute value of the item number "1". .. In the attribute value of the item number "2", "Web server application" which is a software type of the Web information server function application 449 is described. In the attribute value of the item number "3", "Web server (WS)" which is an implementation unit of the Web information server function application 449 is described. The Web information server function application 449 requires Linux as the OS and httpd as the Web server at the time of execution, but does not require a Web browser. Therefore, "Linux" is set as the attribute value of item number "4-1", "-(none)" is set as the attribute value of item number "4-2", and "httpd" is set as the attribute value of "4-3". , Each is described. On the other hand, in the attribute value of the item number "4-4", the "user" which is the process mode at the time of executing the application is described.

Web情報サーバ機能アプリケーション449は1系統の入力を備える。第1入力の送信元は、コンソールディスプレイ(CD)430で実行される、Webブラウザ機能アプリケーションのWeb情報表示機能アプリケーション429bである。第1入力のデータは、Wifi452を介して入力され、通信プロトコルはTCP/IPであり、権限チェックはページアドレス、パスワードに基づくTLS通信で行う。また、通信内容は、http要求コマンドであり、ページアドレスとパスワードを含んでいる。そのため、項番“5”の属性値には「1」が、項番“6−1”の属性値には「Web情報表示」が、項番“6−2”の属性値には「Webサーバアプリケーション」が、項番“6−3”の属性値には「コンソールディスプレイ(CD)」が、項番“6−4”の属性値には「Wifi」が、項番“6−5”の属性値には「TCP/IP」が、項番“6−6”の属性値には「ページアドレス、パスワードに基づくTLS通信」が、項番“6−7”の属性値には「http要求コマンド(ページアドレス、パスワード)」が、それぞれ記述されている。 The Web information server function application 449 includes one input system. The source of the first input is the Web information display function application 429b of the Web browser function application executed on the console display (CD) 430. The data of the first input is input via Wifi452, the communication protocol is TCP / IP, and the authority check is performed by TLS communication based on the page address and password. The communication content is an http request command, which includes a page address and a password. Therefore, the attribute value of the item number "5" is "1", the attribute value of the item number "6-1" is "Web information display", and the attribute value of the item number "6-2" is "Web". "Server application" has "Console display (CD)" for the attribute value of item number "6-3", "Wifi" for the attribute value of item number "6-4", and item number "6-5". The attribute value of item number "TCP / IP" is "TCP / IP", the attribute value of item number "6-6" is "TLS communication based on page address and password", and the attribute value of item number "6-7" is "http". Request commands (page address, password) "are described respectively.

Web情報サーバ機能アプリケーション449は1系統の出力を備える。第1出力の送信先は、コンソールディスプレイ(CD)430で実行される、WebブラウザアプリケーションのWeb情報表示機能アプリケーション439bである。第1出力のデータは、Wifi452を介して入力され、通信プロトコルはTCP/IPであり、権限チェックはページアドレス、パスワードに基づくTLS通信で行う。また、通信内容は、http応答コマンドであり、ページコンテンツであるHTMLデータと、Javascriptコードを含んでいる。そのため、項番“7”の属性値には「1」が、項番“8−1”の属性値には「Web情報表示」が、項番“8−2”の属性値には「Webブラウザアプリケーション」が、項番“8−3”の属性値には「コンソールディスプレイ(CD)」が、項番“8−4”の属性値には「Wifi」が、項番“8−5”の属性値には「TCP/IP」が、項番“8−6”の属性値には「ページアドレス、パスワードに基づくTLS通信」が、項番“8−7”の属性値には「http応答コマンド(HTML、Javascript)」が、それぞれ記述されている。 The Web information server function application 449 has one output system. The destination of the first output is the Web information display function application 439b of the Web browser application executed on the console display (CD) 430. The data of the first output is input via Wifi452, the communication protocol is TCP / IP, and the authority check is performed by TLS communication based on the page address and password. In addition, the communication content is an http response command, which includes HTML data which is page content and Javascript code. Therefore, the attribute value of the item number "7" is "1", the attribute value of the item number "8-1" is "Web information display", and the attribute value of the item number "8-2" is "Web". "Browser application" has "Console display (CD)" for the attribute value of item number "8-3", "Wifi" for the attribute value of item number "8-4", and item number "8-5". "TCP / IP" is used for the attribute value of, "TLS communication based on page address and password" is used for the attribute value of item number "8-6", and "http" is used for the attribute value of item number "8-7". Response commands (HTML, Javascript) "are described respectively.

項番“9”の属性値に、Web情報サーバ機能アプリケーション449の動作順序である「第1入力が入力され、次に第1出力を出力する。」が記述されている。項番“10”の属性値に、Web情報サーバ機能アプリケーション449の機能内容である「第1入力にWebページ取得要求が入力され、httpページコンテンツを検索して、http応答コマンド(応答)を第1出力から出力する。」が記述されている。 In the attribute value of the item number "9", "the first input is input and then the first output is output", which is the operation order of the Web information server function application 449, is described. In the attribute value of item number "10", the function content of the Web information server function application 449, "A Web page acquisition request is input in the first input, the http page content is searched, and the http response command (response) is issued. Output from 1 output. ”Is described.

図10に示すように、コネクティッドカーシステムのシステム構成要素関係情報1000は、コネクティッドカーシステムの任意のアプリケーションについて、実行環境と機能連携に関する関係情報をまとめた情報である。本情報を参照することで、以下の種類Aから種類Dの情報を得ることができる。 As shown in FIG. 10, the system component relationship information 1000 of the connected car system is information summarizing the relationship information regarding the execution environment and the functional cooperation for any application of the connected car system. By referring to this information, information of type D can be obtained from the following types A.

種類A:アプリケーションを実行するために必要なソフトウェア環境(OS、Webサーバ、Webブラウザ)
例えば、項番“4”は、第1構成要素の「車両通信制御」という名の「アプリケーション」が、第2構成要素の「RTOS」という名の「OS」を、実行環境として必要とすることを示している。
Type A: Software environment (OS, web server, web browser) required to execute the application
For example, item number "4" means that the "application" named "vehicle communication control" of the first component requires the "OS" named "RTOS" of the second component as the execution environment. Is shown.

種類B:アプリケーションの存在するハードウェア環境(ハードウェアブロック)
例えば、項番“1”は、第1構成要素の「車両電子制御」という名の「アプリケーション」が、第2構成要素の「車両電子制御ユニット(ECU)」という名のハードウェアブロックに実装され、実行されることを示している。
Type B: Hardware environment in which the application exists (hardware block)
For example, in the item number "1", the "application" named "vehicle electronic control" of the first component is implemented in the hardware block named "vehicle electronic control unit (ECU)" of the second component. , Indicates that it will be executed.

種類C:機能モジュールの呼び出し関係
例えば、項番“2”は、第1構成要素の「車両電子制御」という名の「アプリケーション」が、第2構成要素の「車両通信制御」という名の「アプリケーション」と、機能的な呼び出し関係があることを示している。
Type C: Calling relationship of function module For example, in the item number "2", the "application" named "vehicle electronic control" of the first component is the "application" named "vehicle communication control" of the second component. ", Indicates that there is a functional calling relationship.

種類D:ハードウェアブロックの接続関係
例えば、項番“3”は、第1構成要素の「車両電子制御」という名の「ハードウェアブロック」が、第2構成要素の「車両通信ゲートウェイ(GW)」という名の「ハードウェアブロック」と、ネットワーク接続関係があることを示している。
Type D: Connection relationship of hardware block For example, in item number "3", the "hardware block" named "vehicle electronic control" of the first component is the "vehicle communication gateway (GW)" of the second component. It indicates that there is a network connection relationship with the "hardware block" named "".

システム構成要素関係情報1000は、機能ブロック定義情報400と、機能アプリケーションモデル情報500〜900に基づいて作成される情報である。そのため、システム構成要素関係情報1000は、機能ブロック定義情報400及び機能アプリケーションモデル情報500〜900が示す以上の新しい情報を提供するものではない。しかし、コネクティッドカーシステムをインプリメント(実装)する際の一事例として提示している。 The system component relationship information 1000 is information created based on the functional block definition information 400 and the functional application model information 500 to 900. Therefore, the system component-related information 1000 does not provide new information beyond that indicated by the functional block definition information 400 and the functional application model information 500 to 900. However, it is presented as an example of implementing a connected car system.

本実施形態では、図4において、図形で表した機能ブロック定義情報400の例を示したが、これに限定されるものではない。機能ブロック定義情報は、コンピュータ内の実際の情報格納形式は、図形である必要はなく、例えば、図10に示すような表形式や、リンク接続されたレコードデータや、XML(eXtensive Markup Language)のようなテキストデータで表現されていてもよい。 In the present embodiment, an example of the functional block definition information 400 represented by a graphic is shown in FIG. 4, but the present invention is not limited to this. The actual information storage format in the computer for the functional block definition information does not have to be a graphic, for example, a tabular format as shown in FIG. 10, linked record data, or XML (eXtensive Markup Language). It may be expressed by such text data.

また、説明の都合上、図形を用いているものは、実際のシステム実装にあたって、任意のデータ形式で実装することが可能である。例えば、接続関係や包含関係は、図10に示すような表形式のデータとして、関係データベースに格納することも可能である。 In addition, for convenience of explanation, those using figures can be implemented in any data format when actually implementing the system. For example, the connection relationship and the inclusion relationship can be stored in the relational database as tabular data as shown in FIG.

次に、図11から図13を参照しつつ、脅威分析装置100で使用される脆弱性事例情報130について説明する。図11は、[Webサーバの偽装]の脆弱性モデル情報1100を示す図である。図12は、[Webブラウザで任意のシェルコード実行]の脆弱性モデル情報1200を示す図である。図13は、[Webブラウザアプリ実行プロセスの権限昇格]の脆弱性モデル情報1300を示す図である。 Next, the vulnerability case information 130 used in the threat analyzer 100 will be described with reference to FIGS. 11 to 13. FIG. 11 is a diagram showing vulnerability model information 1100 of [Web server impersonation]. FIG. 12 is a diagram showing vulnerability model information 1200 of [execution of arbitrary shellcode in a Web browser]. FIG. 13 is a diagram showing vulnerability model information 1300 of [authority promotion of Web browser application execution process].

脆弱性事例情報130は、[Webサーバの偽装]の脆弱性モデル情報1100と、[Webブラウザで任意のシェルコード実行]の脆弱性モデル情報1200と、[Webブラウザアプリ実行プロセスの権限昇格]の脆弱性モデル情報1300と、を含む。 Vulnerability case information 130 includes vulnerability model information 1100 of [Web server impersonation], vulnerability model information 1200 of [Execution of arbitrary shellcode in Web browser], and [Elegation of authority of Web browser application execution process]. Vulnerability model information 1300 and is included.

図11に示すように、[Webサーバの偽装]の脆弱性モデル情報1100は、項番“1”の属性値に脆弱性モデル名称である「Webサーバの偽装」が記述されている。項番“10”の属性値に、脆弱性内容である「Webサーバのアドレスとパスワードが公開されているため、Webサーバの偽装設置が可能となる」が記述されている。 As shown in FIG. 11, in the vulnerability model information 1100 of [Web server impersonation], the vulnerability model name "Web server impersonation" is described in the attribute value of the item number "1". In the attribute value of item number "10", the vulnerability content "Since the address and password of the Web server are disclosed, it is possible to impersonate the Web server" is described.

ここで、項番“2”から項番“8”の属性値は、「攻撃成立条件」と「攻撃結果」という2種類の属性値を含んでいる。攻撃成立条件とは、当該脆弱性を悪用した攻撃が成り立つための条件である。すなわち、任意の機能アプリケーションが与えられた場合、そのアプリケーションの属性値が、ある脆弱性モデル情報の複数の攻撃成立条件と一致する場合、その機能モジュールは当該脆弱性を有しており、攻撃される可能性がある、と判定することができる。もう一つの属性値である攻撃結果は、ある機能アプリケーションが脆弱性を有しており、攻撃を受けた場合、その機能アプリケーションの特定の属性値が変化した結果を示している。 Here, the attribute values of the item numbers "2" to the item numbers "8" include two types of attribute values, "attack establishment condition" and "attack result". The attack establishment condition is a condition for establishing an attack that exploits the vulnerability. That is, when an arbitrary functional application is given, if the attribute value of the application matches a plurality of attack establishment conditions of certain vulnerability model information, the functional module has the vulnerability and is attacked. It can be determined that there is a possibility. The attack result, which is another attribute value, shows the result of a specific attribute value of a functional application being changed when a functional application is vulnerable to an attack.

項番“2”の攻撃成立条件の属性値に、当該脆弱性を有する機能アプリケーションの種別である「Webサーバアプリケーション」が記述されている。当該脆弱性が成り立つための実行条件は、OSがLinux(Version)であり、Webサーバがhttpd(Version)であり、プロセスモードがユーザモードである。そのため、項番“4−1”の攻撃成立条件の属性値に「Linux(Version)」が、項番“4−2”の攻撃成立条件の属性値に「httpd(Version)」が、項番“4−4”の攻撃成立条件の属性値に「ユーザ」が、それぞれ記述されている。 In the attribute value of the attack establishment condition of item number "2", "Web server application" which is a type of functional application having the vulnerability is described. The execution conditions for the vulnerability to be established are that the OS is Linux (Version), the Web server is httpd (Version), and the process mode is user mode. Therefore, "Linux (Version)" is the attribute value of the attack establishment condition of item number "4-1", and "httpd (Version)" is the attribute value of the attack establishment condition of item number "4-2". "User" is described in the attribute value of the attack establishment condition of "4-4".

当該脆弱性の入力は、1系統以上の入力のうち一つについて、通信プロトコルがTCP/IPであり、権限チェックがページアドレス, パスワード(公開)で行われ、通信内容がhttp要求コマンド(ぺージアドレス)である。そのため、項番“5”の攻撃成立条件の属性値に「n>1」(nは入力数であり、正の整数)が、項番“6−5”の攻撃成立条件の属性値に「TCP/IP」が、項番“6−6”の攻撃成立条件の属性値に「ページアドレス, パスワード(公開)」が、項番“6−7”の攻撃成立条件の属性値に「http要求コマンド(ぺージアドレス)」が、それぞれ記述されている。 For the input of the vulnerability, the communication protocol is TCP / IP, the authority check is performed by the page address and password (public), and the communication content is the http request command (page) for one or more inputs. Address). Therefore, "n> 1" (n is the number of inputs and is a positive integer) is set as the attribute value of the attack establishment condition of the item number "5", and "n> 1" is set as the attribute value of the attack establishment condition of the item number "6-5". "TCP / IP" has "page address, password (public)" in the attribute value of the attack establishment condition of item number "6-6", and "http request" in the attribute value of the attack establishment condition of item number "6-7". "Command (page address)" is described respectively.

ここで、項番“6−6”のパスワードが公開されているという攻撃成立条件は、脆弱性そのものを表している。これにより、項番“10”に示す通りに「Webサーバの偽装設置が可能」という結果を引き起こすことになる。 Here, the attack establishment condition that the password of the item number "6-6" is disclosed represents the vulnerability itself. As a result, as shown in the item number "10", the result that "the Web server can be impersonated and installed" is caused.

当該脆弱性の出力は、1系統以上の出力のうち一つについて、通信プロトコルがTCP/IPであり、権限チェックがページアドレス, パスワード(公開)で行われ、通信内容がhttp応答コマンド(HTML, Javascript)である。そのため、項番“7”の攻撃成立条件の属性値に「m>1」(mは出力数であり、正の整数)が、項番“8−5”の攻撃成立条件の属性値に「TCP/IP」が、項番“8−6”の攻撃成立条件の属性値に「ページアドレス, パスワード(公開)」が、項番“8−7”の攻撃成立条件の属性値に「http応答コマンド(HTML, Javascript)」が、それぞれ記述されている。 As for the output of the vulnerability, for one of the outputs of one or more systems, the communication protocol is TCP / IP, the authority check is performed by the page address and password (public), and the communication content is the http response command (HTML, Javascript). Therefore, "m> 1" (m is the number of outputs and is a positive integer) is set as the attribute value of the attack establishment condition of item number "7", and "m> 1" is set as the attribute value of the attack establishment condition of item number "8-5". "TCP / IP" is the attribute value of the attack establishment condition of item number "8-6", and "page address, password (public)" is the attribute value of the attack establishment condition of item number "8-7". Commands (HTML, Javascript) "are described respectively.

以上の攻撃条件が満たされた場合、当該脆弱性に対する攻撃の可能性が生じる。当該脆弱性の場合、攻撃の結果は、前述した通り「Webサーバの偽装設置が可能」となり、http応答コマンドとしてHTML, Javascriptに加えて、オペレーティングシステムのシステムコードであるShell code (任意内容)が出力可能となる。そのため、項番“8−7”の攻撃結果の属性値に「http応答コマンド(HTML, Javascript, Shell code (任意内容))」が記述されている。 If the above attack conditions are met, there is a possibility of an attack against the vulnerability. In the case of this vulnerability, the result of the attack is "It is possible to impersonate a Web server" as described above, and in addition to HTML and Javascript as http response commands, Shell code (arbitrary content), which is the system code of the operating system, is used. It becomes possible to output. Therefore, "http response command (HTML, Javascript, Shell code (arbitrary content))" is described in the attribute value of the attack result of the item number "8-7".

ここで、通常のWebブラウザであれば、偽サーバをアクセスして、Shell codeが含まれたhttp応答コマンドを入力したとしても、ブラウザ上では実行がされないので、偽サーバのアクセスによる被害は限られる。しかし、Webブラウザに他の脆弱性があり、当該脆弱性と組み合わせて攻撃が実行された場合、被害が拡大する問題がある。後述するように、脅威分析装置100は、複数の脆弱性の組み合わせた攻撃について脅威分析が可能であるという特徴的な利点を有する。 Here, if you use a normal Web browser, even if you access the fake server and enter the http response command that includes the Shell code, it will not be executed on the browser, so the damage caused by the fake server access is limited. .. However, there is a problem that the damage spreads when the Web browser has other vulnerabilities and the attack is executed in combination with the vulnerabilities. As will be described later, the threat analysis device 100 has a characteristic advantage that threat analysis can be performed on an attack in which a plurality of vulnerabilities are combined.

図12に示すように、[Webブラウザで任意シェルコード実行]の脆弱性モデル情報1200は、項番“1”の属性値に脆弱性モデル名称である「Webブラウザで任意シェルコード実行 」が記述されている。項番“10”の属性値に、脆弱性内容である「Webブラウザで、アドレスリークとUse After Freeの脆弱性により、任意のシェルコードが実行可能となる(CVE2011-3928及びCVE2011-0154)」が記述されている。ここで、CVEとは米国MITRE社が登録して公開している脆弱性事例情報データベースの採番であり、当該脆弱性が実際に発生した脆弱性事例であることを示している。 As shown in FIG. 12, in the vulnerability model information 1200 of [Execution of arbitrary shellcode in a Web browser], the vulnerability model name "Execution of arbitrary shellcode in a Web browser" is described in the attribute value of item number "1". Has been done. The attribute value of item number "10" is the vulnerability content "Any shellcode can be executed in a Web browser due to an address leak and a Use After Free vulnerability (CVE2011-3928 and CVE2011-0154)". Is described. Here, CVE is the numbering of the vulnerability case information database registered and published by MITER Corporation in the United States, and indicates that the vulnerability is a vulnerability case that actually occurred.

項番“2”の攻撃成立条件の属性値に、当該脆弱性を有する機能アプリケーションの種別である「Webブラウザアプリケーション」が記述されている。当該脆弱性が成り立つための実行条件は、OSがLinux(Version)であり、WebブラウザがWebkit(Version)であり プロセスモードがユーザモードである。そのため、項番“4−1”の攻撃成立条件の属性値に「Linux(Version)」が、項番“4−2”の攻撃成立条件の属性値に「Webkit(Version)」が、項番“4−4”の攻撃成立条件の属性値に「ユーザ」が、それぞれ記述されている。 In the attribute value of the attack establishment condition of item number "2", "Web browser application" which is a type of functional application having the vulnerability is described. The execution conditions for the vulnerability to be established are that the OS is Linux (Version), the Web browser is Webkit (Version), and the process mode is user mode. Therefore, "Linux (Version)" is the attribute value of the attack establishment condition of item number "4-1", and "Webkit (Version)" is the attribute value of the attack establishment condition of item number "4-2". "User" is described in the attribute value of the attack establishment condition of "4-4".

当該脆弱性の入力は、1系統以上の入力のうち一つについて、通信プロトコルがTCP/IPであり、通信内容がhttp応答コマンド(HTML, Javascript, Shell code(任意内容))である。そのため、項番“5”の攻撃成立条件の属性値に「n>=1」(nは入力数であり、正の整数)が、項番“6−5”の攻撃成立条件の属性値に「TCP/IP」が、項番“6−7”の攻撃成立条件の属性値に「[<]http応答コマンド(HTML, Javascript, Shell code(任意内容))」が、それぞれ記述されている。 For the input of the vulnerability, the communication protocol is TCP / IP and the communication content is an http response command (HTML, Javascript, Shell code (arbitrary content)) for one of the inputs of one or more systems. Therefore, "n> = 1" (n is the number of inputs and is a positive integer) in the attribute value of the attack establishment condition of the item number "5" becomes the attribute value of the attack establishment condition of the item number "6-5". In "TCP / IP", "[<] http response command (HTML, Javascript, Shell code (arbitrary content))" is described in the attribute value of the attack establishment condition of item number "6-7".

ここで、項番“6−7”の攻撃成立条件の先頭に付された[<]は、機能アプリケーションに当該脆弱性モデル情報を適用可能であるか否かを判定する際の条件の一部であることを示す。詳細な説明については、後述する。 Here, [<] added to the beginning of the attack establishment condition of item number "6-7" is a part of the condition for determining whether or not the vulnerability model information can be applied to the functional application. Indicates that. A detailed description will be described later.

当該脆弱性の出力は、1系統以上の出力のうち一つについて、通信プロトコルがTCP/IPであり、通信内容がhttp要求コマンド(ページアドレス)である。そのため、項番“7”の攻撃成立条件の属性値に「m>=1」(mは出力数であり、正の整数)が、項番“8−5”の攻撃成立条件の属性値に「TCP/IP」が、項番“8−7”の攻撃成立条件の属性値に「http要求コマンド(ページアドレス)」が、それぞれ記述されている。 The output of the vulnerability is that the communication protocol is TCP / IP and the communication content is the http request command (page address) for one of the outputs of one or more systems. Therefore, "m> = 1" (m is the number of outputs and is a positive integer) in the attribute value of the attack establishment condition of the item number "7" becomes the attribute value of the attack establishment condition of the item number "8-5". "TCP / IP" and "http request command (page address)" are described in the attribute value of the attack establishment condition of item number "8-7".

以上の攻撃条件が満たされた場合、当該脆弱性に対する攻撃の可能性が生じる。当該脆弱性の場合、攻撃の結果は、前述した通り「Webブラウザで、任意のシェルコードが入力され実行可能 」となり、加えて、新たな出力として、通信経路がEthernetで、通信プロトコルがUDP/IP (Port 3500)で、通信内容がアプリコマンド(任意内容)を出力することが可能となる。そのため、項番“7”の攻撃結果の属性値に「m+1」が、項番“11−4”の攻撃結果の属性値に「Ethernet」が、項番“11−5”の攻撃結果の属性値に「UDP/IP (Port 3500)」が、項番“11−7”の攻撃結果の属性値に「アプリコマンド(任意内容)」が、それぞれ記述されている。 If the above attack conditions are met, there is a possibility of an attack against the vulnerability. In the case of this vulnerability, the result of the attack is "Any shellcode can be entered and executed with a Web browser" as described above, and in addition, as a new output, the communication path is Ethernet and the communication protocol is UDP /. With IP (Port 3500), it is possible to output application commands (arbitrary content) for communication content. Therefore, "m + 1" is the attribute value of the attack result of item number "7", "Ethernet" is the attribute value of the attack result of item number "11-4", and the attribute of the attack result of item number "11-5". "UDP / IP (Port 3500)" is described in the value, and "App command (arbitrary content)" is described in the attribute value of the attack result of the item number "11-7".

なお、本実施形態では、具体的な攻撃時に「アプリコマンド(ECU制御コマンド(要求))」が使用されることになる。しかし、項番“11−7”の攻撃結果は「アプリコマンド(任意内容)」であるから、これを含むことは明らかである。 In this embodiment, the "app command (ECU control command (request))" is used at the time of a specific attack. However, since the attack result of item number "11-7" is "app command (arbitrary content)", it is clear that this is included.

図13に示すように、[Webブラウザアプリ実行プロセスの権限昇格]の脆弱性モデル情報1300は、項番“1”の属性値に脆弱性モデル名称である「Webブラウザアプリ実行プロセスの権限昇格」が記述されている。項番“10”の属性値に、脆弱性内容である「Linuxで、カーネルAPIの脆弱性により、プロセスの実行権限の昇格が可能となる(CVE2013-6282)」が記述されている。 As shown in FIG. 13, the vulnerability model information 1300 of [Web browser application execution process authority elevation] has the attribute value of item number "1" as the vulnerability model name "Web browser application execution process authority promotion". Is described. In the attribute value of item number "10", the vulnerability content "In Linux, a vulnerability in the kernel API makes it possible to elevate the execution authority of a process (CVE2013-6282)" is described.

当該脆弱性が成り立つための実行条件は、OSがLinux(Version)であり、プロセスモードがユーザモードである。そのため、項番“4−1”の攻撃成立条件の属性値に「Linux(Version)」が、項番“4−4”の攻撃成立条件の属性値に「ユーザ」が、それぞれ記述されている。 The execution conditions for this vulnerability to hold are that the OS is Linux (Version) and the process mode is user mode. Therefore, "Linux (Version)" is described in the attribute value of the attack establishment condition of the item number "4-1", and "user" is described in the attribute value of the attack establishment condition of the item number "4-4". ..

当該脆弱性の入力は、1系統以上の入力のうち一つについて、通信プロトコルがTCP/IPであり、通信内容がhttp応答コマンド(HTML, Javascript, Shell code(任意内容))である。そのため、項番“5”の攻撃成立条件の属性値に「n>=1」(nは入力数であり、正の整数)が、項番“6−5”の攻撃成立条件の属性値に「TCP/IP」が、項番“6−7”の攻撃成立条件の属性値に「[<]http応答コマンド(HTML, Javascript, Shell code(任意内容))」が、それぞれ記述されている。 For the input of the vulnerability, the communication protocol is TCP / IP and the communication content is an http response command (HTML, Javascript, Shell code (arbitrary content)) for one of the inputs of one or more systems. Therefore, "n> = 1" (n is the number of inputs and is a positive integer) in the attribute value of the attack establishment condition of the item number "5" becomes the attribute value of the attack establishment condition of the item number "6-5". In "TCP / IP", "[<] http response command (HTML, Javascript, Shell code (arbitrary content))" is described in the attribute value of the attack establishment condition of item number "6-7".

以上の攻撃条件が満たされた場合、当該脆弱性に対する攻撃の可能性が生じる。当該脆弱性の場合、攻撃の結果は、プロセスモードがユーザモードから特権モードになることである。そのため、項番“4−4”の攻撃結果の属性値に「特権」が記述されている。 If the above attack conditions are met, there is a possibility of an attack against the vulnerability. For this vulnerability, the result of the attack is that the process mode changes from user mode to privileged mode. Therefore, "privilege" is described in the attribute value of the attack result of the item number "4-4".

次に、図14から図19を参照しつつ、脅威分析装置100で実行される脅威分析処理S1400及び脆弱アプリケーション検索処理S1500について説明する。図14は、脅威分析処理S1400のフローチャートである。図15は、脆弱アプリケーション検索処理S1500のフローチャートである。図16は、Web情報表示機能アプリケーション439bの機能アプリケーションモデル情報800に対する脆弱性モデル情報1100,1200のマッチング結果を示す図である。図17は、Web情報サーバ機能アプリケーション449の機能アプリケーションモデル情報900に対する脆弱性モデル情報1100のマッチング結果を示す図である。図18は、脆弱性攻撃後の機能アプリケーションの属性値の関係を示す図である。図19は、攻撃経路ツリー1950を示す図である。 Next, the threat analysis process S1400 and the vulnerable application search process S1500 executed by the threat analysis device 100 will be described with reference to FIGS. 14 to 19. FIG. 14 is a flowchart of the threat analysis process S1400. FIG. 15 is a flowchart of the vulnerable application search process S1500. FIG. 16 is a diagram showing matching results of vulnerability model information 1100 and 1200 with respect to the functional application model information 800 of the Web information display function application 439b. FIG. 17 is a diagram showing a matching result of vulnerability model information 1100 with respect to the functional application model information 900 of the Web information server functional application 449. FIG. 18 is a diagram showing the relationship between the attribute values of the functional application after the vulnerability attack. FIG. 19 is a diagram showing an attack vector tree 1950.

実行部180が脅威分析処理S1400を実行する前に、あらかじめ、第1取得部150は機能アプリケーションモデル情報500〜900を取得し、第2取得部160は脆弱性モデル情報1100〜1300を取得しておく。また、機能アプリケーションモデル情報500〜900以外の対象システム設計情報120についても、あらかじめ取得するものとする。 Before the execution unit 180 executes the threat analysis process S1400, the first acquisition unit 150 acquires the functional application model information 500 to 900, and the second acquisition unit 160 acquires the vulnerability model information 1100 to 1300. deep. In addition, the target system design information 120 other than the functional application model information 500 to 900 shall be acquired in advance.

ユーザUによって脅威分析処理S1400が起動されると、図14に示すように、最初に、実行部180は機能ブロック定義情報400を表示する(S1401)。 When the threat analysis process S1400 is activated by the user U, the execution unit 180 first displays the functional block definition information 400 (S1401), as shown in FIG.

次に、実行部180は、ユーザUによって攻撃対象に指定された機能アプリケーションについて、対応する機能アプリケーションモデル情報500〜900を取得するとともに、ユーザ指定機能アプリケーションUAに設定する(S1402)。 Next, the execution unit 180 acquires the corresponding functional application model information 500 to 900 for the functional application designated as the attack target by the user U, and sets it in the user-specified functional application UA (S1402).

以下において、ユーザUによって車両電子制御機能アプリケーション417が攻撃対象に指定され、ユーザ指定機能アプリケーションUAに設定される場合を具体例として説明する。 In the following, a case where the vehicle electronic control function application 417 is designated as an attack target by the user U and set in the user-designated function application UA will be described as a specific example.

次に、実行部180は、分析結果出力用の脆弱アプリケーションリストVLに空(NULL)を設定する(S1403)。 Next, the execution unit 180 sets empty (NULL) in the vulnerable application list VL for outputting the analysis result (S1403).

次に、実行部180は、ユーザ指定機能アプリケーションUAについて、攻撃成立条件を満たす脆弱性モデル情報VIがあるか否かを判定する(S1404)。具体的には、実行部180は、ユーザ指定機能アプリケーションUAの機能アプリケーションモデル情報500〜900の属性値に一致する攻撃成立条件を含む脆弱性モデル情報VIがあるか否かを判定する。 Next, the execution unit 180 determines whether or not there is a vulnerability model information VI that satisfies the attack establishment condition for the user-specified function application UA (S1404). Specifically, the execution unit 180 determines whether or not there is a vulnerability model information VI including an attack establishment condition that matches the attribute values of the functional application model information 500 to 900 of the user-specified functional application UA.

判定の結果、ユーザ指定機能アプリケーションUAに対して攻撃成立条件を満たす脆弱性モデル情報VIがある場合、ユーザ指定機能アプリケーションUAは、当該脆弱性モデル情報VIの脆弱性を有すると考えられる。そのため、更新部170は、攻撃成立条件を満たす脆弱性モデル情報VIの攻撃成立条件及び攻撃結果に基づいて、ユーザ指定機能アプリケーションUAの機能アプリケーションモデル情報500〜900の一部を更新する(S1405)。具体的には、更新部170は、ユーザ指定機能アプリケーションUAの機能アプリケーションモデル情報500〜900の一部の属性値を、攻撃成立条件を満たす脆弱性モデル情報VIの攻撃成立条件及び攻撃結果の属性値に書き換える。 As a result of the determination, if there is a vulnerability model information VI that satisfies the attack establishment condition for the user-specified function application UA, it is considered that the user-specified function application UA has a vulnerability of the vulnerability model information VI. Therefore, the update unit 170 updates a part of the functional application model information 500 to 900 of the user-specified functional application UA based on the attack establishment condition and the attack result of the vulnerability model information VI that satisfies the attack establishment condition (S1405). .. Specifically, the update unit 170 sets some attribute values of the functional application model information 500 to 900 of the user-specified function application UA to the attack establishment condition and attack result attribute of the vulnerability model information VI that satisfies the attack establishment condition. Rewrite to value.

次に、実行部180は、ユーザ指定機能アプリケーションUAと、攻撃成立条件を満たす脆弱性モデル情報VIとを組にして、脆弱アプリケーションリストVLの先頭に追加する(S1406)。 Next, the execution unit 180 sets the user-specified function application UA and the vulnerability model information VI that satisfies the attack establishment condition, and adds them to the head of the vulnerability application list VL (S1406).

一方、ユーザ指定機能アプリケーションUAに対して攻撃成立条件を満たす脆弱性モデル情報VIがない場合、ユーザ指定機能アプリケーションUAは、脆弱性を有しないと考えられる。そのため、実行部180は、ユーザ指定機能アプリケーションUAと、攻撃成立条件を満たす脆弱性がないことを示す空(NULL)とを組にして、脆弱アプリケーションリストVLの先頭に追加する(S1407)。 On the other hand, if there is no vulnerability model information VI that satisfies the attack establishment condition for the user-specified function application UA, it is considered that the user-specified function application UA does not have a vulnerability. Therefore, the execution unit 180 adds the user-specified function application UA and the empty string (NULL) indicating that there is no vulnerability satisfying the attack establishment condition to the head of the vulnerable application list VL (S1407).

前述した具体例の場合、脆弱性モデル情報1100〜1300の攻撃成立条件のいずれも、車両電子制御機能アプリケーション417の機能アプリケーションモデル情報500の属性値と一致しない。よって、実行部180は、ステップS1407において車両電子制御機能アプリケーション417の名称と空(NULL)とを組にして脆弱アプリケーションリストVLの先頭に加える。この結果、脆弱アプリケーションリストVLは、以下のデータ(1)になる。
脆弱アプリケーションリストVL=
((車両電子制御機能アプリケーション417、NULL)) …(1)
In the case of the above-mentioned specific example, none of the attack establishment conditions of the vulnerability model information 1100 to 1300 match the attribute value of the functional application model information 500 of the vehicle electronic control function application 417. Therefore, the execution unit 180 adds the name of the vehicle electronic control function application 417 and the empty string (NULL) to the head of the vulnerable application list VL in step S1407. As a result, the vulnerable application list VL becomes the following data (1).
Vulnerable application list VL =
((Vehicle electronic control function application 417, NULL)) ... (1)

データ(1)は、車両電子制御機能アプリケーション417を攻撃目的対象に設定したが、脆弱性は見つからなかったことを示す。 Data (1) indicates that the vehicle electronic control function application 417 was set as an attack target, but no vulnerability was found.

次に、実行部180は、所定の引数で、図15に示す脆弱アプリケーション検索処理S1500を呼び出す(S1408)。所定の引数は、例えば、第1引数がユーザ指定機能アプリケーションUA、第2引数が脆弱アプリケーションリストVLである。脆弱アプリケーション検索処理S1500の結果、戻り値として脆弱アプリケーション検索処理結果リストFRVが返される。 Next, the execution unit 180 calls the vulnerable application search process S1500 shown in FIG. 15 with a predetermined argument (S1408). The predetermined arguments are, for example, the first argument is the user-specified function application UA, and the second argument is the vulnerable application list VL. As a result of the vulnerable application search process S1500, the vulnerable application search process result list FRV is returned as a return value.

前述した具体例の場合、第1引数のユーザ指定機能アプリケーションUAは、車両電子制御機能アプリケーション417である。一方、第2引数の脆弱アプリケーションリストVLは、前述したデータ(1)である。以下、これらの引数による脆弱アプリケーション検索処理S1500の呼び出しを<1回目の呼び出し>という。 In the case of the above-mentioned specific example, the user-specified function application UA of the first argument is the vehicle electronic control function application 417. On the other hand, the vulnerable application list VL of the second argument is the above-mentioned data (1). Hereinafter, the call of the vulnerable application search process S1500 using these arguments is referred to as <first call>.

脆弱アプリケーション検索処理S1500は、第1引数で指定された機能アプリケーションを攻撃目標に設定し、関連する機能アプリケーションに対する攻撃の試行が波及する場合に、どの機能アプリケーションのどのような脆弱性が攻撃されるか、つまり、脆弱性攻撃が波及する範囲を検索する処理である。脆弱アプリケーション検索処理S1500において、第1引数は、攻撃の目標点、つまり、脆弱性波及の検索の起点を規定する分析起点アプリケーションSPとして扱われ、第2引数は、処理呼び出しの時点までに実施された検索経路の履歴リストをリストする分析経路リストAPLとして扱われる。 Vulnerability application search process S1500 sets the functional application specified by the first argument as an attack target, and when an attack attempt on a related functional application spreads, what vulnerability of which functional application is attacked. In other words, it is a process to search the range where the vulnerability attack spreads. In the vulnerability application search process S1500, the first argument is treated as an analysis starting point application SP that defines the target point of the attack, that is, the starting point of the vulnerability spread search, and the second argument is executed by the time of the processing call. It is treated as an analysis route list APL that lists the history list of the search routes.

脆弱アプリケーション検索処理S1500の詳細な説明については、<1回目の呼び出し>の処理内容とともに、後述する。 A detailed description of the vulnerable application search process S1500 will be described later together with the process content of <first call>.

前述した具体例の場合、<1回目の呼び出し>の戻り値である脆弱アプリケーション検索処理結果リストFRVは、以下のデータ(2)になる。
脆弱アプリケーション検索処理結果リストFRV=
(((車両電子制御機能アプリケーション417、NULL)、
(車両通信制御機能アプリケーション428、NULL)、
(車両情報表示機能アプリケーション439a、NULL))、
((車両電子制御機能アプリケーション417、NULL)、
(車両通信制御機能アプリケーション428、NULL)、
(Web情報表示機能アプリケーション1961、脆弱性モデル情報1200、1300)、
(Web情報サーバ機能アプリケーション1962、脆弱性モデル情報1100)))…(2)
In the case of the above-mentioned specific example, the vulnerable application search processing result list FRV, which is the return value of <first call>, becomes the following data (2).
Vulnerable application search processing result list FRV =
(((Vehicle electronic control function application 417, NULL)),
(Vehicle communication control function application 428, NULL),
(Vehicle information display function application 439a, NULL)),
((Vehicle electronic control function application 417, NULL),
(Vehicle communication control function application 428, NULL),
(Web information display function application 1961, vulnerability model information 1200, 1300),
(Web information server function application 1962, vulnerability model information 1100))) ... (2)

次に、実行部180は、脆弱アプリケーション検索処理結果リストFRVと脆弱アプリケーションリストVLとを単一リストにマージして作成した脅威分析結果情報1900を主記憶装置107に格納して登録する(ステップ1409)。 Next, the execution unit 180 stores and registers the threat analysis result information 1900 created by merging the vulnerable application search processing result list FRV and the vulnerable application list VL into a single list in the main storage device 107 (step 1409). ).

前述した具体例の場合、脆弱アプリケーション検索処理結果リストFRVは前述したデータ(2)である。一方、脆弱アプリケーションリストVLは空(NULL)なので、脅威分析結果情報1900の値は、前述したデータ(2)となる。 In the case of the above-mentioned specific example, the vulnerable application search processing result list FRV is the above-mentioned data (2). On the other hand, since the vulnerable application list VL is empty (NULL), the value of the threat analysis result information 1900 is the above-mentioned data (2).

次に、実行部180は、脅威分析結果情報1900から図19に示す攻撃経路ツリー1950を作成して表示装置104に表示する(S1410)。詳細な説明は後述するが、図19に示す攻撃経路ツリー1950の構成は、前述したデータ(2)のリスト構造を反映している。 Next, the execution unit 180 creates the attack route tree 1950 shown in FIG. 19 from the threat analysis result information 1900 and displays it on the display device 104 (S1410). Although detailed description will be described later, the configuration of the attack route tree 1950 shown in FIG. 19 reflects the list structure of the above-mentioned data (2).

ステップS1411の後、CPU102は、脅威分析処理S1400を終了する。 After step S1411, the CPU 102 terminates the threat analysis process S1400.

以上の処理フローに示す通り、本願の脅威分析処理S1400では、対象システムの構成要素である機能アプリケーションの機能アプリケーションモデル情報500〜900を、脆弱性モデル情報1100〜1300と突き合わせながら、脅威分析を行うことにより、抜けや漏れのない高精度な脅威分析を実現する特徴を備えている。 As shown in the above processing flow, in the threat analysis process S1400 of the present application, threat analysis is performed while matching the functional application model information 500 to 900 of the functional application which is a component of the target system with the vulnerability model information 1100 to 1300. As a result, it has the feature of realizing highly accurate threat analysis without omissions or omissions.

ここで、前述のステップS1410で作成する攻撃経路ツリー1950について説明する。 Here, the attack vector tree 1950 created in step S1410 described above will be described.

図19に示すように、攻撃経路ツリー1950は、脅威分析結果情報1900の内容を視覚的に表示した図表である。攻撃経路ツリー1950には、コネクティッドカーシステムの既に説明済みの設計情報のうち、4個のハードウェアブロック410、420、430、440と、5個の機能アプリケーション417,428,439a、439b、449が含まれている。各機能アプリケーション417,428,439a、439b、449には、図5から図9に示した機能アプリケーションモデル情報500〜900から抽出された名称、機能、入力、及び出力が、記述されている。また、攻撃経路ツリー1950には、各機能アプリケーション417,428,439a、439b、449がネットワークを介して接続され、車両情報表示機能アプリケーション439a及びWeb情報表示機能アプリケーション439bが実現されていることを、視覚的に示している。図19の右下部分において、破線枠で囲まれた機能アプリケーションは、後述する脆弱性攻撃後の機能アプリケーションモデル情報の属性値の変化と、攻撃経路を示している。 As shown in FIG. 19, the attack route tree 1950 is a chart that visually displays the contents of the threat analysis result information 1900. The attack vector tree 1950 contains four hardware blocks 410, 420, 430, 440 and five functional applications 417,428,439a, 439b, 449, among the already described design information for the connected car system. It is included. In each functional application 417, 428, 439a, 439b, 449, names, functions, inputs, and outputs extracted from the functional application model information 500 to 900 shown in FIGS. 5 to 9 are described. Further, the attack route tree 1950 is connected to each functional application 417, 428, 439a, 439b, 449 via a network, and the vehicle information display function application 439a and the Web information display function application 439b are realized. It is shown visually. In the lower right part of FIG. 19, the functional application surrounded by the broken line frame shows the change of the attribute value of the functional application model information after the vulnerability attack described later and the attack route.

次に、脆弱アプリケーション検索処理S1500について説明する。 Next, the vulnerable application search process S1500 will be described.

脆弱アプリケーション検索処理S1500が起動されると、図15に示すように、最初に、実行部180は、結果出力用の検索結果リストRTに空(NULL)を設定する(S1501)。具体的には、CPU102は、検索結果リストRTに空(NULL)を設定する。 When the vulnerable application search process S1500 is started, as shown in FIG. 15, the execution unit 180 first sets the search result list RT for result output to empty (NULL) (S1501). Specifically, the CPU 102 sets the search result list RT to empty (NULL).

次に、実行部180は、システム構成要素関係情報1000を検索して第1引数の分析起点アプリケーションSPが含まれるハードウェアブロックを特定し、当該ハードウェアブロックに接続する隣接ハードウェアブロックの有無を判定する(S1502)。 Next, the execution unit 180 searches the system component relationship information 1000, identifies the hardware block including the analysis starting application SP of the first argument, and determines the presence or absence of the adjacent hardware block connected to the hardware block. Judgment (S1502).

ステップS1502の判定の結果、隣接ハードウェアブロックが有る場合、実行部180は、再びシステム構成要素関係情報1000を検索し、隣接ハードウェアブロック内の全ての機能アプリケーションを分析対象アプリケーションリストALに登録する(S1503)。 If there is an adjacent hardware block as a result of the determination in step S1502, the execution unit 180 searches the system component relationship information 1000 again and registers all the functional applications in the adjacent hardware block in the analysis target application list AL. (S1503).

前述した具体例の場合、すなわち、<1回目の呼び出し>の場合、ステップS1502において、第1引数に設定されたユーザ指定機能アプリケーションUAである車両電子制御機能アプリケーション417が含まれるハードウェアブロックとして、図10に示すシステム構成要素関係情報1000の項番“1”の第2構成要素に記述された「車両電子制御ユニット(ECU)」が特定される。そして、図10に示すシステム構成要素関係情報1000の項番“3”に記述されるように、車両電子制御ユニット(ECU)410に接続する隣接ハードウェアブロックである車両通信ゲートウェイ(GW)420が有る。よって、ステップS1503において、図10に示すシステム構成要素関係情報1000の項番“5”の第2構成要素に記述された「車両通信制御」である車両通信制御機能アプリケーション428が、分析対象アプリケーションリストALに登録される。 In the case of the above-mentioned specific example, that is, in the case of <first call>, in step S1502, as a hardware block including the vehicle electronic control function application 417 which is the user-specified function application UA set in the first argument, The "vehicle electronic control unit (ECU)" described in the second component of the item number "1" of the system component relationship information 1000 shown in FIG. 10 is specified. Then, as described in item number “3” of the system component relationship information 1000 shown in FIG. 10, the vehicle communication gateway (GW) 420, which is an adjacent hardware block connected to the vehicle electronic control unit (ECU) 410, is used. There is. Therefore, in step S1503, the vehicle communication control function application 428, which is the “vehicle communication control” described in the second component of the item number “5” of the system component relationship information 1000 shown in FIG. 10, is the analysis target application list. Registered in AL.

次に、実行部180は、分析対象アプリケーションリストALに機能アプリケーションが有るか否かを判定する(S1504)。 Next, the execution unit 180 determines whether or not there is a functional application in the analysis target application list AL (S1504).

ステップS1504の判定の結果、機能アプリケーションが有る場合、実行部180は、分析対象アプリケーションリストALの先頭(1番目)の機能アプリケーションを取り出し、分析対象アプリケーションOAに設定する。(S1505)。このとき、実行部180は、取り出した機能アプリケーションを分析対象アプリケーションリストALから除去する。これにより、分析対象アプリケーションリストALに機能アプリケーションが複数有る場合、分析対象アプリケーションリストALにおいて、2番目の機能アプリケーションが先頭(1番目)の機能アプリケーションになる。一方、分析対象アプリケーションリストALに機能アプリケーションが1つしかない場合、分析対象アプリケーションリストALに機能アプリケーションはなくなる。 As a result of the determination in step S1504, if there is a functional application, the execution unit 180 takes out the first (first) functional application in the analysis target application list AL and sets it in the analysis target application OA. (S1505). At this time, the execution unit 180 removes the extracted functional application from the analysis target application list AL. As a result, when there are a plurality of functional applications in the analysis target application list AL, the second functional application becomes the first (first) functional application in the analysis target application list AL. On the other hand, when there is only one functional application in the analysis target application list AL, there is no functional application in the analysis target application list AL.

次に、実行部180は、分析対象アプリケーションOAについて、攻撃成立条件を満たす脆弱性モデル情報VIがあるか否かを判定する(S1506)。具体的には、実行部180は、分析対象アプリケーションOAの機能アプリケーションモデル情報500〜900の属性値に一致する攻撃成立条件を含む脆弱性モデル情報VIがあるか否かを判定する。 Next, the execution unit 180 determines whether or not there is vulnerability model information VI that satisfies the attack establishment condition for the application OA to be analyzed (S1506). Specifically, the execution unit 180 determines whether or not there is a vulnerability model information VI including an attack establishment condition that matches the attribute values of the functional application model information 500 to 900 of the application OA to be analyzed.

ステップS1506の判定の結果、分析対象アプリケーションOAに対して攻撃成立条件を満たす脆弱性モデル情報VIがある場合、分析対象アプリケーションOAは、当該脆弱性を有すると考えられる。そのため、更新部170は、攻撃成立条件を満たす脆弱性モデル情報VIの攻撃成立条件及び攻撃結果に基づいて、分析対象アプリケーションOAの機能アプリケーションモデル情報500〜900の一部を更新する(S1507)。具体的には、更新部170は、分析対象アプリケーションOAの機能アプリケーションモデル情報500〜900の一部の属性値を、攻撃成立条件を満たす脆弱性モデル情報VIの攻撃成立条件及び攻撃結果の属性値に書き換える。 As a result of the determination in step S1506, if the analysis target application OA has a vulnerability model information VI that satisfies the attack establishment condition, the analysis target application OA is considered to have the vulnerability. Therefore, the update unit 170 updates a part of the functional application model information 500 to 900 of the application OA to be analyzed based on the attack establishment condition and the attack result of the vulnerability model information VI that satisfies the attack establishment condition (S1507). Specifically, the update unit 170 sets some attribute values of the functional application model information 500 to 900 of the application OA to be analyzed as the attribute values of the attack establishment condition and the attack result of the vulnerability model information VI that satisfies the attack establishment condition. Rewrite to.

一方、ステップS1506の判定の結果、分析対象アプリケーションOAの機能アプリケーションモデル情報500〜900の属性値に一致する攻撃成立条件を含む脆弱性モデル情報1100〜1300がない場合、分析対象アプリケーションOAは、当該脆弱性モデル情報1100〜1300の攻撃成立条件を満たさないので、当該脆弱性を有しないと考えられる。そのため、実行部180は、攻撃成立条件を満たす脆弱性モデル情報VIに「NULL」を設定する(S1508)。 On the other hand, as a result of the determination in step S1506, if there is no vulnerability model information 1100 to 1300 including an attack establishment condition that matches the attribute values of the functional application model information 500 to 900 of the application model information to be analyzed, the application OA to be analyzed is concerned. Since the attack establishment conditions of the vulnerability model information 1100 to 1300 are not satisfied, it is considered that the vulnerability is not possessed. Therefore, the execution unit 180 sets “NULL” in the vulnerability model information VI that satisfies the attack establishment condition (S1508).

前述した具体例の場合、分析対象アプリケーションリストALに車両通信制御機能アプリケーション428が有るので、ステップS1505において、車両通信制御機能アプリケーション428が分析対象アプリケーションOAに設定される。しかし、車両通信制御機能アプリケーション428の機能アプリケーションモデル情報600の属性値に一致する攻撃成立条件を含む脆弱性モデル情報1100〜1300がないので、ステップS1508において脆弱性モデル情報VIに「NULL」が設定される。 In the case of the above-mentioned specific example, since the vehicle communication control function application 428 is included in the analysis target application list AL, the vehicle communication control function application 428 is set as the analysis target application OA in step S1505. However, since there is no vulnerability model information 1100 to 1300 including an attack establishment condition that matches the attribute value of the functional application model information 600 of the vehicle communication control function application 428, "NULL" is set in the vulnerability model information VI in step S1508. Will be done.

次に、実行部180は、分析対象アプリケーションOAの機能アプリケーションモデル情報500〜900と分析起点アプリケーションSPの機能アプリケーションモデル情報500〜900とに基づいて、分析対象アプリケーションOAが分析起点アプリケーションSPと通信接続可能か否かを判定する(S1509)。当該判定は、例えば、分析対象アプリケーションOAの機能アプリケーションモデル情報500〜900における出力の通信経路、通信プロトコル、権限チェック、通信内容の各属性値が、分析起点アプリケーションSPの機能アプリケーションモデル情報500〜900における入力の各属性値と一致するか否かを基準とする。 Next, the execution unit 180 communicates with the analysis starting application OA by the analysis target application OA based on the functional application model information 500 to 900 of the analysis target application OA and the functional application model information 500 to 900 of the analysis starting application SP. It is determined whether or not it is possible (S1509). In the determination, for example, each attribute value of the output communication path, communication protocol, authority check, and communication content in the functional application model information 500 to 900 of the analysis target application OA is the functional application model information 500 to 900 of the analysis starting application SP. It is based on whether or not it matches each attribute value of the input in.

前述した具体例の場合、車両通信制御機能アプリケーション428の機能アプリケーションモデル情報600における項番“7”及び項番“8−4”〜“8−7”の属性値が、車両電子制御機能アプリケーション417の機能アプリケーションモデル情報500における項番“5”及び項番“6−4”〜“7−7”の属性値と一致している。よって、ステップS1509において、車両通信制御機能アプリケーション428及び車両電子制御機能アプリケーション417は通信接続可能であると判定される。 In the case of the above-mentioned specific example, the attribute values of the item numbers “7” and the item numbers “8-4” to “8-7” in the function application model information 600 of the vehicle communication control function application 428 are the vehicle electronic control function application 417. The attribute values of the item numbers "5" and the item numbers "6-4" to "7-7" in the function application model information 500 of the above are matched. Therefore, in step S1509, it is determined that the vehicle communication control function application 428 and the vehicle electronic control function application 417 can be connected by communication.

S1509の判定の結果、分析対象アプリケーションOAが分析起点アプリケーションSPと通信接続可能である場合、実行部180は、分析対象アプリケーションOAと脆弱性モデル情報VIとを組にし、当該組を脆弱アプリケーション検索処理S1500の第2引数である分析経路リストAPLの最終要素に追加したものを次分析経路リストAPLNXに設定する。(S1510)。 As a result of the determination in S1509, when the analysis target application OA can communicate with the analysis starting application SP, the execution unit 180 sets the analysis target application OA and the vulnerability model information VI, and sets the set as a vulnerable application search process. What is added to the final element of the analysis route list APL, which is the second argument of S1500, is set in the next analysis route list APLNX. (S1510).

前述した具体例の場合、ステップS1508において、実行部180は脆弱性モデル情報VIに「NULL」を設定したので、ステップS1510において、分析対象アプリケーションOAである車両通信制御機能アプリケーション428と「NULL」との組が分析経路リストAPLの最終要素に追加され、次分析経路リストAPLNXに設定される。その結果、次分析経路リストAPLNXは、以下のデータ(3)になる。
次分析経路リストAPLNX=
((車両電子制御機能アプリケーション417、NULL)、
(車両通信制御機能アプリケーション428、NULL)) …(3)
In the case of the above-mentioned specific example, in step S1508, the execution unit 180 sets “NULL” in the vulnerability model information VI. Therefore, in step S1510, the vehicle communication control function application 428 and “NULL”, which are the analysis target application OA, are displayed. Is added to the final element of the analysis route list APL and set in the next analysis route list APLNX. As a result, the next analysis route list APLNX becomes the following data (3).
Next analysis route list APLNX =
((Vehicle electronic control function application 417, NULL),
(Vehicle communication control function application 428, NULL))… (3)

データ(3)では、次分析経路リストAPLNXとして、車両電子制御機能アプリケーション417と車両通信制御機能アプリケーション428がリスト形式データとして表現されているが、これは、この2つの機能アプリケーションが直列に接続されていること、すなわち、2階層のツリーを形成していることを意味する。このように、脆弱アプリケーション検索処理S1500を呼び出すことで、順次、攻撃経路ツリーが形成されることが、脆弱アプリケーション検索処理S1500の特徴である。 In the data (3), the vehicle electronic control function application 417 and the vehicle communication control function application 428 are expressed as list format data as the next analysis route list APLNX. In this, these two function applications are connected in series. That is, it means that a two-layer tree is formed. As described above, it is a feature of the vulnerable application search process S1500 that the attack route tree is sequentially formed by calling the vulnerable application search process S1500.

一方、S1509の判定の結果、分析対象アプリケーションOAが分析起点アプリケーションSPと通信接続可能でない場合、実行部180は、ステップS1504に戻り、再度、分析対象アプリケーションリストALに機能アプリケーションが有るか否かを判定する。 On the other hand, as a result of the determination in S1509, if the analysis target application OA cannot communicate with the analysis start application SP, the execution unit 180 returns to step S1504 and again determines whether or not there is a functional application in the analysis target application list AL. judge.

ステップS1510の後、CPU102は、所定の引数で脆弱アプリケーション検索処理S1500を再帰的に呼び出す(S1511)。所定の引数は、例えば、第1引数が分析対象アプリケーションOA、第2引数が次分析経路リストAPLNXである。脆弱アプリケーション検索処理S1500の処理の結果、戻り値として脆弱アプリケーション検索処理結果リストFRVが返される。 After step S1510, the CPU 102 recursively calls the vulnerable application search process S1500 with a predetermined argument (S1511). The predetermined arguments are, for example, the first argument is the application OA to be analyzed, and the second argument is the next analysis route list APLNX. As a result of the processing of the vulnerable application search processing S1500, the vulnerable application search processing result list FRV is returned as a return value.

前述した具体例の場合、第1引数の分析対象アプリケーションOAは、車両通信制御機能アプリケーション428である。一方、第2引数の次分析経路リストAPLNXは、前述したデータ(3)である。以下、これらの引数による脆弱アプリケーション検索処理S1500の再帰的呼び出しを<2回目の呼び出し>といい、その処理内容については後述する。 In the case of the above-mentioned specific example, the analysis target application OA of the first argument is the vehicle communication control function application 428. On the other hand, the next analysis route list APLNX of the second argument is the above-mentioned data (3). Hereinafter, the recursive call of the vulnerable application search process S1500 using these arguments will be referred to as <second call>, and the details of the process will be described later.

次に、実行部180は、再帰呼び出しした脆弱アプリケーション検索処理S1500の戻り値である脆弱アプリケーション検索処理結果リストFRVを検索結果リストRTに追加して検索結果リストRTを更新する(S1512)。 Next, the execution unit 180 adds the vulnerable application search processing result list FRV, which is the return value of the recursively called vulnerable application search processing S1500, to the search result list RT and updates the search result list RT (S1512).

前述した具体例の場合、<2回目の呼び出し>の戻り値である脆弱アプリケーション検索処理結果リストFRVは、前述したデータ(2)になる。一方、検索結果リストRTは、ステップS1501において空(NULL)が設定されている。よって、ステップS1512において更新された検索結果リストRTは、前述したデータ(2)である。 In the case of the above-mentioned specific example, the vulnerable application search processing result list FRV, which is the return value of <second call>, becomes the above-mentioned data (2). On the other hand, the search result list RT is set to empty (NULL) in step S1501. Therefore, the search result list RT updated in step S1512 is the above-mentioned data (2).

ステップS1512の後、実行部180は、分析対象アプリケーションリストALに機能アプリケーションがなくなるまで、ステップS1504〜ステップS1512の処理を繰り返す。 After step S1512, the execution unit 180 repeats the processes of steps S1504 to S1512 until there are no functional applications in the analysis target application list AL.

ステップS1502の判定の結果、隣接ハードウェアブロックがない場合、又は、ステップS1504の判定の結果、分析対象アプリケーションリストALに機能アプリケーションがない場合、実行部180は、検索結果リストRTが空(NULL)か否かを判定する(S1513)。 If there is no adjacent hardware block as a result of the determination in step S1502, or if there is no functional application in the analysis target application list AL as a result of the determination in step S1504, the execution unit 180 determines that the search result list RT is empty (NULL). Whether or not it is determined (S1513).

ステップS1513の判定の結果、検索結果リストRTが空(NULL)の場合、実行部180は、検索結果リストRTに、脆弱アプリケーション検索処理S1500の第2引数である分析経路リストAPLを追加する(S1514)。 If the search result list RT is empty (NULL) as a result of the determination in step S1513, the execution unit 180 adds the analysis route list APL, which is the second argument of the vulnerable application search process S1500, to the search result list RT (S1514). ).

ステップS1513の判定の結果、検索結果リストRTが空(NULL)でない場合、又は、ステップS1514の後、CPU102は、脆弱アプリケーション検索処理S1500を終了する。 As a result of the determination in step S1513, if the search result list RT is not empty (NULL), or after step S1514, the CPU 102 terminates the vulnerable application search process S1500.

前述した具体例の場合、ステップS1503において、分析対象アプリケーションリストALに登録された車両通信制御機能アプリケーション428のみであるから、未分析の機能アプリケーションはない。よって、ステップS1513に進む。また、ステップ1512において、検索結果リストRTは前述したデータ(2)に更新されたので、ステップS1514を行わない。このようにして、<1回目の呼び出し>による脆弱アプリケーション検索処理S1500は終了する。 In the case of the above-mentioned specific example, since only the vehicle communication control function application 428 registered in the analysis target application list AL in step S1503, there is no unanalyzed functional application. Therefore, the process proceeds to step S1513. Further, in step 1512, the search result list RT is updated to the above-mentioned data (2), so step S1514 is not performed. In this way, the vulnerable application search process S1500 by the <first call> ends.

以下において、<2回目の呼び出し>による脆弱アプリケーション検索処理S1500の処理内容を説明する。前述した内容と同様の部分の説明は、適宜省略する。 The processing content of the vulnerable application search processing S1500 by <second call> will be described below. The description of the same parts as those described above will be omitted as appropriate.

ステップS1502において、第1引数に設定された分析対象アプリケーションOAは、車両通信制御機能アプリケーション428が含まれるハードウェアブロックとして、図10に示すシステム構成要素関係情報1000の項番“5”の第2構成要素に記述された「車両通信ゲートウェイ(GW)」が特定される。そして、図10に示すシステム構成要素関係情報1000の項番“9”に記述されるように、車両通信ゲートウェイ(GW)420に接続する隣接ハードウェアブロックであるコンソールディスプレイ(CD)430が有る。よって、ステップS1503において、図10に示すシステム構成要素関係情報1000の項番“11”の第2構成要素に記述された「車両情報表示」である車両情報表示機能アプリケーション439aと、システム構成要素関係情報1000の項番“14”の第2構成要素に記述された「Web情報表示」であるWeb情報表示機能アプリケーション439bとが、分析対象アプリケーションリストALに登録される。 In step S1502, the analysis target application OA set in the first argument is the second item “5” of the system component relationship information 1000 shown in FIG. 10 as a hardware block including the vehicle communication control function application 428. The "vehicle communication gateway (GW)" described in the component is specified. Then, as described in item number "9" of the system component relationship information 1000 shown in FIG. 10, there is a console display (CD) 430 which is an adjacent hardware block connected to the vehicle communication gateway (GW) 420. Therefore, in step S1503, the system component relationship with the vehicle information display function application 439a, which is the "vehicle information display" described in the second component of the item number "11" of the system component relationship information 1000 shown in FIG. The Web information display function application 439b, which is the “Web information display” described in the second component of the item number “14” of the information 1000, is registered in the analysis target application list AL.

このように、脆弱アプリケーション検索処理S1500は、呼び出し元の機能アプリケーションに接続する可能性を有する機能アプリケーションに対して、接続可能性と脆弱性モデル情報の適用可能性とを順次判定していく。これにより、対象システムに内在する複数の機能アプリケーションに対して、それぞれの脆弱性の有無を判定し、対象システム全体の組合せに対して攻撃の可能性を分析することができる、という特徴を有する。 In this way, the vulnerable application search process S1500 sequentially determines the connectivity and the applicability of the vulnerability model information to the functional application that has the possibility of connecting to the calling functional application. As a result, it is possible to determine the presence or absence of vulnerabilities in a plurality of functional applications inherent in the target system and analyze the possibility of an attack on the combination of the entire target system.

すなわち、一の機能アプリケーションの機能アプリケーションモデル情報500〜900と、当該一の機能アプリケーションと通信接続可能な機能アプリケーションの機能アプリケーションモデル情報500〜900と、脆弱性モデル情報1100〜1300とに基づいて、対象システムの機能分析を行うことにより、通信接続可能な2つの機能アプリケーションの組合せに対する攻撃の可能性を分析することができる。 That is, based on the functional application model information 500 to 900 of one functional application, the functional application model information 500 to 900 of the functional application capable of communicating with the one functional application, and the vulnerability model information 1100 to 1300. By performing a functional analysis of the target system, it is possible to analyze the possibility of an attack on a combination of two functional applications that can be connected by communication.

次に、分析対象アプリケーションリストALに車両情報表示機能アプリケーション439a及びWeb情報表示機能アプリケーション439bが登録されているので、ステップS1505において、車両情報表示機能アプリケーション439aが分析対象アプリケーションOAに設定される。しかし、車両情報表示機能アプリケーション439aの機能アプリケーションモデル情報700の属性値に一致する攻撃成立条件を含む脆弱性モデル情報1100〜1300がないので、ステップS1508において攻撃成立条件を満たす脆弱性モデル情報VIに「NULL」が設定される。 Next, since the vehicle information display function application 439a and the Web information display function application 439b are registered in the analysis target application list AL, the vehicle information display function application 439a is set as the analysis target application OA in step S1505. However, since there is no vulnerability model information 1100 to 1300 including an attack establishment condition that matches the attribute value of the function application model information 700 of the vehicle information display function application 439a, the vulnerability model information VI that satisfies the attack establishment condition is set in step S1508. "NULL" is set.

次に、車両情報表示機能アプリケーション439aの機能アプリケーションモデル情報700における項番“7”及び項番“8−4”〜“8−7”の属性値が、第1引数である車両通信制御機能アプリケーション428の機能アプリケーションモデル情報600における項番“5”及び項番“6−4”〜“7−7”の属性値と一致している。よって、ステップS1509において、車両情報表示機能アプリケーション439a及び車両通信制御機能アプリケーション428が通信接続可能であると判定される。 Next, the vehicle communication control function application in which the attribute values of the item numbers "7" and the item numbers "8-4" to "8-7" in the functional application model information 700 of the vehicle information display function application 439a are the first arguments. It matches the attribute values of the item numbers “5” and the item numbers “6-4” to “7-7” in the functional application model information 600 of 428. Therefore, in step S1509, it is determined that the vehicle information display function application 439a and the vehicle communication control function application 428 can be connected by communication.

次に、ステップS1508で攻撃成立条件を満たす脆弱性モデル情報VIに「NULL」を設定したので、実行部180は、ステップS1510において、分析対象アプリケーションOAである車両情報表示機能アプリケーション439aとNULLとの組が分析経路リストAPLの最終要素に追加され、次分析経路リストAPLNXに設定される。その結果、次分析経路リストAPLNXは、以下のデータ(4)になる。
次分析経路リストAPLNX=
((車両電子制御機能アプリケーション417、NULL)、
(車両通信制御機能アプリケーション428、NULL)、
(車両情報表示機能アプリケーション439a、NULL)) …(4)
Next, since "NULL" is set in the vulnerability model information VI that satisfies the attack establishment condition in step S1508, the execution unit 180 sets the analysis target application OA, the vehicle information display function application 439a, and NULL in step S1510. The pair is added to the final element of the analysis route list APL and set in the next analysis route list APLNX. As a result, the next analysis route list APLNX becomes the following data (4).
Next analysis route list APLNX =
((Vehicle electronic control function application 417, NULL),
(Vehicle communication control function application 428, NULL),
(Vehicle information display function application 439a, NULL))… (4)

次に、ステップ1511において、分析対象アプリケーションOAである車両情報表示機能アプリケーション439aを第1引数、次分析経路リストAPLNXである前述のデータ(4)を第2引数として脆弱アプリケーション検索処理S1500が再帰的に呼び出される。これらの引数による脆弱アプリケーション検索処理S1500の再帰的呼び出しを<3回目の呼び出し>という。 Next, in step 1511, the vulnerable application search process S1500 recursively uses the vehicle information display function application 439a, which is the analysis target application OA, as the first argument, and the above-mentioned data (4), which is the next analysis route list APLNX, as the second argument. Called to. The recursive call of the vulnerable application search process S1500 using these arguments is called <third call>.

ここで、脆弱アプリケーション検索処理S1500の<3回目の呼び出し>の処理内容について簡略化して説明する。コンソールディスプレイ(CD)430に隣接するハードウェアブロックはWebサーバ(WS)440である。しかし、Webサーバ(WS)440に内在する機能アプリケーションであるWeb情報サーバ機能アプリケーション449に脆弱性を適用しても、Web情報表示機能アプリケーション439bと通信接続可能にならない。脆弱アプリケーション検索処理S1500の<3回目の呼び出し>は、戻り値として前述のデータ(4)を返して終了する。 Here, the processing content of the <third call> of the vulnerable application search processing S1500 will be briefly described. The hardware block adjacent to the console display (CD) 430 is the web server (WS) 440. However, even if the vulnerability is applied to the Web information server function application 449, which is a functional application inherent in the Web server (WS) 440, the communication connection with the Web information display function application 439b cannot be established. The <third call> of the vulnerable application search process S1500 ends by returning the above-mentioned data (4) as a return value.

脆弱アプリケーション検索処理S1500の<2回目の呼び出し>の処理内容の説明に戻ると、ステップ1512において、<3回目の呼び出し>の戻り値である脆弱アプリケーション検索処理結果リストFRVの前述のデータ(4)が、ステップS1501で空(NULL)が設定された検索結果リストRTに追加され、検索結果リストRTが更新される。よって、更新された検索結果リストRTは、前述のデータ(4)である。 Returning to the description of the processing content of the <second call> of the vulnerable application search process S1500, in step 1512, the above-mentioned data (4) of the vulnerable application search process result list FRV which is the return value of the <third call>. Is added to the search result list RT set to empty (NULL) in step S1501, and the search result list RT is updated. Therefore, the updated search result list RT is the above-mentioned data (4).

次に、ステップS1504に戻り、分析対象アプリケーションリストALにWeb情報表示機能アプリケーション439bが残っているので、ステップ1505に進み、分析対象アプリケーションOAにWeb情報表示機能アプリケーション439bが設定される。 Next, returning to step S1504, since the Web information display function application 439b remains in the analysis target application list AL, the process proceeds to step 1505, and the Web information display function application 439b is set in the analysis target application OA.

次に、ステップ1506において、Web情報表示機能アプリケーション439bの機能アプリケーションモデル情報900の属性値に一致する攻撃成立条件を含む脆弱性モデル情報1100〜1300が有るか否かが判定される。 Next, in step 1506, it is determined whether or not there is vulnerability model information 1100 to 1300 including an attack establishment condition that matches the attribute value of the functional application model information 900 of the Web information display function application 439b.

図16に示すように、Web情報表示機能アプリケーション439bの機能アプリケーションモデル情報800の属性値1601は、項番“6?7”の通信内容を除き、脆弱性モデル情報1200,1300の攻撃成立条件1602と一致している。一方、機能アプリケーションモデル情報800の属性値1601は、脆弱性モデル情報1200,1300の項番“6?7”の脆弱性成立条件である入力内容「http応答コマンド(Shell code (任意内容))」を満たしていない。 As shown in FIG. 16, the attribute value 1601 of the functional application model information 800 of the Web information display function application 439b is the attack establishment condition 1602 of the vulnerability model information 1200, 1300 except for the communication content of the item number “6-7”. Is consistent with. On the other hand, the attribute value 1601 of the functional application model information 800 is the input content "http response command (Shell code (arbitrary content))" which is the vulnerability establishment condition of the item numbers "6 to 7" of the vulnerability model information 1200 and 1300. Does not meet.

しかし、脆弱性モデル情報1200,1300の攻撃成立条件1602の通信内容は、攻撃成立条件の一部であることを示す「[<]」を含んでいる。この場合、機能アプリケーションモデル情報800の属性値1601が、脆弱性モデル情報1200,1300の攻撃成立条件1602を満たすものとみなす。よって、ステップS1507において、Web情報表示機能アプリケーション439bの機能アプリケーションモデル情報800の属性値1601は、更新されて属性値1603になる。 However, the communication content of the attack establishment condition 1602 of the vulnerability model information 1200 and 1300 includes "[<]" indicating that it is a part of the attack establishment condition. In this case, it is considered that the attribute value 1601 of the functional application model information 800 satisfies the attack establishment condition 1602 of the vulnerability model information 1200 and 1300. Therefore, in step S1507, the attribute value 1601 of the functional application model information 800 of the Web information display function application 439b is updated to become the attribute value 1603.

このような充足条件「[<]」を脆弱性モデル情報1200,1300の攻撃成立条件1602が含むことで、Web情報表示機能アプリケーション439bへの攻撃成立の可能性を留保することができる。言い換えると、この入力条件が満たされれば、Web情報表示機能アプリケーション439bが有する脆弱性への攻撃が成立することになる。 By including such a satisfaction condition "[<]" in the attack establishment condition 1602 of the vulnerability model information 1200 and 1300, the possibility of establishing an attack on the Web information display function application 439b can be reserved. In other words, if this input condition is satisfied, an attack on the vulnerability of the Web information display function application 439b will be established.

後述するように、Web情報表示機能アプリケーション439bに接続するWeb情報サーバ機能アプリケーション449には[Webサーバの偽装]の脆弱性モデル情報1100があり、その脆弱性の攻撃後に、情報サーバ機能アプリケーション449は「http応答コマンド(Shell code (任意内容))」を出力するようになる。 As will be described later, the Web information server function application 449 connected to the Web information display function application 439b has the vulnerability model information 1100 of [Web server impersonation], and after the attack of the vulnerability, the information server function application 449 "Http response command (Shell code (arbitrary content))" will be output.

以上説明したように、脆弱アプリケーション検索処理S1500は、任意の機能アプリケーションについて、攻撃成立条件を満たす脆弱性が存在する場合、当該脆弱性モデル情報の攻撃成立条件及び攻撃結果に基づいて、当該機能アプリケーションの機能アプリケーションモデル情報の一部の属性値を更新することで、攻撃の可能性を留保しつつ、その先の機能アプリケーションに対する脅威分析が可能になる、という特徴を有する。その後の分析で他の機能アプリケーションに他の脆弱性モデル情報が適用された場合、留保された攻撃が実際に成立することを確認することができ、対象システム全体で複数の脆弱性を組み合わせた攻撃に対する脅威分析が実現される。 As described above, when the vulnerability application search process S1500 has a vulnerability that satisfies the attack establishment condition for any functional application, the functional application is based on the attack establishment condition and the attack result of the vulnerability model information. By updating some attribute values of the functional application model information of, it is possible to analyze the threat to the functional application in the future while retaining the possibility of attack. If other vulnerability model information is applied to other functional applications in subsequent analysis, it can be confirmed that the reserved attack is actually established, and an attack that combines multiple vulnerabilities throughout the target system. Threat analysis is realized.

Web情報表示機能アプリケーション439bの機能アプリケーションモデル情報800の更新後の属性値1603は、項番“4−4” のプロセスモードが、「特権モード」に変更され、新たな出力、つまり、第(m+1)出力として、項番“11−4”の通信経路に「Ethernet」、項番“11−5”のプロトコルに「UDP/IP(Port3500)」が、項番“11−7”の通信内容に「アプリコマンド(ECU制御コマンド(要求))」が、それぞれ追加されている。 Web information display function Function of application 439b The attribute value 1603 after the update of application model information 800 has the process mode of item number "4-4" changed to "privileged mode", and a new output, that is, the (m + 1) th (m + 1) ) As output, "Ethernet" for the communication path of item number "11-4", "UDP / IP (Port3500)" for the protocol of item number "11-5", and the communication content of item number "11-7". "App command (ECU control command (request))" has been added.

図19に示すように、攻撃前のWeb情報表示機能アプリケーション439bは、脆弱性への攻撃後にWeb情報表示機能アプリケーション1961に更新され、機能属性に変化が生じる。攻撃を受けたWeb情報表示機能アプリケーション1961は、任意のシェルコードを入力して実行し、新たな第2出力を出力可能となる。具体的には、ロジカルな通信経路1963を介して、車両通信制御機能アプリケーション428に対して、偽のECU制御コマンドを送付可能となる。この攻撃は、例えば、走行中に車両のドアが開いたり、燃料制御が異常動作したりする等、予測できない危険(ハザード)を引き起こす結果となる。 As shown in FIG. 19, the Web information display function application 439b before the attack is updated to the Web information display function application 1961 after the attack on the vulnerability, and the functional attributes are changed. The attacked Web information display function application 1961 can input and execute an arbitrary shell code and output a new second output. Specifically, a fake ECU control command can be sent to the vehicle communication control function application 428 via the logical communication path 1963. This attack results in unpredictable hazards, such as vehicle doors opening or fuel control malfunctioning while driving.

このように、攻撃成立条件を満たす脆弱性モデル情報1200,1300の攻撃成立条件及び攻撃結果に基づいて、Web情報表示機能アプリケーション439bの機能アプリケーションモデル情報800の一部を更新することにより、当該機能アプリケーションに接続可能な機能アプリケーションに対する脅威分析が可能になり、複数の脆弱性を組み合わせた攻撃に対する対象システムの脅威分析を行うことができる。 In this way, by updating a part of the functional application model information 800 of the Web information display function application 439b based on the attack establishment conditions and the attack results of the vulnerability model information 1200 and 1300 that satisfy the attack establishment conditions, the function is concerned. Functions that can be connected to applications Threat analysis for applications is possible, and threat analysis of target systems against attacks that combine multiple vulnerabilities can be performed.

脆弱アプリケーション検索処理S1500の<2回目の呼び出し>の処理内容の説明に戻ると、ステップS1509では、脆弱性への攻撃後の分析対象アプリケーションOAであるWeb情報表示機能アプリケーション1961と、分析起点アプリケーションSPである車両通信制御機能アプリケーション428とが通信接続可能か否かが判定される。 Returning to the explanation of the processing content of the <second call> of the vulnerable application search process S1500, in step S1509, the Web information display function application 1961, which is the analysis target application OA after the attack on the vulnerability, and the analysis starting application SP It is determined whether or not communication connection with the vehicle communication control function application 428 is possible.

図18に示すように、Web情報表示機能アプリケーション1961の属性値1802における出力の各属性値と、車両通信制御機能アプリケーション428の機能アプリケーションモデル情報600の属性値1801における入力の各属性値とが一致する。 As shown in FIG. 18, each attribute value of the output in the attribute value 1802 of the Web information display function application 1961 and each attribute value of the input in the attribute value 1801 of the function application model information 600 of the vehicle communication control function application 428 match. To do.

よって、ステップS1509において、Web情報表示機能アプリケーション1961及び車両通信制御機能アプリケーション428は通信接続可能と判定され、ステップS1510に進む。 Therefore, in step S1509, it is determined that the Web information display function application 1961 and the vehicle communication control function application 428 can be connected to each other, and the process proceeds to step S1510.

ステップS1510では、分析対象アプリケーションOAであるWeb情報表示機能アプリケーション1961と、脆弱性モデル情報VIである脆弱性モデル情報1200,1300との組が分析経路リストAPLの最終要素に追加され、次分析経路リストAPLNXに設定される。その結果、次分析経路リストAPLNXは、以下のデータ(5)になる。
次分析経路リストAPLNX=
((車両電子制御機能アプリケーション417、NULL)、
(車両通信制御機能アプリケーション428、NULL)、
(Web情報表示機能アプリケーション1961、脆弱性モデル情報1200,1300)) …(5)
In step S1510, a pair of the Web information display function application 1961, which is the analysis target application OA, and the vulnerability model information 1200, 1300, which is the vulnerability model information VI, is added to the final element of the analysis route list APL, and the next analysis route is added. Set to list APLNX. As a result, the next analysis route list APLNX becomes the following data (5).
Next analysis route list APLNX =
((Vehicle electronic control function application 417, NULL),
(Vehicle communication control function application 428, NULL),
(Web information display function application 1961, vulnerability model information 1200, 1300)) ... (5)

ステップS1511では、分析対象アプリケーションOAであるWeb情報表示機能アプリケーション1961を第1引数、次分析経路リストAPLNXである前述のデータ(5)を第2引数として脆弱アプリケーション検索処理S1500が再帰的に呼び出される。以下、これらの引数による脆弱アプリケーション検索処理S1500の再帰的呼び出しを<4回目の呼び出し>という。 In step S1511, the vulnerable application search process S1500 is recursively called with the Web information display function application 1961, which is the analysis target application OA, as the first argument, and the above-mentioned data (5), which is the next analysis route list APLNX, as the second argument. .. Hereinafter, the recursive call of the vulnerable application search process S1500 using these arguments will be referred to as <fourth call>.

ここで、脆弱アプリケーション検索処理S1500の<4回目の呼び出し>の処理内容について説明する。 Here, the processing content of the <fourth call> of the vulnerable application search processing S1500 will be described.

ステップS1502では、第1引数に指定されたWeb情報表示機能アプリケーション1961が含まれるハードウェアブロックとして、(CD)430が特定され、これに接続する隣接ハードウェアブロックとして、Webサーバ(WS)440が検索されてステップS1503に進む。 In step S1502, (CD) 430 is specified as a hardware block including the Web information display function application 1961 specified in the first argument, and a Web server (WS) 440 is specified as an adjacent hardware block connected to the (CD) 430. The search is performed and the process proceeds to step S1503.

ステップS1503では、Webサーバ(WS)440内の機能アプリケーションとして、Web情報サーバ機能アプリケーション449が選択され、分析対象アプリケーションリストALに登録される。ステップS1504では分析対象アプリケーションリストALにWeb情報サーバ機能アプリケーション449があるので、ステップS1505に進む。 In step S1503, the Web information server function application 449 is selected as the function application in the Web server (WS) 440 and registered in the analysis target application list AL. In step S1504, since the Web information server function application 449 is in the analysis target application list AL, the process proceeds to step S1505.

ステップS1505では、Web情報サーバ機能アプリケーション449が分析対象アプリケーションOAに設定され、ステップS1506でWeb情報サーバ機能アプリケーション449に攻撃成立条件を有する脆弱性情報があるか否か判定される。ここで、Web情報サーバ機能アプリケーション449に対して、攻撃成立条件を満たす脆弱性モデル情報1100が存在する。 In step S1505, the Web information server function application 449 is set as the analysis target application OA, and in step S1506 it is determined whether or not the Web information server function application 449 has vulnerability information having an attack establishment condition. Here, the vulnerability model information 1100 that satisfies the attack establishment condition exists for the Web information server function application 449.

図17に示すように、Web情報サーバ機能アプリケーション449の機能アプリケーションモデル情報900の属性値1701と、脆弱性モデル情報1100の攻撃成立条件1702とが一致している。Web情報サーバ機能アプリケーション449の更新された属性値1703として、項番“8?7”の通信内容に、「http応答コマンド(Shell code(任意内容))」が追加される。 As shown in FIG. 17, the attribute value 1701 of the functional application model information 900 of the Web information server functional application 449 and the attack establishment condition 1702 of the vulnerability model information 1100 match. As the updated attribute value 1703 of the Web information server function application 449, "http response command (Shell code (arbitrary content))" is added to the communication content of the item number "8-7".

図19に示すように、攻撃前のWeb情報サーバ機能アプリケーション449は、攻撃後にWeb情報サーバ機能アプリケーション1962に変更され、機能属性に変化が生じる。攻撃を受けたWeb情報サーバ機能アプリケーション1962は、任意のシェルコードを出力可能となる。具体的には、ロジカルな通信経路1964を介して、Web情報表示機能アプリケーション1961に対して、偽のECU制御コマンドを生成させるためのShell codeを送付可能となる。 As shown in FIG. 19, the Web information server function application 449 before the attack is changed to the Web information server function application 1962 after the attack, and the functional attributes are changed. The attacked Web information server function application 1962 can output an arbitrary shell code. Specifically, it is possible to send a Shell code for generating a fake ECU control command to the Web information display function application 1961 via a logical communication path 1964.

以上により、Web情報表示アプリケーション439bの脆弱性に対する攻撃によるアプリケーション機能の変化、すなわち、攻撃後のWeb情報表示機能アプリケーション1961に呼応して、Web情報サーバ機能アプリケーション449の脆弱性に対する攻撃によってアプリケーション機能の変化、すなわち、攻撃後のWeb情報サーバ機能アプリケーション1962が発生する。このように、Web情報表示機能アプリケーション1961及びWeb情報サーバ機能アプリケーション1962を組み合わせた車両外部からの攻撃のシーケンスが完成することを、本発明の脅威分析により求めることが可能となる。 As described above, the change in the application function due to the attack on the vulnerability of the Web information display application 439b, that is, in response to the Web information display function application 1961 after the attack, the application function is changed by the attack on the vulnerability of the Web information server function application 449. A change, that is, a post-attack Web information server function application 1962 occurs. As described above, the threat analysis of the present invention makes it possible to complete the sequence of attacks from the outside of the vehicle in which the Web information display function application 1961 and the Web information server function application 1962 are combined.

脆弱アプリケーション検索処理S1500の<4回目の呼び出し>の説明に戻ると、ステップS1509では、脆弱性への攻撃後の分析対象アプリケーションOAであるWeb情報サーバ機能アプリケーション1962と、分析起点アプリケーションSPであるWeb情報表示機能アプリケーション1961が通信接続可能か否か判定される。 Returning to the explanation of the <fourth call> of the vulnerable application search process S1500, in step S1509, the Web information server function application 1962, which is the application to be analyzed after the attack on the vulnerability, and the Web, which is the analysis starting application SP. It is determined whether or not the information display function application 1961 is capable of communication connection.

図18に示すように、Web情報サーバ機能アプリケーション1962の属性値1803における出力の各属性値と、Web情報表示機能アプリケーション1961の属性値1802における入力の各属性値とが一致する。 As shown in FIG. 18, each attribute value of the output in the attribute value 1803 of the Web information server function application 1962 and each attribute value of the input in the attribute value 1802 of the Web information display function application 1961 match.

よって、ステップS1509でWeb情報サーバ機能アプリケーション1962及びWeb情報表示機能アプリケーション1961が通信接続可能と判定され、ステップS1510に進む。 Therefore, in step S1509, it is determined that the Web information server function application 1962 and the Web information display function application 1961 can be connected to each other, and the process proceeds to step S1510.

ステップ1510では、分析対象アプリケーションOAであるWeb情報サーバ機能アプリケーション1962と、脆弱性モデル情報VIである脆弱性モデル情報1100との組が分析経路リストAPLの最終要素に追加され、次分析経路リストAPLNXに設定される。その結果、次分析経路リストAPLNXは、以下のデータ(6)になる。
次分析経路リストAPLNX=
((車両電子制御機能アプリケーション417、NULL)、
(車両通信制御機能アプリケーション428、NULL)、
(Web情報表示機能アプリケーション1961、脆弱性モデル情報1100,1200))
(Web情報サーバ機能アプリケーション1962、脆弱性モデル情報1100)) …(6)
In step 1510, a pair of the Web information server function application 1962, which is the analysis target application OA, and the vulnerability model information 1100, which is the vulnerability model information VI, is added to the final element of the analysis route list APL, and the next analysis route list APLNX Is set to. As a result, the next analysis route list APLNX becomes the following data (6).
Next analysis route list APLNX =
((Vehicle electronic control function application 417, NULL),
(Vehicle communication control function application 428, NULL),
(Web information display function application 1961, vulnerability model information 1100, 1200))
(Web information server function application 1962, vulnerability model information 1100))… (6)

ステップS1511では、分析対象アプリケーションOAであるWeb情報サーバ機能アプリケーション1962を第1引数、次分析経路リストAPLNXである前述のデータ(6)を第2引数として、脆弱アプリケーション検索処理S1500が再帰的に呼び出される。以下、これらの引数による脆弱アプリケーション検索処理S1500の再帰的呼び出しを<5回目の呼び出し>という。 In step S1511, the vulnerable application search process S1500 is recursively called with the Web information server function application 1962, which is the application to be analyzed, as the first argument, and the above-mentioned data (6), which is the next analysis route list APLNX, as the second argument. Is done. Hereinafter, the recursive call of the vulnerable application search process S1500 using these arguments is referred to as <fifth call>.

ここで、脆弱アプリケーション検索処理S1500の<5回目の呼び出し>の処理内容を簡単に説明する。ステップS1502では、Webサーバ(WS)440には隣接するハードウェアユニットが存在しないので、ステップS1513に進む。そして、脆弱アプリケーション検索処理S1500の<5回目の呼び出し>は、戻り値として前述のデータ(6)を返して終了する。 Here, the processing content of the <fifth call> of the vulnerable application search processing S1500 will be briefly described. In step S1502, since there is no adjacent hardware unit in the Web server (WS) 440, the process proceeds to step S1513. Then, the <fifth call> of the vulnerable application search process S1500 returns the above-mentioned data (6) as a return value and ends.

脆弱アプリケーション検索処理S1500の<4回目の呼び出し>の説明に戻ると、ステップ1512において、<5回目の呼び出し>の戻り値である脆弱アプリケーション検索処理結果リストFRVの前述のデータ(6)が、ステップS1501において空(NULL)が設定された検索結果リストRTに追加され、検索結果リストRTが更新される。よって、更新された検索結果リストRTは、前述のデータ(6)である。 Returning to the explanation of the <fourth call> of the vulnerable application search process S1500, in step 1512, the above-mentioned data (6) of the vulnerable application search process result list FRV, which is the return value of the <fifth call>, is the step. It is added to the search result list RT set to empty (NULL) in S1501, and the search result list RT is updated. Therefore, the updated search result list RT is the above-mentioned data (6).

次に、ステップS1504に戻り、分析対象アプリケーションリストALに分析対象がないので、ステップS1513に進む。 Next, the process returns to step S1504, and since there is no analysis target in the analysis target application list AL, the process proceeds to step S1513.

ステップS1513の判定では、検索結果リストRTは前述のデータ(6)であり、空(NULL)ではないので、そのまま何もせずに脆弱アプリケーション検索処理S1500の<4回目の呼び出し>は終了する。戻り値として前述したデータ(6)の検索結果リストRTが返される。 In the determination of step S1513, since the search result list RT is the above-mentioned data (6) and is not empty (NULL), the <fourth call> of the vulnerable application search process S1500 ends without doing anything as it is. As a return value, the search result list RT of the above-mentioned data (6) is returned.

脆弱アプリケーション検索処理S1500の<2回目の呼び出し>の説明に戻ると、ステップ1512において、<4回目の呼び出し>の戻り値である脆弱アプリケーション検索処理結果リストFRVの前述のデータ(6)が、検索結果リストRTであるデータ(4)に追加され、検索結果リストRTが更新される。よって、更新された検索結果リストRTは、以下のデータ(7)になる。
検索結果リストRT=
(((車両電子制御機能アプリケーション417、NULL)、
(車両通信制御機能アプリケーション428、NULL)、
(車両情報表示機能アプリケーション439a、NULL))、
((車両電子制御機能アプリケーション417、NULL)、
(車両通信制御機能アプリケーション428、NULL)、
(Web情報表示機能アプリケーション1961、脆弱性モデル情報1200、1300)、
(Web情報サーバ機能アプリケーション1962、脆弱性モデル情報1100)))…(7)
Returning to the description of the <second call> of the vulnerable application search process S1500, in step 1512, the above-mentioned data (6) of the vulnerable application search process result list FRV, which is the return value of the <fourth call>, is searched. It is added to the data (4) which is the result list RT, and the search result list RT is updated. Therefore, the updated search result list RT becomes the following data (7).
Search result list RT =
(((Vehicle electronic control function application 417, NULL)),
(Vehicle communication control function application 428, NULL),
(Vehicle information display function application 439a, NULL)),
((Vehicle electronic control function application 417, NULL),
(Vehicle communication control function application 428, NULL),
(Web information display function application 1961, vulnerability model information 1200, 1300),
(Web information server function application 1962, vulnerability model information 1100))) ... (7)

このように、検索結果リストRTは、機能アプリケーションとその機能アプリケーションに適用可能な脆弱性モデル情報との組をリストとして示したものである。また、データ(7)は、前述したデータ(2)と同一である。 As described above, the search result list RT shows a set of the functional application and the vulnerability model information applicable to the functional application as a list. Further, the data (7) is the same as the above-mentioned data (2).

図19に示すように、ユーザ指定機能アプリケーションUAとして車両電子制御機能アプリケーション417が指定された場合、前述した検索結果リストRTは、車両電子制御機能アプリケーション417への脆弱性請攻撃パスとして、2つの機能アプリケーションのシーケンシャルな呼び出し関係が、脆弱アプリケーション検索処理S1500の結果として得られたことを示している。 As shown in FIG. 19, when the vehicle electronic control function application 417 is specified as the user-specified function application UA, the above-mentioned search result list RT has two vulnerability request attack paths to the vehicle electronic control function application 417. It shows that the sequential call relationship of the functional application was obtained as a result of the vulnerable application search process S1500.

第1の呼び出し関係は、前述のデータ(7)の第1要素に示されるように、車両情報表示機能アプリケーション439aを起点とする正常な呼び出し関係の実行パスである。第2の呼び出し関係は、前述のデータ(7)の第2要素に示されるように、Web情報サーバ機能アプリケーション1962を起点とする脆弱性攻撃の実行パスである。 The first call relationship is an execution path of a normal call relationship starting from the vehicle information display function application 439a, as shown in the first element of the above-mentioned data (7). The second call relationship is the execution path of the vulnerability attack starting from the Web information server function application 1962, as shown in the second element of the above-mentioned data (7).

脆弱アプリケーション検索処理S1500の<2回目の呼び出し>の説明に戻ると、次のステップS1504では、分析対象アプリケーションリストALに分析対象がないので、ステップS1513に進む。 Returning to the explanation of <second call> of the vulnerable application search process S1500, in the next step S1504, since there is no analysis target in the analysis target application list AL, the process proceeds to step S1513.

ステップS1513の判定では、検索結果リストRTは前述のデータ(7)であり、空(NULL)ではないので、そのまま何もせずに脆弱アプリケーション検索処理S1500の<2回目の呼び出し>は終了する。戻り値として前述したデータ(7)の検索結果リストRTが返される。 In the determination of step S1513, since the search result list RT is the above-mentioned data (7) and is not empty (NULL), the <second call> of the vulnerable application search process S1500 ends without doing anything as it is. As a return value, the search result list RT of the above-mentioned data (7) is returned.

前述したように、脆弱アプリケーション検索処理S1500の<2回目の呼び出し>の処理結果は、脅威分析処理S1400による脆弱アプリケーション検索処理S1500の<1回目の呼び出し>に返される。さらに、脅威分析処理S1400の処理結果は、図示しない脅威分析メイン処理に返されて最終的な分析結果である脅威分析結果情報1900が得られる。 As described above, the processing result of the <second call> of the vulnerable application search process S1500 is returned to the <first call> of the vulnerable application search process S1500 by the threat analysis process S1400. Further, the processing result of the threat analysis processing S1400 is returned to the threat analysis main processing (not shown) to obtain the threat analysis result information 1900 which is the final analysis result.

本実施形態では、対象システムとしてコネクティッドカーシステムの例を示したが、これに限定されるものではない。コネクティッドカーシステム以外の他のシステムに対して脅威分析を行ってもよい。 In the present embodiment, an example of a connected car system is shown as a target system, but the present invention is not limited to this. Threat analysis may be performed on systems other than the connected car system.

このように、本実施形態の脅威分析装置100、脅威分析方法、及び脅威分析プログラムによれば、対象システムに含まれる機能アプリケーションについて、システム仕様情報140を用いてモデル化した機能アプリケーションモデル情報500〜900が取得され、事例システムに含まれる脆弱性について、システム仕様情報140を用いてモデル化した脆弱性モデル情報1100〜1300が取得される。そして、機能アプリケーションモデル情報500〜900と脆弱性モデル情報1100〜1300とに基づいて、対象システムの脅威分析が行われる。ここで、システム仕様情報140に含まれる抽象的な仕様情報は、概念設計段階のシステムでも得ることができる。よって、同じシステム仕様情報140を用いて機能アプリケーションモデル情報500〜900及び脆弱性モデル情報1100〜1300を取得することにより、対象システムの機能アプリケーションモデル情報500〜900と事例システムの脆弱性モデル情報1100〜1300とを容易に比較することができ、対象システムに存在し得る脆弱性への脅威分析を行うことができる。従って、概念設計段階の対象システムに対して脅威分析を行うことができる。 As described above, according to the threat analyzer 100, the threat analysis method, and the threat analysis program of the present embodiment, the functional application model information 500 to modeled using the system specification information 140 for the functional application included in the target system. 900 is acquired, and vulnerability model information 1100 to 1300 modeled using the system specification information 140 is acquired for the vulnerability included in the case system. Then, a threat analysis of the target system is performed based on the functional application model information 500 to 900 and the vulnerability model information 1100 to 1300. Here, the abstract specification information included in the system specification information 140 can also be obtained in the system at the conceptual design stage. Therefore, by acquiring the functional application model information 500 to 900 and the vulnerability model information 1100 to 1300 using the same system specification information 140, the functional application model information 500 to 900 of the target system and the vulnerability model information 1100 of the case system are obtained. It can be easily compared with ~ 1300, and threat analysis for vulnerabilities that may exist in the target system can be performed. Therefore, threat analysis can be performed on the target system at the conceptual design stage.

[第2実施形態]
次に、図20から図26を参照しつつ、本発明の第2実施形態に係る脅威分析装置、脅威分析方法、及び脅威分析プログラムについて説明する。なお、第2実施形態では第1実施形態と共通の事柄についての記述を省略し、異なる点についてのみ説明する。特に、同様の構成による同様の作用効果については実施形態毎には逐次言及しない。
[Second Embodiment]
Next, the threat analysis device, the threat analysis method, and the threat analysis program according to the second embodiment of the present invention will be described with reference to FIGS. 20 to 26. In the second embodiment, the description of the matters common to the first embodiment will be omitted, and only the differences will be described. In particular, the same action and effect due to the same configuration will not be mentioned sequentially for each embodiment.

図20は、本発明の第2実施形態に係る脅威分析装置200の物理構成を示すブロック図である。図21は、本発明の第2実施形態に係る脅威分析装置200の機能構成を示すブロック図である。図22は、対象システム管理テーブル2200を示す図である。図23は、脆弱性事例情報管理テーブル2300を示す図である。図24は、脆弱性事例情報登録処理S2400のフローチャートである。図25は、脅威分析サービス管理処理S2500のフローチャートである。図26は、課金情報管理処理S2600のフローチャートである。 FIG. 20 is a block diagram showing a physical configuration of the threat analyzer 200 according to the second embodiment of the present invention. FIG. 21 is a block diagram showing a functional configuration of the threat analyzer 200 according to the second embodiment of the present invention. FIG. 22 is a diagram showing a target system management table 2200. FIG. 23 is a diagram showing a vulnerability case information management table 2300. FIG. 24 is a flowchart of the vulnerability case information registration process S2400. FIG. 25 is a flowchart of the threat analysis service management process S2500. FIG. 26 is a flowchart of the billing information management process S2600.

図20に示すように、脅威分析装置200の主記憶装置107に、対象システム管理テーブル2200と、脆弱性事例情報管理テーブル2300と、脆弱性事例情報登録処理S2400と、脅威分析サービス管理処理S2500と、課金情報管理処理S2600と、がさらに格納され、記憶されている。 As shown in FIG. 20, the target system management table 2200, the vulnerability case information management table 2300, the vulnerability case information registration process S2400, and the threat analysis service management process S2500 are stored in the main memory 107 of the threat analysis device 200. , Billing information management process S2600, and are further stored and stored.

対象システム管理テーブル2200は、対象システムを管理するためのテーブルデータである。対象システム管理テーブル2200は、脅威分析サービス管理処理S2500によって使用される。 The target system management table 2200 is table data for managing the target system. The target system management table 2200 is used by the threat analysis service management process S2500.

脆弱性事例情報管理テーブル2300は、脆弱性モデル情報を管理するためのテーブルデータであり、どのような脆弱性モデル情報を登録したのか、登録者は誰か、など管理用の属性情報を含んでいる。脆弱性事例情報管理テーブル2300は、脆弱性事例情報登録処理S2400によって使用される。 The vulnerability case information management table 2300 is table data for managing the vulnerability model information, and includes attribute information for management such as what kind of vulnerability model information is registered and who is the registrant. .. The vulnerability case information management table 2300 is used by the vulnerability case information registration process S2400.

脆弱性事例情報登録処理S2400は、情報登録者IRによる脆弱性モデル情報1100〜1300の登録を管理するプログラムである。 The vulnerability case information registration process S2400 is a program that manages the registration of vulnerability model information 1100 to 1300 by the information registrant IR.

脅威分析サービス管理処理S2500は、サービス利用者SUに、第1実施形態で説明した脅威分析処理S1400及び脆弱アプリケーション検索処理S1500を用い、脅威分析装置200によるサービス(以下、「脅威分析サービス」という)を提供するプログラムである。サービス利用者SUは、自分が設計している情報システムの脅威分析を行うために脅威分析サービスを利用する者である。 The threat analysis service management process S2500 uses the threat analysis process S1400 and the vulnerable application search process S1500 described in the first embodiment for the service user SU, and provides a service by the threat analysis device 200 (hereinafter referred to as “threat analysis service”). Is a program that provides. The service user SU is a person who uses the threat analysis service to perform threat analysis of the information system he / she designs.

課金情報管理処理S2600は、脆弱性モデル情報1100〜1300の情報登録者IRに対する登録のインセンティブである報酬(奨励金)を算出するプログラムである。情報登録者IRは、脆弱性モデル情報1100〜1300を登録する者である。 The billing information management process S2600 is a program for calculating a reward (incentive) that is an incentive for registration of the information registrant IR of vulnerability model information 1100 to 1300. The information registrant IR is a person who registers vulnerability model information 1100 to 1300.

図21に示すように、脅威分析装置200は、その機能構成として、利用料算出部210と、報酬算出部220と、をさらに備える。 As shown in FIG. 21, the threat analysis device 200 further includes a usage fee calculation unit 210 and a reward calculation unit 220 as its functional configuration.

利用料算出部210は、脅威分析を行った対象システムに対して、利用料を算出するように構成されている。 The usage fee calculation unit 210 is configured to calculate the usage fee for the target system for which the threat analysis has been performed.

報酬算出部220は、利用料算出部210により算出された利用料に基づいて、脆弱性モデル情報1100〜1300に対する報酬を算出するように構成されている。この報酬は、対象システムの脅威分析の結果、当該対象システムが脆弱性を含むときに、その脆弱性に対応する脆弱性モデル情報1100〜1300に対して算出される。 The reward calculation unit 220 is configured to calculate the reward for the vulnerability model information 1100 to 1300 based on the usage fee calculated by the usage fee calculation unit 210. As a result of the threat analysis of the target system, this reward is calculated for the vulnerability model information 1100 to 1300 corresponding to the vulnerability when the target system contains a vulnerability.

脆弱性モデル情報1100〜1300は、一例として、米国MITRE社のCVE(Common Vulnerabilities and Exposures)のように一般から登録される脆弱性情報に基づいて、これをモデル化して作成される。情報技術の進歩と情報システムの複雑性は年々増大化の一途をたどっている。それに伴い、脆弱性が発見される分野は年々拡大し、日々新しい事例が発見される。そのため、脅威分析のサービス事業者は、自社のリソースのみを用いて、単独で脆弱性情報を収集し、モデル化することにより、脆弱性モデル情報を整備することは困難である。すなわち、一般の他の事業者から、脆弱性事例情報を報告してもらい、可能であればモデル化してもらい、脆弱性モデル情報の内容を、日々最新のものに更新する必要がある。 Vulnerability model information 1100 to 1300 is created by modeling it based on vulnerability information registered from the general public, such as CVE (Common Vulnerabilities and Exposures) of MITER Corporation in the United States. The progress of information technology and the complexity of information systems are increasing year by year. Along with this, the fields in which vulnerabilities are discovered are expanding year by year, and new cases are discovered every day. Therefore, it is difficult for a threat analysis service provider to prepare vulnerability model information by independently collecting and modeling vulnerability information using only its own resources. In other words, it is necessary to have other general businesses report vulnerability case information, model it if possible, and update the content of the vulnerability model information daily.

しかし、現状では、一般の事業者には脆弱性事例情報を報告し、登録するための労力を支払う金銭等のインセンティブがないため、脆弱性モデル情報をもれなく、品質良く整備することは困難であった。 However, at present, general businesses do not have incentives such as money to report vulnerability case information and pay the effort to register it, so it is difficult to maintain good quality without missing vulnerability model information. It was.

本実施形態に係る脅威分析装置200では、脅威分析サービスで利用した脆弱性モデル情報1100〜1300について、その情報を登録した人々に利用料の一部を情報登録への報酬としてフィードバックする仕組みを備えることを特徴とする。これにより、脆弱性モデル情報1100〜1300の登録者には登録のインセンティブを与え、登録と利用のサイクルがうまく回転し、脅威分析のサービス事業が継続的事業として成立することを可能とする。 The threat analysis device 200 according to the present embodiment includes a mechanism for feeding back a part of the usage fee to the people who registered the vulnerability model information 1100 to 1300 used in the threat analysis service as a reward for information registration. It is characterized by that. As a result, the registrants of vulnerability model information 1100 to 1300 are given an incentive for registration, the cycle of registration and use is rotated well, and the threat analysis service business can be established as a continuous business.

次に、図22を参照しつつ、脅威分析装置200で使用される対象システム管理テーブル2200について説明する。図22は、対象システム管理テーブル2200を示す図である。 Next, the target system management table 2200 used in the threat analyzer 200 will be described with reference to FIG. 22. FIG. 22 is a diagram showing a target system management table 2200.

図22に示すように、対象システム管理テーブル2200は、対象システム毎に、脅威分析の結果としてどのような脆弱性が検出されたのか、対象システムと脆弱性との関係情報を格納する。具体的には、「第1対象システム」は、サービス利用者SUの「山本」が脅威分析サービスの提供を受け、サービス利用料は「1000円」であり、脅威分析の結果、「第1対象システム」は、「第1脆弱性」と「第3脆弱性」とを含むことが示されている。 As shown in FIG. 22, the target system management table 2200 stores information on what kind of vulnerabilities are detected as a result of threat analysis and the relationship between the target system and the vulnerabilities for each target system. Specifically, in the "first target system", the service user SU "Yamamoto" receives the threat analysis service, and the service usage fee is "1000 yen". As a result of the threat analysis, the "first target system" The "system" is shown to include a "first vulnerability" and a "third vulnerability".

なお、対象システム管理テーブル2200の構成は、図22に示す例に限定されるものではない。以下の対応関係が管理されていれば、脆弱性事例情報管理テーブルは、他の情報形式であってもよく、また複数の表に分けて管理されていてもよい。
第1管理情報:対象システムの識別情報と、サービス利用者URや利用日時、サービス利用料等の分析サービス管理業務一般に関連する属性情報
第2管理情報:対象システムの識別情報と、脅威分析の結果として得られた当該対象システムに内在する脆弱性の脆弱性モデル情報の識別情報及び脆弱性モデル情報の格納先への参照情報(リンク情報)を関連づけた情報
The configuration of the target system management table 2200 is not limited to the example shown in FIG. As long as the following correspondence is managed, the vulnerability case information management table may be in another information format, or may be managed by being divided into a plurality of tables.
1st management information: Analysis of target system identification information and service user UR, usage date and time, service usage fee, etc. 2nd management information: Target system identification information and threat analysis results Information related to the identification information of the vulnerability model information of the vulnerability inherent in the target system and the reference information (link information) to the storage destination of the vulnerability model information.

後述するように、対象システム管理テーブル2200の情報を用いて、脆弱性モデル情報1100〜1300の情報登録者IRに支払う報酬を算出することが可能となる。 As will be described later, it is possible to calculate the reward to be paid to the information registrant IR of the vulnerability model information 1100 to 1300 by using the information of the target system management table 2200.

次に、図23を参照しつつ、脅威分析装置200で使用される脆弱性事例情報管理テーブル2300について説明する。図23は、脆弱性事例情報管理テーブル2300を示す図である。 Next, the vulnerability case information management table 2300 used in the threat analyzer 200 will be described with reference to FIG. 23. FIG. 23 is a diagram showing a vulnerability case information management table 2300.

図23に示すように、脆弱性事例情報管理テーブル2300は、脅威分析に使用する脆弱性モデル情報1100〜1300を、当該脆弱性が発見された事例システム名称と対応付けて管理している。具体的には、事例システム名称が「第1事例システム」であるシステムの脆弱性が、登録者「田中」により登録され「第2脆弱性」と「第3脆弱性」を含んでいる。「第2脆弱性」は、対象システム管理テーブル2200で管理する「第2事例システム」と「第3事例システム」の2つの脅威分析の際に利用され、その結果、利用料として「100円」が格納されている。同様に、「第3脆弱性」は、「第1対象システム」と「第3対象システム」の2つの脅威分析の際に使用され、利用料として「150円」が格納されている。 As shown in FIG. 23, the vulnerability case information management table 2300 manages the vulnerability model information 1100 to 1300 used for threat analysis in association with the case system name in which the vulnerability was found. Specifically, the vulnerabilities of the system whose case system name is "first case system" are registered by the registrant "Tanaka" and include "second vulnerability" and "third vulnerability". The "second vulnerability" is used in the two threat analyzes of the "second case system" and the "third case system" managed in the target system management table 2200, and as a result, the usage fee is "100 yen". Is stored. Similarly, the "third vulnerability" is used in the two threat analyzes of the "first target system" and the "third target system", and "150 yen" is stored as a usage fee.

なお、脆弱性事例情報管理テーブル2300の構成は図23の例に限定されるものではない。脆弱性事例情報管理テーブルは、下記の対応関係が管理されていれば、他の情報形式であってもよく、また複数の表に分けて管理されていてもよい。
第1管理情報:事例システムの識別情報と、登録日時や登録者等の登録サービス管理業務一般に関連する属性情報
第2管理情報:事例システムの識別情報と、当該事例システムに内在する脆弱性の脆弱性モデル情報の識別情報及び脆弱性モデル情報の格納先への参照情報(リンク情報)を関連づけた情報
第3管理情報:事例システムの識別情報と、当該事例システムに内在する脆弱性の脆弱性モデル情報を関連付けた情報毎に、当該情報が脅威分析に利用された利用履歴情報(利用料又は利用回数等)
The configuration of the vulnerability case information management table 2300 is not limited to the example shown in FIG. 23. The vulnerability case information management table may be in another information format as long as the following correspondence is managed, or may be managed by being divided into a plurality of tables.
1st management information: Case system identification information and attribute information related to registration service management work such as registration date and time and registrants 2nd management information: Case system identification information and vulnerabilities inherent in the case system Information related to the identification information of the sex model information and the reference information (link information) to the storage destination of the vulnerability model information. Third management information: The identification information of the case system and the vulnerability model of the vulnerability inherent in the case system. For each information associated with the information, usage history information (usage fee, number of times of use, etc.) in which the information was used for threat analysis

次に、図24を参照しつつ、脅威分析装置200で実行される脆弱性事例情報登録処理S2400について説明する。図24は、脆弱性事例情報登録処理S2400のフローチャートである。 Next, the vulnerability case information registration process S2400 executed by the threat analyzer 200 will be described with reference to FIG. 24. FIG. 24 is a flowchart of the vulnerability case information registration process S2400.

脆弱性事例情報登録処理S2400が起動されると、図24に示すように、実行部180は、情報登録者IRによる脆弱性事例情報130の登録要求を受け付ける(S2401)。ステップS2401では、実行部180は、登録要求が来るまで待ち受ける。 When the vulnerability case information registration process S2400 is started, as shown in FIG. 24, the execution unit 180 accepts the registration request of the vulnerability case information 130 by the information registrant IR (S2401). In step S2401, the execution unit 180 waits until a registration request comes.

次に、第2取得部160は、情報登録者IRによって入力された脆弱性事例情報130を登録する(S2402)。 Next, the second acquisition unit 160 registers the vulnerability case information 130 input by the information registrant IR (S2402).

次に、実行部180は、情報登録者IRによって入力された脆弱性事例情報を、図23に示す脆弱性事例情報管理テーブル2300に追加して登録する(S2403)。 Next, the execution unit 180 adds and registers the vulnerability case information input by the information registrant IR to the vulnerability case information management table 2300 shown in FIG. 23 (S2403).

ステップS2403の後、実行部180は、脆弱性事例情報登録処理S2400を終了する。 After step S2403, the execution unit 180 ends the vulnerability case information registration process S2400.

本実施形態では、登録要求を1件受け付けると脆弱性事例情報登録処理S2400を終了する例を示したが、これに限定されるものではない。脆弱性事例情報登録処理は、例えば、次の登録要求を待つようにループ処理構造であってもよい。 In the present embodiment, an example in which the vulnerability case information registration process S2400 is terminated when one registration request is received is shown, but the present invention is not limited to this. The vulnerability case information registration process may have, for example, a loop process structure so as to wait for the next registration request.

次に、図25を参照しつつ、脅威分析装置200で実行される脅威分析サービス管理処理S2500について説明する。図25は、脅威分析サービス管理処理S2500のフローチャートである。 Next, the threat analysis service management process S2500 executed by the threat analysis device 200 will be described with reference to FIG. 25. FIG. 25 is a flowchart of the threat analysis service management process S2500.

脅威分析サービス管理処理S2500が起動されると、図25に示すように、実行部180は、サービス利用者SUによる脅威分析の利用要求を受け付ける(S2501)。ステップS2501では、実行部180は、利用要求が来るまで待ち受ける。 When the threat analysis service management process S2500 is started, as shown in FIG. 25, the execution unit 180 receives a request for use of threat analysis by the service user SU (S2501). In step S2501, the execution unit 180 waits until a usage request comes.

次に、第1取得部150は、サービス利用者SUによって入力された対象システム設計情報120を登録する(S2502)。 Next, the first acquisition unit 150 registers the target system design information 120 input by the service user SU (S2502).

次に、実行部180は、脅威分析処理S1400を呼び出す(S2503)。これにより、対象システムに対して脅威分析が行われる。 Next, the execution unit 180 calls the threat analysis process S1400 (S2503). As a result, threat analysis is performed on the target system.

次に、実行部180は、脅威分析結果情報1900を用いて図22に示す対象システム管理テーブル2200を更新する(S2504)。 Next, the execution unit 180 updates the target system management table 2200 shown in FIG. 22 using the threat analysis result information 1900 (S2504).

次に、利用料算出部210は、ステップS2503で脅威分析を行った対象システムに対して利用料を算出する(S2504)。具体的には、利用料算出部210は、脅威分析に要したCPU処理時間等のシステムリソース利用量を用い、所定の利用料計算式に従う利用料を算出する。 Next, the usage fee calculation unit 210 calculates the usage fee for the target system for which the threat analysis was performed in step S2503 (S2504). Specifically, the usage fee calculation unit 210 calculates the usage fee according to a predetermined usage fee calculation formula by using the system resource usage amount such as the CPU processing time required for the threat analysis.

次に、利用料算出部210は、ステップS2504で算出された利用料を、対象システム管理テーブル2200の利用料に加算して登録する(S2505)。例えば、対象システム管理テーブル2200の「第1対象システム」に、利用料として「1000円」が登録される。 Next, the usage fee calculation unit 210 adds the usage fee calculated in step S2504 to the usage fee of the target system management table 2200 and registers it (S2505). For example, "1000 yen" is registered as a usage fee in the "first target system" of the target system management table 2200.

サービス利用者SUによる要求毎に脅威分析が行われ、脅威分析の結果及び利用料が対象システム管理テーブル2200に登録されることになる。 A threat analysis is performed for each request by the service user SU, and the result of the threat analysis and the usage fee are registered in the target system management table 2200.

ステップS2505の後、実行部180は、脅威分析サービス管理処理S2500を終了する。 After step S2505, the execution unit 180 ends the threat analysis service management process S2500.

このように、脅威分析を行った対象システムに対して利用料を算出することにより、サービス利用者URに利用料を請求することで、利用料の一部を、サービス利用者UR以外の者、例えば情報登録者IRに報酬として還元(フィードバック)することができる。 In this way, by calculating the usage fee for the target system for which the threat analysis was performed, the usage fee is charged to the service user UR, and a part of the usage fee is paid to a person other than the service user UR. For example, it can be returned (feedback) to the information registrant IR as a reward.

本実施形態では、利用要求を1件受け付けると脅威分析サービス管理処理S2500が終了する例を示したが、これに限定されるものではない。脅威分析サービス管理処理は、次の利用要求を待つようにループ処理構造であってもよい。 In the present embodiment, an example is shown in which the threat analysis service management process S2500 is terminated when one usage request is received, but the present embodiment is not limited to this. The threat analysis service management process may have a loop process structure so as to wait for the next usage request.

次に、図26を参照しつつ、脅威分析装置200で実行される課金情報管理処理S2600について説明する。図26は、課金情報管理処理S2600のフローチャートである。 Next, the billing information management process S2600 executed by the threat analyzer 200 will be described with reference to FIG. 26. FIG. 26 is a flowchart of the billing information management process S2600.

課金情報管理処理S2600が起動されると、図26に示すように、実行部180は、対象システム管理テーブル2200に利用料が未請求の結果レコードがあるか否かを判定する(S2601)。 When the billing information management process S2600 is started, as shown in FIG. 26, the execution unit 180 determines whether or not there is a result record in which the usage fee is not charged in the target system management table 2200 (S2601).

判定の結果、対象システム管理テーブル2200に利用料が未請求の結果レコードがある場合、実行部180は、未請求の結果レコードのうちの先頭の結果レコードを取り出し、サービス利用者SUに利用料を請求する(S2602)。例えば、図22に示す「第1対象システム」の利用料「1000円」をサービス利用者「山本」に請求する。 As a result of the determination, when there is a result record for which the usage fee has not been charged in the target system management table 2200, the execution unit 180 extracts the first result record among the unbilled result records and charges the service user SU the usage fee. Request (S2602). For example, the service user "Yamamoto" is charged the usage fee "1000 yen" for the "first target system" shown in FIG.

次に、報酬算出部220は、当該結果レコードの対象システムが含む各脆弱性について、脆弱性に対応する脆弱性モデル情報1100〜1300に対する報酬を、対象システムの利用料に基づいて算出する(S2603)。具体的には、報酬算出部220は、対象システムの利用料に所定の脆弱性利用料計算式を適用し、脆弱性モデル情報に対する報酬を算出する。 Next, the reward calculation unit 220 calculates the reward for the vulnerability model information 1100 to 1300 corresponding to the vulnerability for each vulnerability included in the target system of the result record based on the usage fee of the target system (S2603). ). Specifically, the reward calculation unit 220 applies a predetermined vulnerability usage fee calculation formula to the usage fee of the target system, and calculates the reward for the vulnerability model information.

例えば、図22に示す「第1対象システム」はサービス利用料が「1000円」であり、「第1脆弱性」と「第3脆弱性」の2つを含む。ここで、利用料の10%を、脅威分析に使用した脆弱性モデル情報1100〜1300の報酬として支払う契約条件があると仮定する。この場合、「第1分析対象システム」の脅威分析による脆弱性モデル情報に対する報酬は、1000円×10%=100円となる。また、脅威分析を行った対象システムが複数の脆弱性を含む場合、算出された脆弱性モデル情報の報酬を対象システムに含まれる脆弱性情報の数で按分するものとすれば、「第1脆弱性」の脆弱性モデル情報への報酬として50円が、「第3脆弱性」の脆弱性モデル情報への報酬として50円が、それぞれ算出されることになる。 For example, the "first target system" shown in FIG. 22 has a service usage fee of "1000 yen" and includes two "first vulnerability" and "third vulnerability". Here, it is assumed that there is a contract condition in which 10% of the usage fee is paid as a reward for the vulnerability model information 1100 to 1300 used for threat analysis. In this case, the reward for the vulnerability model information by the threat analysis of the "first analysis target system" is 1000 yen x 10% = 100 yen. In addition, when the target system for which threat analysis is performed contains multiple vulnerabilities, if the calculated vulnerability model information reward is proportionally divided by the number of vulnerability information contained in the target system, "1st vulnerability" 50 yen will be calculated as a reward for the vulnerability model information of "sexuality", and 50 yen will be calculated as a reward for the vulnerability model information of "third vulnerability".

このように、脅威分析の結果、対象システムが脆弱性を含むときに、当該脆弱性に対応する脆弱性モデル情報1100〜1300に対する報酬を、対象システムの利用料に基づいて算出することにより、脆弱性モデル情報1100〜1300の情報登録者IRに登録のインセンティブを与えることができる。従って、登録と利用のサイクルがうまく回転し、脅威分析のサービス事業が継続的事業として成立することできる。 In this way, when the target system contains vulnerabilities as a result of threat analysis, the vulnerabilities are calculated by calculating the reward for the vulnerability model information 1100 to 1300 corresponding to the vulnerabilities based on the usage fee of the target system. It is possible to give an incentive for registration to the information registrant IR of sex model information 1100 to 1300. Therefore, the cycle of registration and use can be rotated well, and the threat analysis service business can be established as a continuous business.

次に、報酬算出部220は、図23に示す脆弱性事例情報管理テーブル2300において、ステップS2603で報酬が算出された脆弱性を含む全ての脆弱性事例レコードを検索する。(S2604)。 Next, the reward calculation unit 220 searches all the vulnerability case records including the vulnerability for which the reward was calculated in step S2603 in the vulnerability case information management table 2300 shown in FIG. 23. (S2604).

例えば、図23に示す脆弱性事例情報管理テーブル2300を検索すると、「第1脆弱性」を含む事例システムの名称は、「第2事例システム」と「第3事例システム」の2件である。また、「第3脆弱性」を含む事例システムの名称は、「第1事例システム」の1件のみである。 For example, when the vulnerability case information management table 2300 shown in FIG. 23 is searched, the names of the case systems including the "first vulnerability" are "second case system" and "third case system". Moreover, the name of the case system including the "third vulnerability" is only one case of the "first case system".

次に、報酬算出部220は、ステップS2603で算出された報酬を当該脆弱性事例レコードの該当する脆弱性の報酬に加算して更新する(S2605)。脆弱性事例レコードが複数ある場合、報酬算出部220は、算出された報酬をステップS2604で検索された脆弱性事例レコードの数で按分し、按分した報酬を当該脆弱性事例レコードの該当する脆弱性の報酬に加算して更新する。 Next, the reward calculation unit 220 adds the reward calculated in step S2603 to the reward of the corresponding vulnerability in the vulnerability case record and updates it (S2605). When there are a plurality of vulnerability case records, the reward calculation unit 220 prorates the calculated reward by the number of vulnerability case records searched in step S2604, and prorates the prorated reward to the corresponding vulnerability in the vulnerability case record. It will be updated in addition to the reward of.

例えば、ステップS2603で算出された「第1脆弱性」の脆弱性モデル情報に対する報酬の50円を、ステップS2604で検索された事例システムの名称である「第2事例システム」と「第3事例システム」の2件のレコードで按分し、「第2事例システム」と「第3事例システム」の各レコードにおける「第1脆弱性」の「報酬」の欄に、50円÷2=25円を加算する。また、「第3脆弱性」の脆弱性モデル情報に対する報酬の50円を、「第3脆弱性」を登録した事例システムの名称である「第1事例システム」のレコードの「第3脆弱性」の「報酬」の欄に加算する。 For example, the reward of 50 yen for the vulnerability model information of the "first vulnerability" calculated in step S2603 is the name of the case system searched in step S2604, "second case system" and "third case system". , And add 50 yen / 2 = 25 yen to the "Reward" column of "1st vulnerability" in each record of "2nd case system" and "3rd case system". To do. In addition, the reward of 50 yen for the vulnerability model information of "3rd vulnerability" is "3rd vulnerability" in the record of "1st case system" which is the name of the case system in which "3rd vulnerability" is registered. Add to the "Reward" column of.

対象システム管理テーブル2200及び脆弱性事例情報管理テーブル2300は、「第1脆弱性」、「第2脆弱性」、「第3脆弱性」の脆弱性識別情報で結び付けられているので、対象システム管理テーブル2200で管理する利用料の一部を、脆弱性事例情報管理テーブル2300で管理する脆弱性モデル情報の報酬として配分することが可能となる。 Since the target system management table 2200 and the vulnerability case information management table 2300 are linked by the vulnerability identification information of "first vulnerability", "second vulnerability", and "third vulnerability", the target system management A part of the usage fee managed in Table 2200 can be allocated as a reward for the vulnerability model information managed in the Vulnerability Case Information Management Table 2300.

なお、脆弱性事例情報の情報登録者IRに対するインセンティブの配賦方法は、前述した例に限定されるものではない。別方法として、例えば、脆弱性事例情報管理テーブル2300の各脆弱性情報について、該脆弱性の利用単価をあらかじめ設定して格納しておく方法も考えられる。この場合、対象システム管理テーブル2200のサービス利用料の算出時に、対象システムが含む脆弱性識別情報に応じて、その脆弱性識別情報に対応する脆弱性の利用単価を脆弱性事例情報管理テーブル2300から検索し、該利用単価を積み上げることで、分析サービス利用料に対して脆弱性データ利用料を反映させることとなる。 The method of allocating the incentive to the information registrant IR of the vulnerability case information is not limited to the above-mentioned example. As another method, for example, for each vulnerability information in the vulnerability case information management table 2300, a method of setting and storing the usage unit price of the vulnerability in advance can be considered. In this case, when calculating the service usage fee of the target system management table 2200, the usage unit price of the vulnerability corresponding to the vulnerability identification information included in the target system is calculated from the vulnerability case information management table 2300. By searching and accumulating the usage unit price, the vulnerability data usage fee will be reflected in the analysis service usage fee.

ステップS2605の後、実行部180は、対象システム管理テーブル2200に、利用料が未請求の結果レコードがなくなるまで、ステップS2601〜ステップS2605の各ステップを繰り返す。 After step S2605, the execution unit 180 repeats each step of steps S2601 to S2605 until there are no records as a result of not charging the usage fee in the target system management table 2200.

対象システム管理テーブル2200に利用料が未請求の結果レコードがなくなった場合、実行部180は、脆弱性事例情報管理テーブル2300に登録された各事例システムについて、当該事例システムに含まれる全ての脆弱性の報酬を合計して合計額を算出し、該算出した報酬合計額を各情報登録者IRに支払う(S2606)。
ステップS2606の後、実行部180は、課金情報管理処理S2600を終了する。
When there are no records in the target system management table 2200 as a result of not charging the usage fee, the execution unit 180 describes all the vulnerabilities included in the case system for each case system registered in the vulnerability case information management table 2300. The total amount is calculated by totaling the rewards of the above, and the calculated total reward amount is paid to each information registrant IR (S2606).
After step S2606, the execution unit 180 ends the billing information management process S2600.

このように、本実施形態の脅威分析装置200、脅威分析方法、及び脅威分析プログラムによれば、脅威分析を行った対象システムに対して利用料が算出される。これにより、サービス利用者に利用料を請求することで、利用料の一部をサービス利用者以外の者、例えば情報登録者に報酬として還元(フィードバック)することができる。 As described above, according to the threat analysis device 200, the threat analysis method, and the threat analysis program of the present embodiment, the usage fee is calculated for the target system for which the threat analysis is performed. As a result, by charging the service user for the usage fee, a part of the usage fee can be returned (feedback) as a reward to a person other than the service user, for example, an information registrant.

また、本実施形態の脅威分析装置200、脅威分析方法、及び脅威分析プログラムによれば、脅威分析の結果、対象システムが脆弱性を含むときに、当該脆弱性に対応する脆弱性モデル情報1100〜1300に対する報酬が、対象システムの利用料に基づいて算出される。これにより、脆弱性モデル情報1100〜1300の情報登録者IRに登録のインセンティブを与えることができる。従って、登録と利用のサイクルがうまく回転し、脅威分析のサービス事業が継続的事業として成立することできる。 Further, according to the threat analyzer 200, the threat analysis method, and the threat analysis program of the present embodiment, when the target system contains a vulnerability as a result of the threat analysis, the vulnerability model information 1100 to correspond to the vulnerability is found. The reward for 1300 is calculated based on the usage fee of the target system. As a result, it is possible to give an incentive for registration to the information registrant IR of vulnerability model information 1100 to 1300. Therefore, the cycle of registration and use can be rotated well, and the threat analysis service business can be established as a continuous business.

以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。各実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。 The embodiments described above are for facilitating the understanding of the present invention, and are not for limiting and interpreting the present invention. Each element included in each embodiment and its arrangement, material, condition, shape, size, etc. are not limited to those exemplified, and can be changed as appropriate. In addition, the configurations shown in different embodiments can be partially replaced or combined.

100…脅威分析装置、101…バス、102…中央情報処理装置(CPU)、103…入出力プロセッサ(IOP)、104…表示装置、105…入力装置、106…二次記憶装置、107…主記憶装置、120…対象システム設計情報、130…脆弱性事例情報、140…システム仕様情報、150…第1取得部、160…第2取得部、170…更新部、180…実行部、200…脅威分析装置、210…利用料算出部、220…報酬算出部、400…機能ブロック定義情報、410…車両電子制御ユニット(ECU)、411…バス、414…主記憶装置、415…ハーネス(通信アダプタ)、416…CANBus通信アダプタ、417…車両電子制御機能アプリケーション、420…車両通信ゲートウェイ(GW)、428…車両通信制御機能アプリケーション、429b…情報表示機能アプリケーション、430…コンソールディスプレイ(CD)、438…ブラウザ(Webkit)、439a…車両情報表示機能アプリケーション、439b…Web情報表示機能アプリケーション、440…Webサーバ(WS)、448…Webサーバ(httpd)、449…Web情報サーバ機能アプリケーション、450…CANBus、451…Ethernet、500〜900…機能アプリケーションモデル情報、1000…システム構成要素関係情報、1100〜1300…脆弱性モデル情報、S1400…脅威分析処理、S1500…脆弱アプリケーション検索処理、1900…脅威分析結果情報、1950…攻撃経路ツリー、1961…Web情報表示機能アプリケーション、1962…Web情報サーバ機能アプリケーション、1963…通信経路、1964…通信経路、2200…対象システム管理テーブル、2300…脆弱性事例情報管理テーブル、S2400…脆弱性事例情報登録処理、S2500…脅威分析サービス管理処理、S2600…課金情報管理処理、IR…情報登録者、SU…サービス利用者、U…ユーザ。 100 ... Threat analyzer, 101 ... Bus, 102 ... Central information processing device (CPU), 103 ... Input / output processor (IOP), 104 ... Display device, 105 ... Input device, 106 ... Secondary storage device, 107 ... Main storage Device, 120 ... Target system design information, 130 ... Vulnerability case information, 140 ... System specification information, 150 ... 1st acquisition department, 160 ... 2nd acquisition department, 170 ... Update department, 180 ... Execution department, 200 ... Threat analysis Device, 210 ... Usage fee calculation unit, 220 ... Reward calculation unit, 400 ... Functional block definition information, 410 ... Vehicle electronic control unit (ECU), 411 ... Bus, 414 ... Main storage device, 415 ... Harness (communication adapter), 416 ... CANBus communication adapter, 417 ... Vehicle electronic control function application, 420 ... Vehicle communication gateway (GW), 428 ... Vehicle communication control function application, 229b ... Information display function application, 430 ... Console display (CD), 438 ... Browser ( Webkit), 439a ... Vehicle information display function application, 439b ... Web information display function application, 440 ... Web server (WS), 448 ... Web server (http), 449 ... Web information server function application, 450 ... CANBus, 451 ... Ethernet , 500-900 ... Functional application model information, 1000 ... System component related information, 1100-1300 ... Vulnerability model information, S1400 ... Threat analysis processing, S1500 ... Vulnerable application search processing, 1900 ... Threat analysis result information, 1950 ... Attack Route tree, 1961 ... Web information display function application, 1962 ... Web information server function application, 1963 ... Communication route, 1964 ... Communication route, 2200 ... Target system management table, 2300 ... Vulnerability case information management table, S2400 ... Vulnerability case Information registration process, S2500 ... Threat analysis service management process, S2600 ... Billing information management process, IR ... Information registrant, SU ... Service user, U ... User.

Claims (11)

対象システムに含まれる機能アプリケーションについて、システムの仕様を規定するためのシステム仕様情報を用いてモデル化した機能アプリケーションモデル情報を取得する第1取得部と、
事例システムに含まれる脆弱性について前記システム仕様情報を用いてモデル化した脆弱性モデル情報を取得する第2取得部と、
前記機能アプリケーションモデル情報と前記脆弱性モデル情報とに基づいて前記対象システムの脅威分析を行う実行部と、を備える、
脅威分析装置。
For the functional application included in the target system, the first acquisition unit that acquires the functional application model information modeled using the system specification information for defining the system specifications, and
A second acquisition unit that acquires vulnerability model information modeled using the system specification information for vulnerabilities included in the case system,
It includes an execution unit that performs threat analysis of the target system based on the functional application model information and the vulnerability model information.
Threat analyzer.
前記脆弱性モデル情報は、攻撃成立条件及び攻撃結果の情報を含み、
前記第2取得部は、複数の前記脆弱性モデル情報を取得し、
前記機能アプリケーションモデル情報が前記複数の脆弱性モデル情報のうちの少なくとも一つの前記攻撃条件を満たすときに、該脆弱性モデル情報の前記攻撃成立条件及び前記攻撃結果の情報に基づいて前記機能アプリケーションモデル情報の一部を更新する更新部をさらに備え、
前記実行部は、更新された前記機能アプリケーションモデル情報と前記複数の脆弱性モデル情報とに基づいて前記対象システムの脅威分析を行う、
請求項1に記載の脅威分析装置。
The vulnerability model information includes information on attack establishment conditions and attack results.
The second acquisition unit acquires a plurality of the vulnerability model information.
When the functional application model information satisfies at least one of the attack conditions of the plurality of vulnerability model information, the functional application model is based on the attack establishment condition and the attack result information of the vulnerability model information. It also has an update section that updates part of the information.
The execution unit performs threat analysis of the target system based on the updated functional application model information and the plurality of vulnerability model information.
The threat analyzer according to claim 1.
前記対象システムは、第1機能アプリケーションと、該第1機能アプリケーションと通信接続可能な第2機能アプリケーションとを含み、
前記第1取得部は、前記第1機能アプリケーションの前記機能アプリケーションモデル情報と前記第2機能アプリケーションの前記機能アプリケーションモデル情報とを取得し、
前記実行部は、前記第1機能アプリケーションの前記機能アプリケーションモデル情報及び前記第2機能アプリケーションの前記機能アプリケーションモデル情報と、前記脆弱性モデル情報とに基づいて前記対象システムの脅威分析を行う、
請求項1又は2に記載の脅威分析装置。
The target system includes a first function application and a second function application capable of communicating with the first function application.
The first acquisition unit acquires the functional application model information of the first functional application and the functional application model information of the second functional application.
The execution unit performs threat analysis of the target system based on the functional application model information of the first functional application, the functional application model information of the second functional application, and the vulnerability model information.
The threat analyzer according to claim 1 or 2.
前記脅威分析を行った前記対象システムに対して利用料を算出する利用料算出部をさらに備える、
請求項1から3のいずれか一項に記載の脅威分析装置。
A usage fee calculation unit for calculating a usage fee for the target system for which the threat analysis has been performed is further provided.
The threat analyzer according to any one of claims 1 to 3.
前記脅威分析の結果、前記対象システムが脆弱性を含むときに、該脆弱性に対応する前記脆弱性モデル情報に対する報酬を前記利用料に基づいて算出する報酬算出部をさらに備える、
請求項4に記載の脅威分析装置。
As a result of the threat analysis, when the target system includes a vulnerability, it further includes a reward calculation unit that calculates a reward for the vulnerability model information corresponding to the vulnerability based on the usage fee.
The threat analyzer according to claim 4.
対象システムに含まれる機能アプリケーションについて、システムの仕様を規定するためのシステム仕様情報を用いてモデル化した機能アプリケーションモデル情報を取得する第1取得ステップと、
事例システムに含まれる脆弱性について前記システム仕様情報を用いてモデル化した脆弱性モデル情報を取得する第2取得ステップと、
前記機能アプリケーションモデル情報と前記脆弱性モデル情報とに基づいて前記対象システムの脅威分析を行う実行ステップと、を含む、
脅威分析方法。
For the functional application included in the target system, the first acquisition step to acquire the functional application model information modeled using the system specification information for defining the system specifications, and
The second acquisition step to acquire the vulnerability model information modeled using the system specification information for the vulnerability included in the case system, and
Including an execution step of performing a threat analysis of the target system based on the functional application model information and the vulnerability model information.
Threat analysis method.
前記脆弱性モデル情報は、攻撃成立条件及び攻撃結果の情報を含み
前記第2取得ステップは、複数の前記脆弱性モデル情報を取得し、
前記機能アプリケーションモデル情報が前記複数の脆弱性モデル情報のうちの少なくとも一つの前記攻撃条件を満たすときに、該脆弱性モデル情報の前記攻撃成立条件及び前記攻撃結果の情報に基づいて前記機能アプリケーションモデル情報の一部を更新する更新ステップをさらに含み、
前記実行ステップは、更新された前記機能アプリケーションモデル情報と前記複数の脆弱性モデル情報とに基づいて前記対象システムの脅威分析を行うことを含む、
請求項6に記載の脅威分析方法。
The vulnerability model information includes information on attack establishment conditions and attack results, and the second acquisition step acquires a plurality of the vulnerability model information.
When the functional application model information satisfies at least one of the attack conditions of the plurality of vulnerability model information, the functional application model is based on the attack establishment condition and the attack result information of the vulnerability model information. Includes additional update steps to update some of the information
The execution step includes performing a threat analysis of the target system based on the updated functional application model information and the plurality of vulnerability model information.
The threat analysis method according to claim 6.
前記対象システムは、第1機能アプリケーションと、該第1機能アプリケーションと通信接続可能な第2機能アプリケーションとを含み、
前記第1取得ステップは、前記第1機能アプリケーションの前記機能アプリケーションモデル情報と前記第2機能アプリケーションの前記機能アプリケーションモデル情報とを取得し、
前記実行ステップは、前記第1機能アプリケーションの前記機能アプリケーションモデル情報及び前記第2機能アプリケーションの前記機能アプリケーションモデル情報と、前記脆弱性モデル情報とに基づいて前記対象システムの脅威分析を行うことを含む、
請求項6又は7に記載の脅威分析方法。
The target system includes a first function application and a second function application capable of communicating with the first function application.
The first acquisition step acquires the functional application model information of the first functional application and the functional application model information of the second functional application.
The execution step includes performing threat analysis of the target system based on the functional application model information of the first functional application, the functional application model information of the second functional application, and the vulnerability model information. ,
The threat analysis method according to claim 6 or 7.
前記脅威分析を行った前記対象システムに対して利用料を算出する利用料算出ステップをさらに含む、
請求項6から8のいずれか一項に記載の脅威分析方法。
A usage fee calculation step for calculating a usage fee for the target system for which the threat analysis has been performed is further included.
The threat analysis method according to any one of claims 6 to 8.
前記脅威分析の結果、前記対象システムが脆弱性を含むときに、該脆弱性に対応する前記脆弱性モデル情報に対する報酬を前記利用料に基づいて算出する報酬算出ステップをさらに含む、
請求項9に記載の脅威分析方法。
As a result of the threat analysis, when the target system contains a vulnerability, the reward calculation step of calculating the reward for the vulnerability model information corresponding to the vulnerability based on the usage fee is further included.
The threat analysis method according to claim 9.
コンピュータに実行させる脅威分析プログラムであって、
対象システムに含まれる機能アプリケーションについて、システムの仕様を規定するためのシステム仕様情報を用いてモデル化した機能アプリケーションモデル情報を取得する第1取得ステップと、
事例システムに含まれる脆弱性について前記システム仕様情報を用いてモデル化した脆弱性モデル情報を取得する第2取得ステップと、
前記機能アプリケーションモデル情報と前記脆弱性モデル情報とに基づいて前記対象システムの脅威分析を行う実行ステップと、を含む、
脅威分析プログラム。
A threat analysis program that runs on a computer
For the functional application included in the target system, the first acquisition step to acquire the functional application model information modeled using the system specification information for defining the system specifications, and
The second acquisition step to acquire the vulnerability model information modeled using the system specification information for the vulnerability included in the case system, and
Including an execution step of performing a threat analysis of the target system based on the functional application model information and the vulnerability model information.
Threat analysis program.
JP2019552672A 2017-11-10 2018-10-11 Threat analyzers, threat analysis methods, and threat analysis programs Pending JPWO2019093059A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017217474 2017-11-10
JP2017217474 2017-11-10
PCT/JP2018/037907 WO2019093059A1 (en) 2017-11-10 2018-10-11 Threat analysis device, threat analysis method, and threat analysis program

Publications (1)

Publication Number Publication Date
JPWO2019093059A1 true JPWO2019093059A1 (en) 2020-10-01

Family

ID=66438835

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019552672A Pending JPWO2019093059A1 (en) 2017-11-10 2018-10-11 Threat analyzers, threat analysis methods, and threat analysis programs

Country Status (2)

Country Link
JP (1) JPWO2019093059A1 (en)
WO (1) WO2019093059A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021005165A (en) * 2019-06-25 2021-01-14 株式会社日立製作所 Incident scenario generation device and incident scenario generation system
WO2021059518A1 (en) * 2019-09-27 2021-04-01 日本電気株式会社 Analysis system, method, and program
WO2021059519A1 (en) * 2019-09-27 2021-04-01 日本電気株式会社 Analysis system, method, and program
WO2021240770A1 (en) * 2020-05-29 2021-12-02 Nec Corporation Knowledge generation apparatus, control method, and storage device
CN112165469B (en) * 2020-09-18 2023-04-18 中国船舶重工集团公司第七一四研究所 Method for detecting deformed shell

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4733885B2 (en) * 2001-09-29 2011-07-27 株式会社東芝 Vulnerability assessment program, method and system
JP2009110334A (en) * 2007-10-31 2009-05-21 Mitsubishi Electric Corp Terminal, security system, terminal program, and security information management method
JP5825117B2 (en) * 2012-01-24 2015-12-02 富士通株式会社 Design support program, design support method, and design support apparatus

Also Published As

Publication number Publication date
WO2019093059A1 (en) 2019-05-16

Similar Documents

Publication Publication Date Title
JPWO2019093059A1 (en) Threat analyzers, threat analysis methods, and threat analysis programs
US9727649B2 (en) Use of stored search results by a travel search system
US20240086471A1 (en) Data search and analysis for distributed data systems
Giurgiu et al. Calling the cloud: Enabling mobile phones as interfaces to cloud applications
US8019860B2 (en) Service accounting method and apparatus for composite service
CN109672741A (en) Micro services monitoring method, device, computer equipment and storage medium
US9491223B2 (en) Techniques for determining a mobile application download attribution
US20070136278A1 (en) Computer network
CN104793932A (en) Method and device used for software release
CN104601408A (en) Website data statistics and analysis method and system used for non-open network environment
CN113961332A (en) Method and device for realizing workflow engine, electronic equipment and storage medium
CN106067879B (en) The detection method and device of information
CN112308515A (en) NDC (network data center) processing system for NDC aggregator and service request processing method thereof
CN111209325A (en) Service system interface identification method, device and storage medium
JP2016162016A (en) Management information acquisition program, management information acquisition method, and management information acquisition device
EP3188010A1 (en) System and method for creating an integrated digital platform
CN113923250B (en) Method, device and system for assisting network service arrangement
JP2003044602A (en) Apparatus for providing application and method therefor
JP2013164647A (en) Time limit data history management system
JP2007026296A (en) Integrated retrieval processing method and device
KR102003941B1 (en) System for integrated management of service
KR20220106435A (en) Method and system for collecting user inforamtion according to providing virtual desktop infrastructure service
CN112527426A (en) Graphical interface interaction method and system based on behavior data analysis
Ruiz et al. Applying a web engineering method to design web services
JPH10222357A (en) Method for constructing software by data reutilization and its system

Legal Events

Date Code Title Description
A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20191224