JP2022131621A - Threat scenario analysis device and threat scenario analysis method - Google Patents

Threat scenario analysis device and threat scenario analysis method Download PDF

Info

Publication number
JP2022131621A
JP2022131621A JP2021030653A JP2021030653A JP2022131621A JP 2022131621 A JP2022131621 A JP 2022131621A JP 2021030653 A JP2021030653 A JP 2021030653A JP 2021030653 A JP2021030653 A JP 2021030653A JP 2022131621 A JP2022131621 A JP 2022131621A
Authority
JP
Japan
Prior art keywords
threat
event
threat scenario
state
scenario
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
JP2021030653A
Other languages
Japanese (ja)
Inventor
晋也 笹
Shinya Sasa
千秋 太田原
Chiaki Otawara
尚生 坂崎
Hisao Sakazaki
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2021030653A priority Critical patent/JP2022131621A/en
Publication of JP2022131621A publication Critical patent/JP2022131621A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

To reliably discover a threat scenario when a system did not operate exactly as in specification.SOLUTION: A threat scenario analysis system is configured to: store an event list being information including a listing of events that may occur when the system to be analyzed is operated exactly as in specification, and time points at which the respective events should occur as in specification; generate event occurrence data being data that combines, in a time-series manner, events occurring at time points at which they should occur as in specification and events occurring at times of day at which they should not occur as in specification; generate in plurality a state transition pattern of the system to be analyzed which is obtained by causing each event of the event occurrence data to act sequentially in time series upon the preliminarily set initial state; retrieve, as a threat scenario, a pattern in which the state of the system to be analyzed reaches a preliminarily set threat state, among the generated state transition patterns; and output information regarding the retrieved threat scenario.SELECTED DRAWING: Figure 1

Description

本発明は、脅威シナリオ分析装置および脅威シナリオ分析方法に関する。 The present invention relates to a threat scenario analysis device and a threat scenario analysis method.

情報処理システムや機器の制御システム等のシステムのセーフティセキュリティを確保するためには、設計段階からシステムに対し発生し得る脅威とその原因を特定し(以下、この原因特定プロセスのことを「脅威分析」と称する。)、発生しうる脅威やその原因について適切な対策を講じておく必要がある。 In order to ensure the safety security of systems such as information processing systems and equipment control systems, possible threats to the system and their causes are identified from the design stage (this process of identifying causes is hereinafter referred to as "threat analysis"). ), it is necessary to take appropriate countermeasures against possible threats and their causes.

設計段階における体系的な脅威分析の手法として、例えば、アタックツリー分析、5w分析、STAMP/STPA分析(Systems-Theoretic Accident Model and Processes/System-Theoretic Process Analysis)がある。しかし、これらの脅威分析手法は、いずれも分析者が人手で分析することを想定しており、分析対象となるシステムが複雑である場合や分析者の経験や知見が不足しているような場合は、脅威やその原因の見落としが多くなるという課題がある。 Methods of systematic threat analysis in the design stage include, for example, attack tree analysis, 5w analysis, and STAMP/STPA analysis (Systems-Theoretic Accident Model and Processes/System-Theoretic Process Analysis). However, all of these threat analysis methods are based on the assumption that the analysis will be done manually by analysts. However, there is a problem that many threats and their causes are overlooked.

上記の課題に関し、例えば、特許文献1には、製品設計の段階において、製品仕様を記述した状態遷移モデルを、この製品仕様における全パラメータを用いて動作させ、セキュリティ上の「起こるべきではない」欠陥の状態を、簡易に検証することを目的として構成された、仕様欠陥検証システムに関して記載されている。仕様欠陥検証システムは、システム仕様をイベントの発生に伴う状態ノードの変更による状態遷移の1以上の組合の状態遷移モデルとし、状態遷移のシミュレーションでシステム仕様を検証する際、状態遷移モデルの発生してはいけない状態のリスクファイルを記憶し、状態遷移モデルからイベントおよびイベントによる状態ノードの遷移前後の状態を読み出し、イベントを順次実行し、所定の条件を満たす場合に状態情報に応じて状態ノードの状態の状態遷移を行い、変更された状態ノードの状態が、発生してはいけない状態ノードの組合せに一致するか否かを検出する。 Regarding the above problem, for example, in Patent Document 1, in the stage of product design, a state transition model describing product specifications is operated using all parameters in the product specifications, and security "should not occur" is described. A specification defect verification system configured for the purpose of easily verifying the state of defects is described. The specification defect verification system uses the system specification as a state transition model of one or more combinations of state transitions due to changes in state nodes due to the occurrence of events, and when verifying the system specifications by state transition simulation, the state transition model is generated. A risk file of states that should not be allowed is stored, an event and the states before and after the transition of the state node due to the event are read from the state transition model, the events are sequentially executed, and if a predetermined condition is satisfied, the state node is changed according to the state information. State transitions between states are performed, and it is detected whether or not the state of the changed state node matches a combination of state nodes that should not occur.

特開2009-75886号公報JP 2009-75886 A

特許文献1では、分析対象となるシステム(以下、「分析対象システム」と称する。)の仕様に基づき作成した、分析対象システムの状態遷移のルールを記述するモデルと脅威をシミュレータに入力することにより、脅威の発生に繋がる状態遷移のパターン(以下、「脅威シナリオ」と称する。)を特定する。 In Patent Document 1, a model that describes the state transition rules of the system to be analyzed, which is created based on the specifications of the system to be analyzed (hereinafter referred to as the "system to be analyzed"), and threats are input into the simulator. , patterns of state transitions leading to the occurrence of threats (hereinafter referred to as “threat scenarios”) are identified.

しかし、特許文献1では、「仕様通り」に分析対象システムが動作した場合に発生し得る脅威に繋がる状態遷移のパターンのみをシミュレーションしており、不具合や故障等によりシステムが「仕様通りに動かなかった」場合については考慮されていない。そのため、例えば、分析対象システムの状態遷移を引き起こす事象(イベント)が、「システムの仕様よりも早すぎた」、「システムの仕様よりも遅すぎた」、「システムの仕様と比べて余計に発生した」といった、システムが仕様通りに動かなかった場合における脅威シナリオについては発見することができない。 However, in Patent Document 1, only the patterns of state transitions that lead to threats that can occur when the system to be analyzed operates "according to specifications" are simulated, and the system "does not operate according to specifications" due to a defect or failure. It does not consider the case of For this reason, for example, events that cause state transitions in the system to be analyzed can be “too early than system specifications,” “too late,” or “excessive occurrences compared to system specifications.” It is not possible to discover threat scenarios in which the system does not work as specified.

本発明は、このような背景に基づきなされたものであり、システムが仕様通りに動かなかった場合における脅威シナリオを発見することが可能な、脅威シナリオ分析装置および脅威シナリオ分析方法を提供することを目的とする。 The present invention has been made based on such a background, and aims to provide a threat scenario analysis device and a threat scenario analysis method capable of discovering a threat scenario when the system does not operate according to specifications. aim.

上記目的を達成するための本発明の一つは、分析対象システムにおいて発生し得る脅威に繋がる状態遷移のパターンである脅威シナリオを分析する情報処理システム(脅威シナリオ分析システム)であって、情報処理装置を用いて構成され、分析対象システムが仕様通り動作した場合に発生し得るイベントの一覧と、前記イベントの夫々が仕様上発生すべき時刻を含む情報であるイベントリストを記憶し、前記仕様上発生すべき時刻に発生するイベントと前記仕様上発生すべき時刻でない時刻に発生するイベントとを時系列に組み合わせたデータであるイベント発生データを生成し、予め設定された初期状態に、前記イベント発生データの各イベントを前記時系列に順次作用させていくことにより得られる前記分析対象システムの状態遷移のパターンを複数生成し、生成した前記状態遷移のパターンのうち、前記分析対象システムの状態が、予め設定された脅威状態に到達するパターンを脅威シナリオとして探索し、探索した前記脅威シナリオに関する情報を出力する。 One of the present inventions for achieving the above object is an information processing system (threat scenario analysis system) for analyzing a threat scenario, which is a pattern of state transitions leading to threats that may occur in an analysis target system, comprising: and storing an event list that is information including a list of events that can occur when the system to be analyzed operates according to the specifications and the time at which each of the events should occur according to the specifications. generating event occurrence data, which is data obtained by chronologically combining an event occurring at a time that should occur and an event occurring at a time that should not occur according to the specifications, and generating the event occurrence in a preset initial state; generating a plurality of state transition patterns of the system to be analyzed obtained by sequentially acting on the events of the data in the time series, and among the generated state transition patterns, the state of the system to be analyzed is: A pattern that reaches a preset threat state is searched as a threat scenario, and information about the searched threat scenario is output.

尚、上記した以外の課題、構成および効果は、以下の発明を実施するための形態の説明により明らかにされる。 Problems, configurations, and effects other than those described above will be clarified by the following description of the mode for carrying out the invention.

本発明によれば、不具合や故障等によりシステムが仕様通りに動かなかったために脅威が発生したという脅威シナリオを発見することができる。 According to the present invention, it is possible to discover a threat scenario in which a threat occurs because the system does not operate according to specifications due to a problem, failure, or the like.

脅威シナリオ分析装置の概略的な構成を示す図である。It is a figure which shows the schematic structure of a threat scenario analysis apparatus. 依頼者用装置の物理構成の一例である。1 is an example of a physical configuration of a client device; 脅威シナリオ分析装置の物理構成の一例である。It is an example of a physical configuration of a threat scenario analysis device. 脅威シナリオ分析装置の処理の一例を示すシーケンス図である。FIG. 4 is a sequence diagram showing an example of processing of the threat scenario analysis device; イベントリストの一例である。It is an example of an event list. 初期状態情報の一例である。It is an example of initial state information. 脅威情報の一例を表す図である。It is a figure showing an example of threat information. 脅威シナリオデータの一例である。It is an example of threat scenario data. 脅威シナリオ分類データの一例である。It is an example of threat scenario classification data. イベントリスト入力画面の一例である。It is an example of an event list input screen. 初期状態入力画面の一例を示す図である。It is a figure which shows an example of an initial state input screen. 脅威情報入力画面の一例を示す図である。It is a figure which shows an example of a threat information input screen. 入力チェック処理を説明するフローチャートである。It is a flow chart explaining input check processing. 状態遷移パターンデータの一例である。It is an example of state transition pattern data. 脅威シナリオ探索処理を説明するフローチャートである。FIG. 11 is a flowchart for explaining threat scenario search processing; FIG. 分類処理を説明するフローチャートである。10 is a flowchart for explaining classification processing; 脅威シナリオ一覧画面の一例である。It is an example of a threat scenario list screen. 脅威シナリオ詳細画面の一例である。It is an example of a threat scenario detail screen.

以下、図面を参照しつつ本発明の実施形態を説明する。以下の記載および図面は、本発明を説明するための例示であって、説明の明確化のため、適宜、省略および簡略化がなされている。本発明は、他の種々の形態でも実施することが可能である。とくに限定しない限り、各構成要素は単数でも複数でも構わない。 Embodiments of the present invention will be described below with reference to the drawings. The following description and drawings are examples for explaining the present invention, and are appropriately omitted and simplified for clarity of explanation. The present invention can also be implemented in various other forms. Unless otherwise specified, each component may be singular or plural.

以下の説明では、「テーブル」、「リスト」、「キュー」等の表現にて各種情報を説明することがあるが、各種情報は、これら以外のデータ構造で表現されていてもよい。データ構造に依存しないことを示すために「XXテーブル」、「XXリスト」等を「XX情報」と呼ぶことがある。識別情報について説明する際に、「識別情報」、「識別子」、「名」、「ID」、「番号」、「No.」等の表現を用いるが、これらは互いに置換することが可能である。 In the following description, various types of information may be described using expressions such as “table”, “list”, “queue”, etc. However, various types of information may be expressed in data structures other than these. "XX table", "XX list", etc. are sometimes referred to as "XX information" to indicate that they do not depend on the data structure. When describing the identification information, expressions such as “identification information”, “identifier”, “name”, “ID”, “number”, “No.” are used, but these can be replaced with each other. .

以下の説明において、符号の前に付した「S」の文字は処理ステップの意味である。また、以下の説明および図面において、「プログラム」を「PG」と、「インタフェース」を「IF」と、テーブルのことを「TBL」と表記することがある。 In the following description, the character "S" attached before the reference sign means a processing step. In the following description and drawings, "program" may be abbreviated as "PG", "interface" as "IF", and table as "TBL".

図1に、本発明の一実施形態として示す脅威シナリオ分析システム100の概略的な構成
を示している。同図に示すように、脅威シナリオ分析システム100は、分析の対象となる
システムにおいて脅威の発生に繋がる状態遷移のパターン(以下、「脅威シナリオ」と称する。)の分析を依頼する依頼者側の情報処理装置である依頼者用装置110と、依頼に基
づき分析を行う分析者側の装置である脅威シナリオ分析装置120とを備える。依頼者用装
置110は、通信ネットワーク130を介して脅威シナリオ分析装置120と双方向通信が可能な
状態で接続されている。通信ネットワーク130は、例えば、LAN(Local Area Network
)、WAN(Wide Area Network)、インターネット、公衆通信網、専用線等である。
FIG. 1 shows a schematic configuration of a threat scenario analysis system 100 shown as one embodiment of the present invention. As shown in the figure, the threat scenario analysis system 100 is a requester side requesting analysis of a state transition pattern (hereinafter referred to as "threat scenario") that leads to the occurrence of a threat in the system to be analyzed. It comprises a client device 110, which is an information processing device, and a threat scenario analysis device 120, which is an analyst side device that performs analysis based on a request. Client device 110 is connected to threat scenario analysis device 120 via communication network 130 in a state in which two-way communication is possible. The communication network 130 is, for example, a LAN (Local Area Network
), WAN (Wide Area Network), Internet, public communication network, leased line, and the like.

依頼者用装置110は、主な機能として、依頼者用入力受付部111、依頼者用出力部112、
および記憶部116を備える。記憶部116は、依頼者用装置110の各種の機能を実現するプロ
グラムである依頼者用入出力PG215を記憶する。
The requester's device 110 has, as main functions, a requester's input reception unit 111, a requester's output unit 112,
and a storage unit 116. The storage unit 116 stores a client input/output PG 215 which is a program for realizing various functions of the client device 110 .

脅威シナリオ分析装置120は、主な機能として、分析者用入力受付部121、入力チェック部122、脅威シナリオ探索部123、分類部124、分析者用出力部125、および記憶部126を備
える。記憶部126は、脅威シナリオ分析装置120の各種の機能を実現するプログラムである脅威シナリオ分析PG315、イベントリスト500、初期状態情報600、脅威情報700、脅威シナリオデータ800、脅威シナリオ分類データ900、および状態遷移パターンデータ1400を記憶する。記憶部126は、これらの情報(データ)を、例えば、データベースのテーブルや
ファイルシステムが管理するファイルとして管理する。
The threat scenario analysis device 120 includes an analyst input reception unit 121, an input check unit 122, a threat scenario search unit 123, a classification unit 124, an analyst output unit 125, and a storage unit 126 as main functions. Storage unit 126 stores threat scenario analysis PG 315, which is a program that implements various functions of threat scenario analysis device 120, event list 500, initial state information 600, threat information 700, threat scenario data 800, threat scenario classification data 900, and State transition pattern data 1400 is stored. The storage unit 126 manages these pieces of information (data) as files managed by a database table or a file system, for example.

図2に、依頼者用装置110の物理構成の一例を示している。依頼者用装置110は、装置本体210と入出力装置220を含んで構成される。 FIG. 2 shows an example of the physical configuration of client device 110 . The client device 110 includes a device main body 210 and an input/output device 220 .

このうち装置本体210は、プロセッサ211、記憶装置212、通信IF213、およびバス214
を備える。
Among them, the device main body 210 includes a processor 211, a storage device 212, a communication IF 213, and a bus 214.
Prepare.

プロセッサ211は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等である。プロセッサ211は、記憶装置212
に格納されているプログラムを読み出して実行することにより依頼者用装置110の各種機
能を実現する。
The processor 211 is a CPU (Central Processing Unit), MPU (Micro Processing Unit), GPU (Graphics Processing Unit), or the like. The processor 211 has a storage device 212
Various functions of the client device 110 are realized by reading and executing the programs stored in the .

記憶装置212は、各種データや、プロセッサ211が実行する命令のセットがプログラムとして記述されたデータを記憶する、各種記憶素子(RAM(Random Access Memory)、ROM(Read Only memory)、不揮発性メモリ(Non Volatile RAM))や各種記録媒体(SSD(Solid State Drive)、ハードディスクドライブ、光学式記録媒体等)である。同
図に示すように、記憶装置212には、依頼者用装置110の各種の機能を実現するプログラムやデータが格納されている。プログラムやデータの一部またはすべては、予め記憶装置212に格納されていてもよいし、必要に応じて、非一時的な記録媒体や他の装置の非一時的記憶装置から、記録媒体の読取装置や通信IF213を介して記憶装置212に読み込むことができる。
The storage device 212 includes various storage elements (RAM (Random Access Memory), ROM (Read Only Memory), non-volatile memory ( non-volatile RAM)) and various recording media (SSD (Solid State Drive), hard disk drive, optical recording medium, etc.). As shown in the figure, the storage device 212 stores programs and data for realizing various functions of the client device 110 . A part or all of the program and data may be stored in advance in the storage device 212, and if necessary, the recording medium may be read from a non-temporary recording medium or a non-temporary storage device of another device. It can be read into the storage device 212 via the device or the communication IF 213 .

通信IF213は、依頼者用装置110を通信ネットワーク130と接続するための装置であり
、例えば、LAN(Local Area Network)カードである。バス214は、プロセッサ211、記憶装置212、通信IF213、バス214、および入出力装置220を接続する。
The communication IF 213 is a device for connecting the client device 110 to the communication network 130, and is, for example, a LAN (Local Area Network) card. Bus 214 connects processor 211 , storage device 212 , communication IF 213 , bus 214 and input/output device 220 .

入出力装置220は、依頼者用装置110に対して、依頼者によるデータの入力、および依頼者用装置110内のデータの出力を行うための装置である。入出力装置220の一例としては、キーボード、マウス、タッチパネル、音声入力装置(マイクロフォン)、ディスプレイ、印刷装置等がある。 The input/output device 220 is a device for inputting data from the client to the device 110 for client and for outputting data in the device 110 for client. Examples of the input/output device 220 include a keyboard, mouse, touch panel, voice input device (microphone), display, and printer.

依頼者用装置110には、例えば、オペレーティングシステム、ファイルシステム、DB
MS(DataBase Management System)(リレーショナルデータベース、NoSQL等)、KVS(Key-Value Store)等が導入されていてもよい。
The client device 110 includes, for example, an operating system, a file system, a DB
MS (DataBase Management System) (relational database, NoSQL, etc.), KVS (Key-Value Store), etc. may be introduced.

図3に、脅威シナリオ分析装置120の物理構成の一例を示している。脅威シナリオ分析
装置120は、装置本体310および入出力装置320とを含んで構成される。
FIG. 3 shows an example physical configuration of the threat scenario analyzer 120. As shown in FIG. Threat scenario analysis device 120 includes device main body 310 and input/output device 320 .

このうち装置本体310は、プロセッサ311、記憶装置312、通信IF313、およびバス314
を備える。
Among them, the device main body 310 includes a processor 311, a storage device 312, a communication IF 313, and a bus 314.
Prepare.

プロセッサ311は、CPU、MPU、GPU等である。プロセッサ311は、記憶装置312
に格納されているプログラムを読み出して実行することにより脅威シナリオ分析装置120
の各種機能を実現する。
The processor 311 is a CPU, MPU, GPU, or the like. The processor 311 has a storage device 312
threat scenario analysis device 120 by reading and executing the program stored in
Realize various functions of

記憶装置312は、各種データや、プロセッサ311が実行する命令のセットがプログラムとして記述されたデータを記憶する、各種記憶素子(RAM、ROM、不揮発性メモリ)や各種記録媒体(SSD、ハードディスクドライブ、光学式記録媒体等)である。同図に示すように、記憶装置312には、脅威シナリオ分析装置120の各種の機能を実現するプログラムやデータが格納されている。プログラムやデータは、記録媒体の読取装置や通信IF313を介して記憶装置312に読み込むことができる。 The storage device 312 includes various storage elements (RAM, ROM, non-volatile memory) and various recording media (SSD, hard disk drive, optical recording media, etc.). As shown in the figure, the storage device 312 stores programs and data for implementing various functions of the threat scenario analysis device 120 . Programs and data can be read into the storage device 312 via a recording medium reading device or the communication IF 313 .

通信IF313は、脅威シナリオ分析装置120を通信ネットワーク130と接続するための装
置であり、例えば、LANカードである。バス314は、プロセッサ311、記憶装置312、通
信IF313、バス314、および入出力装置320を接続する。
Communication IF 313 is a device for connecting threat scenario analysis device 120 to communication network 130, and is, for example, a LAN card. Bus 314 connects processor 311 , storage device 312 , communication IF 313 , bus 314 and input/output device 320 .

入出力装置320は、脅威シナリオ分析装置120に対して、分析者によるデータの入力、および脅威シナリオ分析装置120内のデータの出力を行うための装置である。入出力装置320の一例としては、キーボード、マウス、タッチパネル、音声入力装置(マイクロフォン)、ディスプレイ、印刷装置等がある。 The input/output device 320 is a device for inputting data by an analyst to the threat scenario analysis device 120 and for outputting data in the threat scenario analysis device 120 . Examples of the input/output device 320 include a keyboard, mouse, touch panel, voice input device (microphone), display, and printer.

脅威シナリオ分析装置120には、例えば、オペレーティングシステム、ファイルシステ
ム、DBMS(DataBase Management System)(リレーショナルデータベース、NoSQL等)、KVS(Key-Value Store)等が導入されていてもよい。
For example, an operating system, file system, DBMS (DataBase Management System) (relational database, NoSQL, etc.), KVS (Key-Value Store), etc. may be installed in the threat scenario analysis device 120 .

尚、依頼者用装置110や脅威シナリオ分析装置120の実現に用いる情報処理装置は、その
全部又は一部が、例えば、クラウドシステムによって提供される仮想サーバのように、仮想化技術やプロセス空間分離技術等を用いて提供される仮想的な情報処理資源を用いて実現されるものであってもよい。また、情報処理装置によって提供される機能の全部又は一
部は、例えば、クラウドシステムがAPI(Application Programming Interface)等を
介して提供するサービスによって実現してもよい。また、情報処理装置によって提供される機能の全部又は一部は、例えば、SaaS(Software as a Service)、PaaS(Platform as a Service)、IaaS(Infrastructure as a Service)等を利用して実現さ
れるものであってもよい。また、依頼者用装置110や脅威シナリオ分析装置120は、通信可能に接続された複数の情報処理装置を用いて構成してもよい。
In addition, all or part of the information processing device used to realize the client device 110 and the threat scenario analysis device 120, for example, virtualization technology and process space separation, such as a virtual server provided by a cloud system It may be implemented using virtual information processing resources provided using technology or the like. Also, all or part of the functions provided by the information processing apparatus may be realized by services provided by the cloud system via an API (Application Programming Interface) or the like, for example. In addition, all or part of the functions provided by the information processing device are realized using, for example, SaaS (Software as a Service), PaaS (Platform as a Service), IaaS (Infrastructure as a Service), etc. can be anything. Further, the client device 110 and the threat scenario analysis device 120 may be configured using a plurality of information processing devices that are communicatively connected.

図4は、脅威シナリオ分析システム100の各種機能、依頼者、および分析者の間で行わ
れる主な処理(以下、「脅威シナリオ分析処理S400」と称する。)の概略を説明するシーケンス図である。以下、同図とともに脅威シナリオ分析処理S400について説明する。
FIG. 4 is a sequence diagram outlining main processing (hereinafter referred to as “threat scenario analysis processing S400”) performed among various functions of the threat scenario analysis system 100, the client, and the analyst. . The threat scenario analysis processing S400 will be described below with reference to FIG.

まず、依頼者用入力受付部111が、依頼者からシステム情報の入力を受け付ける(S401
)。ここで、システム情報とは、イベントリスト500と初期状態情報600を含む情報である。
First, the requester input reception unit 111 receives input of system information from the requester (S401).
). Here, system information is information including event list 500 and initial state information 600 .

具体的には、依頼者用入力受付部111は、後述するイベントリスト入力画面1000を入出
力装置220に表示し、依頼者が、入出力装置220を操作し、表示されたイベントリスト入力画面1000にイベントリスト500を入力する。また、依頼者用入力受付部111は、後述する初期状態入力画面1100を入出力装置220に表示し、依頼者が、入出力装置220を操作し、表示された初期状態入力画面1100に初期状態情報600を入力する。
Specifically, requester input reception unit 111 displays event list input screen 1000, which will be described later, on input/output device 220, and the requester operates input/output device 220 to display event list input screen 1000. Enter event list 500 in . In addition, the requester input reception unit 111 displays an initial state input screen 1100, which will be described later, on the input/output device 220, and the requester operates the input/output device 220 to display the initial state on the displayed initial state input screen 1100. Enter information 600.

続いて、依頼者用入力受付部111は、依頼者から脅威情報700の入力を受け付ける(S402)。具体的には、依頼者用入力受付部111は、後述する脅威情報入力画面1200を入出力装
置220に表示し、依頼者は入出力装置220を操作し、表示された脅威情報入力画面1200に脅威情報700を入力する。
Subsequently, the requester input reception unit 111 receives input of the threat information 700 from the requester (S402). Specifically, requester input reception unit 111 displays threat information input screen 1200, which will be described later, on input/output device 220, and the requester operates input/output device 220 to display threat information input screen 1200. Enter threat information 700.

続いて、依頼者用入力受付部111は、依頼者が入出力装置220を操作することにより発せられる分析依頼要求を受信すると(S403)、入力されたシステム情報(イベントリスト500、初期状態情報600)および脅威情報700(以下、「入力情報」と称する。)を、分析者
用入力受付部121に送信する(S404)。
Subsequently, when the requester input reception unit 111 receives an analysis request issued by the requester operating the input/output device 220 (S403), the input system information (event list 500, initial state information 600, ) and threat information 700 (hereinafter referred to as “input information”) to analyst input reception unit 121 (S404).

分析者用入力受付部121は、受け付けた入力情報を入出力装置320に表示する(S405)。分析者は、入力情報を参照し、必要に応じて入出力装置320を操作することで入力情報を
修正し、分析者用入力受付部121は、修正された入力情報(以下、「修正済入力情報」と
称する。)を受信する(S406)。尚、S405およびS406の各処理で用いられる画面は、イベントリスト入力画面1000、初期状態入力画面1100、および脅威情報入力画面1200と同様の画面構成としてもよい。
The analyst input reception unit 121 displays the received input information on the input/output device 320 (S405). The analyst refers to the input information and corrects the input information by operating the input/output device 320 as necessary. information”) is received (S406). The screens used in the processes of S405 and S406 may have the same screen configuration as the event list input screen 1000, the initial state input screen 1100, and the threat information input screen 1200.

分析者用入力受付部121は、分析者が入出力装置320を操作することにより発せられる分析開始要求を受信すると(S407)、S406で受信した修正済入力情報を入力チェック部122
に送信する(S408)。
Analyst input reception unit 121, upon receiving an analysis start request issued by the analyst operating input/output device 320 (S407), receives the corrected input information received in S406 and sends it to input check unit 122.
(S408).

入力チェック部122は、修正済入力情報を受信すると、当該修正済入力情報に矛盾が存
在するか否かを判定する(S409)。矛盾が存在しない場合、入力チェック部122は、修正
済入力情報を脅威シナリオ探索部123に送信する(S410)。一方、矛盾が存在する場合(
「エラー有」の場合)、入力チェック部122は、エラーメッセージを分析者に表示し処理
を終了する(S419)。尚、図4では、下段の「alt」で示す枠内に、「エラー有」の場合
と、「エラー無」の夫々の処理を分けて示している。
Upon receiving the corrected input information, the input check unit 122 determines whether or not there is a contradiction in the corrected input information (S409). If no contradiction exists, the input check unit 122 sends the corrected input information to the threat scenario search unit 123 (S410). On the other hand, if a contradiction exists (
If "error exists"), the input check unit 122 displays an error message to the analyst and terminates the process (S419). In FIG. 4, the processing in the case of “with error” and the processing in the case of “without error” are separately shown in the frame indicated by “alt” in the lower row.

