WO2021028963A1 - 異常検出装置、制御方法、及びプログラム - Google Patents

異常検出装置、制御方法、及びプログラム Download PDF

Info

Publication number
WO2021028963A1
WO2021028963A1 PCT/JP2019/031592 JP2019031592W WO2021028963A1 WO 2021028963 A1 WO2021028963 A1 WO 2021028963A1 JP 2019031592 W JP2019031592 W JP 2019031592W WO 2021028963 A1 WO2021028963 A1 WO 2021028963A1
Authority
WO
WIPO (PCT)
Prior art keywords
terminal
abnormality
predetermined operation
reference information
detection device
Prior art date
Application number
PCT/JP2019/031592
Other languages
English (en)
French (fr)
Inventor
貴史 小梨
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to PCT/JP2019/031592 priority Critical patent/WO2021028963A1/ja
Priority to JP2021539699A priority patent/JP7298694B2/ja
Priority to US17/632,317 priority patent/US20220334908A1/en
Publication of WO2021028963A1 publication Critical patent/WO2021028963A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers

Definitions

  • the present invention relates to abnormality detection.
  • Patent Document 1 discloses a system for detecting an abnormality in the observation target software using a normal operation model.
  • the present invention has been made in view of the above-mentioned problems, and one of the objects thereof is to provide a technique for detecting an abnormality in a computer system with high accuracy.
  • the abnormality detection device of the present invention has 1) a first detection unit that detects the start of a predetermined operation in the terminal, and 2) an acquisition unit that acquires reference information indicating a standard for detecting an abnormality in the terminal after the predetermined operation is started. 3) It has a second detection unit that detects an abnormality in the terminal by using the acquired reference information after detecting that a predetermined operation has been started.
  • the control method of the present invention is executed by a computer.
  • the control method includes 1) a first detection step for detecting the start of a predetermined operation in the terminal, 2) an acquisition step for acquiring reference information representing a standard for detecting an abnormality in the terminal after the start of the predetermined operation, and 3). ) It has a second detection step of detecting an abnormality of the terminal by using the acquired reference information after detecting that a predetermined operation has been started.
  • the program of the present invention causes a computer to execute each step of the execution control method of the present invention.
  • a technique for detecting an abnormality in a computer system with high accuracy is provided.
  • FIG. 1 is a first diagram illustrating a usage environment of an abnormality detection device. It is a 2nd figure which illustrates the use environment of an abnormality detection apparatus. It is a figure which illustrates the 1st reference information in a table format.
  • each block diagram represents a configuration of a functional unit, not a configuration of a hardware unit.
  • FIG. 1 is a diagram illustrating an outline of the operation of the abnormality detection device 2000 of the present embodiment.
  • FIG. 1 is a diagram showing a conceptual explanation for facilitating an understanding of the operation of the abnormality detection device 2000, and does not specifically limit the operation of the abnormality detection device 2000.
  • the abnormality detection device 2000 detects an abnormality in the terminal 10.
  • the terminal 10 may be a physical machine or a virtual machine.
  • the "abnormality" referred to here represents various abnormal states.
  • an anomaly is a security anomaly such as the possibility of malware being present.
  • the abnormality of the terminal 10 is not limited to the security abnormality.
  • the abnormality detection device 2000 detects the start of a predetermined operation in the terminal 10.
  • the predetermined operation represents one or more series of operations performed by the terminal 10.
  • the "predetermined operation” is a series of maintenance processes (execution of a series of commands, etc.) performed on the terminal 10.
  • the abnormality detection device 2000 acquires the reference information 30.
  • the reference information 30 represents a reference for detecting an abnormality in the terminal 10 after the predetermined operation is started.
  • the abnormality detection device 2000 detects an abnormality in the terminal 10 by using the acquired reference information 30 after the predetermined operation is detected in the terminal 10. For example, the abnormality detection device 2000 uses the reference information 30 to determine whether or not the operation of the application on the terminal 10 is abnormal. Then, when the abnormal operation of the application is detected in the terminal 10, the abnormality detection device 2000 determines that the terminal 10 is abnormal.
  • a method of detecting an abnormality in the terminal 10 a method of detecting that the terminal 10 behaves differently than usual can be considered. For example, it is a method of detecting an abnormality in the terminal 10 by monitoring an event occurring in the terminal 10 (for example, execution of a system call) and detecting the occurrence of an abnormal event (detecting an abnormal operation).
  • the normal behavior of the terminal 10 may differ from the normal behavior. That is, even if the operation should be judged to be abnormal under normal conditions, it may be judged to be normal under certain circumstances such as during maintenance. Therefore, the criteria to be used for detecting the abnormality of the terminal 10 may change depending on the situation of the terminal 10.
  • the abnormality detection device 2000 detects the start of the predetermined operation in the terminal 10, and after the predetermined operation is started, uses the reference information 30 indicating the standard for detecting the abnormality after the predetermined operation is started. Detects an abnormality in the terminal 10. By doing so, when a predetermined operation such as maintenance is performed, it becomes possible to detect an abnormality of the terminal 10 based on an appropriate standard according to the situation in which the operation is performed. Therefore, according to the abnormality detection device 2000, the abnormality of the terminal 10 can be detected with high accuracy.
  • abnormality detection device 2000 of the present embodiment will be described in more detail.
  • FIG. 2 is a diagram illustrating the configuration of the abnormality detection device 2000 of the first embodiment.
  • the abnormality detection device 2000 includes a first detection unit 2020, an acquisition unit 2040, and a second detection unit 2060.
  • the first detection unit 2020 detects the start of a predetermined operation in the terminal 10.
  • the acquisition unit 2040 acquires the reference information 30.
  • the second detection unit 2060 detects the abnormality of the terminal 10 by using the reference information 30.
  • Each functional component of the anomaly detection device 2000 may be realized by hardware (eg, a hard-wired electronic circuit) that realizes each functional component, or a combination of hardware and software (eg, example). It may be realized by a combination of an electronic circuit and a program that controls it).
  • hardware eg, a hard-wired electronic circuit
  • software eg, example
  • It may be realized by a combination of an electronic circuit and a program that controls it).
  • a case where each functional component of the abnormality detection device 2000 is realized by a combination of hardware and software will be further described.
  • the abnormality detection device 2000 is realized by one computer.
  • FIG. 3 is a diagram illustrating a calculator 1000 for realizing the abnormality detection device 2000.
  • the computer 1000 is an arbitrary computer.
  • the computer 1000 is a personal computer (PC), a server machine, a tablet terminal, a smartphone, or the like.
  • the computer 1000 may be a dedicated computer designed to realize the abnormality detection device 2000, or may be a general-purpose computer.
  • the computer 1000 has a bus 1020, a processor 1040, a memory 1060, a storage device 1080, an input / output interface 1100, and a network interface 1120.
  • the bus 1020 is a data transmission line for the processor 1040, the memory 1060, the storage device 1080, the input / output interface 1100, and the network interface 1120 to transmit and receive data to and from each other.
  • the method of connecting the processors 1040 and the like to each other is not limited to the bus connection.
  • the processor 1040 is a processor such as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), or an FPGA (Field-Programmable Gate Array).
  • the memory 1060 is a main storage device realized by using RAM (Random Access Memory) or the like.
  • the storage device 1080 is an auxiliary storage device realized by using a hard disk drive, an SSD (Solid State Drive), a memory card, a ROM (Read Only Memory), or the like.
  • the storage device 1080 may be composed of the same hardware as the hardware constituting the main storage device, such as RAM.
  • the input / output interface 1100 is an interface for connecting the computer 1000 and the input / output device.
  • the network interface 1120 is an interface for connecting the computer 1000 to the communication network.
  • This communication network is, for example, LAN (Local Area Network) or WAN (Wide Area Network).
  • the method of connecting the network interface 1120 to the communication network may be a wireless connection or a wired connection.
  • the storage device 1080 stores a program module that realizes a functional component of the abnormality detection device 2000.
  • the processor 1040 realizes the function corresponding to each program module by reading each of these program modules into the memory 1060 and executing the program module.
  • the abnormality detection device 2000 may be realized by two or more computers. Each computer in this case also has, for example, the hardware configuration shown in FIG.
  • FIG. 4 is a flowchart illustrating the flow of processing executed by the abnormality detection device 2000 of the first embodiment.
  • the first detection unit 2020 detects the start of a predetermined operation in the terminal 10 (S102).
  • the acquisition unit 2040 acquires the reference information 30 (S104).
  • the detection unit 2060 detects an abnormality in the terminal 10 using the reference information 30 (S106).
  • the abnormality detection device 2000 can be realized in various usage environments. Here, some specific examples will be illustrated.
  • FIG. 5 is a first diagram illustrating a usage environment of the abnormality detection device 2000.
  • the abnormality detection device 2000 is realized as a device separate from the terminal 10. Then, the agent software 12 is operating on the terminal 10. The agent software 12 detects that a predetermined operation has been started in the terminal 10 and notifies the abnormality detection device 2000 of the detection.
  • the agent software 12 provides information indicating the behavior of the terminal 10 to the abnormality detection device 2000.
  • the agent software 12 provides the abnormality detection device 2000 with information (hereinafter, event information) representing each event generated in the terminal 10.
  • event information indicates the subject, the object, the content, and the time of occurrence of the event that occurred in the terminal 10.
  • the subject of an event is, for example, the process that caused the event.
  • the object of the event is, for example, another process operated by the main process, data such as a file, or a socket.
  • the content of the event is, for example, the start or end of a process, the reading or writing of data to a file, or the reading or writing of data to a network (to a socket or the like).
  • existing techniques can be used for the technique of detecting the occurrence of various events such as the execution of a system call and the technique of generating information representing the contents of the event.
  • FIG. 6 is a second diagram illustrating the usage environment of the abnormality detection device 2000.
  • the abnormality detection device 2000 is realized by the terminal 10. That is, the terminal 10 has a function of operating as the abnormality detection device 2000. Therefore, the terminal 10 itself detects the abnormality of the terminal 10. In this case as well, the agent software 12 is operating on the terminal 10 in order to realize the above-mentioned event detection.
  • the function of the abnormality detection device 2000 can be provided in the agent software 12. That is, the agent software 12 has a function of detecting an event, a function of detecting the start of a predetermined operation based on the detected event, a function of acquiring reference information 30, and a terminal 10 based on the detected event and the reference information 30.
  • the abnormality detection device 2000 can be realized by having a function of detecting the abnormality of the above.
  • the function of the abnormality detection device 2000 may be implemented by software other than the agent software 12.
  • the first detection unit 2020 detects that a predetermined operation has been started in the terminal 10.
  • the behavior of the terminal 10 at the timing when the predetermined operation is started is predetermined.
  • the information that defines the behavior of the terminal 10 at the start of the predetermined operation is referred to as trigger information.
  • the trigger information is stored in advance in, for example, a storage device accessible from the abnormality detection device 2000.
  • the trigger information indicates the type (content) of the behavior "execution of the file” and the identification information (file path, etc.) of the predetermined file which is the object of the behavior.
  • the trigger information indicates a type of behavior called "command execution” and identification information (command name, etc.) of a predetermined command which is an object of the behavior.
  • the trigger information may further indicate not only the content and object of the behavior but also the subject of the behavior. In this case, the start of a predetermined operation is detected only when a specific behavior is performed by a specific subject.
  • Execution of a predetermined file or a predetermined command can be detected by using, for example, the event information described above. Therefore, for example, the first detection unit 2020 repeatedly acquires event information from the agent software 12 and determines whether or not there is trigger information that matches the event indicated by the acquired event information. Then, when it is determined that the trigger information that matches the event indicated by the event information exists, the first detection unit 2020 determines that the predetermined operation has been started.
  • the comparison between the event information and the trigger information may be performed by the agent software 12. That is, the agent software 12 determines whether or not a predetermined operation has been started in the terminal 10 by comparing the event information and the trigger information. When the agent software 12 determines that there is trigger information that matches the event indicated by the event information, the agent software 12 notifies the first detection unit 2020 of the start of a predetermined operation. Upon receiving this notification, the first detection unit 2020 detects the start of a predetermined operation. In this case, the trigger information is stored in the storage device accessible from the agent software 12.
  • the operation treated as a predetermined operation may be one type of operation or may be a plurality of types of operations.
  • trigger information related to the predetermined operation is prepared for each predetermined operation.
  • the operations performed by the abnormality detection device 2000 may be the same regardless of the types of predetermined operations performed on the terminal 10, or the predetermined operations performed on the terminal 10 may be the same.
  • the operation performed by the abnormality detection device 2000 may be different depending on the type.
  • the first detection unit 2020 When handling only one type of motion as a predetermined motion, it is sufficient for the first detection unit 2020 to recognize the fact that the predetermined motion has been started. This is the same even when a plurality of types of operations are handled as predetermined operations, as long as the operations performed by the abnormality detection device 2000 are the same regardless of the types of predetermined operations started in the terminal 10. is there. Therefore, in these cases, when the agent software 12 compares the event information and the trigger information, the agent software 12 provides arbitrary information in a predetermined format as information indicating the start of a predetermined operation on the terminal 10. , Is transmitted to the first detection unit 2020.
  • the agent software 12 transmits information in a predetermined format including the identification information of the predetermined operation started in the terminal 10 to the first detection unit 2020.
  • identification information that can be distinguished from each other is assigned to each of the plurality of predetermined operations.
  • the trigger information is stored in the storage device in association with the identification information of the predetermined operation corresponding to the trigger information.
  • the abnormality detection device 2000 When the abnormality detection using the reference information 30 is terminated when the predetermined operation is completed, the abnormality detection device 2000 also detects the end of the predetermined operation by the same method as the method for detecting the start of the predetermined operation.
  • the reference information 30 indicates an abnormality detection standard used when a predetermined operation is performed.
  • the reference information 30 indicates permission or disapproval of the operation of the terminal 10 such as application execution, command execution, system call execution, library loading, registry reading / writing, or file / network reading / writing.
  • the reference information 30 may indicate the permission or disapproval of the various operations described above in an ordered operation (permutation). For example, it is assumed that the reference information 30 indicates a series of operation sequences (also referred to as a normal model) permitted by the terminal 10 in the order of "execution of application X, execution of command Y, writing to file Z". In this case, these operations indicated by the reference information 30 are permitted only when they are executed in this order. Therefore, in the above example, it is not allowed to write to the file Z before executing the command Y. In this way, when the order of commands and applications executed in a predetermined operation is known in advance, the abnormality of the terminal 10 can be detected with higher accuracy by defining the order in the reference information 30. Can be done.
  • the criteria for abnormality detection may be different for each predetermined operation.
  • the reference information 30 is prepared for each predetermined operation.
  • the reference information 30 indicating a series of operations permitted while the predetermined operation is being performed in association with the predetermined operation is information representing a scenario of the predetermined operation (what kind of information is used in the predetermined operation). It can also be expressed as information indicating the order in which the operations are performed).
  • FIG. 7 is a diagram illustrating the reference information 30 in a table format.
  • the table of FIG. 7 shows the identification information 202 and the operation 204.
  • the identification information 202 is identification information of a predetermined operation, and in this example, indicates a name assigned to the predetermined operation.
  • Action 204 indicates one allowed action or series of actions.
  • the reference information 30 is generated in advance and is stored in a storage device accessible from the abnormality detection device 2000.
  • the method of generating the reference information 30 is arbitrary.
  • the reference information 30 may be manually generated by an administrator or the like.
  • the reference information 30 may be automatically generated so as to record a predetermined operation performed in the test environment and indicate one or more operations performed in the predetermined operation. This automatic generation may be performed by the abnormality detection device 2000 or may be performed by a device other than the abnormality detection device 2000.
  • the acquisition unit 2040 acquires the reference information 30 (S104).
  • the acquisition unit 2040 acquires the reference information 30 from the storage device in which the reference information 30 described above is stored.
  • the acquisition unit 2040 precedes the detection of the start of the predetermined operation.
  • the reference information 30 may be acquired.
  • the acquisition unit 2040 acquires the reference information 30 corresponding to the predetermined operation whose start is detected by the first detection unit 2020.
  • the acquisition unit 2040 may acquire the contents of the reference information 30 part by part instead of acquiring all the contents of the reference information 30 at once. ..
  • the acquisition unit 2040 acquires the permitted operations one by one from the beginning. That is, first, the acquisition unit 2040 acquires the operation permitted first from the reference information 30. Then, in response to the operation being performed at the terminal 10 and being detected as a normal operation by the second detection unit 2060, the acquisition unit 2040 acquires the next permitted operation from the reference information 30.
  • the second detection unit 2060 detects an abnormality in the terminal 10 by using the reference information 30 (S106).
  • the abnormality of the terminal 10 is detected, for example, by comparing the above-mentioned event information with the reference information 30. For example, it is assumed that the reference information 30 individually indicates a normal event. In this case, the second detection unit 2060 determines whether or not the event indicated by the event information is included in the reference information 30. If the event is not included in the reference information 30, the second detection unit 2060 determines that the terminal 10 is abnormal (detects the abnormality of the terminal 10). On the other hand, when the event is included in the reference information 30, the second detection unit 2060 determines that the terminal 10 is normal.
  • the second detection unit 2060 determines whether or not the event indicated by the event information is included in the reference information 30. If the event is not included in the reference information 30, the second detection unit 2060 determines that the terminal 10 is normal. On the other hand, when the event is included in the reference information 30, the second detection unit 2060 determines that the terminal 10 is abnormal (detects the abnormality of the terminal 10).
  • the reference information 30 indicates a normal model which is a model representing a normal event sequence.
  • the second detection unit 2060 determines whether or not the event sequence matches the normal model by comparing the event sequence represented by the plurality of events acquired from the agent software 12 with the normal model. Then, when the event sequence matches the normal model, the second detection unit 2060 determines that the terminal 10 is normal. On the other hand, if the event sequence does not match the normal model, the second detection unit 2060 determines that the terminal 10 is abnormal.
  • the reference information 30 indicates an abnormal model which is a model representing an abnormal event sequence.
  • the second detection unit 2060 determines whether or not the event sequence matches the anomaly model by comparing the event sequence represented by the plurality of events acquired from the agent software 12 with the anomaly model. Then, when the event sequence matches the abnormality model, the second detection unit 2060 determines that the terminal 10 is abnormal. On the other hand, if the event sequence does not match the abnormal model, the second detection unit 2060 determines that the terminal 10 is normal.
  • the abnormality detection device 2000 may perform abnormality detection on the terminal 10 even before and after the predetermined operation is started (that is, during the period when the predetermined operation is not performed).
  • the abnormality detection device 2000 is configured to constantly monitor the operation of the terminal 10.
  • the abnormality detection device 2000 detects the abnormality of the terminal 10 by a reference different from the reference indicated by the reference information 30 during the period when the predetermined operation is not performed.
  • FIG. 8 is a diagram conceptually exemplifying how anomaly detection using different criteria is performed during a period in which a predetermined operation is performed and a period other than that.
  • the abnormality detection device 2000 detects the abnormality of the terminal 10 by using the reference information prepared for the normal time.
  • the abnormality detection device 2000 detects the abnormality of the terminal 10 by using the reference information 30 (reference information prepared for the period during which the predetermined operation is performed). To do.
  • the predetermined operation is maintenance of the terminal 10.
  • processing that is not normally performed for example, execution of an application for maintenance
  • an operation peculiar to a predetermined operation such as execution of an application used for maintenance
  • the second reference information 60 such an operation peculiar to a predetermined operation is abnormal. Disallow as an operation.
  • the safety of the terminal 10 can be maintained high from normal times. The safety of the terminal 10 can be improved even at a special timing such as maintenance.
  • the reference information 30 may be configured as information indicating only the difference from the standard in the normal time.
  • FIG. 9 is a block diagram illustrating the functional configuration of the abnormality detection device 2000 of the second embodiment. Except for the points described below, the abnormality detection device 2000 of the second embodiment has the same function as the abnormality detection device 2000 of the first embodiment.
  • the abnormality detection device 2000 of the second embodiment further has a warning unit 2080.
  • the warning unit 2080 When the second detection unit 2060 detects an abnormality in the terminal 10, the warning unit 2080 outputs warning information indicating a warning regarding the abnormality.
  • the warning information is at least information in a mode in which it can be grasped that an abnormality in the terminal 10 has been detected.
  • information in any predetermined format can be used as the warning information. For example, text data including a predetermined message, voice data including a predetermined voice, and the like can be used.
  • the warning information may include information that can grasp the content of the abnormality detected in the terminal 10. For example, it is assumed that an abnormality in the terminal 10 is detected due to an event that should not occur in the terminal 10.
  • the warning unit 2080 includes information about the event (subject, object, content, occurrence time, etc.) in the warning information.
  • the warning information includes information representing a sequence of events that have occurred in the terminal 10 and information representing a normal model indicated by the reference information 30. Specifically, it includes information such as an event column and a graph of a normal model.
  • FIG. 10 is a diagram illustrating warning information.
  • the warning information is realized as a warning screen 60 displayed on the display device.
  • the abnormality detection device 2000 performs abnormality detection on a plurality of terminals 10. Then, for each of the detected abnormalities, the warning screen 60 shows the time when the abnormality occurred, the identification information of the terminal 10 in which the abnormality was detected, the identification information of the program or command that caused the abnormality, and the abnormality. The content is shown.
  • the warning information may further include the identification information of the terminal 10 in which the abnormality is detected.
  • the identification information of the terminal 10 may not be included in the warning information.
  • the output destination of the warning information is arbitrary.
  • the warning information is output to any display device accessible from the anomaly detection device 2000.
  • the warning information is stored in an arbitrary storage device accessible from the abnormality detection device 2000.
  • the warning information may be transmitted to another device (for example, the terminal 10) communicably connected to the abnormality detection device 2000.
  • FIG. 11 is a flowchart illustrating the flow of processing performed by the abnormality detection device 2000 of the second embodiment. Note that S102 to S106 are the same as the flowchart of FIG. After S106, the warning unit 2080 generates and outputs warning information (S108).
  • FIG. 3 The hardware configuration of the computer that realizes the abnormality detection device 2000 of the second embodiment is shown in FIG. 3, for example, the same as the hardware configuration of the computer that realizes the abnormality detection device 2000 of the first embodiment.
  • the storage device 1080 included in the computer 1000 that realizes the abnormality detection device 2000 of the second embodiment stores a program module that realizes the functions of the functional components included in the abnormality detection device 2000 of the second embodiment.
  • FIG. 12 is a block diagram illustrating the functional configuration of the abnormality detection device 2000 of the third embodiment. Except for the points described below, the abnormality detection device 2000 of the third embodiment has the same function as the abnormality detection device 2000 of the first or second embodiment.
  • the abnormality detection device 2000 of the third embodiment further includes a control unit 2100.
  • the control unit 2100 controls the terminal 10 when an abnormality of the terminal 10 is detected by the second detection unit 2060.
  • the second detection unit 2060 stops or terminates an application that has performed an operation that is not permitted by the reference information 30.
  • the application in which the control unit 2100 is stopped or terminated does not have to be limited to the application in which the abnormal operation is performed.
  • the control unit 2100 may stop or terminate all the applications executed after the start of the predetermined operation.
  • the control unit 2100 may stop or terminate all applications related to the predetermined operation when an abnormality of the terminal 10 is detected.
  • the predetermined operation started on the terminal 10 is an operation that involves execution of a plurality of applications (for example, execution of a script that involves execution of a plurality of applications). In this case, for example, the control unit 2100 stops or terminates all the applications started by the predetermined operation.
  • the control performed by the control unit 2100 is not limited to stopping or terminating the application.
  • the control unit 2100 rolls back the state of the terminal 10 to the state before the predetermined operation is started.
  • the rollback referred to here is not limited to the process of completely returning the state of the terminal 10, but is updated after the process of returning a part of the state of the terminal 10 (for example, when the start of a predetermined operation is detected). It may be a process of restoring the contents of each file (discarding the update).
  • the control unit 2100 saves the state of the terminal 10 in the storage device at the timing when the start of the predetermined operation is detected by the first detection unit 2020.
  • the state of the terminal 10 can be saved as a so-called snapshot.
  • the control unit 2100 rolls back the state of the terminal 10 by using the state of the terminal 10 stored in the storage device.
  • the existing technology can be used as a specific technology for rolling back the state of the computer system by using a snapshot or the like.
  • control unit 2100 makes the copy of the file write to the file performed by the terminal 10 after the time when the predetermined operation is started by the first detection unit 2020.
  • the predetermined operation is completed without detecting the abnormality of the terminal 10
  • the writing performed on the copy file is reflected on the original file.
  • the control unit 2100 does not reflect the writing made to the copy file in the original file and discards the copy file. By doing so, when an abnormality of the terminal 10 is detected, the update of the file performed after the start time of the predetermined operation is discarded, so that rollback can be realized.
  • each operation executed by the terminal 10 may be interrupted until the abnormality detection device 2000 finishes determining whether or not the operation is abnormal.
  • the agent software 12 hooks the operation of the terminal 10 to be detected by the abnormality detection device 2000 (for example, a system call for executing an application, reading / writing a file, or reading / writing a network), and the system thereof.
  • the second detection unit 2060 is operated in a state where the execution of the call is interrupted. Then, when the second detection unit 2060 permits the execution of the system call, the suspended operation of the terminal 10 is resumed. By doing so, the abnormality can be detected before the start of the unauthorized operation, so that the terminal 10 can be operated more safely.
  • the content of the control performed by the control unit 2100 is notified to the user of the terminal 10. For example, when the control unit 2100 stops or terminates the application, the control unit 2100 gives a notification indicating that the application has been stopped or terminated. In addition, for example, when the control unit 2100 rolls back the state of the terminal 10, the control unit 2100 notifies to that effect. For example, this notification can be output in the same way as the warning information.
  • FIG. 13 is a flowchart illustrating the flow of processing performed by the abnormality detection device 2000 of the third embodiment. Note that S102 to S106 are the same as the flowchart of FIG. After S106, the control unit 2100 controls the operation of the terminal 10 (S110).
  • FIG. 3 The hardware configuration of the computer that realizes the abnormality detection device 2000 of the third embodiment is shown in FIG. 3, for example, the same as the hardware configuration of the computer that realizes the abnormality detection device 2000 of the first embodiment.
  • the storage device 1080 included in the computer 1000 that realizes the abnormality detection device 2000 of the third embodiment stores a program module that realizes the functions of the functional components included in the abnormality detection device 2000 of the third embodiment.
  • the first detector that detects the start of a predetermined operation in the terminal
  • An acquisition unit that acquires reference information representing a reference for detecting an abnormality in the terminal after the predetermined operation is started, and an acquisition unit.
  • An abnormality detection device including a second detection unit that detects an abnormality in the terminal by using the acquired reference information after detecting that the predetermined operation has been started.
  • the reference information that is different from each other is associated with the two predetermined operations that are different from each other.
  • the acquisition unit acquires the reference information corresponding to the predetermined operation started in the terminal.
  • the abnormality detection device described in 1. 3. 3. 1.
  • the abnormality detection device has a warning unit that outputs warning information about the abnormality when an abnormality of the terminal is detected by the second detection unit. Or 2.
  • the abnormality detection device described in 1. 4. It has a control unit that stops or terminates an application that has performed an abnormal operation on the terminal. To 3. The abnormality detection device according to any one. 5. 1. It has a control unit that rolls back the state of the terminal to the state before the predetermined operation is started when an abnormality of the terminal is detected by the second detection unit. To 3. The abnormality detection device according to any one. 6. Before the start of the predetermined operation is detected, the second detection unit detects an abnormality in the terminal with a reference different from the reference indicated by the reference information. To 5. The abnormality detection device according to any one. 7.
  • the reference information indicates a sequence of a plurality of operations performed in the predetermined operation.
  • the second detection unit determines that the terminal is abnormal when the sequence of actions detected in the terminal does not match the sequence of actions indicated by the reference information.
  • the abnormality detection device according to any one.
  • the operation of the terminal indicated by the reference information is one or more of execution of an application, execution of a command, loading of a library, reading of a registry, writing to a registry, reading of a network, and writing to a network. 7.
  • a control method performed by a computer The first detection step that detects the start of a predetermined operation in the terminal, and An acquisition step of acquiring reference information representing a criterion for detecting an abnormality of the terminal after the predetermined operation is started, and an acquisition step.
  • a control method comprising a second detection step of detecting an abnormality in the terminal by using the acquired reference information after detecting that the predetermined operation has been started. 10.
  • the reference information that is different from each other is associated with the two predetermined operations that are different from each other.
  • the acquisition step the reference information corresponding to the predetermined operation started in the terminal is acquired.
  • the control method described in. 11. 9. It has a warning step for outputting warning information regarding the abnormality when an abnormality of the terminal is detected by the second detection step. Or 10.
  • the abnormality of the terminal is detected by a reference different from the reference indicated by the reference information.
  • the reference information indicates a sequence of a plurality of operations performed in the predetermined operation.
  • the sequence of actions detected in the terminal does not match the sequence of actions indicated by the reference information, it is determined that the terminal is abnormal.
  • the control method according to any one. 16 The operation of the terminal indicated by the reference information is one or more of execution of an application, execution of a command, loading of a library, reading of a registry, writing to a registry, reading of a network, and writing to a network. 15. The control method described in. 17. 9. To 16. A program that causes a computer to execute each step of the control method described in any one of them.

Abstract

異常検出装置(2000)は、端末(10)における所定動作の開始を検出する。異常検出装置(2000)は、所定動作が開始された後における端末(10)の異常検出の基準を表す基準情報(30)を取得する。異常検出装置(2000)は、所定動作が開始されたことを検出した後に、取得した基準情報(30)を用いて、端末(10)の異常を検出する。

Description

異常検出装置、制御方法、及びプログラム
 本発明は異常検出に関する。
 コンピュータシステムの異常を検出する技術が開発されている。例えば特許文献1には、正常動作モデルを用いて観測対象ソフトウエアの異常を検出するシステムが開示されている。
特開2018-129714号公報
 本発明者は、コンピュータシステムが異常であるか否かを判断するための適切な基準は、そのシステムの状況等に依存することを見出した。この点、特許文献1の基準では、異常検出の基準として、固定的に1つのルールが用いられている。
 本発明は、上述の課題に鑑みてなされたものであり、その目的の一つは、コンピュータシステムの異常を高い精度で検出する技術を提供することである。
 本発明の異常検出装置は、1)端末における所定動作の開始を検出する第1検出部と、2)所定動作が開始された後における端末の異常検出の基準を表す基準情報を取得する取得部と、3)所定動作が開始されたことを検出した後に、取得した基準情報を用いて、端末の異常を検出する第2検出部と、を有する。
 本発明の制御方法は、コンピュータによって実行される。当該制御方法は、1)端末における所定動作の開始を検出する第1検出ステップと、2)所定動作が開始された後における端末の異常検出の基準を表す基準情報を取得する取得ステップと、3)所定動作が開始されたことを検出した後に、取得した基準情報を用いて、端末の異常を検出する第2検出ステップと、を有する。
 本発明のプログラムは、本発明の実行制御方法の各ステップをコンピュータに実行させる。
 本発明によれば、コンピュータシステムの異常を高い精度で検出する技術が提供される。
 上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。
