JP7424395B2 - Analytical systems, methods and programs - Google Patents
Analytical systems, methods and programs Download PDFInfo
- Publication number
- JP7424395B2 JP7424395B2 JP2021575152A JP2021575152A JP7424395B2 JP 7424395 B2 JP7424395 B2 JP 7424395B2 JP 2021575152 A JP2021575152 A JP 2021575152A JP 2021575152 A JP2021575152 A JP 2021575152A JP 7424395 B2 JP7424395 B2 JP 7424395B2
- Authority
- JP
- Japan
- Prior art keywords
- fact
- facts
- undetermined
- analysis
- attack
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 33
- 238000004458 analytical method Methods 0.000 claims description 173
- 238000003745 diagnosis Methods 0.000 claims description 62
- 238000012545 processing Methods 0.000 claims description 12
- 230000007613 environmental effect Effects 0.000 claims description 2
- 238000004891 communication Methods 0.000 description 22
- 238000000605 extraction Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 17
- 230000010365 information processing Effects 0.000 description 7
- 238000012800 visualization Methods 0.000 description 7
- 239000000284 extract Substances 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012502 risk assessment Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/54—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Description
本発明は、診断対象システムへの攻撃に対する対処に関する判断材料となる情報を分析する分析システム、分析方法および分析プログラムに関する。 TECHNICAL FIELD The present invention relates to an analysis system, an analysis method, and an analysis program that analyze information that serves as a basis for making decisions regarding countermeasures against attacks on a system to be diagnosed.
複数のコンピュータ等を含む情報処理システムにおいて、情報資産をサイバー攻撃等から守るためのセキュリティ対策をとることが求められている。セキュリティ対策としては、対象となるシステムの脆弱性等を診断し、必要に応じて脆弱性を取り除くこと等が挙げられる。 In information processing systems that include multiple computers, etc., security measures are required to protect information assets from cyber attacks. Security measures include diagnosing the vulnerabilities of the target system and removing the vulnerabilities as necessary.
セキュリティ診断の対象となるシステムを、診断対象システムと記す。また、診断対象システムのシステム構成等のデータを収集して、システム内の機器に潜む脆弱性を把握し対策を指示するシステムを、セキュリティ診断システムと記す。特許文献1~2には、セキュリティ診断システムの例が記載されている。 A system targeted for security diagnosis is referred to as a diagnosis target system. Furthermore, a system that collects data such as the system configuration of a system to be diagnosed, identifies vulnerabilities hidden in devices within the system, and instructs countermeasures is referred to as a security diagnosis system. Examples of security diagnosis systems are described in Patent Documents 1 and 2.
特許文献1には、検査対象装置から収集された脆弱性情報をもとにリスク分析、セキュリティ対策やセキュリティポリシーの策定、セキュリティ監視の実践といった統合的なセキュリティ管理を実施できるセキュリティ管理システムが記載されている。 Patent Document 1 describes a security management system that can perform integrated security management such as risk analysis, formulation of security measures and security policies, and practice of security monitoring based on vulnerability information collected from devices to be tested. ing.
また、特許文献2には、情報処理装置に対する脆弱性診断の負荷を低減できる診断装置が記載されている。 Further, Patent Document 2 describes a diagnostic device that can reduce the burden of vulnerability diagnosis on an information processing device.
セキュリティ診断システムが診断対象システムのシステム構成や診断対象システム内の機器に潜む脆弱性を全て把握することは困難である。その理由は、脆弱性を把握するために行われる診断対象システムのスキャンは診断対象システムにとって負荷が高く、頻繁に行われる処理ではないためである。 It is difficult for a security diagnosis system to grasp all the vulnerabilities hidden in the system configuration of the system to be diagnosed and the devices in the system to be diagnosed. The reason for this is that scanning the system to be diagnosed to identify vulnerabilities places a high load on the system to be diagnosed, and is not a process that is performed frequently.
また、運用上の制約により診断対象システムのスキャンを実行可能な期間が制限されているため、診断対象システム内の機器のうちスキャンされていない機器が生じてしまうという理由もある。その結果、セキュリティ診断システムが診断対象システムにおける攻撃可能性を分析できない場合がある。 Another reason is that, due to operational constraints, the period during which a diagnosis target system can be scanned is limited, resulting in some devices in the diagnosis target system not being scanned. As a result, the security diagnosis system may not be able to analyze the possibility of attack on the system to be diagnosed.
そこで、本発明は、診断対象システムに含まれる各機器から情報を十分に収集できない場合であっても診断対象システムにおける攻撃可能性を分析できる分析システム、分析方法および分析プログラムを提供することを目的とする。 Therefore, an object of the present invention is to provide an analysis system, an analysis method, and an analysis program that can analyze the possibility of an attack on a system to be diagnosed even when sufficient information cannot be collected from each device included in the system to be diagnosed. shall be.
本発明による分析システムは、診断対象システムまたは診断対象システムに含まれる機器におけるセキュリティに関連する状態を示すファクトのうち診断対象システムまたは機器の未知の情報を示すファクトを未確定ファクトとして生成する未確定ファクト生成部と、ファクトのうち機器の構成情報が示すファクトを確定ファクトとして生成する確定ファクト生成部と、確定ファクトと所定の条件を満たす未確定ファクトとが含まれる複数のファクトのうち1つ以上のファクトが示す状態が、別のファクトを導き出すためのルールである分析ルールが示す条件に適合するか否かを判断する分析部とを備えることを特徴とする。 The analysis system according to the present invention generates, as an undetermined fact, a fact indicating unknown information of the system to be diagnosed or a device included in the system to be diagnosed or a fact indicating a security-related state of the device included in the system to be diagnosed. a fact generation unit; a confirmed fact generation unit that generates a fact indicated by device configuration information among the facts as a confirmed fact ; and one or more of a plurality of facts that include a confirmed fact and an unconfirmed fact that satisfies a predetermined condition. The present invention is characterized by comprising an analysis unit that determines whether a state indicated by a fact conforms to a condition indicated by an analysis rule that is a rule for deriving another fact .
本発明による分析方法は、分析システムで実行される分析方法であって、分析システムが、診断対象システムまたは診断対象システムに含まれる機器におけるセキュリティに関連する状態を示すファクトのうち診断対象システムまたは機器の未知の情報を示すファクトを未確定ファクトとして生成し、ファクトのうち機器の構成情報が示すファクトを確定ファクトとして生成し、確定ファクトと所定の条件を満たす未確定ファクトとが含まれる複数のファクトのうち1つ以上のファクトが示す状態が、別のファクトを導き出すためのルールである分析ルールが示す条件に適合するか否かを判断することを特徴とする。 The analysis method according to the present invention is an analysis method executed by an analysis system, in which the analysis system selects a system to be diagnosed or a device included in a system to be diagnosed or a fact indicating a security-related state of a device included in the system to be diagnosed. Generates a fact indicating unknown information as an unconfirmed fact, generates a fact indicating device configuration information as a confirmed fact, and generates a plurality of facts that include a confirmed fact and an unconfirmed fact that satisfies a predetermined condition. It is characterized by determining whether a state indicated by one or more of the facts conforms to a condition indicated by an analysis rule that is a rule for deriving another fact .
本発明による分析プログラムは、コンピュータに、診断対象システムまたは診断対象システムに含まれる機器におけるセキュリティに関連する状態を示すファクトのうち診断対象システムまたは機器の未知の情報を示すファクトを未確定ファクトとして生成する未確定ファクト生成処理、ファクトのうち機器の構成情報が示すファクトを確定ファクトとして生成する確定ファクト生成処理、および確定ファクトと所定の条件を満たす未確定ファクトとが含まれる複数のファクトのうち1つ以上のファクトが示す状態が、別のファクトを導き出すためのルールである分析ルールが示す条件に適合するか否かを判断する分析処理を実行させることを特徴とする。 The analysis program according to the present invention causes a computer to generate, as undetermined facts, facts indicating unknown information of the system to be diagnosed or devices included in the system to be diagnosed, among the facts indicating the security-related status of the system to be diagnosed or devices included in the system to be diagnosed. unconfirmed fact generation processing that generates a fact indicated by device configuration information among the facts as a confirmed fact, and one of a plurality of facts that includes a confirmed fact and an unconfirmed fact that satisfies a predetermined condition. The method is characterized in that an analysis process is executed to determine whether a state indicated by one or more facts conforms to a condition indicated by an analysis rule that is a rule for deriving another fact .
本発明によれば、診断対象システムに含まれる各機器から情報を十分に収集できない場合であっても診断対象システムにおける攻撃可能性を分析できる。 According to the present invention, even if sufficient information cannot be collected from each device included in the system to be diagnosed, the possibility of an attack on the system to be diagnosed can be analyzed.
以下、図面を参照して、本発明の実施形態を説明する。 Embodiments of the present invention will be described below with reference to the drawings.
第1の実施形態.
図1は、本発明の第1の実施形態の分析システムの構成例を示すブロック図である。第1の実施形態の分析システム100は、スキャナ101と、スキャン結果記憶部102と、確定ファクト生成部103と、未確定ファクト生成部104と、ファクト生成情報記憶部105と、初期ファクト記憶部106と、分析部107と、分析結果記憶部108と、可視化部109と、対策計画部110と、抽出部111と、指示部112とを備える。
First embodiment.
FIG. 1 is a block diagram showing a configuration example of an analysis system according to a first embodiment of the present invention. The
また、図1に示すように、分析システム100は、診断対象システム200と通信可能に接続されている。
Further, as shown in FIG. 1, the
本実施形態における分析システム100は、診断対象システム200のセキュリティに関する状況を分析するためのシステムである。診断対象システム200は、分析システム100によるセキュリティ診断の対象になるシステムである。
The
以下の実施形態において、診断対象システム200は、主に企業内のIT(Information Technology)システムであることを想定する。すなわち、診断対象システム200では、複数の機器が通信ネットワークを介して接続されている。なお、診断対象システム200は上記の例に限られず、例えば、OT(Operational Technology)システムを制御するためのシステムでもよい。
In the following embodiment, it is assumed that the
診断対象システム200に含まれる機器として、パーソナルコンピュータ、サーバ、スイッチ、ルータ等が挙げられる。ただし、診断対象システム200に含まれる機器は、これらの例に限定されない。診断対象システム200には、通信ネットワークに接続される他の種類の機器も含まれる。また、診断対象システム200に含まれる機器は、物理的な機器であっても、仮想的な機器であってもよい。
Devices included in the
診断対象システム200に含まれる機器の数は、図1に示す例に限られず、特に限定されない。また、分析システム100は、診断対象システム200に含まれる機器の一つであってもよい。また、分析システム100は、クラウドコンピューティングのような形態で診断対象システム200の外部に設けられ、通信ネットワークを介して診断対象システム200と接続されてもよい。
The number of devices included in the
スキャナ101は、診断対象システム200内をスキャンすることによって、診断対象システム200に含まれる機器の構成情報を収集する機能を有する。なお、分析システム100は、スキャナ101の代わりに、分析システム100の外部に存在する専用スキャナを使用してもよい。
The
スキャナ101は、一例として、予め定められたタイミングで機器の各構成情報を収集する。予め定められたタイミングには、毎日の予め定められた時刻や、機器の起動時等が含まれる。また、予め定められたタイミングには、その他のタイミングが含まれてもよい。
As an example, the
スキャナ101が各構成情報を収集するタイミングや間隔は、診断対象システム200の規模や機器の具体的な機能等に応じて適宜定められればよい。また、そのように定められたタイミング以外のその他のタイミングで、スキャナ101が機器の各構成情報を収集してもよい。
The timing and interval at which the
スキャナ101が収集する構成情報は、機器に含まれている脆弱性、機器に搭載されているOS(Operating System)およびOSのバージョン、機器に搭載されているハードウェアの構成情報、機器に搭載されているソフトウェア、ソフトウェアのバージョンおよびソフトウェアの設定等である。
The configuration information collected by the
また、スキャナ101が収集する構成情報には、ユーザアカウントおよびアカウント権限、接続しているネットワークやIP(Internet Protocol) アドレス、機器と通信可能に接続されている機器や通信を行っている通信先の機器および通信内容、およびCPU(Central Processing Unit)の機種が含まれてもよい。
In addition, the configuration information collected by the
さらに、スキャナ101が収集する構成情報には、機器の通信先の機器との間で授受する通信データやその通信データの授受に用いられた通信プロトコルの情報、機器のポートの状態を示す情報(どのポートが開いているか)、またはデータフロー情報が含まれてもよい。
Furthermore, the configuration information collected by the
なお、通信データには、例えばその通信データの送信元や送信先の情報が含まれている。また、データフロー情報は、どの機器からどの機器にどのようなデータが転送されているかを示す情報である。データフロー情報には、通信データに相当する情報の他に、リムーバブルメディア等を介して転送されるデータに関する情報も含まれる。 Note that the communication data includes, for example, information on the source and destination of the communication data. Further, data flow information is information indicating what kind of data is being transferred from which device to which device. In addition to information corresponding to communication data, the data flow information also includes information regarding data transferred via removable media or the like.
なお、スキャナ101が収集する構成情報の例は、上記の例に限定されない。スキャナ101は、機器の構成情報として、診断対象システム200において実行可能な攻撃を分析するために必要となる他の情報を収集してもよい。
Note that the example of configuration information collected by the
スキャナ101は、収集された構成情報をスキャン結果として、スキャン結果記憶部102に格納する。スキャン結果記憶部102は、構成情報を記憶する機能を有する。
The
なお、スキャン結果記憶部102が記憶する構成情報は、スキャナ101から入力される情報に限られない。例えば、スキャン結果記憶部102には、図示しない機器の情報が予め格納されていてもよい。
Note that the configuration information stored in the scan
確定ファクト生成部103は、スキャン結果記憶部102に記憶されている構成情報を参照して、1つ以上の初期ファクトを生成する機能を有する。
The confirmed
本実施形態において、ファクトは、後述する分析部107により参照可能な形式で記述された、診断対象システム200または診断対象システム200に含まれる機器における状態である。ファクトは、主に診断対象システム200または診断対象システム200に含まれる機器におけるセキュリティに関連する状態を示す。
In this embodiment, a fact is a state of the
また、初期ファクトは、確定ファクト生成部103により生成されるファクト、および後述する未確定ファクト生成部104により生成されるファクトの総称である。
In addition, the initial fact is a general term for facts generated by the confirmed
すなわち、確定ファクト生成部103は、収集された構成情報を基に、診断対象システム200において初期ファクトを生成する。以下、スキャンで得られた構成情報から生成されたファクトを、確定ファクトとも呼ぶ。確定ファクト生成部103は、構成情報が示すファクトを確定ファクトとして生成する。
That is, the confirmed
図2は、確定ファクト生成部103により生成される初期ファクトの例を示す説明図である。図2(a)は、本例において想定する診断対象システム200を示す。
FIG. 2 is an explanatory diagram showing an example of initial facts generated by the confirmed
図2(a)に示すように、本例における診断対象システム200は、機器Aと、機器Bと、機器Cとを含むことを想定する。機器Aと機器Cは、インターネットに接続されている。また、機器Bは、機器Aと機器Cにネットワークを介して接続されている。
As shown in FIG. 2A, the
スキャナ101は、機器A、B、C各々の構成情報をそれぞれの機器から収集する。次いで、スキャナ101は、収集された各構成情報をスキャン結果記憶部102に格納する。確定ファクト生成部103は、スキャン結果記憶部102に記憶されている各機器に関する構成情報を用いて初期ファクトを生成する。
The
確定ファクト生成部103は、例えば、ある機器にインストールされているOSおよびOSのバージョンを構成情報から参照して、対象の機器に参照されたバージョンのOSがインストールされている、という状況を表す初期ファクトを生成する。
For example, the confirmed
同様に、確定ファクト生成部103は、ある機器にインストールされているあるソフトウェアおよびソフトウェアのバージョンを構成情報から参照して、対象の機器に参照されたバージョンのソフトウェアがインストールされている、という状況を表す初期ファクトを生成してもよい。
Similarly, the confirmed
または、確定ファクト生成部103は、ある第一の機器と通信可能に接続されている第二の機器を構成情報から参照して、第一の機器と第二の機器が通信可能に接続されている、という状況を表す初期ファクトを生成してもよい。
Alternatively, the confirmed
なお、確定ファクト生成部103が生成する初期ファクトは、上記の例に限られない。確定ファクト生成部103は、構成情報に含まれる任意の情報を初期ファクトとして生成してもよい。
Note that the initial fact generated by the confirmed
図2(b)は、上述した診断対象システム200に関して、確定ファクト生成部103が生成する初期ファクトの例を示す。図2(b)に示す例では、角丸四角形で表される要素の各々が、一つの初期ファクトを表す。
FIG. 2(b) shows an example of initial facts generated by the confirmed
図2(b)に示すように、確定ファクト生成部103は、初期ファクトとして、「機器Aがインターネットに接続されている」、「機器AにソフトウェアXがインストールされている」等を生成している。なお、生成される初期ファクトは、図2(b)に示す例に限られず、診断対象システム200または各機器に応じて適宜生成されればよい。
As shown in FIG. 2(b), the established
確定ファクト生成部103は、生成された1つ以上の初期ファクトを、初期ファクト記憶部106に格納する。初期ファクト記憶部106は、初期ファクトを記憶する機能を有する。
The confirmed
分析部107は、記憶されている1つ以上の初期ファクトを基に、攻撃グラフを生成する機能を有する。図3は、分析部107により生成される攻撃グラフの例を示す説明図である。
The
本実施形態における攻撃グラフは、診断対象システム200において実行可能な攻撃の流れを表すことができるグラフである。すなわち、攻撃グラフは、診断対象システム200における、ある機器の脆弱性の有無等の状態や、ある機器において実行可能な攻撃から当該機器または他の機器において実行可能になる攻撃の関係を表すことができる。
The attack graph in this embodiment is a graph that can represent the flow of attacks that can be executed on the
攻撃グラフは、ファクトをノードとし、ファクト間の関係をエッジとする有向グラフとして表される。有向グラフとして表される攻撃グラフにおいて、ファクトは、上述した初期ファクトであるか、または診断対象システム200に含まれる各機器において実行可能な攻撃を表すファクトである。分析部107が攻撃グラフを生成することによって、診断対象システム200において発生する可能性がある攻撃が分析可能になる。
The attack graph is represented as a directed graph with facts as nodes and relationships between facts as edges. In the attack graph expressed as a directed graph, the facts are the above-mentioned initial facts or facts representing attacks that can be executed on each device included in the
生成される攻撃グラフが用いられると、初期ファクトから攻撃の可能性を表すファクトまでの一連の流れを表す攻撃パスが導出可能になる。すなわち、分析部107は、診断対象システム200において実行可能な攻撃を導出できる。
When the generated attack graph is used, it becomes possible to derive an attack path representing a series of flows from initial facts to facts representing the possibility of an attack. That is, the
そして、攻撃パスが用いられると、診断対象システム200における攻撃の流れや、優先的に対策が求められる機器等、個々の機器をスキャンして脆弱性情報等を得るだけでは判断することが困難なセキュリティ上の事象が分析可能になる。 When attack paths are used, it is difficult to determine the flow of attacks in the system to be diagnosed 200, devices that require priority countermeasures, etc. by simply scanning individual devices and obtaining vulnerability information. Security events can be analyzed.
分析部107は、一例として、1つ以上の初期ファクトを基に、分析ルールを用いて攻撃グラフを生成する。分析ルールは、1つ以上のファクトから別のファクトを導き出すためのルールである。分析ルールは、分析システム100に予め定められている。
For example, the
分析部107は、初期ファクトで表されるセキュリティに関連した状態が、分析ルールが示す条件に適合するか否かを判断する。分析ルールが示す全ての条件に初期ファクトが適合する場合、分析部107は、新たなファクトを導き出す。新たなファクトは、例えば、診断対象システム200に含まれる各機器で実行可能な攻撃の内容を表す。
The
攻撃が可能であることを表す新たなファクトが導出されることは、診断対象システム200に含まれる機器が、新たなファクトの導出に用いられた初期ファクトで表される状態である場合に導出された新たなファクトで表される攻撃が実行可能であることを示している。換言すると、新たなファクトの導出に用いられたファクトは、新たなファクトで表される攻撃が実行可能になるための前提条件である。 A new fact indicating that an attack is possible is derived when the equipment included in the system to be diagnosed 200 is in the state represented by the initial fact used to derive the new fact. This shows that the attack expressed by the new fact is possible. In other words, the facts used to derive the new facts are a prerequisite for the attack represented by the new facts to be executable.
また、ある攻撃が実行可能であることを起因として、別の攻撃が実行可能になる場合がある。その場合、分析部107は、初期ファクトに加えて、上述したように新たに導出されたファクトを前提条件として、分析ルールを用いて新たなファクトの導出を繰り返し実行する。
Furthermore, because one attack is executable, another attack may become executable. In that case, the
新たなファクトの導出は、例えば新たなファクトが導出されなくなるまで繰り返し実行される。新たなファクトの導出と共に、分析部107は、初期ファクトまたは新たなファクトをノードとし、新たなファクトの前提である初期ファクトを含むファクトから新たなファクトまでをエッジで接続することによって攻撃グラフを生成する。
The derivation of new facts is repeatedly performed, for example, until no new facts are derived. Along with deriving the new fact, the
また、分析部107は、初期ファクトを、攻撃の実行に寄与するファクトと、攻撃の実行に寄与しないファクトに分類する。攻撃の実行に寄与するファクトは、初期ファクトのうち、攻撃グラフの生成に用いられたファクトである。また、攻撃の実行に寄与しないファクトは、初期ファクトのうち、攻撃グラフの生成に用いられなかったファクトである。
Furthermore, the
以下、分析部107による攻撃グラフの生成例を、図3を参照して具体的に説明する。診断対象システム200において、図3に示す初期ファクトが生成されていることを想定する。
Hereinafter, an example of generating an attack graph by the
また、「ある機器がインターネットに接続されている」かつ「インターネットに接続されている機器のOSにリモートコード実行可能な脆弱性が存在する」場合に、「攻撃者が当該インターネットに接続されている機器上でコードを実行可能である」という関係が分析ルールとして予め定められていると想定する。 In addition, if ``a device is connected to the Internet'' and ``there is a vulnerability in the OS of the device connected to the Internet that allows remote code execution,'' then ``an attacker is connected to the Internet.'' It is assumed that the relationship "The code can be executed on the device" is predetermined as an analysis rule.
図3を参照すると、初期ファクトから、機器Aに関して上記の分析ルールの条件が全て満たされることが分かる。よって、分析部107は、「攻撃者が機器Aにおいてコード実行可能」という新たなファクトを導出する。
Referring to FIG. 3, it can be seen from the initial facts that all of the conditions of the above analysis rules are satisfied for device A. Therefore, the
また、分析部107は、初期ファクトから導出された新たなファクトまでの攻撃パスを表す攻撃グラフを生成する。具体的には、分析部107は、2つの初期ファクトそれぞれから実行可能な攻撃を表すファクトへ向かうエッジで、2つの初期ファクトそれぞれと攻撃を表すファクトとを接続する。
Furthermore, the
次に、攻撃が実行可能になったために別の攻撃が実行可能になる場合の分析部107による攻撃グラフの生成例を説明する。
Next, an example of generating an attack graph by the
図3に示す例で、初期ファクト、および「攻撃者が機器Aにおいてコード実行可能」というファクトが生成されていることを想定する。また、「ある第一の機器にインストールされているソフトウェアYにリモートコード実行可能な脆弱性が存在」かつ、「第一の機器と第二の機器が通信可能に接続されている」かつ、「攻撃者が第二の機器においてコード実行可能」である場合、「攻撃者が第一の機器においてコード実行可能」という関係が分析ルールとして予め定められていると想定する。 In the example shown in FIG. 3, it is assumed that an initial fact and a fact that "an attacker can execute code on device A" have been generated. In addition, ``Software Y installed on a certain first device has a vulnerability that allows remote code execution'' and ``the first device and the second device are connected in a communicable manner'' and `` If the attacker is able to execute code on the second device, it is assumed that the relationship that ``the attacker is able to execute code on the first device'' is predetermined as an analysis rule.
図3を参照すると、診断対象システム200において、初期ファクトから、「機器BにインストールされているソフトウェアYにリモートコード実行可能な脆弱性が存在」、「機器Aと機器Bが通信可能に接続されている」ことが分かる。また、上述したように「攻撃者が機器Aにおいてコード実行可能」なことが導き出されている。すなわち、分析ルールに含まれる条件が全て満たされることが分かる。換言すると、「攻撃者が機器Bにおいてコード実行可能」であることが分かる。 Referring to FIG. 3, in the system to be diagnosed 200, initial facts indicate that ``Software Y installed on device B has a vulnerability that allows remote code execution'' and ``Device A and device B are communicably connected. It is clear that Furthermore, as described above, it is derived that "an attacker can execute code on device A." That is, it can be seen that all the conditions included in the analysis rule are satisfied. In other words, it can be seen that "an attacker can execute code on device B."
よって、分析部107は、「攻撃者が機器Bにおいてコード実行可能」という新たなファクトを導出する。また、分析部107は、初期ファクトから導出された新たなファクトまでの攻撃パスを表す攻撃グラフを生成する。
Therefore, the
具体的には、分析部107は、2つの初期ファクトそれぞれと、「攻撃者が機器Aにおいてコード実行可能」というファクトから実行可能な攻撃を表すファクトへ向かうエッジで、3つのファクトそれぞれと攻撃を表すファクトとを接続する。
Specifically, the
以上の処理により、図3に示す攻撃グラフが生成される。すなわち、初期ファクトから「攻撃者が機器Bにおいてコード実行可能」までの一連の流れが攻撃パスとして表される。 Through the above processing, the attack graph shown in FIG. 3 is generated. That is, a series of steps from the initial fact to "an attacker can execute code on device B" is expressed as an attack path.
次に、分析部107は、初期ファクトを、攻撃の実行に寄与するファクトと、攻撃の実行に寄与しないファクトに分類する。図3を参照すると、初期ファクトのうち、「機器Aがインターネットに接続されている」、「機器AのOSにリモートコード実行可能な脆弱性が存在」、「機器Aと機器Bが通信可能に接続されている」、および「機器BにインストールされているソフトウェアYにリモートコード実行可能な脆弱性が存在」が、攻撃グラフの生成に用いられている。
Next, the
よって、分析部107は、「機器Aがインターネットに接続されている」、「機器AのOSにリモートコード実行可能な脆弱性が存在」、「機器Aと機器Bが通信可能に接続されている」、および「機器BにインストールされているソフトウェアYにリモートコード実行可能な脆弱性が存在」を攻撃の実行に寄与するファクトに分類する。
Therefore, the
同様に、図3を参照すると、初期ファクトのうち、「機器AにソフトウェアXがインストールされている」、および「機器Cがインターネットに接続されている」は、攻撃グラフの生成に用いられていない。よって、分析部107は、「機器AにソフトウェアXがインストールされている」、および「機器Cがインターネットに接続されている」を攻撃の実行に寄与しないファクトに分類する。
Similarly, referring to Figure 3, among the initial facts, "Software X is installed on device A" and "Device C is connected to the Internet" are not used to generate the attack graph. . Therefore, the
なお、分析部107が攻撃グラフを生成する手順は、上述した手順に限られない。分析部107は、上述した手順以外の手順に従って、初期ファクトを基に攻撃グラフを生成してもよい。また、分析部107は、初期ファクトから診断対象システム200において実行可能な攻撃または攻撃の流れを求めるための上記の手法以外の別の手法を用いて分析してもよい。
Note that the procedure by which the
なお、診断対象システム200によっては、分析部107が攻撃パスを含む攻撃グラフを生成できない場合が想定される。例えば、診断対象システム200の各機器に対して十分なセキュリティ対策が実行されており、攻撃が実行可能となる前提を表す初期ファクトが生成されない場合、意味のある攻撃パスを含むような攻撃グラフが生成されないことが想定される。
Note that depending on the
以上のような手順に従って、分析部107は、攻撃グラフを生成する。分析部107は、生成された攻撃グラフを示す情報を分析結果記憶部108に格納する。分析結果記憶部108は、攻撃グラフを示す情報を記憶する機能を有する。
According to the procedure described above, the
以下、上記の課題を解決する本実施形態の特徴を説明する。上述したように、診断対象システム200の構成情報のうち、スキャナ101が収集可能な構成情報は限られている。その理由の1つは、診断対象システム200に大きな負荷がかかるため、スキャナ101が任意のデータを送信するようなアクティブスキャンを実行することが困難であるからである。
Hereinafter, features of this embodiment that solves the above problems will be explained. As described above, of the configuration information of the system to be diagnosed 200, the configuration information that the
例えば、工場内のバルブの開閉等を制御するために使用されているPLC(Programmable Logic Controller)では、多少負荷がかかるだけでも不具合が発生する可能性がある。よって、スキャナ101は、PLC に対してパケットを送信して応答内容を分析するポートスキャンを実行できない。
For example, in PLCs (Programmable Logic Controllers) used to control the opening and closing of valves in factories, even a slight load can cause problems. Therefore, the
また、例えば負荷が軽微である簡易なスキャンであればスキャン可能な機器に対しても、詳細な情報を取得するためのスキャンの実行は、負荷が重いため、機器のユーザに許容されない場合がある。ユーザに許容されない場合、スキャナ101は、機器を詳細にスキャンできない。
Furthermore, even if a device can be scanned by a simple scan with a light load, executing a scan to obtain detailed information may be unacceptable to the device user due to the heavy load. . If not permitted by the user, the
また、他の理由は、スキャナ101が通信ネットワークを流れている業務トラフィック等を受信するパッシブスキャンで構成情報を収集する場合、収集が行われる期間中に、全ての業務トラフィックが流れるとは限らないためである。例えば、スキャナ101は、障害対応の内容を示す業務トラフィックや月次更新の内容を示す業務トラフィック等を、所定の期間中に収集できない可能性が高い。
Another reason is that when the
また、他の理由は、運用上の制約等のため使用可能なスキャナ製品やスキャン方式が限られている場合、スキャナ101が十分な情報を収集できないためである。例えば、契約の都合上、管理者がスキャナ101として特定の種類のスキャナしか使用できない場合がある。
Another reason is that the
また、他の理由は、未知の脆弱性や修正プログラムが未提供である脆弱性をスキャナ101が検知できないためである。以上のように、収集される構成情報が限られている場合、攻撃パスが網羅的に得られない可能性がある。
Another reason is that the
図4は、分析部107により生成される攻撃グラフの他の例を示す説明図である。図4に示す初期ファクト60~62は、確定ファクト生成部103により生成された確定ファクトである。また、初期ファクト63は、スキャンで得られた構成情報が示さず確定ファクト生成部103により生成されなかったが、診断対象システム200に含まれる機器の状態を示すファクトである。
FIG. 4 is an explanatory diagram showing another example of the attack graph generated by the
初期ファクト63が生成されないと、分析部107は、初期ファクト62と初期ファクト63から攻撃65へ至る実行可能な攻撃の攻撃パスを導出できない。また、ファクト64とファクト65から攻撃66へ至る実行可能な攻撃の攻撃パスも導出できない。図4に示す破線の矢印は、矢印が含まれる攻撃パスが導出不可能であることを意味する。
If the
本実施形態の未確定ファクト生成部104は、診断対象システム200、または診断対象システム200に含まれる機器の未知の情報を示すファクト(以下、未確定ファクトと呼ぶ。)を生成する機能を有する。未確定ファクトは、例えば、スキャナ101によるスキャンで得られた構成情報から生成することが困難なファクトである。
The undetermined
図4に示す斜線模様のファクトは、未確定ファクトであることを意味する。なお、分析部107は、未確定ファクトも、攻撃の実行に寄与するファクトと、攻撃の実行に寄与しないファクトに分類する。
The hatched facts shown in FIG. 4 mean unconfirmed facts. Note that the
未確定ファクトを生成する1つ目の方法として、未確定ファクト生成部104は、例えば一般的に考えられる状態を未確定ファクトとして生成する。例えば、未確定ファクト生成部104は、デフォルトでインストールされているソフトウェアに関して、ソフトウェアがインストールされているという未確定ファクトを生成する。
As a first method of generating an undetermined fact, the undetermined
具体例として、未確定ファクト生成部104は、OSがWindows (登録商標)であるPCに関して、.NET Framework(登録商標)がインストールされているという未確定ファクトを生成する。
As a specific example, the undetermined
また、未確定ファクト生成部104は、デフォルト設定や、デフォルト設定ではないがよく用いられる設定に対応する未確定ファクトを生成する。
Further, the undetermined
また、未確定ファクト生成部104は、診断対象システム200に含まれる機器の構成と類似した構成のホスト、OS、またはソフトウェアを外部データベースにおいて検索し、検索されたホスト等に関する情報に対応する未確定ファクトを生成する。
Further, the undetermined
ファクト生成情報記憶部105は、ファクト生成情報を記憶する機能を有する。ファクト生成情報は、上述した一般的に考えられる状態を示す情報である。具体的には、ファクト生成情報は、デフォルトでインストールされているソフトウェア、デフォルト設定の内容、ホストの一般的な構成等を示す。
The fact generation
未確定ファクト生成部104は、ファクト生成情報記憶部105に記憶されているファクト生成情報を参照して未確定ファクトを生成する。なお、ファクト生成情報記憶部105は、分析システム100の外部に存在していてもよい。
The undetermined
なお、未確定ファクト生成部104は、生成された未確定ファクトが示す状態が真である確率をスコアとして算出し、算出されたスコアを用いて未確定ファクトを1つ以上の初期ファクトに含めるか否かを判断してもよい。
Note that the undetermined
例えば、未確定ファクト生成部104は、スコアが閾値以上の未確定ファクトを1つ以上の初期ファクトに含めてもよい。また、未確定ファクト生成部104は、別途管理者等から与えられる値N(Nは1以上の整数)を用いて、スコアが上位1番目からN番目までのN個の未確定ファクトを1つ以上の初期ファクトに含めてもよい。
For example, the undetermined
なお、分析部107は、算出されたスコアをファクトが示す状態が真である確率として扱い、攻撃パスを分析する時にスコアを用いて攻撃の実現可能性を計算してもよい。
Note that the
また、未確定ファクトが示す状態が真である確率を示すスコアは、管理者により予め設定されていてもよい。図5は、未確定ファクトが示す状態が真である確率を示すスコアの例を示す説明図である。 Further, the score indicating the probability that the state indicated by the undetermined fact is true may be set in advance by the administrator. FIG. 5 is an explanatory diagram illustrating an example of a score indicating the probability that the state indicated by the undetermined fact is true.
図5(a)に示すように、管理者は、各ソフトウェアの各設定項目に関して、デフォルト値やよく知られた値が設定されている可能性を、予めスコアとして定義する。例えば、ソフトAの設定Xにデフォルト値が設定されている可能性は「0.9 」である。 As shown in FIG. 5A, the administrator defines in advance the probability that a default value or a well-known value is set for each setting item of each software as a score. For example, the probability that a default value is set for setting X of software A is "0.9".
また、図5(b)に示すように、管理者は、未確定ファクトが示す状態が真である確率を示すスコアを、値ではなくランクとして設定してもよい。図5(b)に示す例では、ランクA、ランクB、ランクCの順に高いスコアとしてランクが設定されている。 Further, as shown in FIG. 5B, the administrator may set a score indicating the probability that the state indicated by the unconfirmed fact is true as a rank instead of a value. In the example shown in FIG. 5(b), the ranks are set in the order of rank A, rank B, and rank C as the highest score.
未確定ファクトを生成する2つ目の方法として、未確定ファクト生成部104は、スキャン結果を基にスキャン結果に含まれていない環境の情報を推定することによって、未確定ファクトを生成する。すなわち、未確定ファクト生成部104は、機器の構成情報を基に未確定ファクトを生成する。
As a second method for generating undetermined facts, the undetermined
例えば、未確定ファクト生成部104は、各ホストの空きポート、および各ホスト間の到達性に関するスキャン結果から、ホスト間にデータフローが存在するという未確定ファクトを生成してもよい。データフローとして、例えばファイル共有が考えられる。
For example, the undetermined
なお、到達性に関するスキャン結果は、各ホストから別の各ホストに対して通信が可能な状態であるか否かを示す。さらに、到達性に関するスキャン結果は、通信が可能である送信元ポート、送信先ポート等の情報を含んでもよい。到達性に関するスキャン結果は、具体的にはネットワーク構成、ネットワークファイアウォールのルール、ホストファイアウォールのルール等を示す。 Note that the scan result regarding reachability indicates whether or not each host can communicate with each other host. Furthermore, the scan result regarding reachability may include information such as a source port and a destination port where communication is possible. Specifically, the scan results regarding reachability indicate the network configuration, network firewall rules, host firewall rules, etc.
また、未確定ファクト生成部104は、診断対象システム200に含まれる構成要素の類似性、または構成要素の関連性に基づいて未確定ファクトを生成してもよい。なお、構成要素には、ホスト、OS、ソフトウェア等が含まれる。
Further, the undetermined
例えば、未確定ファクト生成部104は、あるホストにインストールされているOS、ソフトウェアの最終更新日が得られている場合、当該ホストまたは他のホストにインストールされているOS、ソフトウェアも同じ日が最終更新日である、という未確定ファクトを生成してもよい。
For example, if the undetermined
また、未確定ファクト生成部104は、構成や機能が類似しているホストAとホストBに関して、ホストAのスキャン結果は得られているがホストBのスキャン結果が得られていない場合、ホストAのスキャン結果の内容を基にホストBに関する未確定ファクトを生成してもよい。ホストAとホストBは、例えばロードバランサの対象の2つのホストである。
In addition, regarding hosts A and B that have similar configurations and functions, if a scan result for host A is obtained but a scan result for host B is not obtained, the undetermined
また、未確定ファクト生成部104は、データフローが観測されていない2つのホストにPDF(Portable Document Format) ファイル等の同一のファイルが存在する場合、ホスト間でのファイル共有のデータフローを示す未確定ファクトを生成してもよい。その理由は、ファイル共有が行われた可能性があるためである。
In addition, when the same file such as a PDF (Portable Document Format) file exists in two hosts for which no data flow is observed, the undetermined
ただし、同一のファイルがシステムディレクトリ内のファイルである場合、未確定ファクト生成部104は、未確定ファクトを生成しなくてもよい。その理由は、システムディレクトリ内のファイルは元々システムが備えるファイルであり、ファイル共有が行われた可能性が低いためである。
However, if the same file is a file in the system directory, the undetermined
なお、未確定ファクト生成部104は、生成された未確定ファクトが示す状態が真である確率をスコアとして算出し、算出されたスコアを用いて未確定ファクトを1つ以上の初期ファクトに含めるか否かを判断してもよい。
Note that the undetermined
また、未確定ファクトが示す状態が真である確率を示すスコアは、管理者により予め設定されていてもよい。図6は、未確定ファクトが示す状態が真である確率を示すスコアの他の例を示す説明図である。 Further, the score indicating the probability that the state indicated by the undetermined fact is true may be set in advance by the administrator. FIG. 6 is an explanatory diagram illustrating another example of the score indicating the probability that the state indicated by the undetermined fact is true.
図6(a)に示すように、管理者は、推定の方法ごとに、予め所定のスコアを設定する。例えば、空きポートと到達性から推定されたデータフローが存在する確率は「0.5 」である。 As shown in FIG. 6(a), the administrator sets a predetermined score for each estimation method in advance. For example, the probability that a data flow exists, estimated from free ports and reachability, is "0.5".
また、図6(b)に示すように、管理者は、未確定ファクトが示す状態が真である確率を示すスコアを、値ではなくランクとして設定してもよい。図6(b)に示す例では、ランクC、ランクDの順に高いスコアとしてランクが設定されている。 Further, as shown in FIG. 6(b), the administrator may set a score indicating the probability that the state indicated by the unconfirmed fact is true as a rank instead of a value. In the example shown in FIG. 6(b), the ranks are set as the highest score in the order of rank C and rank D.
未確定ファクトを生成する3つ目の方法として、未確定ファクト生成部104は、スキャン結果を基に未知の脆弱性が含まれている可能性を統計的に判断することによって、未確定ファクトを生成してもよい。
As a third method for generating unconfirmed facts, the unconfirmed
例えば、未確定ファクト生成部104は、スキャン結果から判明しているインストール済みのソフトウェアに関して、以下に示す統計情報から未知の脆弱性が存在するか否か、存在する場合にどのような脆弱性であるかを判断する。脆弱性の種類は、例えば任意コード実行、情報漏洩、DoS(Denial of Service)である。
For example, the undetermined
例えば、未確定ファクト生成部104は、インストール済みのソフトウェアのソフトウェアスイートやベンダの脆弱性の発見頻度を基に統計的に判断する。例えば、未確定ファクト生成部104は、ソフトウェアスイートごと、またはベンダごとの脆弱性の発見頻度に関する統計情報を参照して、診断対象システム200内の各ソフトウェアのソフトウェアスイートまたはベンダを基に、当該ソフトウェアに脆弱性が含まれる確率を算出する。
For example, the undetermined
また、未確定ファクト生成部104は、ソフトウェアスイートおよびベンダごとの脆弱性の発見頻度に関する統計情報を参照して、診断対象システム200内の各ソフトウェアのソフトウェアスイートおよびベンダを基に、当該ソフトウェアに脆弱性が含まれる確率を算出してもよい。
Further, the undetermined
次いで、未確定ファクト生成部104は、算出された確率が所定の閾値を超えている場合に当該ソフトウェアに脆弱性が存在すると判断する。その理由は、過去に多くの脆弱性が発見されているソフトウェアと、ソフトウェアスイートとベンダのうち少なくともいずれかが同じソフトウェアには、未知の脆弱性が存在している可能性が高いためである。すなわち、未確定ファクト生成部104は、ソフトウェアスイートやベンダの脆弱性の発見頻度に基づいて未確定ファクトを生成する。
Next, the undetermined
また、未確定ファクト生成部104は、インストール済みのソフトウェアの更新頻度を基に統計的に判断する。例えば、未確定ファクト生成部104は、当該ソフトウェアの更新頻度が所定の閾値を超えている場合に、当該ソフトウェアに未知の脆弱性が存在すると判断する。その理由は、頻繁に更新が行われているソフトウェアほど、新たな脆弱性が混入されている可能性が高いためである。すなわち、未確定ファクト生成部104は、構成情報が示すソフトウェアに関する更新頻度に基づいて未確定ファクトを生成する。
Further, the undetermined
また、未確定ファクト生成部104は、インストール済みのソフトウェアに関するソフトウェアバグ収束曲線(単にバグ曲線とも呼ぶ。)を基に統計的に判断する。対象のソフトウェアから検出されたバグの数とソフトウェアバグ収束曲線とを基に、未確定ファクト生成部104は、ソフトウェアに未知の脆弱性が存在するか否かを判断する。すなわち、未確定ファクト生成部104は、構成情報が示すソフトウェアに関するバグ曲線に基づいて未確定ファクトを生成する。
Further, the undetermined
また、未確定ファクト生成部104は、インストール済みのソフトウェアの規模を基に統計的に判断する。例えば、未確定ファクト生成部104は、ソフトウェアの規模と内包されていた脆弱性の有無に関する統計情報を参照して、診断対象システム200内の各ソフトウェアの規模を基に、当該ソフトウェアに脆弱性が含まれる確率を算出する。
Further, the undetermined
次いで、未確定ファクト生成部104は、算出された確率が所定の閾値を超えている場合に当該ソフトウェアに脆弱性が存在すると判断する。その理由は、規模が大きくなるほど、ソフトウェアには脆弱性が含まれやすくなるためである。すなわち、未確定ファクト生成部104は、ソフトウェアに関する規模に基づいて未確定ファクトを生成する。
Next, the undetermined
また、未確定ファクト生成部104は、インストール済みのソフトウェアがOSS(Open Source Software) である場合、OSS 開発コミュニティの人数を基に統計的に判断する。
Furthermore, if the installed software is OSS (Open Source Software), the undetermined
例えば、未確定ファクト生成部104は、ソフトウェアの開発コミュニティの人数と内包されていた脆弱性の有無に関する統計情報を参照して、診断対象システム200内の各ソフトウェアの開発コミュニティの人数を基に、当該ソフトウェアに脆弱性が含まれる確率を算出する。
For example, the undetermined
次いで、未確定ファクト生成部104は、算出された確率が所定の閾値を超えている場合に当該ソフトウェアに脆弱性が存在すると判断する。ソフトウェアのOSS 開発コミュニティの人数が多いほど、デバッグやメンテナンスが十分行われている確率が高いためである。
Next, the undetermined
また、未確定ファクト生成部104は、インストール済みのソフトウェアのサポートが終了している場合、サポート終了からの経過時間を基に統計的に判断する。サポートが終了すると、ソフトウェアは、ベンダにより管理されなくなる。また、サポート終了からの経過時間が長くなるほど、ソフトウェアに脆弱性が発見されている確率が高くなる。よって、経過時間が閾値を超えたら、未確定ファクト生成部104は、ソフトウェアに未知の脆弱性が存在すると判断する。
Furthermore, if support for the installed software has ended, the undetermined
なお、未確定ファクト生成部104は、ソフトウェアに含まれている未知の脆弱性の種類も統計的に判断してもよい。例えば、未確定ファクト生成部104は、上述したような脆弱性に関する統計情報であって、さらに脆弱性の種類ごとに集計された統計情報を用いてもよい。
Note that the undetermined
脆弱性の種類ごとに集計された統計情報を用いる場合、未確定ファクト生成部104は、診断対象システム200内の各ソフトウェアに脆弱性が含まれている確率を脆弱性の種類ごとに算出する。次いで、未確定ファクト生成部104は、算出された確率が所定の閾値を超えている場合に算出された確率に関する脆弱性が当該ソフトウェアに存在すると判断する。
When using statistical information aggregated for each vulnerability type, the undetermined
ファクト生成情報記憶部105には、上述したような統計情報と所定の閾値が予め記憶されている。統計情報には、統計的な判断の対象と、未知の脆弱性との対応関係が含まれている。未確定ファクト生成部104は、記憶されている対応関係を参照して、存在する未知の脆弱性を判断する。
The fact generation
なお、未確定ファクト生成部104は、生成された未確定ファクトが示す状態が真である確率をスコアとして算出し、算出されたスコアを用いて未確定ファクトを1つ以上の初期ファクトに含めるか否かを判断してもよい。
Note that the undetermined
未確定ファクト生成部104は、上記の方法で未確定ファクトを生成する。しかし、未確定ファクト生成部104による未確定ファクトの生成方法は、上記の方法に限られない。例えば、未確定ファクト生成部104は、上記の方法を組み合わせて未確定ファクトを生成してもよい。
The undetermined
また、未確定ファクト生成部104は、例えば別途管理者等から与えられる値N(Nは1以上の整数)を用いてもよい。未確定ファクト生成部104は、統計情報を基に各ソフトウェアに脆弱性が含まれる確率を計算し、計算された確率が上位1番目からN番目までのソフトウェアに脆弱性が含まれると判断してもよい。
Further, the undetermined
なお、上述したような未確定ファクトを生成する条件が満たされるか否かは、診断対象システム200等に依存する。条件が満たされない場合、未確定ファクトは、生成されない可能性もある。 Note that whether or not the conditions for generating an undetermined fact as described above are satisfied depends on the system to be diagnosed 200 and the like. If the conditions are not met, the undefined fact may not be generated.
本実施形態の初期ファクト記憶部106に記憶されている1つ以上の初期ファクトには、未確定ファクト生成部104により生成された未確定ファクトが含まれ得る。また、本実施形態の分析部107は、未確定ファクトも存在していると仮定して攻撃パスを分析する。
The one or more initial facts stored in the initial
すなわち、分析部107は、確定ファクトと所定の条件を満たす未確定ファクトとが含まれる複数のファクトのうち1つ以上のファクトが示す状態が、別のファクトを導き出すためのルールである分析ルールが示す条件に適合するか否かを判断する。所定の条件は、例えば未確定ファクトが示す状態が真である確率が所定の閾値以上であることである。
That is, the
別のファクトを導き出す処理を繰り返し実行することによって、分析部107は、確定ファクトと未確定ファクトの少なくともいずれか1つと、分析ルールとを基に、実行可能な攻撃を導出する。さらに、分析部107は、導出された攻撃と、生成された確定ファクトと生成された未確定ファクトの少なくともいずれか1つと、分析ルールとを基に、実行可能な新たな攻撃を導出する。
By repeatedly performing the process of deriving another fact, the
また、分析部107が生成する攻撃グラフには、各ファクトが確定ファクトと未確定ファクトのいずれであるかを示す情報が付与されている。
Furthermore, the attack graph generated by the
可視化部109は、分析結果記憶部108に記憶されている情報が示す、生成された攻撃グラフを表示手段(図示せず)に表示する機能を有する。なお、可視化部109は、分析システム100に備えられていなくてもよい。
The visualization unit 109 has a function of displaying the generated attack graph indicated by the information stored in the analysis
対策計画部110は、導出された攻撃パスに基づいて、攻撃を実行不可能にするために、診断対象システム200のどこにどのような対策を施せばよいか計画する機能を有する。すなわち、対策計画部110は、分析部107により実行可能と判定された攻撃に対する対策を計画する。
The
例えば、対策計画部110は、所定のホストのOSを更新する、所定のネットワーク境界にファイアウォールを追加する等の対策を出力する。なお、対策計画部110は、分析システム100に備えられていなくてもよい。
For example, the
抽出部111は、1つ以上の初期ファクトに含められた未確定ファクトのうち、攻撃の実行に寄与する未確定ファクトを抽出する機能を有する。具体的には、抽出部111は、分析結果記憶部108に記憶されている攻撃グラフが示す攻撃パスを構成する確定ファクトと未確定ファクトのうち、未確定ファクトを抽出する。
The
抽出部111は、抽出された未確定ファクトを提示する。例えば、抽出部111は、抽出された未確定ファクトの確認を管理者に依頼する。未確定ファクトの内容が運用に関する内容である場合、管理者は、未確定ファクトの真偽を判断できる可能性がある。
The
また、抽出部111は、抽出された未確定ファクトのうち追加スキャンの対象とする未確定ファクトを選択して、選択された未確定ファクトのスキャンをスキャナ101に指示する。例えば、抽出部111は、攻撃の実行に寄与する未確定ファクトのうち、特に重要なファクトを追加スキャンの対象に指定して、スキャンをスキャナ101に指示する。
Further, the
重要なファクトとして、例えば未確定ファクトが示す状態が真である確率が、ある第一の閾値以上かつ第二の閾値以下である未確定ファクトが考えられる。状態が真である確率が十分に大きい未確定ファクトは、追加スキャンされなくとも状態が真であるとみなされるため、追加スキャンの対象から除外される。また、状態が真である確率が十分に小さい未確定ファクトは、追加スキャンされなくとも状態が偽であるとみなされるため、やはり追加スキャンの対象から除外される。なお、第一の閾値および第二の閾値は、別途管理者等から与えられる値である。 An important fact may be, for example, an undetermined fact in which the probability that the state indicated by the undetermined fact is true is greater than or equal to a certain first threshold value and less than or equal to a certain second threshold value. An undetermined fact whose state has a sufficiently high probability of being true is excluded from additional scanning because the state is considered to be true even if it is not additionally scanned. In addition, undetermined facts whose state has a sufficiently low probability of being true are considered to have a false state even if they are not additionally scanned, and are therefore excluded from additional scans. Note that the first threshold value and the second threshold value are values separately given by an administrator or the like.
また、重要なファクトとして、例えば存在の有無により攻撃の成否が変化する未確定ファクト、すなわち攻撃の成否に関わる未確定ファクトや、所定の数以上の攻撃パスに影響を与えている未確定ファクトが考えられる。例えば、一方の条件が確定ファクトであるOR条件の他方の条件である未確定ファクトに関して、有無によらずOR条件が成立するので、抽出部111は、重要ファクトに指定しなくてもよい。
In addition, important facts include, for example, undetermined facts whose presence or absence changes the success or failure of an attack, that is, undetermined facts that are related to the success or failure of an attack, and undetermined facts that affect more than a predetermined number of attack paths. Conceivable. For example, with respect to an OR condition where one condition is a confirmed fact and the other condition is an unconfirmed fact, the OR condition is satisfied regardless of the presence or absence, so the
なお、OR条件は、攻撃パスにおいて各条件が論理和の関係、すなわち各条件が少なくとも1つ成立するときに攻撃が実行可能となり、各条件が全て成立しないときに攻撃が実行不可能となる条件を意味する。 Note that the OR condition is a logical OR relationship between each condition in the attack path, that is, the attack is possible when at least one of each condition is satisfied, and the attack is not possible when all of the conditions are not satisfied. means.
また、重要なファクトとして、例えば追加スキャンにより取得される新たな情報で真偽が明らかになることが予測される未確定ファクトが考えられる。抽出部111は、未知の脆弱性のようにスキャンが不可能、またはスキャンが著しく困難なファクトに対する追加スキャンの指示を抑制する。
Further, as an important fact, for example, an unconfirmed fact whose truth is expected to be revealed by new information obtained by additional scanning can be considered. The
さらに、抽出部111は、スキャナ101の特性を考慮して、得られる新たな情報で未確定ファクトの真偽を明らかにできるか否かを判断してもよい。スキャナ101が診断対象システム200に含まれる機器であるホスト内にインストールされているエージェントであれば、抽出部111は、ホストにインストールされているソフトウェアの設定等が取得できると判断する。
Furthermore, the
また、スキャナ101が診断対象システム200に含まれる機器であるホストに通信ネットワークを介して通信可能に接続されたアプライアンス等であれば、抽出部111は、ホストにインストールされているソフトウェアの設定等の取得が困難であると判断する。
Furthermore, if the
また、複数のスキャナが使用可能である場合、抽出部111は、得られる新たな情報で未確定ファクトの真偽を明らかにできる可能性が高いスキャナに対して、追加スキャンの指示を出力するように指示部112に指示してもよい。
Furthermore, when multiple scanners are available, the
指示部112は、抽出部111により選択された未確定ファクトのスキャンの指示をスキャナ101に入力する。
The instruction unit 112 inputs to the
[動作の説明]
以下、本実施形態の分析システム100の攻撃グラフを生成する動作を図7を参照して説明する。図7は、第1の実施形態の分析システム100による攻撃グラフ生成処理の動作を示すフローチャートである。
[Explanation of operation]
The operation of generating an attack graph by the
最初に、スキャナ101は、診断対象システム200をスキャンする(ステップS101)。
First, the
ステップS101で、スキャナ101は、診断対象システム200に含まれる機器の構成情報を収集する。次いで、スキャナ101は、収集された構成情報をスキャン結果記憶部102に格納する(ステップS102)。
In step S101, the
次いで、確定ファクト生成部103は、スキャン結果記憶部102に記憶されている構成情報を参照して、確定ファクトを生成する。次いで、確定ファクト生成部103は、生成された確定ファクトを、初期ファクト記憶部106に格納する(ステップS103)。
Next, the confirmed
また、未確定ファクト生成部104は、未確定ファクトを生成する。次いで、未確定ファクト生成部104は、生成された未確定ファクトを、初期ファクト記憶部106に格納する(ステップS104)。
Further, the undetermined
なお、未確定ファクト生成部104は、未確定ファクトを生成する時、スキャン結果記憶部102に記憶されている構成情報と、ファクト生成情報記憶部105に記憶されているファクト生成情報を参照してもよい。
Note that when generating an undetermined fact, the undetermined
次いで、分析部107は、初期ファクト記憶部106に記憶されている1つ以上の初期ファクトを基に、実行可能な攻撃の攻撃パスを導出することによって攻撃グラフを生成する(ステップS105)。次いで、分析部107は、生成された攻撃グラフを示す情報を、分析結果記憶部108に格納する(ステップS106)。
Next, the
次いで、可視化部109は、分析結果記憶部108に記憶されている情報が示す攻撃グラフを表示手段に表示する(ステップS107)。
Next, the visualization unit 109 displays the attack graph indicated by the information stored in the analysis
次いで、対策計画部110は、分析結果記憶部108に記憶されている情報が示す導出された攻撃パスに基づいて、優先的に対策した方が好ましい項目が含まれる対策計画を生成する(ステップS108)。
Next, the
対策計画を生成した後、分析システム100は、攻撃グラフ生成処理を終了する。なお、ステップS107、S108の各処理は、省略されてもよい。
After generating the countermeasure plan, the
次に、本実施形態の分析システム100の追加スキャンを実行する動作を図8を参照して説明する。図8は、第1の実施形態の分析システム100による追加スキャン実行処理の動作を示すフローチャートである。
Next, the operation of performing an additional scan of the
最初に、抽出部111は、分析結果記憶部108に記憶されている攻撃グラフが示す攻撃パスを構成するファクトのうち、未確定ファクトを抽出する(ステップS201)。
First, the
次いで、抽出部111は、抽出された未確定ファクトを管理者に向けて提示する(ステップS202)。なお、ステップS202の処理は、省略されてもよい。
Next, the
次いで、抽出部111は、抽出された未確定ファクトのうち追加スキャンの対象とする未確定ファクトを選択する(ステップS203)。
Next, the
次いで、抽出部111は、選択された未確定ファクトが追加スキャンの対象であることを指示部112に入力する(ステップS204)。
Next, the
次いで、指示部112は、入力された対象の未確定ファクトを含む情報の収集を実行するようにスキャナ101に指示する(ステップS205)。
Next, the instruction unit 112 instructs the
次いで、スキャナ101は、対象の未確定ファクトを含む情報を収集する(ステップS206)。スキャナ101は、追加で情報を収集し、収集された情報をスキャン結果記憶部102に格納する(ステップS207)。格納した後、分析システム100は、追加スキャン実行処理を終了する。
Next, the
なお、追加スキャン実行処理が終了した後、確定ファクト生成部103は、再度確定ファクトを生成してもよい。再度確定ファクトが生成された後、分析部107は、再度攻撃パスを導出してもよい。
Note that after the additional scan execution process is completed, the confirmed
[効果の説明]
上記の構成により、本実施形態の分析システム100は、未知の条件も対象にした網羅的な分析を実行できる。すなわち、本実施形態の分析システム100は、診断対象システム200に含まれる各機器から情報を十分に収集できない場合であっても診断対象システム200における攻撃可能性を分析できる。
[Explanation of effects]
With the above-described configuration, the
換言すると、本実施形態の分析システム100は、診断対象システム200内の機器を詳細にスキャンできない場合、全ての業務トラフィックを収集できない場合、使用可能なスキャナ製品やスキャン方式が限られている場合、または未知の脆弱性が含まれている場合等であっても、診断対象システム200における攻撃可能性を分析できる。
In other words, the
(変形例)
以下、本実施形態の変形例を説明する。図9は、本発明の第1の実施形態の分析システムの他の構成例を示すブロック図である。
(Modified example)
Modifications of this embodiment will be described below. FIG. 9 is a block diagram showing another configuration example of the analysis system according to the first embodiment of the present invention.
図9に示す分析システム100Aは、スキャナ101と、スキャン結果記憶部102と、確定ファクト生成部103と、未確定ファクト生成部104と、ファクト生成情報記憶部105と、初期ファクト記憶部106と、分析部107と、分析結果記憶部108と、可視化部109と、対策計画部110とを備える。すなわち、分析システム100Aは、図1に示す分析システム100と異なり、抽出部111と、指示部112とを備えていない。
The
また、分析システム100Aは、図7に示す攻撃グラフ生成処理を実行するが、図8に示す追加スキャン実行処理を実行しない。すなわち、分析システム100Aは、スキャンの実行から、攻撃パスの分析までを行う。
Furthermore, the
以下、本実施形態の分析システムのハードウェア構成の具体例を説明する。図10は、本発明による分析システムのハードウェア構成例を示す説明図である。 A specific example of the hardware configuration of the analysis system of this embodiment will be described below. FIG. 10 is an explanatory diagram showing an example of the hardware configuration of the analysis system according to the present invention.
図10に示す分析システムは、CPU 11と、主記憶部12と、通信部13と、補助記憶部14とを備える。また、ユーザが操作するための入力部15や、ユーザに処理結果または処理内容の経過を提示するための出力部16を備える。
The analysis system shown in FIG. 10 includes a
分析システムは、一例として、各構成要素が有する機能を提供するプログラムを図10に示すCPU 11が実行することによって、ソフトウェアにより実現される。
The analysis system is realized by software, for example, when the
すなわち、CPU 11が補助記憶部14に格納されているプログラムを、主記憶部12にロードして実行し、分析システムの動作を制御することによって、各機能がソフトウェアにより実現される。
That is, each function is realized by software by the
主記憶部12は、データの作業領域やデータの一時退避領域として用いられる。主記憶部12は、例えばRAM(Random Access Memory) である。スキャン結果記憶部102、ファクト生成情報記憶部105、初期ファクト記憶部106、および分析結果記憶部108は、主記憶部12で実現される。
The
通信部13は、有線のネットワークまたは無線のネットワーク(情報通信ネットワーク)を介して、周辺機器との間でデータを入力および出力する機能を有する。スキャナ101は、通信部13で実現されてもよい。
The
補助記憶部14は、一時的でない有形の記憶媒体である。一時的でない有形の記憶媒体として、例えば磁気ディスク、光磁気ディスク、CD-ROM(Compact Disk Read Only Memory) 、DVD-ROM(Digital Versatile Disk Read
Only Memory)、半導体メモリが挙げられる。
The
Only Memory) and semiconductor memory.
入力部15は、データや処理命令を入力する機能を有する。入力部15は、例えばキーボードやマウス等の入力デバイスである。
The
出力部16は、データを出力する機能を有する。出力部16は、例えば液晶ディスプレイ装置等の表示装置である。
The
また、図10に示すように、分析システムにおいて、各構成要素は、システムバス17に接続されている。
Further, as shown in FIG. 10, each component in the analysis system is connected to a
補助記憶部14は、例えば、スキャナ101、確定ファクト生成部103、未確定ファクト生成部104、分析部107、可視化部109、対策計画部110、抽出部111、および指示部112を実現するためのプログラムを記憶している。
The
上述した分析システムの実現方法には、様々な変形例がある。例えば、分析システムは、構成要素毎にそれぞれ別個の情報処理装置とプログラムとの任意の組み合わせにより実現されてもよい。また、分析システムが備える複数の構成要素が、一つの情報処理装置とプログラムとの任意の組み合わせにより実現されてもよい。 There are various modifications to the method for implementing the above-mentioned analysis system. For example, the analysis system may be realized by any combination of separate information processing devices and programs for each component. Further, a plurality of components included in the analysis system may be realized by an arbitrary combination of one information processing device and a program.
また、各構成要素の一部または全部は、汎用の回路(circuitry )または専用の回路、プロセッサ等やこれらの組み合わせによって実現されてもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各構成要素の一部または全部は、上述した回路等とプログラムとの組み合わせによって実現されてもよい。 Further, part or all of each component may be realized by a general-purpose circuit, a dedicated circuit, a processor, etc., or a combination thereof. These may be configured by a single chip or multiple chips connected via a bus. Part or all of each component may be realized by a combination of the circuits and the like described above and a program.
各構成要素の一部または全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。 When part or all of each component is realized by a plurality of information processing devices, circuits, etc., the plurality of information processing devices, circuits, etc. may be centrally arranged or distributed. For example, information processing devices, circuits, etc. may be implemented as a client and server system, a cloud computing system, or the like, in which each is connected via a communication network.
次に、本発明の概要を説明する。図11は、本発明による分析システムの概要を示すブロック図である。本発明による分析システム20は、診断対象システムまたは診断対象システムに含まれる機器におけるセキュリティに関連する状態を示すファクトのうち診断対象システムまたは機器の未知の情報を示すファクトを未確定ファクトとして生成する未確定ファクト生成部21(例えば、未確定ファクト生成部104)を備える。
Next, an overview of the present invention will be explained. FIG. 11 is a block diagram showing an overview of the analysis system according to the present invention. The
そのような構成により、分析システムは、診断対象システムに含まれる各機器から情報を十分に収集できない場合であっても診断対象システムにおける攻撃可能性を分析できる。 With such a configuration, the analysis system can analyze the possibility of an attack on the system to be diagnosed even if sufficient information cannot be collected from each device included in the system to be diagnosed.
以上、実施形態および実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 Although the present invention has been described above with reference to the embodiments and examples, the present invention is not limited to the above embodiments and examples. The configuration and details of the present invention can be modified in various ways that can be understood by those skilled in the art within the scope of the present invention.
また、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下に限られない。 Furthermore, part or all of the above embodiments may be described as in the following supplementary notes, but the embodiments are not limited to the following.
(付記1)診断対象システムまたは前記診断対象システムに含まれる機器におけるセキュリティに関連する状態を示すファクトのうち前記診断対象システムまたは前記機器の未知の情報を示すファクトを未確定ファクトとして生成する未確定ファクト生成部を備えることを特徴とする分析システム。 (Additional Note 1) Among the facts indicating the security-related status of the system to be diagnosed or the equipment included in the system to be diagnosed, a fact indicating unknown information of the system to be diagnosed or the device is generated as an undetermined fact. An analysis system comprising a fact generation section.
(付記2)未確定ファクト生成部は、機器の構成情報を基に未確定ファクトを生成する付記1記載の分析システム。 (Additional Note 2) The analysis system according to Additional Note 1, wherein the undetermined fact generation unit generates undetermined facts based on configuration information of the device.
(付記3)未確定ファクト生成部は、構成情報が示すソフトウェアに関する更新頻度、前記ソフトウェアに関するバグ曲線、または前記ソフトウェアに関する規模に基づいて未確定ファクトを生成する付記2記載の分析システム。 (Supplementary Note 3) The analysis system according to Supplementary Note 2, wherein the undetermined fact generation unit generates the undetermined fact based on the update frequency related to the software, the bug curve related to the software, or the scale related to the software indicated by the configuration information.
(付記4)ファクトのうち構成情報が示すファクトを確定ファクトとして生成する確定ファクト生成部を備える付記1から付記3のうちのいずれかに記載の分析システム。 (Supplementary Note 4) The analysis system according to any one of Supplementary Notes 1 to 3, including a confirmed fact generation unit that generates a fact indicated by the configuration information among the facts as a confirmed fact.
(付記5)確定ファクトと所定の条件を満たす未確定ファクトとが含まれる複数のファクトのうち1つ以上のファクトが示す状態が、別のファクトを導き出すためのルールである分析ルールが示す条件に適合するか否かを判断する分析部を備える付記4記載の分析システム。 (Additional note 5) The state indicated by one or more facts among multiple facts that include confirmed facts and unconfirmed facts that satisfy a predetermined condition does not meet the conditions indicated by the analysis rule that is a rule for deriving another fact. The analysis system according to supplementary note 4, comprising an analysis section that determines whether or not it is compatible.
(付記6)所定の条件は、未確定ファクトが示す状態が真である確率が所定の閾値以上であることである付記5記載の分析システム。 (Supplementary note 6) The analysis system according to supplementary note 5, wherein the predetermined condition is that the probability that the state indicated by the undetermined fact is true is greater than or equal to a predetermined threshold.
(付記7)分析部は、確定ファクトと未確定ファクトの少なくともいずれか1つと、分析ルールとを基に、実行可能な攻撃を導出する付記5または付記6記載の分析システム。 (Supplementary note 7) The analysis system according to supplementary note 5 or 6, wherein the analysis unit derives an executable attack based on at least one of confirmed facts and unconfirmed facts and analysis rules.
(付記8)分析部は、導出された攻撃と、確定ファクトと未確定ファクトの少なくともいずれか1つと、分析ルールとを基に、実行可能な新たな攻撃を導出する付記7記載の分析システム。 (Supplementary note 8) The analysis system according to supplementary note 7, wherein the analysis unit derives a new executable attack based on the derived attack, at least one of confirmed facts and unconfirmed facts, and the analysis rule.
(付記9)導出された攻撃に対する対策を計画する対策計画部を備える付記7または付記8記載の分析システム。 (Supplementary note 9) The analysis system according to supplementary note 7 or 8, comprising a countermeasure planning unit that plans countermeasures against derived attacks.
(付記10)機器から構成情報を収集するスキャナを備える付記1から付記9のうちのいずれかに記載の分析システム。 (Supplementary Note 10) The analysis system according to any one of Supplementary Notes 1 to 9, including a scanner that collects configuration information from devices.
(付記11)診断対象システムまたは前記診断対象システムに含まれる機器におけるセキュリティに関連する状態を示すファクトのうち前記診断対象システムまたは前記機器の未知の情報を示すファクトを未確定ファクトとして生成することを特徴とする分析方法。 (Additional Note 11) Of the facts indicating the security-related status of the system to be diagnosed or the equipment included in the system to be diagnosed, a fact indicating unknown information of the system to be diagnosed or the device included in the system to be diagnosed may be generated as an undetermined fact. Featured analysis method.
(付記12)コンピュータに、診断対象システムまたは前記診断対象システムに含まれる機器におけるセキュリティに関連する状態を示すファクトのうち前記診断対象システムまたは前記機器の未知の情報を示すファクトを未確定ファクトとして生成する未確定ファクト生成処理を実行させるための分析プログラム。 (Additional Note 12) A computer generates, as an undetermined fact, a fact indicating unknown information of the system to be diagnosed or the device included among the facts indicating the security-related status of the system to be diagnosed or the equipment included in the system to be diagnosed. An analysis program that executes undefined fact generation processing.
本発明は、資産管理システムと連携して使用される分析システムに好適に適用される。 The present invention is suitably applied to an analysis system used in conjunction with an asset management system.
11 CPU
12 主記憶部
13 通信部
14 補助記憶部
15 入力部
16 出力部
17 システムバス
20、100、100A 分析システム
21、104 未確定ファクト生成部
101 スキャナ
102 スキャン結果記憶部
103 確定ファクト生成部
105 ファクト生成情報記憶部
106 初期ファクト記憶部
107 分析部
108 分析結果記憶部
109 可視化部
110 対策計画部
111 抽出部
112 指示部
200 診断対象システム
11 CPU
12
Claims (11)
ファクトのうち前記機器の構成情報が示すファクトを確定ファクトとして生成する確定ファクト生成部と、
確定ファクトと所定の条件を満たす未確定ファクトとが含まれる複数のファクトのうち1つ以上のファクトが示す状態が、別のファクトを導き出すためのルールである分析ルールが示す条件に適合するか否かを判断する分析部とを備える
ことを特徴とする分析システム。 an undetermined fact generation unit that generates, as an undetermined fact, a fact indicating unknown information of the diagnostic target system or the device among facts indicating a security-related state of the diagnostic target system or the equipment included in the diagnostic target system; ,
A confirmed fact generation unit that generates a fact indicated by the configuration information of the device among the facts as a confirmed fact ;
Whether the state indicated by one or more facts among multiple facts that include confirmed facts and unconfirmed facts that meet predetermined conditions conforms to the conditions indicated by an analysis rule that is a rule for deriving another fact. and an analysis department that determines whether
An analysis system characterized by:
請求項1記載の分析システム。 The analysis system according to claim 1 , wherein the undetermined fact generation unit generates a generally considered state of the diagnosis target system or a state of the equipment as the undetermined fact.
請求項1記載の分析システム。 The analysis system according to claim 1 , wherein the undetermined fact generation unit generates the undetermined fact by estimating environmental information not included in the scan result based on the scan result.
請求項1記載の分析システム。 The analysis system according to claim 1 , wherein the undetermined fact generation unit generates the undetermined fact by statistically determining the possibility that an unknown vulnerability is included based on the scan result.
請求項4記載の分析システム。 The analysis system according to claim 4 , wherein the undetermined fact generation unit generates the undetermined fact based on the update frequency regarding the software, the bug curve regarding the software, or the scale regarding the software indicated by the configuration information.
請求項1記載の分析システム。 The analysis system according to claim 1 , wherein the analysis unit derives an executable attack based on at least one of confirmed facts and unconfirmed facts and an analysis rule.
請求項6記載の分析システム。 The analysis system according to claim 6 , wherein the analysis unit derives a new executable attack based on the derived attack, at least one of confirmed facts and unconfirmed facts, and the analysis rule.
請求項6または請求項7記載の分析システム。 The analysis system according to claim 6 or claim 7 , further comprising a countermeasure planning unit that plans countermeasures against the derived attack.
請求項1から請求項8のうちのいずれか1項に記載の分析システム。 The analysis system according to any one of claims 1 to 8 , further comprising a scanner that collects configuration information from devices.
前記分析システムが、
診断対象システムまたは前記診断対象システムに含まれる機器におけるセキュリティに関連する状態を示すファクトのうち前記診断対象システムまたは前記機器の未知の情報を示すファクトを未確定ファクトとして生成し、
ファクトのうち前記機器の構成情報が示すファクトを確定ファクトとして生成し、
確定ファクトと所定の条件を満たす未確定ファクトとが含まれる複数のファクトのうち1つ以上のファクトが示す状態が、別のファクトを導き出すためのルールである分析ルールが示す条件に適合するか否かを判断する
ことを特徴とする分析方法。 An analytical method performed on an analytical system, the method comprising:
The analysis system includes:
Generating a fact indicating unknown information of the diagnosis target system or the device among facts indicating a security-related state of the diagnosis target system or the equipment included in the diagnosis target system as an undetermined fact;
Among the facts, a fact indicated by the configuration information of the device is generated as a confirmed fact ,
Whether the state indicated by one or more facts among multiple facts that include confirmed facts and unconfirmed facts that meet predetermined conditions conforms to the conditions indicated by an analysis rule that is a rule for deriving another fact. determine whether
An analysis method characterized by
診断対象システムまたは前記診断対象システムに含まれる機器におけるセキュリティに関連する状態を示すファクトのうち前記診断対象システムまたは前記機器の未知の情報を示すファクトを未確定ファクトとして生成する未確定ファクト生成処理、
ファクトのうち前記機器の構成情報が示すファクトを確定ファクトとして生成する確定ファクト生成処理、および
確定ファクトと所定の条件を満たす未確定ファクトとが含まれる複数のファクトのうち1つ以上のファクトが示す状態が、別のファクトを導き出すためのルールである分析ルールが示す条件に適合するか否かを判断する分析処理
を実行させるための分析プログラム。 to the computer,
An undetermined fact generation process that generates, as an undetermined fact, a fact indicating unknown information of the diagnostic target system or the device among facts indicating a security-related state of the diagnostic target system or the equipment included in the diagnostic target system ;
A confirmed fact generation process that generates a fact indicated by the configuration information of the device among the facts as a confirmed fact ;
Whether the state indicated by one or more facts among multiple facts that include confirmed facts and unconfirmed facts that meet predetermined conditions conforms to the conditions indicated by an analysis rule that is a rule for deriving another fact. Analytical processing to determine whether
An analysis program to run.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2020/004311 WO2021156966A1 (en) | 2020-02-05 | 2020-02-05 | Analysis system, method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2021156966A1 JPWO2021156966A1 (en) | 2021-08-12 |
JP7424395B2 true JP7424395B2 (en) | 2024-01-30 |
Family
ID=77199933
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021575152A Active JP7424395B2 (en) | 2020-02-05 | 2020-02-05 | Analytical systems, methods and programs |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230056552A1 (en) |
JP (1) | JP7424395B2 (en) |
WO (1) | WO2021156966A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11765195B2 (en) * | 2021-02-16 | 2023-09-19 | Icf International | Distributed network-level probabilistic attack graph generation |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019192101A (en) | 2018-04-27 | 2019-10-31 | 矢崎総業株式会社 | Brittleness information generator and brittleness evaluation device |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9058251B1 (en) * | 2013-03-13 | 2015-06-16 | Google Inc. | Detecting external software update failure of local application |
US9350748B1 (en) * | 2013-12-16 | 2016-05-24 | Amazon Technologies, Inc. | Countering service enumeration through optimistic response |
JP6000495B2 (en) * | 2014-02-26 | 2016-09-28 | 三菱電機株式会社 | Attack detection device, attack detection method, and attack detection program |
US10747887B2 (en) * | 2015-10-09 | 2020-08-18 | Nippon Telegraph And Telephone Corporation | Vulnerability detection device, vulnerability detection method, and vulnerability detection program |
KR102183897B1 (en) * | 2018-09-19 | 2020-11-27 | 주식회사 맥데이타 | An apparatus for anomaly detecting of network based on artificial intelligent and method thereof, and system |
US11115431B2 (en) * | 2018-10-05 | 2021-09-07 | Rapid7, Inc. | Identifying network vulnerabilities |
-
2020
- 2020-02-05 US US17/794,366 patent/US20230056552A1/en active Pending
- 2020-02-05 WO PCT/JP2020/004311 patent/WO2021156966A1/en active Application Filing
- 2020-02-05 JP JP2021575152A patent/JP7424395B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019192101A (en) | 2018-04-27 | 2019-10-31 | 矢崎総業株式会社 | Brittleness information generator and brittleness evaluation device |
Non-Patent Citations (1)
Title |
---|
郷間 佳市郎,ネットワークシステムにおける脆弱性管理-その仕組みと手法-,オペレーションズ・リサーチ 経営の科学 平成17年5月号,日本,社団法人日本オペレーションズ・リサーチ学会,2005年05月01日,第50巻, 第5号,pp.324-328 |
Also Published As
Publication number | Publication date |
---|---|
US20230056552A1 (en) | 2023-02-23 |
JPWO2021156966A1 (en) | 2021-08-12 |
WO2021156966A1 (en) | 2021-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8095984B2 (en) | Systems and methods of associating security vulnerabilities and assets | |
US9253208B1 (en) | System and method for automated phishing detection rule evolution | |
EP3337106B1 (en) | Identification system, identification device and identification method | |
TW201937390A (en) | Data-defined architecture for network data management | |
JP6656211B2 (en) | Information processing apparatus, information processing method, and information processing program | |
US11770403B2 (en) | Determination of a security rating of a network element | |
CN107004088A (en) | Determining device, determine method and determination program | |
Kim et al. | Differential effects of prior experience on the malware resolution process | |
WO2016121348A1 (en) | Anti-malware device, anti-malware system, anti-malware method, and recording medium in which anti-malware program is stored | |
JP7005936B2 (en) | Evaluation program, evaluation method and information processing equipment | |
JPWO2017094377A1 (en) | Classification method, classification device, and classification program | |
WO2020195228A1 (en) | Analysis system, method, and program | |
KR102366637B1 (en) | Cyber threat detection method of electronic apparatus | |
JP7424470B2 (en) | Analytical systems, methods and programs | |
JP7424395B2 (en) | Analytical systems, methods and programs | |
RU2481633C2 (en) | System and method for automatic investigation of safety incidents | |
US12050694B2 (en) | Rule generation apparatus, rule generation method, and computer-readable recording medium | |
JP7283545B2 (en) | Analysis system, method and program | |
JP7298701B2 (en) | Analysis system, method and program | |
JP7405162B2 (en) | Analytical systems, methods and programs | |
WO2020017000A1 (en) | Cyber attack information analyzing program, cyber attack information analyzing method, and information processing device | |
JP7255679B2 (en) | Attack graph processing device, method and program | |
WO2020195230A1 (en) | Analysis system, method, and program | |
JP7302665B2 (en) | Analysis system, method and program | |
WO2023073952A1 (en) | Security analysis device, security analysis method, and computer-readable recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220713 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230912 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231027 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231114 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231204 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20231219 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240101 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7424395 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |