WO2017126041A1 - 訓練装置、訓練方法、及び訓練プログラム - Google Patents

訓練装置、訓練方法、及び訓練プログラム Download PDF

Info

Publication number
WO2017126041A1
WO2017126041A1 PCT/JP2016/051505 JP2016051505W WO2017126041A1 WO 2017126041 A1 WO2017126041 A1 WO 2017126041A1 JP 2016051505 W JP2016051505 W JP 2016051505W WO 2017126041 A1 WO2017126041 A1 WO 2017126041A1
Authority
WO
WIPO (PCT)
Prior art keywords
attack
information
scenario
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.)
Ceased
Application number
PCT/JP2016/051505
Other languages
English (en)
French (fr)
Inventor
健志 浅井
河内 清人
知孝 祢宜
泉 幸雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to PCT/JP2016/051505 priority Critical patent/WO2017126041A1/ja
Priority to JP2017562203A priority patent/JP6361837B2/ja
Priority to TW105105827A priority patent/TW201727596A/zh
Publication of WO2017126041A1 publication Critical patent/WO2017126041A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Definitions

  • the present invention relates to a training apparatus that trains an operator engaged in a plant or factory so that the operator can take an appropriate response when an accident or abnormal situation occurs.
  • Patent Document 1 a user (training instructor) is a simulation that adjusts the difficulty level of training by changing the number of terminals of the system to be trained and its IP address. An apparatus is disclosed.
  • the present invention has been made to solve the above-described problems, and an object thereof 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.
  • 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.
  • 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.
  • FIG. 2 is a diagram illustrating an example of a hardware configuration of a training device 1 according to Embodiment 1.
  • FIG. 3 is a flowchart showing a flow of operations of the training apparatus 1 according to the first embodiment. It is a figure which shows an example of the training object system used in Embodiment 1.
  • FIG. It is a figure which shows an example of the system configuration information. It is a figure which shows an example of the function information. It is a figure which shows an example of the system configuration information. It is a figure which shows an example of the attack classification information 7.
  • FIG. It is a figure which shows an example of basic attack scenario information.
  • FIG. 4 is a flowchart (part 1) showing a flow of operations of a scenario generation unit 5; 6 is a flowchart (part 2) illustrating the flow of operations of the scenario generation unit 5; 6 is a flowchart (part 3) illustrating a flow of operations of the scenario generation unit 5; 10 is a flowchart (part 4) showing a flow of operations of the scenario generation unit 5; It is a figure which shows an example of the premise step determination information 9. FIG. It is a figure which shows an example of individual attack scenario information.
  • FIG. 1 is a diagram illustrating a configuration example of the training apparatus 1 according to the first embodiment.
  • the training apparatus 1 includes a system configuration input unit 2, a scenario input unit 3, an information storage unit 4, and a scenario generation unit 5.
  • the system configuration input unit 2 displays a list of functional information 6 stored in the information storage unit 4 to a user (teacher) or a training device developer (hereinafter collectively referred to as a user). This is an input interface for inputting system configuration information such as a device name and network name existing in the system in association with the displayed function information 6.
  • the scenario input unit 3 displays the function information 6, the attack classification information 7, and the scenario template 8 stored in the information storage unit 4 to the user, and is a basic attack scenario that the user wants the trainer to train. This is an input interface for inputting attack scenario information.
  • the information storage unit 4 is a memory for storing function information 6, attack classification information 7, scenario template 8, and premise step determination information 9.
  • the scenario generation unit 5 uses the system configuration information input by the system configuration input unit 2, the basic attack scenario information input by the scenario input unit 3, and the premise step determination information 9 stored in the information storage unit 4. To generate individual attack scenarios for individual system configurations.
  • the scenario generation unit 5 includes a determination unit 10, a complement unit 11, and an output unit 12.
  • FIG. 2 is a diagram illustrating an example of a hardware configuration of the training apparatus 1 according to the first embodiment.
  • the training device 1 is a computer, and each component of the training device 1 can be realized by a program.
  • a processor 20 As a hardware configuration of the training apparatus 1, a processor 20, an external storage memory 21, a main storage memory 22, an input interface 23, and an output interface 24 are connected to the bus.
  • 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.
  • the processor 20 is a CPU (Central Processing Unit) that executes a program.
  • CPU Central Processing Unit
  • the external storage memory 21 is, for example, a ROM (Read Only Memory), a flash memory, a hard disk device, or the like.
  • the main memory 22 is, for example, a RAM (Random Access Memory).
  • the information storage unit 4 is realized by the external storage memory 21 or the main storage memory 22. Alternatively, the information storage unit 4 may be realized by both the external storage memory 21 or the main storage memory 22.
  • the input interface 23 is a port connected to input devices such as a mouse, a keyboard, and a touch panel. Specifically, the input interface 23 is a USB (Universal Serial Bus) terminal, for example. The input interface 23 may be a port connected to a LAN (Local Area Network).
  • LAN Local Area Network
  • the output interface 24 is a port to which a cable of an output device such as a display is connected.
  • the output interface is, for example, a USB terminal.
  • the display is an LCD (Liquid Crystal Display).
  • 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 configuration input unit 2, the scenario input unit 3, the information storage unit 4, and the scenario generation unit 5 that constitute the training apparatus 1.
  • an operating system 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.
  • information and data stored in the information storage unit 4 and information, data, signal values, and variable values indicating processing results of the system configuration input unit 2, the scenario input unit 3, and the scenario generation unit 5 are stored in the main memory 22. Stored as a file.
  • the hardware configuration of the training apparatus 1 is not limited to the configuration illustrated in FIG. 2 and may be other configurations. Good.
  • FIG. 3 is a flowchart showing a flow of operation of the training apparatus 1 according to the first embodiment.
  • step S001 the user inputs system configuration information, which is information related to the configuration of a system to be trained, using the system configuration input unit 2.
  • FIG. 4 is a diagram illustrating an example of a training target system used in the first embodiment.
  • the training target system includes a network 1 and a network 2.
  • the operating device 1 (30) and the operating device 2 (31) are connected to the network 1, and the operating device 2 (31), the controller 32, the control target device 1 (33), and the control target device 2 ( 34) is connected.
  • the user inputs a device name existing in the training target system through the system configuration input unit 2.
  • the training apparatus 1 displays a list of functions of the function information 6 stored in advance in the information storage unit 4 for each input device name, and associates the device name with the function to the user. Be able to do it.
  • the training apparatus 1 outputs the system configuration information 1 in which the device name and the function are associated with each other.
  • FIG. 5 is a diagram illustrating an example of the system configuration information 1.
  • the system configuration information 1 includes a device name input by the user and a function selected by the user.
  • 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 information storage unit 4 and a description thereof.
  • the explanation of the function is information for performing input support for the user, and therefore may not be necessary.
  • the training device 1 displays the device name input by the user for the input network name, and allows the user to associate the network name with the device name connected to the network. As a result, the training apparatus 1 outputs system configuration information 2.
  • FIG. 7 is a diagram illustrating an example of the system configuration information 2.
  • the system configuration information 2 includes a network name (in the figure, “network” is indicated by “NW”), connected devices 1 to connected devices 4.
  • step S002 the user uses the scenario input unit 3 to create a basic attack scenario, which is a content that the trainer wants to train, by specifying a series of attack steps.
  • the training device 1 displays the attack classification information 7 obtained by dividing the attack scenario in units of attack classification, and the function information 6 serving as the attack source and the attack target, and can associate the attack classification with the device name to the user. Like that.
  • the attack classification information 7 is information stored in advance in the information storage unit 4.
  • 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 a 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.
  • this attack step is called an essential step.
  • the training device 1 outputs basic attack scenario information.
  • FIG. 8 is a diagram illustrating an example of the attack classification information 7.
  • the attack classification information 7 includes an attack classification.
  • FIG. 9 is a diagram illustrating an example of basic attack scenario information.
  • basic attack scenario information includes attack step numbers. , Attack classification, attack source (function), attack target (function), and information indicating whether it is essential.
  • 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 information storage unit 4, and this step (S002) It may be loaded at the time of execution.
  • the user may be able to appropriately specify information indicating the attack classification, attack source, attack target, and necessity.
  • step S003 the scenario generation unit 5 generates an individual attack scenario according to the system configuration input by the user. A detailed processing flow of step S003 will be described later.
  • step S004 the scenario generation unit 5 outputs the generated individual attack scenario and ends the process.
  • FIG. 10 is a flowchart (part 1) illustrating the flow of operations of the scenario generation unit 5.
  • FIG. 11 is a flowchart (part 2) of the operation flow of the scenario generation unit 5.
  • FIG. 12 is a flowchart (part 3) illustrating the flow of the operation of the scenario generation unit 5.
  • FIG. 13 is a flowchart (part 4) of the operation flow of the scenario generation unit 5.
  • step S101 the determination unit 10 of the scenario generation unit 5 determines whether or not the function required in the essential step exists in the system.
  • the determination unit 10 refers to the basic attack scenario information, confirms the function required when executing the essential step, and determines whether a device corresponding to the function is registered in the system configuration information 1.
  • step S101 the process proceeds to step S102. If it is determined in step S101 that it does not exist, the process proceeds to step S106, and an individual attack scenario for training cannot be generated, and the process ends.
  • step S102 the determination unit 10 of the scenario generation unit 5 determines whether the function required when executing the essential step is singular or plural. For example, the attack step no. In 1, the required function is singular, and in other attack steps, there are multiple functions. If the required function is singular, the process proceeds to step S104. If there are a plurality of necessary functions, the process proceeds to step S103.
  • step S103 the determination unit 10 of the scenario generation unit 5 determines whether or not a plurality of functions necessary for executing the essential steps are connected to each other. This process is determined by associating the functions of the system configuration information 1 with the names of devices connected to each other in the system configuration information 2. If it is connected, the process proceeds to step S104. When not connected, it progresses to step S106, and the process is complete
  • step S104 the determination unit 10 of the scenario generation unit 5 determines a step that is a prerequisite when executing the essential step.
  • premise step determination information 9 is used.
  • FIG. 14 is a diagram illustrating an example of the premise step determination information 9.
  • the prerequisite step determination information 9 is obtained by associating the attack classification of the essential step with the attack classification necessary for the prerequisite step.
  • the essential step is unauthorized communication from EWS, it can be seen from FIG. 14 that infection to EWS is necessary as a premise.
  • the process proceeds to step S105.
  • step S105 the determination unit 10 of the scenario generation unit 5 determines whether a step corresponding to the precondition determined in step S104 exists in the basic attack scenario information.
  • the attack step No. Since there is an infection from HMI to EWS in No. 3, it is determined in step S105 that it exists, and the process proceeds to step S107.
  • a step that is a premise of an essential step in the attack steps described in the basic attack scenario information is referred to as a premise step.
  • a step that is neither an essential step nor a prerequisite step is called an optional step. If it is determined in step S105 that it does not exist, the process proceeds to step S106, and an individual attack scenario for training cannot be generated, and the process ends.
  • step S107 the determination unit 10 of the scenario generation unit 5 determines whether or not a function necessary for executing the premise step exists in the system. Since the determination method is the same as step S101 in the case of the essential step, the description is omitted. If it is determined in step S107 that it exists, the process proceeds to step S108. If it is determined in step S107 that it does not exist, the process proceeds to step S112 or step S113.
  • step S108 the determination unit 10 of the scenario generation unit 5 determines whether the function necessary for executing the premise step is singular or plural. If the required function is singular, the process proceeds to step S110. If there are a plurality of necessary functions, the process proceeds to step S109.
  • step S109 the determination unit 10 of the scenario generation unit 5 determines whether or not the functions necessary for executing the premise step are connected to each other. Since the determination method is the same as step S103, the description is omitted. If it is connected in step S109, the process proceeds to step S110. If not connected in step S109, the process proceeds to step S114 or step S115.
  • attack step No. which is a premise step, is performed. 3 is infection from HMI to EWS. Since the system configuration information 2 indicates that the operation terminal 2 and the controller are connected, the process proceeds to step S110.
  • step S110 the determination unit 10 of the scenario generation unit 5 registers the function of the essential step and the prerequisite step in the individual attack scenario by changing the device name input by the user.
  • the essential steps and the prerequisite steps are in a state that can be executed in the training target system. Therefore, in step S110, the device name input by the user is assigned to the function required in the essential step and the prerequisite step, and is registered in the individual attack scenario, and the process proceeds to step S111.
  • attack step No. which is an essential step. 4 is the controller
  • the attack target is the control target device 1
  • the operation terminal 2 is set as the attack source 3 and the controller is set as the attack target and registered.
  • step S111 the determination unit 10 of the scenario generation unit 5 determines whether the determination in step S101 has been performed for all the essential steps set in the basic attack scenario information. When it determines, it progresses to step S116, and when not determining, it progresses to step S101.
  • step S112 and step S113 the complementing unit 11 of the scenario generation unit 5 performs processing in the case where the function required in the premise step does not exist in the system in step S107.
  • the function that becomes the attack source in the premise step exists in step S112 and step S113. This is the case.
  • the premise step is required to make the attack as a result, that is, the attack target. Therefore, the content of the step is changed so that the same result as the result of the premise step is obtained from the system configuration information 1, the system configuration information 2, and the attack classification information 7.
  • the premise step is infection from HMI to EWS, and there is no HMI.
  • 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.
  • 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.
  • Step S113 is processing when the attack classification is internal investigation.
  • the complementing unit 11 of the scenario generation unit 5 performs a step of performing an internal investigation from a function connected to the EWS, and further adds a step of infecting the function.
  • Requirement steps can be executed by changing the contents of the prerequisite steps as described above.
  • operation of training device 1 is not restricted to this, and other attacks may be performed.
  • step S114 and step S115 the complementing unit 11 of the scenario generation unit 5 performs processing when the system has the functions necessary for the premise step in step S107 but they are not connected to each other. Do.
  • step S114 the complementing unit 11 of the scenario generating unit 5 assumes secondary infection via a function connected to the target function. If the function does not exist, it is directly infected.
  • the complement unit 11 extracts the premise step from the basic attack scenario information.
  • the complementing unit 11 selects a device having the attack target function of the premise step from the system configuration information 1, is interconnected with this from the system configuration information 2, and also interacts with the attack source function of the premise step.
  • an intermediate device it is a step of performing secondary infection via the intermediate device. Specifically, it is assumed that the infection progresses in the order of the attack source of the premise step ⁇ the intermediate device ⁇ the attack target of the premise step. If there is no intermediate device, that is, if the path connecting the attack source of the premise step and the attack target of the premise step cannot be connected through any path, the step of directly infecting the attack target is performed as in step S112 And
  • 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.
  • 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.
  • the operation of the training apparatus 1 is not limited to this, and other attacks are performed. Also good.
  • step S116 and subsequent steps processing for registering or deleting the optional step in the individual attack step is performed.
  • the training device 1 refers to the basic attack scenario information and determines the attack step number. Judgment is made in the order of the option step with the smallest. When the contents of the premise step are changed in order to execute the essential step, it is necessary to match with the optional step.
  • step S116 the complement unit 11 of the scenario generation unit 5 selects the option that is the current determination target. It is determined whether the function required when executing the step includes the same function as that required when executing the prerequisite step. When the same thing is included, it progresses to step S117, and when it does not include the same thing, it progresses to step S126.
  • step S117 the complementing unit 11 of the scenario generating unit 5 determines whether or not the content of the step has been changed when determining the prerequisite step.
  • the attack step No. of the original basic attack scenario information In the case of infection from HMI 3 to EWS, HMI was registered as operation terminal 2 and EWS as a controller as it was. Therefore, the content of the premise step is not changed and the process proceeds to step S122. If the contents of the prerequisite step are changed, the process proceeds to step S118.
  • step S118 the complement unit 11 of the scenario generation unit 5 deletes the optional step in which the content of the prerequisite step is changed.
  • the reason for this is that if the prerequisite step is changed by matching the required step and the prerequisite step, the scenario is completed as an attack scenario, so that an inconsistency occurs if the optional step is left.
  • step S119 the complementing unit 11 of the scenario generation unit 5 determines whether all the optional steps set in the basic attack scenario information have been determined in step S116. When it determines, it progresses to step S120. If not, the process proceeds to step S121, and the next optional step is determined.
  • step S120 the output unit 12 of the scenario generation unit 5 outputs the registered individual attack scenario and ends the process.
  • step S120 corresponds to step S004.
  • FIG. 15 is a diagram illustrating an example of individual attack scenario information.
  • the individual attack scenario information includes an attack step No. , Attack classification, attack source (device name), attack target (device name).
  • step S122 is a step when it is determined in step S117 that the contents of the prerequisite step have 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.
  • 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, the OA-PC corresponds to its 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.
  • step S123 the complementing unit 11 of the scenario generation unit 5 determines whether the function required in the premise step and the function required in the optional step are connected to each other. If it is connected, the process proceeds to step S124, and the device name input by the user is assigned and registered in the individual attack scenario. If not connected, the process proceeds to step S125, and the option step is deleted.
  • 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.
  • step S127 the complementing unit 11 of the scenario generating unit 5 determines whether the function necessary for executing the optional step is singular or plural. Since the determination method is the same as step S102, the description is omitted. If it is singular, it is determined that it can be executed, and the process proceeds to step S124 where the device name input by the user is assigned and registered in the individual attack scenario. If there are more than one, the process proceeds to step S128.
  • step S128 the complementing unit 11 of the scenario generating unit 5 determines whether or not a plurality of functions necessary for executing the optional step are connected to each other. Since the determination method is the same as step S103, the description is omitted. If it is connected, it is determined that execution is possible, the process proceeds to step S124, and the device name input by the user is assigned and registered in the individual attack scenario. When not connected, it progresses to step S125 and deletes the said step.
  • 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.
  • 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.
  • 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 training device 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 operating device 1, 31 operating device 2, 32 controller, 33 controlled device 1, 34 controlled device 2.

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)
  • Computer And Data Communications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本発明は、プラントや工場で従事する運転員が、事故や異常事態発生時に適切な対応をとれるように、運転員に訓練を行なう訓練装置に関する。 訓練装置は、機器の機能を示す機能情報とサイバー攻撃の実行ステップの分類を示す攻撃分類情報とを記憶する情報記憶部と、訓練対象システムを構成する機器の情報を示すシステム構成情報が入力され、機能情報と攻撃分類情報とを対応付けた実行ステップを含む基本攻撃シナリオの機能情報を、この機能情報に対応するシステム構成情報の機器に書き換えて、訓練対象システムのシステム構成情報に合致した個別の攻撃シナリオである個別攻撃シナリオを生成するシナリオ生成部とを備える。

Description

訓練装置、訓練方法、及び訓練プログラム
 本発明は、プラントや工場で従事する運転員が、事故や異常事態発生時に適切な対応をとれるように、運転員に訓練を行なう訓練装置に関する。
 産業制御システムのプラントや工場で従事する運転員が、事故や異常事態発生時に適切な対応をとれるように、運転員に訓練を行なう必要がある。特に近年では、産業制御システムがインターネットと接続されることが多くなり、これに伴い産業制御システムに対するサイバー攻撃が増加している。そのため、運転員に対して、産業制御システムがサイバー攻撃を受けた際の適切な対応を訓練しておく必要がある。このようなサイバー攻撃の訓練に関する従来技術として、例えば特許文献1では、ユーザ(訓練する教官)が、訓練対象のシステムの端末数やそのIPアドレスを変更することで訓練の難易度を調整する模擬装置が開示されている。
WO2015-029464
 訓練装置を実現するためには、プラントや工場の本番環境を模擬したシステムを訓練装置上に構築し、その上で事故や異常事態を発生させる必要がある。訓練シナリオは、個々のプラントや工場のシステム構成に依存するため、サイバー攻撃が原因となって発生する事故や異常事態のように頻繁に新しいシナリオが発生する場合は、個々のシステム毎に訓練シナリオを頻繁に開発する必要がある。特に、本番環境を構成する装置の機能やネットワーク構成などのシステム構成が異なるシステムに対しては、同一の訓練シナリオであっても、このシステムに即したシナリオを一から開発する必要があり、開発の工期やコストが増大するという課題がある。
 この発明は上記の課題を解決するためになされたもので、システム構成が異なる複数のシステムに対し、同一の訓練シナリオを自動で生成できる汎用的な訓練装置を提供することを目的とする。
 上記で述べた課題を解決するため、本発明の訓練装置は、機器の機能を示す機能情報とサイバー攻撃の実行ステップの分類を示す攻撃分類情報とを記憶する情報記憶部と、訓練対象システムを構成する機器の情報を示すシステム構成情報が入力され、機能情報と攻撃分類情報とを対応付けた実行ステップを含む基本攻撃シナリオの機能情報を、この機能情報に対応するシステム構成情報の機器に書き換えて、訓練対象システムのシステム構成情報に合致した個別の攻撃シナリオである個別攻撃シナリオを生成するシナリオ生成部とを備える。
 本発明によれば、訓練対象システムのシステム構成情報を入力として、機器の機能と一連の攻撃ステップで表現した基本攻撃シナリオを、システム構成情報に合致するように書き換えて、訓練対象システムに対する個別の攻撃シナリオである個別攻撃シナリオを生成することにより、システム構成が異なる複数のシステムに対し、同一の訓練シナリオを自動で生成でき、訓練シナリオ開発の工期やコストを抑制できるという効果が得られる。