本実施形態の異常検出装置の動作の概要を例示する図である。 実施形態1の異常検出装置の構成を例示する図である。 異常検出装置を実現するための計算機を例示する図である。 実施形態1の異常検出装置によって実行される処理の流れを例示するフローチャートである。 異常検出装置の利用環境を例示する第1の図である。 異常検出装置の利用環境を例示する第2の図である。 第1基準情報をテーブル形式で例示する図である。 所定動作が行われている期間とそれ以外の期間とで、異なる基準を用いた異常検出が行われる様子を概念的に例示する図である。 実施形態2の異常検出装置の機能構成を例示するブロック図である。 警告情報を例示する図である。 実施形態2の異常検出装置によって行われる処理の流れを例示するフローチャートである。 実施形態3の異常検出装置の機能構成を例示するブロック図である。 実施形態3の異常検出装置によって行われる処理の流れを例示するフローチャートである。
 以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。また、特に説明する場合を除き、各ブロック図において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を表している。
[実施形態1]
<概要>
 図1は、本実施形態の異常検出装置2000の動作の概要を例示する図である。図1は、異常検出装置2000の動作についての理解を容易にするための概念的な説明を表す図であり、異常検出装置2000の動作を具体的に限定するものではない。
 異常検出装置2000は、端末10の異常を検出する。ここで、端末10は、物理マシンであってもよいし、仮想マシンであってもよい。なお、ここでいう「異常」は、正常でない種々の状態を表す。例えば異常とは、マルウエアが存在する可能性があるといったセキュリティ上の異常である。ただし、端末10の異常は、セキュリティ上の異常に限定されない。
 より具体的には、まず、異常検出装置2000は、端末10における所定動作の開始を検出する。ここで、所定動作は、端末10が行う1つ以上の一連の動作を表す。例えば「所定動作」は、端末10において行われる一連のメンテナンス処理(一連のコマンドの実行など)である。また、異常検出装置2000は、基準情報30を取得する。基準情報30は、上記所定動作が開始された後において端末10の異常を検出するための基準を表す。
 異常検出装置2000は、端末10において所定動作が検出された後、取得した基準情報30を利用して、端末10の異常を検出する。例えば異常検出装置2000は、基準情報30を用いて、端末10におけるアプリケーションの動作が異常であるか否かを判定する。そして、端末10においてアプリケーションの異常な動作が検出されたら、異常検出装置2000は、端末10が異常であると判定する。
<作用効果の一例>
 端末10の異常を検出する方法として、端末10が通常とは異なる振る舞いをしたことを検出するという方法が考えられる。例えば、端末10で発生するイベント(例えば、システムコールの実行)を監視し、異常なイベントの発生を検出(異常な動作を検出)することで、端末10の異常を検出するといった方法である。
 しかしながら、端末10のメンテナンスが行われるときなど、通常時とは異なる状況下では、端末10の正常な振る舞いが通常時とは異なることがある。すなわち、通常時は異常であると判断すべき動作であっても、メンテナンス時などいった特定の状況下では、正常な動作と判断すべきことがある。そのため、端末10の異常の検出に用いるべき基準は、端末10の状況によって変化しうる。
 そこで異常検出装置2000は、端末10における所定動作の開始を検出し、所定動作が開始された後においては、所定動作が開始された後における異常検出の基準を示す基準情報30を利用して、端末10の異常を検出する。このようにすることで、メンテナンスなどの所定の動作が行われている時には、その動作が行われている状況に応じた適切な基準で、端末10の異常を検出することができるようになる。よって、異常検出装置2000によれば、端末10の異常を精度良く検出することができる。
 以下、本実施形態の異常検出装置2000についてさらに詳細に説明する。
<異常検出装置2000の機能構成の例>
 図2は、実施形態1の異常検出装置2000の構成を例示する図である。異常検出装置2000は、第1検出部2020、取得部2040、及び第2検出部2060を有する。第1検出部2020は、端末10における所定動作の開始を検出する。取得部2040は基準情報30を取得する。第2検出部2060は、所定動作の開始が検出された後に、基準情報30を用いて、端末10の異常を検出する。
<異常検出装置2000のハードウエア構成>
 異常検出装置2000の各機能構成部は、各機能構成部を実現するハードウエア(例:ハードワイヤードされた電子回路など)で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ(例:電子回路とそれを制御するプログラムの組み合わせなど)で実現されてもよい。以下、異常検出装置2000の各機能構成部がハードウエアとソフトウエアとの組み合わせで実現される場合について、さらに説明する。
 例えば異常検出装置2000は、1つの計算機で実現される。図3は、異常検出装置2000を実現するための計算機1000を例示する図である。計算機1000は任意の計算機である。例えば計算機1000は、Personal Computer(PC)、サーバマシン、タブレット端末、又はスマートフォンなどである。計算機1000は、異常検出装置2000を実現するために設計された専用の計算機であってもよいし、汎用の計算機であってもよい。
 計算機1000は、バス1020、プロセッサ1040、メモリ1060、ストレージデバイス1080、入出力インタフェース1100、及びネットワークインタフェース1120を有する。バス1020は、プロセッサ1040、メモリ1060、ストレージデバイス1080、入出力インタフェース1100、及びネットワークインタフェース1120が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ1040などを互いに接続する方法は、バス接続に限定されない。プロセッサ1040は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、又は FPGA(Field-Programmable Gate Array)などのプロセッサである。メモリ1060は、RAM(Random Access Memory)などを用いて実現される主記憶装置である。ストレージデバイス1080は、ハードディスクドライブ、SSD(Solid State Drive)、メモリカード、又は ROM(Read Only Memory)などを用いて実現される補助記憶装置である。ただし、ストレージデバイス1080は、RAM など、主記憶装置を構成するハードウエアと同様のハードウエアで構成されてもよい。
 入出力インタフェース1100は、計算機1000と入出力デバイスとを接続するためのインタフェースである。ネットワークインタフェース1120は、計算機1000を通信網に接続するためのインタフェースである。この通信網は、例えば LAN(Local Area Network)や WAN(Wide Area Network)である。ネットワークインタフェース1120が通信網に接続する方法は、無線接続であってもよいし、有線接続であってもよい。
 ストレージデバイス1080は、異常検出装置2000の機能構成部を実現するプログラムモジュールを記憶している。プロセッサ1040は、これら各プログラムモジュールをメモリ1060に読み出して実行することで、各プログラムモジュールに対応する機能を実現する。
 異常検出装置2000は、2つ以上の計算機で実現されてもよい。この場合における各計算機も、例えば、図3に示したハードウエア構成を持つ。