脅威シナリオ探索部123は、入力チェック部122から修正済入力情報を受信した場合(「
エラー無」の場合)、受信した修正済入力情報を用いて状態遷移パターンを探索し(S411)、探索(発見)された一つ以上の脅威シナリオ(脅威シナリオデータ800)を分析結果
として分類部124に送信する(S412)。
When the threat scenario searching unit 123 receives the corrected input information from the input checking unit 122 ("
no error”), the received corrected input information is used to search for state transition patterns (S411), and one or more searched (discovered) threat scenarios (threat scenario data 800) are analyzed and classified by the classification unit 124 (S412).

分類部124は、脅威シナリオ探索部から受信した脅威シナリオを分類して脅威シナリオ
分類データ900を生成し(S413)、脅威シナリオデータ800や脅威シナリオ分類データ900
を分析結果として分析者用出力部125に送信する(S414)。
The classification unit 124 classifies the threat scenario received from the threat scenario search unit to generate threat scenario classification data 900 (S413), and the threat scenario data 800 and the threat scenario classification data 900 are generated.
is sent to the analyst output unit 125 as the analysis result (S414).

分析者用出力部125は、分類部124から受信した分析結果を分析者に表示する(S415)。具体的には、分析者用出力部125は、後述する脅威シナリオ一覧画面1700および脅威シナ
リオ詳細画面1800を入出力装置320に表示する。分析結果を確認した分析者が入出力装置320を操作することにより、依頼者用装置110から脅威シナリオ分析装置120の分析者用出力部125に分析結果送信要求が送信されると(S416)、分析者用出力部125は、依頼者用出力部112へ分析結果を送信する(S417)。
The analyst output unit 125 displays the analysis result received from the classification unit 124 to the analyst (S415). Specifically, analyst output unit 125 displays on input/output device 320 a threat scenario list screen 1700 and a threat scenario detail screen 1800, which will be described later. When the analysis result transmission request is transmitted from the client device 110 to the analyst output unit 125 of the threat scenario analysis device 120 by operating the input/output device 320 by the analyst who confirmed the analysis result (S416), The analyst's output unit 125 transmits the analysis result to the client's output unit 112 (S417).

依頼者用出力部112は、分析者用出力部125から受信した分析結果(後述する脅威シナリオ一覧画面1700、脅威シナリオ詳細画面1800)を入出力装置220に表示する(S418)。 The client output unit 112 displays the analysis results (threat scenario list screen 1700 and threat scenario detail screen 1800 described later) received from the analyst output unit 125 on the input/output device 220 (S418).

続いて、図4に示した脅威シナリオ分析処理S400の詳細について、具体例とともに説明する。尚、以下では、分析の対象となるシステムが、制御装置によりサーモスタットをフィードバック制御して水槽の水の温度を所定範囲に維持するように動作するシステム(以下、「サーモスタットシステム」と称する。)を例として説明する。サーモスタットシステムは、水槽、センサ、ヒータを備える。サーモスタットシステムは、その仕様として、センサが測定した水温が24℃に達した場合にヒータによる加熱を開始し、水温が26℃に達した場合にヒータによる加熱を停止することにより、水温を24℃以上26℃以下に保つように動作する。本例では、サーモスタットシステムにおける脅威として「水温が23℃に到達すること」および「水温が27℃に到達すること」があるものとし、これらの脅威に至る脅威シナリオを探索するものとする。 Next, the details of the threat scenario analysis processing S400 shown in FIG. 4 will be described together with a specific example. In the following, the system to be analyzed operates to maintain the water temperature of the water tank within a predetermined range by feedback-controlling the thermostat by the control device (hereinafter referred to as "thermostat system"). An example will be described. A thermostat system includes a water tank, a sensor, and a heater. The thermostat system starts heating when the water temperature measured by the sensor reaches 24°C, and stops heating when the water temperature reaches 26°C. Operate to keep below 26°C above. In this example, it is assumed that the threats to the thermostat system are "water temperature reaching 23°C" and "water temperature reaching 27°C", and threat scenarios leading to these threats are searched.

図5に、イベントリスト500の一例を示している。例示するイベントリスト500は、1つ以上のイベント情報を含む。各イベント情報は、フィールドとして、イベント名510、状
態遷移ルールのリスト、事前条件540、発生必要性550を有する。
An example of an event list 500 is shown in FIG. The illustrated event list 500 includes one or more event information. Each event information has an event name 510, a list of state transition rules, a precondition 540, and occurrence necessity 550 as fields.

システム状態(イベント前)520およびシステム状態(イベント後)530には、いずれもシステムの状態を表す一つ以上の条件式を「AND」または「OR」の演算子で結合したもの
が格納される。尚、同図では、条件式が一つの場合(例えば「水温=23℃」)を例示して
いる。
The system state (before event) 520 and the system state (after event) 530 both store one or more conditional expressions representing the state of the system, which are combined with the "AND" or "OR" operator. . In addition, in the figure, the case where there is one conditional expression (for example, "water temperature = 23°C") is exemplified.

以下の説明において、システム状態(イベント前)520とシステム状態(イベント後)530の組のことを「状態遷移ルール」と称する。1つの状態遷移ルールは、システムの状態がシステム状態(イベント前)520として指定されたものである場合に当該イベントが発
生すると、イベント発生後にシステムの状態がシステム状態(イベント後)530として指
定されたものに変化することを意味する。
In the following description, a set of system state (before event) 520 and system state (after event) 530 is referred to as a "state transition rule". One state transition rule is that when the event occurs when the system state is specified as the system state (before the event) 520, the system state is specified as the system state (after the event) 530 after the event occurs. It means to change into something else.

尚、イベントリスト500においては、1つのイベントに対して複数の状態遷移ルールを
割り当てられるようにしている。これにより、イベントの発生が「早すぎた」または「遅すぎた」場合に「本来の仕様とは異なる状態遷移が発生する」という状態遷移パターンを表現することが可能になり、脅威シナリオ探索部123が、図4のS411における脅威シナリ
オ探索を行う際、「本来の仕様とは異なる状態遷移が発生する」という状態遷移パターンを探索することができる。
In the event list 500, a plurality of state transition rules can be assigned to one event. This makes it possible to express state transition patterns such as "a state transition that differs from the original specification occurs" when an event occurs "too early" or "too late". When 123 searches for a threat scenario in S411 of FIG. 4, it can search for a state transition pattern that "a state transition different from the original specification occurs."

同図の場合、例えば、イベント名510が「温度上昇」であるイベント情報は、システム
状態(イベント前)520が「水温=23℃」かつシステム状態(イベント後)530が「水温=24℃」である状態遷移ルールを含む。これは、システムのパラメータ「水温」の値が「23℃」である状態でイベント「温度上昇」が発生した場合、イベント発生後のパラメータ「水温」の値が「24℃」に変化することを意味する。
In the figure, for example, the event information whose event name 510 is "temperature rise" has the system state (before the event) 520 as "water temperature = 23°C" and the system state (after the event) 530 as "water temperature = 24°C". contains state transition rules that are This means that if the event "temperature rise" occurs while the value of the system parameter "water temperature" is "23℃", the value of the parameter "water temperature" after the event will change to "24℃". means.

また、例えば、イベントリスト500における1つのイベント情報の状態遷移ルールの中
に、システム状態(イベント前)520およびシステム状態(イベント後)530が夫々「出力=3kW」と「出力=4kW」である状態遷移ルールと、「出力=4kW」と「出力=5kW」である状態遷移ルールが存在する場合を考える。この場合、当該イベントが出力が3kWの状態で与え
られた場合は出力は4kWに変化し、出力が4kWの状態で与えられた場合は出力は5kWに変化
する。このように、イベントが発生する時刻に応じて異なる状態遷移が発生することを表現することもできる。
Further, for example, in the state transition rule of one piece of event information in the event list 500, the system state (before event) 520 and the system state (after event) 530 are "output=3 kW" and "output=4 kW", respectively. Consider a state transition rule and a state transition rule of "output=4 kW" and "output=5 kW". In this case, if the event is given with a power of 3 kW, the power will change to 4 kW, and if the event is given with a power of 4 kW, the power will change to 5 kW. In this way, it is also possible to express that different state transitions occur depending on the time when an event occurs.

同図に示すフィールドのうち、事前条件540には、イベントがいつ発生するかを指定す
る条件(1つ以上の個別の事前条件(以下、「個別事前条件」と称する。)を「AND」ま
たは「OR」の演算子で結合したもの)が格納される。
Among the fields shown in the figure, a precondition 540 includes a condition (one or more individual preconditions (hereinafter referred to as "individual preconditions") specifying when an event occurs, either "AND" or combined with the "OR" operator) is stored.

尚、本例では、依頼者用装置110の依頼者用入出力PG215、および脅威シナリオ分析装置120の脅威シナリオ分析PG315に、個別事前条件として、「前回の(イベント名)から(数値)秒後以降」、「(条件式)である間」、「(条件式)になった(数値)秒後」、「(イベント名)から(数値)秒後」等のフィールドを有するテンプレートが予め定義されており、上記フィールドのプレースホルダ(イベント名)、(数値)、(条件式)、(イベント名)に具体的な値を割り当てたものが、事前条件540中の個別事前条件として用
いられるものとする。
In this example, the requester input/output PG 215 of the requester device 110 and the threat scenario analysis PG 315 of the threat scenario analysis device 120 have, as individual preconditions, "(numerical value) seconds after the previous (event name) After", "while (conditional expression)", "(number) seconds after becoming (conditional expression)", "(number) seconds after (event name)", etc. and specific values assigned to the placeholders (event name), (numerical value), (conditional expression), and (event name) in the above fields shall be used as individual preconditions in the preconditions 540. do.

同図に示すフィールドのうち、発生必要性550には、事前条件が満たされた場合に必ず
イベントが1回発生することを表す「True」、または、事前条件が満たされた場合のみイベントが発生し得るが、イベントが発生することが必須ではないことを表す「False」の
いずれかが格納される。発生必要性550は、脅威シナリオを生成する際に用いられる。以
下、発生必要性550が「True」であるイベントを「必然イベント」、「False」であるイベントを「偶発イベント」と称する。
Of the fields shown in the figure, the occurrence necessity 550 contains "True", which indicates that the event will always occur once if the precondition is met, or an event that occurs only when the precondition is met. Either "False" is stored to indicate that the event is not required to occur, although it may be possible. Occurrence need 550 is used in generating threat scenarios. Hereinafter, an event whose occurrence necessity 550 is "True" is referred to as an "inevitable event", and an event whose occurrence necessity is "False" is referred to as an "incidental event".

図6に、初期状態情報600の一例を示す。初期状態情報600は、パラメータ名610および
値620をフィールドに持つ表形式のデータである。初期状態情報600は、図4のS411における脅威シナリオ探索を行う際、分析の対象となるシステム(以下、「分析対象システム」と称する。)が最初に取っている状態(以下、「初期状態」と称する。)を表す。後述するように、脅威シナリオ探索部123は、図4のS411における脅威シナリオ探索を行う際、
初期状態から始まる状態遷移パターンを探索する。
FIG. 6 shows an example of initial state information 600. As shown in FIG. The initial state information 600 is tabular data having parameter names 610 and values 620 as fields. The initial state information 600 is the initial state (hereinafter referred to as the "initial state") of the system to be analyzed (hereinafter referred to as the "analyzed system") when performing the threat scenario search in S411 of FIG. ). As will be described later, when the threat scenario search unit 123 searches for a threat scenario in S411 of FIG.
Search for state transition patterns starting from the initial state.

図7に、脅威情報700の一例を示す。脅威情報は、脅威名710および脅威状態720をフィ
ールドに持つ表形式のデータである。脅威状態720としては、1つ以上の条件式を「AND」または「OR」の演算子で結合したものが格納される。脅威シナリオ探索部123は、図4のS411における脅威シナリオ探索において、システム状態が脅威状態720のいずれかに合致した場合「脅威が発生した」と判断する。即ち、脅威シナリオ探索部123は、図4のS411に
おける脅威シナリオ探索において、脅威状態720のいずれかに至る状態遷移パターンを探
索する。
An example of threat information 700 is shown in FIG. The threat information is tabular data having threat name 710 and threat status 720 as fields. The threat state 720 stores one or more conditional expressions combined with an "AND" or "OR" operator. The threat scenario search unit 123 determines that "a threat has occurred" when the system state matches any of the threat states 720 in the threat scenario search in S411 of FIG. That is, the threat scenario search unit 123 searches for a state transition pattern leading to one of the threat states 720 in the threat scenario search in S411 of FIG.

図8に、脅威シナリオ探索部123によって生成される脅威シナリオデータ800の一例を示
す。脅威シナリオデータ800は、脅威シナリオの内容を記述したデータであり、探索され
た脅威シナリオ毎に生成される。同図に示すように、脅威シナリオデータ800は、脅威シ
ナリオNo.810のフィールドと、状態遷移データ820、脅威発生データ830、およびイベント発生データ840を含む。
FIG. 8 shows an example of threat scenario data 800 generated by the threat scenario searching unit 123. As shown in FIG. Threat scenario data 800 is data describing the content of a threat scenario, and is generated for each searched threat scenario. As shown in the figure, the threat scenario data 800 includes a threat scenario No. 810 field, state transition data 820, threat occurrence data 830, and event occurrence data 840. FIG.

このうち脅威シナリオNo.810には、当該脅威シナリオを一意に特定する番号が格納される。例示する脅威シナリオデータ800は、脅威シナリオNo.810が「13」の脅威シナリオの
データである。
Of these, threat scenario No. 810 stores a number that uniquely identifies the threat scenario. The illustrated threat scenario data 800 is data of a threat scenario whose threat scenario No. 810 is "13".

状態遷移データ820は、当該脅威シナリオにおける、分析対象システムの状態遷移を表
すデータである。状態遷移データ820は、状態No.821、パラメータ名822、および値823を
フィールドに持つ表形式のデータである。このうち状態No.821には、分析対象システムの状態の識別情報(本例では数値であり、当該数値の昇順に状態が遷移する)が格納される。尚、状態遷移データ820において状態No.821が同一のレコードは、それらの全体によっ
て1つの状態を表す。例えば、同図の場合、状態No.821が「0」の2つのレコードは、そ
れらの全体によって「水温=25℃ AND 加熱状態=加熱停止中」という初期状態を表す。ま
た、状態No.821が「1」の2つのレコードは、初期状態の次に遷移する状態を表し、それ
らの全体によって「水温=24℃ AND 加熱状態=加熱停止中」という状態を表す。
The state transition data 820 is data representing the state transition of the analysis target system in the threat scenario. The state transition data 820 is tabular data having a state number 821, a parameter name 822, and a value 823 as fields. State No. 821 stores identification information of the state of the system to be analyzed (in this example, it is a numerical value, and the state changes in ascending order of the numerical value). Records having the same state No. 821 in the state transition data 820 represent one state as a whole. For example, in the case of FIG. 8, the two records whose state No. 821 is "0" collectively represent the initial state of "water temperature=25° C. AND heating state=heating stopped". In addition, the two records whose state No. 821 is "1" represent states to be transitioned to after the initial state, and collectively represent the state "water temperature=24° C. AND heating state=heating stopped".

脅威発生データ830は、当該脅威シナリオにおいて脅威状態に該当する状態を表すデー
タであり、状態No.831および脅威名832をフィールドに持つ表形式のデータである。同図
の例では、状態No.5「水温=27℃ AND 加熱状態=加熱中」および状態No.6「水温=27℃ AND
加熱状態=加熱停止中」が、脅威情報700に定義されている脅威名「過熱」の脅威状態に
該当するため、脅威発生データ830に対応するレコードが格納されている。
The threat occurrence data 830 is data representing a state corresponding to the threat state in the threat scenario, and is tabular data having state No. 831 and threat name 832 as fields. In the example of the figure, state No.5 "water temperature = 27°C AND heating state = heating" and state No.6 "water temperature = 27°C AND
Since "heating state=heating stopped" corresponds to the threat state with the threat name "overheating" defined in the threat information 700, a record corresponding to the threat occurrence data 830 is stored.

イベント発生データ840は、当該脅威シナリオにおいて発生するイベントを表す時系列
のデータであり、イベントNo.841、イベント名842、ステータス843、仕様上発生すべき時刻844、および発生する時刻845をフィールドに持つ表形式のデータである。
The event occurrence data 840 is time-series data representing events that occur in the threat scenario. data in tabular form.

このうちイベントNo.841には、イベントの識別情報が格納される。本例では、イベントNo.841に、イベントの発生順(発生する時刻845の順)に付与した数値を格納している。
イベントNo.841が「n」であるイベントによって、状態遷移データ820における状態No.821が「n」である状態から状態No.821が「n+1」である状態への遷移が発生する。
Of these, event identification information is stored in event No. 841 . In this example, the event No. 841 stores numerical values given in order of event occurrence (in order of occurrence time 845).
An event whose event No. 841 is “n” causes a transition from the state where the state No. 821 in the state transition data 820 is “n” to the state where the state No. 821 is “n+1”.

ステータス843には、当該イベントのタイプを示す情報(本例では、「仕様通り」、「
早すぎた」、「遅すぎた」、「余計」のいずれか)が格納される。
The status 843 contains information indicating the type of the event (in this example, "as per specification", "
too early", "too late", or "excessive") is stored.

仕様上発生すべき時刻844には、単一の時刻または時刻の範囲が格納される。尚、仕様
上発生すべき時刻844には、イベントリスト500における当該イベントの事前条件540に応
じて単一の時刻または時刻の範囲が格納される。
Specified time to occur 844 stores a single time or range of times. The time 844 that should occur by design stores a single time or a range of times depending on the preconditions 540 of the event in the event list 500 .

発生する時刻845は、当該脅威シナリオにおいて当該イベントが発生する時刻が格納さ
れる。本例では、発生する時刻845に、脅威シナリオの開始時点からの経過時間が格納さ
れる。
Occurrence time 845 stores the time when the event occurs in the threat scenario. In this example, the time of occurrence 845 stores the elapsed time from the start of the threat scenario.

図9に、脅威シナリオ分類データ900の一例を示す。脅威シナリオ分類データ900には、脅威シナリオ探索部123によって生成された脅威シナリオ(脅威シナリオデータ800)を分類(グループ分け)した結果が管理される。脅威シナリオ分類データ900は、脅威シナリ
オ分類No.910、脅威シナリオNo.リスト920、代表脅威シナリオNo.930、および説明940を
フィールドに持つ表形式のデータである。
An example of threat scenario classification data 900 is shown in FIG. The threat scenario classification data 900 manages the results of classification (grouping) of the threat scenarios (threat scenario data 800) generated by the threat scenario searching unit 123. FIG. Threat scenario classification data 900 is tabular data having threat scenario classification No. 910, threat scenario No. list 920, representative threat scenario No. 930, and description 940 as fields.

脅威シナリオ分類No.910には、脅威シナリオの分類先(以下、「脅威シナリオ分類」と称する。)のグループを一意に特定する番号が格納される。 Threat scenario classification No. 910 stores a number that uniquely identifies a group of threat scenario classification destinations (hereinafter referred to as "threat scenario classification").

脅威シナリオNo.リスト920には、当該脅威シナリオ分類に分類される脅威シナリオ(脅威シナリオデータ800)の脅威シナリオNo.810が格納される。 The threat scenario No. list 920 stores the threat scenario No. 810 of the threat scenario (threat scenario data 800) classified into the relevant threat scenario classification.

代表脅威シナリオNo.930には、脅威シナリオNo.リスト920のうち、図4における分析結果の表示(S415、S418)に際し、代表例として表示する脅威シナリオ(脅威シナリオデータ800)の脅威シナリオNo.810が格納される。 In the representative threat scenario No. 930, the threat scenario No. of the threat scenario (threat scenario data 800) displayed as a representative example when displaying the analysis results (S415, S418) in FIG. 810 is stored.

説明940には、当該脅威シナリオ分類を説明する情報が格納される。 Description 940 stores information describing the threat scenario classification.

図10は、図4のシステム情報入力(S401)に際し、依頼者用入力受付部111が、入出
力装置220に表示する画面(以下、「イベントリスト入力画面1000」と称する。)の一例
である。依頼者は、イベントリスト入力画面1000を介してイベントリスト500を入力する
FIG. 10 is an example of a screen (hereinafter referred to as "event list input screen 1000") displayed on the input/output device 220 by the requester input reception unit 111 when system information is input (S401) in FIG. . The requester inputs the event list 500 via the event list input screen 1000. FIG.

同図に示すように、イベントリスト入力画面1000は、依頼者がイベントリストを入力する欄として、イベント名フィールド1010、システム状態(イベント前)入力フィールド1020、システム状態(イベント後)入力フィールド1030、発生条件フィールド1040を持つイベントリスト表1001を有する。1つのイベント情報は、イベントリスト表1001の1つの行として入力される。 As shown in the figure, the event list input screen 1000 includes an event name field 1010, a system state (before the event) input field 1020, a system state (after the event) input field 1030, and a It has an event list table 1001 with an occurrence condition field 1040 . One piece of event information is entered as one row of the event list table 1001 .

依頼者は、入出力装置220を操作することにより、イベント名フィールド1010に各イベ
ントの名称を表す文字列を入力する。依頼者がイベント追加ボタン1011を操作(マウスで左クリック等)すると、依頼者用入力受付部111は、イベントリスト表1001に行を1つ追
加する。依頼者がイベント名フィールド1010の各行を操作(マウスで右クリック等)すると、依頼者用入力受付部111は、コンテキストメニューを表示する。依頼者がコンテキス
トメニューのオプション「イベントを削除」を選択することにより、該当するイベントリスト表1001の行が削除される。
The requester inputs a character string representing the name of each event in the event name field 1010 by operating the input/output device 220 . When the requester operates the event addition button 1011 (by left-clicking with a mouse or the like), the requester input reception unit 111 adds one row to the event list table 1001 . When the requester operates each line of the event name field 1010 (right-clicking with a mouse, etc.), the requester input reception unit 111 displays a context menu. When the requester selects the option "delete event" from the context menu, the corresponding row of the event list table 1001 is deleted.

依頼者は、入出力装置220を操作することにより、各状態遷移ルールのシステム状態(
イベント前)およびシステム状態(イベント後)を、夫々システム状態(イベント前)入力フィールド1020およびシステム状態(イベント後)入力フィールド1030に入力する。依頼者が状態遷移追加ボタン1021~1024を操作(マウスで左クリック等)すると、依頼者用入力受付部111は該当する位置に、システム状態(イベント前)入力フィールド1020およ
びシステム状態(イベント後)入力フィールド1030の行を1つ追加する。
The requester operates the input/output device 220 to change the system state (
Pre-event) and system state (post-event) are entered in system state (pre-event) input field 1020 and system state (post-event) input field 1030, respectively. When the requester operates the state transition addition buttons 1021 to 1024 (by left-clicking with a mouse, etc.), the requester input reception unit 111 fills the relevant positions with the system state (before event) input field 1020 and the system state (after event). Add one row of input fields 1030 .

依頼者が、システム状態(イベント前)入力フィールド1020またはシステム状態(イベント後)入力フィールド1030の各行を操作(マウスで右クリック等)すると、依頼者用入力受付部111はコンテキストメニューを表示する。依頼者がコンテキストメニューのオプ
ション「イベントを削除」を選択することにより、該当するシステム状態(イベント前)入力フィールド1020およびシステム状態(イベント後)入力フィールド1030の行が削除される。
When the requester operates (eg, right-clicks with a mouse) each line of the system state (before event) input field 1020 or the system state (after event) input field 1030, requester input reception unit 111 displays a context menu. The requester's selection of the context menu option "delete event" causes the corresponding System State (Pre-Event) Entry Field 1020 and System State (Post-Event) Entry Field 1030 rows to be deleted.

依頼者は、入出力装置220を操作することにより、発生条件フィールド1040に発生条件
を入力する。具体的には、依頼者は、個別事前条件入力欄1051~1056に個別事前条件を入力する。依頼者が、個別事前条件入力欄1051~1056のいずれかを操作(マウスで左クリック)すると、依頼者用入力受付部111は、個別事前条件のテンプレート内の項目をプルダ
ウンメニューとして表示する。依頼者が、そのうち1つの項目を操作(マウスで左クリック等)し選択すると、操作した個別事前条件入力欄に当該項目が反映される。このとき、項目内のプレースホルダ部分は、選択可能尚ブジェクトとして表示され、依頼者がプレースホルダ部分を操作(マウスで左クリック等)することにより、値を入力することが可能になる。
The requester inputs the occurrence condition in the occurrence condition field 1040 by operating the input/output device 220 . Specifically, the requester enters individual preconditions in individual precondition input fields 1051-1056. When the requester operates (left-clicks with the mouse) any of the individual precondition input fields 1051 to 1056, the requester input reception unit 111 displays the items in the individual precondition template as a pull-down menu. When the requester selects one of the items by operating (left-clicking with a mouse, etc.), the item is reflected in the operated individual precondition input field. At this time, the placeholder portion in the item is displayed as a selectable object, and the requester can input a value by operating (left-clicking with a mouse, etc.) the placeholder portion.

例えば、依頼者が、個別事前条件入力欄1051においてテンプレートの中から「前回の(イベント名)から(数値)秒後以降」を選択した場合、「(イベント名)」をクリックして「温度上昇」を、「(時刻)」部分を操作(マウスで左クリック等)して「10」を入力することにより、個別事前条件「前回の温度上昇から10秒後以降」を入力することができる。 For example, if the requester selects "After (numerical value) seconds after the previous (event name)" from the template in the individual precondition input field 1051, click "(event name)" to select "Temperature rise ”, by operating (left-clicking with a mouse, etc.) and entering “10”, the individual precondition “10 seconds after the previous temperature rise” can be entered.

また、依頼者が、AND/OR入力欄1061~1062を操作(マウスで左クリック等)すると、依頼者用入力受付部111は、「AND」と「OR」をプルダウンメニューとして表示する。依頼者がいずれかを操作(マウスで左クリック等)すると、選択した項目が当該AND/OR入力欄に反映される。 Also, when the requester operates the AND/OR input fields 1061 to 1062 (by left-clicking with a mouse, etc.), the requester input reception unit 111 displays "AND" and "OR" as a pull-down menu. When the requester operates one of them (left-clicking with a mouse, etc.), the selected item is reflected in the relevant AND/OR input field.

依頼者が、発生必要性情報入力欄1071~1074を操作(マウスで左クリック等)すると、依頼者用入力受付部111は、「発生し得る」と「必ず発生する」をプルダウンメニューと
して表示する。依頼者が、いずれかを操作(マウスで左クリック等)すると、選択した項目が当該発生必要性情報入力欄に反映される。
When the requester operates the occurrence necessity information input fields 1071 to 1074 (by left-clicking with a mouse, etc.), the requester input reception unit 111 displays "may occur" and "always occurs" as a pull-down menu. . When the requester operates one of them (left-clicking with a mouse, etc.), the selected item is reflected in the occurrence necessity information input column.

依頼者が、条件追加ボタン1081~1082を操作(マウスで左クリック等)すると、依頼者用入力受付部111は、該当する位置にAND/OR入力欄と個別事前条件入力欄の組を追加する
When the requester operates the condition addition buttons 1081 and 1082 (by left-clicking with a mouse, etc.), the requester input receiving unit 111 adds a set of an AND/OR input field and an individual precondition input field to the corresponding positions. .

依頼者が、初期状態入力画面遷移ボタン1090を操作(マウスで左クリック等)すると、依頼者用入力受付部111は後述する初期状態入力画面1100を表示する。 When the requester operates the initial state input screen transition button 1090 (by left-clicking with a mouse or the like), the requester input reception unit 111 displays the initial state input screen 1100, which will be described later.

図11は、図4のシステム情報入力(S401)に際し、依頼者用入力受付部111が、入出
力装置220に表示する画面(以下、「初期状態入力画面1100」と称する。)の一例である
。依頼者は、初期状態入力画面1100を介して初期状態情報600を入力する。
FIG. 11 is an example of a screen (hereinafter referred to as “initial state input screen 1100”) displayed on input/output device 220 by requester input reception unit 111 when system information is input (S401) in FIG. . The requester enters the initial state information 600 via the initial state input screen 1100 .

同図に示すように、初期状態入力画面1100は、パラメータ名フィールド1110と初期値フィールド1120とを持つ初期状態表1101を有する。 As shown in the figure, initial state input screen 1100 has initial state table 1101 having parameter name field 1110 and initial value field 1120 .

依頼者は、入出力装置220を操作することにより、パラメータ名と、初期状態において
当該パラメータが取る値を、夫々、パラメータ名フィールド1110、初期値フィールド1120に入力する。同図の場合、パラメータ「水温」の値が「25℃」、パラメータ「過熱状態」の値が「加熱停止中」という初期状態が設定されている。
The requester operates the input/output device 220 to input the parameter name and the value that the parameter takes in the initial state into the parameter name field 1110 and the initial value field 1120, respectively. In the figure, the initial state is set such that the value of the parameter "water temperature" is "25°C" and the value of the parameter "overheating state" is "heating stopped".

依頼者が、パラメータ追加ボタン1111を操作(マウスで左クリック等)すると、依頼者用入力受付部111は、初期状態表1101に行を1つ追加する。依頼者が、戻るボタン1130を
操作(マウスで左クリック等)すると、依頼者用入力受付部111は、イベントリスト入力
画面1000を表示する。依頼者が、脅威情報入力画面遷移ボタン1140を操作(マウスで左クリック等)すると、依頼者用入力受付部111は、後述する脅威情報入力画面1200を表示す
る。
When the requester operates the parameter addition button 1111 (by left-clicking with a mouse or the like), the requester input reception unit 111 adds one row to the initial state table 1101 . When the requester operates the return button 1130 (by left-clicking with a mouse, etc.), the requester input reception unit 111 displays the event list input screen 1000 . When the requester operates the threat information input screen transition button 1140 (by left-clicking with a mouse or the like), the requester input reception unit 111 displays the threat information input screen 1200 described later.

図12は、図4の脅威情報入力(S402)に際し、依頼者用入力受付部111が、入出力装
置220に表示する画面(以下、「脅威情報入力画面1200」と称する。)の一例である。依
頼者は、脅威情報入力画面1200を介して脅威情報700を入力する。
FIG. 12 is an example of a screen (hereinafter referred to as "threat information input screen 1200") displayed on the input/output device 220 by the client input reception unit 111 when the threat information is input (S402) in FIG. . The requester enters the threat information 700 via the threat information input screen 1200. FIG.

同図に示すように、脅威情報入力画面1200は、脅威名フィールド1210と脅威状態フィールド1220とを持つ脅威表1201を有する。依頼者は、入出力装置220を操作することにより
、脅威名を脅威名フィールド1210に入力し、それに対応する脅威状態を、1つ以上の条件式を「AND」または「OR」で結合したものとして脅威状態フィールド1220の対応する行に
入力する。
As shown in the figure, the threat information input screen 1200 has a threat table 1201 having a threat name field 1210 and a threat status field 1220. FIG. The requester inputs a threat name into the threat name field 1210 by operating the input/output device 220, and the corresponding threat state is obtained by combining one or more conditional expressions with "AND" or "OR". in the corresponding row of the threat status field 1220 as .

依頼者が脅威追加ボタン1211を操作(マウスで左クリック等)すると、依頼者用入力受付部111は、脅威表1201に行を1つ追加する。依頼者が、戻るボタン1230を操作(マウス
で左クリック等)すると、依頼者用入力受付部111は初期状態入力画面1100を表示する。
依頼者が、分析依頼ボタン1240を操作(マウスで左クリック等)すると、依頼者用入力受付部111は、入力情報を分析者用入力受付部121に送信する(図4のS404)。
When the requester operates the add threat button 1211 (by left-clicking with a mouse or the like), the requester input reception unit 111 adds one row to the threat table 1201 . When the requester operates the return button 1230 (by left-clicking with a mouse, etc.), the requester input reception unit 111 displays the initial state input screen 1100 .
When the requester operates the analysis request button 1240 (by left-clicking with a mouse, etc.), the requester input reception unit 111 transmits the input information to the analyst input reception unit 121 (S404 in FIG. 4).

図13は、図4のS409において入力チェック部122が行う処理(以下、「入力チェック
処理S409」と称する。)の詳細を説明するフローチャートである。以下、同図とともに入力チェック処理S409について説明する。
FIG. 13 is a flowchart for explaining the details of the process performed by the input check unit 122 in S409 of FIG. 4 (hereinafter referred to as "input check process S409"). The input check processing S409 will be described below with reference to FIG.

まず、処理S4091において、入力チェック部122は、分析者用入力受付部121が受け付け
た修正済入力情報の形式に誤りが存在するか否かを判定する。形式に誤りの種類は必ずしも限定されないが、例えば、イベントリスト500、初期状態情報600、脅威情報700のいず
れかに空欄が存在する、形式が適合していない(例えば、数値を入力すべき箇所に文字列が入力されている)、重複するイベント名あるいは脅威名が存在している等である。
First, in step S4091, the input checking unit 122 determines whether or not there is an error in the format of the corrected input information received by the input receiving unit 121 for analyst. The types of errors in the format are not necessarily limited. character string is entered), duplicate event names or threat names exist, and so on.