実施の形態1に係る訓練装置1の一構成例を示す図である。 実施の形態1に係る訓練装置1のハードウェア構成の一例を示す図である。 実施の形態1に係る訓練装置1の動作の流れを示すフローチャートである。 実施の形態1で用いる訓練対象システムの一例を示す図である。 システム構成情報1の一例を示す図である。 機能情報6の一例を示す図である。 システム構成情報2の一例を示す図である。 攻撃分類情報7の一例を示す図である。 基本攻撃シナリオ情報の一例を示す図である。 シナリオ生成部5の動作の流れを示すフローチャート(その1)である。 シナリオ生成部5の動作の流れを示すフローチャート(その2)である。 シナリオ生成部5の動作の流れを示すフローチャート(その3)である。 シナリオ生成部5の動作の流れを示すフローチャート(その4)である。 前提ステップ判定情報9の一例を示す図である。 個別攻撃シナリオ情報の一例を示す図である。
実施の形態1.
 図1は、実施の形態1に係る訓練装置1の一構成例を示す図である。
 図1において、訓練装置1は、システム構成入力部2、シナリオ入力部3、情報記憶部4、シナリオ生成部5を備えている。
 システム構成入力部2は、情報記憶部4に記憶されている機能情報6のリストを、ユーザ(教官)または訓練装置開発者(以下、両者をまとめてユーザと呼ぶ)に表示し、ユーザが、表示された機能情報6と対応付けて、システムに存在する機器名とネットワーク名などのシステム構成情報を入力するための入力インタフェースである。
 シナリオ入力部3は、情報記憶部4に記憶されている機能情報6、攻撃分類情報7、シナリオテンプレート8をユーザに表示し、ユーザが、訓練者に訓練させたい基本的な攻撃シナリオである基本攻撃シナリオ情報を入力するための入力インタフェースである。
 情報記憶部4は、機能情報6、攻撃分類情報7、シナリオテンプレート8、前提ステップ判定情報9を記憶するメモリである。
 シナリオ生成部5は、システム構成入力部2により入力されたシステム構成情報と、シナリオ入力部3により入力された基本攻撃シナリオ情報と、情報記憶部4に記憶された前提ステップ判定情報9とを用いて、個々のシステム構成向けの個別攻撃シナリオを生成する。シナリオ生成部5は、判定部10、補完部11、出力部12を備えている。
 次に、訓練装置1のハードウェア構成を説明する。
 図2は、実施の形態1に係る訓練装置1のハードウェア構成の一例を示す図である。
 訓練装置1はコンピュータであり、訓練装置1の各構成要素をプログラムで実現することができる。訓練装置1のハードウェア構成としては、バスに、プロセッサ20、外部記憶メモリ21、主記憶メモリ22、入力インタフェース23、出力インタフェース24が接続されている。
 プロセッサ20は、バスを介して他のハードウェアと接続され、これら他のハードウェアを制御する。プロセッサ20は、プロセッシングを行なうIC(Integrated Circuit)である。プロセッサ20は、具体的には、プログラムを実行するCPU(Central Processing Unit)である。
 外部記憶メモリ21は、例えばROM(Read Only Memory)やフラッシュメモリ、ハードディスク装置等である。
 主記憶メモリ22は、例えばRAM(Random Access Memory)等である。情報記憶部4は、外部記憶メモリ21、または主記憶メモリ22により実現される。あるいは、情報記憶部4は、外部記憶メモリ21、または主記憶メモリ22の両方により実現されてもよい。
 入力インタフェース23は、マウス、キーボード、タッチパネルといった入力装置と接続されるポートである。入力インタフェース23は、具体的には、例えばUSB(Universal Serial Bus)端子である。なお、入力インタフェース23は、LAN(Local Area Network)と接続されるポートであってもよい。
 出力インタフェース24は、ディスプレイといった出力装置のケーブルが接続されるポートである。出力インタフェースは、例えば、USB端子である。ディスプレイは、具体的には、LCD(Liquid Crystal Display)である。
 プログラムは、通常は外部記憶メモリ21に記憶されており、主記憶メモリ22にロードされた状態で、順次、プロセッサ20に読み込まれ、実行される。このプログラムは、訓練装置1を構成するシステム構成入力部2、シナリオ入力部3、情報記憶部4、シナリオ生成部5として説明している機能を実現するプログラムである。
 更に、外部記憶メモリ21には、オペレーティングシステム(OS)も記憶されており、OSの少なくとも一部が主記憶メモリ22にロードされ、プロセッサ20は、OSを実行しながら、上記プログラムを実行する。
 また、情報記憶部4が記憶する情報やデータ、及びシステム構成入力部2、シナリオ入力部3、シナリオ生成部5の処理の結果を示す情報やデータや信号値や変数値が、主記憶メモリ22にファイルとして記憶されている。
 なお、図2の構成は、あくまでも訓練装置1のハードウェア構成の一例を示すものであり、訓練装置1のハードウェア構成は、図2に記載の構成に限らず、他の構成であってもよい。
 次に、実施の形態1に係る訓練装置1の動作を説明する。
 図3は、実施の形態1に係る訓練装置1の動作の流れを示すフローチャートである。
 まず、ステップS001において、ユーザはシステム構成入力部2により、訓練対象となるシステムの構成に関する情報であるシステム構成情報を入力する。
 図4は、実施の形態1で用いる訓練対象システムの一例を示す図である。
 図4において、訓練対象システムは、ネットワーク1とネットワーク2を備える。ネットワーク1には、操作装置1(30)と操作装置2(31)が接続され、ネットワーク2には、操作装置2(31)、コントローラ32、制御対象装置1(33)、制御対象装置2(34)が接続されている。
 ユーザは、システム構成入力部2により、訓練対象システムに存在する機器名を入力する。訓練装置1は、入力された各機器名に対して、情報記憶部4に事前に記憶されている機能情報6の機能のリストをユーザに表示し、ユーザに機器名と機能との対応付けを行なえるようにする。ユーザが、入力した機器名に対して、表示された機能を選択した結果、訓練装置1は、機器名と機能とが対応付けられたシステム構成情報1を出力する。
 図5は、システム構成情報1の一例を示す図である。
 図5において、システム構成情報1は、ユーザが入力した機器名、ユーザが選択した機能からなる。
 図6は、機能情報6の一例を示す図である。
 機能情報6は、情報記憶部4に事前に記憶された機能と、その説明からなる。機能の説明は、ユーザに対する入力支援を行なうための情報であるため、なくてもよい。
 次に、ユーザは、システム構成入力部2により、訓練対象システムに存在するネットワーク名を入力する。訓練装置1は、入力されたネットワーク名に対して、ユーザが入力した機器名を表示し、ユーザに、ネットワーク名とそのネットワークに接続された機器名の対応付けを行なえるようにする。その結果、訓練装置1は、システム構成情報2を出力する。
 図7は、システム構成情報2の一例を示す図である。
 図7において、システム構成情報2は、ネットワーク名(図中、「ネットワーク」は「NW」で示す)、接続された機器1~接続された機器4からなる。
 次に、ステップS002において、ユーザはシナリオ入力部3により、訓練者に訓練させたい内容である基本攻撃シナリオを、一連の攻撃ステップを指定して作成する。
 訓練装置1は、攻撃シナリオを攻撃の分類の単位で分割した攻撃分類情報7と、攻撃元及び攻撃対象となる機能情報6を表示し、ユーザに、攻撃分類と機器名の対応付けを行なえるようにする。攻撃分類情報7は、情報記憶部4に事前に記憶された情報である。
 さらに、ユーザは、一連の攻撃ステップの中から、訓練者に訓練させたい基本攻撃シナリオの特徴が顕著に表れた攻撃ステップを指定する。ここで指定した攻撃ステップは、訓練対象システム個々のシステム構成に沿った個別攻撃シナリオを作成する際に、必ず設定される攻撃ステップである。以降、本攻撃ステップを必須ステップと呼ぶ。上記の結果、訓練装置1は、基本攻撃シナリオ情報を出力する。
 図8は、攻撃分類情報7の一例を示す図である。
 図8において、攻撃分類情報7は、攻撃分類からなる。
 図9は、基本攻撃シナリオ情報の一例を示す図である。
 図9において、基本攻撃シナリオ情報は、攻撃ステップNo.、攻撃分類、攻撃元(機能)、攻撃対象(機能)、必須か否かを示す情報からなる。
 なお、本実施の形態では、基本攻撃シナリオ情報を一から作成したが、過去に生成した基本攻撃シナリオ情報をテンプレートとして、情報記憶部4のシナリオテンプレート8に記憶しておき、本ステップ(S002)の実行時にロードすることとしてもよい。また、その際は、ユーザが攻撃分類、攻撃元、攻撃対象、必須か否かを示す情報を適宜指定できるようにしてもよい。
 次に、ステップS003において、シナリオ生成部5は、ユーザに入力されたシステム構成に沿った個別攻撃シナリオを生成する。ステップS003の詳細な処理フローは後述する。
 次に、ステップS004において、シナリオ生成部5は、生成した個別攻撃シナリオを出力し、処理を終了する。
 次に、ステップS003の詳細な処理フローを、図10~図13を参照して説明する。
 図10は、シナリオ生成部5の動作の流れを示すフローチャート(その1)である。
 図11は、シナリオ生成部5の動作の流れを示すフローチャート(その2)である。
 図12は、シナリオ生成部5の動作の流れを示すフローチャート(その3)である。
 図13は、シナリオ生成部5の動作の流れを示すフローチャート(その4)である。
 まず、ステップS101において、シナリオ生成部5の判定部10は、必須ステップで必要となる機能はシステムに存在するか否かを判定する。判定部10は、基本攻撃シナリオ情報を参照して、必須ステップを実行する際に必要となる機能を確認し、当該機能に対応する機器がシステム構成情報1に登録されているかを判定する。
 例えば、図9の基本攻撃シナリオ情報では、攻撃ステップNo.4に必須ステップが設定されており、これはEWSからPLCへ不正通信を行なう攻撃である。したがって、必須ステップで必要となる機能は、EWSとPLCであり、判定部10は、図5のシステム構成情報1から、EWSとPLCの両機能とも当該システムに存在していると判定することができる。ステップS101で存在すると判定した場合は、ステップS102へと進む。また、ステップS101で存在しないと判定した場合は、ステップS106へ進み、訓練のための個別攻撃シナリオは生成不可として処理を終了する。
 次に、ステップS102において、シナリオ生成部5の判定部10は、必須ステップを実行する際に必要となる機能は、単数か複数かを判定する。例えば、図9の攻撃ステップNo.1では、必要な機能は単数であり、それ以外の攻撃ステップでは複数である。必要な機能が単数である場合は、ステップS104へ進む。必要な機能が複数である場合は、ステップS103へ進む。
 次に、ステップS103において、シナリオ生成部5の判定部10は、必須ステップを実行する際に必要となる複数の機能は、相互に接続されているか否かを判定する。この処理は、システム構成情報2で相互に接続されている機器名に対し、システム構成情報1の機能を対応させて判定する。接続されている場合は、ステップS104へ進む。接続されていない場合は、ステップS106へ進み、訓練のための個別攻撃シナリオは生成不可として処理を終了する。
 次に、ステップS104において、シナリオ生成部5の判定部10は、必須ステップを実行する際に前提となるステップを判定する。この判定には、前提ステップ判定情報9を使用する。
 図14は、前提ステップ判定情報9の一例を示す図である。
 図14において、前提ステップ判定情報9は、必須ステップの攻撃分類と、その前提となるステップで必要となる攻撃分類を対応させたものである。実施の形態1の例では、必須ステップがEWSからの不正通信であるので、図14より、前提としてEWSへの感染が必要であることが分かる。このようにして前提となるステップを判定した後は、ステップS105へ進む。
 次に、ステップS105において、シナリオ生成部5の判定部10は、ステップS104で判定した前提となるステップに相当するステップが、基本攻撃シナリオ情報に存在するかを判定する。実施の形態1の例では、攻撃ステップNo.3にHMIからEWSへの感染があるので、ステップS105で存在すると判定し、ステップS107へ進む。以降、基本攻撃シナリオ情報に記載された攻撃ステップで、必須ステップの前提となるステップを前提ステップと呼ぶ。また、必須ステップでも前提ステップでもないステップをオプションステップと呼ぶ。ステップS105で存在しないと判定された場合は、ステップS106へ進み、訓練のための個別攻撃シナリオは生成不可として処理を終了する。
 次に、ステップS107において、シナリオ生成部5の判定部10は、前提ステップを実行する際に必要となる機能がシステムに存在するかを判定する。判定方法は、必須ステップの場合のステップS101と同じであるので記載を省略する。ステップS107で存在すると判断した場合はステップS108へと進む。ステップS107で存在しないと判断した場合は、ステップS112、またはステップS113へと進む。
 次に、ステップS108において、シナリオ生成部5の判定部10は、前提ステップを実行する際に必要となる機能は、単数か複数かを判定する。必要な機能が単数である場合は、ステップS110へ進む。必要な機能が複数である場合は、ステップS109へ進む。
 次に、ステップS109において、シナリオ生成部5の判定部10は、前提ステップを実行する際に必要となる機能が、相互に接続されているか否かを判定する。判定方法は、ステップS103と同じであるため記載を省略する。ステップS109で接続されている場合は、ステップS110へ進む。ステップS109で接続されていない場合は、ステップS114、またはステップS115へと進む。実施の形態1の例では、前提ステップである攻撃ステップNo.3は、HMIからEWSへの感染である。システム構成情報2より、操作端末2とコントローラが接続されていることが分かるため、ステップS110へ進む。
 次に、ステップS110において、シナリオ生成部5の判定部10は、必須ステップと前提ステップの機能をユーザの入力した機器名に変えて個別攻撃シナリオに登録する。ステップS110までの処理で、必須ステップと前提ステップが当該の訓練対象システムで実行可能な状態となっている。そこでステップS110では、必須ステップと前提ステップで必要となる機能に、ユーザから入力された機器名を割り当てて個別攻撃シナリオに登録し、ステップS111へと進む。実施の形態1の例では、必須ステップである攻撃ステップNo.4の攻撃元にコントローラ、攻撃対象に制御対象機器1、前提ステップである攻撃ステップNo.3の攻撃元に操作端末2、攻撃対象にコントローラを設定して登録する。
 次に、ステップS111において、シナリオ生成部5の判定部10は、基本攻撃シナリオ情報に設定されている全ての必須ステップについて、ステップS101の判定を行なったか判定する。判定した場合はステップS116へ進み、判定していない場合はステップS101へ進む。
 次に、ステップS112、及びステップS113において、シナリオ生成部5の補完部11は、ステップS107において前提ステップで必要となる機能がシステムに存在しない場合の処理を行なう。ステップS112、及びステップS113に至るまでの処理において、必須ステップで必要となる機能は存在すると判定されているため、ステップS112、及びステップS113に至るのは、前提ステップにおける攻撃元となる機能が存在しない場合である。個別の攻撃シナリオを作成する上では、前提ステップは、その結果、すなわち攻撃対象に対して当該の攻撃がなされることが求められる。そこで、システム構成情報1とシステム構成情報2と攻撃分類情報7から、前提ステップの結果と同じ結果が得られるようにステップの内容を変更する。
 例えば、前提ステップがHMIからEWSへの感染であり、HMIが存在しないとする。この場合は、ステップS107からステップS112へ遷移し、ステップS112においてEWSへ直接感染するようにステップの内容を変更する。直接感染させる手段には幾つか種類があるが、例えば、USBメモリを経由して感染、メールの添付ファイルを開いて感染、Webサイトからマルウェアの入ったファイルをダウンロード実行して感染等がある。これらの中からランダムに選択して前提ステップを作成する。訓練を行なう際には、ここで選択した感染方法を、実際に訓練者が行動して実行することをきっかけとして攻撃シナリオを再生させることにより、訓練のリアリティが増し、訓練の効果が向上する。
 また、ステップS113は、攻撃分類が内部調査である場合の処理である。シナリオ生成部5の補完部11は、EWSと接続されている機能から内部調査するステップとし、さらに、当該機能へ感染するステップを追加する。
 以上のように前提ステップの内容を変更することで、必須ステップが実行できるようになる。上記では、攻撃分類として感染と内部調査の例を挙げたが、訓練装置1の動作はこれに限らず、その他の攻撃を行なってもよい。
 次に、ステップS114、及びステップS115において、シナリオ生成部5の補完部11は、ステップS107で前提ステップに必要となる機能がシステムに存在するが、それらが相互に接続されていない場合の処理を行なう。
 ステップS114において、シナリオ生成部5の補完部11は、対象となる機能と接続されている機能経由で二次感染とする。当該機能が存在しない場合は直接感染とする。補完部11は、基本攻撃シナリオ情報から前提ステップを抽出する。次に、補完部11は、前提ステップの攻撃対象の機能を持った機器をシステム構成情報1から選択し、システム構成情報2からこれと相互接続があり、かつ前提ステップの攻撃元の機能とも相互接続のある機器(仮に中間機器と呼ぶ)が存在する場合、中間機器を経由して二次感染するステップとする。具体的には、前提ステップの攻撃元→中間機器→前提ステップの攻撃対象の順に感染が進むステップとする。中間機器が存在しない、すなわち前提ステップの攻撃元と前提ステップの攻撃対象を接続する経路が、どのようなパスを通っても接続できない場合は、ステップS112と同様に、攻撃対象へ直接感染するステップとする。
 また、ステップS115は、攻撃分類が内部調査である場合の処理である。ステップS114のように、一度中間機器へ感染してから、中間機器から内部調査を行なう処理とする。
 なお、ステップS114、及びステップS115では、ステップS112、及びステップS113と同様に攻撃分類として感染と内部調査の例を挙げたが、訓練装置1の動作はこれに限らず、その他の攻撃を行なってもよい。
 次に、ステップS116からのステップでは、オプションステップを個別攻撃ステップに登録する、又は削除するための処理を行なう。訓練装置1は、基本攻撃シナリオ情報を参照し、攻撃ステップNo.の小さいオプションステップの順に判定を行なう。必須ステップを実行するために前提ステップの内容を変更した場合は、オプションステップとも整合を取る必要があるため、まずステップS116では、シナリオ生成部5の補完部11は、現在の判定対象であるオプションステップを実行する際に必要となる機能が、前提ステップを実行する際に必要とした機能と同一のものを含むかを判定している。同一のものを含む場合はステップS117へ進み、同一のものを含まない場合はステップS126へ進む。
 次に、ステップS117において、シナリオ生成部5の補完部11は、当該の前提ステップを判定する際にステップの内容を変更したかを判定する。実施の形態1の例では、元の基本攻撃シナリオ情報の攻撃ステップNo.3であるHMIからEWSへの感染は、その内容のままHMIを操作端末2、EWSをコントローラとして登録した。そのため、前提ステップの内容は変更しておらずステップS122へ進む。前提ステップの内容を変更した場合は、ステップS118へ進む。
 次に、ステップS118において、シナリオ生成部5の補完部11は、前提ステップの内容を変更したオプションステップを削除する。この理由は、必須ステップと前提ステップとの整合で前提ステップを変更した場合は、攻撃のシナリオとして完結しているので、オプションステップを残すと不整合が生じるからである。
 次に、ステップS119において、シナリオ生成部5の補完部11は、基本攻撃シナリオ情報に設定されている全てのオプションステップについてステップS116で判定したかを判定する。判定した場合はステップS120へ進む。判定していない場合はステップS121へ進み、次のオプションステップの判定を行なう。
 次に、ステップS120において、シナリオ生成部5の出力部12は、登録された個別攻撃シナリオを出力し、処理を終了する。このステップS120は、ステップS004に相当する。
 図15は、個別攻撃シナリオ情報の一例を示す図である。
 図15において、個別攻撃シナリオ情報は、攻撃ステップNo.、攻撃分類、攻撃元(機器名)、攻撃対象(機器名)からなる。
 次に、ステップS122は、ステップS117で前提ステップの内容を変更していないと判定した場合のステップである。変更していない場合、ユーザが入力した基本攻撃シナリオ情報が、変更なしに実行できる場合とそうでない場合の両方があるため、その判定を行なう。ステップS122では、判定対象のオプションステップを実行する際に必要となる機能で、かつ前提ステップで必要となった機能と同一ではない機能が、システムに存在するかを判定する。実施の形態1の例では、OA-PCがその機能に当たり、またシステムに存在していない。存在しない場合は、ステップS129、またはステップS130に進む。存在する場合は、ステップS123に進む。
 次に、ステップS123において、シナリオ生成部5の補完部11は、前提ステップで必要となる機能とオプションステップで必要となる機能が相互に接続されているかを判定する。接続されている場合は、ステップS124へ進み、ユーザから入力された機器名を割り当てて個別攻撃シナリオに登録する。接続されていない場合は、ステップS125へ進み、当該のオプションステップを削除する。
 次に、ステップS126は、ステップS116で判定対象のオプションステップを実行する際に必要となる機能が、前提ステップを実行する際に必要とした機能と同一のものを含まないと判定した場合のステップである。そのような場合は、当該のオプションステップを実行する/しないに関わらず、前提ステップを実行可能であるため、当該のオプションステップを実行する際に必要となる機能がシステムに存在するか否かで個別攻撃シナリオに登録するかを決定する。存在する場合はステップS127へ進む。存在しない場合はステップS125へ進み、当該ステップを削除する。
 次に、ステップS127において、シナリオ生成部5の補完部11は、オプションステップを実行する際に必要となる機能が、単数か複数かを判定する。判定方法は、ステップS102と同じであるため記載を省略する。単数である場合は、実行可能と判定し、ステップS124に進み、ユーザから入力された機器名を割り当てて個別攻撃シナリオに登録する。複数である場合は、ステップS128へ進む。
 次に、ステップS128において、シナリオ生成部5の補完部11は、オプションステップを実行する際に必要となる複数の機能が、相互に接続されているかを判定する。判定方法は、ステップS103と同じであるため記載を省略する。接続されている場合は、実行可能と判定し、ステップS124に進み、ユーザから入力された機器名を割り当てて個別攻撃シナリオに登録する。接続されていない場合は、ステップS125へ進み、当該ステップを削除する。
 次に、ステップS129、またはステップS130は、ステップS122でオプションステップで必要となる機能がシステムに存在しないと判定された場合の処理である。処理方法は、ステップS112、ステップS113と同じであるため記載を省略する。
 以上のように、本実施の形態1の発明では、訓練対象システムのシステム構成情報を入力として、機器の機能と一連の攻撃ステップで表現した基本攻撃シナリオを、システム構成情報に合致するように書き換えて、訓練対象システムに対する個別の攻撃シナリオである個別攻撃シナリオを生成することにより、システム構成が異なる複数のシステムに対し、同一の訓練シナリオを自動で生成でき、訓練シナリオ開発の工期やコストを抑制できるという効果が得られる。
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。