<処理の流れ>
 図4は、実施形態1の異常検出装置2000によって実行される処理の流れを例示するフローチャートである。第1検出部2020は、端末10における所定動作の開始を検出する(S102)。取得部2040は、基準情報30を取得する(S104)。検出部2060は、基準情報30を用いて端末10の異常を検出する(S106)。
<異常検出装置2000の利用環境の具体例>
 異常検出装置2000は、様々な利用環境で実現しうる。ここでは、その具体例をいくつか例示する。
<<利用環境の例1>>
 図5は、異常検出装置2000の利用環境を例示する第1の図である。この例において、異常検出装置2000は、端末10とは別体の装置として実現される。そして、端末10では、エージェントソフトウエア12が動作している。エージェントソフトウエア12は、端末10において所定動作が開始されたことを検出し、当該検出を異常検出装置2000に対して通知する。
 さらに、エージェントソフトウエア12は、端末10の振る舞いを表す情報を異常検出装置2000へ提供する。例えば、エージェントソフトウエア12は、端末10で発生した各イベントを表す情報(以下、イベント情報)を異常検出装置2000へ提供する。例えばイベント情報は、端末10で発生したイベントの主体、客体、内容、及び発生時刻を示す。イベントの主体は、例えば、そのイベントを発生させたプロセスである。イベントの客体は、例えば、主体であるプロセスによって操作された他のプロセス、ファイル等のデータ、又はソケットなどである。イベントの内容は、例えば、プロセスの起動や終了、ファイルに対するデータの読み込みや書き込み、又はネットワークに対する(ソケット等に対する)データの読み込みや書き込みなどである。なお、システムコールの実行などといった種々のイベントの発生を検出する技術、及びそのイベントの内容を表す情報を生成する技術には、既存の技術を利用することができる。
<<利用環境の例2>>
 図6は、異常検出装置2000の利用環境を例示する第2の図である。この例において、異常検出装置2000は、端末10で実現される。すなわち、端末10が、異常検出装置2000として動作する機能を持つ。よって、端末10の異常検出を、端末10自身が行うことになる。このケースでも、前述したイベントの検出を実現するために、端末10においてエージェントソフトウエア12が動作している。
 例えば異常検出装置2000の機能は、エージェントソフトウエア12に持たせることができる。すなわち、エージェントソフトウエア12に、イベントを検出する機能、検出したイベントに基づいて所定動作の開始を検出する機能、基準情報30を取得する機能、及び検出したイベント及び基準情報30に基づいて端末10の異常を検出する機能を持たせることにより、異常検出装置2000を実現することができる。ただし、異常検出装置2000の機能は、エージェントソフトウエア12とは別のソフトウエアで実装されてもよい。
<所定動作の開始の検出:S102>
 第1検出部2020は、端末10において所定動作が開始されたことを検出する。ここで、所定動作の開始を検出するため、例えば、当該所定動作が開始されたタイミングにおける端末10の振る舞いを予め定めておく。以下、所定動作の開始時における端末10の振る舞いを定めた情報を、トリガ情報と呼ぶ。トリガ情報は、例えば、異常検出装置2000からアクセス可能な記憶装置に予め格納しておく。
 例えば、所定動作が、所定のファイル(スクリプトファイルやアプリケーションの実行ファイルなど)の実行によって開始されるとする。この場合、トリガ情報は、「ファイルの実行」という振る舞いの種類(内容)、及びその振る舞いの客体である所定ファイルの識別情報(ファイルのパスなど)などを示す。その他にも例えば、所定動作が、所定のコマンドの実行によって開始されるとする。この場合、トリガ情報は、「コマンドの実行」という振る舞いの種類、及びその振る舞いの客体である所定コマンドの識別情報(コマンド名など)を示す。
 ここで、トリガ情報は、その振る舞いの内容と客体だけでなく、その振る舞いの主体をさらに示してもよい。この場合、特定の振る舞いが特定の主体によって行われたときのみ、所定動作の開始が検出される。
 所定ファイルや所定コマンドの実行は、例えば、前述したイベント情報を利用して検出することができる。そこで例えば、第1検出部2020は、エージェントソフトウエア12から繰り返しイベント情報を取得し、取得したイベント情報によって示されるイベントと合致するトリガ情報が存在するか否かを判定する。そして、イベント情報によって示されるイベントと合致するトリガ情報が存在すると判定された場合、第1検出部2020は、所定動作が開始されたと判定する。
 ここで、イベント情報とトリガ情報との比較は、エージェントソフトウエア12によって行われてもよい。すなわち、エージェントソフトウエア12が、イベント情報とトリガ情報とを比較することにより、端末10において所定動作が開始されたか否かを判定する。エージェントソフトウエア12は、イベント情報によって示されるイベントと合致するトリガ情報が存在すると判定した場合、第1検出部2020に対し、所定動作の開始を通知する。第1検出部2020は、この通知を受信することにより、所定動作の開始を検出する。なお、このケースでは、トリガ情報は、エージェントソフトウエア12からアクセス可能な記憶装置に格納される。
 所定動作として扱う動作は、1種類の動作であってもよいし、複数種類の動作であってもよい。所定動作として複数種類の動作を扱う場合、各所定動作について、その所定動作に関するトリガ情報を用意しておく。なお、複数種類の動作を所定動作として扱う場合、端末10において行われた所定動作の種類にかかわらず異常検出装置2000が行う動作は同じにしてもよいし、端末10において行われた所定動作の種類に応じて異常検出装置2000が行う動作を異ならせてもよい。
 所定動作として1種類の動作のみを扱う場合、第1検出部2020は、所定動作が開始されたという事実が認識できれば十分である。このことは、所定動作として複数の種類の動作を扱う場合であっても、端末10において開始された所定動作の種類にかかわらず異常検出装置2000が行う動作を同じにするのであれば、同様である。そこで、これらの場合においてエージェントソフトウエア12がイベント情報とトリガ情報の比較を行う場合、エージェントソフトウエア12は、端末10における所定動作の開始を表す情報として、予め定められた形式の任意の情報を、第1検出部2020に対して送信する。
 一方、所定動作として複数の種類の動作を扱い、なおかつ、端末10で開始された所定動作の種類に応じて異常検出装置2000の動作を異ならせるとする。この場合、第1検出部2020は、端末10において所定動作が開始されたという事実だけでなく、どの所定動作が開始されたのかを把握する必要がある。そのため、このケースでは、エージェントソフトウエア12は、端末10において開始された所定動作の識別情報が含まれる所定の形式の情報を、第1検出部2020へ送信する。ここで、前提として、複数の所定動作にはそれぞれ、互いに識別可能な識別情報を割り当てておく。そして、トリガ情報を、そのトリガ情報に対応する所定動作の識別情報と対応づけて、記憶装置に格納しておく。
 なお、所定動作が終了した場合に基準情報30を利用した異常検出を終了する場合、異常検出装置2000は、所定動作の開始を検出する方法と同様の方法により、所定動作の終了も検出する。
<基準情報30について>
 基準情報30は、所定動作が行われている際に利用される、異常検出の基準を示す。例えば基準情報30は、アプリケーションの実行、コマンドの実行、システムコールの実行、ライブラリのロード、レジストリの読み書き、又はファイルやネットワークの読み書きなどといった端末10の動作について、許可や不許可を示す。
 基準情報30は、前述した種々の動作の許可や不許可を、順序付きの動作(順列)で示してもよい。例えば基準情報30が、「アプリケーションXの実行、コマンドYの実行、ファイルZへの書き込み」という順序で、端末10で許可される一連の動作列(正常モデルとも呼ぶ)を示しているとする。この場合、基準情報30が示すこれらの動作は、この順序で実行された場合のみ許可される。そのため、前述の例では、コマンドYを実行する前にファイルZへ書き込みを行うことは許可されない。このように、所定動作の中で実行されるコマンドやアプリケーションの順番が予め分かっている場合、その順序を基準情報30で規定しておくことにより、端末10の異常をより高い精度で検出することができる。
 ここで、所定動作ごとに異常検出の基準を異ならせてもよい。この場合、所定動作ごとに基準情報30を用意する。ここで、所定動作に対応づけて、その所定動作が行われている間に許可される一連の動作を示す基準情報30は、その所定動作のシナリオを表す情報(その所定動作において、どのような動作がどのような順番で行われるかを示す情報)とも表現することができる。
 図7は、基準情報30をテーブル形式で例示する図である。図7のテーブルは、識別情報202及び動作204を示す。識別情報202は、所定動作の識別情報であり、本例では所定動作に割り与えられた名称を示している。動作204は、許可される1つの動作又は一連の動作を示す。
 基準情報30は、予め生成されており、異常検出装置2000からアクセス可能な記憶装置に格納されている。ここで、基準情報30を生成する方法は任意である。例えば基準情報30は、管理者等によって手動で生成されてもよい。その他にも例えば、基準情報30は、テスト環境下で行われた所定動作を記録し、その中で実行された1つ以上の動作を示すように、自動で生成されてもよい。この自動生成は、異常検出装置2000によって行われてもよいし異常検出装置2000以外の装置によって行われてもよい。ここで、前述したテスト環境には、サンドボックス環境を利用することが好適である。
<基準情報30の取得:S104>
 取得部2040は、基準情報30を取得する(S104)。取得部2040は、前述した基準情報30が格納されている記憶装置から、基準情報30を取得する。
 なお、所定動作として1種類の動作のみが扱われる場合や、所定動作の種類にかかわらず共通の基準情報30が利用される場合、取得部2040は、所定動作の開始が検出されるよりも先に、基準情報30を取得してもよい。一方、所定動作ごとに基準情報30が用意されている場合、取得部2040は、第1検出部2020によってその開始が検出された所定動作に対応する基準情報30を取得する。
 ここで、取得部2040は、基準情報30が一連の動作を示している場合、基準情報30の内容を一度に全てを取得する代わりに、基準情報30の内容を一部ずつ取得してもよい。例えば取得部2040は、許可される動作を先頭から1つずつ順に取得していく。すなわち、まず取得部2040は、基準情報30から、最初に許可される動作を取得する。そして、端末10においてその動作が行われ、第2検出部2060によって正常な動作として検出されたことに応じ、取得部2040は、基準情報30から、次に許可される動作を取得する。
<端末10の異常の検出:S106>
 第2検出部2060は、基準情報30を用いて、端末10の異常を検出する(S106)。端末10の異常の検出は、例えば、前述したイベント情報と基準情報30との比較によって行われる。例えば基準情報30が、正常なイベントを個別に示しているとする。この場合、第2検出部2060は、イベント情報が示すイベントが、基準情報30に含まれるか否かを判定する。そのイベントが基準情報30に含まれていない場合、第2検出部2060は、端末10は異常であると判定する(端末10の異常を検出する)。一方、そのイベントが基準情報30に含まれている場合、第2検出部2060は、端末10は正常であると判定する。
 その他にも例えば、基準情報30が、異常なイベントを個別に示しているとする。この場合、第2検出部2060は、イベント情報が示すイベントが、基準情報30に含まれるか否かを判定する。そのイベントが基準情報30に含まれていない場合、第2検出部2060は、端末10は正常であると判定する。一方、そのイベントが基準情報30に含まれている場合、第2検出部2060は、端末10が異常であると判定する(端末10の異常を検出する)。
 その他にも例えば、基準情報30が、正常なイベント列を表すモデルである正常モデルを示しているとする。この場合、第2検出部2060は、エージェントソフトウエア12から取得した複数のイベントで表されるイベント列を正常モデルと比較することで、イベント列が正常モデルと合致するか否かを判定する。そして、イベント列が正常モデルと合致する場合、第2検出部2060は、端末10が正常であると判定する。一方、イベント列が正常モデルと合致しない場合、第2検出部2060は、端末10が異常であると判定する。
 その他にも例えば、基準情報30が、異常なイベント列を表すモデルである異常モデルを示しているとする。この場合、第2検出部2060は、エージェントソフトウエア12から取得した複数のイベントで表されるイベント列を異常モデルと比較することで、イベント列が異常モデルと合致するか否かを判定する。そして、イベント列が異常モデルと合致する場合、第2検出部2060は、端末10が異常であると判定する。一方、イベント列が異常モデルと合致しない場合、第2検出部2060は、端末10が正常であると判定する。
 なお、イベント列が所定のモデルと合致するか否かを判定する具体的な技術には、既存の技術を利用することができる。
<所定動作が行われていない期間について>
 異常検出装置2000は、所定動作が開始される前後(すなわち、所定動作が行われていない期間)においても、端末10について異常検出を行ってもよい。例えば異常検出装置2000は、常に端末10の動作を監視するように構成される。ただしこの場合、所定動作が行われていない期間において、異常検出装置2000は、基準情報30が示す基準とは異なる基準で、端末10の異常を検出する。
 図8は、所定動作が行われている期間とそれ以外の期間とで、異なる基準を用いた異常検出が行われる様子を概念的に例示する図である。所定動作が行われている期間の前後では、異常検出装置2000は、通常時のために用意されている基準情報を利用して、端末10の異常を検出する。一方、所定動作が行われている期間では、異常検出装置2000は、基準情報30(所定動作が行われている期間のために用意された基準情報)を利用して、端末10の異常を検出する。
 例えば、所定動作が端末10のメンテナンスであるとする。一般に、メンテナンスでは、通常時では行われない処理(例えば、メンテナンス用のアプリケーションの実行)が行われる。そこで例えば、基準情報30では、メンテナンスに利用されるアプリケーションの実行など、所定動作特有の動作を正常な動作として許可する一方、第2基準情報60では、このような所定動作特有の動作を異常な動作として不許可にする。このように、メンテナンス時など、通常時には利用しない処理が必要となる特殊なタイミングに限って、必要最低限の処理を追加で許可することにより、平常時から端末10の安全性を高く保ちつつ、メンテナンス時などの特殊なタイミングでも、端末10の安全性を高くすることができる。
 なお、このように通常時と所定動作が行われている時とで異なる基準を利用する場合、基準情報30は、通常時の基準との差分のみを示す情報として構成されてもよい。
[実施形態2]
 図9は、実施形態2の異常検出装置2000の機能構成を例示するブロック図である。以下で説明する点を除き、実施形態2の異常検出装置2000は、実施形態1の異常検出装置2000と同様の機能を有する。
 実施形態2の異常検出装置2000は警告部2080をさらに有する。警告部2080は、第2検出部2060によって端末10の異常が検出された場合に、その異常に関する警告を表す警告情報を出力する。
 警告情報は、少なくとも、端末10の異常が検出されたことを把握できる態様の情報である。端末10の異常が検出されたことのみを把握できればよい場合、警告情報には、予め定められた任意の形式の情報を利用できる。例えば、所定のメッセージが含まれるテキストデータや、所定の音声が含まれる音声データなどが利用できる。
 警告情報には、端末10において検出された異常の内容を把握できる情報が含まれてもよい。例えば端末10において、本来発生すべきでないイベントが発生したことにより、端末10の異常が検出されたとする。この場合、例えば警告部2080は、そのイベントに関する情報(主体、客体、内容、及び発生時刻など)を警告情報に含める。
 その他にも例えば、端末10において発生したイベントの列が、基準情報30が示す正常モデルに合致しなかったことにより、端末10の異常が検出されたとする。この場合、例えば警告情報には、端末10で発生したイベントの列を表す情報と、基準情報30が示す正常モデルを表す情報とが含まれる。具体的には、イベント列や正常モデルをグラフ化した情報などが含まれる。
 図10は、警告情報を例示する図である。図10では、警告情報が、ディスプレイ装置に表示される警告画面60として実現されている。この例において、異常検出装置2000は、複数の端末10を対象に異常検出を行っている。そして、警告画面60には、検出された各異常について、その異常が発生した時刻、その異常が検出された端末10の識別情報、その異常を発生させたプログラム又はコマンドの識別情報、及び異常の内容が示されている。
 ここで、異常検出装置2000が、複数の端末10を対象として動作しているとする。この場合、警告情報には、異常が検出された端末10の識別情報をさらに含めてもよい。ただし、警告情報の出力先を、異常が検出された端末10とする場合には、警告情報の中に端末10の識別情報を含めなくてもよい。
 警告情報の出力先は任意である。例えば警告情報は、異常検出装置2000からアクセス可能な任意のディスプレイ装置に対して出力される。その他にも例えば、警告情報は、異常検出装置2000からアクセス可能な任意の記憶装置に格納される。その他にも例えば、警告情報は、異常検出装置2000と通信可能に接続されている他の装置(例えば端末10など)に対して送信されてもよい。
<処理の流れ>
 図11は、実施形態2の異常検出装置2000によって行われる処理の流れを例示するフローチャートである。なお、S102からS106については、図4のフローチャートと同様である。S106の後、警告部2080は、警告情報を生成して出力する(S108)。
<ハードウエア構成の例>
 実施形態2の異常検出装置2000を実現する計算機のハードウエア構成は、例えば、実施形態1の異常検出装置2000を実現する計算機のハードウエア構成と同様に、図3で表される。ただし、実施形態2の異常検出装置2000を実現する計算機1000が有するストレージデバイス1080には、実施形態2の異常検出装置2000が有する各機能構成部の機能を実現するプログラムモジュールが格納されている。