処理S4092において、入力チェック部122は、分析者用入力受付部121から受け付けた修
正済入力情報に含まれるイベントリスト500について、矛盾する状態遷移ルールが存在す
るか判定する。ここで、2つの状態遷移ルールが矛盾するとは、双方のシステム状態(イベント前)520に同時に該当するようなシステム状態が存在し、かつ、システム状態(イ
ベント後)530が異なること(イベント後の状態が一意に定まらないこと)をいう。例え
ば、あるイベントに対し、システム状態(イベント前)520とシステム状態(イベント後
)530が、夫々「水温=23℃」と「水温=24℃」、「水温=23℃」と「水温=25℃」であるよ
うな2つの状態遷移ルールが存在したとする。この場合、パラメータ「水温」の値が「23
℃」である状態で当該イベントが発生した後のパラメータ「水温」の値が一意に定まらないため、2つの状態遷移は矛盾している。
In process S4092, the input checking unit 122 determines whether or not there is a conflicting state transition rule in the event list 500 included in the corrected input information received from the input receiving unit 121 for analyst. Here, two state transition rules contradict each other means that there is a system state that simultaneously applies to both system states (before the event) 520 and that the system states (after the event) 530 are different (after the event) state is not uniquely determined). For example, for a certain event, the system state (before the event) 520 and the system state (after the event) 530 are "water temperature = 23°C" and "water temperature = 24°C", and "water temperature = 23°C" and "water temperature = 25°C", respectively. ℃” exists. In this case, the value of the parameter "water temperature" is "23
The two state transitions are inconsistent because the value of the parameter "water temperature" after the event occurs in the state of "temperature" is not uniquely determined.

処理S4093において、入力チェック部122は、分析者用入力受付部121から受け付けた修
正済入力情報に含まれる初期状態情報600が十分であるか否かを判定する。例えば、イベ
ントリスト500中のシステム状態(イベント前)520およびシステム状態(イベント後)530、発生条件540、および脅威情報700中の脅威状態720に記載されているパラメータ名のうち、初期状態情報600のパラメータ名610として記載されていないものがある場合、入力チェック部122は初期状態情報600が十分でないと判定する。
In process S4093, the input checking unit 122 determines whether or not the initial state information 600 included in the corrected input information received from the analyst input receiving unit 121 is sufficient. For example, among the parameter names described in the system state (before event) 520 and system state (after event) 530 in the event list 500, the occurrence condition 540, and the threat state 720 in the threat information 700, the initial state information 600 If there is any parameter name 610 that is not described as the parameter name 610, the input check unit 122 determines that the initial state information 600 is not sufficient.

処理S4091~S4093の結果に問題が無い、即ち入力形式に誤りが存在せず、矛盾する状態遷移ルールが存在せず、初期状態情報が十分である場合、入力チェック部122は、処理S410として修正済入力情報を脅威シナリオ探索部123に送信し、処理を終了する。一方、処理S4091~S4093の結果問題が存在した場合、入力チェック部122は処理S419としてエラーメ
ッセージを入出力装置330に出力し、処理を終了する。
If there is no problem in the results of processes S4091 to S4093, that is, if there is no error in the input format, no conflicting state transition rules exist, and the initial state information is sufficient, the input check unit 122 corrects as process S410. The completed input information is sent to the threat scenario searching unit 123, and the process ends. On the other hand, if there is a problem as a result of processing S4091 to S4093, the input check unit 122 outputs an error message to the input/output device 330 as processing S419, and terminates the processing.

図14は、図4の処理S411の脅威シナリオ探索部123による脅威シナリオを探索する処
理(以下、「脅威シナリオ探索処理S411」と称する。)が行われる際に記憶装置312に内
部的に生成されるデータ(以下、「状態遷移パターンデータ1400」と称する。)の一例である。
14 is generated internally in the storage device 312 when the threat scenario search process (hereinafter referred to as "threat scenario search process S411") is performed by the threat scenario search unit 123 in the process S411 of FIG. This is an example of data (hereinafter referred to as “state transition pattern data 1400”).

同図に示すように、状態遷移パターンデータ1400は、状態遷移データ1410、イベント発生データ1420、発生予定イベントデータ1430、およびパラメータ条件データ1440を含む。このうち、状態遷移データ1410およびイベント発生データ1420のフィールドについては、図8に例示した脅威シナリオデータ800中の状態遷移データ820およびイベント発生データ840と同様である。一方、仕様上発生すべき時刻1424および発生する時刻1425については
、「t0+0.1」のようにパラメータを用いて表現された値が格納される。
As shown in the figure, state transition pattern data 1400 includes state transition data 1410, event occurrence data 1420, scheduled event data 1430, and parameter condition data 1440. FIG. Of these fields, the state transition data 1410 and event occurrence data 1420 fields are the same as the state transition data 820 and event occurrence data 840 in the threat scenario data 800 illustrated in FIG. On the other hand, for the time 1424 that should occur according to the specification and the time 1425 that should occur, values expressed using parameters such as "t0+0.1" are stored.

発生予定イベントデータ1430は、イベント名1431および仕様上発生すべき時刻1432の2つのフィールドを持つ表形式のデータである。発生予定イベントデータ1430は、状態遷移データ1410およびイベント発生データ1420の通りに分析対象システムが動作した場合に仕様上発生することが確定しているイベント、即ち、図5に例示したイベントリスト500の
事前条件540が満たされることが確定しており、かつ、発生必要性550が「True」であるイベントのリストである。
The scheduled event data 1430 is tabular data having two fields of an event name 1431 and a time 1432 to occur according to specifications. The scheduled event data 1430 is an event that is determined to occur according to the specification when the analysis target system operates according to the state transition data 1410 and the event occurrence data 1420, that is, the event list 500 illustrated in FIG. It is a list of events for which the pre-condition 540 is confirmed to be satisfied and the need-to-occur 550 is "True".

パラメータ条件データ1440には、イベント発生データ1420の仕様上発生すべき時刻1424および1432、発生する時刻1425に格納されるパラメータに課される条件が列挙される。パラメータ条件データ1440の設定について後述する。 The parameter condition data 1440 lists the conditions imposed on the parameters stored at the times 1424 and 1432 that should occur according to the specification of the event occurrence data 1420 and the time 1425 that should occur. Setting of the parameter condition data 1440 will be described later.

図15は、図4のS411において脅威シナリオ探索部123が行う処理(以下、「脅威シナ
リオ探索処理S411」と称する。)の詳細を説明するフローチャートである。以下、同図とともに脅威シナリオ探索処理S411について説明する。
FIG. 15 is a flow chart for explaining the details of the process performed by the threat scenario search unit 123 in S411 of FIG. 4 (hereinafter referred to as "threat scenario search process S411"). The threat scenario search processing S411 will be described below with reference to FIG.

まず、脅威シナリオ探索部123は、状態遷移パターンの列を格納するためのキュー(以
下、「状態遷移パターンキュー」と称する。)の記憶領域を記憶装置312に確保し、初期
状態を表す状態遷移パターンデータ1403を、状態遷移パターンキューに格納する(S41101)。ここで初期状態を表す状態遷移パターンデータ1403とは、例えば、状態No.1411に「0」が、パラメータ名1412および値1413に初期状態情報600のパラメータ名610および値620
が、夫々格納されたレコードを有する状態遷移データ1410と、イベント発生データ1420、発生予定イベントデータ1430、およびパラメータ条件データ1440の内容がいずれも空欄である状態遷移パターンデータ1400をいう。
First, the threat scenario searching unit 123 secures a storage area for a queue for storing a string of state transition patterns (hereinafter referred to as a “state transition pattern queue”) in the storage device 312, and stores the state transitions representing the initial state. The pattern data 1403 is stored in the state transition pattern queue (S41101). Here, the state transition pattern data 1403 representing the initial state includes, for example, "0" in the state No. 1411, parameter name 610 and value 620 of the initial state information 600 in the parameter name 1412 and value 1413.
is the state transition pattern data 1400 in which the contents of the state transition data 1410 each having a stored record, the event occurrence data 1420, the scheduled event data 1430, and the parameter condition data 1440 are all blank.

S41102以降の処理は、状態遷移パターンキューに状態遷移パターンが格納されている間、繰り返し行われるループ処理である。このループ処理が繰り返し実行されることにより、網羅的に脅威シナリオが生成される。尚、例えば、分析者が事前に制限時間を設定しておき、脅威シナリオ分析PG315の実行時間が設定された制限時間に達するまで、上記の
ループ処理を繰り返すようにしてもよい。
The processing after S41102 is a loop processing that is repeatedly performed while the state transition pattern is stored in the state transition pattern queue. Threat scenarios are generated exhaustively by repeatedly executing this loop process. For example, the analyst may set a time limit in advance, and the above loop processing may be repeated until the execution time of the threat scenario analysis PG 315 reaches the set time limit.

S41102では、まず、脅威シナリオ探索部123は、状態遷移パターンキューに格納されて
いる状態遷移パターンデータ1400を1つ取り出す。
In S41102, the threat scenario searching unit 123 first retrieves one piece of state transition pattern data 1400 stored in the state transition pattern queue.

続いて、脅威シナリオ探索部123は、取り出した状態遷移パターンデータ1400を基に、
イベント発生データ1420のステータス1423が全て「仕様通り」である状態遷移パターンデータ1400(以下、「正常パターンデータ」と称する。)を生成する(S41103)。具体的には、脅威シナリオ探索部123は、発生予定イベントデータ1430のうちの1つを削除してイ
ベント発生データ1420の末尾に追加するか、あるいは事前条件540を満たした偶発イベン
トをイベント発生データ1420の末尾に追加した状態遷移パターンを生成し、いずれのレコードのステータス1423についても「仕様通り」を格納し、発生する時刻1425に仕様上発生
すべき時刻1424を格納する。
Subsequently, the threat scenario searching unit 123, based on the extracted state transition pattern data 1400,
State transition pattern data 1400 (hereinafter referred to as "normal pattern data") in which the status 1423 of the event occurrence data 1420 is all "according to specification" is generated (S41103). Specifically, the threat scenario searching unit 123 deletes one of the scheduled occurrence event data 1430 and adds it to the end of the event occurrence data 1420, or adds an accidental event that satisfies the precondition 540 to the event occurrence data. A state transition pattern added to the end of 1420 is generated, "according to specification" is stored for status 1423 of any record, and time 1424 that should occur according to specification is stored in time 1425 of occurrence.

正常パターンデータの生成に伴い、脅威シナリオ探索部123は、イベントリスト500の状態遷移ルールを参照し、イベント発生データ1420に基づき状態遷移データ1410を更新する。また、脅威シナリオ探索部123は、イベントリスト500の事前条件540を参照し、事前条
件540が満たされることが確定したものを、発生予定イベントデータ1430に追加する。例
えば、イベント「加熱停止」の事前条件540が「水温=26℃になった0.1秒後」であり、時
刻「t3」においてパラメータ「水温」が「26℃」になった場合、イベント名1431を「加熱停止」、仕様上発生すべき時刻1432を「t3+0.1」としたレコードをイベント発生データ1420に追加する。
Along with the normal pattern data generation, the threat scenario searching unit 123 refers to the state transition rule of the event list 500 and updates the state transition data 1410 based on the event occurrence data 1420. FIG. The threat scenario searching unit 123 also refers to the preconditions 540 of the event list 500 and adds to the scheduled occurrence event data 1430 events for which the preconditions 540 have been confirmed to be satisfied. For example, if the precondition 540 of the event "heating stop" is "0.1 seconds after the water temperature reaches 26°C" and the parameter "water temperature" reaches "26°C" at time "t3", the event name 1431 is A record is added to the event occurrence data 1420 in which the time 1432 that should occur according to the specifications is set to "t3+0.1".

続いて、脅威シナリオ探索部123は、S41102において状態遷移パターンキューから取り
出した状態遷移パターンデータ1400について、ステータス1423が「仕様通り」以外であるイベントが存在するか否かを判定する(S41104)。ステータス1423が「仕様通り」以外であるイベントが存在しない場合(S41104:NO)、脅威シナリオ探索部123は、S41102にお
いて取り出した状態遷移パターンデータ1400を基に、そのイベント発生データ1420にステータス1423が「早すぎた」、「遅すぎた」、および「余計」のいずれかが格納されているイベントに基づく状態遷移パターンデータ1400(以下、「異常パターンデータ」と称する。)を生成する。
Subsequently, the threat scenario searching unit 123 determines whether or not there is an event with the status 1423 other than "according to specification" in the state transition pattern data 1400 extracted from the state transition pattern queue in S41102 (S41104). If there is no event whose status 1423 is other than "according to specification" (S41104: NO), the threat scenario search unit 123 determines that the event occurrence data 1420 has the status 1423 based on the state transition pattern data 1400 extracted in S41102. Generate state transition pattern data 1400 (hereinafter referred to as "abnormal pattern data") based on an event in which any one of "too early", "too late", and "excessive" is stored.

例えば、脅威シナリオ探索部123は、イベント発生データ1420の1つのイベントのステ
ータス1423を「早すぎた」に変更し、また、当該イベントの発生順を変更しない(仕様通りのときと同じ発生順とする)か、あるいは当該イベントの発生順が早くなる(仕様通りときの発生順よりも早くなる)ように変更することにより得られる異常パターンデータを生成する。また、脅威シナリオ探索部123は、イベント発生データ1420に含まれる1つの
イベントのステータス1423を「遅すぎた」に変更し、当該イベントの発生順を変更しない(仕様通りのときと同じ発生順とする)か、あるいは遅く(仕様通りのときの発生順よりも遅く)変更することにより得られる異常パターンデータを生成する。
For example, the threat scenario search unit 123 changes the status 1423 of one event in the event occurrence data 1420 to "too early" and does not change the order of occurrence of the event (the order of occurrence is the same as when according to the specifications). ), or by changing the order of occurrence of the event to be earlier (become earlier than the order of occurrence according to the specifications) to generate abnormal pattern data. In addition, the threat scenario search unit 123 changes the status 1423 of one event included in the event occurrence data 1420 to "too late" and does not change the order of occurrence of the event (the order of occurrence is the same as when according to the specifications). ), or late (later than the order of occurrence when according to the specifications) to generate abnormal pattern data obtained by changing.

脅威シナリオ探索部123は、以上の処理により生成された異常パターンデータについて
は、選択されたイベントが発生する時刻1425を、例えば、「t4」等のパラメータに変更する。続いて、脅威シナリオ探索部123は、S41102において取り出された状態遷移パターン
データ1400のイベント発生データ1420の任意の位置に、イベントリスト500のうち1つの
必然イベントを挿入することにより得られる状態遷移パターンを生成する。このとき、挿入されたイベントのステータス1423は「余計」、仕様上発生すべき時刻1424は「None」、発生する時刻1425は「t4」等のパラメータで表される。
The threat scenario search unit 123 changes the time 1425 at which the selected event occurs in the abnormal pattern data generated by the above processing to a parameter such as "t4". Subsequently, the threat scenario searching unit 123 inserts one inevitable event in the event list 500 into an arbitrary position of the event occurrence data 1420 of the state transition pattern data 1400 extracted in S41102. to generate At this time, the status 1423 of the inserted event is represented by parameters such as "superfluous", the time 1424 that should occur according to the specification is "None", and the time 1425 to occur is "t4".

続いて、脅威シナリオ探索部123は、以上の処理によって生成された状態遷移パターン
データについて、イベントリスト500の状態遷移ルールを参照し、イベント発生データ1420に基づき、状態遷移データ1410を更新する。このとき、脅威シナリオ探索部123は、イベント発生データ1420においてステータス1423が「仕様通り」、「早すぎた」、または「遅すぎた」であるイベントのうち、いずれかのイベントの事前条件540が満たされなくなっ
た場合、当該状態遷移パターンデータを破棄する。また、脅威シナリオ探索部123は、イ
ベント発生データ1420の末尾のイベントの仕様上発生すべき時刻1424以前に事前条件540
が満たされるようになった必然イベントがイベント発生データ1420に含まれていない場合も、当該状態遷移パターンデータを破棄する。
Subsequently, threat scenario search unit 123 refers to the state transition rule of event list 500 for the state transition pattern data generated by the above processing, and updates state transition data 1410 based on event occurrence data 1420 . At this time, the threat scenario searching unit 123 determines that the precondition 540 of any of the events whose status 1423 in the event occurrence data 1420 is "according to specification", "too early", or "too late" is If it is no longer satisfied, discard the state transition pattern data. In addition, the threat scenario searching unit 123 determines whether the precondition 540
is not included in the event occurrence data 1420, the state transition pattern data is discarded.

続いて、脅威シナリオ探索部123は、イベントリスト500の事前条件540を参照し、事前
条件540が満たされることが確定したものを、S41102において取り出された状態遷移パタ
ーンデータ1400の発生予定イベントデータ1430に追加する。
Next, threat scenario search unit 123 refers to precondition 540 of event list 500, and selects occurrence scheduled event data 1430 of state transition pattern data 1400 extracted in S41102 for events for which precondition 540 is confirmed to be satisfied. Add to

尚、S41103およびS41105にて生成される状態遷移パターンデータ1400については、状態遷移データ1410において値1413が同一の状態が2回以上存在した場合、即ち、状態遷移がループしている場合、後続する処理の負荷を軽減すべく、重複する状態遷移パターンデータを破棄するようにしてもよい。 Regarding the state transition pattern data 1400 generated in S41103 and S41105, if the state with the same value 1413 in the state transition data 1410 exists two or more times, that is, if the state transition is looped, the subsequent state transition pattern data 1400 Duplicate state transition pattern data may be discarded in order to reduce the processing load.

続いて、脅威シナリオ探索部123は、S41103およびS41105において生成された各状態遷
移パターン(正常パターンデータ、異常パターンデータ)について、S41106~S41111の処理を繰り返す。
Subsequently, the threat scenario searching unit 123 repeats the processing of S41106 to S41111 for each state transition pattern (normal pattern data, abnormal pattern data) generated in S41103 and S41105.

まず、脅威シナリオ探索部123は、仕様上発生すべき時刻1424および発生する時刻1425
に登場するパラメータに解が存在するか否かを判定する(S41106)。このとき、パラメータに課される条件としては、発生する時刻1425間の条件、および、仕様上発生すべき時刻1424と発生する時刻1425との間の条件の2種類のうちの少なくともいずれかを課す。前者としては、例えば、イベントNo.1421がn、n+1であるイベントの発生する時刻1425が夫々t_n、t_{n+1}である場合、条件t_n<t_{n+1}を課す。また、後者としては、例えば、イベントの仕様上発生すべき時刻1424がt’、発生する時刻1425がtである場合、ステータス1423が「早すぎた」であればt<t’、「遅すぎた」であればt>t’という条件を課す。また、イベントの仕様上発生すべき時刻1424が(t’,t’’)、発生する時刻1425がtである場合、ステータス1423が「早すぎた」であればt<t’、「遅すぎた」であればt>t’’という条件を課す。脅威シナリオ探索部123は、課された条件を満たすパラメータの解が存在するか否
かを判定する。
First, the threat scenario searching unit 123 determines the time 1424 that should occur according to the specifications and the time 1425 that should occur.
(S41106). At this time, as a condition imposed on the parameter, at least one of two types of conditions between the time 1425 to occur and a condition between the time 1424 to occur and the time 1425 to occur according to the specification is imposed. . As for the former, for example, if the times 1425 at which the events whose event numbers 1421 are n and n+1 occur are t_n and t_{n+1}, respectively, the condition t_n<t_{n+1} is imposed. As for the latter, for example, if the time 1424 that should occur according to the specifications of the event is t' and the time 1425 that should occur is t, if the status 1423 is "too early", t <t',"too late impose the condition t>t'. Also, if the time 1424 that should occur according to the specifications of the event is (t', t'') and the time 1425 that should occur is t, if the status 1423 is "too early", t <t',"too late imposes the condition t>t''. The threat scenario search unit 123 determines whether or not there is a parameter solution that satisfies the imposed conditions.

解が存在しない場合(S41106:NO)、脅威シナリオ探索部123は、当該状態遷移パターンを破棄する(S41107)。一方、解が存在する場合(S41106:YES)、脅威シナリオ探索部123は、パラメータの組が条件を満たす必要十分条件をパラメータ条件データ1440として記
憶する(S41108)。
If no solution exists (S41106: NO), threat scenario searching section 123 discards the state transition pattern (S41107). On the other hand, if a solution exists (S41106: YES), the threat scenario searching unit 123 stores the necessary and sufficient condition that the set of parameters satisfies the condition as the parameter condition data 1440 (S41108).

S41109では、脅威シナリオ探索部123は、状態遷移データ1410を参照し、脅威情報700の脅威状態720のいずれかに該当するシステム状態が存在するか否かを判定する。脅威状態
に該当するシステム状態が存在しない場合(S41109:NO)、脅威シナリオ探索部123は当
該状態遷移パターンデータを状態遷移パターンキューに追加する(S41110)。
In S41109, the threat scenario searching unit 123 refers to the state transition data 1410 and determines whether or not there is a system state corresponding to any of the threat states 720 of the threat information 700. If there is no system state corresponding to the threat state (S41109: NO), threat scenario searching section 123 adds the state transition pattern data to the state transition pattern queue (S41110).

一方、脅威状態に該当するシステム状態が存在する場合(S41109:YES)、脅威シナリ
オ探索部123は、当該状態遷移パターンを脅威シナリオ(脅威シナリオデータ800)として記憶(保存)する(S41111)。このとき、脅威シナリオ探索部123は、仕様上発生すべき
時刻1424および発生する時刻1425に登場するパラメータを、パラメータ条件データ1440に記載の条件全てを満たす数値に置き換えたイベント発生データ840を記憶する。また、脅
威シナリオ探索部123は、脅威状態に該当する状態No.1411および該当する脅威名710を脅
威発生データ830として記憶する。
On the other hand, if there is a system state corresponding to a threat state (S41109: YES), threat scenario searching section 123 stores (saves) the state transition pattern as a threat scenario (threat scenario data 800) (S41111). At this time, the threat scenario searching unit 123 stores the event occurrence data 840 in which the parameters that appear at the time 1424 and the time 1425 that should occur according to the specifications are replaced with numerical values that satisfy all the conditions described in the parameter condition data 1440. . Threat scenario searching unit 123 also stores state No. 1411 corresponding to the threat state and corresponding threat name 710 as threat occurrence data 830 .

図16は、図4のS413において分類部124が行う処理3(以下、「分類処理S413」と称する。)の詳細を説明するフローチャートである。以下、同図とともに分類処理S413について説明する。 FIG. 16 is a flowchart for explaining details of process 3 performed by the classification unit 124 in S413 of FIG. 4 (hereinafter referred to as "classification process S413"). The classification processing S413 will be described below with reference to FIG.

まず、分類部124は、脅威シナリオ探索部123が記憶した脅威発生データ830の任意のペ
アについてS4131~S4132のループ処理を繰り返す。
First, the classification unit 124 repeats the loop processing of S4131 to S4132 for any pair of the threat occurrence data 830 stored by the threat scenario search unit 123. FIG.