Claims (7)

  1. 機器の機能を示す機能情報とサイバー攻撃の実行ステップの分類を示す攻撃分類情報とを記憶する情報記憶部と、
     訓練対象システムを構成する前記機器の情報を示すシステム構成情報が入力され、前記機能情報と前記攻撃分類情報とを対応付けた前記実行ステップを含む基本攻撃シナリオの前記機能情報を、この機能情報に対応する前記システム構成情報の前記機器に書き換えて、前記訓練対象システムの前記システム構成情報に合致した個別の攻撃シナリオである個別攻撃シナリオを生成するシナリオ生成部と
    を備える訓練装置。
  2. 前記基本攻撃シナリオに含まれる前記実行ステップに対して訓練に必須である必須ステップが指定され、
     前記シナリオ生成部は、
     前記必須ステップが実行可能か否かを判定する判定部を備える請求項1記載の訓練装置。
  3. 前記シナリオ生成部は、前記判定部により前記必須ステップが実行可能と判定された場合に、前記個別攻撃シナリオを生成する請求項2記載の訓練装置。
  4. 前記基本攻撃シナリオは、訓練者の行動をきっかけとして攻撃シナリオが再生される実行ステップを含む請求項1記載の訓練装置。
  5. 前記情報記憶部は、過去に生成した前記基本攻撃シナリオを格納するシナリオテンプレートを記憶し、
     前記シナリオ生成部は、前記シナリオテンプレートに基づいて前記個別攻撃シナリオを生成する請求項1記載の訓練装置。
  6. 機器の機能を示す機能情報とサイバー攻撃の実行ステップの分類を示す攻撃分類情報とを記憶する情報記憶部とシナリオ生成部とを備える訓練装置の訓練方法であって、
     前記シナリオ生成部が、訓練対象システムを構成する前記機器の情報を示すシステム構成情報が入力され、前記機能情報と前記攻撃分類情報とを対応付けた前記実行ステップを含む基本攻撃シナリオの前記機能情報を、この機能情報に対応する前記システム構成情報の前記機器に書き換えて、前記訓練対象システムの前記システム構成情報に合致した個別の攻撃シナリオである個別攻撃シナリオを生成するシナリオ生成ステップを備える訓練方法。
  7. コンピュータを、
     機器の機能を示す機能情報とサイバー攻撃の実行ステップの分類を示す攻撃分類情報とを記憶する情報記憶手段、
     訓練対象システムを構成する前記機器の情報を示すシステム構成情報が入力され、前記機能情報と前記攻撃分類情報とを対応付けた前記実行ステップを含む基本攻撃シナリオの前記機能情報を、この機能情報に対応する前記システム構成情報の前記機器に書き換えて、前記訓練対象システムの前記システム構成情報に合致した個別の攻撃シナリオである個別攻撃シナリオを生成するシナリオ生成手段、
    として機能させるための訓練プログラム。