[実施形態3]
 図12は、実施形態3の異常検出装置2000の機能構成を例示するブロック図である。以下で説明する点を除き、実施形態3の異常検出装置2000は、実施形態1又は2の異常検出装置2000と同様の機能を有する。
 実施形態3の異常検出装置2000は制御部2100をさらに有する。制御部2100は、第2検出部2060によって端末10の異常が検出された場合に、その端末10を制御する。
 例えば、第2検出部2060は、基準情報30で許可されていない動作を行ったアプリケーションを停止又は終了する。ただし、制御部2100が停止又は終了するアプリケーションは、異常な動作を行ったアプリケーションのみに限定されなくてもよい。例えば制御部2100は、端末10の異常が検出されたら、所定動作の開始以後に実行された全てのアプリケーションを停止又は終了してもよい。その他にも例えば、制御部2100は、端末10の異常が検出されたら、所定動作に関連する全てのアプリケーションを停止又は終了してもよい。例えば、端末10で開始された所定動作が、複数のアプリケーションの実行を伴う動作(例えば、複数のアプリケーションの実行を伴うスクリプトの実行)であるとする。この場合、例えば制御部2100は、当該所定動作によって開始された全てのアプリケーションを停止又は終了する。
 制御部2100が行う制御は、アプリケーションの停止又は終了に限定されない。例えば制御部2100は、端末10の異常が検出されたら、端末10の状態を、所定動作が開始される前の状態にロールバックする。なお、ここでいうロールバックは、端末10の状態を完全に戻す処理だけに限定されず、端末10の状態の一部を戻す処理(例えば、所定動作の開始が検出された時点以降に更新された各ファイルの内容を元に戻す(更新を破棄する)処理)であってもよい。
 システムの状態をロールバックする方法には、様々な方法を利用することができる。例えば制御部2100は、第1検出部2020によって所定動作の開始が検出されたタイミングで、端末10の状態を記憶装置に保存する。例えば端末10が仮想マシンで実現されている場合、端末10の状態は、いわゆるスナップショットとして保存することができる。そして、第2検出部2060によって端末10の異常が検出されたら、制御部2100は、記憶装置に保存した端末10の状態を利用して、端末10の状態をロールバックする。なお、スナップショット等などを利用してコンピュータシステムの状態をロールバックする具体的な技術には、既存の技術を利用することができる。
 その他にも例えば、制御部2100は、第1検出部2020によって所定動作が開始された時点以降に端末10によって行われるファイルに対する書き込みを、そのファイルのコピーに対して行うようにする。この場合、端末10の異常が検出されることなく所定動作が終了した場合には、コピーのファイルに対して行われた書き込みを、オリジナルのファイルに対して反映する。一方、所定動作が完了する前に端末10の異常が検出された場合、制御部2100は、コピーのファイルに対して行われた書き込みをオリジナルのファイルに反映せず、コピーのファイルを破棄する。こうすることで、端末10の異常が検出された場合には、所定動作の開始時点以降に行われたファイルの更新が破棄されるため、ロールバックを実現できる。
 ここで、端末10で実行される各動作は、異常検出装置2000によってその動作が異常であるかどうかの判定が終わるまで、中断してもよい。例えば、エージェントソフトウエア12は、異常検出装置2000による異常検出の対象とする端末10の動作(例えば、アプリケーションの実行、ファイルの読み書き、又はネットワークの読み書きを行うシステムコールなど)をフックし、そのシステムコールの実行を中断した状態で、第2検出部2060が動作するようにする。そして、第2検出部2060によってそのシステムコールの実行が許可されたら、中断していた端末10の動作を再開する。このようにすることで、許可しない動作の開始前に異常を検出できるため、端末10をより安全に運用することができる。
<ユーザへの通知>
 制御部2100によって行われた制御の内容は、端末10のユーザに通知されることが好ましい。例えば、制御部2100がアプリケーションの停止又は終了を行った場合、制御部2100は、そのアプリケーションが停止又は終了されたことを示す通知を行う。その他にも例えば、制御部2100が端末10の状態をロールバックした場合、制御部2100は、その旨の通知を行う。例えばこの通知は、警告情報と同様の方法で出力することができる。
<処理の流れ>
 図13は、実施形態3の異常検出装置2000によって行われる処理の流れを例示するフローチャートである。なお、S102からS106については、図4のフローチャートと同様である。S106の後、制御部2100は、端末10の動作を制御する(S110)。
<ハードウエア構成の例>
 実施形態3の異常検出装置2000を実現する計算機のハードウエア構成は、例えば、実施形態1の異常検出装置2000を実現する計算機のハードウエア構成と同様に、図3で表される。ただし、実施形態3の異常検出装置2000を実現する計算機1000が有するストレージデバイス1080には、実施形態3の異常検出装置2000が有する各機能構成部の機能を実現するプログラムモジュールが格納されている。
 以上、図面を参照して本発明の各実施形態について述べたが、これらは本発明の例示であり、各実施形態を組み合わせた構成や、上記以外の様々な構成を採用することもできる。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
1. 端末における所定動作の開始を検出する第1検出部と、
 前記所定動作が開始された後における前記端末の異常検出の基準を表す基準情報を取得する取得部と、
 前記所定動作が開始されたことを検出した後に、前記取得した基準情報を用いて、前記端末の異常を検出する第2検出部と、を有する異常検出装置。
2. 互いに異なる2つの前記所定動作に対し、互いに異なる前記基準情報が対応づけられており、
 前記取得部は、前記端末において開始された前記所定動作に対応する前記基準情報を取得する、1.に記載の異常検出装置。
3. 前記第2検出部によって前記端末の異常が検出された場合に、その異常に関する警告情報を出力する警告部を有する、1.又は2.に記載の異常検出装置。
4. 前記端末において異常な動作を行ったアプリケーションを停止又は終了する制御部を有する、1.乃至3.いずれか一つに記載の異常検出装置。
5. 前記第2検出部によって前記端末の異常が検出された場合に、前記端末の状態を、前記所定動作が開始される前の状態にロールバックする制御部を有する、1.乃至3.いずれか一つに記載の異常検出装置。
6. 前記第2検出部は、前記所定動作の開始が検出される前は、前記基準情報が示す基準とは異なる基準で、前記端末の異常を検出する、1.乃至5.いずれか一つに記載の異常検出装置。
7. 前記基準情報は、前記所定動作の中で行われる複数の動作の列を示し、
 前記第2検出部は、前記端末において検出された動作の列が、前記基準情報が示す動作の列と合致しない場合に、前記端末が異常であると判定する、1.乃至6.いずれか一つに記載の異常検出装置。
8. 前記基準情報が示す前記端末の動作は、アプリケーションの実行、コマンドの実行、ライブラリのロード、レジストリの読み込み、レジストリへの書き込み、及びネットワークの読み込み、ネットワークへの書き込みのいずれか1種類以上である、7.に記載の異常検出装置。
9. コンピュータによって実行される制御方法であって、
 端末における所定動作の開始を検出する第1検出ステップと、
 前記所定動作が開始された後における前記端末の異常検出の基準を表す基準情報を取得する取得ステップと、
 前記所定動作が開始されたことを検出した後に、前記取得した基準情報を用いて、前記端末の異常を検出する第2検出ステップと、を有する制御方法。
10. 互いに異なる2つの前記所定動作に対し、互いに異なる前記基準情報が対応づけられており、
 前記取得ステップにおいて、前記端末において開始された前記所定動作に対応する前記基準情報を取得する、9.に記載の制御方法。
11. 前記第2検出ステップによって前記端末の異常が検出された場合に、その異常に関する警告情報を出力する警告ステップを有する、9.又は10.に記載の制御方法。
12. 前記端末において異常な動作を行ったアプリケーションを停止又は終了する制御ステップを有する、9.乃至12.いずれか一つに記載の制御方法。
13. 前記第2検出ステップによって前記端末の異常が検出された場合に、前記端末の状態を、前記所定動作が開始される前の状態にロールバックする制御ステップを有する、9.乃至11.いずれか一つに記載の制御方法。
14. 前記第2検出ステップにおいて、前記所定動作の開始が検出される前は、前記基準情報が示す基準とは異なる基準で、前記端末の異常を検出する、9.乃至13.いずれか一つに記載の制御方法。
15. 前記基準情報は、前記所定動作の中で行われる複数の動作の列を示し、
 前記第2検出ステップにおいて、前記端末において検出された動作の列が、前記基準情報が示す動作の列と合致しない場合に、前記端末が異常であると判定する、9.乃至14.いずれか一つに記載の制御方法。
16. 前記基準情報が示す前記端末の動作は、アプリケーションの実行、コマンドの実行、ライブラリのロード、レジストリの読み込み、レジストリへの書き込み、及びネットワークの読み込み、ネットワークへの書き込みのいずれか1種類以上である、15.に記載の制御方法。
17. 9.乃至16.いずれか一つに記載の制御方法が有する各ステップをコンピュータに実行させるプログラム。

Claims (17)

  1.  端末における所定動作の開始を検出する第1検出部と、
     前記所定動作が開始された後における前記端末の異常検出の基準を表す基準情報を取得する取得部と、
     前記所定動作が開始されたことを検出した後に、前記取得した基準情報を用いて、前記端末の異常を検出する第2検出部と、を有する異常検出装置。
  2.  互いに異なる2つの前記所定動作に対し、互いに異なる前記基準情報が対応づけられており、
     前記取得部は、前記端末において開始された前記所定動作に対応する前記基準情報を取得する、請求項1に記載の異常検出装置。
  3.  前記第2検出部によって前記端末の異常が検出された場合に、その異常に関する警告情報を出力する警告部を有する、請求項1又は2に記載の異常検出装置。
  4.  前記端末において異常な動作を行ったアプリケーションを停止又は終了する制御部を有する、請求項1乃至3いずれか一項に記載の異常検出装置。
  5.  前記第2検出部によって前記端末の異常が検出された場合に、前記端末の状態を、前記所定動作が開始される前の状態にロールバックする制御部を有する、請求項1乃至3いずれか一項に記載の異常検出装置。
  6.  前記第2検出部は、前記所定動作の開始が検出される前は、前記基準情報が示す基準とは異なる基準で、前記端末の異常を検出する、請求項1乃至5いずれか一項に記載の異常検出装置。
  7.  前記基準情報は、前記所定動作の中で行われる複数の動作の列を示し、
     前記第2検出部は、前記端末において検出された動作の列が、前記基準情報が示す動作の列と合致しない場合に、前記端末が異常であると判定する、請求項1乃至6いずれか一項に記載の異常検出装置。
  8.  前記基準情報が示す前記端末の動作は、アプリケーションの実行、コマンドの実行、ライブラリのロード、レジストリの読み込み、レジストリへの書き込み、及びネットワークの読み込み、ネットワークへの書き込みのいずれか1種類以上である、請求項7に記載の異常検出装置。
  9.  コンピュータによって実行される制御方法であって、
     端末における所定動作の開始を検出する第1検出ステップと、
     前記所定動作が開始された後における前記端末の異常検出の基準を表す基準情報を取得する取得ステップと、
     前記所定動作が開始されたことを検出した後に、前記取得した基準情報を用いて、前記端末の異常を検出する第2検出ステップと、を有する制御方法。
  10.  互いに異なる2つの前記所定動作に対し、互いに異なる前記基準情報が対応づけられており、
     前記取得ステップにおいて、前記端末において開始された前記所定動作に対応する前記基準情報を取得する、請求項9に記載の制御方法。
  11.  前記第2検出ステップによって前記端末の異常が検出された場合に、その異常に関する警告情報を出力する警告ステップを有する、請求項9又は10に記載の制御方法。
  12.  前記端末において異常な動作を行ったアプリケーションを停止又は終了する制御ステップを有する、請求項9乃至11いずれか一項に記載の制御方法。
  13.  前記第2検出ステップによって前記端末の異常が検出された場合に、前記端末の状態を、前記所定動作が開始される前の状態にロールバックする制御ステップを有する、請求項9乃至11いずれか一項に記載の制御方法。
  14.  前記第2検出ステップにおいて、前記所定動作の開始が検出される前は、前記基準情報が示す基準とは異なる基準で、前記端末の異常を検出する、請求項9乃至13いずれか一項に記載の制御方法。
  15.  前記基準情報は、前記所定動作の中で行われる複数の動作の列を示し、
     前記第2検出ステップにおいて、前記端末において検出された動作の列が、前記基準情報が示す動作の列と合致しない場合に、前記端末が異常であると判定する、請求項9乃至14いずれか一項に記載の制御方法。
  16.  前記基準情報が示す前記端末の動作は、アプリケーションの実行、コマンドの実行、ライブラリのロード、レジストリの読み込み、レジストリへの書き込み、及びネットワークの読み込み、ネットワークへの書き込みのいずれか1種類以上である、請求項15に記載の制御方法。
  17.  請求項9乃至16いずれか一項に記載の制御方法が有する各ステップをコンピュータに実行させるプログラム。
PCT/JP2019/031592 2019-08-09 2019-08-09 異常検出装置、制御方法、及びプログラム WO2021028963A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2019/031592 WO2021028963A1 (ja) 2019-08-09 2019-08-09 異常検出装置、制御方法、及びプログラム
JP2021539699A JP7298694B2 (ja) 2019-08-09 2019-08-09 異常検出装置、制御方法、及びプログラム
US17/632,317 US20220334908A1 (en) 2019-08-09 2019-08-09 Abnormality detection apparatus, control method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/031592 WO2021028963A1 (ja) 2019-08-09 2019-08-09 異常検出装置、制御方法、及びプログラム

Publications (1)

Publication Number Publication Date
WO2021028963A1 true WO2021028963A1 (ja) 2021-02-18

Family

ID=74569524

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/031592 WO2021028963A1 (ja) 2019-08-09 2019-08-09 異常検出装置、制御方法、及びプログラム

Country Status (3)

Country Link
US (1) US20220334908A1 (ja)
JP (1) JP7298694B2 (ja)
WO (1) WO2021028963A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001209561A (ja) * 2000-01-27 2001-08-03 Mitsubishi Electric Corp 異常処理方式及び異常処理方法
JP2006318036A (ja) * 2005-05-10 2006-11-24 Hitachi Information Systems Ltd 障害監視システム
JP2007052550A (ja) * 2005-08-16 2007-03-01 Nec Corp コンピュータシステム及び情報処理端末
JP2008117007A (ja) * 2006-10-31 2008-05-22 Nomura Research Institute Ltd リモートアクセス制御装置
WO2008114378A1 (ja) * 2007-03-19 2008-09-25 Fujitsu Limited データ処理装置、そのデータ監視方法、そのデータ監視プログラム、及びそのデータ監視プログラムを格納した記録媒体

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3006589B2 (ja) * 1998-06-23 2000-02-07 日本電気株式会社 動作監視ユニット
JP2004295548A (ja) * 2003-03-27 2004-10-21 Kureo:Kk ファイル復元プログラム、ファイル復元方法およびファイル復元装置
US20060005063A1 (en) * 2004-05-21 2006-01-05 Bea Systems, Inc. Error handling for a service oriented architecture
JP2007172221A (ja) * 2005-12-21 2007-07-05 Nippon Telegraph & Telephone East Corp 検疫システム、検疫装置、検疫方法、及び、コンピュータプログラム
JP2012194951A (ja) * 2011-03-18 2012-10-11 Nec Corp トランザクション処理システムおよびトランザクション処理方法
GB2537942B (en) * 2015-05-01 2017-06-14 Imagination Tech Ltd Fault tolerant processor for real-time systems
JP6920800B2 (ja) * 2016-09-23 2021-08-18 東芝テック株式会社 決済装置、プログラムおよびログ記録方法
US10445220B2 (en) * 2017-01-25 2019-10-15 Verizon Patent And Licensing Inc. System and methods for application activity capture, error identification, and error correction
US11106568B2 (en) * 2019-10-23 2021-08-31 Dell Products L.P. Automated application error resolution for information handling system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001209561A (ja) * 2000-01-27 2001-08-03 Mitsubishi Electric Corp 異常処理方式及び異常処理方法
JP2006318036A (ja) * 2005-05-10 2006-11-24 Hitachi Information Systems Ltd 障害監視システム
JP2007052550A (ja) * 2005-08-16 2007-03-01 Nec Corp コンピュータシステム及び情報処理端末
JP2008117007A (ja) * 2006-10-31 2008-05-22 Nomura Research Institute Ltd リモートアクセス制御装置
WO2008114378A1 (ja) * 2007-03-19 2008-09-25 Fujitsu Limited データ処理装置、そのデータ監視方法、そのデータ監視プログラム、及びそのデータ監視プログラムを格納した記録媒体

Also Published As

Publication number Publication date
JP7298694B2 (ja) 2023-06-27
US20220334908A1 (en) 2022-10-20
JPWO2021028963A1 (ja) 2021-02-18

Similar Documents

Publication Publication Date Title
US7475217B2 (en) Method of managing storage capacity in storage system, a storage device and a computer system
CN106055976B (zh) 文件检测方法及沙箱控制器
CN108170552B (zh) 一种抓取Dump文件的方法、装置和设备
US11120124B2 (en) Method for detecting a deviation of a security state of a computing device from a desired security state
US20150074808A1 (en) Rootkit Detection in a Computer Network
US11055416B2 (en) Detecting vulnerabilities in applications during execution
CN106682512B (zh) 一种防止程序被修改的方法及其装置、系统
US10915623B2 (en) Information processing apparatus, information processing method, and computer program product
US11272075B2 (en) Information processing apparatus, information processing method, and storage medium
KR102213676B1 (ko) 산술 연산 감시 기능을 구비하는 오토사 시스템용 단말 장치 및 오토사 시스템의 산술 연산 감시 방법
JP2008003691A (ja) 計算機のプロセス回復方法、チェックポイントリスタートシステム
WO2021028963A1 (ja) 異常検出装置、制御方法、及びプログラム
CN111259392B (zh) 一种基于内核模块的恶意软件拦截方法及装置
CN112328423A (zh) 一种搜索服务漏洞的处理方法、装置和存储介质
JP5997005B2 (ja) 情報処理装置、プロセスの正常終了判定方法およびプログラム
EP3070610B1 (en) Information processing device, control method thereof, and recording medium
US20180341772A1 (en) Non-transitory computer-readable storage medium, monitoring method, and information processing apparatus
US11113122B1 (en) Event loop diagnostics
CN114826886B (zh) 一种应用软件容灾方法、装置及电子设备
US11836064B2 (en) Computing device monitoring
US11836048B2 (en) Information processing apparatus
JP6896035B2 (ja) 監視システム、監視SaaS提供装置、管理装置、及びプログラム
JPWO2017099062A1 (ja) 診断装置、診断方法、及び、診断プログラム
CN116628372A (zh) 资源文件的处理方法、装置、设备及介质
JP2005078122A (ja) ロック状態検出装置およびロック状態検出方法ならびにそのプログラム

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: 19941194

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021539699

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19941194

Country of ref document: EP

Kind code of ref document: A1