The present invention relates to an information processing apparatus that monitors the state of a target system, an information processing method, and a program.
In recent years, an information processing system is used in various fields, and there is a need to quickly respond to anomalous states such as a system failure and an attack from the outside. For this, it is important to monitor the state of an information processing system. For example, in an OT (Operational Technology) system, which is a system using an operation control technique for monitoring and controlling the physical state of a system, an anomaly in a target system is detected by monitoring physical process data and network traffic data.
Examples of a method for detecting an anomaly in a target system are methods disclosed in Patent Document 1 and Patent Document 2. Patent Document 1 describes a method of preparing a white list that defines system information allowed in accordance with the state of a target system beforehand. According to this method, an attack on a target system is detected by comparing actually communicated communication data with the white list. Patent Document 2 describes that the degree of anomaly between the header pattern of a packet flowing on a network and the data pattern of the packet is learned in advance and a threshold value for determining an anomaly is set.
Based on the degree of anomaly between the header pattern and the data pattern of a received packet and the set threshold value, an anomaly in the packet is determined. Patent Document 2 also describes changing the above threshold value.
However, according to the techniques disclosed in Patent Documents 1 and 2 described above, a criterion for detecting an anomaly is constant and it is therefore difficult to precisely detect an anomaly in a target system whose state varies from moment to moment. For example, the white list set for each state is constant in Patent Document 1 and, even if the threshold value is changed, the changed threshold value is constant in Patent Document 2. As seen from the above, the technique of detecting an anomaly based on a constant determination criterion causes a problem that it is impossible to precisely detect an anomalous state in a target system in accordance with a situation. Then, such a problem arises not only in the case of detecting an anomalous state in a target system, but also in a case where there is a need to detect every state such as the normal state, stopped state, high operation state, low operation state, or maintenance state of a target system. As a result, there arises a problem that it is impossible to precisely detect every state of a target system in accordance with a situation.
Accordingly, an object of the present invention is to provide an information processing apparatus which can solve the abovementioned problem that it is impossible to precisely detect the state of a target system.
An information processing apparatus as an aspect of the present invention includes: a generation unit configured to generate an allowable range of a possible value of data measured from a target system based on a model for predicting the data measured in the target system and the data having been measured from the target system; and a detection unit configured to detect a state of the target system based on the data measured from the target system and the allowable range.
Further, a computer program as another aspect of the present invention includes instructions for causing an information processing apparatus to realize: a generation unit configured to generate an allowable range of a possible value of data measured from a target system based on a model for predicting the data measured in the target system and the data having been measured from the target system; and a detection unit configured to detect a state of the target system based on the data measured from the target system and the allowable range.
Further, an information processing method as another aspect of the present invention includes: generating an allowable range of a possible value of data measured from a target system based on a model for predicting the data measured in the target system and the data having been measured from the target system; and detecting a state of the target system based on the data measured from the target system and the allowable range.
With the configurations as described above, the present invention enables precise detection of the state of a target system.
A first example embodiment of the present invention will be described with reference to
An information processing apparatus 10 according to the present invention is connected to a target system 20 such as a plant, and used for monitoring the state of the target system 20. The target system 20 sends out, for example, traffic data, which are a plurality of kinds of network data, and process data, which are a plurality of kinds of physical data. To be specific, traffic data are packet data such as a control packet and a monitoring packet, and measurement values thereof are an interpacket gap, a packet frequency, a packet generation time, and so on. Process data are physical quantities such as a temperature and an air-conditioning operation rate output from a sensor and a device installed in the target system 20, and measurement values thereof are a continuous value, a discrete value, a derivative, an integral, and so on.
An example of data sent out and measured from the target system 20 is shown in
The information processing apparatus 10 is composed of one information processing apparatus or a plurality of information processing apparatuses each including an arithmetic logic unit and a memory unit. The information processing apparatus 10 includes, as shown in
The data measurement unit 11 acquires data measured from the target system 20, stores the data into the data storage unit 18, and also passes the data to the traffic data monitoring unit 16 and the process data monitoring unit 17. As described above, data acquired by the data measurement unit 11 are a plurality of kinds of traffic data and a plurality of kinds of process data as shown in
The traffic data learning unit 12 and the process data learning unit 13 (a model generation unit) first input past data for learning measured from the target system 20 into the learning units (step S1 of
To be specific, as shown in the right view of
Then, the traffic data learning unit 12 performs learning based on the input traffic data D1 and process data D2, and generates a model M for predicting each value such as the interpacket gap, packet frequency, and packet generation time of every kind of packet in normal time as shown by an arrow Y1 of
As an example, as shown in the right view of
Then, as with the traffic data learning unit 12 described above, the process data learning unit 13 performs learning based on the input process data D2, and generates a model M for predicting each value such as the continuous value of every kind of process data in normal time. After that, the process data learning unit 13 stores the generated model M into the model storage unit 19. The process data learning unit 13 may input, in addition to the process data D2 for learning, the traffic data D1 for learning into the learning unit, and generate the model M based on these data. Moreover, the process data learning unit 13 may perform learning by any learning method and may generate any model as with the traffic data learning unit 12 described above.
The traffic data prediction unit 14 and the process data prediction unit 15 (a generation unit) operate at the time of monitoring the target system 20, and generate allowable range data representing the allowable range of a possible value of data measured at the present moment at which monitoring is performed. At this time, the traffic data prediction unit 14 and the process data prediction unit 15 generate allowable range data based on the generated model M and data having been measured from the target system 20 for each kind of data.
To be specific, the traffic data prediction unit 14 first retrieves the model M from the model storage unit 19 as shown in the left view of
Then, the traffic data prediction unit 14 generates allowable range data M1 representing an allowable range that each value such as the interpacket gap, packet frequency, or packet generation time of every kind of packet can take, based on the model M and the traffic data D3 and process data D4 for detection, as indicated by an arrow Y2 and an arrow Y3 of
An example of generation of the allowable range data M1 will be described with reference to
In consideration of the model M and the traffic data and process data of the immediately preceding range R as described above, the allowable range of a time interval of the control packets 1 of the traffic data, that is, the allowable range of a probability that the value of a measured time interval appears is generated in an example of
Further, to be specific, the process data prediction unit 15 first retrieves the model M from the model storage unit 19 as shown in the left view of
Then, as with the traffic data prediction unit 14 described above, the process data prediction unit 15 generates the allowable range data M1 representing the allowable range that each value such as the continuous value, discrete value, derivative, or integral of every kind of measurement value can take, based on the model M and the process data D4 for detection, as shown by an arrow Y2 and an arrow Y3 of
Then, in consideration of the model M and the process data of the immediately precedent range R as described above, the process data prediction unit 15 generates the allowable range of the value of air temperature of process data, that is, the allowable range of the probability of appearance of a measured air temperature value as in an example of
As shown in
Further, the traffic data monitoring unit 16 and the process data monitoring unit 17 may execute a preset process such as notifying the outside when detecting an anomaly in the target system 20 as described above. Notifying the outside includes various information relating to the target system. For example, notifying the outside includes information relating to the state of the target system, information of processing to be executed on the state of the target system, or the like. By notifying the outside, a person who monitors the target system can appropriately execute processing in accordance with the notification.
To be specific, the traffic data monitoring unit 16 acquires traffic data at the present moment at which the target system 20 is monitored, and detects whether the traffic data is normal or anomalous with reference to the allowable range data M1. In the example of
Further, to be specific, the process data monitoring unit 17 acquires process data at the present moment at which the target system 20 is monitored, and detects whether the process data is normal or anomalous with reference to the allowable range data M1. In the example of
As described above, according to the present invention, the allowable range of a possible value of data is generated based on a model for predicting the value of data and measured data. Then, the state of the target system 20 is detected in accordance with whether or not data measured from the target system 20 is within the allowable range. Therefore, a criterion for determining the state of the target system 20 is generated in accordance with measured data and the allowable range of the measured data is also set. As a result, it is possible to detect a state at a predetermined moment in accordance with a criterion on which the current state of the target system 20 is reflected, and therefore, it is possible to detect with precision. Moreover, since the allowable range of measured data is set, whether data is allowed or not allowed is not determined simply depending on whether the data agrees or not agree with the model, and therefore, it is possible to prevent detection of an anomalous state from being missed. As a result, it is possible to perform highly precise monitoring according to the state of a system.
In the above description, the present invention is used for, with an information processing system used in a plant as a monitoring target, detecting an anomaly in the system, but a target system to be monitored may be an information processing system used in any field. For example, the present invention may be used for, with a computer system as a monitoring target, measuring data such as a substrate temperature and a memory usage and detecting an anomaly such as a failure or an authorized attack. Moreover, for example, the present invention may be used for, with an information processing system mounted on an autonomous driving vehicle as a monitoring target, measuring data such as a speed and a steering angle and detecting an anomaly such as a failure or an authorized attack.
Further, although a case of detecting whether a target system is in a normal state or an anomalous state is illustrated in the above description, another state of the target system may be detected according to the present invention. For example, by generating an allowable range relating to the high operation state of a target system, it may be detected whether the state of the target system is in a high operation state or a low operation state based on data measured from the target system and an allowable range relating to the high operation state. Likewise, by generating an allowable range relating to every kind of running state of a target system or an allowable range relating to the maintenance state of the target system, every kind of running such as the stopped state of the target system, a maintenance state, or the like, may be detected.
Next, a second example embodiment of the present invention will be described with reference to
As shown in
The generation unit 110 and the detection unit 120 described above may be structured by execution of a program by an arithmetic logic unit included by the information processing apparatus 100, or may be structured by an electronic circuit.
Then, the information processing apparatus 100 with the above configuration operates to execute processing including: generating an allowable range of a possible value of data measured from a target system based on a model for predicting data to be measured in the target system and data having been measured from the target system; and detecting a state of the target system based on the data measured from the target system and the allowable range.
According to the invention, a model for predicting the value of data and measured data, the allowable range of a possible value of data is generated, and the state of a target system is detected in accordance with whether or not data measured from the target system is within the allowable range. Therefore, a criterion for determining the state of the target system is generated in accordance with the measured data, and the allowable range thereof is also set. As a result, it is possible to detect the state of the target system in accordance with the criterion of a predetermined range on which the current state of the system is reflected, and therefore, it is possible to detect with precision.
The whole or part of the example embodiments disclosed above can be described as the following supplementary notes. The overview of the configurations of the information processing apparatus, the information processing method, and the program according to the present invention will be described below. However, the present invention is not limited to the following configurations.
An information processing apparatus comprising:
a generation unit configured to generate an allowable range of a possible value of data measured from a target system based on a model for predicting the data measured in the target system and the data having been measured from the target system; and
a detection unit configured to detect a state of the target system based on the data measured from the target system and the allowable range.
The information processing apparatus according to Supplementary Note 1, wherein:
the generation unit is configured to generate the allowable range based on the model and the data having been measured at least prior to a predetermined moment from the target system; and
the detection unit is configured to detect the state of the target system based on the data measured at the predetermined moment from the target system and the allowable range.
The information processing apparatus according to Supplementary Note 2, wherein the generation unit is configured to generate the allowable range based on the model and the data having been measured at least immediately before the predetermined moment from the target system.
The information processing apparatus according to any of Supplementary Notes 1 to 3, wherein the generation unit is configured to generate, as the allowable range, a predictive distribution of the possible value of the data measured from the target system.
The information processing apparatus according to any of Supplementary Notes 1 to 4, wherein the generation unit is configured to generate, as the allowable range, a probability distribution of the possible value of the data measured from the target system.
The information processing apparatus according to any of Supplementary Notes 1 to 5, wherein:
the data measured in the target system includes traffic data that is packet data and process data representing a physical quantity; and
the generation unit is configured to generate an allowable range of a possible value of the traffic data based on a model for predicting the traffic data, the traffic data having been measured from the target system, and the process data having been measured from the target system.
The information processing apparatus according to any of Supplementary Notes 1 to 5, wherein:
the data measured in the target system includes traffic data that is packet data and process data representing a physical quantity; and
the generation unit is configured to generate an allowable range of a possible value of the traffic data based on a model for predicting the traffic data and at least the traffic data having been measured from the target system, and generate an allowable range of a possible value of the process data based on a model for predicting the process data and at least the process data having been measured from the target system.
The information processing apparatus according to Supplementary Note 7, wherein the generation unit is configured to generate the allowable range of the possible value of the traffic data based on the model for predicting the traffic data, the traffic data having been measured from the target system, and the process data having been measured from the target system.
The information processing apparatus according to Supplementary Note 7 or 8, wherein the generation unit is configured to generate the allowable range of the possible value of the process data based on the model for predicting the process data, the traffic data having been measured from the target system, and the process data having been measured from the target system.
The information processing apparatus according to any of Supplementary Notes 1 to 9, comprising a model generation unit configured to generate the model from the data having been measured previously from the target system.
A computer program comprising instructions for causing an information processing apparatus to realize:
a generation unit configured to generate an allowable range of a possible value of data measured from a target system based on a model for predicting the data measured in the target system and the data having been measured from the target system; and
a detection unit configured to detect a state of the target system based on the data measured from the target system and the allowable range.
An information processing method comprising:
generating an allowable range of a possible value of data measured from a target system based on a model for predicting the data measured in the target system and the data having been measured from the target system; and
detecting a state of the target system based on the data measured from the target system and the allowable range.
The information processing method according to Supplementary Note 12, wherein:
the allowable range is generated based on the model and the data having been measured at least prior to a predetermined moment from the target system; and
the state of the target system is detected based on the data measured at the predetermined moment from the target system and the allowable range.
The information processing method according to Supplementary Note 13, wherein the allowable range is generated based on the model and the data having been measured at least immediately before the predetermined moment from the target system.
The information processing method according to any of Supplementary Notes 12 to 14, wherein, a predictive distribution of the possible value of the data measured from the target system is generated as the allowable range.
The information processing method according to any of Supplementary Notes 12 to 15, wherein, a probability distribution of the possible value of the data measured from the target system is generated as the allowable range.
The information processing method according to any of Supplementary Notes 12 to 16, wherein:
the data measured in the target system includes traffic data that is packet data and process data representing a physical quantity; and
an allowable range of a possible value of the traffic data is generated based on a model for predicting the traffic data, the traffic data having been measured from the target system, and the process data having been measured from the target system.
The information processing method according to any of Supplementary Notes 12 to 16, wherein:
the data measured in the target system includes traffic data that is packet data and process data representing a physical quantity; and
an allowable range of a possible value of the traffic data is generated based on a model for predicting the traffic data and at least the traffic data having been measured from the target system, and an allowable range of a possible value of the process data is generated based on a model for predicting the process data and at least the process data having been measured from the target system.
The information processing method according to Supplementary Note 18, wherein the allowable range of the possible value of the traffic data is generated based on the model for predicting the traffic data, the traffic data having been measured from the target system, and the process data having been measured from the target system.
The information processing method according to Supplementary Note 18 or 19, wherein the allowable range of the possible value of the process data is generated based on the model for predicting the process data, the traffic data having been measured from the target system, and the process data having been measured from the target system.
The information processing method according to any of Supplementary Notes 12 to 20, comprising generating the model from the data having been measured previously from the target system.
The program described above is can be stored by using various types of non-transitory computer-readable mediums and supplied to a computer. The non-transitory computer-readable mediums include various types of tangible storage mediums. Examples of the non-transitory computer-readable mediums include a magnetic recording medium (for example, a flexible disk, a magnetic tape, a hard disk drive), a magnetooptical recording medium (for example, a magnetooptical disk), a CD-ROM (Read Only Memory), a CD-R, a CD-R/W, and a semiconductor memory (for example, a mask ROM, a PROM (Programmable ROM), an EPROM (Erasable PROM), a flash ROM, a RAM (Random Access Memory). The program may be supplied to a computer by various types of transitory computer-readable mediums. Examples of the transitory computer-readable mediums include electric signals, optical signals, and electromagnetic waves. The transitory computer-readable medium can supply the program to a computer via a wired communication channel such as an electric wire or an optical fiber or via a wireless communication channel.
Although the present invention has been described above with reference to the example embodiments, the present invention is not limited to the example embodiments. The configurations and details of the present invention can be changed in various manners that can be understood by one skilled in the art within the scope of the present invention.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2018/040120 | 10/29/2018 | WO | 00 |