S4131では、分類部124は、脅威シナリオのペアがマージ条件を満たすか否かを判定する。ここでマージ条件とは、2つの脅威シナリオが同じ分類になる条件を指し、分類部124
に事前に定義されているものとする。マージ条件としては、例えば、「脅威状態に到達するパターンの類似度(例えば、原因(遅すぎた、早すぎた、余計等)や結果(水温低下、過熱等)の共通性に基づく類似度)が閾値を超える場合にマージ条件を満たすとする」、「2つの脅威シナリオのイベント発生データ1420において、連続する2つのイベントの発生順のみが入れ替わっている場合はマージ条件を満たすとする」、「順番の入れ替わりが閾値回数以上、生じている場合はマージ条件を満たさないとする」等が考えられるが、マージ条件の設定方法は必ずしも限定されない。
In S4131, the classification unit 124 determines whether or not the threat scenario pair satisfies the merge condition. Here, the merge condition refers to a condition under which two threat scenarios are classified in the same manner.
shall be pre-defined in As a merge condition, for example, "similarity of patterns that reach the threat state (for example, similarity based on commonality of causes (too late, too early, extra, etc.) and results (water temperature drop, overheating, etc.)) exceeds the threshold,", "In the event occurrence data 1420 of the two threat scenarios, the merge condition is met when only the order of occurrence of two consecutive events is changed", " If the order has been changed more than a threshold number of times, the merge condition is not satisfied." However, the method of setting the merge condition is not necessarily limited.

S4132では、分類部124は、S4131の結果に応じて脅威シナリオ分類データ900を更新する。即ち、S4131において同じ分類になると判定された脅威シナリオデータ800の脅威シナリオNo.810が同一の脅威シナリオNo.リスト920に含まれるように、脅威シナリオ分類データ900の脅威シナリオ分類No.910および脅威シナリオNo.リスト920を更新する。 At S4132, the classification unit 124 updates the threat scenario classification data 900 according to the result of S4131. That is, threat scenario classification No. 910 of threat scenario classification data 900 and threat scenario classification No. 910 of threat scenario classification data 900 and threat Scenario number list 920 is updated.

ループ処理の後、続いて、分類部124は、各脅威シナリオの分類先(グループ)につい
て代表脅威シナリオを選定し、代表脅威シナリオNo.930に格納する(S4133)。代表脅威
シナリオの選定基準としては、例えば、「イベント発生データ840に含まれるイベント数
が最も少ない脅威シナリオを選定する(即ち、構成が単純でわかりやすい脅威シナリオを選定する)」等が考えられるが、代表脅威シナリオの選定基準は必ずしも限定されない。
After the loop processing, the classification unit 124 then selects a representative threat scenario for the classification destination (group) of each threat scenario, and stores it in representative threat scenario No. 930 (S4133). As a criterion for selecting a representative threat scenario, for example, ``select a threat scenario with the smallest number of events included in the event occurrence data 840 (that is, select a threat scenario that has a simple configuration and is easy to understand)'', etc. The selection criteria for representative threat scenarios are not necessarily limited.

続いて、分類部124は、各脅威シナリオ分類について脅威シナリオ分類データ900の説明940に格納する内容を生成する(S4134)。例えば、分類部124は、イベント名842、ステータス843および脅威名832に基づき「イベント「加熱開始」が遅すぎた結果、脅威「水温低下」が発生する」といった説明を生成する。尚、説明の生成方法は必ずしも限定されない。 Subsequently, the classification unit 124 generates contents to be stored in the description 940 of the threat scenario classification data 900 for each threat scenario classification (S4134). For example, based on the event name 842, the status 843, and the threat name 832, the classification unit 124 generates an explanation such as "the event 'heating start' is too late, resulting in the threat 'water temperature drop'". Note that the method of generating the description is not necessarily limited.

図17は、脅威シナリオ一覧画面1700の一例を示す図である。同図に示すように、脅威シナリオ一覧画面1700は、脅威シナリオ分類説明一覧表1710および分析結果送信ボタン1720を含む。 FIG. 17 is a diagram showing an example of a threat scenario list screen 1700. As shown in FIG. As shown in the figure, the threat scenario list screen 1700 includes a threat scenario classification explanation list 1710 and an analysis result send button 1720. FIG.

脅威シナリオ分類説明一覧表1710には、脅威シナリオ分類データ900における説明940の内容が一覧表示される。分析者が入出力装置320を操作し、脅威シナリオ分類説明一覧表1710の1つの行を操作(マウスで左クリック等)すると、分析者用出力部125は、脅威シナリオ分類データ900の対応する行の代表脅威シナリオNo.930を参照し、当該代表脅威シナ
リオの情報を記載した画面(以下、「脅威シナリオ詳細画面1800」と称する。)を生成して表示する。
The threat scenario classification description list 1710 lists the contents of the descriptions 940 in the threat scenario classification data 900 . When the analyst operates the input/output device 320 to operate one row of the threat scenario classification description list 1710 (by left-clicking with a mouse, etc.), the analyst output unit 125 outputs the corresponding row of the threat scenario classification data 900. representative threat scenario No. 930, and generates and displays a screen (hereinafter referred to as "threat scenario detail screen 1800") describing the information of the representative threat scenario.

分析者が入出力装置320を操作し、分析結果送信ボタン1720を操作(マウスで左クリッ
ク等)すると、図4のS416における分析結果送信要求が分析者用出力部125に送信される
。分析者用出力部125は、分析結果送信要求を受信すると、分析結果を依頼者用出力部112に送信する。
When the analyst operates the input/output device 320 and operates the analysis result transmission button 1720 (by left-clicking with a mouse, etc.), the analysis result transmission request in S416 of FIG. Analyst output unit 125 , upon receiving the analysis result transmission request, transmits the analysis result to client output unit 112 .

図18は、脅威シナリオ詳細画面1800の一例を示す図である。脅威シナリオ詳細画面1800は、脅威シナリオ説明表示1810、システム状態表示1821~1827、脅威状態表示1831~1832、イベント表示1841~1846、イベント詳細データ表示1851~1856、戻るボタン1860、および類似シナリオ表示ボタン1870を含む。 FIG. 18 is a diagram showing an example of a threat scenario detail screen 1800. As shown in FIG. The threat scenario detail screen 1800 includes a threat scenario description display 1810, system status displays 1821-1827, threat status displays 1831-1832, event displays 1841-1846, event detailed data displays 1851-1856, a return button 1860, and a similar scenario display button. Including 1870.

脅威シナリオ説明表示1810には、脅威シナリオ分類説明一覧表1710において選択された脅威シナリオの説明が表示される。また、当該説明に対応する脅威シナリオ分類の代表脅威シナリオの情報が、システム状態表示1821~1827、脅威状態表示1831~1832、イベント表示1841~1846、及びイベント詳細データ表示1851~1856として表示される。 The threat scenario description display 1810 displays the description of the threat scenario selected in the threat scenario category description list 1710. FIG. In addition, information on representative threat scenarios of the threat scenario classification corresponding to the description is displayed as system status displays 1821-1827, threat status displays 1831-1832, event displays 1841-1846, and event detailed data displays 1851-1856. .

分析者用出力部125は、システム状態表示1821~1827として、状態遷移データ820のうちパラメータ名822と値823を、状態No.821の昇順に表形式で表示する。分析者用出力部125
は、脅威発生データ830の状態No.831に対応するシステム状態表示1821~1827に隣接して
、対応する脅威名832を脅威状態表示1831~1832として表示する。
Analyst output unit 125 displays parameter names 822 and values 823 of state transition data 820 in ascending order of state No. 821 in tabular format as system state displays 1821 to 1827 . Analyst output unit 125
displays the corresponding threat name 832 as threat status displays 1831-1832 adjacent to the system status displays 1821-1827 corresponding to the status No. 831 of the threat occurrence data 830. FIG.

分析者用出力部125は、イベント表示1841~1846として、イベント発生データ840のうちイベント名842を、イベントNo.841の順に表形式で表示する。分析者用出力部125は、イベント詳細データ表示1851~1856として、イベント発生データ840のうちステータス843、仕様上発生すべき時刻844および発生する時刻845を、イベントNo.841の昇順に表形式で表示する。 Analyst output unit 125 displays event names 842 of event occurrence data 840 in the order of event numbers 841 in tabular format as event displays 1841 to 1846 . The output unit for analyst 125 displays the status 843, the time 844 that should occur according to the specifications, and the time 845 that should occur among the event occurrence data 840 as event detailed data displays 1851 to 1856 in tabular form in ascending order of the event No. 841. indicate.

分析者が、戻るボタン1860を操作(マウスで左クリック等)すると、分析者用出力部125は脅威シナリオ一覧画面1700を表示する。分析者が、類似シナリオ表示ボタン1870を操
作(マウスで左クリック等)すると、分析者用出力部125は、代表脅威シナリオと同じ分
類の脅威シナリオを代表脅威シナリオと並べて表示する。但し、分析者が類似シナリオ表示ボタン1870を操作(マウスで左クリック等)した場合の分析者用出力部125の動作はこ
れに限られるものではなく、代表脅威シナリオと同じ分類の脅威シナリオを一覧表示する別の画面を表示してもよい。
When the analyst operates the return button 1860 (by left-clicking with a mouse, etc.), the output unit for analyst 125 displays the threat scenario list screen 1700 . When the analyst operates the similar scenario display button 1870 (by left-clicking with a mouse or the like), the analyst output unit 125 displays threat scenarios of the same classification as the representative threat scenario side by side with the representative threat scenario. However, the operation of the analyst's output unit 125 when the analyst operates the similar scenario display button 1870 (left-clicking with a mouse, etc.) is not limited to this. You may display another screen to display.

以上に説明した本実施形態の脅威シナリオ分析システム100によれば、分析対象システムが仕様通りに動かなかった場合を、イベントの仕様上発生すべき時刻と発生する時刻が異なるような状態遷移パターンとして表現することができる。そのため、分析対象のシステムが仕様通り動作したものの脅威が発生したという脅威シナリオに加え、分析対象システムが仕様通りに動かなかった場合、例えば、イベントの発生が、分析対象システムの仕様よりも「早すぎた」、分析対象システムの仕様よりも「遅すぎた」、または、分析対象システムの仕様と比べて余計にイベントが発生した場合における脅威シナリオを発見することができる。 According to the threat scenario analysis system 100 of the present embodiment described above, the case where the system to be analyzed does not operate according to the specifications is treated as a state transition pattern in which the time at which the event should occur differs from the time at which it should occur according to the specification of the event. can be expressed. Therefore, in addition to the threat scenario where the system to be analyzed operates according to specifications but a threat occurs, if the system to be analyzed does not operate according to specifications, for example, an event may occur earlier than the specifications of the system to be analyzed. It is possible to discover threat scenarios in which events occurred too late, too late, or too late compared to the specifications of the system under analysis.

また、脅威シナリオ分析システム100は、探索した複数の脅威シナリオを、夫々の状態遷移パターンの類似性に基づき分類することにより取得される情報(分類先毎の代表の脅威シナリオに関する情報)を出力するので、ユーザは、効率よく脅威シナリオを分析することができる。 In addition, the threat scenario analysis system 100 outputs information (information on a representative threat scenario for each classification destination) obtained by classifying a plurality of searched threat scenarios based on the similarity of their state transition patterns. So users can efficiently analyze threat scenarios.

また、脅威シナリオ分析システム100は、脅威シナリオの状態遷移のパターンを、脅威状態を示す情報、当該脅威シナリオにおいて発生したイベント、パターンの各状態の仕様上発生すべき時刻、パターンの各状態が発生する時刻等とともに時系列順に表示するので、ユーザは、脅威に至る過程や原因を効率よく特定することができる。 In addition, the threat scenario analysis system 100 analyzes the state transition pattern of the threat scenario, information indicating the threat state, the event that occurred in the threat scenario, the time that should occur according to the specifications of each state of the pattern, and the occurrence of each state of the pattern. Since the threats are displayed in chronological order along with the time of occurrence, etc., the user can efficiently identify the process and cause leading to the threat.

以上、本発明の一実施形態について説明したが、本発明は上記の実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、上記の実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、上記実施形態の構成の一部について、他の構成の追加や削除、置換をすることが可能である。 Although one embodiment of the present invention has been described above, it goes without saying that the present invention is not limited to the above-described embodiment, and can be variously modified without departing from the scope of the invention. For example, the above embodiments have been described in detail in order to explain the present invention in an easy-to-understand manner, and are not necessarily limited to those having all the configurations described. Moreover, it is possible to add, delete, or replace some of the configurations of the above embodiments with other configurations.

上記の各構成、機能部、処理部、処理手段等は、それらの一部又は全部を、例えば、集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリやハードディスク、SSD(Solid State Drive)等の記録装置、ICカー
ド、SDカード、DVD等の記録媒体に置くことができる。
A part or all of the above components, functional units, processing units, processing means, etc. may be realized by hardware, for example, by designing them with an integrated circuit. Moreover, each of the above configurations, functions, etc. may be realized by software by a processor interpreting and executing a program for realizing each function. Information such as programs, tables, and files that implement each function can be stored in recording devices such as memories, hard disks, SSDs (Solid State Drives), and recording media such as IC cards, SD cards, and DVDs.

以上に説明した情報処理装置の各種機能部、各種処理部、各種データベースの配置形態は一例に過ぎない。各種機能部、各種処理部、各種データベースの配置形態は、これらの装置が備えるハードウェアやソフトウェアの性能、処理効率、通信効率等の観点から最適な配置形態に変更し得る。 The arrangement form of various functional units, various processing units, and various databases of the information processing apparatus described above is merely an example. The arrangement form of various functional units, various processing units, and various databases can be changed to an optimum arrangement form from the viewpoint of the performance, processing efficiency, communication efficiency, etc. of hardware and software provided in these devices.

前述した各種のデータを格納するデータベースの構成(スキーマ(Schema)等)は、リソースの効率的な利用、処理効率向上、アクセス効率向上、検索効率向上等の観点から柔軟に変更し得る。 The configuration of the database (schema, etc.) that stores the various data described above can be flexibly changed from the viewpoints of efficient use of resources, improvement of processing efficiency, improvement of access efficiency, improvement of search efficiency, and the like.

