JP6361837B2 - Training apparatus, training method, and training program - Google Patents
Training apparatus, training method, and training program Download PDFInfo
- Publication number
- JP6361837B2 JP6361837B2 JP2017562203A JP2017562203A JP6361837B2 JP 6361837 B2 JP6361837 B2 JP 6361837B2 JP 2017562203 A JP2017562203 A JP 2017562203A JP 2017562203 A JP2017562203 A JP 2017562203A JP 6361837 B2 JP6361837 B2 JP 6361837B2
- Authority
- JP
- Japan
- Prior art keywords
- attack
- scenario
- information
- training
- function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012549 training Methods 0.000 title claims description 77
- 238000000034 method Methods 0.000 title claims description 42
- 230000006870 function Effects 0.000 description 69
- 230000008569 process Effects 0.000 description 34
- 208000015181 infectious disease Diseases 0.000 description 15
- 238000012545 processing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000011838 internal investigation Methods 0.000 description 6
- 230000002159 abnormal effect Effects 0.000 description 4
- 230000000295 complement effect Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 208000003322 Coinfection Diseases 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000009118 appropriate response Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
Landscapes
- Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Computer And Data Communications (AREA)
Description
本発明は、プラントや工場で従事する運転員が、事故や異常事態発生時に適切な対応をとれるように、運転員に訓練を行なう訓練装置に関する。 The present invention relates to a training apparatus that trains an operator who is engaged in a plant or factory so that an appropriate response can be taken when an accident or abnormal situation occurs.
産業制御システムのプラントや工場で従事する運転員が、事故や異常事態発生時に適切な対応をとれるように、運転員に訓練を行なう必要がある。特に近年では、産業制御システムがインターネットと接続されることが多くなり、これに伴い産業制御システムに対するサイバー攻撃が増加している。そのため、運転員に対して、産業制御システムがサイバー攻撃を受けた際の適切な対応を訓練しておく必要がある。このようなサイバー攻撃の訓練に関する従来技術として、例えば特許文献1では、ユーザ(訓練する教官)が、訓練対象のシステムの端末数やそのIPアドレスを変更することで訓練の難易度を調整する模擬装置が開示されている。
It is necessary to train operators who are engaged in industrial control system plants and factories so that they can take appropriate actions in the event of an accident or abnormal situation. Particularly in recent years, industrial control systems are often connected to the Internet, and accordingly, cyber attacks against industrial control systems are increasing. Therefore, it is necessary to train operators to respond appropriately when the industrial control system is subjected to a cyber attack. As a conventional technique related to such cyber attack training, for example, in
訓練装置を実現するためには、プラントや工場の本番環境を模擬したシステムを訓練装置上に構築し、その上で事故や異常事態を発生させる必要がある。訓練シナリオは、個々のプラントや工場のシステム構成に依存するため、サイバー攻撃が原因となって発生する事故や異常事態のように頻繁に新しいシナリオが発生する場合は、個々のシステム毎に訓練シナリオを頻繁に開発する必要がある。特に、本番環境を構成する装置の機能やネットワーク構成などのシステム構成が異なるシステムに対しては、同一の訓練シナリオであっても、このシステムに即したシナリオを一から開発する必要があり、開発の工期やコストが増大するという課題がある。 In order to realize the training device, it is necessary to construct a system simulating the production environment of a plant or factory on the training device, and to generate an accident or abnormal situation on that system. Since the training scenario depends on the system configuration of each plant or factory, if a new scenario occurs frequently, such as an accident or abnormal situation caused by a cyber attack, the training scenario for each individual system Need to be developed frequently. In particular, for systems with different system configurations, such as the functions and network configurations of the devices that make up the production environment, it is necessary to develop a scenario that conforms to this system from scratch, even for the same training scenario. There is a problem that the construction period and cost of the increase.
この発明は上記の課題を解決するためになされたもので、システム構成が異なる複数のシステムに対し、同一の訓練シナリオを自動で生成できる汎用的な訓練装置を提供することを目的とする。 The present invention has been made to solve the above problems, and an object of the present invention is to provide a general-purpose training apparatus that can automatically generate the same training scenario for a plurality of systems having different system configurations.
上記で述べた課題を解決するため、本発明の訓練装置は、機器の機能を示す機能情報とサイバー攻撃の実行ステップの分類を示す攻撃分類情報とを記憶する情報記憶部と、訓練対象システムを構成する機器の情報を示すシステム構成情報が入力され、機能情報と攻撃分類情報とを対応付けた実行ステップを含む基本攻撃シナリオの機能情報を、この機能情報に対応するシステム構成情報の機器に書き換えて、訓練対象システムのシステム構成情報に合致した個別の攻撃シナリオである個別攻撃シナリオを生成するシナリオ生成部とを備える。 In order to solve the problems described above, the training apparatus of the present invention includes an information storage unit that stores functional information indicating the function of the device and attack classification information indicating the classification of the execution step of the cyber attack, and a training target system. System configuration information indicating the information of the device to be configured is input, and the function information of the basic attack scenario including the execution step in which the function information and the attack classification information are associated is rewritten to the device of the system configuration information corresponding to this function information. A scenario generation unit that generates an individual attack scenario that is an individual attack scenario that matches the system configuration information of the training target system.
本発明によれば、訓練対象システムのシステム構成情報を入力として、機器の機能と一連の攻撃ステップで表現した基本攻撃シナリオを、システム構成情報に合致するように書き換えて、訓練対象システムに対する個別の攻撃シナリオである個別攻撃シナリオを生成することにより、システム構成が異なる複数のシステムに対し、同一の訓練シナリオを自動で生成でき、訓練シナリオ開発の工期やコストを抑制できるという効果が得られる。 According to the present invention, the system configuration information of the training target system is input, and the basic attack scenario expressed by the device function and a series of attack steps is rewritten so as to match the system configuration information. By generating an individual attack scenario that is an attack scenario, the same training scenario can be automatically generated for a plurality of systems having different system configurations, and the construction period and cost of training scenario development can be suppressed.
実施の形態1.
図1は、実施の形態1に係る訓練装置1の一構成例を示す図である。
図1において、訓練装置1は、システム構成入力部2、シナリオ入力部3、情報記憶部4、シナリオ生成部5を備えている。
FIG. 1 is a diagram illustrating a configuration example of the
In FIG. 1, the
システム構成入力部2は、情報記憶部4に記憶されている機能情報6のリストを、ユーザ(教官)または訓練装置開発者(以下、両者をまとめてユーザと呼ぶ)に表示し、ユーザが、表示された機能情報6と対応付けて、システムに存在する機器名とネットワーク名などのシステム構成情報を入力するための入力インタフェースである。
The system
シナリオ入力部3は、情報記憶部4に記憶されている機能情報6、攻撃分類情報7、シナリオテンプレート8をユーザに表示し、ユーザが、訓練者に訓練させたい基本的な攻撃シナリオである基本攻撃シナリオ情報を入力するための入力インタフェースである。
The
情報記憶部4は、機能情報6、攻撃分類情報7、シナリオテンプレート8、前提ステップ判定情報9を記憶するメモリである。
The
シナリオ生成部5は、システム構成入力部2により入力されたシステム構成情報と、シナリオ入力部3により入力された基本攻撃シナリオ情報と、情報記憶部4に記憶された前提ステップ判定情報9とを用いて、個々のシステム構成向けの個別攻撃シナリオを生成する。シナリオ生成部5は、判定部10、補完部11、出力部12を備えている。
The
次に、訓練装置1のハードウェア構成を説明する。
図2は、実施の形態1に係る訓練装置1のハードウェア構成の一例を示す図である。Next, the hardware configuration of the
FIG. 2 is a diagram illustrating an example of a hardware configuration of the
訓練装置1はコンピュータであり、訓練装置1の各構成要素をプログラムで実現することができる。訓練装置1のハードウェア構成としては、バスに、プロセッサ20、外部記憶メモリ21、主記憶メモリ22、入力インタフェース23、出力インタフェース24が接続されている。
The
プロセッサ20は、バスを介して他のハードウェアと接続され、これら他のハードウェアを制御する。プロセッサ20は、プロセッシングを行なうIC(Integrated Circuit)である。プロセッサ20は、具体的には、プログラムを実行するCPU(Central Processing Unit)である。 The processor 20 is connected to other hardware via a bus and controls these other hardware. The processor 20 is an IC (Integrated Circuit) that performs processing. Specifically, the processor 20 is a CPU (Central Processing Unit) that executes a program.
外部記憶メモリ21は、例えばROM(Read Only Memory)やフラッシュメモリ、ハードディスク装置等である。 The external storage memory 21 is, for example, a ROM (Read Only Memory), a flash memory, a hard disk device, or the like.
主記憶メモリ22は、例えばRAM(Random Access Memory)等である。情報記憶部4は、外部記憶メモリ21、または主記憶メモリ22により実現される。あるいは、情報記憶部4は、外部記憶メモリ21、または主記憶メモリ22の両方により実現されてもよい。
The main memory 22 is, for example, a RAM (Random Access Memory). The
入力インタフェース23は、マウス、キーボード、タッチパネルといった入力装置と接続されるポートである。入力インタフェース23は、具体的には、例えばUSB(Universal Serial Bus)端子である。なお、入力インタフェース23は、LAN(Local Area Network)と接続されるポートであってもよい。 The input interface 23 is a port connected to an input device such as a mouse, a keyboard, and a touch panel. Specifically, the input interface 23 is, for example, a USB (Universal Serial Bus) terminal. The input interface 23 may be a port connected to a LAN (Local Area Network).
出力インタフェース24は、ディスプレイといった出力装置のケーブルが接続されるポートである。出力インタフェースは、例えば、USB端子である。ディスプレイは、具体的には、LCD(Liquid Crystal Display)である。
The
プログラムは、通常は外部記憶メモリ21に記憶されており、主記憶メモリ22にロードされた状態で、順次、プロセッサ20に読み込まれ、実行される。このプログラムは、訓練装置1を構成するシステム構成入力部2、シナリオ入力部3、情報記憶部4、シナリオ生成部5として説明している機能を実現するプログラムである。
The program is normally stored in the external storage memory 21, and is loaded into the main storage memory 22 and sequentially read into the processor 20 and executed. This program is a program that realizes the functions described as the system
更に、外部記憶メモリ21には、オペレーティングシステム(OS)も記憶されており、OSの少なくとも一部が主記憶メモリ22にロードされ、プロセッサ20は、OSを実行しながら、上記プログラムを実行する。 Further, an operating system (OS) is also stored in the external storage memory 21, and at least a part of the OS is loaded into the main storage memory 22, and the processor 20 executes the above program while executing the OS.
また、情報記憶部4が記憶する情報やデータ、及びシステム構成入力部2、シナリオ入力部3、シナリオ生成部5の処理の結果を示す情報やデータや信号値や変数値が、主記憶メモリ22にファイルとして記憶されている。
Further, information and data stored in the
なお、図2の構成は、あくまでも訓練装置1のハードウェア構成の一例を示すものであり、訓練装置1のハードウェア構成は、図2に記載の構成に限らず、他の構成であってもよい。
2 is merely an example of the hardware configuration of the
次に、実施の形態1に係る訓練装置1の動作を説明する。
図3は、実施の形態1に係る訓練装置1の動作の流れを示すフローチャートである。Next, operation | movement of the
FIG. 3 is a flowchart showing a flow of operation of the
まず、ステップS001において、ユーザはシステム構成入力部2により、訓練対象となるシステムの構成に関する情報であるシステム構成情報を入力する。
図4は、実施の形態1で用いる訓練対象システムの一例を示す図である。
図4において、訓練対象システムは、ネットワーク1とネットワーク2を備える。ネットワーク1には、操作装置1(30)と操作装置2(31)が接続され、ネットワーク2には、操作装置2(31)、コントローラ32、制御対象装置1(33)、制御対象装置2(34)が接続されている。First, in step S001, the user inputs system configuration information, which is information related to the configuration of a system to be trained, using the system
FIG. 4 is a diagram illustrating an example of a training target system used in the first embodiment.
In FIG. 4, the training target system includes a
ユーザは、システム構成入力部2により、訓練対象システムに存在する機器名を入力する。訓練装置1は、入力された各機器名に対して、情報記憶部4に事前に記憶されている機能情報6の機能のリストをユーザに表示し、ユーザに機器名と機能との対応付けを行なえるようにする。ユーザが、入力した機器名に対して、表示された機能を選択した結果、訓練装置1は、機器名と機能とが対応付けられたシステム構成情報1を出力する。
The user inputs a device name existing in the training target system through the system
図5は、システム構成情報1の一例を示す図である。
図5において、システム構成情報1は、ユーザが入力した機器名、ユーザが選択した機能からなる。FIG. 5 is a diagram illustrating an example of the
In FIG. 5, the
図6は、機能情報6の一例を示す図である。
機能情報6は、情報記憶部4に事前に記憶された機能と、その説明からなる。機能の説明は、ユーザに対する入力支援を行なうための情報であるため、なくてもよい。FIG. 6 is a diagram illustrating an example of the function information 6.
The function information 6 includes a function stored in advance in the
次に、ユーザは、システム構成入力部2により、訓練対象システムに存在するネットワーク名を入力する。訓練装置1は、入力されたネットワーク名に対して、ユーザが入力した機器名を表示し、ユーザに、ネットワーク名とそのネットワークに接続された機器名の対応付けを行なえるようにする。その結果、訓練装置1は、システム構成情報2を出力する。
Next, the user inputs a network name existing in the training target system through the system
図7は、システム構成情報2の一例を示す図である。
図7において、システム構成情報2は、ネットワーク名(図中、「ネットワーク」は「NW」で示す)、接続された機器1〜接続された機器4からなる。FIG. 7 is a diagram illustrating an example of the
In FIG. 7, the
次に、ステップS002において、ユーザはシナリオ入力部3により、訓練者に訓練させたい内容である基本攻撃シナリオを、一連の攻撃ステップを指定して作成する。
Next, in step S002, the user uses the
訓練装置1は、攻撃シナリオを攻撃の分類の単位で分割した攻撃分類情報7と、攻撃元及び攻撃対象となる機能情報6を表示し、ユーザに、攻撃分類と機器名の対応付けを行なえるようにする。攻撃分類情報7は、情報記憶部4に事前に記憶された情報である。
The
さらに、ユーザは、一連の攻撃ステップの中から、訓練者に訓練させたい基本攻撃シナリオの特徴が顕著に表れた攻撃ステップを指定する。ここで指定した攻撃ステップは、訓練対象システム個々のシステム構成に沿った個別攻撃シナリオを作成する際に、必ず設定される攻撃ステップである。以降、本攻撃ステップを必須ステップと呼ぶ。上記の結果、訓練装置1は、基本攻撃シナリオ情報を出力する。
Further, the user designates an attack step in which the characteristics of the basic attack scenario that the trainer wants to train are markedly displayed from the series of attack steps. The attack step specified here is an attack step that is always set when creating an individual attack scenario according to the system configuration of each training target system. Hereinafter, this attack step is called an essential step. As a result, the
図8は、攻撃分類情報7の一例を示す図である。
図8において、攻撃分類情報7は、攻撃分類からなる。FIG. 8 is a diagram illustrating an example of the
In FIG. 8, the
図9は、基本攻撃シナリオ情報の一例を示す図である。
図9において、基本攻撃シナリオ情報は、攻撃ステップNo.、攻撃分類、攻撃元(機能)、攻撃対象(機能)、必須か否かを示す情報からなる。FIG. 9 is a diagram illustrating an example of basic attack scenario information.
In FIG. 9, basic attack scenario information includes attack step numbers. , Attack classification, attack source (function), attack target (function), and information indicating whether it is essential.
なお、本実施の形態では、基本攻撃シナリオ情報を一から作成したが、過去に生成した基本攻撃シナリオ情報をテンプレートとして、情報記憶部4のシナリオテンプレート8に記憶しておき、本ステップ(S002)の実行時にロードすることとしてもよい。また、その際は、ユーザが攻撃分類、攻撃元、攻撃対象、必須か否かを示す情報を適宜指定できるようにしてもよい。
In the present embodiment, the basic attack scenario information is created from scratch, but the basic attack scenario information generated in the past is stored as a template in the scenario template 8 of the
次に、ステップS003において、シナリオ生成部5は、ユーザに入力されたシステム構成に沿った個別攻撃シナリオを生成する。ステップS003の詳細な処理フローは後述する。
Next, in step S003, the
次に、ステップS004において、シナリオ生成部5は、生成した個別攻撃シナリオを出力し、処理を終了する。
Next, in step S004, the
次に、ステップS003の詳細な処理フローを、図10〜図13を参照して説明する。
図10は、シナリオ生成部5の動作の流れを示すフローチャート(その1)である。
図11は、シナリオ生成部5の動作の流れを示すフローチャート(その2)である。
図12は、シナリオ生成部5の動作の流れを示すフローチャート(その3)である。
図13は、シナリオ生成部5の動作の流れを示すフローチャート(その4)である。Next, the detailed processing flow of step S003 will be described with reference to FIGS.
FIG. 10 is a flowchart (part 1) illustrating the flow of operations of the
FIG. 11 is a flowchart (part 2) of the operation flow of the
FIG. 12 is a flowchart (part 3) illustrating the flow of the operation of the
FIG. 13 is a flowchart (part 4) of the operation flow of the
まず、ステップS101において、シナリオ生成部5の判定部10は、必須ステップで必要となる機能はシステムに存在するか否かを判定する。判定部10は、基本攻撃シナリオ情報を参照して、必須ステップを実行する際に必要となる機能を確認し、当該機能に対応する機器がシステム構成情報1に登録されているかを判定する。
First, in step S101, the
例えば、図9の基本攻撃シナリオ情報では、攻撃ステップNo.4に必須ステップが設定されており、これはEWSからPLCへ不正通信を行なう攻撃である。したがって、必須ステップで必要となる機能は、EWSとPLCであり、判定部10は、図5のシステム構成情報1から、EWSとPLCの両機能とも当該システムに存在していると判定することができる。ステップS101で存在すると判定した場合は、ステップS102へと進む。また、ステップS101で存在しないと判定した場合は、ステップS106へ進み、訓練のための個別攻撃シナリオは生成不可として処理を終了する。
For example, in the basic attack scenario information of FIG. An essential step is set in No. 4, which is an attack for performing unauthorized communication from the EWS to the PLC. Therefore, the functions required in the essential steps are EWS and PLC, and the
次に、ステップS102において、シナリオ生成部5の判定部10は、必須ステップを実行する際に必要となる機能は、単数か複数かを判定する。例えば、図9の攻撃ステップNo.1では、必要な機能は単数であり、それ以外の攻撃ステップでは複数である。必要な機能が単数である場合は、ステップS104へ進む。必要な機能が複数である場合は、ステップS103へ進む。
Next, in step S102, the
次に、ステップS103において、シナリオ生成部5の判定部10は、必須ステップを実行する際に必要となる複数の機能は、相互に接続されているか否かを判定する。この処理は、システム構成情報2で相互に接続されている機器名に対し、システム構成情報1の機能を対応させて判定する。接続されている場合は、ステップS104へ進む。接続されていない場合は、ステップS106へ進み、訓練のための個別攻撃シナリオは生成不可として処理を終了する。
Next, in step S103, the
次に、ステップS104において、シナリオ生成部5の判定部10は、必須ステップを実行する際に前提となるステップを判定する。この判定には、前提ステップ判定情報9を使用する。
図14は、前提ステップ判定情報9の一例を示す図である。
図14において、前提ステップ判定情報9は、必須ステップの攻撃分類と、その前提となるステップで必要となる攻撃分類を対応させたものである。実施の形態1の例では、必須ステップがEWSからの不正通信であるので、図14より、前提としてEWSへの感染が必要であることが分かる。このようにして前提となるステップを判定した後は、ステップS105へ進む。Next, in step S104, the
FIG. 14 is a diagram illustrating an example of the premise
In FIG. 14, the prerequisite
次に、ステップS105において、シナリオ生成部5の判定部10は、ステップS104で判定した前提となるステップに相当するステップが、基本攻撃シナリオ情報に存在するかを判定する。実施の形態1の例では、攻撃ステップNo.3にHMIからEWSへの感染があるので、ステップS105で存在すると判定し、ステップS107へ進む。以降、基本攻撃シナリオ情報に記載された攻撃ステップで、必須ステップの前提となるステップを前提ステップと呼ぶ。また、必須ステップでも前提ステップでもないステップをオプションステップと呼ぶ。ステップS105で存在しないと判定された場合は、ステップS106へ進み、訓練のための個別攻撃シナリオは生成不可として処理を終了する。
Next, in step S105, the
次に、ステップS107において、シナリオ生成部5の判定部10は、前提ステップを実行する際に必要となる機能がシステムに存在するかを判定する。判定方法は、必須ステップの場合のステップS101と同じであるので記載を省略する。ステップS107で存在すると判断した場合はステップS108へと進む。ステップS107で存在しないと判断した場合は、ステップS112、またはステップS113へと進む。
Next, in step S107, the
次に、ステップS108において、シナリオ生成部5の判定部10は、前提ステップを実行する際に必要となる機能は、単数か複数かを判定する。必要な機能が単数である場合は、ステップS110へ進む。必要な機能が複数である場合は、ステップS109へ進む。
Next, in step S108, the
次に、ステップS109において、シナリオ生成部5の判定部10は、前提ステップを実行する際に必要となる機能が、相互に接続されているか否かを判定する。判定方法は、ステップS103と同じであるため記載を省略する。ステップS109で接続されている場合は、ステップS110へ進む。ステップS109で接続されていない場合は、ステップS114、またはステップS115へと進む。実施の形態1の例では、前提ステップである攻撃ステップNo.3は、HMIからEWSへの感染である。システム構成情報2より、操作端末2とコントローラが接続されていることが分かるため、ステップS110へ進む。
Next, in step S109, the
次に、ステップS110において、シナリオ生成部5の判定部10は、必須ステップと前提ステップの機能をユーザの入力した機器名に変えて個別攻撃シナリオに登録する。ステップS110までの処理で、必須ステップと前提ステップが当該の訓練対象システムで実行可能な状態となっている。そこでステップS110では、必須ステップと前提ステップで必要となる機能に、ユーザから入力された機器名を割り当てて個別攻撃シナリオに登録し、ステップS111へと進む。実施の形態1の例では、必須ステップである攻撃ステップNo.4の攻撃元にコントローラ、攻撃対象に制御対象機器1、前提ステップである攻撃ステップNo.3の攻撃元に操作端末2、攻撃対象にコントローラを設定して登録する。
Next, in step S110, the
次に、ステップS111において、シナリオ生成部5の判定部10は、基本攻撃シナリオ情報に設定されている全ての必須ステップについて、ステップS101の判定を行なったか判定する。判定した場合はステップS116へ進み、判定していない場合はステップS101へ進む。
Next, in step S111, the
次に、ステップS112、及びステップS113において、シナリオ生成部5の補完部11は、ステップS107において前提ステップで必要となる機能がシステムに存在しない場合の処理を行なう。ステップS112、及びステップS113に至るまでの処理において、必須ステップで必要となる機能は存在すると判定されているため、ステップS112、及びステップS113に至るのは、前提ステップにおける攻撃元となる機能が存在しない場合である。個別の攻撃シナリオを作成する上では、前提ステップは、その結果、すなわち攻撃対象に対して当該の攻撃がなされることが求められる。そこで、システム構成情報1とシステム構成情報2と攻撃分類情報7から、前提ステップの結果と同じ結果が得られるようにステップの内容を変更する。
Next, in step S112 and step S113, the complementing
例えば、前提ステップがHMIからEWSへの感染であり、HMIが存在しないとする。この場合は、ステップS107からステップS112へ遷移し、ステップS112においてEWSへ直接感染するようにステップの内容を変更する。直接感染させる手段には幾つか種類があるが、例えば、USBメモリを経由して感染、メールの添付ファイルを開いて感染、Webサイトからマルウェアの入ったファイルをダウンロード実行して感染等がある。これらの中からランダムに選択して前提ステップを作成する。訓練を行なう際には、ここで選択した感染方法を、実際に訓練者が行動して実行することをきっかけとして攻撃シナリオを再生させることにより、訓練のリアリティが増し、訓練の効果が向上する。 For example, it is assumed that the premise step is infection from HMI to EWS, and there is no HMI. In this case, the process proceeds from step S107 to step S112, and the content of the step is changed so that EWS is directly infected in step S112. There are several types of means for direct infection. For example, there are infection via a USB memory, infection by opening a mail attached file, infection by downloading a file containing malware from a website, and the like. A premise step is created by randomly selecting from these. When training is performed, the reality of the training is increased and the effectiveness of the training is improved by reproducing the attack scenario triggered by the trainer actually performing the infection method selected here.
また、ステップS113は、攻撃分類が内部調査である場合の処理である。シナリオ生成部5の補完部11は、EWSと接続されている機能から内部調査するステップとし、さらに、当該機能へ感染するステップを追加する。
Step S113 is processing when the attack classification is internal investigation. The complementing
以上のように前提ステップの内容を変更することで、必須ステップが実行できるようになる。上記では、攻撃分類として感染と内部調査の例を挙げたが、訓練装置1の動作はこれに限らず、その他の攻撃を行なってもよい。
As described above, the essential steps can be executed by changing the contents of the prerequisite steps. In the above, although the example of infection and internal investigation was given as attack classification, operation of
次に、ステップS114、及びステップS115において、シナリオ生成部5の補完部11は、ステップS107で前提ステップに必要となる機能がシステムに存在するが、それらが相互に接続されていない場合の処理を行なう。
Next, in step S114 and step S115, the complementing
ステップS114において、シナリオ生成部5の補完部11は、対象となる機能と接続されている機能経由で二次感染とする。当該機能が存在しない場合は直接感染とする。補完部11は、基本攻撃シナリオ情報から前提ステップを抽出する。次に、補完部11は、前提ステップの攻撃対象の機能を持った機器をシステム構成情報1から選択し、システム構成情報2からこれと相互接続があり、かつ前提ステップの攻撃元の機能とも相互接続のある機器(仮に中間機器と呼ぶ)が存在する場合、中間機器を経由して二次感染するステップとする。具体的には、前提ステップの攻撃元→中間機器→前提ステップの攻撃対象の順に感染が進むステップとする。中間機器が存在しない、すなわち前提ステップの攻撃元と前提ステップの攻撃対象を接続する経路が、どのようなパスを通っても接続できない場合は、ステップS112と同様に、攻撃対象へ直接感染するステップとする。
In step S114, the complementing
また、ステップS115は、攻撃分類が内部調査である場合の処理である。ステップS114のように、一度中間機器へ感染してから、中間機器から内部調査を行なう処理とする。 Step S115 is processing when the attack classification is internal investigation. As in step S114, once the intermediate device is once infected, an internal investigation is performed from the intermediate device.
なお、ステップS114、及びステップS115では、ステップS112、及びステップS113と同様に攻撃分類として感染と内部調査の例を挙げたが、訓練装置1の動作はこれに限らず、その他の攻撃を行なってもよい。
In step S114 and step S115, as in the case of step S112 and step S113, examples of infection and internal investigation are given as attack categories. However, the operation of the
次に、ステップS116からのステップでは、オプションステップを個別攻撃ステップに登録する、又は削除するための処理を行なう。訓練装置1は、基本攻撃シナリオ情報を参照し、攻撃ステップNo.の小さいオプションステップの順に判定を行なう。必須ステップを実行するために前提ステップの内容を変更した場合は、オプションステップとも整合を取る必要があるため、まずステップS116では、シナリオ生成部5の補完部11は、現在の判定対象であるオプションステップを実行する際に必要となる機能が、前提ステップを実行する際に必要とした機能と同一のものを含むかを判定している。同一のものを含む場合はステップS117へ進み、同一のものを含まない場合はステップS126へ進む。
Next, in steps from step S116, processing for registering or deleting the optional step in the individual attack step is performed. The
次に、ステップS117において、シナリオ生成部5の補完部11は、当該の前提ステップを判定する際にステップの内容を変更したかを判定する。実施の形態1の例では、元の基本攻撃シナリオ情報の攻撃ステップNo.3であるHMIからEWSへの感染は、その内容のままHMIを操作端末2、EWSをコントローラとして登録した。そのため、前提ステップの内容は変更しておらずステップS122へ進む。前提ステップの内容を変更した場合は、ステップS118へ進む。
Next, in step S117, the complementing
次に、ステップS118において、シナリオ生成部5の補完部11は、前提ステップの内容を変更したオプションステップを削除する。この理由は、必須ステップと前提ステップとの整合で前提ステップを変更した場合は、攻撃のシナリオとして完結しているので、オプションステップを残すと不整合が生じるからである。
Next, in step S118, the complementing
次に、ステップS119において、シナリオ生成部5の補完部11は、基本攻撃シナリオ情報に設定されている全てのオプションステップについてステップS116で判定したかを判定する。判定した場合はステップS120へ進む。判定していない場合はステップS121へ進み、次のオプションステップの判定を行なう。
Next, in step S119, the complementing
次に、ステップS120において、シナリオ生成部5の出力部12は、登録された個別攻撃シナリオを出力し、処理を終了する。このステップS120は、ステップS004に相当する。
図15は、個別攻撃シナリオ情報の一例を示す図である。
図15において、個別攻撃シナリオ情報は、攻撃ステップNo.、攻撃分類、攻撃元(機器名)、攻撃対象(機器名)からなる。Next, in step S120, the
FIG. 15 is a diagram illustrating an example of individual attack scenario information.
In FIG. 15, the individual attack scenario information includes an attack step No. , Attack classification, attack source (device name), attack target (device name).
次に、ステップS122は、ステップS117で前提ステップの内容を変更していないと判定した場合のステップである。変更していない場合、ユーザが入力した基本攻撃シナリオ情報が、変更なしに実行できる場合とそうでない場合の両方があるため、その判定を行なう。ステップS122では、判定対象のオプションステップを実行する際に必要となる機能で、かつ前提ステップで必要となった機能と同一ではない機能が、システムに存在するかを判定する。実施の形態1の例では、OA−PCがその機能に当たり、またシステムに存在していない。存在しない場合は、ステップS129、またはステップS130に進む。存在する場合は、ステップS123に進む。 Next, step S122 is a step when it is determined in step S117 that the content of the premise step has not been changed. If there is no change, the basic attack scenario information input by the user has both a case where the basic attack scenario information can be executed without change and a case where the information cannot be changed. In step S122, it is determined whether a function that is necessary when executing the determination target option step and that is not the same as the function required in the premise step exists in the system. In the example of the first embodiment, OA-PC corresponds to the function and does not exist in the system. If not, the process proceeds to step S129 or step S130. When it exists, it progresses to step S123.
次に、ステップS123において、シナリオ生成部5の補完部11は、前提ステップで必要となる機能とオプションステップで必要となる機能が相互に接続されているかを判定する。接続されている場合は、ステップS124へ進み、ユーザから入力された機器名を割り当てて個別攻撃シナリオに登録する。接続されていない場合は、ステップS125へ進み、当該のオプションステップを削除する。
Next, in step S123, the complementing
次に、ステップS126は、ステップS116で判定対象のオプションステップを実行する際に必要となる機能が、前提ステップを実行する際に必要とした機能と同一のものを含まないと判定した場合のステップである。そのような場合は、当該のオプションステップを実行する/しないに関わらず、前提ステップを実行可能であるため、当該のオプションステップを実行する際に必要となる機能がシステムに存在するか否かで個別攻撃シナリオに登録するかを決定する。存在する場合はステップS127へ進む。存在しない場合はステップS125へ進み、当該ステップを削除する。 Next, step S126 is a step when it is determined that the function required when executing the optional step to be determined in step S116 does not include the same function as that required when executing the prerequisite step. It is. In such a case, the prerequisite step can be executed regardless of whether or not the corresponding optional step is executed. Therefore, whether or not the function required for executing the optional step exists in the system is determined. Decide whether to register for individual attack scenarios. When it exists, it progresses to step S127. If it does not exist, the process proceeds to step S125, and the step is deleted.
次に、ステップS127において、シナリオ生成部5の補完部11は、オプションステップを実行する際に必要となる機能が、単数か複数かを判定する。判定方法は、ステップS102と同じであるため記載を省略する。単数である場合は、実行可能と判定し、ステップS124に進み、ユーザから入力された機器名を割り当てて個別攻撃シナリオに登録する。複数である場合は、ステップS128へ進む。
Next, in step S127, the complementing
次に、ステップS128において、シナリオ生成部5の補完部11は、オプションステップを実行する際に必要となる複数の機能が、相互に接続されているかを判定する。判定方法は、ステップS103と同じであるため記載を省略する。接続されている場合は、実行可能と判定し、ステップS124に進み、ユーザから入力された機器名を割り当てて個別攻撃シナリオに登録する。接続されていない場合は、ステップS125へ進み、当該ステップを削除する。
Next, in step S128, the complementing
次に、ステップS129、またはステップS130は、ステップS122でオプションステップで必要となる機能がシステムに存在しないと判定された場合の処理である。処理方法は、ステップS112、ステップS113と同じであるため記載を省略する。 Next, step S129 or step S130 is processing when it is determined in step S122 that the function required for the optional step does not exist in the system. Since the processing method is the same as step S112 and step S113, the description is omitted.
以上のように、本実施の形態1の発明では、訓練対象システムのシステム構成情報を入力として、機器の機能と一連の攻撃ステップで表現した基本攻撃シナリオを、システム構成情報に合致するように書き換えて、訓練対象システムに対する個別の攻撃シナリオである個別攻撃シナリオを生成することにより、システム構成が異なる複数のシステムに対し、同一の訓練シナリオを自動で生成でき、訓練シナリオ開発の工期やコストを抑制できるという効果が得られる。 As described above, in the invention of the first embodiment, the system configuration information of the training target system is used as an input, and the basic attack scenario expressed by the device function and a series of attack steps is rewritten so as to match the system configuration information. In addition, by generating individual attack scenarios that are individual attack scenarios for the training target system, the same training scenario can be automatically generated for multiple systems with different system configurations, and the construction period and cost of training scenario development are reduced. The effect that it can be obtained.
1 訓練装置、2 システム構成入力部、3 シナリオ入力部、4 情報記憶部、5 シナリオ生成部、6 機能情報、7 攻撃分類情報、8 シナリオテンプレート、9 前提ステップ判定情報、10 判定部、11 補完部、12 出力部、20 プロセッサ、21 外部記憶メモリ、22 主記憶メモリ、23 入力インタフェース、24 出力インタフェース、30 操作装置1、31 操作装置2、32 コントローラ、33 制御対象機器1、34 制御対象機器2。
1 training apparatus, 2 system configuration input unit, 3 scenario input unit, 4 information storage unit, 5 scenario generation unit, 6 function information, 7 attack classification information, 8 scenario template, 9 prerequisite step determination information, 10 determination unit, 11 complement Unit, 12 output unit, 20 processor, 21 external storage memory, 22 main storage memory, 23 input interface, 24 output interface, 30
Claims (7)
訓練対象システムを構成する前記機器の情報を示すシステム構成情報が入力され、前記機能情報と前記攻撃分類情報とを対応付けた前記実行ステップを含む基本攻撃シナリオの前記機能情報を、この機能情報に対応する前記システム構成情報の前記機器に書き換えて、前記訓練対象システムの前記システム構成情報に合致した個別の攻撃シナリオである個別攻撃シナリオを生成するシナリオ生成部と
を備える訓練装置。An information storage unit for storing functional information indicating the function of the device and attack classification information indicating a classification of cyber attack execution steps;
System configuration information indicating information on the devices constituting the training target system is input, and the function information of the basic attack scenario including the execution step in which the function information and the attack classification information are associated with each other is used as the function information. A training apparatus comprising: a scenario generation unit that rewrites the corresponding system configuration information to the device and generates an individual attack scenario that is an individual attack scenario that matches the system configuration information of the training target system.
前記シナリオ生成部は、
前記必須ステップが実行可能か否かを判定する判定部を備える請求項1記載の訓練装置。A mandatory step that is essential for training is specified for the execution step included in the basic attack scenario,
The scenario generation unit
The training apparatus according to claim 1, further comprising a determination unit that determines whether or not the essential step is executable.
前記シナリオ生成部は、前記シナリオテンプレートに基づいて前記個別攻撃シナリオを生成する請求項1記載の訓練装置。The information storage unit stores a scenario template that stores the basic attack scenario generated in the past,
The training apparatus according to claim 1, wherein the scenario generation unit generates the individual attack scenario based on the scenario template.
前記シナリオ生成部が、訓練対象システムを構成する前記機器の情報を示すシステム構成情報が入力され、前記機能情報と前記攻撃分類情報とを対応付けた前記実行ステップを含む基本攻撃シナリオの前記機能情報を、この機能情報に対応する前記システム構成情報の前記機器に書き換えて、前記訓練対象システムの前記システム構成情報に合致した個別の攻撃シナリオである個別攻撃シナリオを生成するシナリオ生成ステップを備える訓練方法。A training method for a training apparatus comprising an information storage unit and a scenario generation unit for storing functional information indicating a function of a device and attack classification information indicating a classification of cyber attack execution steps,
The function information of the basic attack scenario including the execution step in which the scenario generation unit is input with system configuration information indicating information on the devices constituting the training target system and associates the function information with the attack classification information. Training method comprising a scenario generation step of generating an individual attack scenario that is an individual attack scenario that matches the system configuration information of the training target system by rewriting the system configuration information corresponding to the function information .
機器の機能を示す機能情報とサイバー攻撃の実行ステップの分類を示す攻撃分類情報とを記憶する情報記憶手段、
訓練対象システムを構成する前記機器の情報を示すシステム構成情報が入力され、前記機能情報と前記攻撃分類情報とを対応付けた前記実行ステップを含む基本攻撃シナリオの前記機能情報を、この機能情報に対応する前記システム構成情報の前記機器に書き換えて、前記訓練対象システムの前記システム構成情報に合致した個別の攻撃シナリオである個別攻撃シナリオを生成するシナリオ生成手段、
として機能させるための訓練プログラム。Computer
Information storage means for storing functional information indicating the function of the device and attack classification information indicating a classification of cyber attack execution steps;
System configuration information indicating information on the devices constituting the training target system is input, and the function information of the basic attack scenario including the execution step in which the function information and the attack classification information are associated with each other is used as the function information. Scenario generation means for rewriting the corresponding system configuration information to the device to generate an individual attack scenario that is an individual attack scenario that matches the system configuration information of the training target system,
Training program to function as.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2016/051505 WO2017126041A1 (en) | 2016-01-20 | 2016-01-20 | Training device, training method, and training program |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2017126041A1 JPWO2017126041A1 (en) | 2018-03-15 |
JP6361837B2 true JP6361837B2 (en) | 2018-07-25 |
Family
ID=59362610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017562203A Active JP6361837B2 (en) | 2016-01-20 | 2016-01-20 | Training apparatus, training method, and training program |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP6361837B2 (en) |
TW (1) | TW201727596A (en) |
WO (1) | WO2017126041A1 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7011911B2 (en) * | 2017-09-04 | 2022-01-27 | 株式会社日立製作所 | Train training system and its control method |
JP7000271B2 (en) * | 2018-07-25 | 2022-01-19 | 株式会社日立製作所 | Vehicle unauthorized access countermeasure device and vehicle unauthorized access countermeasure method |
JP6906715B2 (en) | 2018-11-21 | 2021-07-21 | 三菱電機株式会社 | Scenario generator, scenario generator and scenario generator |
US12061694B2 (en) | 2019-06-20 | 2024-08-13 | Nec Corporation | Security-training support apparatus, security-training support method, and computer readable recording medium |
US20220284108A1 (en) * | 2019-08-23 | 2022-09-08 | Nec Corporation | Security assessment apparatus, security assessment method, and non-transitory computer readable medium |
JP7409116B2 (en) * | 2020-01-30 | 2024-01-09 | 富士通株式会社 | Program, information processing device and cyber exercise control method |
JP7366860B2 (en) | 2020-08-17 | 2023-10-23 | 株式会社日立製作所 | Attack scenario simulation device, attack scenario generation system, and attack scenario generation method |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4733885B2 (en) * | 2001-09-29 | 2011-07-27 | 株式会社東芝 | Vulnerability assessment program, method and system |
JP2007279868A (en) * | 2006-04-04 | 2007-10-25 | Hitachi Electronics Service Co Ltd | Past instance provision system for msp service and past instance provision method for msp service |
WO2015029195A1 (en) * | 2013-08-29 | 2015-03-05 | 三菱電機株式会社 | Simulation device, information generation device, simulation method, and simulation program |
WO2015072041A1 (en) * | 2013-11-18 | 2015-05-21 | 株式会社日立製作所 | Security-measure training system and security-measure training method |
JP5905512B2 (en) * | 2014-06-05 | 2016-04-20 | 日本電信電話株式会社 | Cyber attack exercise system, exercise environment providing method, and exercise environment providing program |
-
2016
- 2016-01-20 WO PCT/JP2016/051505 patent/WO2017126041A1/en active Application Filing
- 2016-01-20 JP JP2017562203A patent/JP6361837B2/en active Active
- 2016-02-26 TW TW105105827A patent/TW201727596A/en unknown
Also Published As
Publication number | Publication date |
---|---|
JPWO2017126041A1 (en) | 2018-03-15 |
WO2017126041A1 (en) | 2017-07-27 |
TW201727596A (en) | 2017-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6361837B2 (en) | Training apparatus, training method, and training program | |
JP6307453B2 (en) | Risk assessment system and risk assessment method | |
US9372785B2 (en) | Identifying implicit assumptions associated with a software product | |
EP3490223B1 (en) | System and method for simulating and foiling attacks on a vehicle on-board network | |
US20200201689A1 (en) | System and method for determining a process flow of a software application and for automatically generating application testing code | |
CN114579427A (en) | Fuzzing a software system | |
WO2015025694A1 (en) | Scoring device and method for scoring security threat | |
JP6551715B2 (en) | Expandable device | |
JP6614466B2 (en) | Capability grant data generator | |
US8838430B1 (en) | Detection of memory access violation in simulations | |
US20170091462A1 (en) | Software development system in system development based on model-based method | |
US10830818B2 (en) | Ensuring completeness of interface signal checking in functional verification | |
GB2524737A (en) | A system and method for testing a workflow | |
US11765196B2 (en) | Attack scenario simulation device, attack scenario generation system, and attack scenario generation method | |
JP2020013571A (en) | Application update method, application updating device, electronic equipment, and computer-readable storage medium | |
JP7115207B2 (en) | Learning program, learning method and learning device | |
CN109558207A (en) | The system and method for carrying out the log of the anti-virus scan of file are formed in virtual machine | |
US20110224954A1 (en) | Modelling of systems | |
Qin | Analysis of a model for computer virus transmission | |
JP6634055B2 (en) | System and method for preventing unfair evaluation of an application by a user | |
JP2017522639A5 (en) | ||
CN110928536A (en) | Graphical programming product online evaluation device, system and method | |
JPWO2021059471A5 (en) | Security risk analysis support devices, methods, and programs | |
JP5758311B2 (en) | Test code generation device, test code generation method, test code generation program | |
KR102440254B1 (en) | System for testing electronic control unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171010 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180529 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180611 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6361837 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |