[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

WO2024209608A1 - Monitoring device, monitoring method, and monitoring program - Google Patents

Monitoring device, monitoring method, and monitoring program Download PDF

Info

Publication number
WO2024209608A1
WO2024209608A1 PCT/JP2023/014144 JP2023014144W WO2024209608A1 WO 2024209608 A1 WO2024209608 A1 WO 2024209608A1 JP 2023014144 W JP2023014144 W JP 2023014144W WO 2024209608 A1 WO2024209608 A1 WO 2024209608A1
Authority
WO
WIPO (PCT)
Prior art keywords
traffic
open port
determination unit
monitoring
address
Prior art date
Application number
PCT/JP2023/014144
Other languages
French (fr)
Japanese (ja)
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/JP2023/014144 priority Critical patent/WO2024209608A1/en
Publication of WO2024209608A1 publication Critical patent/WO2024209608A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/022Capturing of monitoring data by sampling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning

Definitions

  • the present invention relates to a monitoring device, a monitoring method, and a monitoring program.
  • IoT devices are connected to the Internet. This allows users to provide and use a variety of services.
  • a method for monitoring devices involves passively analyzing traffic information circulating on the Internet to understand the status of connected devices.
  • the monitoring device is characterized by having a feature generation unit that generates features of the device based on sampled traffic, which is at least one of traffic sent from the device and traffic sent to the device, an open port determination unit that determines whether or not the device has an open port based on the features, and an abnormality determination unit that determines an abnormality-related state of the device based on the features if an open port is present on the device.
  • the present invention makes it possible to effectively monitor devices using sampled traffic.
  • FIG. 1 is a diagram illustrating an example of the configuration of a network system according to the first embodiment.
  • FIG. 2 is a diagram illustrating an example of the configuration of a monitoring device according to the first embodiment.
  • FIG. 3 is a diagram showing an example of a traffic record.
  • FIG. 4 is a diagram showing an example of an outgoing traffic record.
  • FIG. 5 is a diagram showing an example of an incoming traffic record.
  • FIG. 6 is a flowchart showing a flow of processing of the monitoring device according to the first embodiment.
  • FIG. 7 is a diagram illustrating an example of the configuration of an open port determining unit according to the second embodiment.
  • FIG. 8 is a diagram illustrating an example of the configuration of a device state determining unit according to the second embodiment.
  • FIG. 9 illustrates an example of a computer that executes a monitoring program.
  • FIG. 1 is a diagram showing an example of the configuration of a network system according to the first embodiment.
  • the network system 1 includes a monitoring device 10, a device 21, a device 22, a device 23, and a device 24 connected to a network N.
  • the network N is the Internet.
  • Device 21 is a camera equipped with a communication function. Device 21 transmits captured images. The images transmitted by device 21 are intended to be viewed only by the user of device 22.
  • images sent by device 21 may be viewable from devices other than device 22, despite the user's intention. This state is called service disclosure.
  • an open port exists in device 21, images may be obtained through that open port.
  • device 21 may be subject to attacks such as DDoS attacks and brute force attacks through the open port.
  • device 21 may be infected with malware through the open port.
  • the monitoring device 10 determines whether or not the devices included in the network system 1 have open ports. Furthermore, the monitoring device 10 determines whether or not the devices that have open ports are in an abnormal state.
  • Fig. 2 is a diagram showing an example of the configuration of the monitoring device according to the first embodiment.
  • the monitoring device 10 has a feature generation unit 11, an open port determination unit 12, an equipment status determination unit 13, an infection determination unit 14, and a display unit 15.
  • the monitoring device 10 also stores a rule DB 16.
  • the feature generation unit 11 generates the feature of the device based on the sampled traffic, which is at least one of the traffic sent from the device and the traffic sent to the device.
  • the open port determination unit 12 determines whether or not an open port exists on the device based on the characteristics.
  • the device status determination unit 13 and the infection determination unit 14 determine the abnormality status of the device based on the characteristics.
  • the device status determination unit 13 and the infection determination unit 14 are examples of an abnormality determination unit.
  • the display unit 15 displays on a screen the status of the device regarding abnormalities determined by the device status determination unit 13 and the infection determination unit 14. For example, the display unit 15 displays the IP address of the target device, and information indicating whether or not the device is under attack and whether or not the device is infected with malware.
  • the monitoring device 10 performs each process on one of the devices (e.g., device 21) included in the network system 1.
  • sampled traffic data is input to the monitoring device 10.
  • the traffic data is captures of sampled packets, header information of sampled packets, or a flow of sampled packets.
  • the monitoring device 10 may receive traffic data (honeypot data) for honeypots.
  • a honeypot is a system that intentionally accepts unauthorized access from an attacker.
  • a honeypot may be a device equipped with an open port.
  • the feature generation unit 11 generates traffic features from the input traffic data.
  • the traffic data is input in a record format (traffic record).
  • Figure 3 is a diagram showing an example of a traffic record.
  • a traffic record includes the following items: "Time”, which is the time or period when the traffic occurred; "SrcIP”, which is the IP address of the source of the packet; “SrcPort”, which is the port of the source of the packet; “DstIP”, which is the IP address of the destination of the packet; “DstPort”, which is the port of the destination of the packet; "Protocol”, which indicates the protocol; “TCPFlag”, which indicates the TCP protocol flag; "Packets”, which indicates the number of packets; and “Bytes”, which indicates the communication volume.
  • each traffic record corresponds to a flow, which is statistical information about packets that have multiple items in common (source IP address, source port number, destination IP address, destination port number, protocol, etc.). However, each traffic record may also correspond to a single packet.
  • the feature generation unit 11 extracts, from the input traffic records, traffic records corresponding to traffic sent from the target device and traffic sent to the target device.
  • the IP address of the target device is "TA".
  • Figure 4 shows a traffic record for traffic sent from the target device, i.e., outgoing traffic.
  • Figure 4 shows an example of an outgoing traffic record.
  • the traffic data for outgoing traffic all have a "SrcIP" value of "TA.”
  • Figure 5 shows a traffic record for traffic sent to the target device, i.e., inbound (incoming) traffic.
  • Figure 5 shows an example of an incoming traffic record.
  • the traffic data for incoming traffic all have a "DstIP" value of "TA.”
  • the feature generation unit 11 extracts outgoing direction traffic records and incoming direction traffic records for each target device.
  • the feature generation unit 11 generates features for each of the outgoing and incoming directions, including the presence of traffic records, filtering of each value, and the results of aggregation or calculation.
  • the feature generation unit 11 may generate features that combine the features of the outgoing and incoming directions.
  • the feature generation unit 11 generates features as shown below.
  • the feature generation unit 11 generates a numeric or binary (TRUE or FALSE) variable that indicates each feature. Note that the features generated by the feature generation unit 11 are not limited to those included in the examples below.
  • Incoming_srcport_80 A binary value indicating whether or not a traffic record with an incoming SrcPort of 80 exists.
  • Incoming_srcport_80_tcpflag_ack A binary value indicating whether or not there is a traffic record with TCPFlag set to ACK for incoming SrcPort 80.
  • Incoming_srcport_80_count Number of traffic records for incoming SrcPort 80.
  • Incoming_srcport_80_rate Percentage of traffic records for Incoming SrcPort 80.
  • Incoming_srcport_80_srcip_num Number of SrcIP types in traffic records with incoming SrcPort 80.
  • Incoming_bps bps (bits per second) calculated from the incoming Byte, Packets, and Time values.
  • Incoming_Outgoing_byte_rate The ratio of byte values in the incoming and outgoing directions.
  • the open port determination unit 12 uses the features generated by the feature generation unit 11 to determine whether or not an open port exists in a device. If the rules stored in the rule DB 16 are satisfied, the open port determination unit 12 determines that an open port exists. Furthermore, "TP" is the port to be determined. Below, the conditional expressions are shown and each rule is explained. However, if only a variable is written in a conditional expression, it means that the variable (flag, etc.) is TRUE.
  • the open port determination unit 12 makes a determination based on rules 1-1 to 1-5 below.
  • the open port determination unit 12 can determine whether a port is open even if the sampled traffic does not contain any response traffic conforming to the TCP protocol from the device's IP address, or if there is traffic of a protocol other than the TCP protocol with the device's IP address as the source or destination (destination).
  • the open port determination unit 12 makes a determination according to rule 2-1 below.
  • the conditional expression in parentheses is optional and does not have to be used.
  • the open port determination unit 12 makes a determination according to rule 3-1 below.
  • the conditional expression in parentheses is optional and does not have to be used.
  • Rules 2-1 and 3-1 are effective when asymmetric routing exists or when the conditions at the observation point make it impossible to collect traffic data for both the incoming and outgoing directions.
  • the open port determination unit 12 can determine whether a port is open even if there is only traffic sent from the device's IP address or traffic sent to the device's IP address.
  • the open port determination unit 12 may actually send a scan packet to the port determined to be an open port and determine whether or not the port is an open port. This allows the open port determination unit 12 to more reliably determine whether or not a port is an open port.
  • the open port determination unit 12 can make highly accurate determinations using limited resources.
  • the device state determination unit 13 determines whether an attack is being carried out on the device based on the characteristics of traffic that is sent to the device and is generated by accessing an open port.
  • the device status determination unit 13 determines whether the target device is under attack according to the following rules 4-1 and 4-2.
  • the device status determination unit 13 determines that the device is the target of a DDoS attack. Note that the device status determination unit 13 may add a condition that the outgoing traffic ratio is equal to or greater than the threshold T32, for example, and determine that the device is the target of a DDoS attack if the incoming traffic volume is relatively large compared to the outgoing traffic ratio.
  • the device status determination unit 13 determines that the device is a springboard for a DDoS attack. Note that the device status determination unit 13 may add a condition that the traffic ratio in the incoming direction is equal to or greater than the threshold T34, for example, and determine that the device is a springboard for a DDoS attack if the traffic volume in the outgoing direction is relatively large compared to the traffic ratio in the incoming direction.
  • the infection determination unit 14 determines whether or not the device is infected with malware.
  • the infection determination unit 14 determines that the device is infected with malware.
  • a device Even if a device is communicating with a malicious IP address, this does not necessarily mean that the device is infected with malware. For example, a device may only be subject to scans, vulnerability attacks, or DDoS attacks from a malicious IP address, and may not be infected.
  • the infection determination unit 14 can determine whether or not a device is infected with malware by focusing on callbacks from malicious IP addresses using rule-based determination based on the following rules 5-1 to 5-4.
  • FIG. 6 is a flowchart showing the processing flow of the monitoring device according to the first embodiment.
  • the monitoring device 10 generates characteristics of the sampled traffic data (step S101).
  • the monitoring device 10 determines whether or not the target device has an open port based on the characteristics (step S102).
  • the monitoring device 10 If no open port exists (step S103, No), the monitoring device 10 outputs the result of the determination (step S107). In this case, the monitoring device 10 outputs information to notify that no open port exists.
  • step S103 the monitoring device 10 determines whether the target device is under attack based on the characteristics (step S104).
  • the monitoring device 10 determines that the target device is not under attack (step S105, No), it outputs the result of the determination (step S107). In this case, the monitoring device 10 outputs information to notify that the target device is not under attack, even though an open port exists.
  • step S105 determines whether the target device is under attack (step S105, Yes)
  • the monitoring device 10 has a feature generation unit 11, an open port determination unit 12, an equipment status determination unit 13, and an infection determination unit 14.
  • the feature generation unit 11 generates equipment features based on sampled traffic, which is at least one of traffic sent from the equipment and traffic sent to the equipment.
  • the open port determination unit 12 determines whether or not the equipment has an open port based on the features. If the equipment has an open port, the equipment status determination unit 13 and the infection determination unit 14 determine the abnormality status of the equipment based on the features.
  • the monitoring device 10 determines open ports from the characteristics of the traffic. This allows the monitoring device 10 to perform more detailed abnormality determinations for devices suspected of having open ports from the limited traffic information obtained by sampling. As a result, the monitoring device 10 can effectively monitor devices using the sampled traffic.
  • the open port determination unit 12 determines whether or not an open port exists on the device when the sampled traffic does not contain any response traffic conforming to the TCP protocol from the device's IP address, when there is traffic of a protocol other than the TCP protocol with the device's IP address as the source or destination, or when there is only traffic sent from the device's IP address or traffic sent to the device's IP address.
  • the monitoring device 10 can determine whether a port is open even when there is insufficient TCP protocol traffic, or when only outgoing or incoming traffic is available.
  • the device status determination unit 13 determines whether an attack is being carried out on the device based on the characteristics of traffic sent to the device and generated by accessing an open port.
  • the monitoring device 10 can improve the efficiency of processing by determining the presence of a previous open port and determining whether an attack has occurred on a device suspected of having an open port.
  • the infection determination unit 14 determines whether an attack is being made on the device, it determines whether the device is infected with malware. For example, if the sampled traffic contains traffic whose source is the IP address of the device and whose destination is an IP address in a pre-specified block, the infection determination unit 14 determines that the device is infected with malware.
  • the monitoring device 10 can make processing more efficient by determining whether a previous attack has occurred before determining whether an infection has occurred.
  • the monitoring device 10 determines the presence of an open port and whether or not the device is under attack by a rule-based method, whereas in the second embodiment, the monitoring device 10 determines the presence of an open port and whether or not the device is under attack by using a machine learning technique.
  • FIG. 7 is a diagram showing an example of the configuration of an open port determination unit according to the second embodiment.
  • the open port determination unit 12 has a learning unit 121, detection model information 122, a detection unit 123, and an extraction unit 124.
  • the detection model information 122 is information for constructing a detection model, which is a machine learning model for detecting anomalies.
  • the detection model is, for example, one-class SVM, isolation forest, etc.
  • the detection model information 122 is parameters for constructing the detection model.
  • the learning unit 121 learns the detection model using the characteristics of a device that is known to have an open port, or the characteristics of a device that is known to not have an open port.
  • the learning unit 121 updates the detection model information 122 through learning.
  • the detection unit 123 inputs the traffic characteristics of a device, for which it is unknown whether or not an open port exists, into a detection model constructed based on the detection model information 122, and obtains the result of anomaly detection.
  • the result of anomaly detection is whether or not an open port exists.
  • the extraction unit 124 extracts the port number from the features that contributed to the detection. For example, the detection model uses the features generated by the feature generation unit 11 as explanatory variables. At this time, the extraction unit 124 identifies the feature with the highest contribution rate among the features related to the source port number in the outgoing direction (for example, features whose variable name includes "Outgoing_SrcPort"). The extraction unit 124 then extracts the port number based on that feature.
  • the extraction unit 124 identifies the feature Outgoing_SrcPort_TP_TCPFlag_SYNACK, it extracts port numbers that satisfy the conditions related to this feature. In this case, the extraction unit 124 extracts source ports of traffic records in the outgoing direction where the TCPFlag is SYN or ACK.
  • FIG. 8 is a diagram showing an example of the configuration of the device state determination unit according to the second embodiment.
  • the device state determination unit 13 has a learning unit 131, determination model information 132, and a determination unit 133.
  • the judgment model information 132 is information for constructing a judgment model, which is a machine learning model for making judgments.
  • the judgment model makes two patterns of judgment, success or failure, so it may be a model similar to a detection model that detects anomalies (e.g., one-class SVM, isolation forest, etc.).
  • the judgment model information 132 is parameters for constructing the judgment model.
  • the learning unit 131 learns the judgment model using traffic data when it was possible to log in to the honeypot (when the vulnerability attack was successful) and traffic data when it was impossible to log in to the honeypot (when the vulnerability attack failed).
  • the learning unit 131 updates the judgment model information 132 through learning.
  • the determination unit 133 inputs the characteristics of the traffic of a device, for which it is unknown whether it is under attack or not, or whether the attack has been successful or unsuccessful, into a determination model constructed based on the determination model information 132, and obtains a determination result.
  • the determination result is whether or not the device is under attack.
  • the device status determination unit 13 can determine whether the sampled traffic was a successful attack on a device by using a machine learning model that has learned the characteristics of traffic that resulted in successful attacks on a honeypot and the characteristics of traffic that resulted in unsuccessful attacks on a honeypot.
  • each component of each device shown in the figure is functionally conceptual, and does not necessarily have to be physically configured as shown in the figure.
  • the specific form of distribution and integration of each device is not limited to that shown in the figure, and all or a part of it can be functionally or physically distributed or integrated in any unit depending on various loads, usage conditions, etc.
  • each processing function performed by each device can be realized in whole or in part by a CPU (Central Processing Unit) and a program analyzed and executed by the CPU, or can be realized as hardware by wired logic. Note that the program may be executed not only by the CPU but also by other processors such as a GPU.
  • the monitoring device 10 can be implemented by installing a monitoring program that executes the above-mentioned collection process as package software or online software on a desired computer.
  • the above-mentioned monitoring program can be executed by an information processing device, causing the information processing device to function as the monitoring device 10.
  • the information processing device here includes desktop or notebook personal computers.
  • the information processing device also includes mobile communication terminals such as smartphones, mobile phones, and PHS (Personal Handyphone Systems), as well as slate terminals such as PDAs (Personal Digital Assistants).
  • the monitoring device 10 can also be implemented as a scan server device that treats a terminal device used by a user as a client and provides services related to the above-mentioned scan processing to the client.
  • the scan server device is implemented as a server device that provides a scan service that takes seed information and IPv4 statistical information as input and outputs scan results.
  • the scan server device may be implemented as a web server, or as a cloud that provides services related to the above-mentioned scan processing through outsourcing.
  • FIG. 9 is a diagram showing an example of a computer that executes a monitoring program.
  • the computer 1000 has, for example, a memory 1010 and a CPU 1020.
  • the computer 1000 also has a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. Each of these components is connected by a bus 1080.
  • the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM (Random Access Memory) 1012.
  • the ROM 1011 stores a boot program such as a BIOS (Basic Input Output System).
  • BIOS Basic Input Output System
  • the hard disk drive interface 1030 is connected to a hard disk drive 1090.
  • the disk drive interface 1040 is connected to a disk drive 1100.
  • a removable storage medium such as a magnetic disk or optical disk is inserted into the disk drive 1100.
  • the serial port interface 1050 is connected to a mouse 1110 and a keyboard 1120, for example.
  • the video adapter 1060 is connected to a display 1130, for example.
  • the hard disk drive 1090 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094. That is, the programs that define each process of the monitoring device 10 are implemented as program modules 1093 in which computer-executable code is written.
  • the program modules 1093 are stored, for example, in the hard disk drive 1090.
  • a program module 1093 for executing processes similar to the functional configuration of the monitoring device 10 is stored in the hard disk drive 1090.
  • the hard disk drive 1090 may be replaced by an SSD (Solid State Drive).
  • the setting data used in the processing of the above-mentioned embodiment is stored as program data 1094, for example, in memory 1010 or hard disk drive 1090.
  • the CPU 1020 reads out the program module 1093 or program data 1094 stored in memory 1010 or hard disk drive 1090 into RAM 1012 as necessary, and executes the processing of the above-mentioned embodiment.
  • the program module 1093 and program data 1094 are not limited to being stored in the hard disk drive 1090, but may be stored in, for example, a removable storage medium and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program module 1093 and program data 1094 may be stored in another computer connected via a network (such as a LAN (Local Area Network), WAN (Wide Area Network)). The program module 1093 and program data 1094 may then be read by the CPU 1020 from the other computer via the network interface 1070.
  • a network such as a LAN (Local Area Network), WAN (Wide Area Network)

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A monitoring device (10) includes a feature generation unit (11), an open port determination unit (12), an equipment state determination unit (13), and an infection determination unit (14). The feature generation unit (11) generates a feature of an equipment on the basis of sampled traffic, which is any one of traffic in a direction of transmission from the equipment and traffic in a direction of transmission to the equipment. The open port determination unit (12) determines, on the basis of the feature, whether or not an open port of the equipment exists. When an open port exists in the equipment, the equipment state determination unit (13) and the infection determination unit (14) determine a state regarding abnormality of the equipment on the basis of the feature.

Description

監視装置、監視方法及び監視プログラムMonitoring device, monitoring method, and monitoring program

 本発明は、監視装置、監視方法及び監視プログラムに関する。 The present invention relates to a monitoring device, a monitoring method, and a monitoring program.

 IoT機器をはじめ多くの機器がインターネットに接続されている。これにより、ユーザは各種サービスを提供したり利用したりすることができる。 Many devices, including IoT devices, are connected to the Internet. This allows users to provide and use a variety of services.

 一方、インターネットへの接続が容易に実施できるようになった現在、接続された機器が不用意にサービス公開をしていること、及び機器に脆弱性があることをユーザが把握していない場合がある。 On the other hand, now that it is easy to connect to the Internet, users may not be aware that connected devices are inadvertently exposing services or that the devices have vulnerabilities.

 結果として、インターネットに接続された機器が不用意にサービスを公開したり、脆弱性を攻撃されてマルウェアに感染し、不審な通信先と接続したりする状況が発生している。このような状況に対しては、機器の監視を行い、早期対策を実施する必要がある。 As a result, situations are occurring where devices connected to the Internet inadvertently expose services, have vulnerabilities exploited, become infected with malware, and connect to suspicious destinations. To prevent such situations, it is necessary to monitor devices and implement early countermeasures.

 従来、機器の監視のための手法として、インターネット上を流通するトラフィック情報をパッシブに分析して、接続される機器の状態を把握する手法が存在する。 Traditionally, a method for monitoring devices involves passively analyzing traffic information circulating on the Internet to understand the status of connected devices.

"Portscan Detection with Sampled NetFlow"、[online]、[2023年3月22日検索]、インターネット(https://people.ac.upc.edu/pbarlet/papers/portscan-sampling.pdf)"Portscan Detection with Sampled NetFlow", [online], [Retrieved March 22, 2023], Internet (https://people.ac.upc.edu/pbarlet/papers/portscan-sampling.pdf)

 しかしながら、従来の技術には、サンプリングされたトラフィックを用いた機器の監視を効果的に行うことができない場合があるという問題がある。 However, conventional techniques have the problem that they may not be able to effectively monitor devices using sampled traffic.

 例えば、インターネット上を流通するトラフィックの情報をパッシブに収集する場合、トラフィックの総量が膨大であることから、粗くサンプリングしてパケットヘッダのみを収集することが多い。 For example, when passively collecting information about traffic circulating on the Internet, because the total amount of traffic is enormous, it is common to roughly sample and collect only packet headers.

 従来の手法は、トラフィックを取りこぼしなく収集することを前提としているため、粗いサンプリングでは効果的な監視を行うことができない。 Traditional methods rely on collecting all traffic without missing anything, so coarse sampling does not allow for effective monitoring.

 上述した課題を解決し、目的を達成するために、監視装置は、サンプリングされたトラフィックであって、機器から送信される方向のトラフィック、及び前記機器に対して送信される方向のトラフィックの少なくともいずれかを基に、前記機器の特徴を生成する特徴生成部と、前記特徴を基に、前記機器のオープンポートが存在するか否かを判定するオープンポート判定部と、前記機器にオープンポートが存在する場合、前記特徴を基に、前記機器の異常に関する状態を判定する異常判定部と、を有することを特徴とする。 In order to solve the above-mentioned problems and achieve the objective, the monitoring device is characterized by having a feature generation unit that generates features of the device based on sampled traffic, which is at least one of traffic sent from the device and traffic sent to the device, an open port determination unit that determines whether or not the device has an open port based on the features, and an abnormality determination unit that determines an abnormality-related state of the device based on the features if an open port is present on the device.

 本発明によれば、サンプリングされたトラフィックを用いた機器の監視を効果的に行うことができる。 The present invention makes it possible to effectively monitor devices using sampled traffic.

図1は、第1の実施形態に係るネットワークシステムの構成例を示す図である。FIG. 1 is a diagram illustrating an example of the configuration of a network system according to the first embodiment. 図2は、第1の実施形態に係る監視装置の構成例を示す図である。FIG. 2 is a diagram illustrating an example of the configuration of a monitoring device according to the first embodiment. 図3は、トラフィックレコードの例を示す図である。FIG. 3 is a diagram showing an example of a traffic record. 図4は、Outgoing方向のトラフィックレコードの例を示す図である。FIG. 4 is a diagram showing an example of an outgoing traffic record. 図5は、Incoming方向のトラフィックレコードの例を示す図である。FIG. 5 is a diagram showing an example of an incoming traffic record. 図6は、第1の実施形態に係る監視装置の処理の流れを示すフローチャートである。FIG. 6 is a flowchart showing a flow of processing of the monitoring device according to the first embodiment. 図7は、第2の実施形態に係るオープンポート判定部の構成例を示す図である。FIG. 7 is a diagram illustrating an example of the configuration of an open port determining unit according to the second embodiment. 図8は、第2の実施形態に係る機器状態判定部の構成例を示す図である。FIG. 8 is a diagram illustrating an example of the configuration of a device state determining unit according to the second embodiment. 図9は、監視プログラムを実行するコンピュータの一例を示す図である。FIG. 9 illustrates an example of a computer that executes a monitoring program.

 以下に、本願に係る監視装置、監視方法及び監視プログラムの実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。 Below, embodiments of the monitoring device, monitoring method, and monitoring program according to the present application are described in detail with reference to the drawings. Note that the present invention is not limited to the embodiments described below.

[第1の実施形態のネットワークシステムの構成]
 図1を用いて、図1は、第1の実施形態に係るネットワークシステムの構成例を示す図である。図1に示すように、ネットワークシステム1は、ネットワークNに接続された監視装置10、機器21、機器22、機器23及び機器24を有する。例えば、ネットワークNはインターネットである。
[Configuration of the network system according to the first embodiment]
1 is a diagram showing an example of the configuration of a network system according to the first embodiment. As shown in Fig. 1, the network system 1 includes a monitoring device 10, a device 21, a device 22, a device 23, and a device 24 connected to a network N. For example, the network N is the Internet.

 機器21は通信機能を備えたカメラである。機器21は、撮像した画像を送信する。機器21によって送信される画像は、機器22のユーザによってのみ閲覧されることが意図されているものとする。 Device 21 is a camera equipped with a communication function. Device 21 transmits captured images. The images transmitted by device 21 are intended to be viewed only by the user of device 22.

 一方で、機器21によって送信される画像は、意図に反して、機器22以外の機器から閲覧できる場合がある。このような状態をサービス公開と呼ぶ。 On the other hand, images sent by device 21 may be viewable from devices other than device 22, despite the user's intention. This state is called service disclosure.

 例えば、機器21にオープンポートが存在する場合、当該オープンポートを介して画像が取得されてしまう場合がある。さらに、機器21は、オープンポートを介してDDoS攻撃及びブルートフォース攻撃といった攻撃を受ける場合がある。また、機器21は、オープンポートを介してマルウェアに感染する場合がある。 For example, if an open port exists in device 21, images may be obtained through that open port. Furthermore, device 21 may be subject to attacks such as DDoS attacks and brute force attacks through the open port. Furthermore, device 21 may be infected with malware through the open port.

 監視装置10は、ネットワークシステム1に含まれる機器のオープンポートの有無を判定する。さらに、監視装置10は、オープンポートが存在する機器について、異常の状態を判定する。 The monitoring device 10 determines whether or not the devices included in the network system 1 have open ports. Furthermore, the monitoring device 10 determines whether or not the devices that have open ports are in an abnormal state.

[第1の実施形態の構成]
 図2を用いて、監視装置の構成について説明する。図2は、第1の実施形態に係る監視装置の構成例を示す図である。
[Configuration of the first embodiment]
The configuration of the monitoring device will be described with reference to Fig. 2. Fig. 2 is a diagram showing an example of the configuration of the monitoring device according to the first embodiment.

 図2に示すように、監視装置10は、特徴生成部11、オープンポート判定部12、機器状態判定部13、感染判定部14及び表示部15を有する。また、監視装置10は、ルールDB16を記憶する。 As shown in FIG. 2, the monitoring device 10 has a feature generation unit 11, an open port determination unit 12, an equipment status determination unit 13, an infection determination unit 14, and a display unit 15. The monitoring device 10 also stores a rule DB 16.

 特徴生成部11は、サンプリングされたトラフィックであって、機器から送信される方向のトラフィック、及び機器に対して送信される方向のトラフィックの少なくともいずれかを基に、機器の特徴を生成する。 The feature generation unit 11 generates the feature of the device based on the sampled traffic, which is at least one of the traffic sent from the device and the traffic sent to the device.

 オープンポート判定部12は、特徴を基に、機器のオープンポートが存在するか否かを判定する。 The open port determination unit 12 determines whether or not an open port exists on the device based on the characteristics.

 機器状態判定部13及び感染判定部14は、機器にオープンポートが存在する場合、特徴を基に、機器の異常に関する状態を判定する。機器状態判定部13及び感染判定部14は、異常判定部の例である。 If an open port exists in the device, the device status determination unit 13 and the infection determination unit 14 determine the abnormality status of the device based on the characteristics. The device status determination unit 13 and the infection determination unit 14 are examples of an abnormality determination unit.

 表示部15は、機器状態判定部13及び感染判定部14によって判定された機器の異常に関する状態を画面に表示する。例えば、表示部15は、対象の機器のIPアドレスと、当該機器が攻撃を受けているか否か、及び当該機器がマルウェアに感染しているか否かを示す情報を表示する。 The display unit 15 displays on a screen the status of the device regarding abnormalities determined by the device status determination unit 13 and the infection determination unit 14. For example, the display unit 15 displays the IP address of the target device, and information indicating whether or not the device is under attack and whether or not the device is infected with malware.

 監視装置10が実行する処理の各ステップ、及び各部の動作について詳細に説明する。ここでは、監視装置10は、ネットワークシステム1に含まれるいずれかの機器(例えば、機器21)を対象として各処理を行う。 The following describes in detail each step of the process executed by the monitoring device 10 and the operation of each unit. Here, the monitoring device 10 performs each process on one of the devices (e.g., device 21) included in the network system 1.

[トラフィックの特徴生成]
 図2に示すように、監視装置10にはサンプリングされたトラフィックのデータが入力される。トラフィックのデータは、サンプリングされたパケットのキャプチャ、サンプリングされたパケットのヘッダ情報、又はサンプリングされたパケットのフローである。
[Traffic feature generation]
2, sampled traffic data is input to the monitoring device 10. The traffic data is captures of sampled packets, header information of sampled packets, or a flow of sampled packets.

 監視装置10には、ハニーポットに対するトラフィックのデータ(ハニーポットデータ)が入力されてもよい。ハニーポットは、攻撃者からの不正なアクセスを意図的に受け付けるシステムである。ハニーポットは、オープンポートを備えた機器であってもよい。 The monitoring device 10 may receive traffic data (honeypot data) for honeypots. A honeypot is a system that intentionally accepts unauthorized access from an attacker. A honeypot may be a device equipped with an open port.

 特徴生成部11は、入力されたトラフィックのデータから、トラフィックの特徴を生成する。ここで、図3に示す通り、トラフィックのデータはレコード形式(トラフィックレコード)で入力されるものとする。図3は、トラフィックレコードの例を示す図である。 The feature generation unit 11 generates traffic features from the input traffic data. Here, as shown in Figure 3, it is assumed that the traffic data is input in a record format (traffic record). Figure 3 is a diagram showing an example of a traffic record.

 トラフィックは、1つ又は複数のパケットの送受信によって発生するものとする。図3に示すように、トラフィックレコードは、トラフィックの発生時刻又は期間である「Time」、パケットの送信元のIPアドレスである「SrcIP」、パケットの送信元のポートである「SrcPort」、パケットの宛先のIPアドレスである「DstIP」、パケットの宛先のポートである「DstPort」、プロトコルを示す「Protocol」、TCPプロトコルのフラグを示す「TCPFlag」、パケット数を示す「Packets」、通信量を示す「Bytes」という項目を含む。 Traffic is generated by the sending and receiving of one or more packets. As shown in Figure 3, a traffic record includes the following items: "Time", which is the time or period when the traffic occurred; "SrcIP", which is the IP address of the source of the packet; "SrcPort", which is the port of the source of the packet; "DstIP", which is the IP address of the destination of the packet; "DstPort", which is the port of the destination of the packet; "Protocol", which indicates the protocol; "TCPFlag", which indicates the TCP protocol flag; "Packets", which indicates the number of packets; and "Bytes", which indicates the communication volume.

 また、各トラフィックレコードは、複数の項目(送信元のIPアドレス、送信元のポート番号、宛先のIPアドレス、宛先のポート番号、プロトコル等)が共通するパケットの統計情報であるフローに相当する。ただし、各トラフィックレコードは単一のパケットに対応するものであってもよい。 In addition, each traffic record corresponds to a flow, which is statistical information about packets that have multiple items in common (source IP address, source port number, destination IP address, destination port number, protocol, etc.). However, each traffic record may also correspond to a single packet.

 特徴生成部11は、入力されたトラフィックレコードの中から、対象の機器から送信される方向のトラフィック、及び対象の機器に対して送信される方向のトラフィックに対応するトラフィックレコードをそれぞれ抽出する。ここで、対象の機器のIPアドレスを「TA」とする。 The feature generation unit 11 extracts, from the input traffic records, traffic records corresponding to traffic sent from the target device and traffic sent to the target device. Here, the IP address of the target device is "TA".

 図4に、対象の機器から送信される方向のトラフィック、すなわち外向き(Outgoing方向)のトラフィックのトラフィックレコードを示す。図4は、Outgoing方向のトラフィックレコードの例を示す図である。図4に示すように、Outgoing方向のトラフィックのトラフィックデータは、いずれも「SrcIP」の値が「TA」である。 Figure 4 shows a traffic record for traffic sent from the target device, i.e., outgoing traffic. Figure 4 shows an example of an outgoing traffic record. As shown in Figure 4, the traffic data for outgoing traffic all have a "SrcIP" value of "TA."

 図5に、対象の機器に対して送信される方向のトラフィック、すなわち内向き(Incoming方向)のトラフィックのトラフィックレコードを示す。図5は、Incoming方向のトラフィックレコードの例を示す図である。図5に示すように、Incoming方向のトラフィックのトラフィックデータは、いずれも「DstIP」の値が「TA」である。 Figure 5 shows a traffic record for traffic sent to the target device, i.e., inbound (incoming) traffic. Figure 5 shows an example of an incoming traffic record. As shown in Figure 5, the traffic data for incoming traffic all have a "DstIP" value of "TA."

 また、対象の機器は複数であってもよい。その場合、特徴生成部11は、対象の機器のそれぞれについてOutgoing方向のトラフィックレコードとIncoming方向のトラフィックレコードを抽出する。 Furthermore, there may be multiple target devices. In that case, the feature generation unit 11 extracts outgoing direction traffic records and incoming direction traffic records for each target device.

 特徴生成部11は、Outgoing方向とIncoming方向のそれぞれについて、トラフィックレコードの存在、各値のフィルタ、集計又は計算の結果を特徴として生成する。特徴生成部11は、Outgoing方向とIncoming方向の特徴を組み合わせた特徴を生成してもよい。 The feature generation unit 11 generates features for each of the outgoing and incoming directions, including the presence of traffic records, filtering of each value, and the results of aggregation or calculation. The feature generation unit 11 may generate features that combine the features of the outgoing and incoming directions.

 特徴生成部11は、下記のような特徴を生成する。特徴生成部11は、各特徴を示す、数値又は二値(TRUE又はFALSE)の変数を生成する。なお、特徴生成部11が生成する特徴は、下記の例に含まれるものに限られない。 The feature generation unit 11 generates features as shown below. The feature generation unit 11 generates a numeric or binary (TRUE or FALSE) variable that indicates each feature. Note that the features generated by the feature generation unit 11 are not limited to those included in the examples below.

(レコードの存在に基づく特徴)
 Incoming_srcport_80:Incoming方向のSrcPortが80番のトラフィックレコードが存在するか否かを示す二値。
 Incoming_srcport_80_tcpflag_ack:Incoming方向のSrcPort80番でTCPFlagがACKのトラフィックレコードが存在するか否かを示す二値。
(Characteristics based on the existence of records)
Incoming_srcport_80: A binary value indicating whether or not a traffic record with an incoming SrcPort of 80 exists.
Incoming_srcport_80_tcpflag_ack: A binary value indicating whether or not there is a traffic record with TCPFlag set to ACK for incoming SrcPort 80.

(フィルタ又は集計の結果に基づく特徴)
 Incoming_srcport_80_count:Incoming方向のSrcPort80番のトラフィックレコード数。
 Incoming_srcport_80_rate:Incoming方向のSrcPort80番のトラフィックレコードの割合。
 Incoming_srcport_80_srcip_num:Incoming方向のSrcPort80番のトラフィックレコードにおけるSrcIPの種類数。
(Features based on filter or aggregation results)
Incoming_srcport_80_count: Number of traffic records for incoming SrcPort 80.
Incoming_srcport_80_rate: Percentage of traffic records for Incoming SrcPort 80.
Incoming_srcport_80_srcip_num: Number of SrcIP types in traffic records with incoming SrcPort 80.

(計算の結果に基づく特徴)
 Incoming_bps:Incoming方向のByte値、Packets値、Time値から計算したbps(bit per second)。
(Characteristics based on the results of calculations)
Incoming_bps: bps (bits per second) calculated from the incoming Byte, Packets, and Time values.

(Outgoing方向とIncoming方向の特徴の組み合わせ)
 Incoming_Outgoing_byte_rate:Incoming方向とOutgoing方向のByte値の割合。
(Combination of outgoing and incoming features)
Incoming_Outgoing_byte_rate: The ratio of byte values in the incoming and outgoing directions.

 オープンポート判定部12は、特徴生成部11によって生成された特徴を用いて、機器にオープンポートが存在するか否かを判定する。オープンポート判定部12は、ルールDB16に記憶されたルールが満たされる場合、オープンポートが存在すると判定する。また、「TP」は判定対象のポートである。以下、条件式を示し、各ルールを説明する。ただし、条件式に変数のみが記載されている場合、当該変数(フラグ等)がTRUEであることを意味する。 The open port determination unit 12 uses the features generated by the feature generation unit 11 to determine whether or not an open port exists in a device. If the rules stored in the rule DB 16 are satisfied, the open port determination unit 12 determines that an open port exists. Furthermore, "TP" is the port to be determined. Below, the conditional expressions are shown and each rule is explained. However, if only a variable is written in a conditional expression, it means that the variable (flag, etc.) is TRUE.

 Incoming方向、Outgoing方向の両方のトラフィックレコードが存在する場合、オープンポート判定部12は、下記のルール1-1からルール1-5により判定を行う。 If both incoming and outgoing traffic records exist, the open port determination unit 12 makes a determination based on rules 1-1 to 1-5 below.

(ルール1-1)
 Outgoing方向のSrcPortがTP、かつSYN/ACK応答(TCPFlagがSYN又はACK)が観測されたトラフィックレコードが存在。
 条件式:Outgoing_SrcPort_TP_TCPFlag_SYNACK
(Rule 1-1)
There is a traffic record in which the outgoing SrcPort is TP and a SYN/ACK response (TCPFlag is SYN or ACK) is observed.
Conditional expression: Outgoing_SrcPort_TP_TCPFlag_SYNACK

(ルール1-2)
 Incoming方向のポート番号TP宛のSYN通信があり、Outgoing方向でポート番号TP宛てのACK応答が観測されている。
 条件式:Incoming_DstPort_TP_TCPFlag_SYN AND Outgoing_SrcPort_TP_Outgoing_TCPFlag_ACK
(Rule 1-2)
There is an incoming SYN communication addressed to port number TP, and an outgoing ACK response addressed to port number TP is observed.
Conditional expression: Incoming_DstPort_TP_TCPFlag_SYN AND Outgoing_SrcPort_TP_Outgoing_TCPFlag_ACK

(ルール1-3)
 Incoming方向のポート番号TP宛に閾値T1以上の数のSrcIPからのACK通信があり、Outgoing方向でポート番号TPからのACK応答が閾値T2以上の数のDstIP宛に観測されている。
 条件式:Incoming_DstPort_TP_TCPFlag_ACK_srcip_num>T1 AND Outgoing_SrcPort_TP_TCPFlag_ACK_dstip_num>T2
 ルール1-3では、srcip_num(送信元IPアドレスの数の合計)に加え、byte_count(Bytesの合計)、packet_count(Packetsの合計)、flow_count(レコード数)等が使用されてもよい。
(Rule 1-3)
In the incoming direction, ACK communications are received from SrcIPs addressed to port number TP in a number equal to or greater than threshold T1, and in the outgoing direction, ACK responses from port number TP are observed addressed to DstIPs in a number equal to or greater than threshold T2.
Conditional expression: Incoming_DstPort_TP_TCPFlag_ACK_srcip_num>T1 AND Outgoing_SrcPort_TP_TCPFlag_ACK_dstip_num>T2
In rules 1-3, in addition to srcip_num (the total number of source IP addresses), byte_count (the total number of bytes), packet_count (the total number of packets), flow_count (the number of records), etc. may be used.

(ルール1-4)
 Incoming方向のポート番号TP宛のトラフィックレコード数が閾値T3以上、Outgoing方向でポート番号TPからのレコード数(フロー数)がT4以上、かつポートTPの使用割合が閾値T5以上である。
 条件式:Incoming_DstPort_TP_flow_num>T3 AND Outgoing_SrcPort_TP_flow_num>T4 AND Outgoing_SrcPort_TP_rate>T5
 ルール1-4は、TCPFlagが存在しない場合(UDPプロトコル等のTCPプロトコル以外のプロトコルが使用されている場合)に有効である。
(Rule 1-4)
The number of incoming traffic records destined for port number TP is equal to or greater than threshold T3, the number of outgoing records (number of flows) from port number TP is equal to or greater than T4, and the usage rate of port TP is equal to or greater than threshold T5.
Conditional expression: Incoming_DstPort_TP_flow_num>T3 AND Outgoing_SrcPort_TP_flow_num>T4 AND Outgoing_SrcPort_TP_rate>T5
Rules 1-4 are valid when TCPFlag does not exist (when a protocol other than the TCP protocol, such as the UDP protocol, is used).

 オープンポート判定部12は、サンプリングされたトラフィックの中に、機器のIPアドレスからのTCPプロトコルに従った応答のトラフィックがない場合、又は機器のIPアドレスを送信元又は送信先(宛先)とするTCPプロトコル以外のプロトコルのトラフィックが存在する場合であっても、オープンポートの判定を行うことができる。 The open port determination unit 12 can determine whether a port is open even if the sampled traffic does not contain any response traffic conforming to the TCP protocol from the device's IP address, or if there is traffic of a protocol other than the TCP protocol with the device's IP address as the source or destination (destination).

(ルール1-5)
 Outgoing方向のフロー数が閾値T6以上存在し、Outgoing方向のSrcPortであるTPがダイナミックポートでなく、Outgoing方向のDstPortがダイナミックポートポートであり、ポート番号TPの割合が閾値T7以上である。
 条件式:Outgoing_flow_count>T6 AND Outgoing_SrcPort_TP_NOT_DynamicPort AND Outgoing_DstPort_IS_DynamicPort AND Outgoing_SrcPort_TP_rate>T7
 ルール1-5は、トラフィックをサンプリングする際のサンプリングレートが高いほど有効になる。
(Rule 1-5)
The number of outgoing flows is equal to or greater than the threshold T6, the TP that is the outgoing SrcPort is not a dynamic port, the outgoing DstPort is a dynamic port, and the proportion of the port numbers TP is equal to or greater than the threshold T7.
Conditional expression: Outgoing_flow_count>T6 AND Outgoing_SrcPort_TP_NOT_DynamicPort AND Outgoing_DstPort_IS_DynamicPort AND Outgoing_SrcPort_TP_rate>T7
Rules 1-5 become more effective as the sampling rate for sampling traffic increases.

 Incoming方向のトラフィックレコードのみが存在する場合、オープンポート判定部12は、下記のルール2-1により判定を行う。ただし、かっこ内の条件式はオプションであり、使用されなくてもよい。 If only incoming traffic records exist, the open port determination unit 12 makes a determination according to rule 2-1 below. However, the conditional expression in parentheses is optional and does not have to be used.

(ルール2-1)
 Incoming方向のフロー数が閾値T8以上存在し、Incoming方向のDstPortがTPであるフローのTCPFlagにSYN及びTCPの両方があり、ポート番号TPの割合が閾値T9以上である。
 条件式:Incoming_flow_count>閾値T10 AND Incoming_DstPort_TP_TCPFlag_SYN AND Incoming_DstPort_TP_TCPFlag_ACK AND Incoming_DstPort_TP_rate>閾値T11 (AND Outgoing_flow_count=0)
(Rule 2-1)
The number of incoming flows is equal to or greater than the threshold T8, the TCPFlag of the incoming flow whose Destination Port is TP includes both SYN and TCP, and the proportion of the port number TP is equal to or greater than the threshold T9.
Conditional expression: Incoming_flow_count>Threshold T10 AND Incoming_DstPort_TP_TCPFlag_SYN AND Incoming_DstPort_TP_TCPFlag_ACK AND Incoming_DstPort_TP_rate>Threshold T11 (AND Outgoing_flow_count=0)

 Outgoing方向のトラフィックレコードのみが存在する場合、オープンポート判定部12は、下記のルール3-1により判定を行う。ただし、かっこ内の条件式はオプションであり、使用されなくてもよい。 If only outgoing traffic records exist, the open port determination unit 12 makes a determination according to rule 3-1 below. However, the conditional expression in parentheses is optional and does not have to be used.

(ルール3-1)
 Outgoing方向のフロー数が閾値T12以上存在し、Outgoing方向のSrcPortがTPであるフローのTCPFlagにSYN及びACKの両方があり、ポート番号TPの割合が閾値T13以上である。
 条件式:Outgoing_flow_count>T12 AND Outgoing_SrcPort_TP_TCPFlag_SYN AND Outgoing_SrcPort_TP_TCPFlag_ACK AND Outgoing_SrcPort_TP_rate>T13 (AND Incoming_flow_count=0)
(Rule 3-1)
The number of outgoing flows is equal to or greater than the threshold T12, the TCPFlag of a flow whose outgoing SrcPort is TP includes both SYN and ACK, and the proportion of port number TP is equal to or greater than the threshold T13.
Conditional expression: Outgoing_flow_count>T12 AND Outgoing_SrcPort_TP_TCPFlag_SYN AND Outgoing_SrcPort_TP_TCPFlag_ACK AND Outgoing_SrcPort_TP_rate>T13 (AND Incoming_flow_count=0)

 ルール2-1及びルール3-1は、非対称ルーティングが存在する場合、又は観測点の状況により、Incoming方向及び Outgoing方向の両方のトラフィックデータを収集できない場合に有効である。 Rules 2-1 and 3-1 are effective when asymmetric routing exists or when the conditions at the observation point make it impossible to collect traffic data for both the incoming and outgoing directions.

 このように、オープンポート判定部12は、機器のIPアドレスから送信される方向のトラフィック、及び機器のIPアドレスに対して送信される方向のトラフィックのいずれかのみが存在する場合であっても、オープンポートの判定を行うことができる。 In this way, the open port determination unit 12 can determine whether a port is open even if there is only traffic sent from the device's IP address or traffic sent to the device's IP address.

 オープンポート判定部12は、機器にオープンポートが存在すると判定した場合、オープンポートと判定したポートに対して実際にスキャンパケットを送信し、当該ポートがオープンポートであるか否かを判定してもよい。これにより、オープンポート判定部12は、さらに確実にオープンポートの判定を行うことができる。 When the open port determination unit 12 determines that an open port exists in a device, it may actually send a scan packet to the port determined to be an open port and determine whether or not the port is an open port. This allows the open port determination unit 12 to more reliably determine whether or not a port is an open port.

 なお、全てのポートに対して実際にスキャンを行い、オープンポートであるか否かを判定する方法は、多大なリソース(処理時間等)を要する。オープンポート判定部12は、ルールベースの判定と実際のスキャンによる判定とを組み合わせることで、限られたリソースで精度の高い判定を行うことができる。 Note that a method of actually scanning all ports to determine whether they are open ports requires a large amount of resources (processing time, etc.). By combining rule-based determination and determination by actual scanning, the open port determination unit 12 can make highly accurate determinations using limited resources.

[機器状態判定]
 機器状態判定部13は、機器に対して送信される方向のトラフィックであって、オープンポートへのアクセスによって生じるトラフィックの特徴を基に、機器に対して攻撃が行われているか否かを判定する。
[Device status determination]
The device state determination unit 13 determines whether an attack is being carried out on the device based on the characteristics of traffic that is sent to the device and is generated by accessing an open port.

 機器状態判定部13は、以下のルール4-1から4-2により、対象の機器が攻撃されているか否かを判定する。 The device status determination unit 13 determines whether the target device is under attack according to the following rules 4-1 and 4-2.

(ルール4-1)
 Incoming方向のトラフィックのオープンポートに対するbpsが閾値T31以上である場合、機器状態判定部13は、長期間にわたり執拗なスキャンが実施されているとみなし、脆弱性攻撃又はブルートフォース攻撃といった攻撃が行われていると判定する。
 条件式:Incoming_DstPort_OP_bps>閾値T31
(Rule 4-1)
If the bps of incoming traffic to an open port is equal to or greater than the threshold T31, the device status determination unit 13 assumes that persistent scanning has been carried out for a long period of time and determines that an attack such as a vulnerability attack or a brute force attack is occurring.
Conditional expression: Incoming_DstPort_OP_bps > Threshold T31

(ルール4-2)
 Incoming方向の短期間のトラフィック量が閾値T31以上である場合、機器状態判定部13は、機器がDDoS攻撃の対象になっていると判定する。なお、機器状態判定部13は、例えばOutgoing方向のトラフィック割合が閾値T32以上という条件を追加し、Incoming方向のトラフィック量が、Outgoing方向のトラフィック割合に対して相対的に多い場合にDDoS攻撃の対象になっていると判定してもよい。
 条件式:Incoming_DstPort_OP_bps>T31 (AND Incoming_Outgoing_byte_rate>T32)
(Rule 4-2)
If the incoming traffic volume for a short period of time is equal to or greater than the threshold T31, the device status determination unit 13 determines that the device is the target of a DDoS attack. Note that the device status determination unit 13 may add a condition that the outgoing traffic ratio is equal to or greater than the threshold T32, for example, and determine that the device is the target of a DDoS attack if the incoming traffic volume is relatively large compared to the outgoing traffic ratio.
Conditional expression: Incoming_DstPort_OP_bps>T31 (AND Incoming_Outgoing_byte_rate>T32)

 Outgoing方向の短期間のトラフィック量が閾値T33以上である場合、機器状態判定部13は、機器がDDoS攻撃の踏み台になっていると判定する。なお、機器状態判定部13は、例えばIncoming方向のトラフィック割合が閾値T34以上という条件を追加し、Outgoing方向のトラフィック量が、Incoming方向のトラフィック割合に対して相対的に多い場合にDDoS攻撃の踏み台になっていると判定してもよい。
 条件式:Outgoing_SrcPort_OP_bps>T33 (AND Outgoing_Incoming_byte_rate>T34)
If the short-term traffic volume in the outgoing direction is equal to or greater than the threshold T33, the device status determination unit 13 determines that the device is a springboard for a DDoS attack. Note that the device status determination unit 13 may add a condition that the traffic ratio in the incoming direction is equal to or greater than the threshold T34, for example, and determine that the device is a springboard for a DDoS attack if the traffic volume in the outgoing direction is relatively large compared to the traffic ratio in the incoming direction.
Conditional expression: Outgoing_SrcPort_OP_bps>T33 (AND Outgoing_Incoming_byte_rate>T34)

[感染判定]
 感染判定部14は、機器に対して攻撃が行われていると判定した場合、機器がマルウェアに感染しているか否かを判定する。
[Infection determination]
When it is determined that an attack is being performed on the device, the infection determination unit 14 determines whether or not the device is infected with malware.

 感染判定部14は、サンプリングされたトラフィックの中に、機器のIPアドレスを送信元とし、あらかじめ指定されたブロックのIPアドレス(例えば、悪性であることが疑われる不審サーバ等のIPアドレス)を宛先とするトラフィックが存在する場合、機器がマルウェアに感染していると判定する。 If the sampled traffic contains traffic that originates from the IP address of the device and is destined for an IP address in a pre-specified block (e.g., the IP address of a suspicious server suspected of being malicious), the infection determination unit 14 determines that the device is infected with malware.

 ここで、機器が悪性のIPアドレスとの間で通信を行っている場合であっても、機器がマルウェアに感染しているとは限らない。例えば、機器は、悪性のIPアドレスからのスキャン、脆弱性攻撃、DDoS攻撃を受けているにとどまり、感染していない場合がある。 Even if a device is communicating with a malicious IP address, this does not necessarily mean that the device is infected with malware. For example, a device may only be subject to scans, vulnerability attacks, or DDoS attacks from a malicious IP address, and may not be infected.

 感染判定部14は、以下のルール5-1から5-4によるルールベースの判定により、悪性のIPアドレスからのコールバックに着目し、機器がマルウェアに感染しているか否かを判定することができる。 The infection determination unit 14 can determine whether or not a device is infected with malware by focusing on callbacks from malicious IP addresses using rule-based determination based on the following rules 5-1 to 5-4.

(ルール5-1)
 悪性IPアドレスであるMA向け(Outgoing方向)に、TCPFlag=SYNのトラフィックデータが存在する場合、感染判定部14は、機器が感染していると判定する。また、感染判定部14は、機器のIPアドレスがスキャナ動作をしていないという条件(Outgoing方向のTCPFlag=SYNの割合が閾値T41未満)を追加してもよい。
 条件式:Outgoing_DstIP_MA_TCPFlag_SYN (AND Outgoing_TCP_Flag_SYN_rate<T41)
(Rule 5-1)
If traffic data with TCPFlag=SYN is present in the direction of MA, which is a malicious IP address (outgoing direction), the infection determination unit 14 determines that the device is infected. The infection determination unit 14 may also add a condition that the IP address of the device is not operating as a scanner (the ratio of TCPFlag=SYN in the outgoing direction is less than a threshold T41).
Conditional expression: Outgoing_DstIP_MA_TCPFlag_SYN (AND Outgoing_TCP_Flag_SYN_rate<T41)

(ルール5-2)
 悪性IPアドレスMAからの(Incoming方向)、TCPFlag=SYN又はACKのトラフィックデータが存在する場合、感染判定部14は、機器が感染していると判定する。また、感染判定部14は、悪性IPアドレスがSYN/ACKスキャン動作をしていないという条件(Outgoing方向の悪性IPアドレス宛てのTCPFlagが存在する割合が閾値T42未満)を追加してもよい。
 条件式:Incoming_SrcIP_MA_TCPFlag_SYNACK (AND Outgoing_SrcIP_MA_TCPFlag_rate<T42)
(Rule 5-2)
If traffic data with TCPFlag=SYN or ACK from the malicious IP address MA (incoming direction) exists, the infection determination unit 14 determines that the device is infected. The infection determination unit 14 may also add a condition that the malicious IP address is not performing a SYN/ACK scan (the proportion of TCPFlags destined for the malicious IP address in the outgoing direction that exist is less than the threshold T42).
Conditional expression: Incoming_SrcIP_MA_TCPFlag_SYNACK (AND Outgoing_SrcIP_MA_TCPFlag_rate<T42)

(ルール5-3)
 機器のIPアドレスTA、及び悪性IPアドレスMAの双方でTCPFlag=ACKであるトラフィックレコードの数が閾値(T43、T44)より多い場合、感染判定部14は、機器が感染していると判定する。
 条件式:Outgoing_DstIP_MA_TCPFlag_ACK_flow_num>T43 AND Incoming_SrcIP_MA_TCPFlag_ACK_flow_num>T44
(Rule 5-3)
If the number of traffic records with TCPFlag=ACK for both the device's IP address TA and the malicious IP address MA is greater than the thresholds (T43, T44), the infection determining unit 14 determines that the device is infected.
Conditional expression: Outgoing_DstIP_MA_TCPFlag_ACK_flow_num>T43 AND Incoming_SrcIP_MA_TCPFlag_ACK_flow_num>T44

(ルール5-4)
 機器のIPアドレスTA及び悪性IPアドレスMAの間での通信量が閾値(T45、T46)より大きい場合、感染判定部14は、機器が感染していると判定する。これは、接続試行だけでなく、実際のデータの送受信が発生したと考えられるためである。
 条件式:Outgoing_DstIP_MA_Bytes> T45 OR Incoming_SrcIP_MA_Bytes>T46
(Rule 5-4)
If the amount of communication between the device's IP address TA and the malicious IP address MA is greater than the thresholds (T45, T46), the infection determination unit 14 determines that the device is infected. This is because it is considered that actual data transmission and reception has occurred, not just a connection attempt.
Condition: Outgoing_DstIP_MA_Bytes>T45 OR Incoming_SrcIP_MA_Bytes>T46

 図6を用いて、監視装置10の処理の流れを説明する。図6は、第1の実施形態に係る監視装置の処理の流れを示すフローチャートである。 The processing flow of the monitoring device 10 will be explained using FIG. 6. FIG. 6 is a flowchart showing the processing flow of the monitoring device according to the first embodiment.

 図6に示すように、まず、監視装置10は、サンプリングされたトラフィックデータの特徴を生成する(ステップS101)。 As shown in FIG. 6, first, the monitoring device 10 generates characteristics of the sampled traffic data (step S101).

 次に、監視装置10は、特徴を基に、対象機器にオープンポートが存在するか否かを判定する(ステップS102)。 Next, the monitoring device 10 determines whether or not the target device has an open port based on the characteristics (step S102).

 オープンポートが存在しない場合(ステップS103、No)、監視装置10は判定の結果を出力する(ステップS107)。この場合、監視装置10は、オープンポートが存在しないことを通知するための情報を出力する。 If no open port exists (step S103, No), the monitoring device 10 outputs the result of the determination (step S107). In this case, the monitoring device 10 outputs information to notify that no open port exists.

 オープンポートが存在する場合(ステップS103、Yes)、監視装置10は、特徴を基に、対象機器が攻撃を受けているか否かを判定する(ステップS104)。 If an open port exists (step S103, Yes), the monitoring device 10 determines whether the target device is under attack based on the characteristics (step S104).

 監視装置10は、対象機器が攻撃を受けていないと判定した場合(ステップS105、No)、判定の結果を出力する(ステップS107)。この場合、監視装置10は、オープンポートは存在するものの、攻撃は受けていないことを通知するための情報を出力する。 If the monitoring device 10 determines that the target device is not under attack (step S105, No), it outputs the result of the determination (step S107). In this case, the monitoring device 10 outputs information to notify that the target device is not under attack, even though an open port exists.

 監視装置10は、対象機器が攻撃を受けていると判定した場合(ステップS105、Yes)、特徴を基に、対象機器がマルウェアに感染しているか否かを判定する(ステップS106)。そして、監視装置10は、各判定の結果を出力する(ステップS107)。 If the monitoring device 10 determines that the target device is under attack (step S105, Yes), it determines whether the target device is infected with malware based on the characteristics (step S106). Then, the monitoring device 10 outputs the results of each determination (step S107).

[第1の実施形態の効果]
 これまで説明してきたように、監視装置10は、特徴生成部11、オープンポート判定部12、機器状態判定部13及び感染判定部14を有する。特徴生成部11は、サンプリングされたトラフィックであって、機器から送信される方向のトラフィック、及び機器に対して送信される方向のトラフィックの少なくともいずれかを基に、機器の特徴を生成する。オープンポート判定部12は、特徴を基に、機器のオープンポートが存在するか否かを判定する。機器状態判定部13及び感染判定部14は、機器にオープンポートが存在する場合、特徴を基に、機器の異常に関する状態を判定する。
[Effects of the First Embodiment]
As described above, the monitoring device 10 has a feature generation unit 11, an open port determination unit 12, an equipment status determination unit 13, and an infection determination unit 14. The feature generation unit 11 generates equipment features based on sampled traffic, which is at least one of traffic sent from the equipment and traffic sent to the equipment. The open port determination unit 12 determines whether or not the equipment has an open port based on the features. If the equipment has an open port, the equipment status determination unit 13 and the infection determination unit 14 determine the abnormality status of the equipment based on the features.

 このように、監視装置10は、トラフィックの特徴からオープンポートを判定する。これにより、監視装置10は、サンプリングにより得られた限られたトラフィックの情報から、オープンポートの存在が疑われる機器についてさらに詳細な異常の判定を行うことができる。その結果、監視装置10は、サンプリングされたトラフィックを用いた機器の監視を効果的に行うことができる。 In this way, the monitoring device 10 determines open ports from the characteristics of the traffic. This allows the monitoring device 10 to perform more detailed abnormality determinations for devices suspected of having open ports from the limited traffic information obtained by sampling. As a result, the monitoring device 10 can effectively monitor devices using the sampled traffic.

 オープンポート判定部12は、サンプリングされたトラフィックの中に、機器のIPアドレスからのTCPプロトコルに従った応答のトラフィックがない場合、機器のIPアドレスを送信元又は送信先とするTCPプロトコル以外のプロトコルのトラフィックが存在する場合、又は機器のIPアドレスから送信される方向のトラフィック、及び機器のIPアドレスに対して送信される方向のトラフィックのいずれかのみが存在する場合に、機器のオープンポートが存在するか否かを判定する。 The open port determination unit 12 determines whether or not an open port exists on the device when the sampled traffic does not contain any response traffic conforming to the TCP protocol from the device's IP address, when there is traffic of a protocol other than the TCP protocol with the device's IP address as the source or destination, or when there is only traffic sent from the device's IP address or traffic sent to the device's IP address.

 これにより、監視装置10は、TCPプロトコルのトラフィックが十分に得られない場合、又はOutgoing方向又はIncoming方向のトラフィックのうちいずれかしか得られない場合であっても、オープンポートの判定を行うことができる。 As a result, the monitoring device 10 can determine whether a port is open even when there is insufficient TCP protocol traffic, or when only outgoing or incoming traffic is available.

 機器状態判定部13は、機器に対して送信される方向のトラフィックであって、オープンポートへのアクセスによって生じるトラフィックの特徴を基に、機器に対して攻撃が行われているか否かを判定する。 The device status determination unit 13 determines whether an attack is being carried out on the device based on the characteristics of traffic sent to the device and generated by accessing an open port.

 このように、監視装置10は、先のオープンポートの存在を判定し、オープンポートの存在が疑われる機器について攻撃の判定を行うことで、処理を効率化することができる。 In this way, the monitoring device 10 can improve the efficiency of processing by determining the presence of a previous open port and determining whether an attack has occurred on a device suspected of having an open port.

 感染判定部14は、機器に対して攻撃が行われていると判定した場合、機器がマルウェアに感染しているか否かを判定する。例えば、感染判定部14は、サンプリングされたトラフィックの中に、機器のIPアドレスを送信元とし、あらかじめ指定されたブロックのIPアドレスを宛先とするトラフィックが存在する場合、機器がマルウェアに感染していると判定する。 If the infection determination unit 14 determines that an attack is being made on the device, it determines whether the device is infected with malware. For example, if the sampled traffic contains traffic whose source is the IP address of the device and whose destination is an IP address in a pre-specified block, the infection determination unit 14 determines that the device is infected with malware.

 このように、監視装置10は、先の攻撃が行われているか否かを判定した上で感染の判定を行うことで、処理を効率化することができる。 In this way, the monitoring device 10 can make processing more efficient by determining whether a previous attack has occurred before determining whether an infection has occurred.

[第2の実施形態]
 第1の実施形態では、監視装置10は、ルールベースの方法によりオープンポートの存在及び機器が攻撃を受けているか否かを判定していた。一方、第2の実施形態では、監視装置10は、機械学習の手法を用いて、オープンポートの存在及び機器が攻撃を受けているか否かを判定する。
Second Embodiment
In the first embodiment, the monitoring device 10 determines the presence of an open port and whether or not the device is under attack by a rule-based method, whereas in the second embodiment, the monitoring device 10 determines the presence of an open port and whether or not the device is under attack by using a machine learning technique.

 図7は、第2の実施形態に係るオープンポート判定部の構成例を示す図である。図7に示すように、オープンポート判定部12は、学習部121、検知モデル情報122、検知部123及び抽出部124を有する。 FIG. 7 is a diagram showing an example of the configuration of an open port determination unit according to the second embodiment. As shown in FIG. 7, the open port determination unit 12 has a learning unit 121, detection model information 122, a detection unit 123, and an extraction unit 124.

 検知モデル情報122は、アノマリー検知を行うための機械学習モデルである検知モデルを構築するための情報である。ここで、検知モデルは、例えば1class SVM、isolation forest等である。検知モデル情報122は、検知モデルを構築するためのパラメータである。 The detection model information 122 is information for constructing a detection model, which is a machine learning model for detecting anomalies. Here, the detection model is, for example, one-class SVM, isolation forest, etc. The detection model information 122 is parameters for constructing the detection model.

 学習部121は、オープンポートが存在することが既知の機器の特徴、又はオープンポートが存在しないことが既知の機器の特徴を用いて、検知モデルの学習を行う。学習部121は、学習により検知モデル情報122を更新する。 The learning unit 121 learns the detection model using the characteristics of a device that is known to have an open port, or the characteristics of a device that is known to not have an open port. The learning unit 121 updates the detection model information 122 through learning.

 検知部123は、オープンポートが存在するか否かが未知の機器のトラフィックの特徴を、検知モデル情報122を基に構築した検知モデルに入力し、アノマリー検知の結果を得る。アノマリー検知の結果は、オープンポートが存在するか否かである。 The detection unit 123 inputs the traffic characteristics of a device, for which it is unknown whether or not an open port exists, into a detection model constructed based on the detection model information 122, and obtains the result of anomaly detection. The result of anomaly detection is whether or not an open port exists.

 抽出部124は、検知モデルによってオープンポートが存在することが検知された場合、検知に寄与した特徴から、ポート番号を抽出する。例えば、検知モデルは、特徴生成部11によって生成された特徴を説明変数として用いる。このとき、抽出部124は、Outgoing方向の送信元ポート番号に関する特徴(例えば、変数名に「Outgoing_SrcPort」が含まれる特徴)のうち、最も寄与率が大きい特徴を特定する。そして、抽出部124は、当該特徴を基にポート番号を抽出する。 When the detection model detects the presence of an open port, the extraction unit 124 extracts the port number from the features that contributed to the detection. For example, the detection model uses the features generated by the feature generation unit 11 as explanatory variables. At this time, the extraction unit 124 identifies the feature with the highest contribution rate among the features related to the source port number in the outgoing direction (for example, features whose variable name includes "Outgoing_SrcPort"). The extraction unit 124 then extracts the port number based on that feature.

 例えば、抽出部124は、Outgoing_SrcPort_TP_TCPFlag_SYNACKという特徴を特定した場合、この特徴に関する条件を満たすポート番号を抽出する。この場合、抽出部124は、Outgoing方向のトラフィックレコードであって、TCPFlagがSYN又はACKであるトラフィックレコードの送信元ポートを抽出する。 For example, if the extraction unit 124 identifies the feature Outgoing_SrcPort_TP_TCPFlag_SYNACK, it extracts port numbers that satisfy the conditions related to this feature. In this case, the extraction unit 124 extracts source ports of traffic records in the outgoing direction where the TCPFlag is SYN or ACK.

 図8は、第2の実施形態に係る機器状態判定部の構成例を示す図である。図8に示すように、機器状態判定部13は、学習部131、判定モデル情報132及び判定部133を有する。 FIG. 8 is a diagram showing an example of the configuration of the device state determination unit according to the second embodiment. As shown in FIG. 8, the device state determination unit 13 has a learning unit 131, determination model information 132, and a determination unit 133.

 判定モデル情報132は、判定を行うための機械学習モデルである判定モデルを構築するための情報である。ここで、判定モデルは、成功又は失敗の2パターンの判定を行うものであるため、アノマリー検知を行う検知モデルと同様のモデル(例えば1class SVM、isolation forest等)であってもよい。判定モデル情報132は、判定モデルを構築するためのパラメータである。 The judgment model information 132 is information for constructing a judgment model, which is a machine learning model for making judgments. Here, the judgment model makes two patterns of judgment, success or failure, so it may be a model similar to a detection model that detects anomalies (e.g., one-class SVM, isolation forest, etc.). The judgment model information 132 is parameters for constructing the judgment model.

 学習部131は、ハニーポットに対するログインが可能であったとき(脆弱性攻撃が成功したとき)のトラフィックデータと、ハニーポットに対するログインが不可能であったとき(脆弱性攻撃が失敗したとき)のトラフィックデータと、を用いて、判定モデルの学習を行う。学習部131は、学習により判定モデル情報132を更新する。 The learning unit 131 learns the judgment model using traffic data when it was possible to log in to the honeypot (when the vulnerability attack was successful) and traffic data when it was impossible to log in to the honeypot (when the vulnerability attack failed). The learning unit 131 updates the judgment model information 132 through learning.

 判定部133は、攻撃を受けているか否か、又は受けた攻撃が成功したか失敗したかが未知の機器のトラフィックの特徴を、判定モデル情報132を基に構築した判定モデルに入力し、判定結果を得る。判定結果は、機器が攻撃を受けているか否かである。 The determination unit 133 inputs the characteristics of the traffic of a device, for which it is unknown whether it is under attack or not, or whether the attack has been successful or unsuccessful, into a determination model constructed based on the determination model information 132, and obtains a determination result. The determination result is whether or not the device is under attack.

 このように、機器状態判定部13は、ハニーポットに対する攻撃が成功したトラフィックの特徴と、ハニーポットに対する攻撃が失敗したトラフィックの特徴と、を学習した機械学習モデルを用いて、サンプリングされたトラフィックが機器に対する攻撃を成功させたか否かを判定することができる。 In this way, the device status determination unit 13 can determine whether the sampled traffic was a successful attack on a device by using a machine learning model that has learned the characteristics of traffic that resulted in successful attacks on a honeypot and the characteristics of traffic that resulted in unsuccessful attacks on a honeypot.

[システム構成等]
 また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU(Central Processing Unit)及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。なお、プログラムは、CPUだけでなく、GPU等の他のプロセッサによって実行されてもよい。
[System configuration, etc.]
In addition, each component of each device shown in the figure is functionally conceptual, and does not necessarily have to be physically configured as shown in the figure. In other words, the specific form of distribution and integration of each device is not limited to that shown in the figure, and all or a part of it can be functionally or physically distributed or integrated in any unit depending on various loads, usage conditions, etc. Furthermore, each processing function performed by each device can be realized in whole or in part by a CPU (Central Processing Unit) and a program analyzed and executed by the CPU, or can be realized as hardware by wired logic. Note that the program may be executed not only by the CPU but also by other processors such as a GPU.

 また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。 Furthermore, among the processes described in this embodiment, all or part of the processes described as being performed automatically can be performed manually, or all or part of the processes described as being performed manually can be performed automatically using known methods. In addition, the information including the processing procedures, control procedures, specific names, various data and parameters shown in the above documents and drawings can be changed as desired unless otherwise specified.

[プログラム]
 一実施形態として、監視装置10は、パッケージソフトウェアやオンラインソフトウェアとして上記の収集処理を実行する監視プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の監視プログラムを情報処理装置に実行させることにより、情報処理装置を監視装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
[program]
In one embodiment, the monitoring device 10 can be implemented by installing a monitoring program that executes the above-mentioned collection process as package software or online software on a desired computer. For example, the above-mentioned monitoring program can be executed by an information processing device, causing the information processing device to function as the monitoring device 10. The information processing device here includes desktop or notebook personal computers. In addition, the information processing device also includes mobile communication terminals such as smartphones, mobile phones, and PHS (Personal Handyphone Systems), as well as slate terminals such as PDAs (Personal Digital Assistants).

 また、監視装置10は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記のスキャン処理に関するサービスを提供するスキャンサーバ装置として実装することもできる。例えば、スキャンサーバ装置は、シード情報及びIPv4統計情報を入力とし、スキャン結果を出力とするスキャンサービスを提供するサーバ装置として実装される。この場合、スキャンサーバ装置は、Webサーバとして実装することとしてもよいし、アウトソーシングによって上記のスキャン処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。 The monitoring device 10 can also be implemented as a scan server device that treats a terminal device used by a user as a client and provides services related to the above-mentioned scan processing to the client. For example, the scan server device is implemented as a server device that provides a scan service that takes seed information and IPv4 statistical information as input and outputs scan results. In this case, the scan server device may be implemented as a web server, or as a cloud that provides services related to the above-mentioned scan processing through outsourcing.

 図9は、監視プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。 FIG. 9 is a diagram showing an example of a computer that executes a monitoring program. The computer 1000 has, for example, a memory 1010 and a CPU 1020. The computer 1000 also has a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. Each of these components is connected by a bus 1080.

 メモリ1010は、ROM(Read Only Memory)1011及びRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。 The memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM (Random Access Memory) 1012. The ROM 1011 stores a boot program such as a BIOS (Basic Input Output System). The hard disk drive interface 1030 is connected to a hard disk drive 1090. The disk drive interface 1040 is connected to a disk drive 1100. A removable storage medium such as a magnetic disk or optical disk is inserted into the disk drive 1100. The serial port interface 1050 is connected to a mouse 1110 and a keyboard 1120, for example. The video adapter 1060 is connected to a display 1130, for example.

 ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、監視装置10の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、監視装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。 The hard disk drive 1090 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094. That is, the programs that define each process of the monitoring device 10 are implemented as program modules 1093 in which computer-executable code is written. The program modules 1093 are stored, for example, in the hard disk drive 1090. For example, a program module 1093 for executing processes similar to the functional configuration of the monitoring device 10 is stored in the hard disk drive 1090. The hard disk drive 1090 may be replaced by an SSD (Solid State Drive).

 また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020は、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した実施形態の処理を実行する。 Furthermore, the setting data used in the processing of the above-mentioned embodiment is stored as program data 1094, for example, in memory 1010 or hard disk drive 1090. Then, the CPU 1020 reads out the program module 1093 or program data 1094 stored in memory 1010 or hard disk drive 1090 into RAM 1012 as necessary, and executes the processing of the above-mentioned embodiment.

 なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。 The program module 1093 and program data 1094 are not limited to being stored in the hard disk drive 1090, but may be stored in, for example, a removable storage medium and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program module 1093 and program data 1094 may be stored in another computer connected via a network (such as a LAN (Local Area Network), WAN (Wide Area Network)). The program module 1093 and program data 1094 may then be read by the CPU 1020 from the other computer via the network interface 1070.

 N ネットワーク
 1 ネットワークシステム
 10 監視装置
 11 特徴生成部
 12 オープンポート判定部
 13 機器状態判定部
 14 感染判定部
 15 表示部
 16 ルールDB
 121、131 学習部
 122 検知モデル情報
 123 検知部
 124 抽出部
 132 判定モデル情報
 133 判定部
N network 1 network system 10 monitoring device 11 feature generation unit 12 open port determination unit 13 device state determination unit 14 infection determination unit 15 display unit 16 rule DB
121, 131 Learning unit 122 Detection model information 123 Detection unit 124 Extraction unit 132 Judgment model information 133 Judgment unit

Claims (8)

 サンプリングされたトラフィックであって、機器から送信される方向のトラフィック、及び前記機器に対して送信される方向のトラフィックの少なくともいずれかを基に、前記機器の特徴を生成する特徴生成部と、
 前記特徴を基に、前記機器のオープンポートが存在するか否かを判定するオープンポート判定部と、
 前記機器にオープンポートが存在する場合、前記特徴を基に、前記機器の異常に関する状態を判定する異常判定部と、
 を有することを特徴とする監視装置。
a feature generation unit that generates a feature of the device based on at least one of sampled traffic, the sampled traffic being in a direction from the device and a direction to the device;
an open port determination unit that determines whether or not an open port exists in the device based on the characteristics;
an anomaly determination unit that determines an anomaly state of the device based on the characteristics when an open port exists in the device;
A monitoring device comprising:
 前記オープンポート判定部は、前記サンプリングされたトラフィックの中に、前記機器のIPアドレスからのTCPプロトコルに従った応答のトラフィックがない場合、前記機器のIPアドレスを送信元又は送信先とするTCPプロトコル以外のプロトコルのトラフィックが存在する場合、又は前記機器のIPアドレスから送信される方向のトラフィック、及び前記機器のIPアドレスに対して送信される方向のトラフィックのいずれかのみが存在する場合に、前記機器のオープンポートが存在するか否かを判定する
 ことを特徴とする請求項1に記載の監視装置。
The monitoring device described in claim 1, characterized in that the open port determination unit determines whether or not an open port exists on the device when the sampled traffic does not contain any response traffic according to the TCP protocol from the IP address of the device, when there is traffic of a protocol other than the TCP protocol with the IP address of the device as the source or destination, or when there is only traffic sent from the IP address of the device or traffic sent to the IP address of the device.
 前記異常判定部は、前記機器に対して送信される方向のトラフィックであって、前記オープンポートへのアクセスによって生じるトラフィックの特徴を基に、前記機器に対して攻撃が行われているか否かを判定する
 ことを特徴とする請求項1に記載の監視装置。
The monitoring device according to claim 1, characterized in that the abnormality determination unit determines whether an attack is being made against the device based on characteristics of traffic that is sent to the device and is generated by accessing the open port.
 前記異常判定部は、前記機器に対して攻撃が行われていると判定した場合、前記機器がマルウェアに感染しているか否かを判定する
 ことを特徴とする請求項3に記載の監視装置。
The monitoring device according to claim 3 , wherein the abnormality determination unit, when determining that an attack is being performed on the device, determines whether or not the device is infected with malware.
 前記異常判定部は、前記サンプリングされたトラフィックの中に、前記機器のIPアドレスを送信元とし、あらかじめ指定されたブロックのIPアドレスを宛先とするトラフィックが存在する場合、前記機器がマルウェアに感染していると判定する
 ことを特徴とする請求項4に記載の監視装置。
The monitoring device according to claim 4, characterized in that the abnormality determination unit determines that the device is infected with malware when the sampled traffic contains traffic whose source is the IP address of the device and whose destination is an IP address in a pre-specified block.
 前記異常判定部は、ハニーポットに対する攻撃が成功したトラフィックの特徴と、ハニーポットに対する攻撃が失敗したトラフィックの特徴と、を学習した機械学習モデルを用いて、前記サンプリングされたトラフィックが前記機器に対する攻撃を成功させたか否かを判定する
 ことを特徴とする請求項1に記載の監視装置。
The monitoring device according to claim 1, characterized in that the anomaly determination unit determines whether the sampled traffic has successfully attacked the device using a machine learning model that has learned the characteristics of traffic that has resulted in successful attacks on a honeypot and the characteristics of traffic that has resulted in unsuccessful attacks on a honeypot.
 監視装置によって実行される監視方法であって、
 サンプリングされたトラフィックであって、機器から送信される方向のトラフィック、及び前記機器に対して送信される方向のトラフィックの少なくともいずれかを基に、前記機器の特徴を生成する特徴生成工程と、
 前記特徴を基に、前記機器のオープンポートが存在するか否かを判定するオープンポート判定工程と、
 前記機器にオープンポートが存在する場合、前記特徴を基に、前記機器の異常に関する状態を判定する異常判定工程と、
 を含むことを特徴とする監視方法。
A monitoring method performed by a monitoring device, comprising:
a feature generation step of generating a feature of the device based on at least one of the sampled traffic, the sampled traffic being in a direction away from the device and in a direction towards the device;
an open port determination step of determining whether or not an open port exists in the device based on the characteristics;
an anomaly determination step of determining an anomaly state of the device based on the characteristics when an open port exists in the device;
A monitoring method comprising:
 サンプリングされたトラフィックであって、機器から送信される方向のトラフィック、及び前記機器に対して送信される方向のトラフィックの少なくともいずれかを基に、前記機器の特徴を生成する特徴生成ステップと、
 前記特徴を基に、前記機器のオープンポートが存在するか否かを判定するオープンポート判定ステップと、
 前記機器にオープンポートが存在する場合、前記特徴を基に、前記機器の異常に関する状態を判定する異常判定ステップと、
 をコンピュータに実行させることを特徴とする監視プログラム。
a feature generation step of generating a feature of the device based on at least one of the sampled traffic, the sampled traffic being in a direction away from the device and/or in a direction towards the device;
an open port determination step of determining whether or not an open port exists in the device based on the characteristics;
an anomaly determination step of determining an anomaly state of the device based on the characteristics if an open port exists in the device;
A monitoring program that causes a computer to execute the above.
PCT/JP2023/014144 2023-04-05 2023-04-05 Monitoring device, monitoring method, and monitoring program WO2024209608A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2023/014144 WO2024209608A1 (en) 2023-04-05 2023-04-05 Monitoring device, monitoring method, and monitoring program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2023/014144 WO2024209608A1 (en) 2023-04-05 2023-04-05 Monitoring device, monitoring method, and monitoring program

Publications (1)

Publication Number Publication Date
WO2024209608A1 true WO2024209608A1 (en) 2024-10-10

Family

ID=92971476

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/014144 WO2024209608A1 (en) 2023-04-05 2023-04-05 Monitoring device, monitoring method, and monitoring program

Country Status (1)

Country Link
WO (1) WO2024209608A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200314119A1 (en) * 2019-04-01 2020-10-01 Microsoft Technology Licensing Llc Real-time detection of malicious activity through collaborative filtering
CN112995152A (en) * 2021-02-07 2021-06-18 深信服科技股份有限公司 Risk port detection method, device, equipment and medium

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200314119A1 (en) * 2019-04-01 2020-10-01 Microsoft Technology Licensing Llc Real-time detection of malicious activity through collaborative filtering
CN112995152A (en) * 2021-02-07 2021-06-18 深信服科技股份有限公司 Risk port detection method, device, equipment and medium

Similar Documents

Publication Publication Date Title
US10673874B2 (en) Method, apparatus, and device for detecting e-mail attack
US11722509B2 (en) Malware detection for proxy server networks
Izhikevich et al. {LZR}: Identifying unexpected internet services
KR101054705B1 (en) Method and apparatus for detecting port scans with counterfeit source addresses
US7853689B2 (en) Multi-stage deep packet inspection for lightweight devices
US9544273B2 (en) Network traffic processing system
US6513122B1 (en) Secure gateway for analyzing textual content to identify a harmful impact on computer systems with known vulnerabilities
US7936682B2 (en) Detecting malicious attacks using network behavior and header analysis
CN102025483B (en) Wireless router and method for preventing malicious scanning by using same
EP3635929B1 (en) Defend against denial of service attack
US10693908B2 (en) Apparatus and method for detecting distributed reflection denial of service attack
US7124181B1 (en) System, method and computer program product for improved efficiency in network assessment utilizing variable timeout values
Lin et al. Mitigating SYN flooding attack and ARP spoofing in SDN data plane
US7269649B1 (en) Protocol layer-level system and method for detecting virus activity
US20230370482A1 (en) Method for identifying successful attack and protection device
JPWO2017217247A1 (en) Malignant event detection apparatus, malignant event detection method, and malignant event detection program
Khosravifar et al. An experience improving intrusion detection systems false alarm ratio by using honeypot
WO2024099078A1 (en) Method for detecting attack traffic, and related device
Tritilanunt et al. Entropy-based input-output traffic mode detection scheme for dos/ddos attacks
WO2024209608A1 (en) Monitoring device, monitoring method, and monitoring program
Krishna et al. Dominance of hardware firewalls and denial of firewall attacks (case study blacknurse attack)
JP2006352864A (en) Equipment for optimizing filters
Hanfy et al. The Dominant Position of Hardware Firewall and Denial of Firewall Attacks
TWI410080B (en) Wireless routers and method for preventing malicious scanning by using the wireless routers
Šimon et al. Home Assistant platform under DDoS attacks for IPv4 and IPv6 networks

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

Country of ref document: EP

Kind code of ref document: A1