PCT/JP2016/051505 2016-01-20 2016-01-20 訓練装置、訓練方法、及び訓練プログラム Ceased WO2017126041A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2016/051505 WO2017126041A1 (ja) 2016-01-20 2016-01-20 訓練装置、訓練方法、及び訓練プログラム
JP2017562203A JP6361837B2 (ja) 2016-01-20 2016-01-20 訓練装置、訓練方法、及び訓練プログラム
TW105105827A TW201727596A (zh) 2016-01-20 2016-02-26 訓練裝置、訓練方法以及訓練程式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/051505 WO2017126041A1 (ja) 2016-01-20 2016-01-20 訓練装置、訓練方法、及び訓練プログラム

Publications (1)

Publication Number Publication Date
WO2017126041A1 true WO2017126041A1 (ja) 2017-07-27

Family

ID=59362610

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/051505 Ceased WO2017126041A1 (ja) 2016-01-20 2016-01-20 訓練装置、訓練方法、及び訓練プログラム

Country Status (3)

Country Link
JP (1) JP6361837B2 (ja)
TW (1) TW201727596A (ja)
WO (1) WO2017126041A1 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019043411A (ja) * 2017-09-04 2019-03-22 株式会社日立製作所 列車用訓練システムおよびその制御方法
JP2020017065A (ja) * 2018-07-25 2020-01-30 株式会社日立製作所 車両不正アクセス対策装置、及び車両不正アクセス対策方法
JPWO2020255359A1 (ja) * 2019-06-20 2020-12-24
WO2021038612A1 (en) * 2019-08-23 2021-03-04 Nec Corporation Security assessment apparatus, security assessment method, and non-transitory computer readable medium
JP2021120780A (ja) * 2020-01-30 2021-08-19 富士通株式会社 プログラム,情報処理装置およびサイバー演習制御方法
EP3958152A1 (en) 2020-08-17 2022-02-23 Hitachi, Ltd. Attack scenario simulation device, attack scenario generation system, and attack scenario generation method
JP2023125718A (ja) * 2022-02-28 2023-09-07 株式会社東芝 情報処理装置、情報処理方法、および情報処理プログラム
US11956271B2 (en) 2018-11-21 2024-04-09 Mitsubishi Electric Corporation Scenario generation device, scenario generation method, and computer readable medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003108521A (ja) * 2001-09-29 2003-04-11 Toshiba Corp 脆弱性評価プログラム、方法及びシステム
JP2007279868A (ja) * 2006-04-04 2007-10-25 Hitachi Electronics Service Co Ltd Mspサービス用過去事例提供システム及びmspサービス用過去事例提供方法
WO2015029464A1 (ja) * 2013-08-29 2015-03-05 三菱電機株式会社 模擬装置、情報生成装置、模擬方法、模擬プログラム、環境提供システム、環境提供方法及びプログラム
JP2015231138A (ja) * 2014-06-05 2015-12-21 日本電信電話株式会社 サイバー攻撃演習システム、演習環境提供方法、および、演習環境提供プログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015072041A1 (ja) * 2013-11-18 2015-05-21 株式会社日立製作所 セキュリティ対策訓練システム、セキュリティ対策訓練方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003108521A (ja) * 2001-09-29 2003-04-11 Toshiba Corp 脆弱性評価プログラム、方法及びシステム
JP2007279868A (ja) * 2006-04-04 2007-10-25 Hitachi Electronics Service Co Ltd Mspサービス用過去事例提供システム及びmspサービス用過去事例提供方法
WO2015029464A1 (ja) * 2013-08-29 2015-03-05 三菱電機株式会社 模擬装置、情報生成装置、模擬方法、模擬プログラム、環境提供システム、環境提供方法及びプログラム
JP2015231138A (ja) * 2014-06-05 2015-12-21 日本電信電話株式会社 サイバー攻撃演習システム、演習環境提供方法、および、演習環境提供プログラム

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7011911B2 (ja) 2017-09-04 2022-01-27 株式会社日立製作所 列車用訓練システムおよびその制御方法
JP2019043411A (ja) * 2017-09-04 2019-03-22 株式会社日立製作所 列車用訓練システムおよびその制御方法
JP2020017065A (ja) * 2018-07-25 2020-01-30 株式会社日立製作所 車両不正アクセス対策装置、及び車両不正アクセス対策方法
JP7000271B2 (ja) 2018-07-25 2022-01-19 株式会社日立製作所 車両不正アクセス対策装置、及び車両不正アクセス対策方法
US11956271B2 (en) 2018-11-21 2024-04-09 Mitsubishi Electric Corporation Scenario generation device, scenario generation method, and computer readable medium
JP7238987B2 (ja) 2019-06-20 2023-03-14 日本電気株式会社 セキュリティ訓練支援装置、セキュリティ訓練支援方法、及びプログラム
JPWO2020255359A1 (ja) * 2019-06-20 2020-12-24
WO2020255359A1 (ja) * 2019-06-20 2020-12-24 日本電気株式会社 セキュリティ訓練支援装置、セキュリティ訓練支援方法、及びコンピュータ読み取り可能な記録媒体
US12061694B2 (en) 2019-06-20 2024-08-13 Nec Corporation Security-training support apparatus, security-training support method, and computer readable recording medium
JP7318798B2 (ja) 2019-08-23 2023-08-01 日本電気株式会社 セキュリティアセスメント装置、セキュリティアセスメント方法、プログラム
JP2022543424A (ja) * 2019-08-23 2022-10-12 日本電気株式会社 セキュリティアセスメント装置、セキュリティアセスメント方法、プログラム
WO2021038612A1 (en) * 2019-08-23 2021-03-04 Nec Corporation Security assessment apparatus, security assessment method, and non-transitory computer readable medium
US11507660B2 (en) 2020-01-30 2022-11-22 Fujitsu Limited Information processing apparatus, non-transitory computer-readable storage medium, and cyber exercise control method
JP7409116B2 (ja) 2020-01-30 2024-01-09 富士通株式会社 プログラム,情報処理装置およびサイバー演習制御方法
JP2021120780A (ja) * 2020-01-30 2021-08-19 富士通株式会社 プログラム,情報処理装置およびサイバー演習制御方法
EP3958152A1 (en) 2020-08-17 2022-02-23 Hitachi, Ltd. Attack scenario simulation device, attack scenario generation system, and attack scenario generation method
US11765196B2 (en) 2020-08-17 2023-09-19 Hitachi, Ltd. Attack scenario simulation device, attack scenario generation system, and attack scenario generation method
JP2023125718A (ja) * 2022-02-28 2023-09-07 株式会社東芝 情報処理装置、情報処理方法、および情報処理プログラム

Also Published As

Publication number Publication date
JP6361837B2 (ja) 2018-07-25
JPWO2017126041A1 (ja) 2018-03-15
TW201727596A (zh) 2017-08-01

Similar Documents

Publication Publication Date Title
JP6361837B2 (ja) 訓練装置、訓練方法、及び訓練プログラム
US10810018B2 (en) Device with extensibility
CN114035827A (zh) 应用程序更新方法、装置、设备及存储介质
WO2024258584A2 (en) Quality assurance for digital technologies using large language models
US10229612B2 (en) Secure computer-implemented execution and evaluation of programming assignments for on demand courses
JPWO2021059471A5 (ja) セキュリティリスク分析支援装置、方法、及びプログラム
GB2524737A (en) A system and method for testing a workflow
JP2020013571A (ja) アプリケーション更新方法、アプリケーション更新装置、電子機器およびコンピュータ読み取り可能な記憶媒体
JP2017068825A (ja) ソフトウェア開発システムおよびプログラム
JPWO2017159638A1 (ja) 能力付与データ生成装置
CN113557478A (zh) 控制器系统、支持装置及评价方法
Mahmoodi et al. Attack surface modeling and assessment for penetration testing of IoT system designs
Apvrille et al. Model-driven engineering for designing safe and secure embedded systems
WO2022218188A1 (zh) 攻击样本管理的方法以及设备
US20220156382A1 (en) Information processing device, information processing method, and computer program product
CN113632080A (zh) 用于保护远程托管应用程序免受恶意攻击的系统和方法
US20250103958A1 (en) Methods for genereating a honeypot
US20250106253A1 (en) Method for generating a honeypot
JP2020030490A (ja) モデル検査用スクリプト変換プログラム、モデル検査プログラム、モデル検査用スクリプト変換装置及びモデル検査装置
JP2013145443A (ja) テストコード生成装置、テストコード生成方法、テストコード生成プログラム
KR20260003047A (ko) 사용자-시스템 협력을 위한 숙련도 채점
CN110928536A (zh) 一种图形化编程作品在线评测装置、系统及方法
Lopes et al. Experimenting with machine learning in automated intrusion response
KR20240104542A (ko) 게임에서의 사용자의 이상 행동을 판단하기 위한 시스템 및 그 판단 방법
CN114443467A (zh) 基于沙箱的界面交互方法、装置、电子设备、介质及产品

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16886283

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017562203

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16886283

Country of ref document: EP

Kind code of ref document: A1