100 脅威シナリオ分析システム、110 依頼者用装置、111 依頼者用入力受付部、112 依頼者用出力部、116 記憶部、120 脅威シナリオ分析装置、121
分析者用入力受付部、122 入力チェック部、123 脅威シナリオ探索部、124
分類部、125 分析者用出力部、126 記憶部、215 依頼者用入出力PG、315 脅威シナリオ分析PG、500 イベントリスト、600 初期状態情報、800
脅威シナリオデータ、900 脅威シナリオ分類データ、1000 イベントリスト入力画面、1100 初期状態入力画面、1200 脅威情報入力画面、1400 状態遷移パターンデータ、1700 脅威シナリオ一覧画面、1800 脅威シナリオ詳細画面、S400 脅威シナリオ分析処理、S411 脅威シナリオ探索処理、S413 分類処理、S900 入力チェック処理
100 Threat Scenario Analysis System 110 Apparatus for Client 111 Input Receiving Unit for Client 112 Output Unit for Client 116 Storage Unit 120 Threat Scenario Analysis Device 121
Analyst input reception unit 122 input check unit 123 threat scenario search unit 124
classification unit 125 output unit for analyst 126 storage unit 215 input/output PG for requester 315 threat scenario analysis PG 500 event list 600 initial state information 800
Threat scenario data 900 Threat scenario classification data 1000 Event list input screen 1100 Initial state input screen 1200 Threat information input screen 1400 State transition pattern data 1700 Threat scenario list screen 1800 Threat scenario detail screen S400 Threat scenario analysis processing, S411 threat scenario search processing, S413 classification processing, S900 input check processing

Claims (15)

分析対象システムにおいて発生し得る脅威に繋がる状態遷移のパターンである脅威シナリオを分析する情報処理システムであって、
情報処理装置を用いて構成され、
分析対象システムが仕様通り動作した場合に発生し得るイベントの一覧と、前記イベントの夫々が仕様上発生すべき時刻を含む情報であるイベントリストを記憶し、
前記仕様上発生すべき時刻に発生するイベントと前記仕様上発生すべき時刻でない時刻に発生するイベントとを時系列に組み合わせたデータであるイベント発生データを生成し、
予め設定された初期状態に、前記イベント発生データの各イベントを前記時系列に順次作用させていくことにより得られる前記分析対象システムの状態遷移のパターンを複数生成し、
生成した前記状態遷移のパターンのうち、前記分析対象システムの状態が、予め設定された脅威状態に到達するパターンを脅威シナリオとして探索し、
探索した前記脅威シナリオに関する情報を出力する、
脅威シナリオ分析装置。
An information processing system that analyzes threat scenarios, which are patterns of state transitions that lead to threats that can occur in an analysis target system,
configured using an information processing device,
storing an event list, which is information including a list of events that can occur when the system to be analyzed operates according to specifications and the time at which each of the events should occur according to the specifications;
generating event occurrence data, which is data obtained by chronologically combining an event that occurs at a time that should occur according to the specifications and an event that occurs at a time that should not occur according to the specifications;
generating a plurality of patterns of state transitions of the system to be analyzed obtained by sequentially applying events of the event occurrence data to a preset initial state in the time series;
searching, as a threat scenario, for a pattern in which the state of the system to be analyzed reaches a preset threat state among the generated state transition patterns;
outputting information about the threat scenarios that have been explored;
Threat scenario analyzer.
請求項1に記載の脅威シナリオ分析装置であって、
前記仕様上発生すべき時刻でない時刻に発生するイベントは、前記仕様上発生すべき時刻よりも早い時刻に発生するイベント、前記仕様上発生すべき時刻よりも遅い時刻に発生するイベント、仕様通りに動作した場合には発生し得ない余計なイベント、のうちのいずれかである、
脅威シナリオ分析装置。
A threat scenario analysis device according to claim 1,
An event that occurs at a time that should not occur according to the specifications includes an event that occurs earlier than the time that should occur according to the specifications, an event that occurs later than the time that should occur according to the specifications, and an event that occurs at a time later than the time that should occur according to the specifications. is either an extra event that cannot occur if it works,
Threat scenario analyzer.
請求項2に記載の脅威シナリオ分析装置であって、
前記仕様上発生すべき時刻でない時刻に発生するイベントは、仕様通りに動作した場合よりも発生順の早いイベント、または、仕様通りに動作した場合よりも発生順の遅いイベントである、
脅威シナリオ分析装置。
A threat scenario analysis device according to claim 2,
The event that occurs at a time that should not occur according to the specifications is an event that occurs earlier in the order of occurrence than when operating according to the specification, or an event occurs later in the order of occurrence than when operating according to the specification.
Threat scenario analyzer.
請求項1に記載の脅威シナリオ分析装置であって、
生成した前記状態遷移のパターンのうち、前記イベントの夫々が発生する時刻間について課される条件、および、前記イベントの夫々の仕様上発生すべき時刻と発生する時刻との間に課される条件のうちの少なくともいずれかを充足しないものを前記探索の対象から除外する、
脅威シナリオ分析装置。
A threat scenario analysis device according to claim 1,
Among the generated state transition patterns, a condition imposed between the times when each of the events occurs, and a condition imposed between the times when each of the events should occur according to the specification and the time when the event occurs. Exclude from the search target those that do not satisfy at least one of
Threat scenario analyzer.
請求項1に記載の脅威シナリオ分析装置であって、
探索した前記脅威シナリオを、夫々の状態遷移のパターンの類似性に基づき分類することにより取得される情報を出力する、
脅威シナリオ分析装置。
A threat scenario analysis device according to claim 1,
outputting information obtained by classifying the searched threat scenarios based on the similarity of their state transition patterns;
Threat scenario analyzer.
請求項5に記載の脅威シナリオ分析装置であって、
前記脅威シナリオの分類先毎に代表となる脅威シナリオを選出して出力する、
脅威シナリオ分析装置。
A threat scenario analysis device according to claim 5,
Selecting and outputting a representative threat scenario for each classification destination of the threat scenario;
Threat scenario analyzer.
請求項6に記載の脅威シナリオ分析装置であって、
前記脅威状態に到達するまでのイベントの発生回数が最少の前記脅威シナリオを前記代表として選出する、
脅威シナリオ分析装置。
A threat scenario analysis device according to claim 6,
electing the threat scenario with the fewest number of occurrences of events to reach the threat state as the representative;
Threat scenario analyzer.
請求項1に記載の脅威シナリオ分析装置であって、
前記脅威シナリオの状態遷移のパターンを時系列順に表示する、
脅威シナリオ分析装置。
A threat scenario analysis device according to claim 1,
displaying patterns of state transitions of the threat scenario in chronological order;
Threat scenario analyzer.
請求項8に記載の脅威シナリオ分析装置であって、
前記脅威シナリオの状態遷移のパターンを、前記脅威状態を示す情報、当該脅威シナリオにおいて発生したイベント、前記パターンの各状態の仕様上発生すべき時刻、および前記パターンの各状態が発生する時刻のうちの少なくともいずれかとともに時系列順に表示する、
脅威シナリオ分析装置。
A threat scenario analysis device according to claim 8,
The state transition pattern of the threat scenario is selected from the information indicating the threat state, the event that occurred in the threat scenario, the time that each state of the pattern should occur according to the specifications, and the time that each state of the pattern occurs. displayed in chronological order with at least one of
Threat scenario analyzer.
請求項1に記載の脅威シナリオ分析装置であって、
脅威シナリオの分析の依頼者が操作する依頼者用装置と通信可能に接続し、
前記初期状態を示す情報、前記脅威状態を示す情報、および前記イベントリストを前記依頼者用装置から取得する、
脅威シナリオ分析装置。
A threat scenario analysis device according to claim 1,
communicatively connected to a requestor device operated by a requestor for threat scenario analysis;
obtaining information indicative of the initial state, information indicative of the threat state, and the event list from the client device;
Threat scenario analyzer.
請求項10に記載の脅威シナリオ分析装置であって、
前記初期状態を示す情報、前記脅威状態を示す情報、および前記イベントリストに基づき前記脅威シナリオを探索し、探索した前記脅威シナリオに関する情報を前記依頼者用装置に送信する、
脅威シナリオ分析装置。
A threat scenario analysis device according to claim 10,
Searching for the threat scenario based on the information indicating the initial state, the information indicating the threat state, and the event list, and transmitting information about the searched threat scenario to the client device;
Threat scenario analyzer.
分析対象システムにおいて発生し得る脅威に繋がる状態遷移のパターンである脅威シナリオを分析する情報処理方法であって、
情報処理装置が、
分析対象システムが仕様通り動作した場合に発生し得るイベントの一覧と、前記イベントの夫々が仕様上発生すべき時刻を含む情報であるイベントリストを記憶するステップ、
前記仕様上発生すべき時刻に発生するイベントと前記仕様上発生すべき時刻でない時刻に発生するイベントとを時系列に組み合わせたデータであるイベント発生データを生成するステップ、
予め設定された初期状態に、前記イベント発生データの各イベントを前記時系列に順次作用させていくことにより得られる前記分析対象システムの状態遷移のパターンを複数生成するステップ、
生成した前記状態遷移のパターンのうち、前記分析対象システムの状態が、予め設定された脅威状態に到達するパターンを脅威シナリオとして探索するステップ、および、
探索した前記脅威シナリオに関する情報を出力するステップ、
を実行する、脅威シナリオ分析方法。
An information processing method for analyzing a threat scenario, which is a pattern of state transitions leading to threats that can occur in an analysis target system,
The information processing device
a step of storing an event list, which is information including a list of events that can occur when the system to be analyzed operates according to specifications and the time at which each of the events should occur according to the specifications;
a step of generating event occurrence data, which is data obtained by chronologically combining an event that occurs at a time that should occur according to the specifications and an event that occurs at a time that should not occur according to the specifications;
a step of generating a plurality of patterns of state transition of the system to be analyzed, which are obtained by sequentially applying each event of the event occurrence data to a preset initial state in the time series;
a step of searching, as a threat scenario, for a pattern in which the state of the system to be analyzed reaches a preset threat state among the generated state transition patterns;
outputting information about the detected threat scenario;
A threat scenario analysis method that performs
請求項12に記載の脅威シナリオ分析方法であって、
前記情報処理装置が、生成した前記状態遷移のパターンのうち、前記イベントの夫々が発生する時刻間について課される条件、および、前記イベントの夫々の仕様上発生すべき時刻と発生する時刻との間に課される条件のうちの少なくともいずれかを充足しないものを前記探索の対象から除外するステップを更に実行する、
脅威シナリオ分析方法。
A threat scenario analysis method according to claim 12, comprising:
Among the state transition patterns generated by the information processing apparatus, a condition imposed between times when each of the events occurs, and a time when each of the events should occur according to the specification and a time when the event occurs. excluding from the search objects those that do not satisfy at least one of the conditions imposed between
Threat scenario analysis method.
請求項12に記載の脅威シナリオ分析方法であって、
前記情報処理装置が、探索した前記脅威シナリオを、夫々の状態遷移のパターンの類似
性に基づき分類することにより取得される情報を出力するステップを更に実行する、
脅威シナリオ分析方法。
A threat scenario analysis method according to claim 12, comprising:
The information processing device further executes a step of outputting information obtained by classifying the searched threat scenarios based on the similarity of their state transition patterns.
Threat scenario analysis method.
請求項14に記載の脅威シナリオ分析方法であって、
前記情報処理装置が、前記脅威シナリオの分類先毎に代表となる脅威シナリオを選出して出力するステップを更に実行する、
脅威シナリオ分析方法。
The threat scenario analysis method of claim 14, comprising:
The information processing device further executes a step of selecting and outputting a representative threat scenario for each classification destination of the threat scenario.
Threat scenario analysis method.
JP2021030653A 2021-02-26 2021-02-26 Threat scenario analysis device and threat scenario analysis method Pending JP2022131621A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021030653A JP2022131621A (en) 2021-02-26 2021-02-26 Threat scenario analysis device and threat scenario analysis method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021030653A JP2022131621A (en) 2021-02-26 2021-02-26 Threat scenario analysis device and threat scenario analysis method

Publications (1)

Publication Number Publication Date
JP2022131621A true JP2022131621A (en) 2022-09-07

Family

ID=83152971

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021030653A Pending JP2022131621A (en) 2021-02-26 2021-02-26 Threat scenario analysis device and threat scenario analysis method

Country Status (1)

Country Link
JP (1) JP2022131621A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7570482B1 (en) 2023-07-07 2024-10-21 アストロンセキュリティー How to detect and analyze time series data based on a cyber threat framework
JP2025067749A (en) * 2023-10-12 2025-04-24 アストロンセキュリティー How to determine the threat scenario

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7570482B1 (en) 2023-07-07 2024-10-21 アストロンセキュリティー How to detect and analyze time series data based on a cyber threat framework
JP2025009655A (en) * 2023-07-07 2025-01-20 アストロンセキュリティー How to detect and analyze time series data based on a cyber threat framework
JP2025067749A (en) * 2023-10-12 2025-04-24 アストロンセキュリティー How to determine the threat scenario

Similar Documents

Publication Publication Date Title
CN111259627B (en) Document analysis method, device, computer storage medium and equipment
US20180114126A1 (en) Systems and methods for identifying process flows from log files and visualizing the flow
JP5919825B2 (en) Data processing method, distributed processing system, and program
US20170068409A1 (en) Computer implemented system and method for dynamically modeling relationships between entities
US8219575B2 (en) Method and system for specifying, preparing and using parameterized database queries
US12131228B2 (en) Method for accessing data records of a master data management system
WO2019212857A1 (en) Systems and methods for enriching modeling tools and infrastructure with semantics
US10261893B2 (en) Implicit coordination of deployment and regression testing across data centers and system clusters
JP2013137763A (en) System and method for merging source record based on existence rule
JP2017531855A (en) Data-driven inspection framework
US11720825B2 (en) Framework for multi-tenant data science experiments at-scale
US9336286B2 (en) Graphical record matching process replay for a data quality user interface
JP6256115B2 (en) Operation search program, operation search method, and operation search device
CN114385763A (en) Data blood margin analysis method, device and system and readable storage medium
JP2022131621A (en) Threat scenario analysis device and threat scenario analysis method
JP6692281B2 (en) Test case generation device and test case generation method
CN114116422A (en) Hard disk log analysis method, hard disk log analysis device and storage medium
JP7538272B2 (en) Machine learning model operation management system, operation management method, and computer program
JP6419667B2 (en) Test DB data generation method and apparatus
US20140136155A1 (en) Analyzing hardware designs based on component re-use
US9390073B2 (en) Electronic file comparator
CN115062080A (en) Data auditing method, device, equipment and storage medium
JP7246301B2 (en) Program development support system and program development support method
US8775873B2 (en) Data processing apparatus that performs test validation and computer-readable storage medium
US20230143297A1 (en) Production knowledge management system, production knowledge management method, and production knowledge management program