WO2019187155A1 - 情報処理装置、情報処理方法およびプログラム - Google Patents
情報処理装置、情報処理方法およびプログラム Download PDFInfo
- Publication number
- WO2019187155A1 WO2019187155A1 PCT/JP2018/013985 JP2018013985W WO2019187155A1 WO 2019187155 A1 WO2019187155 A1 WO 2019187155A1 JP 2018013985 W JP2018013985 W JP 2018013985W WO 2019187155 A1 WO2019187155 A1 WO 2019187155A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- communication
- process data
- communication pattern
- network
- information processing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0259—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0224—Process history based detection method, e.g. whereby history implies the availability of large amounts of data
- G05B23/024—Quantitative history assessment, e.g. mathematical relationships between available data; Functions therefor; Principal component analysis [PCA]; Partial least square [PLS]; Statistical classifiers, e.g. Bayesian networks, linear regression or correlation analysis; Neural networks
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/058—Safety, monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/40—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25232—DCS, distributed control system, decentralised control unit
Definitions
- the present invention relates to an information processing apparatus, an information processing method, and a program.
- Patent Document 1 discloses an abnormality detection device for a control network in an industrial control system such as a power plant.
- This abnormality detection device stores in advance normal communication patterns between devices for each operation mode such as program mode, operation mode, and maintenance mode, and detects communication that does not conform to the normal communication pattern of the current operation mode as an abnormality. To do.
- the device control method is not constant even in the same operation mode, and the system has various states and various normal communication patterns can exist.
- the technique of Patent Document 1 since abnormality detection is performed using a uniform normal communication pattern for each operation mode, abnormality detection is accurately performed when a plurality of system states exist in a certain operation mode. It is difficult.
- the present invention has been made in view of the above-described problems, and an object thereof is to provide an information processing apparatus, an information processing method, and a program that can accurately detect an abnormality in an industrial control system.
- an acquisition unit that acquires a communication packet for monitoring and controlling a system and process data collected from a device installed in the system via a network, and a communication pattern related to the communication packet
- An information processing apparatus comprising: a detection unit that detects the abnormal communication pattern on the network based on a correspondence relationship between the network and the process data.
- an acquisition unit that acquires a communication packet for monitoring and controlling a system and process data collected from a device installed in the system via a network, and communication related to the communication packet
- an information processing apparatus comprising: a learning unit that creates a model for detecting an abnormal communication pattern of the communication packet on the network based on a correspondence relationship between a pattern and the process data.
- a step of acquiring a communication packet for monitoring and controlling the system and process data collected from a device installed in the system via a network, and a communication pattern related to the communication packet And a step of creating a model for detecting an abnormal communication pattern of the communication packet on the network based on a correspondence relationship between the communication data and the process data.
- an information processing apparatus an information processing method, and a program capable of accurately detecting an abnormality in an industrial control system are provided.
- FIG. 1 is a block diagram of an abnormality detection device according to a first embodiment. It is a detailed block diagram of the determination part which concerns on 1st Embodiment. It is a detailed block diagram of a packet learning unit according to the first embodiment. It is a schematic diagram which shows the feature space of the process data which concerns on 1st Embodiment. It is a table which shows an example of the model which concerns on 1st Embodiment. It is a hardware block diagram of the abnormality detection apparatus which concerns on 1st Embodiment. It is a flowchart showing operation
- FIG. 1 is a block diagram showing a schematic configuration of an industrial control system according to the present embodiment.
- the industrial control system 10 is a computer system that monitors and controls various plant systems such as a thermal power plant and a chemical manufacturing factory.
- the industrial control system 10 includes an engineering station 101, an HMI (Human Machine Interface) 102, a DCS (Distributed Control System) 103, a PLC (Programmable Logic Controller) 104, an abnormality detection device 105, a historian 106, a firewall 107, a control network 108, A field device 109, a field network 110, and a field network 111 are provided.
- HMI Human Machine Interface
- DCS Distributed Control System
- PLC Programmable Logic Controller
- the engineering station 101 is a terminal for creating a control program used in the industrial control system 10 and writing the program in the HMI 102, DCS 103, or PLC 104.
- the HMI 102 displays the system status (operating status) of the plant system to be monitored and controlled based on the program written from the engineering station 101, confirms the operating status by the operator, adjusts the operating parameters of the system, and the field.
- This is a terminal used to perform control such as setting change of the device 109.
- the HMI 102 transmits communication packets including various commands to the engineering station 101, the DCS 103, the PLC 104, and the historian 106, and receives the response communication packets.
- the command corresponds to a command for transmitting display data to the DCS 103 and the PLC 104, a command for setting the register of the field device 109 or the like for the DCS 103 and the PLC 104, and the like.
- the HMI 102 receives display data from, for example, the DCS 103 and the PLC 104 and performs display. Further, when the set value is changed, the HMI 102 transmits the set value to the DCS 103 and the PLC 104. Then, the DCS 103 and the PLC 104 set a setting value in the field device 109.
- the DCS 103 is connected between the control network 108 and the field network 110, and controls the field device 109 based on a program written from the engineering station 101. For example, the DCS 103 transmits a communication packet including a command to the field device 109 as necessary or at intervals of several hundred milliseconds to several seconds, and receives a communication packet as a response. The DCS 103 receives a communication packet that the field device 109 autonomously transmits.
- the number of DCS 103 is not particularly limited.
- the PLC 104 is connected between the control network 108 and the field network 111.
- the field network 111 is a network separated from the above-described field network 110.
- the PLC 104 controls the field device 109 based on the program written from the engineering station 101. For example, the PLC 104 transmits a communication packet to the field device 109 as necessary or at intervals of several hundred milliseconds to several seconds, and receives a communication packet in response. Further, the PLC 104 receives a communication packet that the field device 109 transmits autonomously.
- the number of PLCs 104 is not particularly limited.
- the industrial control system 10 may include only one of the DCS 103 and the PLC 104. Further, the PLC 104 may be connected under the DCS 103, and the field device 109 may be connected to the end.
- the anomaly detection device 105 monitors the communication pattern of communication packets transmitted between the engineering station 101, the HMI 102, the DCS 103, the PLC 104, and the historian 106, and detects an abnormality in the communication pattern.
- the communication pattern is composed of a single communication packet or a series of communication packets (sequence) having periodicity and order.
- the abnormality detection device 105 determines the system state of the plant system based on the payload of the communication packet flowing through the network or the data acquired from the historian 106. Furthermore, the abnormality detection apparatus 105 determines whether an appropriate communication packet is transmitted using a model created in advance according to the system state.
- the characteristics of the communication pattern related to the communication packet are different from the normal characteristics (normal characteristics) of the system state at that time. It will be a thing. For example, changes such as an increase in the frequency of occurrence of a specific communication pattern or occurrence of a communication pattern that is not assumed in the current system state may occur as compared with normal characteristics.
- the abnormality detection device 105 can detect such a change in the characteristics of the communication pattern and determine whether or not a control abnormality has occurred.
- an abnormal communication pattern not only an unauthorized communication pattern due to a cyber attack but also a communication pattern output due to an abnormality of a device is applicable.
- the abnormality detection device 105 is connected to the control network 108 and is intended to detect an abnormal communication pattern in the control network 108, but is not limited to such a configuration.
- the abnormality detection device 105 may be connected to the field networks 110 and 111 and configured to detect a communication packet having an abnormal communication pattern transmitted between the DCS 103 or the PLC 104 and the field device 109.
- the historian 106 is a device that stores sensor data, actuator data, alarm information, and the like collected from the DCS 103, the PLC 104, the HMI 102, and the like as multi-dimensional time-series data.
- the firewall 107 is installed at the boundary between the industrial control system 10 and an external network 120 such as the Internet, and is software or equipment for protecting the industrial control system 10 from external attacks by monitoring internal and external communications. That is, the firewall 107 has a security function for suppressing a cyber attack or the like from the external network 120 to the industrial control system 10. For example, the firewall 107 monitors an IP (Internet Protocol) address, a port number, and the like of a communication packet that passes through the firewall 107, and filters the communication packet according to preset conditions.
- IP Internet Protocol
- the control network 108 is connected with an engineering station 101, an HMI 102, a DCS 103, a PLC 104, an abnormality detection device 105, a historian 106, and a firewall 107.
- the connection method may be wired or wireless.
- the control network 108 includes, for example, a communication packet including data for display on the HMI 102, a communication packet including information on setting of the field device 109 to the DCS 103 or the PLC 104, and a communication packet for synchronization between the DCS 103 (or the PLC 104). Etc. are transmitted.
- control network 108 may be connected to an information network (not shown) installed in an office or the like via a firewall 107.
- the information network includes a PC (Personal Computer), a file server, a Web server, a mail server, a printer, and the like, and can be connected to a control network of another plant.
- the field device 109 is a device such as a sensor, a valve, or an actuator installed in the plant system.
- the sensor include a temperature sensor, a pressure sensor, a flow rate sensor, a rotation speed sensor, and a composition sensor.
- the valve include a pressure control valve, a flow rate control valve, and an on-off valve.
- the actuator include a pump and a fan.
- the number and type of field devices 109 are not limited, and may include several hundred to several thousand different field devices 109.
- the field device 109 is controlled by the actuator setting and outputs the measured value of the sensor.
- the actuator data includes, for example, an operation amount such as a valve opening degree.
- the actuator data can be set, for example, as necessary or at intervals of several hundred milliseconds to several seconds.
- the sensor data includes, for example, temperature, pressure, flow rate, water level, rotation speed, raw material quality (composition), and the like.
- the sensor data can be acquired at intervals of several hundred milliseconds to several seconds, for example.
- Sensor data and actuator data indicate measurement and setting states in a plurality of field devices 109 installed in the plant system.
- the abnormality detection device 105 can grasp the detailed system state (operation status) of the plant system that is the monitoring control target of the industrial control system 10 by analyzing the state of the field device 109.
- sensor data and actuator data will be collectively referred to as “process data”.
- the process data may include alarm information collected from the HMI 102, process data average value, variance, standard deviation, time change (differential value), cumulative value (integral value), and the like. Details of the sensor data and actuator data will be described later.
- the DCS 103 and the field device 109 are connected to the field network 110.
- the PLC 104 and other field devices 109 are connected to the field network 111.
- the connection method may be wired or wireless.
- the field networks 110 and 111 may be a field bus premised on bus connection or serial communication such as RS-485.
- the field networks 110 and 111 are used for communication between these devices. For example, a communication packet including actuator data for controlling the field device 109, a communication packet including sensor data measured by the field device 109, and the like. Is transmitted.
- DCS 103 and PLC 104 may be connected to the same field network.
- FIG. 2 is a block diagram of the abnormality detection apparatus 105 according to the present embodiment.
- the abnormality detection device 105 includes an acquisition unit 201, a packet learning unit 202, a determination unit 203, a storage unit 204, and a detection unit 205.
- the abnormality detection device 105 performs learning in advance based on the communication packet and process data (sensor data and actuator), and performs abnormality detection based on the learning result.
- the acquisition unit 201 acquires a communication packet transmitted by the control network 108 at the time of learning and detection.
- the acquired communication packet is input to the packet learning unit 202.
- the acquisition unit 201 may be configured to acquire a communication packet from another device that collects communication packets transmitted through the field networks 110 and 111. Further, the acquisition unit 201 may acquire process data from the payload of a communication packet transmitted through the control network 108 or from the historian 106 during learning and detection.
- the packet learning unit 202 learns the normal characteristics of the communication pattern for each system state of the plant system at the time of learning.
- the learning of normal characteristics is performed using a learning communication pattern (a communication packet alone or a communication packet sequence) classified for each system state.
- the packet learning unit 202 creates a model in which the system state is associated with the normal characteristics of the communication pattern.
- the determination unit 203 acquires process data from the historian 106 via the acquisition unit 201 during learning.
- Process data is collected in various system states. For example, environmental factors such as ambient temperature, external factors due to disturbances such as quality of raw materials supplied to the plant system, automatic operation mode and manual operation It includes data collected in system states that vary depending on internal factors due to actuator settings such as control parameters such as mode, PID control, and target values.
- the automatic operation mode the setting of the field device 109 is automatically controlled, and in the manual operation mode, the setting of the field device 109 is manually adjusted by the operator.
- the determination unit 203 classifies the process data for learning into a plurality of system states, and defines each as a class.
- the determination unit 203 may be configured to acquire process data from the payload of a communication packet transmitted through the control network 108.
- the determination unit 203 acquires process data via the acquisition unit 201 at the time of detection.
- the process data is acquired almost in real time and processed by the determination unit 203.
- the determination unit 203 determines a class as a process data classification destination, and outputs the system state defined by the class as the current system state.
- the storage unit 204 stores the model created by the packet learning unit 202, information on the system state class classified by the determination unit 203, the current system state determined by the determination unit 203, and the like.
- the detection unit 205 detects an abnormal communication pattern in the control network 108 based on the communication pattern and the process data. For example, the detection unit 205 uses the model stored in the storage unit 204 to generate a communication packet with an abnormal communication pattern when the characteristics of the communication pattern flowing through the control network 108 in the current system state do not match the normal characteristics. Determine that it is being sent. The detection unit 205 outputs the detection result to an external device such as the screen of the abnormality detection device 105, the information network PC, the HMI 102, or the historian 106.
- FIG. 3 is a detailed block diagram of the determination unit 203 according to the present embodiment.
- the determination unit 203 includes a state learning unit 301 and a state determination unit 302.
- the state learning unit 301 extracts feature amounts (feature vectors) from learning process data.
- the state learning unit 301 reduces multi-dimensional process data collected from the DCS 103 or the PLC 104 to lower-dimensional process data using principal component analysis.
- the state learning unit 301 classifies the process data into a plurality of classes of system states on the feature space. For example, as shown in FIG. 5, two feature quantities (feature quantity 1 and feature quantity 2) are extracted from the process data, and a two-dimensional feature space having these feature quantities as axes is formed.
- a set of process data located in the vicinity is classified into classes 501, 502, and 503 as different system states.
- the feature quantity extraction method is not limited to principal component analysis, and deep learning, SVM (Support Vector Machine), or the like may be used.
- the feature amount is not limited to two, and may be one or three or more.
- the system state to be classified may be one instead of plural.
- the state learning unit 301 defines a system state corresponding to each class. For example, in FIG. 5, it is assumed that the feature amount 1 represents the water temperature and the feature amount 2 represents the material property. In this case, class 501 represents “system state when water temperature and material properties are appropriate”, class 502 represents “system state when water temperature is high”, and class 503 represents “system state when material properties are bad”. Is defined as In this manner, the state learning unit 301 can extract various system states that change in accordance with external factors and internal factors in the plant system based on the learning process data. The process data at the time of learning reflects the system state when the plant system is normal.
- the feature amount is not limited to one type of process data such as water temperature and material properties, but may be a combination such as a sum obtained by weighting two or more types of process data.
- the state determination unit 302 extracts a feature amount from the process data to be detected.
- the process data to be detected is process data collected in real time from the DCS 103 or the PLC 104, and reflects the current system state of the plant system.
- the state determination unit 302 forms a feature space in the same manner as the state learning unit 301 and confirms the position of the process data on the feature space, thereby determining a class to which the process data is classified.
- the state determination unit 302 outputs a system state corresponding to the determined class.
- FIG. 4 is a detailed block diagram of the packet learning unit 202 according to the present embodiment.
- the packet learning unit 202 includes a characteristic extraction unit 401 and a model creation unit 402.
- the characteristic extraction unit 401 calculates the characteristic (normal characteristic) of the communication pattern for learning.
- the characteristics calculated here are based on the commands included in the communication pattern, for example, the communication frequency and cycle for each command type, or the sequence of each command included in a series of communication packets having an order (time-series It can be the communication frequency or cycle for each type of (order of arrangement).
- the command includes a MAC address, an IP address, a port number, and the like, a command type such as read / write, an address for reading / writing, data to be written, read data, and the like.
- the model creation unit 402 associates the input system state with the normal characteristics of the communication pattern calculated by the characteristic extraction unit 401.
- the system state input here is extracted from the process data for learning by the state learning unit 301 and includes one or a plurality of different system states.
- the model creation unit 402 outputs the normal characteristics of the communication pattern in each system state as a model.
- FIG. 6 is a table showing an example of a model according to the present embodiment.
- the model includes information such as system state ID (Identification), attribute information such as water temperature, material properties, control parameters and the like, which are factors that mainly determine the system state, and normal characteristics of the communication pattern in each system state.
- the system state ID is assigned for each system state and is a code for identifying the system state.
- attribute information for example, state 1 represents that the water temperature and material properties are appropriate system states.
- state 2 represents a system state in which the water temperature is high and material properties are appropriate
- state 3 represents a system state in which the water temperature is appropriate and material properties are poor.
- the attribute information is not limited to the water temperature, material properties, and control parameters, and may be, for example, arbitrary information included in the sensor data and the actuator. Note that attribute information is not essential as a component of the model.
- the normal characteristic is represented by the frequency of occurrence for each type (A to D) of communication patterns within a predetermined period.
- the communication patterns A to D occur at frequencies of 3, 101, 0, and 2, respectively.
- the communication patterns A to D occur at frequencies of 1, 9, 45, and 60, respectively.
- the communication patterns A to D are 1, 20, 0, and 40, respectively. It is normal to occur at a frequency of
- the normal characteristic is an index for determining whether or not an abnormal communication pattern has occurred, and is compared with the characteristic of the communication pattern calculated during operation.
- the communication pattern targeted for occurrence frequency may be not only a single communication packet but also a sequence of communication packets having periodicity and order.
- the normal characteristic may be an occurrence probability for each type of communication pattern.
- FIG. 7 is a hardware block diagram of the abnormality detection apparatus 105 according to the present embodiment.
- the abnormality detection device 105 includes a CPU 701, a memory 702, a storage device 703, and a communication interface (I / F) 704.
- the CPU 701 performs a predetermined operation in accordance with programs stored in the memory 702 and the storage device 703 and has a function of controlling each unit of the abnormality detection device 105.
- the CPU 701 executes a program that realizes the functions of the acquisition unit 201, the packet learning unit 202, the determination unit 203, and the detection unit 205.
- the memory 702 includes a RAM (Random Access Memory) and the like, and provides a memory area necessary for the operation of the CPU 701.
- the memory 702 can be used as a buffer area for realizing the functions of the acquisition unit 201, the packet learning unit 202, the determination unit 203, and the detection unit 205.
- the storage device 703 is, for example, a flash memory, an SSD (Solid State Drive), an HDD (Hard Disk Drive), and the like, and provides a storage area for realizing the function of the storage unit 204.
- the storage device 703 stores a basic program such as an OS (Operating System) that operates the abnormality detection device 105, an application program that performs learning processing and abnormality detection processing, and the like.
- the communication interface 704 is a module for performing communication with an external device based on standards such as USB (Universal Serial Bus), Ethernet (registered trademark), and Wi-Fi (registered trademark).
- FIG. 7 the hardware configuration shown in FIG. 7 is an exemplification, and devices other than these may be added, or some devices may not be provided.
- some functions may be provided by another device via a network, and the functions constituting the present embodiment may be realized by being distributed to a plurality of devices.
- FIG. 8 is a flowchart showing the operation of the abnormality detection apparatus 105 according to this embodiment.
- the determination unit 203 extracts a plurality of system states from the input learning process data (step S11). For example, process data for learning is classified into a plurality of classes, and a system state corresponding to each class is defined.
- the determination unit 203 stores the extracted system state and outputs the system state to the packet learning unit 202.
- the packet learning unit 202 calculates normal characteristics for each system state from the learning communication pattern acquired by the acquisition unit 201 (step S12). For example, the occurrence frequency within a predetermined period related to the communication pattern is calculated as the normal characteristic.
- the packet learning unit 202 creates a model in which the calculated normal characteristic is associated with the system state, and stores the model in the storage unit 204 (step S13).
- FIG. 9 is a flowchart showing the operation of the determination unit 203 according to this embodiment.
- This flowchart shows the state extraction process (step S11) of FIG. 8 in detail.
- the state learning unit 301 calculates a feature vector (feature amount) from learning process data (step S111). For example, the state learning unit 301 calculates, as a feature amount, data of a high contribution rate from among a plurality of types of data included in the process data using principal component analysis.
- the state learning unit 301 generates a feature space composed of feature vectors, and transfers process data for learning to the feature space (step S112).
- the state learning unit 301 classifies the process data into a plurality of classes on the feature space as shown in FIG. 5 (step S113), and outputs each class as a different system state (step S114). For example, as shown in FIG. 6, the state learning unit 301 attaches a system state ID to each system state and describes the normal characteristics of the communication pattern in each system state.
- FIG. 10 is a flowchart showing the operation of the packet learning unit 202 according to the present embodiment. This flowchart shows in detail the characteristic calculation process (step S12) of FIG.
- the characteristic extraction unit 401 acquires all pattern types included in the learning communication pattern (step S121). For example, command types such as “read” and “write” are acquired as pattern types.
- the characteristic extraction unit 401 creates a pattern type list and stores all the acquired pattern types in the pattern type list (step S122). Here, the characteristic extraction unit 401 selects one type of interest (target pattern type) from the pattern type list (step S123). The characteristic extraction unit 401 acquires all the system states output from the state learning unit 301 in step S114 and input to the model creation unit 402 (step S124).
- the characteristic extraction unit 401 creates a system state list and stores all acquired system states in the system state list (step S125). Here, the characteristic extraction unit 401 selects one state of interest (target system state) from the system state list (step S126). The characteristic extraction unit 401 calculates the normal characteristic of the target pattern type (step S127).
- the characteristic extraction unit 401 counts the total number (Nt) of patterns generated during the period corresponding to the target system state for the learning communication pattern. Furthermore, the characteristic extraction unit 401 counts the number (N) of patterns of the target pattern type that occurred in the period corresponding to the target system state for the communication pattern for learning. The characteristic extraction unit 401 calculates the normal occurrence frequency (Fn) per unit time for each type based on the number (N) of patterns of the target pattern type. Also, the normal occurrence probability (Pn) of the pattern type of interest is calculated by dividing the number of patterns (N) for each type by the total number of patterns of all types (Nt).
- Fn normal occurrence frequency
- Pn normal occurrence probability
- the model creation unit 402 creates a model by associating normal characteristics such as normal occurrence frequency (Fn) calculated by the characteristic extraction unit 401 with the system state of interest (step S128).
- the created model is stored in the storage unit 204.
- the characteristic extraction unit 401 deletes the target system state from the system state list (step S129).
- the characteristic extraction unit 401 determines whether there is a remaining system state in the system state list (step S130). If there is a remaining system state (YES in step S130), the characteristic extraction unit 401 returns to step S126 and selects a new target system state from the system state list. The state deletion process (steps S127 to S129) is executed again from the characteristic calculation process for the new system state of interest. If there is no remaining system state (NO in step S130), the characteristic extraction unit 401 deletes the pattern type of interest from the pattern type list (step S131).
- the characteristic extraction unit 401 determines whether there is a remaining pattern type in the pattern type list (step S132). If there are remaining pattern types (YES in step S132), the characteristic extraction unit 401 returns to step S123, and selects a new pattern type of interest from the pattern type list. From the status acquisition process, the type deletion process (steps S124 to S131) is executed again for the new target pattern type. If there is no remaining pattern type (NO in step S132), the process returns to the flowchart of FIG.
- the communication pattern to be learned may be not only a single communication packet but also a sequence of communication packets having periodicity and order.
- FIG. 11 is a flowchart showing the operation of the abnormality detection apparatus 105 according to this embodiment.
- the acquisition unit 201 acquires information on a current communication pattern (that is, a detection target), and the determination unit 203 acquires current process data (step S21).
- the determination unit 203 determines the system state of the plant system from the acquired process data (step S22), and acquires normal characteristics associated with the system state using the model stored in the storage unit 204 (step S22). S23).
- the detection unit 205 calculates the characteristics of the communication pattern based on the communication pattern information acquired by the acquisition unit 201 (step S24). For example, the detection unit 205 calculates the occurrence frequency per unit time for each type of communication pattern as the characteristic of the communication pattern. The detecting unit 205 determines whether or not the calculated characteristic matches the normal characteristic (step S25).
- the term “match” is not limited to a perfect match, but may include a case of being similar or within a predetermined range. For example, the detection unit 205 determines the similarity between the distribution of occurrence frequencies per unit time for each type and the distribution based on normal characteristics.
- the detection unit 205 detects that a communication packet having an abnormal communication pattern is transmitted (step S26), and outputs warning information.
- the detection unit 205 also considers that a control abnormality has occurred when it is determined in the state determination process (step S22) that there is no corresponding system state (system state abnormality).
- the detection unit 205 considers that an abnormal communication pattern packet is not transmitted.
- the processing of the flowchart returns to step S21, and the processing from steps S21 to S26 is repeated at a predetermined cycle.
- the communication pattern to be detected may be not only a single communication packet but also a sequence of communication packets having periodicity and order.
- FIG. 12 is a flowchart showing the operation of the determination unit 203 according to this embodiment. This flowchart shows the state determination process (step S22) of FIG. 11 in detail.
- the state determination unit 302 transfers the current process data to the learned feature space (step S221).
- the learned feature space is generated in advance by the state learning unit 301 as described above.
- the state determination unit 302 determines whether or not the process data corresponds to any of the classes classified at the time of learning (step S222). That is, the state determination unit 302 confirms the position of the transferred process data on the feature space and determines a class including the process data. When it is determined that the class falls under the category (YES in step S222), the state determination unit 302 outputs a system state corresponding to the class (step S223). When it is determined that the class does not correspond to the classified class (NO in step S222), the state determination unit 302 determines that the current process data does not correspond to any of the system states defined at the time of learning (system state abnormality). Is output (step S224).
- FIG. 13 is a flowchart showing the operation of the detection unit 205 according to this embodiment. This flowchart shows in detail the characteristic calculation process (step S24) of FIG. First, the detection unit 205 acquires all pattern types included in the current communication pattern (step S241). An example of the pattern type acquired here is the same as the pattern type acquired by the packet learning unit 202.
- the detecting unit 205 creates a pattern type list and stores all the acquired pattern types in the pattern type list (step S242). Here, the detection unit 205 selects one type of interest (target pattern type) from the pattern type list (step S243).
- the detecting unit 205 calculates the characteristic of the pattern type of interest (step S244). For example, the detection unit 205 counts the total number (Nt) of patterns generated within a predetermined period for the current communication pattern. Furthermore, the characteristic extraction unit 401 counts the number (N) of patterns of the target pattern type that occurred within a predetermined period for the current communication pattern. The detection unit 205 calculates the normal occurrence frequency (F) per unit time for each type based on the number (N) of patterns of the target pattern type. Also, the occurrence probability (P) of the pattern type of interest is calculated by dividing the number (N) of patterns for each type by the total number (Nt) of patterns of all types. The calculated characteristics are stored in association with the target pattern type.
- F normal occurrence frequency
- P occurrence probability
- the detecting unit 205 determines whether or not a pattern type for which characteristics are not calculated remains in the pattern type list (step S245). If there is a remaining pattern type (YES in step S245), the detection unit 205 returns to step S243 and selects a new pattern type of interest from the pattern type list. The characteristic calculation process (step S244) is executed again for the new target pattern type. If there is no remaining pattern type (NO in step S245), the process returns to the flowchart of FIG.
- the communication pattern to be detected may be not only a single communication packet but also a sequence of communication packets having periodicity and order.
- an abnormal communication pattern on the network is detected based on the communication pattern of the communication packet for controlling the plant system and the process data collected from the system.
- Various system states can be extracted from the process data, and an abnormality in the communication pattern (communication packet) can be detected using a model corresponding to the system state, so that the abnormality detection can be performed with high accuracy. .
- various system states in each phase can be extracted in addition to operation modes based on phases such as “start-up”, “running”, “down”, and “maintenance” that can be switched by the operator. can do.
- phases such as “start-up”, “running”, “down”, and “maintenance” that can be switched by the operator. can do.
- PID control Various system states that change can be extracted.
- a model corresponding to the system state can be further divided and created, so that the detection accuracy can be improved.
- the system state of the plant system changes depending on external factors such as outside air temperature and internal factors such as control parameters.
- external factors such as outside air temperature and internal factors such as control parameters.
- the external temperature is based on the system state learned from the process data such as the external temperature. It is possible to quickly detect that an abnormal command (that is, a command that is not suitable for the system state) that does not occur when the value is low is input.
- FIG. 14 is a schematic configuration diagram of an information processing apparatus 1400 according to the present embodiment.
- the information processing apparatus 1400 includes an acquisition unit 1401 and a detection unit 1402.
- the acquisition unit 1401 acquires a communication packet for monitoring and controlling the system and process data collected from devices installed in the system via a network.
- the detection unit 1402 detects an abnormal communication pattern on the network based on the correspondence between the communication pattern related to the communication packet and the process data. According to the information processing apparatus 1400 according to the present embodiment, abnormality detection in the industrial control system can be performed with high accuracy.
- FIG. 15 is a schematic configuration diagram of an information processing apparatus 1500 according to the present embodiment.
- the information processing apparatus 1500 includes an acquisition unit 1501 and a learning unit 1502.
- the acquisition unit 1501 acquires communication packets for monitoring and controlling the system and process data collected from devices installed in the system via the network.
- the learning unit 1502 creates a model for detecting an abnormal communication pattern of the communication packet on the network based on the correspondence between the communication pattern related to the communication packet and the process data.
- a model that can accurately detect an abnormality in an industrial control system can be obtained.
- the present invention is not limited to the above-described embodiment, and can be appropriately changed without departing from the spirit of the present invention.
- the configurations of the abnormality detection device 105 (FIG. 2), the determination unit 203 (FIG. 3), and the packet learning unit 202 (FIG. 4) are merely examples, and may further include components other than those exemplified. Good.
- one component may be distributed to a plurality of components, and a plurality of components may be aggregated into one component.
- a processing method for recording a program for operating the configuration of the embodiment to realize the functions of the above-described embodiment on a storage medium, reading the program recorded on the storage medium as a code, and executing the program on a computer is also included in each embodiment. Included in the category. That is, a computer-readable storage medium is also included in the scope of each embodiment. In addition to the storage medium on which the above-described program is recorded, the program itself is included in each embodiment. In addition, one or more components included in the above-described embodiment are ASIC (Application Specific Integrated Circuit), FPGA (Field Programmable Gate Array), or the like configured to realize the function of each component. There may be.
- ASIC Application Specific Integrated Circuit
- FPGA Field Programmable Gate Array
- the storage medium for example, a floppy (registered trademark) disk, a hard disk, an optical disk, a magneto-optical disk, a CD (Compact Disk) -ROM, a magnetic tape, a nonvolatile memory card, and a ROM can be used.
- the embodiment is not limited to executing the processing by a single program recorded in the storage medium, but also executes the processing by operating on the OS in cooperation with other software and the function of the expansion board. Included in the category.
- An acquisition unit for acquiring communication packets for monitoring and controlling the system and process data collected from devices installed in the system via a network;
- An information processing apparatus comprising: a detection unit configured to detect an abnormal communication pattern on the network based on a correspondence relationship between a communication pattern related to the communication packet and the process data.
- Appendix 2 A determination unit configured to determine a system state of the system into which the process data is classified based on a feature amount extracted from the process data; The information processing apparatus according to appendix 1, wherein the detection unit detects the abnormal communication pattern using a model representing a characteristic of the communication pattern in each of the system states.
- the model represents a normal characteristic of the communication pattern in the system state, and the detection unit is configured to generate the abnormal communication pattern when the characteristic of the communication pattern does not match the normal characteristic.
- the information processing apparatus according to attachment 2 wherein the information processing apparatus determines.
- the device includes a sensor and an actuator installed in the system, The information processing apparatus according to any one of appendices 1 to 4, wherein the process data includes sensor data measured by the sensor and actuator data indicating a setting of the actuator.
- An information processing method comprising: detecting an abnormal communication pattern of the communication packet on the network based on a correspondence relationship between a communication pattern related to the communication packet and the process data.
- An acquisition unit for acquiring communication packets for monitoring and controlling the system and process data collected from devices installed in the system via a network;
- An information processing apparatus comprising: a learning unit that creates a model for detecting an abnormal communication pattern of the communication packet on the network based on a correspondence relationship between a communication pattern related to the communication packet and the process data .
- An information processing method comprising: learning a model for detecting an abnormal communication pattern of the communication packet on the network based on a correspondence relationship between a communication pattern related to the communication packet and the process data.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Small-Scale Networks (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
Abstract
情報処理装置は、システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する取得部と、通信パケットに関する通信パターンとプロセスデータとの対応関係に基づいて、ネットワーク上における異常な通信パターンを検知する検知部とを備える。
Description
本発明は、情報処理装置、情報処理方法およびプログラムに関する。
特許文献1には、発電プラントなどの産業制御システムにおける制御ネットワークを対象とした異常検知装置が開示されている。この異常検知装置は、プログラムモード、稼動モード、保守モードなどの運用モードごとに機器間の正常通信パターンを事前に記憶しておき、現在の運用モードの正常通信パターンに適合しない通信を異常として検知する。
しかしながら、産業制御システムにおいては、同一の運用モードであっても機器の制御方法は一定ではなく、システムとして多様な状態を持ち、多種多様な正常通信パターンが存在し得る。特許文献1の技術では、それぞれの運用モードに対して画一的な正常通信パターンを用いて異常検知が行われるため、ある運用モードにおいて複数のシステム状態が存在する場合に異常検知を精度良く行うことは困難である。
本発明は、上述の課題に鑑みてなされたものであって、産業制御システムにおける異常検知を精度良く行うことが可能な情報処理装置、情報処理方法およびプログラムを提供することを目的とする。
本発明の一観点によれば、システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する取得部と、前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における異常な前記通信パターンを検知する検知部とを備えることを特徴とする情報処理装置が提供される。
本発明の他の観点によれば、システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得するステップと、前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するステップとを備えることを特徴とする情報処理方法が提供される。
本発明の他の観点によれば、コンピュータに、システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得するステップと、前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するステップとを実行させることを特徴とするプログラムが提供される。
本発明の他の観点によれば、システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する取得部と、前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するモデルを作成する学習部とを備えることを特徴とする情報処理装置が提供される。
本発明の他の観点によれば、システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得するステップと、前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するモデルを作成するステップとを備えることを特徴とする情報処理方法が提供される。
本発明によれば、産業制御システムにおける異常検知を精度良く行うことが可能な情報処理装置、情報処理方法およびプログラムが提供される。
[第1実施形態]
図1は、本実施形態に係る産業制御システムの概略構成を示すブロック図である。産業制御システム10は、火力発電所、化学製造工場などの各種のプラントシステムを監視制御するコンピュータシステムである。産業制御システム10は、エンジニアリングステーション101、HMI(Human Machine Interface)102、DCS(Distributed Control System)103、PLC(Programmable Logic Controller)104、異常検知装置105、ヒストリアン106、ファイアウォール107、制御ネットワーク108、フィールド機器109、フィールドネットワーク110およびフィールドネットワーク111を備える。
図1は、本実施形態に係る産業制御システムの概略構成を示すブロック図である。産業制御システム10は、火力発電所、化学製造工場などの各種のプラントシステムを監視制御するコンピュータシステムである。産業制御システム10は、エンジニアリングステーション101、HMI(Human Machine Interface)102、DCS(Distributed Control System)103、PLC(Programmable Logic Controller)104、異常検知装置105、ヒストリアン106、ファイアウォール107、制御ネットワーク108、フィールド機器109、フィールドネットワーク110およびフィールドネットワーク111を備える。
エンジニアリングステーション101は、産業制御システム10で用いられる制御プログラムを作成し、HMI102、DCS103またはPLC104にプログラムを書き込むための端末である。HMI102は、エンジニアリングステーション101から書き込まれたプログラムに基づいて、監視制御対象となるプラントシステムのシステム状態(稼動状況)などを表示するとともに、オペレータにより稼働状況の確認、システムの運転パラメータの調節やフィールド機器109の設定変更などの制御を行うために使用される端末である。具体的には、HMI102は、エンジニアリングステーション101、DCS103、PLC104およびヒストリアン106に対して各種のコマンドを含む通信パケットを送信するとともに、その応答の通信パケットを受信する。コマンドとしては、DCS103およびPLC104に対して表示用のデータを送信させるコマンドや、DCS103およびPLC104に対してフィールド機器109のレジスタ等を設定させるコマンドなどが該当する。これにより、HMI102は、例えばDCS103およびPLC104から表示用のデータを受信して表示を行う。また、HMI102は、設定値が変更されると、その設定値をDCS103およびPLC104に送信する。そして、DCS103およびPLC104は、フィールド機器109における設定値を設定する。
DCS103は、制御ネットワーク108とフィールドネットワーク110との間に接続され、エンジニアリングステーション101から書き込まれたプログラムに基づいて、フィールド機器109の制御を行う。例えば、DCS103は、フィールド機器109に対して必要に応じて若しくは数百ミリ秒から数秒間隔でコマンドを含む通信パケットを送信するとともに、その応答の通信パケットを受信する。また、DCS103はフィールド機器109が自律的に送信する通信パケットを受信する。DCS103の数は特に限定されない。
PLC104は、制御ネットワーク108とフィールドネットワーク111との間に接続されている。フィールドネットワーク111は、上述のフィールドネットワーク110とは分離されたネットワークである。PLC104は、エンジニアリングステーション101から書き込まれたプログラムに基づいて、フィールド機器109の制御を行う。例えば、PLC104は、フィールド機器109に対して必要に応じて若しくは数百ミリ秒から数秒間隔で通信パケットを送信するとともに、その応答の通信パケットを受信する。また、PLC104はフィールド機器109が自律的に送信する通信パケットを受信する。PLC104の数は特に限定されない。なお、産業制御システム10は、DCS103およびPLC104のいずれか一方のみを備えていてもよい。また、DCS103の配下にPLC104を接続し、その先にフィールド機器109を接続してもよい。
異常検知装置105は、エンジニアリングステーション101、HMI102、DCS103、PLC104、ヒストリアン106の間で送信される通信パケットの通信パターンを監視し、通信パターンの異常を検知する。ここで、通信パターンは、通信パケット単体若しくは周期性および順序性を有する一連の通信パケット群(シーケンス)で構成されるものとする。異常検知装置105は、ネットワークを流れる通信パケットのペイロードまたはヒストリアン106から取得したデータに基づいてプラントシステムのシステム状態を判定する。さらに異常検知装置105は、システム状態に応じて事前に作成されたモデルを用いて、適切な通信パケットが送信されているか否かを判断する。
サイバー攻撃などにより、DCS103またはPLC104に対して異常(不正)な通信パケットが送信された場合、当該通信パケットに関する通信パターンの特性が、そのときのシステム状態の正常時の特性(正常特性)と異なるものとなる。例えば、正常特性と比較して、特定の通信パターンの発生頻度が増加する、現在のシステム状態では想定されない通信パターンが発生する、などの変化が生じ得る。異常検知装置105は、このような通信パターンの特性の変化を検知して、制御異常が発生しているか否かを判断することができる。異常な通信パターンとしては、サイバー攻撃による不正な通信パターンだけでなく、機器の異常によって出力された通信パターンなども該当する。
なお、本実施形態において、異常検知装置105は制御ネットワーク108に接続され、制御ネットワーク108における異常な通信パターンを検知することを対象としているが、このような構成に限定されない。異常検知装置105はフィールドネットワーク110、111に接続され、DCS103またはPLC104とフィールド機器109の間で送信される異常な通信パターンの通信パケットを検知するように構成されていてもよい。
ヒストリアン106は、DCS103、PLC104、HMI102などから収集されたセンサデータまたはアクチュエータデータやアラーム情報等を多次元の時系列データとして記憶する装置である。
ファイアウォール107は、産業制御システム10とインターネットなどの外部ネットワーク120との境界に設置され、内外の通信を監視することで、外部の攻撃から産業制御システム10を保護するためのソフトウェアや機器である。すなわち、ファイアウォール107は、外部ネットワーク120から産業制御システム10へのサイバー攻撃などを抑制するためのセキュリティ機能を有している。例えば、ファイアウォール107は、ファイアウォール107を通過する通信パケットのIP(Internet Protocol)アドレス、ポート番号などを監視し、予め設定した条件によって当該通信パケットのフィルタリングを行う。
制御ネットワーク108には、エンジニアリングステーション101、HMI102、DCS103、PLC104、異常検知装置105、ヒストリアン106、ファイアウォール107が接続される。接続方法は有線、無線を問わない。制御ネットワーク108は、例えば、HMI102への表示用のデータを含む通信パケット、DCS103またはPLC104へのフィールド機器109の設定の情報を含む通信パケット、DCS103(またはPLC104)間で同期をとるための通信パケットなどを伝送する。
なお、制御ネットワーク108は、ファイアウォール107を介して、オフィスなどに設置される不図示の情報ネットワークと接続されていてもよい。情報ネットワークは、PC(Personal Computer)、ファイルサーバ、Webサーバ、メールサーバ、プリンタなどを含み、他のプラントの制御ネットワークと接続され得る。
フィールド機器109は、プラントシステムに設置されたセンサ、バルブおよびアクチュエータなどの機器である。センサとしては、例えば、温度センサ、圧力センサ、流量センサ、回転数センサ、組成センサなどが該当する。バルブとしては、例えば、圧力制御弁、流量制御弁、開閉弁などが該当する。アクチュエータとしては、例えば、ポンプ、ファンなどが該当する。なお、フィールド機器109の数および種類は限定されず、数百から数千程度の異なるフィールド機器109が含まれ得る。
フィールド機器109は、アクチュエータの設定により制御され、センサの測定値を出力する。アクチュエータデータは、例えばバルブ開度のような操作量などを含む。アクチュエータデータは、例えば必要に応じて若しくは数百ミリ秒から数秒間隔の周期で設定され得る。また、センサデータは、例えば温度、圧力、流量、水位、回転数、原材料の品質(組成)などを含む。センサデータは、例えば数百ミリ秒から数秒間隔で取得され得る。
センサデータおよびアクチュエータデータは、プラントシステムに設置された複数のフィールド機器109における計測および設定の状態を示す。異常検知装置105は、フィールド機器109の状態を解析することで、産業制御システム10の監視制御対象であるプラントシステムの詳細なシステム状態(稼動状況)を把握できる。以下、本実施形態では、センサデータおよびアクチュエータデータを「プロセスデータ」と総称して説明する。なお、プロセスデータには、HMI102から収集されるアラーム情報やプロセスデータの平均値、分散、標準偏差、時間変化(微分値)、累積値(積分値)などを含んでもよい。センサデータおよびアクチュエータデータの詳細については後述する。
フィールドネットワーク110には、DCS103およびフィールド機器109が接続される。同様に、フィールドネットワーク111には、PLC104および他のフィールド機器109が接続される。接続方法は有線、無線を問わない。また、フィールドネットワーク110、111は、バス接続を前提とするフィールドバスでもRS-485のようなシリアル通信でも構わない。フィールドネットワーク110、111は、これらの装置間で通信を行うために使用され、例えばフィールド機器109を制御するためのアクチュエータデータを含む通信パケット、フィールド機器109で測定されたセンサデータを含む通信パケットなどを伝送する。なお、DCS103およびPLC104は同一のフィールドネットワークに接続されても構わない。
図2は、本実施形態に係る異常検知装置105のブロック図である。異常検知装置105は、取得部201、パケット学習部202、判定部203、記憶部204、検知部205を備える。異常検知装置105は、通信パケットおよびプロセスデータ(センサデータおよびアクチュエータ)に基づいて予め学習を行い、学習結果に基づいて異常検知を行う。
取得部201は、学習時および検知時において、制御ネットワーク108で伝送される通信パケットを取得する。取得された通信パケットは、パケット学習部202に入力される。なお、取得部201は、フィールドネットワーク110、111で伝送される通信パケットを収集する他の装置から通信パケットを取得するように構成されてもよい。また、取得部201は、学習時および検知時において、プロセスデータを制御ネットワーク108で伝送される通信パケットのペイロードから取得してもヒストリアン106から取得しても構わない。
パケット学習部202は、学習時において、プラントシステムのシステム状態ごとに通信パターンの正常特性を学習する。正常特性の学習は、システム状態ごとに分類された学習用の通信パターン(通信パケット単体若しくは通信パケットのシーケンス)を用いて行われる。パケット学習部202は、システム状態と通信パターンの正常特性を関連付けたモデルを作成する。
判定部203は、学習時において、取得部201を介してヒストリアン106からプロセスデータを取得する。プロセスデータは、様々なシステム状態で収集されたものであって、例えば、外気温などの環境値、プラントシステムに供給される原材料の品質などの外乱による外的要因や、自動運用モードおよび手動運用モード、PID制御などの制御パラメータや目標値などのアクチュエータの設定による内的要因に応じて変化するシステム状態において収集されたデータを含む。自動運用モードではフィールド機器109の設定が自動的に制御され、手動運用モードではオペレータによりフィールド機器109の設定が手動で調節される。判定部203は、学習用のプロセスデータを複数のシステム状態に分類し、それぞれをクラスとして定義する。判定部203は、制御ネットワーク108で伝送される通信パケットのペイロードからプロセスデータを取得するように構成されてもよい。
判定部203は、検知時において、取得部201を介してプロセスデータを取得する。プロセスデータは、ほぼリアルタイムに取得され、判定部203により処理される。判定部203は、プロセスデータの分類先となるクラスを判定し、クラスで定義されたシステム状態を、現在のシステム状態として出力する。
記憶部204は、パケット学習部202により作成されたモデル、判定部203により分類されたシステム状態のクラスに関する情報、判定部203により判定された現在のシステム状態などを記憶する。
検知部205は、通信パターンおよびプロセスデータに基づいて、制御ネットワーク108における異常な通信パターン検知する。例えば、検知部205は、記憶部204に記憶されたモデルを用いて、現在のシステム状態において制御ネットワーク108を流れる通信パターンの特性が正常特性と合致しない場合に、異常な通信パターンの通信パケットが送信されていると判断する。検知部205は、検知結果を異常検知装置105の画面、情報ネットワークのPC、HMI102、ヒストリアン106、などの外部装置に出力する。
図3は、本実施形態に係る判定部203の詳細なブロック図である。判定部203は、状態学習部301、状態判定部302を備える。学習時において、状態学習部301は、学習用のプロセスデータから特徴量(特徴ベクトル)を抽出する。例えば、状態学習部301は、主成分分析を用いてDCS103またはPLC104から収集される多次元のプロセスデータをより低次元のプロセスデータに縮約する。そして、状態学習部301は、特徴空間上でプロセスデータをシステム状態の複数のクラスに分類する。例えば、図5に示すように、プロセスデータから2つの特徴量(特徴量1および特徴量2)が抽出され、これらの特徴量を軸とする2次元の特徴空間が形成される。特徴空間において、近隣に位置するプロセスデータの集合は、それぞれ異なるシステム状態としてクラス501、502、503に分類される。特徴量の抽出手法は、主成分分析に限定されず、ディープラーニング、SVM(Support Vector Machine)などを用いてもよい。特徴量は2つに限らず、1つでも3つ以上でも構わない。分類されるシステム状態は複数ではなく一つでも構わない。
さらに、状態学習部301は、各クラスに対応するシステム状態を定義する。例えば、図5において、特徴量1が水温、特徴量2が材料性質を表すものとする。この場合、クラス501は「水温、材料性質が適正時のシステム状態」、クラス502は「水温が高い時のシステム状態」、クラス503は「材料性質が悪い時のシステム状態」をそれぞれ表すシステム状態して定義される。このように、状態学習部301は、プラントシステムにおいて外的要因や内的要因に応じて変化する多様なシステム状態を、学習用のプロセスデータに基づいて抽出することができる。学習時のプロセスデータは、プラントシステムの正常時におけるシステム状態を反映している。特徴量は水温、材料性質のように1種類のプロセスデータに限らず、2種類以上のプロセスデータにそれぞれ重み付けを行った和のような組合せでも構わない。
検知時において、状態判定部302は、検知対象のプロセスデータから特徴量を抽出する。検知対象のプロセスデータは、DCS103またはPLC104からリアルタイムに収集されたプロセスデータであって、プラントシステムの現在のシステム状態を反映している。状態判定部302は、状態学習部301と同様に特徴空間を形成し、プロセスデータの特徴空間上での位置を確認することで、プロセスデータの分類先となるクラスを判定する。状態判定部302は、判定されたクラスに対応するシステム状態を出力する。
図4は、本実施形態に係るパケット学習部202の詳細なブロック図である。パケット学習部202は、特性抽出部401、モデル作成部402を備える。学習時において、特性抽出部401は、学習用の通信パターンの特性(正常特性)を算出する。ここで算出される特性は、例えば通信パターンに含まれるコマンドに基づき、コマンドの種別毎の通信頻度や周期など、または順序を有する一連の通信パケット群に含まれるそれぞれのコマンドのシーケンス(時系列の並び順)の種別毎の通信頻度や周期などであり得る。ここで、コマンドには、MACアドレス、IPアドレス、ポート番号等、さらにはリード/ライトのようなコマンド種別、リード/ライトを行うアドレス、ライトを行うデータ、リードしたデータなどを含むものとする。
また学習時において、モデル作成部402は、入力されたシステム状態と、特性抽出部401で算出された通信パターンの正常特性とを関連付ける。ここで入力されるシステム状態は、状態学習部301により学習用のプロセスデータから抽出されたものであって、一つもしくは異なる複数のシステム状態を含む。モデル作成部402は、各システム状態における通信パターンの正常特性をモデルとして出力する。
図6は、本実施形態に係るモデルの一例を示すテーブルである。モデルには、システム状態ID(Identification)、システム状態を主に決定する要素である水温、材料性質、制御パラメータなどの属性情報、各システム状態における通信パターンの正常特性などの情報が含まれる。システム状態IDは、システム状態ごとに付され、システム状態を識別するための符号である。属性情報に関して言えば、例えば、状態1は、水温および材料性質が適正なシステム状態であることを表している。同様に、状態2は、水温が高く、材料性質が適正なシステム状態、状態3は、水温が適正で材料性質が悪いシステム状態であることを表している。属性情報は、水温、材料性質、制御パラメータに限定されず、例えばセンサデータおよびアクチュエータに含まれる任意の情報であってよい。なお、属性情報は、モデルの構成要件として必須ではない。
図6の例において、正常特性は、所定期間内の通信パターンの種別(A~D)毎の発生頻度で表されている。例えば、状態1では、通信パターンA~Dがそれぞれ3、101、0、2の頻度で発生することが正常である。同様に、状態2では、通信パターンA~Dがそれぞれ1、9、45、60の頻度で発生することが正常であり、状態3では、通信パターンA~Dがそれぞれ1、20、0、40の頻度で発生することが正常である。正常特性は、異常な通信パターンが発生しているか否かを判断するための指標であって、運用時に算出される通信パターンの特性と比較される。発生頻度の対象となる通信パターンは、通信パケット単体だけでなく、周期性および順序性を有する通信パケットのシーケンスでも構わない。また、正常特性は通信パターンの種別毎の発生確率でも構わない。
図7は、本実施形態に係る異常検知装置105のハードウェアブロック図である。異常検知装置105は、CPU701、メモリ702、記憶装置703、通信インタフェース(I/F)704を備える。CPU701は、メモリ702、記憶装置703に記憶されたプログラムに従って所定の動作を行うとともに、異常検知装置105の各部を制御する機能を有する。また、CPU701は、取得部201、パケット学習部202、判定部203、検知部205の機能を実現するプログラムを実行する。
メモリ702は、RAM(Random Access Memory)などから構成され、CPU701の動作に必要なメモリ領域を提供する。また、メモリ702は、取得部201、パケット学習部202、判定部203、検知部205の機能を実現するバッファ領域として使用され得る。記憶装置703は、例えばフラッシュメモリ、SSD(Solid State Drive)、HDD(Hard Disk Drive)などであって、記憶部204の機能を実現する記憶領域を提供する。
記憶装置703には、異常検知装置105を動作させるOS(Operating System)などの基本プログラム、学習処理および異常検知処理を行うアプリケーションプログラムなどが記憶される。通信インタフェース704は、USB(Universal Serial Bus)、イーサネット(登録商標)、Wi-Fi(登録商標)などの規格に基づいて外部装置との通信を行うためのモジュールである。
なお、図7に示されているハードウェア構成は例示であり、これら以外の装置が追加されていてもよく、一部の装置が設けられていなくてもよい。例えば、一部の機能がネットワークを介して他の装置により提供されてもよく、本実施形態を構成する機能が複数の装置に分散されて実現されるものであってもよい。
図8は、本実施形態に係る異常検知装置105の動作を表すフローチャートである。ここでは、学習時における動作を説明する。まず、判定部203は、入力された学習用のプロセスデータから複数のシステム状態を抽出する(ステップS11)。例えば、学習用のプロセスデータは複数のクラスに分類され、各クラスに対応するシステム状態が定義される。判定部203は、抽出されたシステム状態を保存するとともに、パケット学習部202にシステム状態を出力する。
続いて、パケット学習部202は、取得部201で取得された学習用の通信パターンからシステム状態毎に正常特性を算出する(ステップS12)。例えば、正常特性として、通信パターンに関する所定期間内の発生頻度が算出される。パケット学習部202は、算出された正常特性とシステム状態とを関連付けたモデルを作成し、当該モデルを記憶部204に記憶する(ステップS13)。
図9は、本実施形態に係る判定部203の動作を表すフローチャートである。このフローチャートは、図8の状態抽出処理(ステップS11)を詳細に示すものである。まず、状態学習部301は、学習用のプロセスデータから特徴ベクトル(特徴量)を算出する(ステップS111)。例えば、状態学習部301は、プロセスデータに含まれる複数の種類のデータの中から、主成分分析を用いて寄与率の高い種類のデータを特徴量として算出する。
続いて、状態学習部301は、特徴ベクトルからなる特徴空間を生成し、学習用のプロセスデータを特徴空間に転写する(ステップS112)。状態学習部301は、図5に示すような特徴空間上でプロセスデータを複数のクラスに分類し(ステップS113)、各クラスを異なるシステム状態として出力する(ステップS114)。例えば、状態学習部301は、図6に示されるように、各システム状態にシステム状態IDを付すとともに、各システム状態における通信パターンの正常特性などを記述する。
図10は、本実施形態に係るパケット学習部202の動作を表すフローチャートである。このフローチャートは、図8の特性算出処理(ステップS12)を詳細に示すものである。まず、特性抽出部401は、学習用の通信パターンに含まれるすべてのパターン種別を取得する(ステップS121)。例えば、パターン種別として、「read」、「write」などのコマンドの種別が取得される。
特性抽出部401は、パターン種別リストを作成し、取得されたすべてのパターン種別を当該パターン種別リストに格納する(ステップS122)。ここで、特性抽出部401は、パターン種別リストの中から着目する1つの種別(着目パターン種別)を選択する(ステップS123)。特性抽出部401は、ステップS114において状態学習部301から出力され、モデル作成部402に入力されたすべてのシステム状態を取得する(ステップS124)。
特性抽出部401は、システム状態リストを作成し、取得されたすべてのシステム状態を当該システム状態リストに格納する(ステップS125)。ここで、特性抽出部401は、システム状態リストの中から着目する1つの状態(着目システム状態)を選択する(ステップS126)。特性抽出部401は、着目パターン種別の正常特性を算出する(ステップS127)。
例えば、特性抽出部401は、学習用の通信パターンについて、着目システム状態に該当する期間に発生したパターンの総数(Nt)をカウントする。さらに、特性抽出部401は、学習用の通信パターンについて、着目システム状態に該当する期間に発生した着目パターン種別のパターンの個数(N)をカウントする。特性抽出部401は、着目パターン種別のパターンの個数(N)をもとに種別毎に単位時間あたりの正常発生頻度(Fn)を算出する。また、種別毎のパターンの個数(N)をすべての種別のパターンの総数(Nt)で除算することにより、着目パターン種別の正常発生確率(Pn)を算出する。
モデル作成部402は、特性抽出部401により算出された正常発生頻度(Fn)などの正常特性を、着目システム状態に関連付けてモデルを作成する(ステップS128)。作成されたモデルは記憶部204に記憶される。特性抽出部401は、システム状態リストから着目システム状態を削除する(ステップS129)。
特性抽出部401は、システム状態リスト内に残っているシステム状態があるか否かを判断する(ステップS130)。残りのシステム状態がある場合(ステップS130でYES)、特性抽出部401はステップS126に戻り、システム状態リストの中から新たな着目システム状態を選択する。新たな着目システム状態に対して、特性算出処理から状態削除処理(ステップS127~S129)が再度実行される。残りのシステム状態がない場合(ステップS130でNO)、特性抽出部401は、パターン種別リストから着目パターン種別を削除する(ステップS131)。
特性抽出部401は、パターン種別リスト内に残っているパターン種別があるか否かを判断する(ステップS132)。残りのパターン種別がある場合(ステップS132でYES)、特性抽出部401はステップS123に戻り、パターン種別リストの中から新たな着目パターン種別を選択する。新たな着目パターン種別に対して、状態取得処理から種別削除処理(ステップS124~S131)が再度実行される。残りのパターン種別がない場合(ステップS132でNO)、処理は図8のフローチャートに戻る。学習対象とする通信パターンは、通信パケット単体だけでなく、周期性および順序性を有する通信パケットのシーケンスでも構わない。
図11は、本実施形態に係る異常検知装置105の動作を表すフローチャートである。ここでは、検知時における動作を説明する。まず、取得部201は現在の(すなわち検知対象となる)通信パターンの情報を取得するとともに、判定部203は現在のプロセスデータを取得する(ステップS21)。判定部203は、取得されたプロセスデータからプラントシステムのシステム状態を判定するとともに(ステップS22)、記憶部204に記憶されたモデルを用いて、システム状態に関連付けられた正常特性を取得する(ステップS23)。
次に、検知部205は、取得部201で取得された通信パターンの情報に基づいて、通信パターンの特性を算出する(ステップS24)。例えば、検知部205は、通信パターンの特性として、通信パターンの種別毎の単位時間あたりの発生頻度を算出する。検知部205は、算出された特性が正常特性に合致するか否かを判断する(ステップS25)。ここで合致とは、完全な一致に限らず、類似または所定の範囲内にある場合を含み得る。例えば、検知部205は、種別毎の単位時間あたりの発生頻度の分布について、正常特性による分布との類似性を判断する。
正常特性に合致しないと判断された場合(ステップS25でNO)、検知部205は、異常な通信パターンの通信パケットが送信されていることを検知し(ステップS26)、警告情報を出力する。検知部205は、状態判定処理(ステップS22)において、該当するシステム状態がない(システム状態異常)と判定された場合にも、制御異常が発生しているとみなす。一方、正常特性に合致すると判定された場合(ステップS25でYES)、検知部205は、異常な通信パターンのパケットが送信されていないとみなす。フローチャートの処理はステップS21に戻り、ステップS21~S26までの処理が所定の周期で繰り返される。検知対象となる通信パターンは、通信パケット単体だけでなく、周期性および順序性を有する通信パケットのシーケンスでも構わない。
図12は、本実施形態に係る判定部203の動作を表すフローチャートである。このフローチャートは、図11の状態判定処理(ステップS22)を詳細に示すものである。まず、状態判定部302は、現在のプロセスデータを学習済みの特徴空間に転写する(ステップS221)。学習済みの特徴空間は、上述のとおり状態学習部301により事前に生成されている。
状態判定部302は、プロセスデータが学習時に分類されたクラスのいずれかに該当するか否かを判断する(ステップS222)。すなわち、状態判定部302は、特徴空間上において、転写されたプロセスデータの位置を確認して、プロセスデータが含まれるクラスを判断する。分類されたクラスに該当すると判断された場合(ステップS222でYES)、状態判定部302は、該当クラスに対応するシステム状態を出力する(ステップS223)。分類されたクラスに該当しないと判断された場合(ステップS222でNO)、状態判定部302は、現在のプロセスデータが、学習時に定義されたシステム状態のいずれにも該当しないこと(システム状態異常)を出力する(ステップS224)。
図13は、本実施形態に係る検知部205の動作を表すフローチャートである。このフローチャートは、図11の特性算出処理(ステップS24)を詳細に示すものである。まず、検知部205は、現在の通信パターンに含まれるすべてのパターン種別を取得する(ステップS241)。ここで取得されるパターン種別の例として、パケット学習部202で取得されるパターン種別と同様のものが挙げられる。
検知部205は、パターン種別リストを作成し、取得されたすべてのパターン種別を当該パターン種別リストに格納する(ステップS242)。ここで、検知部205は、パターン種別リストの中から着目する1つの種別(着目パターン種別)を選択する(ステップS243)。
検知部205は、着目パターン種別の特性を算出する(ステップS244)。例えば、検知部205は、現在の通信パターンについて、所定期間内に発生したパターンの総数(Nt)をカウントする。さらに、特性抽出部401は、現在の通信パターンについて、所定期間内に発生した着目パターン種別のパターンの個数(N)をカウントする。検知部205は、着目パターン種別のパターンの個数(N)をもとに種別毎に単位時間あたりの正常発生頻度(F)を算出する。また、種別毎のパターンの個数(N)をすべての種別のパターンの総数(Nt)で除算することにより、着目パターン種別の発生確率(P)を算出する。算出された特性は、着目パターン種別に関連付けて記憶される。
検知部205は、特性が算出されていないパターン種別が、パターン種別リスト内に残っているか否かを判断する(ステップS245)。残りのパターン種別がある場合(ステップS245でYES)、検知部205はステップS243に戻り、パターン種別リストの中から新たな着目パターン種別を選択する。新たな着目パターン種別に対して、特性算出処理(ステップS244)が再度実行される。残りのパターン種別がない場合(ステップS245でNO)、処理は図11のフローチャートに戻る。検知対象とする通信パターンは、通信パケット単体だけでなく、周期性および順序性を有する通信パケットのシーケンスでも構わない。
本実施形態によれば、プラントシステムを制御するための通信パケットの通信パターンおよび該システムから収集されたプロセスデータに基づいて、ネットワーク上における異常な通信パターンを検知する。プロセスデータから様々なシステム状態を抽出することができ、システム状態に応じたモデルを用いて通信パターン(通信パケット)の異常を検知することができるため、異常検知を精度良く行うことが可能となる。
プロセスデータを分析することで、オペレータにより切り替え可能な「立ち上げ」、「運転中」、「立ち下げ」、「保守」といったフェーズに基づく運用モードだけではなく、各フェーズにおける多様なシステム状態を抽出することができる。例えば、外気温などの環境値、プラントシステムに供給される原材料の品質などの外的要因や、自動運用モードおよび手動運用モード、PID制御などの制御パラメータや目標値などの内的要因に応じて変化する多様なシステム状態を抽出することができる。これにより、システム状態に応じたモデルをより細分化して作成することができるため、検知精度を向上させることが可能となる。
上述のように、外気温などの外的要因や制御パラメータなどの内的要因によってプラントシステムのシステム状態は変化する。本実施形態によれば、例えば、外気温が低いにもかかわらず冷却材を投入するコマンドが攻撃者から投入された場合に、外気温などのプロセスデータから学習したシステム状態をもとに外気温が低いときに発生することのない異常なコマンド(すなわち、システム状態に適さないコマンド)が投入されたことを迅速に検知できる。また、制御パラメータや目標値の設定変更によってプラント内の温度が安定状態若しくは過渡状態に変動するプラントシステムにおいて、安定状態にもかかわらず設定値を変更するコマンドが攻撃者から投入された場合に、温度やその時間変化などのプロセスデータから学習したシステム状態をもとに安定状態で発生することのない異常なコマンドが投入されたことを迅速に検知できる。
[第2実施形態]
図14は、本実施形態に係る情報処理装置1400の概略構成図である。情報処理装置1400は、取得部1401、検知部1402を備える。取得部1401は、システムを監視制御するための通信パケットとシステムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する。検知部1402は、通信パケットに関する通信パターンとプロセスデータとの対応関係に基づいて、ネットワーク上における異常な通信パターンを検知する。本実施形態に係る情報処理装置1400によれば、産業制御システムにおける異常検知を精度良く行える。
図14は、本実施形態に係る情報処理装置1400の概略構成図である。情報処理装置1400は、取得部1401、検知部1402を備える。取得部1401は、システムを監視制御するための通信パケットとシステムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する。検知部1402は、通信パケットに関する通信パターンとプロセスデータとの対応関係に基づいて、ネットワーク上における異常な通信パターンを検知する。本実施形態に係る情報処理装置1400によれば、産業制御システムにおける異常検知を精度良く行える。
[第3実施形態]
図15は、本実施形態に係る情報処理装置1500の概略構成図である。情報処理装置1500は、取得部1501、学習部1502を備える。取得部1501は、システムを監視制御するための通信パケットとシステムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する。学習部1502は、通信パケットに関する通信パターンとプロセスデータとの対応関係に基づいて、ネットワーク上における通信パケットの異常な通信パターンを検知するモデルを作成する。本実施形態に係る情報処理装置1500によれば、産業制御システムにおける異常検知を精度良く行えるモデルが得られる。
図15は、本実施形態に係る情報処理装置1500の概略構成図である。情報処理装置1500は、取得部1501、学習部1502を備える。取得部1501は、システムを監視制御するための通信パケットとシステムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する。学習部1502は、通信パケットに関する通信パターンとプロセスデータとの対応関係に基づいて、ネットワーク上における通信パケットの異常な通信パターンを検知するモデルを作成する。本実施形態に係る情報処理装置1500によれば、産業制御システムにおける異常検知を精度良く行えるモデルが得られる。
[変形実施形態]
本発明は、上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において適宜変更可能である。例えば、異常検知装置105(図2)、判定部203(図3)、パケット学習部202(図4)の構成は一例であって、例示されたもの以外の構成要素をさらに有していてもよい。また、1つの構成要素が複数の構成要素に分散されていてもよく、複数の構成要素が1つの構成要素に集約されていてもよい。
本発明は、上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において適宜変更可能である。例えば、異常検知装置105(図2)、判定部203(図3)、パケット学習部202(図4)の構成は一例であって、例示されたもの以外の構成要素をさらに有していてもよい。また、1つの構成要素が複数の構成要素に分散されていてもよく、複数の構成要素が1つの構成要素に集約されていてもよい。
上述の実施形態の機能を実現するように該実施形態の構成を動作させるプログラムを記憶媒体に記録させ、記憶媒体に記録されたプログラムをコードとして読み出し、コンピュータにおいて実行する処理方法も各実施形態の範疇に含まれる。すなわち、コンピュータ読取可能な記憶媒体も各実施形態の範囲に含まれる。また、上述のプログラムが記録された記憶媒体だけでなく、そのプログラム自体も各実施形態に含まれる。また、上述の実施形態に含まれる1又は2以上の構成要素は、各構成要素の機能を実現するように構成されたASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の回路であってもよい。
該記憶媒体としては例えばフロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD(Compact Disk)-ROM、磁気テープ、不揮発性メモリカード、ROMを用いることができる。また該記憶媒体に記録されたプログラム単体で処理を実行しているものに限らず、他のソフトウェア、拡張ボードの機能と共同して、OS上で動作して処理を実行するものも各実施形態の範疇に含まれる。
上述の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する取得部と、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における異常な前記通信パターンを検知する検知部とを備えることを特徴とする情報処理装置。
システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する取得部と、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における異常な前記通信パターンを検知する検知部とを備えることを特徴とする情報処理装置。
(付記2)
前記プロセスデータから抽出される特徴量に基づいて、前記プロセスデータが分類される前記システムのシステム状態を判定する判定部を備え、
前記検知部は、それぞれの前記システム状態における前記通信パターンの特性を表すモデルを用いて、前記異常な前記通信パターンを検知することを特徴とする付記1に記載の情報処理装置。
前記プロセスデータから抽出される特徴量に基づいて、前記プロセスデータが分類される前記システムのシステム状態を判定する判定部を備え、
前記検知部は、それぞれの前記システム状態における前記通信パターンの特性を表すモデルを用いて、前記異常な前記通信パターンを検知することを特徴とする付記1に記載の情報処理装置。
(付記3)
前記モデルは、前記システム状態における前記通信パターンの正常特性を表し、前記検知部は、前記通信パターンの前記特性が前記正常特性と合致しない場合に、前記異常な前記通信パターンが発生していると判断することを特徴とする付記2に記載の情報処理装置。
前記モデルは、前記システム状態における前記通信パターンの正常特性を表し、前記検知部は、前記通信パターンの前記特性が前記正常特性と合致しない場合に、前記異常な前記通信パターンが発生していると判断することを特徴とする付記2に記載の情報処理装置。
(付記4)
前記通信パターンは、前記システムに対する時系列のコマンドを含み、前記通信パターンの前記特性は、前記コマンドの種別毎の発生頻度または発生確率で表されることを特徴とする付記3に記載の情報処理装置。
前記通信パターンは、前記システムに対する時系列のコマンドを含み、前記通信パターンの前記特性は、前記コマンドの種別毎の発生頻度または発生確率で表されることを特徴とする付記3に記載の情報処理装置。
(付記5)
前記機器は、前記システムに設置されたセンサおよびアクチュエータを含み、
前記プロセスデータは、前記センサによって測定されたセンサデータと、前記アクチュエータの設定を示すアクチュエータデータとを含むことを特徴とする付記1乃至4のいずれかに記載の情報処理装置。
前記機器は、前記システムに設置されたセンサおよびアクチュエータを含み、
前記プロセスデータは、前記センサによって測定されたセンサデータと、前記アクチュエータの設定を示すアクチュエータデータとを含むことを特徴とする付記1乃至4のいずれかに記載の情報処理装置。
(付記6)
前記判定部は、前記システムの外乱による外的要因および前記アクチュエータの設定による内的要因で決定される前記システム状態を前記プロセスデータに基づいて分類することを特徴とする付記5に記載の情報処理装置。
前記判定部は、前記システムの外乱による外的要因および前記アクチュエータの設定による内的要因で決定される前記システム状態を前記プロセスデータに基づいて分類することを特徴とする付記5に記載の情報処理装置。
(付記7)
システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得するステップと、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するステップとを備えることを特徴とする情報処理方法。
システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得するステップと、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するステップとを備えることを特徴とする情報処理方法。
(付記8)
コンピュータに、
システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得するステップと、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するステップとを実行させることを特徴とするプログラム。
コンピュータに、
システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得するステップと、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するステップとを実行させることを特徴とするプログラム。
(付記9)
システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する取得部と、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するモデルを作成する学習部とを備えることを特徴とする情報処理装置。
システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する取得部と、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するモデルを作成する学習部とを備えることを特徴とする情報処理装置。
(付記10)
システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得するステップと、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するモデルを学習するステップとを備えることを特徴とする情報処理方法。
システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得するステップと、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するモデルを学習するステップとを備えることを特徴とする情報処理方法。
10 産業制御システム
101 エンジニアリングステーション
102 HMI
103 DCS
104 PLC
105 異常検知装置(情報処理装置)
106 ヒストリアン
107 ファイアウォール
108 制御ネットワーク
109 フィールド機器
110、111 フィールドネットワーク
120 外部ネットワーク
201 取得部
202 パケット学習部
203 判定部
204 記憶部
205 検知部
301 状態学習部
302 状態判定部
401 特性抽出部
402 モデル作成部
501、502、503 クラス
701 CPU
702 メモリ
703 記憶装置
704 通信I/F
1400、1500 情報処理装置
1401、1501 取得部
1402 検知部
1502 学習部
101 エンジニアリングステーション
102 HMI
103 DCS
104 PLC
105 異常検知装置(情報処理装置)
106 ヒストリアン
107 ファイアウォール
108 制御ネットワーク
109 フィールド機器
110、111 フィールドネットワーク
120 外部ネットワーク
201 取得部
202 パケット学習部
203 判定部
204 記憶部
205 検知部
301 状態学習部
302 状態判定部
401 特性抽出部
402 モデル作成部
501、502、503 クラス
701 CPU
702 メモリ
703 記憶装置
704 通信I/F
1400、1500 情報処理装置
1401、1501 取得部
1402 検知部
1502 学習部
Claims (10)
- システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する取得部と、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における異常な前記通信パターンを検知する検知部とを備えることを特徴とする情報処理装置。 - 前記プロセスデータから抽出される特徴量に基づいて、前記プロセスデータが分類される前記システムのシステム状態を判定する判定部を備え、
前記検知部は、それぞれの前記システム状態における前記通信パターンの特性を表すモデルを用いて、前記異常な前記通信パターンを検知することを特徴とする請求項1に記載の情報処理装置。 - 前記モデルは、前記システム状態における前記通信パターンの正常特性を表し、前記検知部は、前記通信パターンの前記特性が前記正常特性と合致しない場合に、前記異常な前記通信パターンが発生していると判断することを特徴とする請求項2に記載の情報処理装置。
- 前記通信パターンは、前記システムに対する時系列のコマンドを含み、前記通信パターンの前記特性は、前記コマンドの種別毎の発生頻度または発生確率で表されることを特徴とする請求項3に記載の情報処理装置。
- 前記機器は、前記システムに設置されたセンサおよびアクチュエータを含み、
前記プロセスデータは、前記センサによって測定されたセンサデータと、前記アクチュエータの設定を示すアクチュエータデータとを含むことを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。 - 前記判定部は、前記システムの外乱による外的要因および前記アクチュエータの設定による内的要因で決定される前記システム状態を前記プロセスデータに基づいて分類することを特徴とする請求項5に記載の情報処理装置。
- システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得するステップと、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するステップとを備えることを特徴とする情報処理方法。 - コンピュータに、
システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得するステップと、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するステップとを実行させることを特徴とするプログラム。 - システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得する取得部と、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するモデルを作成する学習部とを備えることを特徴とする情報処理装置。 - システムを監視制御するための通信パケットと前記システムに設置された機器から収集されたプロセスデータとをネットワークを介して取得するステップと、
前記通信パケットに関する通信パターンと前記プロセスデータとの対応関係に基づいて、前記ネットワーク上における前記通信パケットの異常な通信パターンを検知するモデルを学習するステップとを備えることを特徴とする情報処理方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/013985 WO2019187155A1 (ja) | 2018-03-30 | 2018-03-30 | 情報処理装置、情報処理方法およびプログラム |
US16/982,623 US20210026343A1 (en) | 2018-03-30 | 2018-03-30 | Information processing device, information processing method, and program |
JP2020508919A JPWO2019187155A1 (ja) | 2018-03-30 | 2018-03-30 | 情報処理装置、情報処理方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/013985 WO2019187155A1 (ja) | 2018-03-30 | 2018-03-30 | 情報処理装置、情報処理方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019187155A1 true WO2019187155A1 (ja) | 2019-10-03 |
Family
ID=68059662
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2018/013985 WO2019187155A1 (ja) | 2018-03-30 | 2018-03-30 | 情報処理装置、情報処理方法およびプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210026343A1 (ja) |
JP (1) | JPWO2019187155A1 (ja) |
WO (1) | WO2019187155A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114019946A (zh) * | 2021-11-11 | 2022-02-08 | 辽宁石油化工大学 | 工控终端的监控数据处理方法及装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019240020A1 (ja) * | 2018-06-13 | 2019-12-19 | パナソニックIpマネジメント株式会社 | 不正通信検知装置、不正通信検知方法及び製造システム |
US11765188B2 (en) * | 2020-12-28 | 2023-09-19 | Mellanox Technologies, Ltd. | Real-time detection of network attacks |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003108224A (ja) * | 2001-09-28 | 2003-04-11 | Toshiba Corp | プラント運転異常検出方法、プログラム及び装置 |
JP2007109141A (ja) * | 2005-10-17 | 2007-04-26 | Hitachi Ltd | ストレージシステム |
JP2009054843A (ja) * | 2007-08-28 | 2009-03-12 | Omron Corp | プロセス異常検出装置および方法並びにプログラム |
JP2012194936A (ja) * | 2011-03-18 | 2012-10-11 | Mitsubishi Electric Corp | プラント機器の異常診断装置 |
JP5844944B2 (ja) * | 2013-03-29 | 2016-01-20 | 株式会社日立製作所 | 情報制御装置、情報制御システム、及び情報制御方法 |
-
2018
- 2018-03-30 WO PCT/JP2018/013985 patent/WO2019187155A1/ja active Application Filing
- 2018-03-30 JP JP2020508919A patent/JPWO2019187155A1/ja active Pending
- 2018-03-30 US US16/982,623 patent/US20210026343A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003108224A (ja) * | 2001-09-28 | 2003-04-11 | Toshiba Corp | プラント運転異常検出方法、プログラム及び装置 |
JP2007109141A (ja) * | 2005-10-17 | 2007-04-26 | Hitachi Ltd | ストレージシステム |
JP2009054843A (ja) * | 2007-08-28 | 2009-03-12 | Omron Corp | プロセス異常検出装置および方法並びにプログラム |
JP2012194936A (ja) * | 2011-03-18 | 2012-10-11 | Mitsubishi Electric Corp | プラント機器の異常診断装置 |
JP5844944B2 (ja) * | 2013-03-29 | 2016-01-20 | 株式会社日立製作所 | 情報制御装置、情報制御システム、及び情報制御方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114019946A (zh) * | 2021-11-11 | 2022-02-08 | 辽宁石油化工大学 | 工控终端的监控数据处理方法及装置 |
CN114019946B (zh) * | 2021-11-11 | 2023-08-29 | 辽宁石油化工大学 | 工控终端的监控数据处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20210026343A1 (en) | 2021-01-28 |
JPWO2019187155A1 (ja) | 2021-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10027699B2 (en) | Production process knowledge-based intrusion detection for industrial control systems | |
CN106502234B (zh) | 基于双轮廓模型的工业控制系统异常检测方法 | |
EP3001265B1 (en) | Computer-implemented method and system for machine tool damage assessment, prediction, and planning in manufacturing shop floor | |
US20170237752A1 (en) | Prediction of potential cyber security threats and risks in an industrial control system using predictive cyber analytics | |
WO2019187155A1 (ja) | 情報処理装置、情報処理方法およびプログラム | |
US20130245793A1 (en) | Anomaly detection system, anomaly detection method, and program for the same | |
Sheikh et al. | Cyber attack and fault identification of hvac system in building management systems | |
TW202122946A (zh) | 工廠加工、設備及自動化系統之動態監測及保護 | |
US20160330225A1 (en) | Systems, Methods, and Devices for Detecting Anomalies in an Industrial Control System | |
CN107831736B (zh) | 使用用于造纸机或其它系统的模型参数数据群集的模型-工厂失配检测 | |
US11874930B2 (en) | Anomaly detection for cyber-physical systems | |
JP7458097B2 (ja) | 工場制御システムをインテリジェントにエミュレートし、応答データをシミュレートするための方法、システム及び装置 | |
JP6675608B2 (ja) | 異常検出装置、異常検出方法及び異常検出プログラム | |
Odgaard et al. | Observer and data-driven-model-based fault detection in power plant coal mills | |
CN112840616A (zh) | 用于工业控制系统入侵检测的混合无监督机器学习框架 | |
JP7352354B2 (ja) | ネットワーク制御システムにおける自動改ざん検出 | |
US11392115B2 (en) | Zero-trust architecture for industrial automation | |
Maglaras et al. | A real time OCSVM intrusion detection module with low overhead for SCADA systems | |
CN110365717A (zh) | 基于hart-ip协议的工业入侵监测方法和系统 | |
JP7081593B2 (ja) | 機器管理システム、モデル学習方法およびモデル学習プログラム | |
KR102360004B1 (ko) | 진동 신호 기반의 기계 상태 관리 시스템 | |
CN111555899B (zh) | 告警规则配置方法、设备状态监测方法、装置和存储介质 | |
US11228606B2 (en) | Graph-based sensor ranking | |
EP4200729A1 (en) | Method and system for detecting a cyber-attack on a machine controller | |
Yang et al. | Mismatched Control and Monitoring Frequencies: Vulnerability, Attack, and Mitigation |
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: 18912314 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2020508919 Country of ref document: JP Kind code of ref document: A |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18912314 Country of ref document: EP Kind code of ref document: A1 |