JP4538370B2 - Abnormal communication detector - Google Patents

Abnormal communication detector Download PDF

Info

Publication number
JP4538370B2
JP4538370B2 JP2005140589A JP2005140589A JP4538370B2 JP 4538370 B2 JP4538370 B2 JP 4538370B2 JP 2005140589 A JP2005140589 A JP 2005140589A JP 2005140589 A JP2005140589 A JP 2005140589A JP 4538370 B2 JP4538370 B2 JP 4538370B2
Authority
JP
Japan
Prior art keywords
packet
packets
combination
communication
port
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005140589A
Other languages
Japanese (ja)
Other versions
JP2006319693A (en
Inventor
隆史 磯部
義則 渡辺
秀光 樋口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alaxala Networks Corp
Original Assignee
Alaxala Networks Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alaxala Networks Corp filed Critical Alaxala Networks Corp
Priority to JP2005140589A priority Critical patent/JP4538370B2/en
Publication of JP2006319693A publication Critical patent/JP2006319693A/en
Application granted granted Critical
Publication of JP4538370B2 publication Critical patent/JP4538370B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、回線を流れるデータを解析して、異常な振る舞いをする通信を抽出可能な異常通信探知装置に関する。   The present invention relates to an abnormal communication detecting apparatus that can analyze data flowing through a line and extract communication that behaves abnormally.

近年、インターネットに代表されるIP (Internet Protocol) ネットワークのライフライン化や個人情報保護法制定などの動きに伴い、ネットワークセキュリティの重要度が高まってきている。そのため、多くの企業や個人は、自分のネットワーク内に設置されたPCからの情報漏えいや、サーバへの攻撃を防止するため、他のネットワークとのアクセス点に、FW (Firewall)やIDS (Intrusion Detect System)などの異常通信探知装置を設置して、内部の情報資源の防御を行うのが一般的になっている。   In recent years, the importance of network security has increased with the movement of the IP (Internet Protocol) network represented by the Internet and the establishment of the Personal Information Protection Law. For this reason, many companies and individuals use FW (Firewall) and IDS (Intrusion) as access points with other networks in order to prevent information leakage from PCs installed in their networks and attacks on servers. It is common to install an abnormal communication detection device such as Detect System to protect internal information resources.

異常通信探知装置には、大きく分けて、シグネチャ型異常探知装置と、アノマリ型異常探知装置がある。前者は、異常通信や正常通信のパターンを事前に、シグネチャとしてデータベースに保持しておき、回線を流れる通信データと該データベース内容の比較を行うことで、不正行為による異常通信を探知する装置である。後者は、異常通信や正常通信のパターンを事前に、統計的な閾値としてデータベースに保持しておき、回線を流れる通信データと該データベース内容の比較を行うことで、不正行為による異常通信を探知する装置である。両者共、大きく分けて、次の3つの処理を行う。   Anomaly communication detection devices are roughly classified into a signature type anomaly detection device and an anomaly type anomaly detection device. The former is a device that detects abnormal communication due to fraud by holding a pattern of abnormal communication or normal communication in advance in a database as a signature and comparing the communication data flowing through the line with the contents of the database. . In the latter case, abnormal communication and normal communication patterns are stored in advance in the database as statistical thresholds, and abnormal communication due to fraud is detected by comparing communication data flowing through the line with the contents of the database. Device. Both are roughly divided into the following three processes.

初めに、回線を流れるパケットデータを解析して、通信の種別や発送元/宛先等のデータを抽出する。次に、抽出した通信のデータをメモリ等の記憶部に蓄積する。最後に、蓄積した通信のデータ毎に、各種の不正通信や正常通信のデータベースとの比較処理を行ってその通信が正常な通信か、不正行為による異常通信かの判定を行い、不正行為による異常通信を抽出する。   First, packet data flowing through the line is analyzed to extract data such as the type of communication and the origin / destination of the communication. Next, the extracted communication data is stored in a storage unit such as a memory. Finally, for each accumulated communication data, a comparison process with various unauthorized communication and normal communication databases is performed to determine whether the communication is normal communication or abnormal communication due to fraud. Extract communications.

これら3つの処理を行う異常通信探知の一例として、回線を流れるパケットを1つ1つ解析して、全ての通信のデータの抽出および蓄積を行い、蓄積した通信のデータを基に異常通信の探知を行う方式(例えば、特許文献1参照。)などが挙げられる。本方式は、異常通信を高精度に探知することが可能である。しかし、回線を流れるパケットの数が多い場合や、抽出する通信の数が多い場合に、通信データの蓄積を行うメモリの容量不足や、通信データの抽出及びデータベースとの比較処理を行うCPUの能力不足を引き起こす。   As an example of abnormal communication detection that performs these three processes, each packet that flows through the line is analyzed one by one, and all communication data is extracted and stored, and abnormal communication detection is performed based on the accumulated communication data. (For example, refer to Patent Document 1). This method can detect abnormal communication with high accuracy. However, if the number of packets flowing through the line is large or the number of communications to be extracted is large, the capacity of the memory for storing the communication data is insufficient, or the CPU's ability to perform communication data extraction and database comparison processing Cause shortages.

また、通信データの記録にハッシュテーブルを用いて、通信が観測されない場合やハッシュテーブルが一杯になった時に定期的に通信データを削除する方式(例えば、非特許文献1参照。)を用いることもある。本方式は、再ハッシュを行って空き領域を探索する処理や、定期的に不要な通信データを削除する処理を行わねばならず、前期方式同様に、回線を流れるパケットの数が多い場合や、抽出する通信の数が多い場合に、CPUの能力不足を引き起こす。
そのため、メモリ容量不足やCPUの比較処理能力不足を回避する方式が考案されている。
In addition, a method of using a hash table for recording communication data and periodically deleting the communication data when communication is not observed or when the hash table is full (see, for example, Non-Patent Document 1) may be used. is there. In this method, processing to search for free space by performing re-hashing and processing to periodically delete unnecessary communication data must be performed, as in the previous method, when the number of packets flowing through the line is large, When the number of communications to be extracted is large, CPU capacity is insufficient.
For this reason, a method has been devised to avoid a shortage of memory capacity and a lack of CPU comparison processing capability.

例えば、検査対象をユーザやコンピュータといった単位で予め限定して、該検査対象の通信量などの情報を記憶部に保持しておき、輻輳発生時に前記通信量が多い検査対象の通信に対して帯域制限を行う方式(例えば、特許文献2参照。)などが開示されている。検査対象をネットワーク単位で予め限定して、異常通信の探知を行う方式(例えば、特許文献3参照。)なども開示されている。これらは共に、検査対象を予め限定することで、通信の抽出回数及び蓄積を行う通信のデータ量を削減し、CPUの能力不足やメモリの容量不足を回避している。   For example, the inspection target is limited in advance by a unit such as a user or a computer, and information such as the communication volume of the inspection target is held in the storage unit, and the bandwidth for the communication of the inspection target having a large communication volume when congestion occurs A method of performing restriction (for example, see Patent Document 2) is disclosed. A method (for example, refer to Patent Document 3) in which the inspection target is limited in advance for each network and abnormal communication is detected is also disclosed. In both cases, by limiting the inspection target in advance, the number of communication extractions and the amount of communication data to be stored are reduced, and the lack of CPU capacity and memory capacity are avoided.

また、検査対象とするネットワーク内に存在するサーバの種類に応じて、探知しようとする異常通信の種類を限定し、比較対象とするデータベース内容をあらかじめ絞り込んでおくことで、CPUの比較処理量を削減する方法(例えば、特許文献4参照。)なども開示されている。探知しようとする異常通信の種類を予め限定した方式(例えば、特許文献5参照。)なども開示されている。   Also, by limiting the types of abnormal communications to be detected according to the types of servers that exist in the network to be inspected and narrowing down the database contents to be compared in advance, the CPU comparison processing amount can be reduced. A reduction method (for example, see Patent Document 4) is also disclosed. A method (for example, refer to Patent Document 5) in which the type of abnormal communication to be detected is limited in advance is also disclosed.

特開2002-252654JP2002-252654

特開2001-217842JP2001-217842 特開2004-312064JP2004-312064 特開2003-223375JP2003-223375 特開2005-039591JP2005-039591 Peter Reiher Jelena Mirkovic, Greg Prier, “Attacking DDoS at the source.”, In Proceedings of the IEEE International Conference on Network Protocols10, Paris, France, November 2002.Peter Reiher Jelena Mirkovic, Greg Prier, “Attacking DDoS at the source.”, In Proceedings of the IEEE International Conference on Network Protocols10, Paris, France, November 2002.

従来技術の課題を、インターネットの一例を示した図2を用いて説明する。或る3つの通信事業者が、それぞれネットワーク210,220,230を構築しているとする。ネットワーク210は、ネットワーク220との接続点にルータ211を、ネットワーク230との接続点にルータ212を、企業ユーザのネットワーク240との接続点にルータ213を、個人ユーザのPC 250,260との接続点にルータ214を設置している。企業ユーザは、自分のネットワーク240にサーバ242を設置している。
通常、企業ユーザは、他のネットワークとの接続点に異常通信探知装置241を設置して、サーバ攻撃などの異常通信からサーバ242を防御している。
The problem of the prior art will be described with reference to FIG. 2 showing an example of the Internet. Assume that three communication carriers construct networks 210, 220, and 230, respectively. The network 210 connects the router 211 at the connection point with the network 220, the router 212 at the connection point with the network 230, the router 213 at the connection point with the corporate user network 240, and the personal users' PCs 250 and 260. A router 214 is installed at the point. A corporate user has a server 242 installed on his network 240.
Normally, a corporate user installs an abnormal communication detection device 241 at a connection point with another network to protect the server 242 from abnormal communication such as a server attack.

ところが、こうした異常通信探知装置が防御できない攻撃も存在する。例えば、個人のPC 250と企業のサーバ 242が通信270を行っている時に、サーバ221,222,223,224から、通信経路上のルータ213に向けて、大量のパケットを送信してルータ213のパケット転送機能を停止させる攻撃281が行われたとする。この場合、PC 250とサーバ242の間で送受信しているパケットが、攻撃を受けているルータ213で廃棄272され、正常な通信が行われなくなる。また、個人のPC 260が、P2P等の継続的に大きな帯域を使用するアプリケーションを使用した通信282を行っていると、ルータ214の転送機能が低下して、PC 250とサーバ242の間で送受信しているパケットが頻繁に廃棄271され、通信270の品質が劣化する。更に、サーバ231,232,233,234から、サーバ242に向けて、異常通信探知装置241の処理を故意に増加させるような攻撃283が行われると、異常通信探知装置241が異常通信を防御しきれずに、PC 250とサーバ242の間で送受信しているパケットが廃棄273され、正常な通信が行われなくなる。   However, there are also attacks that cannot be protected by such abnormal communication detection devices. For example, when a personal PC 250 and a corporate server 242 are performing communication 270, a large number of packets are transmitted from the servers 221, 222, 223, and 224 to the router 213 on the communication path to Assume that an attack 281 for stopping the packet transfer function is performed. In this case, packets transmitted and received between the PC 250 and the server 242 are discarded 272 by the attacked router 213, and normal communication is not performed. In addition, if the personal PC 260 performs communication 282 using an application that continuously uses a large bandwidth such as P2P, the transfer function of the router 214 deteriorates, and transmission / reception is performed between the PC 250 and the server 242. Packets are frequently discarded 271 and the quality of communication 270 deteriorates. Furthermore, if an attack 283 is performed from the server 231, 232, 233, 234 toward the server 242 that intentionally increases the processing of the abnormal communication detection device 241, the abnormal communication detection device 241 can prevent abnormal communication. Instead, packets transmitted / received between the PC 250 and the server 242 are discarded 273 and normal communication is not performed.

そのため、キャリアやISP ( Internet Service Provider ) などの通信事業者は、従来の企業向け異常通信探知装置が防御できなかった異常通信から、通信事業者のネットワークに接続中の不特定多数のPCやサーバを防御することが求められる。   For this reason, carriers and ISPs (Internet Service Providers) and other telecommunications carriers are able to connect an unspecified number of PCs and servers that are connected to the telecommunications carrier's network from abnormal communications that cannot be protected by conventional corporate abnormal communication detection devices. It is required to defend.

そこで、通信事業者は、他のネットワークとの接続点に設置するエッジルータ211,212,214に、異常通信を探知する高速回線対応の異常通信探知機能を追加して、ネットワークを流れるパケットを解析し、通信障害の原因となるP2P (Peer to Peer) などの過負荷通信や、DoS (Denial of Service)、DDoS (Distributed Denial of Service) などのルータやサーバの攻撃を目的とした不正通信など各種の異常通信を確実に探知して、排除する必要がある。   Therefore, the telecommunications carrier adds an abnormal communication detection function for high-speed lines that detects abnormal communication to the edge routers 211, 212, and 214 installed at connection points with other networks, and analyzes packets flowing through the network. However, there are various types of communication such as P2P (Peer to Peer) overload communication that causes communication failure, and unauthorized communication aimed at attacking routers and servers such as DoS (Denial of Service) and DDoS (Distributed Denial of Service). It is necessary to reliably detect and eliminate abnormal communication.

ところが、従来の方式を用いて、こうした異常通信探知を行う場合、各種の問題があった。例えば、従来の方式(例えば、特許文献1参照。)は、全パケットを解析して、全ての通信のデータを抽出するため、通信事業者の使用する高速回線上では、解析すべきパケット数と、抽出すべき通信の数が増加し、CPUの処理能力が不足する。また、不特定多数のPCやサーバの通信が行われる通信事業者のネットワークでは、抽出される通信のデータの数が多数、かつ動的に変化するため、通信のデータを蓄積するメモリ容量が不足する。また、従来方式(例えば、特許文献2,3参照。)は、検査対象を予め限定しているため、不特定多数のPCやサーバを防御することができない。更に、従来方式(例えば、特許文献4,5参照。)は、探知しようとする異常通信の種類を予め限定するため、多種類の異常通信の探知が行えない、という問題があった。   However, when such abnormal communication detection is performed using the conventional method, there are various problems. For example, the conventional method (see, for example, Patent Document 1) analyzes all packets and extracts all communication data. Therefore, on the high-speed line used by the communication carrier, The number of communications to be extracted increases, and the CPU processing capacity is insufficient. In addition, in the network of telecommunications carriers that communicate with a large number of unspecified PCs and servers, the number of extracted communication data is large and dynamically changes, so there is not enough memory capacity to store communication data. To do. Moreover, since the conventional method (for example, refer patent document 2, 3) has limited the inspection object beforehand, it cannot protect many unspecified PCs and servers. Furthermore, the conventional method (see, for example, Patent Documents 4 and 5) has a problem in that a variety of abnormal communications cannot be detected because the types of abnormal communications to be detected are limited in advance.

そこで、本願の目的は、以上の問題点を解決するために、不特定多数のPCやサーバを防御対象とした高速回線上での多種類の異常通信の同時探知を、省メモリ及び省処理量にて実現する異常通信探知機能を提供することである。   Therefore, in order to solve the above problems, the purpose of the present application is to simultaneously detect various types of abnormal communication on a high-speed line that protects a large number of unspecified PCs and servers. It is to provide an abnormal communication detection function realized by.

本願の異常通信探知装置は、「発明が解決しようとする課題」の欄に述べた課題を解決するために、以下の手段を有する。
受信した複数のパケットのうち一定の割合のパケットを複製する手段と、パケット中の所定の値の組み合わせのハッシュ値が所定のハッシュ値になるパケットの積算数を保持する記憶領域と、該受信したパケットの積算数を記憶すべき上記ハッシュ値の記憶領域が他の組み合わせを持つパケットの積算数の保持に既に利用されていた回数を積算した衝突回数を保持する記憶領域とを対応付けて有する記憶手段と、パケットを受信した際に、該パケット中の所定の値の組み合わせに基づいてハッシュ値を計算し、該計算されたハッシュ値に基づいて前記組み合わせを持つパケットの積算数を保持する記憶領域を決定し、上記決定された記憶領域に既に保持されている積算数に対応するパケットが持つ組み合わせと上記パケットが持つ組み合わせが一致するか否かを判定し、一致すると判定された場合は上記記憶領域の積算数を加算し、一致せずに衝突と判定された場合はさらに上記記憶領域に対応する上記衝突回数が所定の閾値を超過しているか否かを判定し、超過していない場合は該衝突回数を加算し、超過している場合は上記記憶領域に既に保持されている上記積算数を消去して上記受信したパケットの組み合わせを含むパケットの積算数を上書きする手段とを有する。
In order to solve the problem described in the column “Problems to be Solved by the Invention”, the abnormal communication detection apparatus of the present application has the following means.
Means for replicating a certain percentage of a plurality of received packets, a storage area for holding a cumulative number of packets in which a hash value of a combination of predetermined values in the packet becomes a predetermined hash value, and the received A storage having a storage area for storing the number of collisions obtained by integrating the number of times that the storage area of the hash value for storing the cumulative number of packets is already used to hold the cumulative number of packets having other combinations. And a storage area that, when receiving a packet, calculates a hash value based on a combination of predetermined values in the packet, and holds the cumulative number of packets having the combination based on the calculated hash value The combination of the packet corresponding to the accumulated number already held in the determined storage area and the combination of the packet It is determined whether or not they match. When it is determined that they match, the cumulative number of the storage areas is added. When it is determined that there is a collision without matching, the number of collisions corresponding to the storage area is further set to a predetermined value. It is determined whether or not the threshold value has been exceeded. If the threshold value has not been exceeded, the number of collisions is added. If the threshold value has been exceeded, the accumulated number already stored in the storage area is deleted and the received number is received. Means for overwriting the cumulative number of packets including a combination of packets.

上記以外の本願が解決しようとする課題、その解決手段は、本願の「発明を実施するための最良の形態」の欄および図面で明らかにされる。   Problems other than those described above and problems to be solved by the present application will be clarified in the "Best Mode for Carrying Out the Invention" column and drawings of the present application.

従来の方式がメモリ容量やCPU処理能力の不足により実現できなかった、不特定多数のPCやサーバを防御対象とした高速回線上での多種類の異常通信の同時探知を実現する。
前記の探知は、本願の、パケット積算数が多く新しい通信データによって、パケット積算数が少なく古い通信データを上書き抽出する方式と、通信データとして複数のパケットの種類数を記録する方式と、パケットの標本解析を前提とした異常通信の探知方式によって実現される。
Realizes simultaneous detection of various types of abnormal communication on high-speed lines that protect a large number of unspecified PCs and servers that conventional methods could not achieve due to insufficient memory capacity and CPU processing capacity.
The detection includes a method of overwriting and extracting old communication data with a small number of accumulated packets and new communication data of the present application, a method of recording the number of types of a plurality of packets as communication data, It is realized by an abnormal communication detection method based on sample analysis.

本発明が想定するネットワーク構成として、インターネットの一例を示した図2を用いて説明する。或る3つの通信事業者が、それぞれネットワーク210,220,230を構築しているとする。ネットワーク210は、ネットワーク220との接続点にルータ211を、ネットワーク230との接続点にルータ212を、企業ユーザのネットワーク240との接続点にルータ213を、個人ユーザのPC 250,260との接続点にルータ214を設置している。企業ユーザは、自分のネットワーク240にサーバ242を設置している。ネットワーク210を管理する通信事業者は、本願の技術を適用した異常通信の探知機能を搭載したルータ211〜214を、他のネットワークとの接続点であるネットワークエッジに設置する。
本発明の異常通信探知機能を備えるルータ211〜214の概要動作を、図3を用いて説明する。図3は本発明の異常通信探知機能を備えるルータ300を示す。
A network configuration assumed by the present invention will be described with reference to FIG. 2 showing an example of the Internet. Assume that three communication carriers construct networks 210, 220, and 230, respectively. The network 210 connects the router 211 at the connection point with the network 220, the router 212 at the connection point with the network 230, the router 213 at the connection point with the corporate user network 240, and the personal users' PCs 250 and 260. A router 214 is installed at the point. A corporate user has a server 242 installed on his network 240. A telecommunications carrier that manages the network 210 installs routers 211 to 214 equipped with an abnormal communication detection function to which the technology of the present application is applied at a network edge that is a connection point with another network.
The general operation of the routers 211 to 214 having the abnormal communication detection function of the present invention will be described with reference to FIG. FIG. 3 shows a router 300 having the abnormal communication detection function of the present invention.

異常通信探知機能を備えるルータ300は、N個のインターフェース部310-i (i=1〜N)と、N×L個の回線310-i-j (i=1〜N,j=1〜L)と、N個のインターフェース部310-iを結合するパケット中継処理手段320と、異常通信探知機能を備える異常通信探知部100と、探知結果113を基にして設定すべき帯域制御設定を探索して帯域制御のコマンド339を出力する設定値探索部331と、コマンド339を基に通信帯域制御部の設定341を行う制御設定部340より構成される。インターフェース部310-i は、パケットデータ複製部311-i (i=1〜N)を備え、回線310-i-j及びパケット中継処理手段320との間で入出力するパケットを、予め指定した割合Rateで複製して、複製したパケットデータ101を、異常通信探知部100に送信する。また、インターフェース部310-i は、通信帯域制御部312-i (i=1〜N)を備え、制御設定部340の指示通りに、パケットの特性毎に帯域の制御を行う。異常通信のパケットは帯域制限制御を、正規通信のパケットは帯域保護制御を行う。設定値探索部331は、外部に設定値探索装置330として設置される場合もある。   The router 300 having an abnormal communication detection function includes N interface units 310-i (i = 1 to N), N × L lines 310-ij (i = 1 to N, j = 1 to L), and The packet relay processing means 320 for connecting the N interface units 310-i, the abnormal communication detection unit 100 having the abnormal communication detection function, and the bandwidth control setting to be set based on the detection result 113 A set value search unit 331 that outputs a control command 339 and a control setting unit 340 that sets a communication band control unit 341 based on the command 339 are configured. The interface unit 310-i includes a packet data duplicating unit 311-i (i = 1 to N), and the packets input / output between the line 310-ij and the packet relay processing unit 320 are transmitted at a rate Rate specified in advance. The duplicated packet data 101 is transmitted to the abnormal communication detecting unit 100. The interface unit 310-i includes a communication band control unit 312-i (i = 1 to N), and controls the band for each packet characteristic as instructed by the control setting unit 340. Abnormal communication packets are subjected to bandwidth limitation control, and regular communication packets are subjected to bandwidth protection control. The set value search unit 331 may be installed as the set value search device 330 outside.

なお、本発明の異常通信探知機能を、図4のような、ルータの外部に設置した演算装置430が備える場合もある。この場合、演算装置430は、CPU 460と、メモリ440と、接続部450と、これらを結合する情報伝達路470より構成される。異常通信探知処理を行うモジュール100は、メモリ440に格納される。パケットデータ複製部311-iが複製したパケットデータ101は、接続部450から演算装置430に入力される。また、探知結果113は、接続部450から出力される。本実施例では、異常通信探知部100をルータ内部に備える場合について説明を行うが、ルータ外部に備える場合についても同様に行うことが可能である。   In some cases, the abnormal communication detection function of the present invention is provided in the arithmetic device 430 installed outside the router as shown in FIG. In this case, the arithmetic device 430 includes a CPU 460, a memory 440, a connection unit 450, and an information transmission path 470 that couples them. The module 100 that performs abnormal communication detection processing is stored in the memory 440. The packet data 101 copied by the packet data replicating unit 311-i is input from the connection unit 450 to the arithmetic device 430. The detection result 113 is output from the connection unit 450. In this embodiment, the case where the abnormal communication detection unit 100 is provided inside the router will be described. However, the case where the abnormal communication detection unit 100 is provided outside the router can be similarly performed.

図8は複製したパケットデータ101のフォーマットの一例を示す。本フォーマットは、パケットデータのサイズを表すSize 801と、パケットが入力した回線の識別番号である入力回線番号を表すInLine 802と、パケットを出力する回線の識別番号である出力回線番号OutLine 803と、データリンク層の送信元アドレスである送信元MACアドレスを表すSMAC 804と、宛先アドレスである宛先MACアドレスを現すDMAC 805と、データリンク層の転送優先度を表す優先度L2-PRI 806と、ネットワーク層のプロトコル(上位アプリケーション)を表すProto 807と、送信元アドレス(送信端末のアドレス)である送信元IPアドレスを表すSIP 808と、宛先アドレス(受信端末のアドレス)である宛先IPアドレスを現すDIP 809と、プロトコルTCPやUDPの送信元ポートを表すSport 810と、宛先ポートを表すDport 811と、TCPフラグを表すFlag 812と、ネットワーク層の転送優先度を表す優先度L3-PRI 813と、パケットデータ複製部311-iがパケットを複製した割合Rate 814と、パケットを複製した時刻Time 815から構成される。   FIG. 8 shows an example of the format of the copied packet data 101. In this format, Size 801 indicating the size of the packet data, InLine 802 indicating the input line number that is the identification number of the line to which the packet is input, Output line number OutLine 803 that is the identification number of the line that outputs the packet, SMAC 804 that represents the source MAC address that is the source address of the data link layer, DMAC 805 that represents the destination MAC address that is the destination address, priority L2-PRI 806 that represents the transfer priority of the data link layer, and the network Proto 807 that represents the layer protocol (higher application), SIP 808 that represents the source IP address that is the source address (the address of the sending terminal), and DIP that represents the destination IP address that is the destination address (the address of the receiving terminal) 809, Sport 810 representing the source port of the protocol TCP or UDP, Dport 811 representing the destination port, Flag 812 representing the TCP flag, and network layer transfer. And priority L3-PRI 813 representing a priority, the ratio Rate 814 the packet data replication unit 311-i has duplicates the packet, and a time Time 815 that duplicates the packets.

次に、図1,図5〜7,図9〜72を用いて本発明の詳細動作について説明する。図1に異常通信探知部100のブロック図を示す。異常通信探知100は、受信したパケットデータ101を一定の割合で標本化するパケット標本化部119と、標本化部が標本化して出力したパケットデータ102が持つSize 801からL3-PRI 813までの13個の項目の内、どの項目を組み合わせて通信データの抽出を行うかを判定する抽出部180と、抽出した通信データの記録を行う記録部181と、記録した通信データを用いて通信の異常/正常を判定する探知部182と、各種設定を行う設定部171と、設定値の蓄積を行う設定値蓄積テーブル130と、抽出部180や記録部181の履歴を蓄積する抽出/記録履歴蓄積テーブル140と、通信データを蓄積する通信データ蓄積テーブル150から構成される。更に、抽出部180は、組合せ抽出部120と、組合せ整列部121と、アドレス生成部122と、通信データ抽出判定部123から構成され、記録部181は、通信データ記録部124と、種類数記録部125から構成され、探知部182は、組合せ判定部126と、異常/正常判定部127から構成される。   Next, the detailed operation of the present invention will be described with reference to FIGS. 1, 5 to 7, and 9 to 72. FIG. 1 shows a block diagram of the abnormal communication detection unit 100. The abnormal communication detection 100 includes a packet sampling unit 119 that samples the received packet data 101 at a constant rate, and a packet data 102 that is sampled and output by the sampling unit from Size 801 to L3-PRI 813. An extraction unit 180 that determines which of the items is combined to extract communication data, a recording unit 181 that records the extracted communication data, and a communication error / Detection unit 182 that determines normality, setting unit 171 that performs various settings, setting value accumulation table 130 that accumulates setting values, and extraction / recording history accumulation table 140 that accumulates the history of the extraction unit 180 and the recording unit 181 And a communication data storage table 150 for storing communication data. Further, the extraction unit 180 includes a combination extraction unit 120, a combination alignment unit 121, an address generation unit 122, and a communication data extraction determination unit 123. A recording unit 181 includes a communication data recording unit 124, and the number of types recorded. The detection unit 182 includes a combination determination unit 126 and an abnormality / normality determination unit 127.

図9〜12には、抽出部180が行う処理のフローチャートを示す。抽出部180の処理は、組合せ抽出処理900(図9)と、組合せ整列処理1000(図10)と、アドレス生成処理1100(図11)と、通信データ抽出判定処理1200(図12)から構成される。処理900は組合せ抽出部120が実行し、処理1000は組合せ整列部121が実行し、処理1100はアドレス生成部122が実行し、処理1200は通信データ抽出判定部123が実行する。   9 to 12 show flowcharts of processing performed by the extraction unit 180. The processing of the extraction unit 180 includes a combination extraction process 900 (FIG. 9), a combination alignment process 1000 (FIG. 10), an address generation process 1100 (FIG. 11), and a communication data extraction determination process 1200 (FIG. 12). The The process 900 is executed by the combination extraction unit 120, the process 1000 is executed by the combination alignment unit 121, the process 1100 is executed by the address generation unit 122, and the process 1200 is executed by the communication data extraction determination unit 123.

図13〜35には、記録部181が行う処理のフローチャートを示す。記録部181の処理は、通信データ記録処理1300(図13)と、種類数記録処理1600(図16)から構成される。処理1300は通信データ記録部124が実行し、処理1600は種類数記録部125が実行する。通信データ記録処理1300は、パケット数の選択積算処理1310(図14)と、選択積算の種類の記録処理1311(図15)を含む。種類数記録処理1600は、パケットの種類数の減算処理1605(図17〜22)と、上書判定時のパケットの種類数の積算処理1606(図23〜28)と、一致判定時のパケットの種類数の積算処理1603(図29〜35)を含む。   13 to 35 are flowcharts of processing performed by the recording unit 181. The processing of the recording unit 181 includes a communication data recording process 1300 (FIG. 13) and a type number recording process 1600 (FIG. 16). The process 1300 is executed by the communication data recording unit 124, and the process 1600 is executed by the type number recording unit 125. The communication data recording process 1300 includes a packet number selective integration process 1310 (FIG. 14) and a selection integration type recording process 1311 (FIG. 15). The type number recording process 1600 includes a packet type number subtraction process 1605 (FIGS. 17 to 22), a packet type count integration process 1606 (FIGS. 23 to 28) at the time of overwriting determination, It includes the number of types integrating process 1603 (FIGS. 29 to 35).

図36〜72には、探知部182が行う処理のフローチャートを示す。探知部182の処理は、組合せ判定処理3600(図36)と、正常/異常判定処理3800(図38)から構成される。処理3600は組合せ判定部126が実行し、処理3800は正常/異常判定部127が実行する。組合せ判定処理3600は、組合せIDの判定処理3604(図37)を含む。正常/異常判定処理3800は、組合せIDに応じた正常/異常判定処理3801(図40〜72)と、異常通信データとホワイトリストの伝達処理3802(図39)を含む。   36 to 72 show flowcharts of processing performed by the detection unit 182. The processing of the detection unit 182 includes a combination determination process 3600 (FIG. 36) and a normal / abnormal determination process 3800 (FIG. 38). The process 3600 is executed by the combination determination unit 126, and the process 3800 is executed by the normality / abnormality determination unit 127. The combination determination process 3600 includes a combination ID determination process 3604 (FIG. 37). The normal / abnormal determination processing 3800 includes normal / abnormal determination processing 3801 (FIGS. 40 to 72) corresponding to the combination ID, and abnormal communication data and white list transmission processing 3802 (FIG. 39).

図5〜7には、設定値蓄積テーブル130と、抽出/記録履歴蓄積テーブル140と、通信データ蓄積テーブル150のフォーマットを示す。フォーマットの詳細は、以下の説明で明らかにされる。   5 to 7 show formats of the setting value accumulation table 130, the extraction / recording history accumulation table 140, and the communication data accumulation table 150. Details of the format will be made clear in the following description.

帯域監視部100が複製パケットデータ101を受信すると、まずパケット標本化部119で、複製パケットデータ101の標本化が行われる。設定値蓄積テーブル130内の標本化レートRate 509を読み込み(図1の136)、読み込んだ割合で標本化を行い、標本化パケットデータ102を、抽出部180へ出力する。標本化パケットデータ102のフォーマットは、複製パケットデータと同じであるが、パケットを複製した割合Rate 814は、元の割合に、設定値蓄積テーブル130内の標本化レートRate 509を掛算した値に変更される。また、Rate 509の値が1.0の場合は、全ての複製パケットデータ101を、標本化パケットデータ102として出力する。   When the bandwidth monitoring unit 100 receives the duplicate packet data 101, the packet sampling unit 119 first samples the duplicate packet data 101. The sampling rate Rate 509 in the set value accumulation table 130 is read (136 in FIG. 1), sampling is performed at the read rate, and the sampling packet data 102 is output to the extraction unit 180. The format of the sampled packet data 102 is the same as that of the duplicate packet data, but the rate of packet duplication Rate 814 is changed to the value obtained by multiplying the original rate by the sampling rate Rate 509 in the setting value accumulation table 130. Is done. If the value of Rate 509 is 1.0, all duplicate packet data 101 is output as sampled packet data 102.

抽出部180が標本化パケットデータ102を受信すると、まず組合せ抽出部120にて組合せ抽出処理900が行われる。初めに、抽出/記録履歴蓄積テーブル140が含む全ての変数に初期値(図1の141)を書き込む(ステップ901)。次に、標本化パケットデータ102が持つSize 801からL3-PRI 813までの13個の項目の内、どの項目の組合せを抽出するかを指定する組合せIDを、1から順番に213まで1ずつ増加させながら213通り生成して(ステップ902)、処理900〜1200を繰り返し行う。 When the extraction unit 180 receives the sampled packet data 102, the combination extraction unit 120 first performs a combination extraction process 900. First, initial values (141 in FIG. 1) are written in all variables included in the extraction / record history accumulation table 140 (step 901). Next, among the 13 items from Size 801 to L3-PRI 813 in the sampled packet data 102, the combination ID that specifies which combination of items is to be extracted is 1 from 1 to 2 13 in order. generated are two 13 while increasing (step 902), repeats the processing 900-1200.

組合せIDの下1ビット目が1の場合はSIP 808を、組合せIDの下2ビット目が1の場合はDIP 809を、組合せIDの下3ビット目が1の場合はSport 810を、組合せIDの下4ビット目が1の場合はDport 811を、組合せIDの下5ビット目が1の場合はFlag 812を、組合せIDの下6ビット目が1の場合はInLine 802を、組合せIDの下7ビット目が1の場合はProto 807を、組合せIDの下8ビット目が1の場合はSize 801を、組合せIDの下9ビット目が1の場合はOutLine 803を、組合せIDの下10ビット目が1の場合はSMAC 804を、組合せIDの下11ビット目が1の場合はDMAC 805を、組合せIDの下12ビット目が1の場合はL2-PRI 806を、組合せIDの下13ビット目が1の場合はL3-PRI 813を含む組合せを指定する。例えば、組合せIDが5(=1+4)の場合は、SIP 808とSport 810の2つの項目を含む組合せを、組合せIDが79(=64+8+4+2+1)の場合は、SIP 808とDIP 809とSport 810とDport 811とProto 807の5つの項目を含む組合せを指定する。   SIP 808 if the first bit of the combination ID is 1, DIP 809 if the second bit of the combination ID is 1, and Sport 810 if the third bit of the combination ID is 1, the combination ID If the lower 4th bit is 1, Dport 811, if the lower 5th bit of the combination ID is 1, Flag 812, if the 6th lower bit of the combination ID is 1, InLine 802, Proto 807 if the 7th bit is 1, Size 801 if the lower 8th bit of the combination ID is 1, OutLine 803 if the lower 9th bit of the combination ID is 1, and the lower 10 bits of the combination ID If the first is 1, SMAC 804, if the 11th bit of the combination ID is 1, DMAC 805, if the 12th bit of the combination ID is 1, L2-PRI 806, and the lower 13 bits of the combination ID If the first is 1, specify the combination including L3-PRI 813. For example, if the combination ID is 5 (= 1 + 4), a combination including two items, SIP 808 and Sport 810, if the combination ID is 79 (= 64 + 8 + 4 + 2 + 1) Specify a combination that includes five items: SIP 808, DIP 809, Sport 810, Dport 811, and Proto 807.

組合せIDの生成が終了すると、全ての組合せの抽出が終了したか否かの判定を行う(ステップ903)。組合せIDが213の場合は、全ての組合せの抽出が終了したと判定して、標本化パケットデータ102を記録部181に伝達(図1の107)して(ステップ906)、抽出部180における処理900〜1200の繰り返しを終了し、記録部181の処理1300に入る。組合せIDが213でない場合は、その組合せの抽出をユーザが指定しているか否かの判定を行う(ステップ904)。組合せIDの値がi(i=1〜213-1)の時、設定値蓄積テーブル130内の組合せID指定データID-i(i=1〜213-1)510-iを読み込み(図1の131)、ID-i 510-iが1の場合は、ユーザ指定の組合せと判定して、組合せIDと組合せIDが指定する項目から構成されるパケットデータの情報103を、組合せ整列部121へ伝達する(ステップ905)。ID-iが0の場合は、ユーザ未指定の組合せと判定して、組合せID生成処理(ステップ902)に戻り、次の組合せID(1加算した値)を生成して、同様の処理を繰り返す。なお、本実施例では、設定値蓄積テーブル130内の組合せID指定データID-i(i=1〜28-1)の値を常に1、組合せID指定データID-i(i=28〜213-1)の値を常に0にしている場合を説明する。そのため、組合せ整列部121へ伝達するパケットデータは、SIP 808、DIP 809、Sport 810、Dport 811、Flag 812、InLine 802、Proto 807、Size 801の内の最大8つの項目と、複製割合Rate 814と、複製時刻Time 815から構成される。 When the generation of the combination ID is completed, it is determined whether or not the extraction of all combinations is completed (step 903). If the combination ID is 213 , it is determined that extraction of all the combinations has been completed, and the sampling packet data 102 is transmitted to the recording unit 181 (107 in FIG. 1) (step 906). The repetition of the processes 900 to 1200 is ended, and the process 1300 of the recording unit 181 is entered. If the combination ID is not 2 13, it is determined whether to specify the extraction of the combination user (step 904). When the value of the combination ID is i (i = 1 to 2 13 -1), the combination ID designation data ID-i (i = 1 to 2 13 -1) 510-i in the set value accumulation table 130 is read (see FIG. 131 of 1), and when ID-i 510-i is 1, it is determined that the combination is specified by the user, and the packet data information 103 including the combination ID and the item specified by the combination ID is changed to the combination alignment unit 121. (Step 905). If ID-i is 0, it is determined that the combination is not specified by the user, the process returns to the combination ID generation process (step 902), the next combination ID (value obtained by adding 1) is generated, and the same process is repeated. . In this embodiment, the value of the combination ID designation data ID-i (i = 1 to 2 8 −1) in the set value accumulation table 130 is always 1, and the combination ID designation data ID-i (i = 2 8 to The case where the value of 2 13 -1) is always 0 will be described. Therefore, the packet data transmitted to the combinational alignment unit 121 includes up to eight items of SIP 808, DIP 809, Sport 810, Dport 811, Flag 812, InLine 802, Proto 807, and Size 801, and the replication rate Rate 814. , Composed of duplication time Time 815.

組合せ抽出部120が実行する組合せ抽出処理900のステップ905が終了すると、次に組合せ整列部121において、組合せ整列処理1000を行う。組合せ抽出部120から得たパケットデータから複製割合Rate 814と、複製時刻Time 815を除くハッシュ値生成用パケットデータ1020を生成する。更に、SIP 808とDIP 809を含む組合せの時は、SIP 808がDIP 809よりも小さい場合にSIP 808とDIP 809の順番を反転させる処理(ステップ1010)を行い、Sport 810とDport 811を含む組合せの時は、Sport 810がDport 811よりも小さい場合にSport 810とDport 811の順番を反転させる処理(ステップ1011)を行って、ハッシュ値生成用整列済みパケットデータ1030を得る。整列済みパケットデータ1030は、整列済みのIP1 1031とIP2 1032、整列済みのPort1 1033とPort2 1034、Flag 1035、InLine 1036、Proto 1037、Size 1038の内、1〜8つの項目から構成される。最後に、整列済みパケットデータ1030と、組合せIDと、パケットデータから構成される情報104を、アドレス生成部122に伝達する(ステップ1040)。   When step 905 of the combination extraction process 900 executed by the combination extraction unit 120 is completed, the combination alignment unit 121 performs the combination alignment process 1000 next. From the packet data obtained from the combination extraction unit 120, the replication rate Rate 814 and the hash value generation packet data 1020 excluding the replication time Time 815 are generated. Further, in the case of a combination including SIP 808 and DIP 809, when SIP 808 is smaller than DIP 809, the process of reversing the order of SIP 808 and DIP 809 (step 1010) is performed, and the combination including Sport 810 and Dport 811 is performed. In this case, when Sport 810 is smaller than Dport 811, processing for reversing the order of Sport 810 and Dport 811 (step 1011) is performed, and hash value generation sorted packet data 1030 is obtained. The aligned packet data 1030 is composed of 1 to 8 items among the aligned IP1 1031 and IP2 1032, the aligned Port1 1033 and Port2 1034, Flag 1035, InLine 1036, Proto 1037, and Size 1038. Finally, the sorted packet data 1030, the combination ID, and the information 104 composed of the packet data are transmitted to the address generation unit 122 (step 1040).

組合せ整列部121の実行する組合せ整列処理1000が終了すると、次にアドレス生成部122においてアドレス生成処理1100を行う。組合せ整列部121から得た整列済みパケットデータ1030を用いてハッシュ値を計算して、抽出した組合せのデータを記録するアドレスを生成する(ステップ1101)。また、生成したアドレスを、判定/記録履歴蓄積テーブル140内の生成アドレスデータ蓄積部ID-Address-i(i=1〜213-1)610-iに記録(図1の142)する(ステップ1102)。更に、パケットデータと、組合せIDと、整列済みパケットデータ1030と、生成したアドレス値から構成される情報105を、通信データ抽出判定部123へ伝達する(ステップ1103)。 When the combination arrangement process 1000 executed by the combination arrangement unit 121 is completed, the address generation unit 122 performs an address generation process 1100 next. A hash value is calculated using the sorted packet data 1030 obtained from the combination sorting unit 121, and an address for recording the extracted combination data is generated (step 1101). Also, the generated address is recorded (142 in FIG. 1) in the generated address data storage unit ID-Address-i (i = 1 to 2 13 -1) 610-i in the determination / record history storage table 140 (step 142). 1102). Further, the information 105 including the packet data, the combination ID, the sorted packet data 1030, and the generated address value is transmitted to the communication data extraction determination unit 123 (step 1103).

アドレス生成部122が実行するアドレス生成処理1100が終了すると、次に通信データ抽出判定部123において、通信データ抽出判定処理1200を行う。まず、組合せIDの下1ビット目と2ビット目が共に1の場合に下1ビット目だけを0に変更し、組合せIDの下1ビット目が0で2ビット目が1の場合に下1ビット目を1に下2ビット目を0に変更し、組合せIDの下3ビット目と4ビット目が共に1の場合に下3ビット目だけを0に変更し、組合せIDの下3ビット目が0で4ビット目が1の場合に下3ビット目を1に下4ビット目を0に変更した比較用組合せIDを作成する。次に、比較用組合せIDと整列済みパケットデータ1030と、生成したアドレスを基に読み出した(図1の152)通信データ蓄積テーブル150内の領域に記録された通信データ700-k (k=1〜M)が一致するか否かを判定する(ステップ1201)。具体的には、比較用組合せID及び整列済みパケットデータ1030内のIP1 1031,IP2 1032,Port1 1033,Port2 1034,Flag 1035,InLine 1036,Proto 1037,Size 1038と、通信データ700-k内のID 700-k,IP1 701-k,IP2 702-k,Port1 703-k,Port2 704-k,Flag 705-k,Line 706-k,Proto 707-k,Size 708-kとを比較して一致するか否かを判定する。   When the address generation process 1100 executed by the address generation unit 122 ends, the communication data extraction determination unit 123 performs a communication data extraction determination process 1200 next. First, if both the first and second bits of the combination ID are 1, only the lower first bit is changed to 0, and if the first bit of the combination ID is 0 and the second bit is 1, Change bit 1 to lower 2 bit to 0, and if both lower 3rd bit and 4th bit of combination ID are 1, only lower 3rd bit is changed to 0 and lower 3rd bit of combination ID When is 0 and the 4th bit is 1, a comparison combination ID is created by changing the lower 3 bits to 1 and the lower 4 bits to 0. Next, the communication data 700-k (k = 1) recorded in the area in the communication data accumulation table 150 read based on the comparison combination ID, the sorted packet data 1030, and the generated address (152 in FIG. 1) To M) are determined (step 1201). Specifically, the combination ID for comparison and the IP1 1031, IP2 1032, Port1 1033, Port2 1034, Flag 1035, InLine 1036, Proto 1037, Size 1038 in the sorted packet data 1030 and the ID in the communication data 700-k Compare 700-k, IP1 701-k, IP2 702-k, Port1 703-k, Port2 704-k, Flag 705-k, Line 706-k, Proto 707-k, Size 708-k It is determined whether or not.

一致する場合は、一致判定を行う(ステップ1203)。
一致しない場合は、設定値蓄積テーブル130内の上書き判定方式指定値Overwrite-Judge 520を読み込む(図1の132)。上書き判定方式指定値Overwrite-Judge 520が積算数比較指定の場合は、通信データ700-k内の衝突回数Cnf731-kが、設定値蓄積テーブル130内の積算数比較用閾値Overwrite-Num 523を超過するか否かの判定を行う。比率比較指定の場合は、通信データ700-k内の衝突回数Cnf 731-kと積算数C1 711-kの比率が、設定値蓄積テーブル130内の比率比較用閾値Overwrite-Ratio 522を超過するか否かの判定を行う。時間比較指定の場合は、パケットデータ内の複製時刻Time 815と通信データ700-k内の衝突開始時刻CTime 762-k(k=1〜M)の差分が、最終記録時刻LTime761-k(i=1〜M)と記録開始時刻FTime760-k(k=1〜M)との差分を超過するか否かの判定を行う(ステップ1202)。
If they match, a match determination is performed (step 1203).
If they do not match, the overwriting determination method specification value Overwrite-Judge 520 in the setting value accumulation table 130 is read (132 in FIG. 1). When Overwrite-Judge 520 is specified to compare the number of overwriting judgments, the number of collisions Cnf731-k in the communication data 700-k exceeds the threshold for comparing the number of accumulations Overwrite-Num 523 in the set value accumulation table 130. It is determined whether or not to do so. In the case of ratio comparison specification, does the ratio between the number of collisions Cnf 731-k and the total number C1 711-k in the communication data 700-k exceed the ratio comparison threshold Overwrite-Ratio 522 in the set value accumulation table 130? Determine whether or not. In the case of time comparison specification, the difference between the duplication time Time 815 in the packet data and the collision start time CTime 762-k (k = 1 to M) in the communication data 700-k is the final recording time LTime761-k (i = 1 to M) and whether or not the difference between the recording start time FTime760-k (k = 1 to M) is exceeded (step 1202).

超過しない場合は、衝突判定を行い(ステップ1204)、通信データ700-k内の衝突回数Cnf 731-kに、複製した割合Rate 814の逆算値を積算(図1の151)する(ステップ1205)。更に、衝突回数Cnf 731-kへの積算が初めての場合、衝突開始時刻CTime 762-kに、パケットデータ内の複製時刻Time 815を記録する(ステップ1205)。   If not exceeded, a collision determination is made (step 1204), and the reverse calculation value of the copied rate Rate 814 is added to the number of collisions Cnf 731-k in the communication data 700-k (151 in FIG. 1) (step 1205). . Further, when the integration to the collision count Cnf 731-k is the first time, the duplication time Time 815 in the packet data is recorded at the collision start time CTime 762-k (step 1205).

超過する場合は、上書判定を行い(ステップ1206)、上書される通信データ700-kと組合せIDを、抽出/記録履歴蓄積テーブル140内の被上書き通信データOld-Data-i(i=1〜213-1)670-iと被上書き組合せID Overwrite-ID-i(i=1〜213-1)630-iに記録(図1の143)する(ステップ1207)。 If it exceeds, the overwriting determination is performed (step 1206), and the overwritten communication data 700-k and the combination ID are overwritten communication data Old-Data-i (i = 1 to 2 13 -1) 670-i and overwritten combination ID Overwrite-ID-i (i = 1 to 2 13 -1) are recorded in 630-i (143 in FIG. 1) (step 1207).

判定結果(一致、衝突、上書)毎の処理が終了すると、抽出/記録履歴蓄積テーブル140内のWrite-Kind-i(i=1〜213-1)620-iに判定結果を記録(図1の143)する(ステップ1208)。更に、パケットデータ内の複製時刻Time 815と、通信データ700-k内の記録開始時刻FTime 760-k(k=1〜M)の差分ΔTが、設定値蓄積テーブル130内のエージングタイムATime 521を超過している場合は、通信データ700-k内のパケット積算数C1〜5 711〜715-k(k=1〜M)と、パケット積算バイト数B1〜5 721〜725-k(k=1〜M)と、衝突回数Cnf 731-k(k=1〜M)を、(ATime 521-ΔT)/ATime 521倍して減算、或いは、ATime 521/(ATime 521+ΔT)倍して平均化する(ステップ1209)。最後に、抽出判定処理が終了したことを、組合せ抽出処理900を行う組合せ抽出部120に伝達(図1の106)して(ステップ1210)、処理900〜処理1200の処理を繰り返す。 When processing for each determination result (match, collision, overwriting) is completed, the determination result is recorded in Write-Kind-i (i = 1 to 2 13 -1) 620-i in the extraction / record history accumulation table 140 ( 143 in FIG. 1 (step 1208). Further, the difference ΔT between the duplication time Time 815 in the packet data and the recording start time FTime 760-k (k = 1 to M) in the communication data 700-k gives the aging time ATime 521 in the set value accumulation table 130. If exceeded, the total number of packets C1 to 5 711 to 715-k (k = 1 to M) in the communication data 700-k and the total number of packets B1 to 5 721 to 725-k (k = 1) ~ M) and the number of collisions Cnf 731-k (k = 1 ~ M) is subtracted by multiplying by (ATime 521-ΔT) / ATime 521, or averaged by multiplying by ATime 521 / (ATime 521 + ΔT) (Step 1209). Finally, the completion of the extraction determination process is transmitted to the combination extraction unit 120 that performs the combination extraction process 900 (106 in FIG. 1) (step 1210), and the processes of the processes 900 to 1200 are repeated.

以上述べた抽出部180の処理900〜1200により、パケット積算数が多く新しい通信データによって、パケット積算数が少なく古い通信データが上書き抽出される。そのため、パケット積算数が大きく、尚且つ開始時間が新しい通信であるほど、上書きされにくく、通信データ蓄積テーブル150に記録が残りやすくなる。これにより、異常探知に必要な通信の情報を省メモリで得ることができるようになる。   By the processing 900 to 1200 of the extraction unit 180 described above, old communication data with a small number of accumulated packets is overwritten by new communication data with a large number of accumulated packets. Therefore, the larger the number of accumulated packets and the newer the start time, the harder it is to be overwritten and the easier it is to record in the communication data accumulation table 150. As a result, communication information necessary for detecting an abnormality can be obtained in a memory-saving manner.

抽出部180が行う処理900〜1200の繰り返しが全て終了して、全ての組合せの抽出が終了すると、次は、記録部181が行う処理に入る。記録部181は、パケットデータ107を受け取ると、抽出部180同様に、組合せIDを1ずつ増加させながら繰り返し生成して(ステップ1301)、通信データ記録処理1300と、種類数記録処理1600を交互に行う。組合せIDが213となった場合は、全ての組合せの抽出が終了したと判定して(ステップ1302)、パケットデータ101を探知部182に伝達(図1の110)して(ステップ1313)、記録部181における処理1300と1600の繰り返しを終了し、探知部182の処理に入る。組合せIDが213でない場合は、その組合せの記録をユーザが指定しているか否かの判定を行う(ステップ1303)。組合せIDの値がi(i=1〜213-1)の時、設定値蓄積テーブル130内の組合せID指定データR-i(i=1〜213-1)511-iを読み込み(図1の133)、R-i 511-iが0の場合は、ユーザ未指定の組合せと判定して、組合せID生成処理(ステップ1301)に戻り、次の組合せID(1加算した値)を生成して、同様の処理を繰り返す。R-i 511-iが1の場合は、ユーザ指定の組合せと判定して、抽出/記録履歴蓄積テーブル140内の判定結果Write-Kind-i(i=1〜213-1)620-iを読込み(図1の145)、判定結果Write-Kind-i 620-iに応じて3通りの処理を行う(ステップ1304)。 When the repetition of the processes 900 to 1200 performed by the extraction unit 180 is completed and the extraction of all combinations is completed, the process performed by the recording unit 181 is entered next. When receiving the packet data 107, the recording unit 181 repeatedly generates the combination ID by 1 (step 1301), like the extraction unit 180 (step 1301), and alternately performs the communication data recording process 1300 and the type number recording process 1600. Do. When the combination ID is 2 13 , it is determined that all combinations have been extracted (step 1302), and the packet data 101 is transmitted to the detection unit 182 (110 in FIG. 1) (step 1313). The repetition of the processing 1300 and 1600 in the recording unit 181 is ended, and the processing of the detection unit 182 starts. If the combination ID is not 2 13, it is determined whether the recording of the combination user has specified (step 1303). When the value of the combination ID is i (i = 1 to 2 13 -1), the combination ID designation data Ri (i = 1 to 2 13 -1) 511-i in the set value accumulation table 130 is read (in FIG. 1) 133), if Ri 511-i is 0, it is determined that the combination is not specified by the user, the process returns to the combination ID generation process (step 1301), and the next combination ID (value added by 1) is generated. Repeat the process. When Ri 511-i is 1, it is determined that the combination is specified by the user, and the determination result Write-Kind-i (i = 1 to 2 13 -1) 620-i in the extraction / record history accumulation table 140 is read. (145 in FIG. 1), three types of processing are performed according to the determination result Write-Kind-i 620-i (step 1304).

判定結果Write-Kind-i 620-iが上書の場合(ステップ1306)は、抽出/記録履歴蓄積テーブル140内のステップ1102で記録したアドレスID-Address-i(i=1〜213-1)が定める領域にある通信データ蓄積テーブル150内の通信データ700-k(k=1〜M)を初期化(図1の153)する。更に、SIP 701-kからSize 708-kまでの通信データを、ステップ1000と同様の処理を行って得た整列済みパケットデータに更新する(ステップ1307)。なお、ID 700-kには、組合せIDの下1ビット目と2ビット目が共に1の場合に下1ビット目だけを0に変更し、組合せIDの下1ビット目が0で2ビット目が1の場合に下1ビット目を1に下2ビット目を0に変更し、組合せIDの下3ビット目と4ビット目が共に1の場合に下3ビット目だけを0に変更し、組合せIDの下3ビット目が0で4ビット目が1の場合に下3ビット目を1に下4ビット目を0に変更した比較用組合せIDを記録する。その後で、判定結果Write-Kind-i 620-iが一致の場合(ステップ1305)の処理と合流する。その後、通信データ700-k内のパケット積算数C1 711-kに、パケットデータ内の割合Rate 814の逆算値を積算し、バイト積算数B1 721-kに、パケットデータ内のサイズSize 801と割合Rate 814の逆算値の積を積算する(ステップ1308)。 When the determination result Write-Kind-i 620-i is overwritten (step 1306), the address ID-Address-i (i = 1 to 2 13 -1) recorded in step 1102 in the extraction / record history accumulation table 140 The communication data 700-k (k = 1 to M) in the communication data accumulation table 150 in the area defined by) is initialized (153 in FIG. 1). Further, the communication data from SIP 701-k to Size 708-k is updated to the aligned packet data obtained by performing the same processing as in step 1000 (step 1307). For ID 700-k, if the first and second bits of the combination ID are both 1, only the lower first bit is changed to 0, and the second bit of the combination ID is 0 and the second bit. When 1 is 1, the lower 1st bit is changed to 1 and the lower 2nd bit is changed to 0, and when the lower 3rd bit and 4th bit of the combination ID are both 1, only the lower 3rd bit is changed to 0, When the third bit of the combination ID is 0 and the fourth bit is 1, the comparison combination ID in which the lower third bit is changed to 1 and the lower fourth bit is changed to 0 is recorded. Thereafter, the process is merged with the process in the case where the determination result Write-Kind-i 620-i matches (step 1305). After that, the back-calculated value of the rate 814 in the packet data is added to the packet count C1 711-k in the communication data 700-k, and the size Size 801 in the packet data is added to the byte count B1 721-k. The product of the backward calculation values of Rate 814 is integrated (step 1308).

更に、組合せにSIP/DIPやSport/Dportを含む場合は(ステップ1309)、パケットの選択積算(ステップ1310)と、選択積算の種類の記録(ステップ1311)を行い、通信データ蓄積テーブル150内のC2〜C5 712〜715-k (k=1〜M)とB2〜B5 722〜725-k (k=1〜M)と、抽出/記録履歴蓄積テーブル140内の選択積算の種類ICnt-Kind1-i(i=1〜213-1)と、選択積算の種類I〜III Cnt-Kind1〜3-i(i=1〜213-1) 640〜660-iを変更(図1の144と153)する。詳細を図14内の表と図15内の表に示す。 Further, when the combination includes SIP / DIP or Sport / Dport (step 1309), the packet selection accumulation (step 1310) and the type of selection accumulation (step 1311) are recorded, and the communication data accumulation table 150 C2 to C5 712 to 715-k (k = 1 to M), B2 to B5 722 to 725-k (k = 1 to M), and the type of selective integration in the extraction / record history accumulation table 140 ICnt-Kind1- i (i = 1 to 2 13 -1) and selection integration types I to III Cnt-Kind1 to 3-i (i = 1 to 2 13 -1) 640 to 660-i are changed (as 144 in FIG. 1 153). Details are shown in the table in FIG. 14 and the table in FIG.

パケットの選択積算(ステップ1310)では、例えば、パケットデータがSIPとDIPとSportを含む時において、SIP>DIPの場合は、通信データ700-k内のパケット積算数C2 712-kにパケットデータ内の割合Rate 814の逆算値を、バイト積算数B2 712-kにパケットデータ内のサイズSize 801と割合Rate 814の逆算値の積を積算する。SIP≦DIPの場合は、通信データ700-k内のパケット積算数C4 714-kに、パケットデータ内の割合Rate 814の逆算値を、バイト積算数B4 724-kにパケットデータ内のサイズSize 801と割合Rate 814の逆算値の積を積算する。従って、C2 712-kとB2 722-kは、Port1 703-kを送信元ポートとしてIP1が送信したパケットの積算数と積算バイトを、C3 713-kとB3 723-kは、Port1 703-kを宛先ポートとしてIP1が送信したパケットの積算数と積算バイトを、C4 714-kとB4 724-kは、Port1 703-kを送信元ポートとしてIP1が受信したパケットの積算数と積算バイトを、C5 715-kとB5 725-kは、Port1 703-kを宛先ポートとしてIP1が受信したパケットの積算数と積算バイトを表す。   In packet selective integration (step 1310), for example, when the packet data includes SIP, DIP, and Sport, if SIP> DIP, the packet integration number C2 712-k in the communication data 700-k is included in the packet data. The product of the back-calculated value of the rate Rate 814 is multiplied by the product of the size Size 801 in the packet data and the back-calculated value of the rate Rate 814 to the byte count B2 712-k. In the case of SIP ≦ DIP, the packet accumulated number C4 714-k in the communication data 700-k is set to the reverse value of the rate Rate 814 in the packet data, the byte accumulated number B4 724-k is the size in the packet data Size 801 And the product of the reverse calculation of the rate Rate 814. Therefore, C2 712-k and B2 722-k are the cumulative number and cumulative bytes of packets transmitted by IP1 using Port1 703-k as the source port, and C3 713-k and B3 723-k are Port1 703-k. C4 714-k and B4 724-k are the cumulative number and cumulative bytes of packets received by IP1 with Port1 703-k as the source port. C5 715-k and B5 725-k represent the accumulated number and accumulated bytes of packets received by IP1 with Port1 703-k as the destination port.

以上、パケットの選択積算(ステップ1310)のような記録を行うことで、最大4種類のパケット積算数を、1つのエントリから得られるようになり、多種類の異常通信の探知が容易となる。   As described above, by performing recording such as packet selective integration (step 1310), a maximum of four types of packet integration numbers can be obtained from one entry, and it becomes easy to detect various types of abnormal communication.

また、選択積算の種類の記録(ステップ1311)では、C2=0,C3=0,C4=0,C5=0の状態や、C2+C3=0,C4+C5=0の状態、あるいは、C2+C5=0,C3+C4=0の状態から初めて積算した場合、抽出/記録履歴蓄積テーブル140内の選択積算の種類ICnt-Kind1-i(i=1〜213-1)640-iを1,2,3,4に、選択積算の種類IICnt-Kind2-i(i=1〜213-1)650-iを5,10に、選択積算の種類IIICnt-Kind3-i(i=1〜213-1)660-iを7,8に設定する(図1の144)。 In the record of the type of selective integration (step 1311), C2 = 0, C3 = 0, C4 = 0, C5 = 0, C2 + C3 = 0, C4 + C5 = 0, or C2 When integrating for the first time from the state of + C5 = 0, C3 + C4 = 0, select the type of integration ICnt-Kind1-i (i = 1 to 2 13 -1) 640-i in the extraction / record history accumulation table 140. 1, 2, 3 and 4, the selection integration type IICnt-Kind2-i (i = 1 to 2 13 -1) 650-i to 5,10, the selection integration type IIICnt-Kind3-i (i = 1 ~ 2 13 -1) Set 660-i to 7, 8 (144 in Fig. 1).

最後に、判定結果が衝突の場合の処理(ステップ1313)と合流して、組合せIDとパケットデータの情報108を、種類数記録部125に伝達して(ステップ1312)、通信データ記録部124が実行する通信データ記録処理1300を終了する。   Finally, in combination with the process when the determination result is a collision (step 1313), the combination ID and the packet data information 108 are transmitted to the type number recording unit 125 (step 1312), and the communication data recording unit 124 The communication data recording process 1300 to be executed is terminated.

種類数記録部125は、通信データ記録部124から組合せIDとパケットデータの情報108を受信すると、種類数記録処理1600を開始する。ここでは、抽出/記録履歴蓄積テーブル140内に記録されている生成済みアドレスID-Address-i(i=1〜213-1)610-iが定める、通信データ蓄積テーブル150内の領域に記載されているK0〜K23(k=1〜M)734〜757-kの値を変更する。K0 734-kは種類数の積算を行ったか否かを判定するための値であり、K1 735-kはIP1がパケットの送受信を行った通信相手数を、K2 736-kはIP1がパケットの送信を行った通信相手数を、K3 737-kはIP1にパケットを返信してきた通信相手数を、K4 738-kはIP1がPort1を送信元ポートとしてパケット送信を行った通信相手数を、K5 739-kはIP1がPort1を宛先ポートとしてパケット送信を行った通信相手数を、K6 740-kはIP1にPort1を送信元ポートとしてパケットを送信してきた通信相手数を、K7 741-kはIP1にPort1を宛先ポートとしてパケットを送信してきた通信相手数を、K8 742-kはパケット送受信に使用したポートの数を、K9 743-kはIP1がパケット送受信に使用したポートの数を、K10 744-kはIP1の通信相手がパケット送受信に使用したポートの数を、K11 745-kはIP1がパケット送信に使用したポートの数を、K12 746-kはIP1の通信相手がパケット受信に使用したポートの数を、K13 747-kはIP1がパケット受信に使用したポートの数を、K14 748-kはIP1の通信相手がパケット送信に使用したポートの数を、K15 749-kはIP1がパケットの送受信に使用したTCPフラグ番号の数を、K16 750-kはIP1がパケットの送信に使用したTCPフラグ番号の数を、K17 751-kはIP1がパケットの受信に使用したTCPフラグ番号の数を、K18 752-kはIP1がパケットの送受信に使用したInLineの種類数を、K19 753-kはIP1がパケットの送信に使用したInLineの種類数を、K20 754-kはIP1がパケットの受信に使用したInLineの種類数を、K21 755-kはIP1がパケットの送受信に使用したプロトコルの数を、K22 756-kはIP1がパケットの送信に使用したプロトコルの数を、K23 757-kはIP1がパケットの受信に使用したプロトコルの数を表す。IP2が指定されている場合は、IP1の通信相手がIP2に特定されている時の種類数を表す。抽出/記録履歴蓄積テーブル140から読み込んだ(図1の146)組合せIDに対応する判定結果Write-Kind-i(i=1〜213-1)620-iに応じて3通りの処理を行う(ステップ1601)。 Upon receiving the combination ID and packet data information 108 from the communication data recording unit 124, the type number recording unit 125 starts the type number recording process 1600. Here, the generated address ID-Address-i (i = 1 to 2 13 -1) 610-i recorded in the extraction / record history accumulation table 140 is described in an area in the communication data accumulation table 150. The values of K0 to K23 (k = 1 to M) 734 to 757-k are changed. K0 734-k is a value for determining whether or not the number of types has been accumulated, K1 735-k is the number of communication partners with which IP1 sent and received packets, K2 736-k K3 737-k is the number of communication partners that sent packets back to IP1, K4 738-k is the number of communication partners that IP1 sent packets with Port1 as the source port, K5 739-k is the number of communication partners that IP1 sent packets with Port1 as the destination port, K6 740-k is the number of communication partners that sent packets to IP1 with Port1 as the source port, and K7 741-k is IP1 K8 742-k indicates the number of ports used for packet transmission / reception, K9 743-k indicates the number of ports used by IP1 for packet transmission / reception, K10 744 -k is the number of ports used by IP1 peers to send and receive packets, K11 745-k is used by IP1 to send packets The number of ports, K12 746-k is the number of ports used by IP1 peers to receive packets, K13 747-k is the number of ports IP1 used to receive packets, and K14 748-k is IP1 communications K15 749-k is the number of TCP flag numbers that IP1 used to send and receive packets, and K16 750-k is the number of TCP flag numbers that IP1 used to send packets. K17 751-k is the number of TCP flag numbers that IP1 used to receive packets, K18 752-k is the number of InLine types that IP1 used to send and receive packets, and K19 753-k The number of InLine types used for transmission, K20 754-k is the number of InLine types IP1 used to receive packets, K21 755-k is the number of protocols IP1 used to send and receive packets, K22 756-k k is the number of protocols that IP1 used to send packets, and K23 757-k is the number of protocols that IP1 used to receive packets Represent. When IP2 is specified, it represents the number of types when the communication partner of IP1 is specified as IP2. Three types of processing are performed according to the determination result Write-Kind-i (i = 1 to 2 13 -1) 620-i corresponding to the combination ID read from the extraction / record history accumulation table 140 (146 in FIG. 1). (Step 1601).

判定結果Write-Kind-i 620-iが上書の場合は(ステップ1604)、パケットの種類数の減算処理(ステップ1605)を行った後で、パケットの種類数の積算処理(ステップ1606)を行う(図1の154)。判定結果果Write-Kind-i 620-iが一致の場合は(ステップ1602)、パケットの種類数の積算処理(ステップ1603)を行う(図1の154)。判定結果果Write-Kind-iが衝突の場合は(ステップ1607)何も行わない。判定結果がいずれの場合も、最後に種類数の記録が終了したことを通信データ記録部124に通知(図1の109)する(ステップ1608)。   When the judgment result Write-Kind-i 620-i is overwritten (step 1604), after performing the subtraction processing (step 1605) of the number of packet types, the integration processing (step 1606) of the number of packet types is performed. Perform (154 in FIG. 1). If the determination result Write-Kind-i 620-i matches (step 1602), the number of packet types is integrated (step 1603) (154 in FIG. 1). If the determination result Write-Kind-i is a collision (step 1607), nothing is done. Regardless of the determination result, the communication data recording unit 124 is notified (109 in FIG. 1) that the recording of the number of types has ended (step 1608).

判定結果果Write-Kind-i 620-iが上書の場合に行うパケットの種類数の減算処理(ステップ1605)の詳細を、図17〜22に示す。   Details of the subtraction processing (step 1605) of the number of packet types performed when the determination result Result Write-Kind-i 620-i is overwritten are shown in FIGS.

まず、抽出/記録履歴蓄積テーブル140から、組合せIDに対応する被上書き組合せの通信データOld-Data-i(i=1〜213-1)670-iと被上書き組合せID Overwrite-ID-i(i=1〜213-1)630-iを読み込む(図1の146)。 First, from the extraction / record history accumulation table 140, communication data Old-Data-i (i = 1 to 2 13 -1) 670-i of the overwritten combination corresponding to the combination ID and overwritten combination ID Overwrite-ID-i (I = 1 to 2 13 -1) 630-i is read (146 in FIG. 1).

被上書きID Overwrite-ID-iの下2ビット目が1であり、被上書き組合せがIP1とIP2を共に含む場合(ステップ1701)、IP2を除く被上書き組合せから処理1100を行ってアドレスを生成し(ステップ1702)、生成アドレス先記載の組合せがIP2を除く被上書き組合せと一致し、被上書き組合せの通信データOld-Data-i(i=1〜213-1)670-i内のK0 の下2ビット目が1である場合(ステップ1703)、組合せIDに対応する被上書き組合せの通信データOld-Data-i(i=1〜213-1)670-i内の被上書き組合せの積算値C1〜C5 711〜715-kを用いて、図17の処理1704を実施する。また、IP1を除く被上書き組合せから処理1100を行ってアドレスを生成し(ステップ1705)、生成アドレス先記載の組合せがIP1を除く被上書き組合せと一致し、被上書き組合せの通信データOld-Data-i(i=1〜213-1)670-i内のK0 の下1ビット目が1である場合(ステップ1706)、組合せIDに対応する被上書き通信データOld-Data-i(i=1〜213-1)670-i内の積算値C1〜C5 711〜715-kを用いて、図17の処理1707を実施する。以上の処理(ステップ1701〜1707)により、K1〜K7 735〜741-kの減算処理が行われる。 Overwrite-ID-i If the second bit of Overwrite-ID-i is 1, and the overwritten combination includes both IP1 and IP2 (step 1701), processing 1100 is performed from the overwritten combination excluding IP2 to generate an address. (Step 1702), the combination described in the generation address destination matches the overwritten combination excluding IP2, and the communication data Old-Data-i (i = 1 to 2 13 -1) of the overwritten combination of K0 in 670-i If the lower 2nd bit is 1 (step 1703), integration of overwritten combination in communication data Old-Data-i (i = 1 to 2 13 -1) 670-i of overwritten combination corresponding to combination ID The process 1704 of FIG. 17 is performed using the values C1 to C5 711 to 715-k. Also, processing 1100 is performed from the overwritten combination excluding IP1, and an address is generated (step 1705). The combination described in the generated address destination matches the overwritten combination excluding IP1, and communication data Old-Data- i (i = 1 to 2 13 -1) When the lower first bit of K0 in 670-i is 1 (step 1706), overwritten communication data Old-Data-i (i = 1) corresponding to the combination ID ˜2 13 -1) The processing 1707 of FIG. 17 is performed using the integrated values C1 to C5 711 to 715-k in 670-i. By the above processing (steps 1701 to 1707), the subtraction processing of K1 to K7 735 to 741-k is performed.

被上書き組合せID Overwrite-ID-i 630-iの下1/2ビット目と下3/4ビット目が1であり、被上書き組合せがIP1とPort1を含む場合(ステップ1801)、Port1を除く被上書き組合せから処理1100を行ってアドレスを生成し(ステップ1802)、生成アドレス先記載の組合せがPort1を除く被上書き組合せと一致し、被上書き組合せの通信データOld-Data-i(i=1〜213-1)670-i内のK0 の下3ビット目が1である場合(ステップ1803)、組合せIDに対応する被上書き通信データOld-Data-i(i=1〜213-1)670-i内の被上書き組合せの積算値C1〜5 711〜715-kを用いて、図18の処理1804を実施する。 Overwrite combination ID Overwrite-ID-i When the lower 1/2 bit and lower 3/4 bit are 1 and the overwritten combination includes IP1 and Port1 (step 1801), Processing 1100 is performed from the overwritten combination to generate an address (step 1802), and the combination described in the generated address matches the overwritten combination excluding Port1, and communication data Old-Data-i (i = 1 to 2 13 -1) If the lower third bit of K0 in 670-i is 1 (step 1803), overwritten communication data Old-Data-i (i = 1 to 2 13 -1) corresponding to the combination ID The processing 1804 in FIG. 18 is performed using the integrated values C1 to 5711 to 715-k of the overwritten combinations in 670-i.

被上書き組合せID Overwrite-ID-i 630-iの下1/2ビット目と下4ビット目が1であり、被上書き組合せがIP1とPort2を含む場合(ステップ1901)、Port2を除く被上書き組合せから処理1100を行ってアドレスを生成し(ステップ1902)、生成アドレス先記載の組合せがPort2を除く被上書き組合せと一致し、被上書き組合せの通信データOld-Data-i(i=1〜213-1)670-i内のK0 の下4ビット目が1である場合(ステップ1903)、組合せIDに対応する被上書き通信データOld-Data-i(i=1〜213-1)670-i内の被上書き組合せの積算値C1〜C5 711〜715-kを用いて、図19の処理1904を実施する。以上の処理(ステップ1801〜1804とステップ1901〜1904)により、K8〜K14 742〜748-kの減算処理が行われる。 Overwritten combination ID Overwrite-ID-i When the lower 1/2 bit and lower 4th bit are 1 and the overwritten combination includes IP1 and Port2 (step 1901), overwritten combination excluding Port2 1100 is performed to generate an address (step 1902), the combination described in the generated address matches the overwritten combination excluding Port2, and the overwritten combination communication data Old-Data-i (i = 1 to 2 13) -1) When the lower 4th bit of K0 in 670-i is 1 (step 1903), overwritten communication data Old-Data-i (i = 1 to 2 13 -1) 670- corresponding to the combination ID The processing 1904 of FIG. 19 is performed using the integrated values C1 to C5 711 to 715-k of the overwritten combinations in i. By the above processing (steps 1801 to 1804 and steps 1901 to 1904), the subtraction processing of K8 to K14 742 to 748-k is performed.

被上書き組合せID Overwrite-ID-iの下1/2ビット目と下5ビット目が1であり、被上書き組合せがIP1とFlagを含む場合(ステップ2001)、Flagを除く被上書き組合せから処理1100を行ってアドレスを生成し(ステップ2002)、生成アドレス先記載の組合せがFlagを除く被上書き組合せと一致し、被上書き組合せの通信データOld-Data-i(i=1〜213-1)670-i内のK0 の下5ビット目が1である場合(ステップ2003)、組合せIDに対応する被上書き通信データOld-Data-i(i=1〜213-1)670-i内の積算値C1〜C5 711〜715-kを用いて、図20の処理2004を実施する。以上の処理(ステップ2001〜2004)により、K15〜17 749〜751-kの減算処理が行われる。 Overwritten combination ID Overwrite-ID-i If the lower 1/2 bit and the lower 5th bit are 1, and the overwritten combination includes IP1 and Flag (step 2001), processing from overwritten combination excluding Flag 1100 To generate an address (step 2002), the combination described in the generation address matches the overwritten combination excluding Flag, and communication data Old-Data-i (i = 1 to 2 13 -1) of the overwritten combination When the lower fifth bit of K0 in 670-i is 1 (step 2003), overwritten communication data Old-Data-i (i = 1 to 2 13 -1) corresponding to the combination ID in 670-i Processing 2004 in FIG. 20 is performed using the integrated values C1 to C5 711 to 715-k. By the above processing (steps 2001 to 2004), the subtraction processing of K15 to 17 749 to 751-k is performed.

被上書き組合せID Overwrite-ID-iの下1/2ビット目と下7ビット目が1であり、被上書き組合せがIP1とProtoを含む場合(ステップ2101)、Protoを除く被上書き組合せから処理1100を行ってアドレスを生成し(ステップ2102)、生成アドレス先記載の組合せがProtoを除く被上書き組合せと一致し、被上書き組合せの通信データOld-Data-i(i=1〜213-1)670-i内のK0 の下7ビット目が1である場合(ステップ2103)、組合せIDに対応する被上書き通信データOld-Data-i(i=1〜213-1)内の積算値C1〜C5 711〜715-kを用いて、図21の処理2104を実施する。以上の処理(ステップ2101〜2104)により、K21〜23 755〜757-kの減算処理が行われる。 Overwritten combination ID Overwrite-ID-i If the lower 1/2 bit and the lower 7th bit are 1, and the overwritten combination includes IP1 and Proto (step 2101), processing from overwritten combination excluding Proto 1100 To generate an address (step 2102), the combination described in the generated address matches the overwritten combination excluding Proto, and the overwritten combination communication data Old-Data-i (i = 1 to 2 13 -1) If the lower 7th bit of K0 in 670-i is 1 (step 2103), integrated value C1 in overwritten communication data Old-Data-i (i = 1 to 2 13 -1) corresponding to the combination ID The process 2104 of FIG. 21 is performed using ~ C5 711 to 715-k. By the above processing (steps 2101 to 2104), the subtraction processing of K21 to 23755 to 757-k is performed.

被上書き組合せID Overwrite-ID-iの下1/2ビット目と下6ビット目が1であり、被上書き組合せがIP1とInLineを含む場合(ステップ2201)、InLineを除く被上書き組合せから処理1100を行ってアドレスを生成し(ステップ2202)、生成アドレス先記載の組合せがInLineを除く被上書き組合せと一致し、被上書き組合せの通信データOld-Data-i(i=1〜213-1)670-i内のK0 の下6ビット目が1である場合(ステップ2203)、組合せIDに対応する被上書き通信データOld-Data-i(i=1〜213-1)内の積算値C1〜C5を用いて、図22の処理2204を実施する。以上の処理(ステップ2201〜2204)により、K18〜20 752〜754-kの減算処理が行われる。 Overwritten combination ID Overwrite-ID-i If the lower 1/2 bit and the lower 6th bit are 1, and the overwritten combination includes IP1 and InLine (step 2201), processing from overwritten combination excluding InLine 1100 To generate an address (step 2202), the combination described in the generation address destination matches the overwritten combination excluding InLine, and the overwritten combination communication data Old-Data-i (i = 1 to 2 13 -1) When the lower 6th bit of K0 in 670-i is 1 (step 2203), integrated value C1 in overwritten communication data Old-Data-i (i = 1 to 2 13 -1) corresponding to the combination ID The process 2204 of FIG. 22 is implemented using ~ C5. By the above processing (steps 2201 to 2204), the subtraction processing of K18 to 20752 to 754-k is performed.

以上により、パケットの種類数の減算処理1605が終了し、次に、パケットの種類数の積算処理1606を行う。判定結果が上書の場合に行うパケットの種類数の積算処理(ステップ1606)の詳細を、図23〜28に示す。なお、これらの図とこれらの図が示す処理を説明する以降の文章において、組合せとは、処理1000によって整列済みの組合せのことを表すものとする。   Thus, the packet type number subtraction process 1605 is completed, and then the packet type number accumulation process 1606 is performed. Details of the process of integrating the number of packet types (step 1606) performed when the determination result is “Overwrite” are shown in FIGS. It should be noted that in these drawings and the subsequent text describing the processing shown in these drawings, the combination represents a combination that has been aligned by the processing 1000.

上書判定の組合せがIP1とIP2を含む場合(ステップ2301)、抽出/記録履歴蓄積テーブル140から、上書判定の組合せからIP2を除く組合せの判定結果Write-Kind-i(i=1〜213-1)620-iを読み込み、IP2を除く組合せの判定結果Write-Kind-i (i=1〜213−1)620-iが一致、または上書だった場合(ステップ2302)、IP2を除く組合せから処理1100を行ってアドレスを生成し(ステップ2303)、抽出/記録履歴蓄積テーブル140内の上書判定の組合せの積算種類ICnt-Kind1-i 640-iと積算種類IICnt-Kind2-i 650-iを用いて、図23の処理2304を実施し、生成したアドレスに記録されている、IP2を除く組合せの種類数K1〜K7 735〜741-k(k=1〜M)を積算する処理を行う。また、抽出/記録履歴蓄積テーブル140から、上書判定の組合せからIP1を除いた組合せの判定結果620-i(i=1〜213-1)を読み込み、IP1を除く組合せの判定結果Write-Kind-i (i=1〜213−1)620-iが一致、または上書だった場合(ステップ2305)、IP1を除く組合せから処理1100を行ってアドレスを生成し(ステップ2306)、抽出/記録履歴蓄積テーブル140内の上書判定の組合せの積算種類ICnt-Kind1-i 640-iと積算種類IICnt-Kind2-i 650-iを用いて、図23の処理2307を実施し、生成したアドレスに記録されている、IP1を除く組合せの種類数K1〜K7 735〜741-k(k=1〜M)を積算する処理を行う。 When the combination of overwriting judgment includes IP1 and IP2 (step 2301), the judgment result Write-Kind-i (i = 1 to 2) of the combination excluding IP2 from the overwriting judgment combination from the extraction / record history accumulation table 140 13 -1) Reads 620-i and determines the combination judgment result except IP2 Write-Kind-i (i = 1 to 2 13 -1) If 620-i matches or is overwritten (step 2302), IP2 The processing 1100 is performed from the combination excluding the address to generate an address (step 2303), and the integration type ICnt-Kind1-i 640-i and the integration type IICnt-Kind2- Perform processing 2304 in Fig. 23 using i 650-i and accumulate the number of types of combinations K1 to K7 735 to 741-k (k = 1 to M) recorded in the generated address, excluding IP2 Perform the process. Also, from the extraction / record history accumulation table 140, the combination judgment result 620-i (i = 1 to 2 13 -1) excluding IP1 from the overwriting judgment combination is read, and the judgment result Write- Kind-i (i = 1 to 2 13 -1) If 620-i matches or is overwritten (step 2305), processing 1100 is performed from the combination except IP1 to generate an address (step 2306) and extraction / The processing 2307 of FIG. 23 was generated using the integrated type ICnt-Kind1-i 640-i and the integrated type IICnt-Kind2-i 650-i of the combination of overwriting judgment in the record history accumulation table 140. The number of types of combinations K1 to K7 735 to 741-k (k = 1 to M) recorded in the address, excluding IP1, is integrated.

上書判定の組合せがIP1とPort1を含む場合(ステップ2401)、抽出/記録履歴蓄積テーブル140から、上書判定の組合せからPort1を除いた組合せの判定結果Write-Kind-i(i=1〜213-1)620-iを読み込み、Port1を除く組合せの判定結果Write-Kind-i 620-iが一致、または上書だった場合(ステップ2402)、Port1を除く組合せから処理1100を行ってアドレスを生成し(ステップ2403)、抽出/記録履歴蓄積テーブル140内の上書判定の組合せの積算種類I Cnt-Kind1-i 640-iと積算種類III Cnt-Kind3-i 660-iを用いて、図24の処理2404を実施し、生成したアドレスに記録されている、Port1を除く組合せの種類数K8〜K14 742〜748-k(k=1〜M)を積算する処理を行う。 When the overwrite determination combination includes IP1 and Port1 (step 2401), the extraction / record history accumulation table 140 determines the combination determination result Write-Kind-i (i = 1 to 2 13 -1) When 620-i is read and the judgment result Write-Kind-i 620-i of the combination excluding Port1 matches or is overwritten (step 2402), processing 1100 is performed from the combination excluding Port1. An address is generated (step 2403), and the summation type I Cnt-Kind1-i 640-i and summation type III Cnt-Kind3-i 660-i of the overwriting judgment combination in the extraction / record history accumulation table 140 are used. Then, the process 2404 of FIG. 24 is performed, and a process of accumulating the number of types of combinations K8 to K14 742 to 748-k (k = 1 to M) except for Port 1 recorded in the generated address is performed.

上書判定の組合せがIP1とPort2を含む場合(ステップ2501)、抽出/記録履歴蓄積テーブル140から、上書判定の組合せからPort2を除いた組合せの判定結果Write-Kind-i(i=1〜213-1)620-iを読み込み、Port2を除く組合せの判定結果Write-Kind-i 620-iが一致、または上書だった場合(ステップ2502)、Port2を除く組合せから処理1100を行ってアドレスを生成し(ステップ2503)、抽出/記録履歴蓄積テーブル140内の上書判定の組合せの積算種類ICnt-Kind1-i 640-iと積算種類III Cnt-Kind3-i 660-iを用いて、図25の処理2504を実施し、生成したアドレスに記録されている、Port2を除く組合せの種類数K8〜K14 742〜748-k(k=1〜M)を積算する処理を行う。 When the combination of overwriting judgment includes IP1 and Port2 (step 2501), the judgment result Write-Kind-i (i = 1 to from the extraction / record history accumulation table 140 excluding Port2 from the overwriting judgment combination) 2 13 -1) If 620-i is read and the judgment result Write-Kind-i 620-i except Port2 matches or is overwritten (step 2502), perform processing 1100 from the combination except Port2 An address is generated (step 2503), and using the integration type ICnt-Kind1-i 640-i and the integration type III Cnt-Kind3-i 660-i of the overwriting judgment combination in the extraction / record history accumulation table 140, The processing 2504 in FIG. 25 is performed, and the processing of accumulating the number of types of combinations K8 to K14 742 to 748-k (k = 1 to M) except for Port2 recorded in the generated address is performed.

上書判定の組合せがIP1とFlagを含む場合(ステップ2601)、抽出/記録履歴蓄積テーブル140から、上書判定の組合せからFlagを除いた組合せの判定結果Write-Kind-i(i=1〜213-1)620-iを読み込み、Flagを除く組合せの判定結果Write-Kind-i 620-iが一致、または上書だった場合(ステップ2602)、Flagを除く上書判定の組合せから処理1100を行ってアドレスを生成し(ステップ2603)、抽出/記録履歴蓄積テーブル140内の上書判定の組合せの積算種類ICnt-Kind1-i 640-iと積算種類IICnt-Kind2-i 650-iを用いて、図26の処理2604を実施し、生成したアドレスに記録されている、Flagを除く組合せの種類数K15〜K17 749〜751-k(k=1〜M)を積算する処理を行う。 When the combination of overwriting determination includes IP1 and Flag (step 2601), the determination result of the combination obtained by removing Flag from the combination of overwriting determination from the extraction / record history accumulation table 140 Write-Kind-i (i = 1 to 2 13 -1) Reading 620-i, and if the judgment result Write-Kind-i 620-i except for Flag matches or is overwritten (step 2602), processing from the combination of overwriting judgment excluding Flag 1100 is performed to generate an address (step 2603), and the integration type ICnt-Kind1-i 640-i and the integration type IICnt-Kind2-i 650-i of the combination of overwriting judgment in the extraction / record history accumulation table 140 are set. 26, the process 2604 of FIG. 26 is performed, and a process of integrating the number of types of combinations K15 to K17 749 to 751-k (k = 1 to M) recorded in the generated address, excluding Flag, is performed.

上書判定の組合せがIP1とProtoを含む場合(ステップ2701)、抽出/記録履歴蓄積テーブル140から、上書判定の組合せからProtoを除いた組合せの判定結果Write-Kind-i(i=1〜213-1)620-iを読み込み、Protoを除く組合せの判定結果Write-Kind-i 620-iが一致、または上書だった場合(ステップ2702)、Protoを除く上書判定の組合せから処理1100を行ってアドレスを生成し(ステップ2703)、抽出/記録履歴蓄積テーブル140内の上書判定の組合せの積算種類ICnt-Kind1-i 640-iと積算種類IICnt-Kind2-i 650-iを用いて、図27の処理2704を実施し、生成したアドレスに記録されている、Protoを除く組合せの種類数K21〜K23 755〜757-k(k=1〜M)を積算する処理を行う。 When the combination of overwriting determination includes IP1 and Proto (step 2701), from the extraction / record history accumulation table 140, the determination result Write-Kind-i (i = 1 to 2 13 -1) When 620-i is read and judgment result Write-Kind-i 620-i matches or is overwritten (step 2702), processing is performed from the overwriting judgment combination excluding Proto 1100 is performed to generate an address (step 2703), and the integration type ICnt-Kind1-i 640-i and the integration type IICnt-Kind2-i 650-i of the combination of overwriting judgment in the extraction / record history accumulation table 140 are set. 27, the process 2704 of FIG. 27 is performed, and a process of accumulating the number of types of combinations K21 to K23 755 to 757-k (k = 1 to M) recorded in the generated address, excluding Proto, is performed.

上書判定の組合せがIP1とInLineを含む場合(ステップ2801)、抽出/記録履歴蓄積テーブル140から、上書判定の組合せからInLineを除いた組合せの判定結果Write-Kind-i(i=1〜213-1)620-iを読み込み、InLineを除く組合せの判定結果Write-Kind-i 620-iが一致、または上書だった場合(ステップ2802)、InLineを除く上書判定の組合せから処理1100を行ってアドレスを生成し(ステップ2803)、抽出/記録履歴蓄積テーブル140内の上書判定の組合せの積算種類ICnt-Kind1-i 640-iと積算種類IICnt-Kind2-i 650-iを用いて、図28の処理2804を実施し、生成したアドレスに記録されている、InLineを除く組合せの種類数K18〜K20 752〜754-k(k=1〜M)を積算する処理を行う。 If the overwriting determination combination includes IP1 and InLine (step 2801), the extraction / record history accumulation table 140 determines the combination determination result Write-Kind-i (i = 1 to 2 13 -1) Reading 620-i, if the judgment result Write-Kind-i 620-i except for InLine matches or is overwritten (step 2802), processing from the combination of overwriting judgment excluding InLine 1100 is performed to generate an address (step 2803), and the integration type ICnt-Kind1-i 640-i and the integration type IICnt-Kind2-i 650-i of the combination of overwriting judgment in the extraction / record history accumulation table 140 are set. 28, the process 2804 of FIG. 28 is performed, and the process of accumulating the number of types of combinations K18 to K20 752 to 754-k (k = 1 to M) recorded in the generated address, excluding InLine, is performed.

以上により、判定結果が上書の場合に行うパケットの種類数の減算処理1605とパケットの種類数の積算処理1606が終了する。判定結果が一致の場合は、パケットの種類数の積算処理(ステップ1603)のみを行う。詳細を、図29〜35に示す。なお、これらの図とこれらの図が示す処理を説明する以降の文章において、組合せは、整列済み組合せのことを表すものとする。   Thus, the subtraction processing 1605 for the number of types of packets and the integration processing 1606 for the number of types of packets that are performed when the determination result is “Overwrite” are completed. If the determination results match, only the number of packet types is integrated (step 1603). Details are shown in FIGS. It should be noted that in these drawings and the subsequent text describing the processing shown in these drawings, the combination represents an aligned combination.

一致判定の組合せがIP1とIP2を含む場合(ステップ2901)、一致判定の組合せからIP2を除く組合せから処理1100を行ってアドレスを生成し(ステップ2902)、抽出/記録履歴蓄積テーブル140から、一致判定の組合せからIP2を除いた組合せの判定結果Write-Kind-i(i=1〜213-1)620-iを読み込む。IP2を除く一致判定の組合せの判定結果Write-Kind-i 620-iが上書だった場合(ステップ2903)、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図29の処理2904を実施し、生成したアドレスに記録されている、IP2を除く一致判定の組合せの種類数K1〜K7 735〜741-k(k=1〜M)を積算する処理を行う。IP2を除く一致判定の組合せの判定結果Write-Kind-i 620-iが一致だった場合(ステップ2905)、一致判定の組合せのK0 734-kの下2ビット目が0か否かの判定を行い(ステップ2906)、0の場合は種類数の積算が行われていないため、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図29の処理2907を実施し、生成したアドレスに記録されている、IP2を除く一致判定の組合せの種類数K1〜K7 735〜741-k(k=1〜M)を積算する処理を行う。1の場合は種類数の積算がすでに行われているため、抽出/記録履歴蓄積テーブル140内の一致判定の組合せの積算種類ICnt-Kind1-i 640-iと積算種類IICnt-Kind2-i 650-iを用いて、図29の処理2908を実施し、生成したアドレスに記録されている、IP2を除く一致判定の組合せの種類数K2〜K7 736〜741-k(k=1〜M)を追加積算する処理を行う。 If the match judgment combination includes IP1 and IP2 (step 2901), processing 1100 is performed from the match judgment combination excluding IP2 to generate an address (step 2902), and the match is obtained from the extraction / record history accumulation table 140. Read the judgment result Write-Kind-i (i = 1 to 2 13 -1) 620-i of the combination obtained by excluding IP2 from the judgment combination. When the judgment result Write-Kind-i 620-i of the match judgment combination excluding IP2 is overwritten (step 2903), the integrated values C1 to C5 711 to 715-in the communication data 700-k of the match judgment combination 29, the processing 2904 in FIG. 29 is performed, and the number of types of match determination combinations K1 to K7 735 to 741-k (k = 1 to M) recorded in the generated address is calculated. Perform the process. If the result of the match judgment combination excluding IP2 is Write-Kind-i 620-i (step 2905), it is judged whether the second bit of K0 734-k of the match judgment combination is 0 or not. (Step 2906). Since the number of types is not accumulated in the case of 0, the accumulated values C1 to C5 711 to 715-k in the communication data 700-k of the match determination combination are used as shown in FIG. Processing 2907 is executed, and processing for accumulating the number of types K1 to K7 735 to 741-k (k = 1 to M) of match determination combinations excluding IP2 recorded in the generated address is performed. In the case of 1, since the number of types has already been integrated, the integration type ICnt-Kind1-i 640-i and the integration type IICnt-Kind2-i 650-i of the combination determination combination in the extraction / record history accumulation table 140 Using i, execute the processing 2908 of Fig. 29 and add the number of types of match judgment combinations excluding IP2 K2 to K7 736 to 741-k (k = 1 to M) recorded in the generated address Perform the process of accumulating.

一致判定の組合せがIP1とIP2を含む場合(ステップ3001)、一致判定の組合せからIP1を除く組合せから処理1100を行ってアドレスを生成し(ステップ3002)、抽出/記録履歴蓄積テーブル140から、一致判定の組合せからIP1を除いた組合せの判定結果Write-Kind-i(i=1〜213-1)620-iを読み込む。IP1を除く一致判定の組合せの判定結果Write-Kind-i 620-iが上書だった場合(ステップ3003)、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図30の処理3004を実施し、生成したアドレスに記録されている、IP1を除く一致判定の組合せの種類数K1〜K7 735〜741-k(k=1〜M)を積算する処理を行う。IP1を除く一致判定の組合せの判定結果Write-Kind-i 620-iが一致だった場合(ステップ3005)、一致判定の組合せのK0 734-kの下1ビット目が0か否かの判定を行い(ステップ3006)、0の場合は種類数の積算が行われていないため、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図30の処理3007を実施し、生成したアドレスに記録されている、IP1を除く一致判定の組合せの種類数K1〜K7 735〜741-k(k=1〜M)を積算する処理を行う。1の場合は種類数の積算がすでに行われているため、抽出/記録履歴蓄積テーブル140内の一致判定の組合せの積算種類ICnt-Kind1-i i 640-iと積算種類IICnt-Kind2-i 650-iを用いて、図30の処理3008を実施し、生成したアドレスに記録されている、IP1を除く一致判定の組合せの種類数K2〜K7 736〜741-k(k=1〜M)を追加積算する処理を行う。 If the match judgment combination includes IP1 and IP2 (step 3001), processing 1100 is performed from the match judgment combination excluding IP1 to generate an address (step 3002), and a match is found from the extraction / record history storage table 140. Read the judgment result Write-Kind-i (i = 1 to 2 13 -1) 620-i of the combination obtained by excluding IP1 from the judgment combination. If the judgment result Write-Kind-i 620-i except for IP1 is overwritten (step 3003), the accumulated values C1 to C5 711 to 715- in the communication data 700-k of the matching judgment combination 30 is executed using k, and the number of types of match determination combinations K1 to K7 735 to 741-k (k = 1 to M), excluding IP1, recorded in the generated address is integrated Perform the process. If the judgment result Write-Kind-i 620-i except for IP1 matches (step 3005), it is judged whether the lower first bit of K0 734-k of the matching judgment combination is 0. (Step 3006). If the value is 0, the number of types is not accumulated. Therefore, using the accumulated values C1 to C5 711 to 715-k in the communication data 700-k of the match determination combination, FIG. Processing 3007 is performed, and processing for accumulating the number of types K1 to K7 735 to 741-k (k = 1 to M) of match determination combinations excluding IP1 recorded in the generated address is performed. In the case of 1, since the number of types has already been accumulated, the integration type ICnt-Kind1-i i 640-i and the integration type IICnt-Kind2-i 650 of the combination determination combination in the extraction / record history accumulation table 140 -i is used to execute the processing 3008 of FIG. 30, and the number of types of match determination combinations K2 to K7 736 to 741-k (k = 1 to M), excluding IP1, recorded in the generated address Perform additional integration.

一致判定の組合せがIP1とPort1を含む場合(ステップ3101)、一致する組合せからPort1を除く組合せから処理1100を行ってアドレスを生成し(ステップ3102)、抽出/記録履歴蓄積テーブル140から、一致判定の組合せからPort1を除いた組合せの判定結果Write-Kind-i(i=1〜213-1)620-iを読み込む。Port1を除く一致判定の組合せの判定結果Write-Kind-i (i=1〜213−1)620-iが上書だった場合(ステップ3103)、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図31の処理3104を実施し、生成したアドレスに記録されている、Port1を除く一致判定の組合せの種類数K8〜K14 742〜748-k(k=1〜M)を積算する処理を行う。Port1を除く一致判定の組合せの判定結果が一致だった場合(ステップ3105)、一致判定を行った組合せのK0 734-kの下3ビット目が0か否かの判定を行い(ステップ3106)、0の場合は種類数の積算が行われていないため、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図31の処理3107を実施し、生成したアドレスに記録されている、Port1を除く一致判定の組合せのK8〜K14 742〜748-k(k=1〜M)を積算する処理を行う。1の場合は種類数の積算がすでに行われているため、抽出/記録履歴蓄積テーブル140内の一致判定の組合せの積算種類ICnt-Kind1-i 640-iと積算種類IIICnt-Kind3-i 660-iを用いて、図31の処理3108を実施し、生成したアドレスに記録されている、Port1を除く一致判定の組合せの種類数K9〜K14 743〜748-k(k=1〜M)を積算する処理を行う。 If the match determination combination includes IP1 and Port1 (step 3101), processing 1100 is performed from the combination that excludes port1 from the matching combination to generate an address (step 3102), and the match determination is made from the extraction / record history storage table 140 The combination determination result Write-Kind-i (i = 1 to 2 13 -1) 620-i obtained by removing Port1 from the combination is read. If the judgment result Write-Kind-i (i = 1 to 213-1) 620-i is overwritten (step 3103) in the match judgment combination excluding Port 1, the match judgment combination communication data 700-k Using the integrated values C1 to C5 711 to 715-k, the processing 3104 of FIG. 31 is performed, and the number of types of match determination combinations excluding Port 1 recorded in the generated address K8 to K14 742 to 748-k A process of integrating (k = 1 to M) is performed. If the judgment result of the match judgment combination excluding Port1 is a match (Step 3105), it is judged whether or not the lower third bit of K0 734-k of the combination that has undergone the match judgment is 0 (Step 3106) In the case of 0, since the number of types is not accumulated, the process 3107 of FIG. 31 is performed using the accumulated values C1 to C5 711 to 715-k in the communication data 700-k of the match determination combination, A process of accumulating K8 to K14 742 to 748-k (k = 1 to M), which is a combination of coincidence determinations excluding Port1, recorded at the generated address is performed. In the case of 1, since the number of types has already been accumulated, the integration type ICnt-Kind1-i 640-i and the integration type IIICnt-Kind3-i 660- of the combination judgment combination in the extraction / record history accumulation table 140 31 is performed using i, and the number of types of match determination combinations K9 to K14 743 to 748-k (k = 1 to M) other than Port 1 recorded in the generated address is integrated Perform the process.

一致判定の組合せがIP1とPort2を含む場合(ステップ3201)、一致判定の組合せからPort2を除く組合せから処理1100を行ってアドレスを生成し(ステップ3202)、抽出/記録履歴蓄積テーブル140から、一致判定の組合せからPort2を除いた組合せの判定結果Write-Kind-i(i=1〜213-1)620-iを読み込む。Port2を除く一致判定の組合せの判定結果Write-Kind-i (i=1〜213−1)620-iが上書だった場合(ステップ3203)、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図32の処理3204を実施し、生成したアドレスに記録されている、Port2を除く一致判定の組合せの種類数K8〜K14 742〜748-k(k=1〜M)を積算する処理を行う。Port2を除く組合せの判定結果が一致だった場合(ステップ3205)、一致判定を行った組合せのK0 734-kの下4ビット目が0か否かの判定を行い(ステップ3206)、0の場合は種類数の積算が行われていないため、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図32の処理3207を実施し、生成したアドレスに記録されている、Port2を除く一致判定の組合せのK8〜K14 742〜748-k(k=1〜M)を積算する処理を行う。1の場合は種類数の積算がすでに行われているため、抽出/記録履歴蓄積テーブル140内の一致判定の組合せの積算種類ICnt-Kind1-i 640-iと積算種類IIICnt-Kind3-i 660-iを用いて、図32の処理3208を実施し、生成したアドレスに記録されている、Port2を除く一致判定の組合せの種類数K9〜K14 743〜748-k(k=1〜M)を積算する処理を行う。 If the match judgment combination includes IP1 and Port2 (step 3201), processing 1100 is performed from the match judgment combination excluding Port2 to generate an address (step 3202), and a match is found from the extraction / record history accumulation table 140. Read the judgment result Write-Kind-i (i = 1 to 2 13 -1) 620-i of the combination obtained by removing Port 2 from the judgment combination. When the judgment result Write-Kind-i (i = 1 to 213-1) 620-i is overwritten (step 3203) in the communication data 700-k of the coincidence judgment combination, except for the port 2 Using the integrated values C1 to C5 711 to 715-k, the processing 3204 of FIG. 32 is performed, and the number of types of match determination combinations excluding Port 2 recorded in the generated address K8 to K14 742 to 748-k A process of integrating (k = 1 to M) is performed. When the judgment result of the combination excluding Port2 is a match (Step 3205), it is judged whether or not the lower 4th bit of K0 734-k of the combination subjected to the match judgment is 0 (Step 3206). Since the number of types has not been accumulated, the process 3207 in FIG. 32 is performed using the accumulated values C1 to C5 711 to 715-k in the communication data 700-k of the match determination combination, and the generated address The process of accumulating K8 to K14 742 to 748-k (k = 1 to M) of the match determination combinations excluding Port 2 recorded in (1) is performed. In the case of 1, since the number of types has already been accumulated, the integration type ICnt-Kind1-i 640-i and the integration type IIICnt-Kind3-i 660- of the combination judgment combination in the extraction / record history accumulation table 140 32 is executed using i, and the number of types of match determination combinations K9 to K14 743 to 748-k (k = 1 to M) excluding Port 2 recorded in the generated address is integrated Perform the process.

一致判定の組合せがIP1とFlagを含む場合(ステップ3301)、一致判定の組合せからFlagを除く組合せから処理1100を行ってアドレスを生成し(ステップ3302)、抽出/記録履歴蓄積テーブル140から、一致判定の組合せからFlagを除いた組合せの判定結果Write-Kind-i(i=1〜213-1)620-iを読み込む。Flagを除く一致判定の組合せの判定結果Write-Kind-i (i=1〜213−1)620-iが上書だった場合(ステップ3303)、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図33の処理3304を実施し、生成したアドレスに記録されている、Flagを除く一致判定の組合せの種類数K15〜K17 749〜751-k(k=1〜M)を積算する処理を行う。Flagを除く一致判定の組合せの判定結果が一致だった場合(ステップ3305)、一致判定の組合せのK0 734-kの下5ビット目が0か否かの判定を行い(ステップ3306)、0の場合は種類数の積算が行われていないため、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図33の処理3307を実施し、生成したアドレスに記録されている、Flagを除く一致判定の組合せの種類数K15〜K17 749〜751-k(k=1〜M)を積算する処理を行う。1の場合は種類数の積算がすでに行われているため、抽出/記録履歴蓄積テーブル140内の一致判定の組合せの積算種類ICnt-Kind1-i 640-iと積算種類IICnt-Kind2-i 650-iを用いて、図33の処理3308を実施し、生成したアドレスに記録されている、Flagを除く一致判定の組合せの種類数K16〜K17 750〜751-k(k=1〜M)を積算する処理を行う。 If the match judgment combination includes IP1 and Flag (step 3301), processing 1100 is performed from the match judgment combination excluding Flag to generate an address (step 3302), and the match is obtained from the extraction / record history accumulation table 140. A combination determination result Write-Kind-i (i = 1 to 2 13 -1) 620-i obtained by removing Flag from the combination of determinations is read. If the judgment result Write-Kind-i (i = 1 to 213-1) 620-i is overwritten (step 3303), the match judgment combination excluding the flag contains the match judgment combination communication data 700-k. Using the integrated values C1 to C5 711 to 715-k, the processing 3304 of FIG. 33 is performed, and the number of types of match determination combinations excluding Flag recorded in the generated address K15 to K17 749 to 751-k A process of integrating (k = 1 to M) is performed. If the determination result of the match determination combination excluding Flag is a match (step 3305), it is determined whether the lower fifth bit of K0 734-k of the match determination combination is 0 (step 3306). In this case, since the number of types has not been integrated, processing 3307 in FIG. 33 is performed using the integrated values C1 to C5 711 to 715-k in the communication data 700-k of the match determination combination. Processing for accumulating the number of types K15 to K17 749 to 751-k (k = 1 to M) of the combinations of match determinations excluding Flag recorded in the address is performed. In the case of 1, since the number of types has already been integrated, the integration type ICnt-Kind1-i 640-i and the integration type IICnt-Kind2-i 650-i of the combination determination combination in the extraction / record history accumulation table 140 Using i, execute processing 3308 in Fig. 33, and accumulate the number of types of match determination combinations K16 to K17 750 to 751-k (k = 1 to M), excluding Flag, recorded in the generated address Perform the process.

一致判定の組合せがIP1とProtoを含む場合(ステップ3401)、一致判定の組合せからProtoを除く組合せから処理1100を行ってアドレスを生成し(ステップ3402)、抽出/記録履歴蓄積テーブル140から、一致判定の組合せからProtoを除いた組合せの判定結果Write-Kind-i(i=1〜213−1)620-iを読み込む。Protoを除く一致判定の組合せの判定結果Write-Kind-i (i=1〜213−1)620-iが上書だった場合(ステップ3403)、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図34の処理3404を実施し、生成したアドレスに記録されている、Protoを除く一致判定の組合せの種類数K21〜K23 755〜757-k(k=1〜M)を積算する処理を行う。Protoを除く組合せの判定結果が一致だった場合(ステップ3405)、一致判定の組合せのK0 734-kの下7ビット目が0か否かの判定を行い(ステップ3406)、0の場合は種類数の積算が行われていないため、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図34の処理3407を実施し、生成したアドレスに記録されている、Protoを除く一致判定の組合せのK21〜K23 755〜757-k(k=1〜M)を積算する処理を行う。1の場合は種類数の積算がすでに行われているため、抽出/記録履歴蓄積テーブル140内の一致判定の組合せの積算種類ICnt-Kind1-i 640-iと積算種類IICnt-Kind2-i 650-iを用いて、図34の処理3408を実施し、生成したアドレスに記録されている、Protoを除く一致判定の組合せのK22〜K23 756〜757-k(k=1〜M)を積算する処理を行う。   If the match judgment combination includes IP1 and Proto (step 3401), processing is performed from the match judgment combination excluding Proto to generate an address (step 3402), and the match is obtained from the extraction / record history accumulation table 140. The determination result Write-Kind-i (i = 1 to 213-1) 620-i of the combination obtained by removing Proto from the determination combination is read. If the judgment result Write-Kind-i (i = 1 to 213-1) 620-i is overwritten (step 3403) in the communication data 700-k of the coincidence judgment combination except Proto Using the integrated values C1 to C5 711 to 715-k, the processing 3404 in FIG. 34 is executed, and the number of types of match determination combinations excluding Proto recorded in the generated address K21 to K23 755 to 757-k A process of integrating (k = 1 to M) is performed. When the judgment result of the combination excluding Proto matches (step 3405), it is judged whether or not the lower 7th bit of K0 734-k of the match judgment combination is 0 (step 3406). Since the number is not accumulated, processing 3407 in FIG. 34 is performed using the accumulated values C1 to C5 711 to 715-k in the communication data 700-k of the match determination combination, and recorded at the generated address The process of integrating K21 to K23 755 to 757-k (k = 1 to M), which is a combination of matching determinations excluding Proto, is performed. In the case of 1, since the number of types has already been integrated, the integration type ICnt-Kind1-i 640-i and the integration type IICnt-Kind2-i 650-i of the combination determination combination in the extraction / record history accumulation table 140 34, the process 3408 of FIG. 34 is performed using i, and the process of accumulating K22 to K23 756 to 757-k (k = 1 to M) of the match determination combinations excluding Proto recorded in the generated address I do.

一致判定の組合せがIP1とInLineを含む場合(ステップ3501)、一致判定の組合せからInLineを除く組合せから処理1100を行ってアドレスを生成し(ステップ3502)、抽出/記録履歴蓄積テーブル140から、一致判定の組合せからInLineを除いた組合せの判定結果Write-Kind-i(i=1〜213−1)620-iを読み込む。InLineを除く一致判定の組合せの判定結果が上書だった場合(ステップ3503)、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図35の処理3504を実施し、InLineを除く一致判定の組合せの種類数K18〜K20 752〜754-k(k=1〜M)を積算する処理を行う。InLineを除く一致判定の組合せの判定結果が一致だった場合(ステップ3505)、一致判定の組合せのK0 734-kの下6ビット目が0か否かの判定を行い(ステップ3506)、0の場合は種類数の積算が行われていないため、一致判定の組合せの通信データ700-k内の積算値C1〜C5 711〜715-kを用いて、図35の処理3507を実施し、InLineを除く一致判定の組合せの種類数K18〜K20 752〜754-k(k=1〜M)を積算する処理を行う。1の場合は種類数の積算がすでに行われているため、抽出/記録履歴蓄積テーブル140内の一致判定の組合せの積算種類ICnt-Kind1-i 640-iと積算種類IICnt-Kind2-i 650-iを用いて、図35の処理3508を実施し、InLineを除く一致判定の組合せの種類数K19〜K20 753〜754-k(k=1〜M)を積算する処理を行う。   If the match judgment combination includes IP1 and InLine (step 3501), processing 1100 is performed from the match judgment combination excluding InLine to generate an address (step 3502), and a match is found from the extraction / record history accumulation table 140. The determination result Write-Kind-i (i = 1 to 213-1) 620-i of the combination obtained by removing InLine from the determination combination is read. When the determination result of the match determination combination excluding InLine is overwritten (step 3503), the integrated values C1 to C5 711 to 715-k in the communication data 700-k of the match determination combination are used as shown in FIG. Processing 3504 is performed, and processing for accumulating the number of types of matching determination combinations K18 to K20 752 to 754-k (k = 1 to M) excluding InLine is performed. If the judgment result of the match judgment combination excluding InLine matches (step 3505), it is judged whether the lower 6th bit of K0 734-k of the match judgment combination is 0 (step 3506). In this case, since the number of types is not integrated, the processing 3507 in FIG. 35 is performed using the integrated values C1 to C5 711 to 715-k in the communication data 700-k of the match determination combination, and InLine is Excluding the number of types of coincidence determination combinations K18 to K20 752 to 754-k (k = 1 to M) is integrated. In the case of 1, since the number of types has already been integrated, the integration type ICnt-Kind1-i 640-i and the integration type IICnt-Kind2-i 650-i of the combination determination combination in the extraction / record history accumulation table 140 Using i, the process 3508 of FIG. 35 is performed, and the process of integrating the number of types of combination determination K19 to K20 753 to 754-k (k = 1 to M) excluding InLine is performed.

以上、パケットの種類数記録処理1600のような記録を行うことで、最大23種類の統計データを、1エントリから一括で得られるようになり、多種類の異常通信の探知が容易となる。   As described above, by performing recording such as the packet type number recording process 1600, a maximum of 23 types of statistical data can be obtained from one entry at a time, making it easy to detect various types of abnormal communication.

記録部181が行う処理1300と処理1600の繰り返しが全て終了して、全ての組合せの記録が終了すると、次は、探知部182が行う処理に入る。探知部182では、記録部181同様に、組合せIDを1ずつ増加させながら繰り返し生成して(ステップ3601)、組合せ判定処理3600と、正常/異常判定処理3800を交互に行う。組合せIDが213となった場合は、全ての組合せの探知が終了したと判定して(ステップ3602)、探知部182における処理3600と3800の繰り返しが終了し、全ての処理が終了する。組合せIDが213でない場合は、その組合せの抽出をユーザが指定しているか否かと、その組合せの判定結果が衝突か否かの判定を行う(ステップ3603)。組合せIDの値がi(i=1〜213-1)の時、設定値蓄積テーブル130内の組合せID指定データID-i(i=1〜213-1)と、抽出/記録履歴蓄積テーブル140内の判定結果Write-Kind-i(i=1〜213-1)620-iを読み込み(図1の135,147)、ID-iが0または判定結果が衝突の場合は、ユーザ未指定の組合せ、または未抽出の組合せと判定して、組合せID生成処理(ステップ3601)に戻り、次の組合せID(1加算した値)を生成して、同様の処理を繰り返す。ID-iが1で、判定結果が上書や一致の場合は、ユーザ指定、尚且つ抽出済みの組合せと判断して、次に、正常/異常の判定を行うべき組合せか否かを判定する(ステップ3604)。正常/異常の判定を行うべき組合せと判定されると、組合せIDが正常/異常判定部127に伝達(図1の111)され(ステップ3605)、組合せ判定処理3600が終了する。 When all the repetitions of the processing 1300 and the processing 1600 performed by the recording unit 181 are completed and the recording of all the combinations is completed, the processing performed by the detection unit 182 is started next. As with the recording unit 181, the detection unit 182 repeatedly generates a combination ID by 1 (step 3601), and alternately performs a combination determination process 3600 and a normal / abnormal determination process 3800. If the combined ID becomes 2 13, it is determined that the detection of all the combinations has been completed (step 3602), repeating the processing 3600 and 3800 in the detection unit 182 is completed, all the processing is terminated. If the combination ID is not 2 13 performs a whether the extraction of the combination user has specified, the determination of whether the combination of the determination results is a collision (step 3603). When the value of the combination ID is i a (i = 1~2 13 -1), and the set value storage table 130 of the combined ID specified data ID-i (i = 1~2 13 -1), extracted / recording history storage Judgment result Write-Kind-i (i = 1 to 2 13 -1) 620-i in table 140 is read (135,147 in Fig. 1). If ID-i is 0 or the judgment result is a collision, the user is not specified. Or a combination that has not been extracted, the process returns to the combination ID generation process (step 3601), generates the next combination ID (value obtained by adding 1), and repeats the same process. If ID-i is 1 and the determination result is overwritten or matched, it is determined as a combination that has been specified by the user and has been extracted, and then it is determined whether the combination is to be determined as normal / abnormal. (Step 3604). When it is determined that the combination should be determined as normal / abnormal, the combination ID is transmitted to the normal / abnormal determination unit 127 (111 in FIG. 1) (step 3605), and the combination determination process 3600 ends.

正常/異常の判定を行うべき組合せか否かを判定するステップ3604の詳細を図37に示す。本図において、組合せは整列済み組合せを表す。ステップ3701〜3710に示す10通りの組合せについてのみ、正常/異常の判定を行う。   FIG. 37 shows details of step 3604 for determining whether or not the combination is to be determined as normal / abnormal. In this figure, the combination represents an aligned combination. Only the 10 combinations shown in steps 3701 to 3710 are judged as normal / abnormal.

正常/異常判定処理3800では、この10通りの組合せ毎に、正常な通信か、異常な通信かの判定を行い(ステップ3801)、異常と判定された場合は、判定時に得られた異常通信のデータとホワイトリストを、異常通信探知部の外部に、探知情報113として出力する(ステップ3802)。ステップ3802の後や、正常と判定された場合は、正常/異常判定処理が終了したことを、組合せ判定部126に伝達(図1の112)して、正常/異常判定処理3800が終了する(ステップ3803)。   In the normal / abnormal determination process 3800, for each of the 10 combinations, it is determined whether the communication is normal or abnormal (step 3801). If it is determined to be abnormal, the abnormal communication obtained at the time of determination is determined. The data and the white list are output as detection information 113 outside the abnormal communication detection unit (step 3802). After step 3802 or when it is determined as normal, the normal / abnormal determination process is transmitted to the combination determination unit 126 (112 in FIG. 1), and the normal / abnormal determination process 3800 ends ( Step 3803).

図39に、ステップ3802において出力する異常通信のデータが含む異常通信の種類を示す。正常/異常の判定を行う10通りの組合せから、33種類の異常通信の探知結果が出力される。   FIG. 39 shows the types of abnormal communication included in the abnormal communication data output in step 3802. The detection results of 33 types of abnormal communication are output from 10 combinations of normal / abnormal judgments.

図40〜72には、10通りの組合せの正常/異常を判定することで、図39に示す33種類の異常通信を探知する正常/異常判定処理3800の詳細を示す。なお、これらの図とこれらの図が示す処理を説明する以降の文章では、組合せは、整列済み組合せのことを表す。また、探知処理に入る前に、抽出/記録履歴蓄積テーブル140内の組合せに対応するアドレスID-Address-i 610-iを基に、通信データ蓄積テーブル150内の通信データ700-kを読み出す(図1の134と155)。   40 to 72 show details of normality / abnormality determination processing 3800 for detecting 33 types of abnormal communication shown in FIG. 39 by determining normality / abnormality of 10 combinations. In these drawings and the subsequent sentences describing the processing shown in these drawings, the combination represents an aligned combination. Before entering the detection process, the communication data 700-k in the communication data storage table 150 is read based on the address ID-Address-i 610-i corresponding to the combination in the extraction / record history storage table 140 ( Figure 134 and 155).

図40には、Syn Flag TCP Flood型DoS攻撃を探知する処理を示す。まず、IP1とIP2とFlagを含む組合せか否か(ステップ4001)、FlagがSynであるか否か(ステップ4002)、を判定する。共に満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算数C2 712-k + C3 713-kまたはC4 714-k + C5 715-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、Syn Flag TCP Flood型DoS攻撃探知用の閾値Thr1 532-1を超過するか否かを判定する(ステップ4003)。超過する場合は、FlagをAck等に変更した組合せから生成したアドレスを用いて、通信データ700-kを通信データ蓄積テーブル150から読み込み(ステップ4004)、(C2+C3)/ATime>Thr1のときは、FlagをAck等に変更した組合せの通信データ700-kの積算値(C4+C5) が0か否かを、(C4+C5)/ATime>Thr1のときは、FlagをAck等に変更した組合せの通信データ700-kの積算値(C2+C3) が0か否かを判定する(ステップ4005)。0の場合は、Synパケットを受信している端末が、Synパケットを送信している端末にAckパケット等のデータパケットを返信していないことを意味しており異常と判定される。この場合、Syn Flag TCP Flood型DoS攻撃と判定される。   FIG. 40 shows processing for detecting a Syn Flag TCP Flood type DoS attack. First, it is determined whether or not the combination includes IP1, IP2, and Flag (step 4001), and whether or not Flag is Syn (step 4002). If both are satisfied, the accumulated value C2 712-k + C3 713-k or C4 714-k + C5 715-k in the communication data 700-k in the communication data storage table 150 of this combination is set to the set value storage table 130. It is determined whether or not the value divided by the aging time ATime 521 exceeds the threshold Thr1 532-1 for Syn Flag TCP Flood type DoS attack detection (step 4003). If exceeded, read the communication data 700-k from the communication data accumulation table 150 using the address generated from the combination in which Flag is changed to Ack or the like (step 4004), and (C2 + C3) / ATime> Thr1 Indicates whether the integrated value (C4 + C5) of the communication data 700-k of the combination in which Flag is changed to Ack, etc. is 0. If (C4 + C5) / ATime> Thr1, change Flag to Ack, etc. It is determined whether the integrated value (C2 + C3) of the communication data 700-k of the selected combination is 0 (step 4005). In the case of 0, this means that the terminal receiving the Syn packet has not returned a data packet such as an Ack packet to the terminal transmitting the Syn packet, and is determined to be abnormal. In this case, it is determined as a Syn Flag TCP Flood type DoS attack.

図41には、特定Flag TCP Flood型DoS攻撃を探知する処理を示す。まず、IP1とIP2とFlagを含む組合せか否かを判定する(ステップ4101)。共に満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算数(C2+C3)または(C4+C5)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定Flag TCP Flood型DoS攻撃探知用の閾値Thr2 532-2を超過するか否かを判定する(ステップ4102)。超過する場合は、FlagをAck等に変更した組合せから生成したアドレスを用いて、通信データ700-kを通信データ蓄積テーブル150から読み込み(ステップ4103)、(C2+C3)/ATime>Thr2のときは、FlagをAck等に変更した組合せの通信データ700-kの積算値(C4+C5)が0か否かを、(C4+C5)/ATime>Thr2のときは、FlagをAck等に変更した組合せの通信データ700-kの積算値(C2+C3)が0か否かを判定する(ステップ4104)。0の場合は、特定Flagパケットを受信している端末が、特定Flagパケットを送信している端末にAckパケット等のデータパケットを返信していないことを意味しており異常と判定される。この場合、特定Flag TCP Flood型DoS攻撃と判定される。   FIG. 41 shows processing for detecting a specific Flag TCP Flood type DoS attack. First, it is determined whether or not the combination includes IP1, IP2, and Flag (step 4101). If both are satisfied, divide the total number (C2 + C3) or (C4 + C5) in communication data 700-k in communication data storage table 150 of this combination by aging time ATime 521 in setting value storage table 130. It is determined whether or not the obtained value exceeds a threshold Thr2 532-2 for detecting a specific Flag TCP Flood type DoS attack (step 4102). If exceeded, read communication data 700-k from the communication data accumulation table 150 using the address generated from the combination in which Flag is changed to Ack or the like (step 4103), and (C2 + C3) / ATime> Thr2 Indicates whether the integrated value (C4 + C5) of the communication data 700-k of the combination in which Flag is changed to Ack, etc. is 0, and if (C4 + C5) / ATime> Thr2, change Flag to Ack, etc. It is determined whether or not the integrated value (C2 + C3) of the communication data 700-k of the selected combination is 0 (step 4104). In the case of 0, this means that the terminal receiving the specific Flag packet has not returned a data packet such as an Ack packet to the terminal transmitting the specific Flag packet, and is determined to be abnormal. In this case, it is determined as a specific Flag TCP Flood type DoS attack.

図42には、Syn Flag TCP Flood型DDoS攻撃を探知する処理を示す。まず、IP1とFlagを含む組合せか否か(ステップ4201)、FlagがSynであるか否か(ステップ4202)、を判定する。共に満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算数(C4+C5)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、Syn Flag TCP Flood型DDoS攻撃探知用の閾値Thr3 532-3を超過するか否か、Synパケットを送信してきた通信相手数K3 737-kが送信元数の閾値SIP-N 583を超過するか否かを判定する(ステップ4203)。超過する場合は、FlagをAck等に変更した組合せから生成したアドレスを用いて、通信データ700-kを通信データ蓄積テーブル150から読み込み(ステップ4204)、FlagをAck等に変更した組合せの通信データ700-k内のAckパケットの返信先数K2 736-kが、Synパケットを送信してきた通信相手数K3 737-kと設定値蓄積テーブル130内の閾値IThr3-1 540の積を超過するか否かを判定する(ステップ4205)。超過しない場合は、Synパケットを送信してきた通信相手数がデータパケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPにSynパケットを送信してきて、組合せが含むIPがAckパケット等を返信した通信相手数を取得し(ステップ4206)、取得した通信相手数が、Synパケットを送信してきた通信相手数K3 737-kと、設定値蓄積テーブル130内の閾値IIThr3-2 541の積よりも小さいか否かを判定する(ステップ4207)。小さい場合は、Synパケットを送信してきた通信相手数が、Synパケットを送信してきてデータパケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPがAckパケット等を返信した通信相手をホワイトリストとして取得する(ステップ4208)。異常通信の種類は、Syn Flag TCP Flood型DDoS攻撃となる。   FIG. 42 shows processing for detecting a Syn Flag TCP Flood type DDoS attack. First, it is determined whether or not the combination includes IP1 and Flag (step 4201), and whether or not Flag is Syn (step 4202). When both are satisfied, the value obtained by dividing the total number (C4 + C5) in the communication data 700-k in the communication data storage table 150 of this combination by the aging time ATime 521 in the setting value storage table 130 is Whether or not the threshold Thr3 532-3 for TCP Flood DDoS attack detection is exceeded, and whether or not the number of communication partners K3 737-k that sent the Syn packet exceeds the threshold SIP-N 583 for the number of senders Determination is made (step 4203). If exceeded, the communication data 700-k is read from the communication data accumulation table 150 using the address generated from the combination in which Flag is changed to Ack or the like (step 4204), and the communication data in the combination in which Flag is changed to Ack or the like Whether or not the number of reply destinations K2 736-k of the Ack packet in 700-k exceeds the product of the number of communication partners K3 737-k that sent the Syn packet and the threshold IThr3-1 540 in the setting value accumulation table 130 Is determined (step 4205). If the number does not exceed, it means that the number of communication partners that have transmitted Syn packets is greater than the number of communication partners that have returned data packets, which is abnormal. Further, the communication data storage table is searched, a Syn packet is transmitted to the IP included in the combination, the number of communication partners to which the IP included in the combination returns an Ack packet or the like is acquired (step 4206), and the number of acquired communication partners However, it is determined whether or not the communication partner number K3 737-k that has transmitted the Syn packet is smaller than the product of the threshold value IIThr3-2 541 in the set value accumulation table 130 (step 4207). If it is small, it means that the number of communication partners that have transmitted the Syn packet is larger than the number of communication partners that have transmitted the Syn packet and returned the data packet, which is abnormal. Further, the communication data storage table is searched, and the communication partner to which the IP included in the combination returns an Ack packet or the like is acquired as a white list (step 4208). The type of abnormal communication is a Syn Flag TCP Flood DDoS attack.

図43には、特定Flag TCP Flood型DDoS攻撃を探知する処理を示す。まず、IP1とFlagを含む組合せか否かを判定する(ステップ4301)。満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算数(C4+C5)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定Flag TCP Flood型DDoS攻撃探知用の閾値Thr4 532-4を超過するか否か、特定Flagパケットを送信してきた通信相手数K3 737-kが送信元数の閾値SIP-N 583を超過するか否かを判定する(ステップ4302)。超過する場合は、FlagをAck等に変更した組合せから生成したアドレスを用いて、通信データ700-kを通信データ蓄積テーブル150から読み込み(ステップ4303)、FlagをAck等に変更した組合せの通信データ700-k内のAckパケットの返信先数K2 736-kが、特定Flagパケットを送信してきた通信相手数K3 737-kと設定値蓄積テーブル130内の閾値IThr4-1 542の積を超過するか否かを判定する(ステップ4304)。超過しない場合は、特定Flag番号を持つTCPパケットを送信してきた通信相手数が、データパケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPに特定Flagパケットを送信してきて、組合せが含むIPがAckパケット等を返信した通信相手数を取得し(ステップ4305)、取得した通信相手数が、特定Flagパケットを送信してきた通信相手数K3 737-kと、設定値蓄積テーブル130内の閾値IIThr4-2 543の積よりも小さいか否かを判定する(ステップ4306)。小さい場合は、特定Flag番号を持つTCPパケットを送信してきた通信相手数が、特定Flag番号を持つTCPパケットを送信してきてデータパケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPがAckパケット等を返信した通信相手をホワイトリストとして取得する(ステップ4307)。異常通信の種類は、特定Flag TCP Flood型DDoS攻撃となる。   FIG. 43 shows processing for detecting a specific Flag TCP Flood type DDoS attack. First, it is determined whether or not the combination includes IP1 and Flag (step 4301). If it is satisfied, the value obtained by dividing the total number (C4 + C5) in the communication data 700-k in the communication data storage table 150 of this combination by the aging time ATime 521 in the set value storage table 130 is the specific Flag TCP Whether or not the threshold Thr4 532-4 for flood-type DDoS attack detection is exceeded, and whether or not the number of communication partners K3 737-k that sent a specific flag packet exceeds the threshold SIP-N 583 for the number of senders Determination is made (step 4302). If exceeded, the communication data 700-k is read from the communication data accumulation table 150 using the address generated from the combination in which the flag is changed to Ack or the like (step 4303), and the communication data in the combination in which the flag is changed to Ack or the like. Whether the number of reply destinations K2 736-k of the Ack packet in 700-k exceeds the product of the number of communication partners K3 737-k that sent the specific Flag packet and the threshold IThr4-1 542 in the setting value accumulation table 130 It is determined whether or not (step 4304). If the number does not exceed, it means that the number of communication partners that have transmitted TCP packets having a specific flag number is greater than the number of communication partners that have returned data packets, which is abnormal. Further, the communication data accumulation table is searched, a specific flag packet is transmitted to the IP included in the combination, the number of communication partners to which the IP included in the combination returns an Ack packet or the like is acquired (step 4305), and the acquired communication partner is acquired. It is determined whether or not the number is smaller than the product of the number of communication partners K3 737-k that has transmitted the specific Flag packet and the threshold value IIThr4-2 543 in the set value accumulation table 130 (step 4306). If it is small, it means that the number of communication partners that have sent TCP packets with a specific flag number is greater than the number of communication partners that have sent TCP packets with a specific flag number and returned data packets. is there. Further, the communication data accumulation table is searched, and the communication partner to which the IP included in the combination returns an Ack packet or the like is acquired as a white list (step 4307). The type of abnormal communication is a specific Flag TCP Flood type DDoS attack.

図44には、ランダム Flag TCP Flood型DoS攻撃を探知する処理を示す。まず、IP1とIP2とProtoを含む組合せか否か(ステップ4401)、ProtoがTCPであるか否かを判定する(ステップ4402)。満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算数(C2+C3)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ランダムFlag TCP Flood型DoS攻撃探知用の閾値Thr5 532-5を超過し、尚且つIP1がIP2に送信したパケットのFlag番号の種類数K16がFlag番号用の閾値Flag-N 580を超過するか否かを判定、または、通信データ700-k内の積算数(C4+C5)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ランダムFlag TCP Flood型DoS攻撃探知用の閾値Th5 532-5を超過し、尚且つIP1がIP2から受信したパケットのFlag番号の種類数K17がFlag番号用の閾値Flag-N 580を超過するか否かを判定する(ステップ4403)。超過する場合は、FlagをAck等に変更した組合せから生成したアドレスを用いて、通信データ700-kを通信データ蓄積テーブル150から読み込み(ステップ4404)、(C2+C3)/ATime>Thr1のときは、FlagをAck等に変更した組合せの通信データ700-kの積算値(C4+C5)が0か否かを、(C4+C5)/ATime>Thr1のときは、FlagをAck等に変更した組合せの通信データ700-kの積算値(C2+C3)が0か否かを判定する(ステップ4405)。0の場合は、ランダムFlagパケットを受信している端末が、ランダムFlagパケットを送信している端末にAckパケット等のデータパケットを返信していないことを意味しており異常と判定される。この場合、ランダムFlag TCP Flood型DoS攻撃と判定される。   FIG. 44 shows processing for detecting a random Flag TCP Flood DoS attack. First, it is determined whether or not the combination includes IP1, IP2, and Proto (step 4401), and whether or not Proto is TCP (step 4402). If it is satisfied, the value obtained by dividing the total number (C2 + C3) in the communication data 700-k in the communication data storage table 150 of this combination by the aging time ATime 521 in the set value storage table 130 is a random Flag TCP Determine whether or not the threshold number Thr5 532-5 for flood-type DoS attack detection exceeds the threshold number Flag-N 580 for the flag number and the number K16 of the flag number of the packet sent by IP1 to IP2 Or, the value obtained by dividing the total number (C4 + C5) in the communication data 700-k by the aging time ATime 521 in the setting value accumulation table 130 is a threshold value Th5 532- for detecting a random Flag TCP Flood type DoS attack. It is determined whether or not the number of flag numbers K17 of the packet that exceeds 5 and IP1 receives from IP2 exceeds the threshold Flag-N 580 for the flag number (step 4403). If exceeded, read the communication data 700-k from the communication data accumulation table 150 using the address generated from the combination in which Flag is changed to Ack or the like (step 4404), and (C2 + C3) / ATime> Thr1 Indicates whether the integrated value (C4 + C5) of the communication data 700-k of the combination in which Flag is changed to Ack, etc. is 0, and when (C4 + C5) / ATime> Thr1, change Flag to Ack, etc. It is determined whether or not the integrated value (C2 + C3) of the communication data 700-k of the selected combination is 0 (step 4405). In the case of 0, this means that the terminal receiving the random flag packet has not returned a data packet such as an Ack packet to the terminal transmitting the random flag packet, and is determined to be abnormal. In this case, it is determined as a random Flag TCP Flood type DoS attack.

図45には、ICMP Flood型DoS攻撃を探知する処理を示す。まず、IP1とIP2とProtoを含む組合せか否か(ステップ4501)、ProtoがICMPであるか否かを判定する(ステップ4502)。満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算数(C2+C3)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ICMP Flood型DoS攻撃探知用の閾値Thr6 532-6を超過するか否かを判定、または、通信データ700-k内の積算数(C4+C5)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ICMP Flood型DoS攻撃探知用の閾値Th6 532-6を超過するか否かを判定する(ステップ4503)。超過する場合は、異常と判定される。この場合、ICMP Flood型DoS攻撃と判定される。   FIG. 45 shows a process for detecting an ICMP Flood DoS attack. First, it is determined whether or not the combination includes IP1, IP2, and Proto (step 4501), and whether or not Proto is ICMP (step 4502). If it is satisfied, the value obtained by dividing the total number (C2 + C3) in communication data 700-k in communication data storage table 150 of this combination by aging time ATime 521 in setting value storage table 130 is the ICMP Flood type. Determine whether or not the threshold Thr6 532-6 for DoS attack detection is exceeded, or divide the total number (C4 + C5) in the communication data 700-k by the aging time ATime 521 in the set value accumulation table 130 It is determined whether or not the value exceeds a threshold Th6 532-6 for ICMP Flood type DoS attack detection (step 4503). When it exceeds, it is determined as abnormal. In this case, it is determined as an ICMP Flood type DoS attack.

図46には、特定IP間ランダムPort過負荷通信を探知する処理を示す。まず、IP1とIP2とProtoを含む組合せか否か(ステップ4601)、ProtoがTCP/UDPであるか否かと、本組合せの通信データ蓄積テーブル150内の通信データ700-k内のIP1の使用するポート数K9がポート用の閾値Port_N 581を超過するか否かと、IP2の使用するポート数K10がポート用の閾値Port_N 581を超過するか否か、を判定する(ステップ4602)。超過する場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算バイト(B2+B3)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定IP間ランダムPort過負荷通信探知用の閾値Thr7 532-7を超過するか否かを判定、または、通信データ700-k内の積算バイト(B4+B5)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定IP間ランダムPort過負荷通信探知用の閾値Thr7 532-7を超過するか否かを判定する(ステップ4603)。超過する場合は、異常と判定される。この場合、特定IP間ランダムPort過負荷通信と判定される。   FIG. 46 shows processing for detecting a random port overload communication between specific IPs. First, whether or not the combination includes IP1, IP2, and Proto (step 4601), whether Proto is TCP / UDP, and the use of IP1 in communication data 700-k in communication data storage table 150 of this combination It is determined whether or not the number of ports K9 exceeds the port threshold value Port_N 581 and whether or not the number of ports K10 used by IP2 exceeds the port threshold value Port_N 581 (step 4602). If exceeded, the value obtained by dividing the accumulated byte (B2 + B3) in the communication data 700-k in the communication data storage table 150 of this combination by the aging time ATime 521 in the set value storage table 130 is the specific IP. Random port overload communication detection threshold Thr7 532-7 is judged whether or not exceeded, or the accumulated byte (B4 + B5) in communication data 700-k is aged in the set value accumulation table 130 It is determined whether or not the value divided by ATime 521 exceeds the threshold Thr7 532-7 for detecting random IP overload communication between specific IPs (step 4603). When it exceeds, it is determined as abnormal. In this case, it is determined as random port overload communication between specific IPs.

図47には、特定IP間特定Proto使用過負荷通信を探知する処理を示す。まず、IP1とIP2とProtoを含む組合せか否かを判定する(ステップ4701)。超過する場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算バイト(B2+B3)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定IP間特定Proto使用過負荷通信探知用の閾値Thr8 532-8を超過するか否かを判定、または、通信データ700-k内の積算バイト(B4+B5)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定IP間特定Proto使用過負荷通信探知用の閾値Thr8 532-8を超過するか否かを判定する(ステップ4702)。超過する場合は異常と、超過しない場合は正常と判定される。異常の場合、特定IP間特定Proto使用過負荷通信と判定される。   FIG. 47 shows processing for detecting specific Proto-specific overload communication between specific IPs. First, it is determined whether or not the combination includes IP1, IP2, and Proto (step 4701). If exceeded, the value obtained by dividing the accumulated byte (B2 + B3) in the communication data 700-k in the communication data storage table 150 of this combination by the aging time ATime 521 in the setting value storage table 130 is the specific IP. Determine whether or not the threshold Thr8 532-8 for overload communication detection using specific Proto is exceeded, or the accumulated bytes (B4 + B5) in the communication data 700-k are aged in the set value accumulation table 130 It is determined whether or not the value divided by the time ATime 521 exceeds a threshold value Thr8 532-8 for detecting overload communication between specific IP specific Proto (step 4702). When it exceeds, it is determined as abnormal, and when it does not exceed, it is determined as normal. If there is an error, it is determined that the specific Proto use overload communication between specific IPs.

図48には、ランダムFlag TCP Flood型DDoS攻撃を探知する処理を示す。まず、IP1とProtoを含む組合せか否かを判定する(ステップ4801)。満たす場合は、ProtoがTCPか否かと、通信データ蓄積テーブル150内の通信データ700-k内のIP1が受信したパケットのFlag番号の種類数K17 751-kが設定値蓄積テーブル130内のFlag用の閾値Flag-N 580を超過するか否かを判定する(ステップ4802)。満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算数(C4+C5)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ランダムFlag TCP Flood型DDoS攻撃探知用の閾値Thr9 532-9を超過するか否かと、ランダムFlagパケットを送信してきた通信相手数K3 737-kが送信元数の閾値SIP-N 583を超過するか否かを判定する(ステップ4803)。超過する場合は、ProtoをFlagのAck等に変更した組合せから生成したアドレスを用いて、通信データ700-kを通信データ蓄積テーブル150から読み込み(ステップ4804)、ProtoをFlagのAck等に変更した組合せの通信データ700-k内のAckパケットの返信先数K2 736-kが、ランダムFlagパケットを送信してきた通信相手数K3 737-kと設定値蓄積テーブル130内の閾値IThr9-1 544の積を超過するか否かを判定する(ステップ4805)。超過しない場合は、ランダムFlagパケットを送信してきた通信相手数が、データパケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPにTCPパケットを送信してきて、組合せが含むIPがAckパケット等を返信した通信相手数を取得し(ステップ4806)、取得した通信相手数が、TCPパケットを送信してきた通信相手数K3 737-kと、設定値蓄積テーブル130内の閾値IIThr9-2 545の積よりも小さいか否かを判定する(ステップ4807)。小さい場合は、ランダムFlagパケットを送信してきた通信相手数が、ランダムFlagパケットを送信してきてデータパケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPがAckパケット等を返信した通信相手をホワイトリストとして取得する(ステップ4808)。異常通信の種類は、ランダムFlag TCP Flood型DDoS攻撃となる。   FIG. 48 shows processing for detecting a random Flag TCP Flood type DDoS attack. First, it is determined whether or not the combination includes IP1 and Proto (step 4801). If it satisfies, whether Proto is TCP or not, and the number of flag numbers K17 751-k of the packet received by IP1 in the communication data 700-k in the communication data accumulation table 150 is for the flag in the setting value accumulation table 130 It is determined whether or not the threshold Flag-N 580 is exceeded (step 4802). If the value is satisfied, the value obtained by dividing the total number (C4 + C5) in the communication data 700-k in the communication data storage table 150 of this combination by the aging time ATime 521 in the set value storage table 130 is a random Flag TCP Whether or not the threshold Thr9 532-9 for flood-type DDoS attack detection is exceeded, and whether or not the number of communication partners K3 737-k that sent random Flag packets exceeds the threshold SIP-N 583 for the number of senders Judgment is made (step 4803). If exceeded, read the communication data 700-k from the communication data storage table 150 using the address generated from the combination of Proto changed to Flag Ack, etc. (Step 4804), and changed Proto to Flag Ack, etc. The number of reply destinations K2 736-k of the Ack packet in the communication data 700-k in the combination is the product of the number of communication partners K3 737-k that has transmitted the random Flag packet and the threshold value IThr9-1 544 in the setting value accumulation table 130. It is determined whether or not the threshold is exceeded (step 4805). If it does not exceed, it means that the number of communication partners that have transmitted random Flag packets is greater than the number of communication partners that have returned data packets, which is abnormal. Further, the communication data storage table is searched, a TCP packet is transmitted to the IP included in the combination, the number of communication partners to which the IP included in the combination returns an Ack packet or the like is acquired (step 4806), and the number of acquired communication partners It is determined whether or not the communication partner number K3 737-k that has transmitted the TCP packet is smaller than the product of the threshold value IIThr9-2 545 in the set value accumulation table 130 (step 4807). If it is small, it means that the number of communication partners that have transmitted random Flag packets is larger than the number of communication partners that have transmitted random Flag packets and returned data packets, which is abnormal. Further, the communication data storage table is searched, and the communication partner to which the IP included in the combination returns an Ack packet or the like is acquired as a white list (step 4808). The type of abnormal communication is a random Flag TCP Flood type DDoS attack.

図49には、ランダムPort Worm攻撃を探知する処理を示す。まず、IP1とProtoを含む組合せか否かを判定する(ステップ4901)。満たす場合は、ProtoがTCP/UDPか否かと、通信データ蓄積テーブル150内の通信データ700-k内のIP1が送信したパケットの送信元Port番号の種類数K11 745-kと、宛先Port番号の種類数K12 746-kが、設定値蓄積テーブル130内のPort用の閾値Port-N 581を超過するか否かを判定する(ステップ4902)。満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算数(C2+C3)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ランダムPort Worm攻撃探知用の閾値Thr10 532-10を超過するか否かと、パケットを送信した通信相手数K2 736-kが宛先数の閾値DIP-N 584を超過するか否かを判定する(ステップ4903)。超過する場合は、ProtoがTCPの場合は、パケットを返信してきた通信相手数K3 737-kが、パケットを送信した通信相手数K2 736-kと設定値蓄積テーブル130内の閾値IThr10-1 546の積を超過するか否か、通信相手が返信に使用したポートの種類数K13 747-kが、通信相手が受信に使用したポートの種類数K12 746-kと設定値蓄積テーブル130内の閾値IIThr10-2 547の積を超過するか否かを判定し、ProtoがUDPの場合は、パケットを返信してきた通信相手数K3 737-kが、パケットを送信した通信相手数K2 736-kと設定値蓄積テーブル130内の閾値IIIThr10-3 548の積を超過するか否か、通信相手が返信に使用したポートの種類数K13 747-kが、通信相手が受信に使用したポートの種類数K12 746-kと設定値蓄積テーブル130内の閾値IVThr10-4 549の積を超過するか否かを判定する(ステップ4904)。超過しない場合は、ランダムPort番号パケットを送信した通信相手数が、パケットを返信してきた通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPに同一のProtoを持つパケットを返信してきた通信相手をホワイトリストとして取得する(ステップ4905)。異常通信の種類は、ランダムPort Worm攻撃と判定する。   FIG. 49 shows processing for detecting a random port worm attack. First, it is determined whether or not the combination includes IP1 and Proto (step 4901). If it satisfies, whether Proto is TCP / UDP, the number of source port numbers K11 745-k of the packet sent by IP1 in the communication data 700-k in the communication data accumulation table 150, and the destination port number It is determined whether the number of types K12 746-k exceeds the threshold value Port-N 581 for Port in the set value accumulation table 130 (Step 4902). If it is satisfied, the value obtained by dividing the total number (C2 + C3) in communication data 700-k in communication data storage table 150 of this combination by aging time ATime 521 in setting value storage table 130 is the random port Worm It is determined whether or not the threshold value Thr10 532-10 for attack detection is exceeded and whether or not the communication partner number K2 736-k that transmitted the packet exceeds the threshold value DIP-N 584 for the number of destinations (step 4903). In the case where the number of communication partners K3 737-k that returned the packet is larger than Proto is TCP, the number of communication partners K2 736-k that transmitted the packet and the threshold IThr10-1 546 in the set value accumulation table 130 The number of port types K13 747-k used by the communication partner for reply is the number of port types K12 746-k used for reception by the communication partner and the threshold value in the set value accumulation table 130. Judge whether the product of IIThr10-2 547 is exceeded or not, and if Proto is UDP, set the number of communication partners K3 737-k that returned the packet as the number of communication partners K2 736-k that sent the packet Whether or not the product of the threshold value IIIThr10-3 548 in the value accumulation table 130 is exceeded, the number of port types K13 747-k used by the communication partner for reply is the number of port types K12 used by the communication partner for reception K12 746 It is determined whether or not the product of -k and the threshold value IVThr10-4 549 in the set value accumulation table 130 is exceeded (step 4904). When the number does not exceed, it means that the number of communication partners that have transmitted random port number packets is larger than the number of communication partners that have returned packets, which is abnormal. Further, the communication data storage table is searched, and the communication partner that has returned a packet having the same protocol to the IP included in the combination is acquired as a white list (step 4905). The type of abnormal communication is determined as a random port Worm attack.

図50には、ランダムPort DDoS攻撃を探知する処理を示す。まず、IP1とProtoを含む組合せか否かを判定する(ステップ5001)。満たす場合は、ProtoがTCP/UDPか否かと、通信データ蓄積テーブル150内の通信データ700-k内のIP1が受信したパケットの送信元Port番号の種類数K13 747-kと、宛先Port番号の種類数K14 748-kが、設定値蓄積テーブル130内のPort用の閾値Port-N 581を超過するか否かを判定する(ステップ5002)。満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算数(C4+C5)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ランダムPort DDoS攻撃探知用の閾値Thr11 532-11を超過するか否かと、パケットを送信してきた通信相手数K3 737-kが送信元数の閾値SIP-N 583を超過するか否かを判定する(ステップ5003)。超過する場合は、ProtoがTCPの場合は、パケットを返信した通信相手数K2 736-kが、パケットを送信してきた通信相手数K3 737-kと設定値蓄積テーブル130内の閾値IThr11-1 550の積を超過するか否か、通信相手への返信に使用したポートの種類数K11 745-kが、通信相手からの受信に使用したポートの種類数K14 748-kと設定値蓄積テーブル130内の閾値IIThr11-2 551の積を超過するか否かを判定し、ProtoがUDPの場合は、パケットを返信した通信相手数K2 736-kが、パケットを送信してきた通信相手数K3 737-kと設定値蓄積テーブル130内の閾値IIIThr11-3 552の積を超過するか否か、通信相手への返信に使用したポートの種類数K11 747-kが、通信相手からの受信に使用したポートの種類数K14 748-kと設定値蓄積テーブル130内の閾値IVThr11-4 553の積を超過するか否かを判定する(ステップ5004)。超過しない場合は、ランダムPort番号パケットを送信してきた通信相手数が、パケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPが、同一のProtoのパケット等を返信した通信相手をホワイトリストとして取得する(ステップ5005)。異常通信の種類は、ランダムPort DDoS攻撃となる。   FIG. 50 shows processing for detecting a random Port DDoS attack. First, it is determined whether or not the combination includes IP1 and Proto (step 5001). If it satisfies, whether Proto is TCP / UDP, the number of source port numbers K13 747-k of the packet received by IP1 in the communication data 700-k in the communication data storage table 150, and the destination port number It is determined whether the number of types K14 748-k exceeds the threshold value Port-N 581 for the Port in the set value accumulation table 130 (Step 5002). If it is satisfied, the value obtained by dividing the total number (C4 + C5) in the communication data 700-k in the communication data storage table 150 of this combination by the aging time ATime 521 in the set value storage table 130 is the random Port DDoS It is determined whether or not the threshold Thr11 532-11 for attack detection is exceeded, and whether or not the number of communication partners K3 737-k that transmitted the packet exceeds the threshold SIP-N 583 for the number of senders (step 5003). ). If the number of communication partners K2 736-k that returned the packet is larger than Proto is TCP, the number of communication partners K3 737-k that transmitted the packet and the threshold value IThr11-1 550 in the set value accumulation table 130 In the set value accumulation table 130, the number of port types K11 745-k used for replying to the communication partner is the number of port types K14 748-k used for receiving from the communication partner. It is determined whether or not the product of the threshold value IIThr11-2 551 is exceeded. If Proto is UDP, the number of communication partners K2 736-k that returned the packet is equal to the number of communication partners K3 737-k that transmitted the packet. And the threshold IIIThr11-3 552 in the set value accumulation table 130, the number of port types used for reply to the communication partner K11 747-k is the number of ports used for reception from the communication partner. It is determined whether or not the product of the number of types K14 748-k and the threshold value IVThr11-4 553 in the set value accumulation table 130 is exceeded (step 5004). If the number does not exceed, it means that the number of communication partners that have transmitted random port number packets is greater than the number of communication partners that have returned packets, which is abnormal. Further, the communication data storage table is searched, and the communication partner to which the IP included in the combination returns the same Proto packet or the like is acquired as a white list (step 5005). The type of abnormal communication is a random Port DDoS attack.

図51には、ICMP Flood型 DDoS/Worm攻撃を探知する処理を示す。まず、IP1とProtoを含む組合せか否かを判定する(ステップ5101)。満たす場合は、ProtoがICMPか否かの判定を行い、満たす場合は、通信データ蓄積テーブル150内の通信データ700-k内の、IP1がパケットを受信した通信相手数K3 737-kが、設定値蓄積テーブル130内の送信元用の閾値SIP-N 583を超過するか否か、或いは、IP1がパケットを送信した通信相手数K2 736-kが、設定値蓄積テーブル130内の宛先用の閾値DIP-N 584を超過するか否かの判定を行う(ステップ5102)。超過する場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算数(C2+C3)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ICMP Flood型 DDoS/Worm攻撃探知用の閾値Thr12 532-12を超過し、ICMPパケットを送信してきた通信相手数K3 737-kが、ICMPパケットを返信した通信相手数K2 736-kと設定値蓄積テーブル130内の閾値IThr12-1 554の積を超過するか否か、或いは、積算数(C4+C5)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ICMP Flood型 DDoS/Worm攻撃探知用の閾値Thr12 532-12を超過し、ICMPパケットを送信した通信相手数K2 736-kが、ICMPパケットを返信してきた通信相手数K3 737-kと設定値蓄積テーブル130内の閾値IThr12-2 555の積を超過するか否かの判定を行う(ステップ5103)。異常通信の種類は、ICMP Flood型 DDoS/Worm攻撃となる。   FIG. 51 shows a process for detecting an ICMP Flood type DDoS / Worm attack. First, it is determined whether or not the combination includes IP1 and Proto (step 5101). If satisfied, it is determined whether Proto is ICMP or not, and if satisfied, the communication partner number K3 737-k from which IP1 received the packet in the communication data 700-k in the communication data accumulation table 150 is set. Whether or not the transmission source threshold SIP-N 583 in the value accumulation table 130 is exceeded, or the number of communication partners K2 736-k to which IP1 has transmitted a packet is the threshold for the destination in the setting value accumulation table 130 It is determined whether or not DIP-N 584 is exceeded (step 5102). If exceeded, the value obtained by dividing the total number (C2 + C3) in communication data 700-k in communication data storage table 150 for this combination by aging time ATime 521 in setting value storage table 130 is ICMP Flood Type DDoS / Worm attack detection threshold Thr12 532-12 exceeded, the number of communication partners K3 737-k that sent ICMP packets is the number of communication partners K2 736-k that sent ICMP packets back and set value accumulation table 130 The value obtained by dividing the product of the threshold value IThr12-1 554 in the above by the aging time ATime 521 in the set value accumulation table 130, or the cumulative number (C4 + C5) is the ICMP Flood type DDoS / Worm The number of communication partners K2 736-k that transmitted an ICMP packet that exceeded the threshold Thr12 532-12 for attack detection is the number of communication partners K3 737-k that returned the ICMP packet and the threshold IThr12 in the set value accumulation table 130 It is determined whether or not the product of −2 555 is exceeded (step 5103). The type of abnormal communication is an ICMP Flood type DDoS / Worm attack.

図52には、特定Proto使用Worm攻撃を探知する処理を示す。まず、IP1とProtoを含む組合せか否かを判定する(ステップ5201)。満たす場合は、Proto≠TCPかつProto≠UDPであるか否かを判定し、満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内のパケットを送信した通信相手数K2 736-kが宛先数の閾値DIP-N 584を超過するか否かを判定する(ステップ5202)。超過する場合は、通信データ700-k内の積算数(C2+C3)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定Proto使用Worm攻撃探知用の閾値Thr13 532-13を超過するか否かを判定する(ステップ5203)。特定Protoパケットを送信してきた通信相手数K3 737-kが、特定Protoパケットを返信した通信相手数K2 736-kと設定値蓄積テーブル130内の閾値IThr13-1 556の積を超過するか否かを判定する(ステップ5204)。超過しない場合は、特定Proto番号パケットを送信した通信相手数が、特定Proto番号パケットを返信してきた通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPが特定Protoパケットを送信して、特定Protoのパケットを返信してきた通信相手数を取得し(ステップ5205)、取得した通信相手数が、特定Protoパケットを送信した通信相手数K2 736-kと、設定値蓄積テーブル130内の閾値IIThr13-2 557の積よりも小さいか否かを判定する(ステップ5206)。小さい場合は、特定Proto番号パケットを送信した通信相手数が、特定Proto番号パケットを送信して特定Proto番号パケットを返信してきた通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPに特定Protoパケット等を返信した通信相手をホワイトリストとして取得する(ステップ5207)。異常通信の種類は、特定Proto使用Worm攻撃となる。   FIG. 52 shows processing for detecting a specific Proto-use Worm attack. First, it is determined whether or not the combination includes IP1 and Proto (step 5201). If satisfied, it is determined whether Proto ≠ TCP and Proto ≠ UDP. If satisfied, the number of communication partners K2 736 that transmitted the packet in the communication data 700-k in the communication data accumulation table 150 of this combination It is determined whether -k exceeds the threshold number DIP-N 584 of the number of destinations (step 5202). In the case of exceeding, the value obtained by dividing the cumulative number (C2 + C3) in the communication data 700-k by the aging time ATime 521 in the set value accumulation table 130 is a threshold value Thr13 532- It is determined whether or not 13 is exceeded (step 5203). Whether or not the number of communication partners K3 737-k that sent the specific Proto packet exceeds the product of the number of communication partners K2 736-k that sent back the specific Proto packet and the threshold IThr13-1 556 in the setting value accumulation table 130 Is determined (step 5204). When the number does not exceed, it means that the number of communication partners that transmitted the specific Proto number packet is larger than the number of communication partners that have returned the specific Proto number packet, which is abnormal. Further, the communication data storage table is searched, the IP included in the combination transmits a specific Proto packet, acquires the number of communication partners that have returned the specific Proto packet (step 5205), and the acquired number of communication partners is It is determined whether or not the communication partner number K2 736-k that has transmitted the specific Proto packet is smaller than the product of the threshold value IIThr13-2 557 in the set value accumulation table 130 (step 5206). If it is smaller, it means that the number of communication partners that transmitted the specific Proto number packet is larger than the number of communication partners that transmitted the specific Proto number packet and returned the specific Proto number packet, which is abnormal. Further, the communication data accumulation table is searched, and a communication partner that has returned a specific Proto packet or the like to the IP included in the combination is acquired as a white list (step 5207). The type of abnormal communication is a specific Proto-use Worm attack.

図53には、特定Proto使用DDoS攻撃を探知する処理を示す。まず、IP1とProtoを含む組合せか否かを判定する(ステップ5301)。満たす場合は、Proto≠TCPかつProto≠UDPであるか否かを判定し、満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内のパケットを送信してきた通信相手数K3 737-kが送信元数の閾値SIP-N 583を超過するか否かを判定する(ステップ5302)。超過する場合は、通信データ700-k内の積算数(C4+C5)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定Proto使用DDoS攻撃探知用の閾値Thr14 532-14を超過するか否かを判定する(ステップ5303)。超過する場合は、特定Protoパケットを返信した通信相手数K2 736-kが、特定Protoパケットを送信してきた通信相手数K3 737-kと設定値蓄積テーブル130内の閾値IThr14-1 558の積を超過するか否かを判定する(ステップ5304)。超過しない場合は、特定Proto番号パケットを送信してきた通信相手数が、特定Proto番号パケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPに特定Protoパケットを送信してきて、組合せが含むIPが特定Protoのパケットを返信した通信相手数を取得し(ステップ5305)、取得した通信相手数が、特定Protoパケットを送信してきた通信相手数K3 737-kと、設定値蓄積テーブル130内の閾値IIThr14-2 559の積よりも小さいか否かを判定する(ステップ5306)。小さい場合は、特定Proto番号パケットを送信してきた通信相手数が、特定Proto番号パケットを送信してきてデータパケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPが特定Protoパケット等を送信した通信相手をホワイトリストとして取得する(ステップ5307)。異常通信の種類は、特定Proto使用DDoS攻撃となる。   FIG. 53 shows processing for detecting a specific Proto-use DDoS attack. First, it is determined whether or not the combination includes IP1 and Proto (step 5301). If satisfied, determine whether Proto ≠ TCP and Proto ≠ UDP, and if satisfied, the number of communication partners K3 that have transmitted packets in the communication data 700-k in the communication data storage table 150 of this combination It is determined whether or not 737-k exceeds the threshold SIP-N 583 of the number of transmission sources (step 5302). In the case of exceeding, the value obtained by dividing the total number (C4 + C5) in the communication data 700-k by the aging time ATime 521 in the set value accumulation table 130 is the threshold Thr14 532- for detecting a specific Proto DDoS attack It is determined whether or not 14 is exceeded (step 5303). If it exceeds, the number of communication partners K2 736-k that sent back the specific Proto packet is the product of the number of communication partners K3 737-k that sent the specific Proto packet and the threshold IThr14-1 558 in the setting value accumulation table 130. It is determined whether or not it exceeds (step 5304). When the number does not exceed, it means that the number of communication partners that have transmitted the specific Proto number packet is larger than the number of communication partners that have returned the specific Proto number packet, which is abnormal. Further, the communication data accumulation table is searched, the specific Proto packet is transmitted to the IP included in the combination, the number of communication partners to which the IP included in the combination returns the packet of the specific Proto is acquired (step 5305), and the acquired communication It is determined whether the number of partners is smaller than the product of the number of communication partners K3 737-k that has transmitted the specific Proto packet and the threshold value IIThr14-2559 in the set value accumulation table 130 (step 5306). If it is small, it means that the number of communication partners that have transmitted the specific Proto number packet is larger than the number of communication partners that have transmitted the specific Proto number packet and returned the data packet, which is abnormal. Further, the communication data storage table is searched, and the communication partner to which the IP included in the combination has transmitted the specific Proto packet or the like is acquired as a white list (step 5307). The type of abnormal communication is a specific Proto-use DDoS attack.

図54には、ランダムPort使用P2P過負荷通信を探知する処理を示す。まず、IP1とProtoを含む組合せか否かを判定する(ステップ5401)。満たす場合は、ProtoがTCP/UDPか否かの判定を行い、満たす場合は、通信データ蓄積テーブル150内の通信データ700-k内のIP1がパケットを受信した通信相手数K3 737-kが設定値蓄積テーブル130内の送信元用の閾値SIP-N 583を超過するか否かと、パケットを送信した通信相手数K2 736-kが設定値蓄積テーブル130内の宛先用の閾値DIP-N 584を超過するか否かの判定を行う(ステップ5402)。超過する場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算バイトB1 721-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ランダムPort使用P2P過負荷通信探知用の閾値Thr15 532-15を超過するか否かの判定を行う(ステップ5403)。超過する場合は、本組合せの通信データ700-k内のIP1の通信相手が使うポートの種類数K10 744-kとIP1が使うポートの種類数K9 743-kの比率が、設定値蓄積テーブル130内の最小ポート自他率Min-Port-N-Ratio 593と最大ポート自他率Max-Port-N-Ratioの間に入っているか否かの判定を行う(ステップ5404)。間に入っている場合は、ランダムPort使用P2P過負荷通信となる。   FIG. 54 shows processing for detecting a random port use P2P overload communication. First, it is determined whether or not the combination includes IP1 and Proto (step 5401). If yes, determine whether Proto is TCP / UDP or not, if yes, set IP3 in communication data 700-k in communication data storage table 150 and the number of communication partners K3 737-k that received the packet Whether or not the transmission source threshold SIP-N 583 in the value storage table 130 is exceeded, and the number of communication partners K2 736-k that transmitted the packet is set to the destination threshold DIP-N 584 in the setting storage table 130. It is determined whether or not the number is exceeded (step 5402). If exceeded, the value obtained by dividing the accumulated byte B1 721-k in the communication data 700-k in the communication data storage table 150 of this combination by the aging time ATime 521 in the set value storage table 130 is the random port usage. It is determined whether or not the threshold value Thr15 532-15 for detecting P2P overload communication is exceeded (step 5403). If it exceeds, the ratio between the number of port types K10 744-k used by the IP1 communication partner in this combination of communication data 700-k and the number of port types K9 743-k used by IP1 is the set value accumulation table 130. It is determined whether or not it is between the minimum port self-others ratio Min-Port-N-Ratio 593 and the maximum port self-others ratio Max-Port-N-Ratio (step 5404). If it is in between, random port use P2P overload communication.

図55には、ランダムPort使用Client過負荷通信を探知する処理を示す。まず、IP1とProtoを含む組合せか否かを判定する(ステップ5501)。満たす場合は、ProtoがTCP/UDPか否かの判定を行い、満たす場合は、通信データ蓄積テーブル150内の通信データ700-k内のIP1がパケットを受信した通信相手数K3 737-kが設定値蓄積テーブル130内の送信元用の閾値SIP-N 583を超過するか否かと、パケットを送信した通信相手数K2 736-kが設定値蓄積テーブル130内の宛先用の閾値DIP-N 584を超過するか否かの判定を行う(ステップ5502)。超過する場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算バイトB1 721-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ランダムPort使用Client過負荷通信探知用の閾値Thr16 532-16を超過するか否かの判定を行う(ステップ5503)。超過する場合は、本組合せの通信データ700-k内のIP1の通信相手が使うポートの種類数K10 744-kとIP1が使うポートの種類数K9 743-kの比率が、設定値蓄積テーブル130内の最小ポート自他率Min-Port-N-Ratio 593よりも小さいか否かの判定を行う(ステップ5504)。小さい場合は、ランダムPort使用Client過負荷通信となる。   FIG. 55 shows processing for detecting a random port-using client overload communication. First, it is determined whether or not the combination includes IP1 and Proto (step 5501). If yes, determine whether Proto is TCP / UDP or not, if yes, set IP3 in communication data 700-k in communication data storage table 150 and the number of communication partners K3 737-k that received the packet Whether or not the transmission source threshold SIP-N 583 in the value storage table 130 is exceeded, and the number of communication partners K2 736-k that transmitted the packet is set to the destination threshold DIP-N 584 in the setting storage table 130. It is determined whether or not it exceeds (step 5502). If exceeded, the value obtained by dividing the accumulated byte B1 721-k in the communication data 700-k in the communication data storage table 150 of this combination by the aging time ATime 521 in the set value storage table 130 is the random port usage. It is determined whether or not the threshold value Thr16 532-16 for detecting client overload communication is exceeded (step 5503). If it exceeds, the ratio between the number of port types K10 744-k used by the IP1 communication partner in this combination of communication data 700-k and the number of port types K9 743-k used by IP1 is the set value accumulation table 130. It is determined whether or not it is smaller than the minimum port self-others ratio Min-Port-N-Ratio 593 (step 5504). If it is small, random port use client overload communication.

図56には、ランダムPort使用Server過負荷通信を探知する処理を示す。まず、IP1とProtoを含む組合せか否かを判定する(ステップ5601)。満たす場合は、ProtoがTCP/UDPか否かの判定を行い、満たす場合は、通信データ蓄積テーブル150内の通信データ700-k内のIP1がパケットを受信した通信相手数K3 737-kが設定値蓄積テーブル130内の送信元用の閾値SIP-N 583を超過するか否かと、パケットを送信した通信相手数K2 736-kが設定値蓄積テーブル130内の宛先用の閾値DIP-N 584を超過するか否かの判定を行う(ステップ5602)。超過する場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算バイトB1 721-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ランダムPort使用Server過負荷通信探知用の閾値Thr17 532-17を超過するか否かの判定を行う(ステップ5603)。超過する場合は、本組合せの通信データ700-k内のIP1の通信相手が使うポートの種類数K10 744-kとIP1が使うポートの種類数K9 743-kの比率が、設定値蓄積テーブル130内の最大ポート自他率Max-Port-N-Ratioよりも大きいか否かの判定を行う(ステップ5604)。大きい場合は、ランダムPort使用Server過負荷通信となる。ステップ5602〜5604のいずれもを満たさない場合は正常と判定する。   FIG. 56 shows a process for detecting a random port use server overload communication. First, it is determined whether or not the combination includes IP1 and Proto (step 5601). If yes, determine whether Proto is TCP / UDP or not, if yes, set IP3 in communication data 700-k in communication data storage table 150 and the number of communication partners K3 737-k that received the packet Whether or not the transmission source threshold SIP-N 583 in the value storage table 130 is exceeded, and the number of communication partners K2 736-k that transmitted the packet is set to the destination threshold DIP-N 584 in the setting storage table 130. It is determined whether or not the number is exceeded (step 5602). If exceeded, the value obtained by dividing the accumulated byte B1 721-k in the communication data 700-k in the communication data storage table 150 of this combination by the aging time ATime 521 in the set value storage table 130 is the random port usage. It is determined whether or not the server overload communication detection threshold Thr17 532-17 is exceeded (step 5603). If it exceeds, the ratio between the number of port types K10 744-k used by the IP1 communication partner in this combination of communication data 700-k and the number of port types K9 743-k used by IP1 is the set value accumulation table 130. It is determined whether or not it is larger than the maximum port self-other ratio Max-Port-N-Ratio (step 5604). If it is large, it becomes server overload communication using random port. If none of steps 5602 to 5604 is satisfied, it is determined as normal.

図57には、特定Proto使用特定IP過負荷通信を探知する処理を示す。まず、IP1とProtoを含む組合せか否かを判定する(ステップ5701)。満たす場合は、通信データ蓄積テーブル150内の通信データ700-k内のIP1がパケットを受信した通信相手数K3 737-kが設定値蓄積テーブル130内の送信元用の閾値SIP-N 583を超過するか否かと、パケットを送信した通信相手数K2 736-kが設定値蓄積テーブル130内の宛先用の閾値DIP-N 584を超過するか否かの判定を行う(ステップ5702)。超過する場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内の積算バイトB1 721-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定Proto使用特定IP過負荷通信探知用の閾値Thr18 532-18を超過するか否かの判定を行う(ステップ5703)。超過する場合は、異常と判定し、異常通信の種類は、特定Proto使用特定IP過負荷通信となる。ステップ5702〜5703のいずれかを満たさない場合は正常と判定する。   FIG. 57 shows processing for detecting specific Proto use specific IP overload communication. First, it is determined whether or not the combination includes IP1 and Proto (step 5701). If the condition is satisfied, the number of communication partners K3 737-k in which IP1 in communication data 700-k in communication data accumulation table 150 has received a packet exceeds the threshold SIP-N 583 for the transmission source in setting value accumulation table 130 It is determined whether or not the communication partner number K2 736-k that transmitted the packet exceeds the threshold value DIP-N 584 for the destination in the set value accumulation table 130 (step 5702). If exceeded, the value obtained by dividing the accumulated byte B1 721-k in the communication data 700-k in the communication data storage table 150 of this combination by the aging time ATime 521 in the set value storage table 130 is used for the specific Proto It is determined whether or not the threshold value Thr18 532-18 for detecting a specific IP overload communication is exceeded (step 5703). If it exceeds, it is determined as abnormal, and the type of abnormal communication is specific Proto use specific IP overload communication. If any of Steps 5702 to 5703 is not satisfied, it is determined as normal.

図58には、特定IP間特定Port間過負荷通信を探知する処理を示す。まず、IP1とIP2とProtoとPort1とPort2を含む組合せか否かを判定する(ステップ5801)。満たす場合は、通信データ蓄積テーブル150内の通信データ700-k内のIP1がPort1を送信元ポートとして送信したパケットの積算バイトB2 722-k、またはPort1を宛先ポートとして送信したパケットの積算バイトB3 723-k、またはPort1を送信元ポートとして受信したパケットの積算バイトB4 724-k、またはPort1を宛先ポートとして受信したパケットの積算バイトB5 725-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定IP間特定Port間過負荷通信探知用の閾値Thr19 532-19を超過するか否かの判定を行う(ステップ5802)。超過する場合は、異常と判定し、異常通信の種類は、特定IP間特定Port間過負荷通信となる。ステップ5802を満たさない場合は正常と判定する。   FIG. 58 shows a process of detecting overload communication between specific ports between specific IPs. First, it is determined whether or not the combination includes IP1, IP2, Proto, Port1, and Port2 (step 5801). If satisfied, IP1 in the communication data 700-k in the communication data accumulation table 150 is the accumulated byte B2 722-k of the packet transmitted with Port1 as the source port, or the accumulated byte B3 of the packet transmitted with Port1 as the destination port Aging time ATime in the set value accumulation table 130, 723-k, or accumulated byte B4 724-k of the packet received with Port1 as the source port, or accumulated byte B5 725-k of the packet received with Port1 as the destination port It is determined whether or not the value divided by 521 exceeds the threshold Thr19 532-19 for detecting overload communication between specific ports between specific IPs (step 5802). When it exceeds, it is determined as abnormal, and the type of abnormal communication is overload communication between specific ports between specific IPs. If step 5802 is not satisfied, it is determined as normal.

図59には、特定IP間特定Port使用過負荷通信を探知する処理を示す。まず、IP1とIP2とProtoとPort1を含む組合せか否かを判定する(ステップ5901)。満たす場合は、通信データ蓄積テーブル150内の通信データ700-k内のIP1がPort1を送信元ポートとして送信したパケットの積算バイトB2 722-k、またはPort1を宛先ポートとして送信したパケットの積算バイトB3 723-k、またはPort1を送信元ポートとして受信したパケットの積算バイトB4 724-k、またはPort1を宛先ポートとして受信したパケットの積算バイトB5 725-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定IP間特定Port使用過負荷通信探知用の閾値Thr20 532-20を超過するか否かの判定を行い、満たす場合は、それぞれについて、IP1の送信パケットの宛先ポートの種類K12 746-k、IP1の送信パケットの送信元ポートの種類K11 745-k、IP1の受信パケットの宛先ポートの種類K14 748-k、IP1の受信パケットの送信元ポートの種類K13 747-kが、設定値蓄積テーブル130内のポート用の閾値Port-N 581を超過するか否かの判定を行う(ステップ5902)。超過する場合は、異常と判定し、異常通信の種類は、特定IP間特定Port使用過負荷通信となる。ステップ5902を満たさない場合は正常と判定する。   FIG. 59 shows processing for detecting overload communication using a specific port between specific IPs. First, it is determined whether or not the combination includes IP1, IP2, Proto, and Port1 (step 5901). If satisfied, IP1 in the communication data 700-k in the communication data accumulation table 150 is the accumulated byte B2 722-k of the packet transmitted with Port1 as the source port, or the accumulated byte B3 of the packet transmitted with Port1 as the destination port Aging time ATime in the set value accumulation table 130, 723-k, or accumulated byte B4 724-k of the packet received with Port1 as the source port, or accumulated byte B5 725-k of the packet received with Port1 as the destination port It is determined whether the value divided by 521 exceeds the threshold Thr20 532-20 for the overload communication detection using the specific IP inter-specific port, and if so, for each, the destination port of the IP1 transmission packet Type K12 746-k, IP1 source packet source port type K11 745-k, IP1 received packet destination port type K14 748-k, IP1 received packet source port type K13 747-k , Setting value accumulation Exceeds the threshold Port-N 581 for ports Buru 130 it is determined whether the (step 5902). If it exceeds, it is determined as abnormal, and the type of abnormal communication is overload communication using specific ports between specific IPs. If step 5902 is not satisfied, it is determined as normal.

図60は、特定Port元Worm攻撃を探知する処理を示す。まず、IP1とProtoとPort1を含む組合せか否かを判定する(ステップ6001)。満たす場合は、Proto=TCP/UDPであるか否かを判定し、満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内のPort1をポート元としてパケットを送信した通信相手数K4 738-kが宛先数の閾値DIP-N 584を超過するか否かを判定する(ステップ6002)。超過する場合は、通信データ700-k内の積算数C2 712-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定Port元Worm攻撃探知用の閾値Thr21 532-21を超過するか否かを判定する(ステップ6003)。ProtoがTCPの場合は、IP1がPort1を宛先ポートとして送信してきた通信相手の数K7 741-kが、Port1を送信元ポートとして送信した通信相手の数K4 738-kと設定値蓄積テーブル130内の閾値IThr21-1 560の積を超過するか否かを判定し、ProtoがUDPの場合は、IP1がPort1を宛先ポートとして送信してきた通信相手の数K7 741-kが、Port1を送信元ポートとして送信した通信相手の数K4 738-kと設定値蓄積テーブル130内の閾値IIIThr21-3 562の積を超過するか否かを判定する(ステップ6004)。超過しない場合は、特定Port番号元パケットを送信した通信相手数が、特定Port番号宛パケットを返信してきた通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPが、Port1を送信元ポートとしてパケットを送信して、Port1を宛先ポートとして返信してきた通信相手数を取得する(ステップ6005)。ProtoがTCPの場合は、取得した通信相手数が、Port1を送信元ポートとして送信した通信相手の数K4 738-kと設定値蓄積テーブル130内の閾値IIThr21-2 561の積を超過するか否かの判定を、ProtoがUDPの場合は、取得した通信相手数が、Port1を送信元ポートとして送信した通信相手の数K4 738-kと設定値蓄積テーブル130内の閾値IVThr21-4 563の積を超過するか否かの判定を行う(ステップ6006)。小さい場合は、特定Port番号元パケットを送信した通信相手数が、特定Port番号元パケットを送信して特定Port番号宛パケットを返信してきた通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPにPort1を宛先ポートとしてパケットを返信してきた通信相手をホワイトリストとして取得する(ステップ6007)。異常通信の種類は、特定Port元Worm攻撃となる。   FIG. 60 shows processing for detecting a specific port-source Worm attack. First, it is determined whether or not the combination includes IP1, Proto, and Port1 (step 6001). If it satisfies, it is determined whether Proto = TCP / UDP, and if satisfied, the communication partner that sent the packet using Port1 in communication data 700-k in the communication data storage table 150 of this combination as the port source It is determined whether or not the number K4 738-k exceeds the destination number threshold DIP-N 584 (step 6002). In the case of exceeding, the value obtained by dividing the cumulative number C2 712-k in the communication data 700-k by the aging time ATime 521 in the setting value accumulation table 130 is the threshold Thr21 532-21 for detecting the specific port source Worm attack It is determined whether or not the threshold is exceeded (step 6003). When Proto is TCP, the number of communication partners K7 741-k that IP1 has transmitted using Port1 as the destination port is the number of communication partners K4 738-k that has transmitted Port1 as the source port and the set value accumulation table 130 If Proto is UDP, the number of communication partners K7 741-k that sent IP1 with Port1 as the destination port is Port1 as the source port. It is determined whether or not the product of the number of communication partners K4 738-k and the threshold value IIIThr21-3 562 in the set value accumulation table 130 is exceeded (step 6004). When the number does not exceed, it means that the number of communication partners that transmitted the specific port number original packet is larger than the number of communication partners that have returned the packet addressed to the specific port number, which is abnormal. Further, the communication data accumulation table is searched, and the IP included in the combination transmits a packet with Port1 as the source port, and acquires the number of communication partners that have returned with Port1 as the destination port (step 6005). If Proto is TCP, whether the acquired number of communication partners exceeds the product of the number of communication partners K4 738-k that transmitted Port1 as the source port and the threshold value IIThr21-2 561 in the setting value accumulation table 130 If Proto is UDP, the acquired number of communication partners is the product of the number of communication partners K4 738-k that transmitted Port1 as the source port and the threshold value IVThr21-4 563 in the setting value accumulation table 130. It is determined whether or not the value exceeds (step 6006). If it is small, it means that the number of communication partners that sent a specific port number source packet is larger than the number of communication partners that sent a specific port number source packet and returned a packet addressed to a specific port number. . Further, the communication data storage table is searched, and a communication partner that has returned a packet with Port 1 as the destination port to the IP included in the combination is acquired as a white list (step 6007). The type of abnormal communication is a specific port former Worm attack.

図61は、特定Port宛Worm攻撃を探知する処理を示す。まず、IP1とProtoとPort1を含む組合せか否かを判定する(ステップ6101)。満たす場合は、Proto=TCP/UDPであるか否かを判定し、満たす場合は、本組合せの通信データ蓄積テーブル150内の通信データ700-k内のPort1を宛先ポートとしてパケットを送信した通信相手数K5 739-kが宛先数の閾値DIP-N 584を超過するか否かを判定する(ステップ6102)。超過する場合は、通信データ700-k内の積算数C3 713-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定Port宛Worm攻撃探知用の閾値Thr22 532-22を超過するか否かを判定する(ステップ6103)。ProtoがTCPの場合は、IP1にPort1を送信元ポートとして送信してきた通信相手の数K6 740-kが、IP1がPort1を宛先ポートとして送信した通信相手の数K5 739-kと設定値蓄積テーブル130内の閾値IThr22-1 564の積を超過するか否かを判定し、ProtoがUDPの場合は、IP1にPort1を送信元ポートとして送信してきた通信相手の数K6 740-kが、IP1がPort1を宛先ポートとして送信した通信相手の数K5 739-kと設定値蓄積テーブル130内の閾値IIIThr22-3 566の積を超過するか否かを判定する(ステップ6104)。超過しない場合は、特定Port番号宛パケットを送信した通信相手数が、特定Port番号元パケットを返信してきた通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPがPort1を宛先ポートとしてパケットを送信して、Port1を送信元ポートとして返信してきた通信相手数を取得する(ステップ6105)。ProtoがTCPの場合は、取得した通信相手数が、Port1を宛先ポートとして送信した通信相手の数K5 739-kと設定値蓄積テーブル130内の閾値IIThr22-2 565の積を超過するか否かの判定を、ProtoがUDPの場合は、取得した通信相手数が、Port1を宛先ポートとして送信した通信相手の数K5 739-kと設定値蓄積テーブル130内の閾値IVThr22-4 567の積を超過するか否かの判定を行う(ステップ6106)。小さい場合は、特定Port番号宛パケットを送信した通信相手数が、特定Port番号元パケットを返信してきた通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPにPort1を送信元ポートとしてパケットを返信してきた通信相手をホワイトリストとして取得する(ステップ6107)。異常通信の種類は、特定Port宛Worm攻撃となる。   FIG. 61 shows processing for detecting a Worm attack addressed to a specific port. First, it is determined whether or not the combination includes IP1, Proto, and Port1 (step 6101). If satisfied, determine whether Proto = TCP / UDP, and if satisfied, the communication partner that sent the packet with Port1 in communication data 700-k in communication data accumulation table 150 of this combination as the destination port It is determined whether or not the number K5 739-k exceeds the destination number threshold DIP-N 584 (step 6102). If it exceeds, the value obtained by dividing the cumulative number C3 713-k in the communication data 700-k by the aging time ATime 521 in the setting value accumulation table 130 is the threshold Thr22 532-22 for detecting the Worm attack addressed to the specific port. It is determined whether or not the value exceeds (step 6103). When Proto is TCP, the number of communication partners K6 740-k that sent Port1 to IP1 as the source port is K6 740-k, and the number of communication partners K1 7 that sent IP1 with Port1 as the destination port is the set value accumulation table. It is determined whether or not the product of the threshold IThr22-1 564 within 130 is exceeded, and if Proto is UDP, the number of communication partners K6 740-k that sent Port1 as the source port to IP1 is IP1 It is determined whether or not the product of the number of communication partners K5 739-k that transmitted Port1 as the destination port exceeds the threshold value IIIThr22-3 566 in the set value accumulation table 130 (step 6104). When the number does not exceed, it means that the number of communication partners that have transmitted a packet destined for the specific port number is larger than the number of communication partners that have returned the specific port number source packet, which is abnormal. Further, the communication data storage table is searched, and the IP included in the combination transmits a packet with Port1 as the destination port, and acquires the number of communication partners that have returned with Port1 as the source port (step 6105). If Proto is TCP, whether the acquired number of communication partners exceeds the product of the number of communication partners K5 739-k that sent Port1 as the destination port and the threshold value IIThr22-2 565 in the setting value accumulation table 130 If Proto is UDP, the acquired number of communication partners exceeds the product of the number of communication partners K5 739-k that sent Port1 as the destination port and the threshold value IVThr22-4 567 in the setting value accumulation table 130. It is determined whether or not to perform (step 6106). If it is smaller, it means that the number of communication partners that have transmitted packets addressed to a specific port number is greater than the number of communication partners that have returned a specific port number source packet, which is abnormal. Further, the communication data accumulation table is searched, and a communication partner that has returned a packet with Port1 as the transmission source port to the IP included in the combination is acquired as a white list (step 6107). The type of abnormal communication is a Worm attack addressed to a specific port.

図62は、特定Port元DDoS攻撃を探知する処理を示す。まず、組合せがIP1とProtoとPort1を含むか否かを判定する(ステップ6201)。含む場合は、Proto=TCP/UDPであるか否かを判定し、満たす場合は、通信データ蓄積テーブル150内の通信データ700-k内において、本組合せが含むPortを送信元ポートとしてパケットを送信してきた通信相手数K6 740-kが、送信元数の閾値SIP-N 583を超過するか否かを判定する(ステップ6202)。超過する場合は、通信データ700-k内の積算数C4を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定Port元DDoS攻撃探知用の閾値Thr23 532-23を超過するか否かを判定する(ステップ6203)。ProtoがTCPの場合は、IP1がPort1を宛先ポートとしてパケットを送信した通信相手の数K5 739-kが、Port1を送信元ポートとしてパケットを送信してきた通信相手の数K6 740-kと設定値蓄積テーブル130内の閾値IThr23-1 568の積を超過するか否かを判定し、ProtoがUDPの場合は、IP1がPort1を宛先ポートとして送信した通信相手の数K5 739-kが、Port1を送信元ポートとしてパケットを送信してきた通信相手の数K6 740-kと設定値蓄積テーブル130内の閾値IIIThr23-570の積を超過するか否かを判定する(ステップ6204)。超過しない場合は、特定Port番号元パケットを送信してきた通信相手数が、特定Port番号宛パケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、本組合せが含むIPにPortを送信元ポートとしてパケットを送信してきて、本組合せが含むIP がPortを宛先ポートとして返信した通信相手数を取得する(ステップ6205)。ProtoがTCPの場合は、取得した通信相手数が、Portを送信元ポートとして送信してきた通信相手の数K6 740-kと設定値蓄積テーブル130内の閾値IIThr23-2 569の積を超過するか否かの判定を、ProtoがUDPの場合は、取得した通信相手数が、Portを送信元ポートとして送信してきた通信相手の数K6 740-kと設定値蓄積テーブル130内の閾値IVThr23-4 571の積を超過するか否かの判定を行う(ステップ6206)。小さい場合は、特定Port番号元パケットを送信してきた通信相手数が、特定Port番号元パケットを送信してきて特定Port番号宛パケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、組合せが含むIPがPortを宛先ポートとしてパケットを返信した通信相手をホワイトリストとして取得する(ステップ6207)。異常通信の種類は、特定Port元DDoS攻撃となる。   FIG. 62 shows a process for detecting a specific Port source DDoS attack. First, it is determined whether or not the combination includes IP1, Proto, and Port1 (step 6201). If it is included, it is determined whether Proto = TCP / UDP. If it is satisfied, a packet is transmitted using the port included in this combination as the source port in the communication data 700-k in the communication data accumulation table 150. It is determined whether or not the communication partner number K6 740-k has exceeded the transmission source number threshold SIP-N 583 (step 6202). In the case of exceeding, the value obtained by dividing the cumulative number C4 in the communication data 700-k by the aging time ATime 521 in the setting value accumulation table 130 exceeds the threshold Thr23 532-23 for detecting a specific Port source DDoS attack. It is determined whether or not (step 6203). When Proto is TCP, the number K5 739-k of the communication partner that sent the packet with IP1 as the destination port of IP1 is K6 740-k, the number of the communication partner that sent the packet with Port1 as the source port. It is determined whether or not the product of the threshold value IThr23-1 568 in the accumulation table 130 is exceeded, and if Proto is UDP, the number of communication partners K5 739-k that sent IP1 with Port1 as the destination port is It is determined whether or not the product of the number of communication partners K6 740-k that has transmitted a packet as a transmission source port and the threshold value IIIThr23-570 in the setting value accumulation table 130 is exceeded (step 6204). If the number does not exceed, it means that the number of communication partners that have transmitted specific port number original packets is greater than the number of communication partners that have returned packets addressed to a specific port number, which is abnormal. Further, the communication data accumulation table is searched, a packet is transmitted to the IP included in this combination with Port as the source port, and the number of communication partners to which the IP included in this combination returns with Port as the destination port is acquired (step 6205). If Proto is TCP, does the acquired number of communication partners exceed the product of the number of communication partners K6 740-k that sent Port as the source port and the threshold value IIThr23-2 569 in the setting value accumulation table 130? If Proto is UDP, the acquired number of communication partners is the number of communication partners K6 740-k that has transmitted Port as the transmission source port and the threshold value IVThr23-4 571 in the set value accumulation table 130. It is determined whether or not the product of is exceeded (step 6206). If it is small, it means that the number of communication partners that have transmitted specific port number source packets is greater than the number of communication partners that have transmitted specific port number source packets and returned packets addressed to specific port numbers. . Further, the communication data storage table is searched, and the communication partner to which the IP included in the combination returns a packet with Port as the destination port is acquired as a white list (step 6207). The type of abnormal communication is a specific port source DDoS attack.

図63は、特定Port宛DDoS攻撃を探知する処理を示す。まず、組合せがIP1とProtoとPort1を含むか否かを判定する(ステップ6301)。含む場合は、Proto=TCP/UDPであるか否かを判定し、満たす場合は、通信データ蓄積テーブル150内の通信データ700-k内において、本組合せが含むPortを宛先ポートとしてパケットを送信してきた通信相手数K7 741-kが、送信元数の閾値SIP-N 583を超過するか否かを判定する(ステップ6302)。超過する場合は、通信データ700-k内の積算数C5を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定Port宛DDoS攻撃探知用の閾値Thr24 532-24を超過するか否かを判定する(ステップ6303)。ProtoがTCPの場合は、IPがPortを送信元ポートとしてパケットを送信した通信相手の数K4 738-kが、Portを宛先ポートとしてパケットを送信してきた通信相手の数K7 741-kと設定値蓄積テーブル130内の閾値IThr24-1 572の積を超過するか否かを判定し、ProtoがUDPの場合は、IPがPortを送信元ポートとしてパケットを送信した通信相手の数K4 738-kが、Portを宛先ポートとしてパケットを送信してきた通信相手の数K7 741-kと設定値蓄積テーブル130内の閾値IIIThr24-3 574の積を超過するか否かを判定する(ステップ6304)。超過しない場合は、特定Port番号宛パケットを送信してきた通信相手数が、特定Port番号元パケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、本組合せが含むIPにPortを宛先ポートとしてパケットを送信してきて、本組合せが含むIP がPortを送信元ポートとして返信した通信相手数を取得する(ステップ6305)。ProtoがTCPの場合は、取得した通信相手数が、Portを宛先ポートとして送信してきた通信相手の数K7 741-kと設定値蓄積テーブル130内の閾値IIThr24-2 573の積を超過するか否かの判定を、ProtoがUDPの場合は、取得した通信相手数が、Portを宛先ポートとして送信してきた通信相手の数K7 741-kと設定値蓄積テーブル130内の閾値IVThr24-4 575の積を超過するか否かの判定を行う(ステップ6306)。超過しない場合は、特定Port番号宛パケットを送信してきた通信相手数が、特定Port番号宛パケットを送信してきて特定Port番号元パケットを返信した通信相手数より多いことを意味しており、異常である。更に、通信データ蓄積テーブルを探索して、本組合せが含むIPがPortを送信元ポートとしてパケットを返信した通信相手をホワイトリストとして取得する(ステップ6307)。異常通信の種類は、特定Port宛DDoS攻撃となる。   FIG. 63 shows processing for detecting a DDoS attack addressed to a specific port. First, it is determined whether or not the combination includes IP1, Proto, and Port1 (step 6301). If it is included, it is determined whether Proto = TCP / UDP, and if it is satisfied, a packet is transmitted with the port included in this combination as the destination port in the communication data 700-k in the communication data accumulation table 150. It is determined whether or not the communication partner number K7 741-k exceeds the transmission source number threshold SIP-N 583 (step 6302). If exceeded, the value obtained by dividing the cumulative number C5 in the communication data 700-k by the aging time ATime 521 in the set value accumulation table 130 exceeds the threshold Thr24 532-24 for detecting DDoS attacks for specific ports. It is determined whether or not (step 6303). When Proto is TCP, the number of communication partners K4 738-k that sent packets with IP Port as the source port is K7 741-k, the number of communication partners that sent packets with Port as the destination port. It is determined whether or not the product of the threshold value IThr24-1 572 in the accumulation table 130 is exceeded, and if Proto is UDP, the number of communication partners K4 738-k that has transmitted packets with Port as the source port is IP Then, it is determined whether or not the product of the number of communication partners K7 741-k that has transmitted packets with Port as the destination port exceeds the threshold value IIIThr24-3 574 in the set value accumulation table 130 (step 6304). If the number does not exceed, it means that the number of communication partners that have transmitted packets addressed to a specific port number is greater than the number of communication partners that have returned specific port number source packets, which is abnormal. Further, the communication data accumulation table is searched, a packet is transmitted to the IP included in this combination with Port as the destination port, and the number of communication partners to which the IP included in this combination returns with Port as the source port is acquired (step 6305). If Proto is TCP, whether the acquired number of communication partners exceeds the product of the number of communication partners K7 741-k that sent Port as the destination port and the threshold value IIThr24-2 573 in the set value accumulation table 130 If Proto is UDP, the acquired number of communication partners is the product of the number of communication partners K7 741-k that has transmitted Port as the destination port and the threshold value IVThr24-4 575 in the set value accumulation table 130. It is determined whether or not the value exceeds (step 6306). If the number does not exceed, it means that the number of communication partners that have sent packets destined for a specific port number is greater than the number of communication partners that have sent packets destined for a specific port number and returned specific port number original packets. is there. Further, the communication data accumulation table is searched, and the communication partner to which the IP included in this combination has returned a packet with Port as the transmission source port is acquired as a white list (step 6307). The type of abnormal communication is a DDoS attack for a specific port.

図64は、特定Port使用P2P過負荷通信を探知する処理を示す。まず、組合せがIP1とProtoとPort1を含むか否かを判定する(ステップ6401)。含む場合は、Proto=TCP/UDPであるか否かを判定し、満たす場合は、通信データ蓄積テーブル150内の通信データ700-k内において、本組合せが含むPortを宛先ポートまたは送信元ポートとしてパケットを送信した通信相手数K2 736-kが、宛先数の閾値DIP-N 584を超過するか否か、本組合せが含むPortを宛先ポートまたは送信元ポートとしてパケットを送信してきた通信相手数K3 737-kが、送信元数の閾値SIP-N 583を超過するか否か、を判定し(ステップ6402)、共に超過する場合は、通信データ700-k内の積算バイトB1 721-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定Port使用P2P過負荷通信探知用の閾値Thr25 532-25を超過するか否かを判定する(ステップ6403)。超過している場合は、IPがPortを送信元ポートとして送信したパケットの積算バイトB2と、宛先ポートとして受信したパケットの積算バイトB5との和と、IPがPortを宛先ポートとして送信したパケットの積算バイトB3と、送信元ポートとして受信したパケットの積算バイトB4との和との比率が、設定値蓄積テーブル130内の最大帯域比率閾値Max-B-Ratio 590と最小帯域比率閾値Min-B-Ratio 591の間にあるか否かを判定する(ステップ6404)。満たす場合は、異常と判定され、異常通信の種類は、特定Port使用P2P過負荷通信となる。   FIG. 64 shows processing for detecting P2P overload communication using a specific port. First, it is determined whether or not the combination includes IP1, Proto, and Port1 (step 6401). If it is included, it is determined whether Proto = TCP / UDP. If it is satisfied, the port included in this combination is set as the destination port or the source port in the communication data 700-k in the communication data accumulation table 150. Number of communication partners K2 736-k that transmitted packets exceeds the threshold DIP-N 584 for the number of destinations, or the number of communication partners K3 that transmitted packets using the port included in this combination as the destination port or source port It is determined whether or not 737-k exceeds the threshold SIP-N 583 of the number of transmission sources (step 6402). If both exceed, the accumulated byte B1 721-k in the communication data 700-k is It is determined whether or not the value divided by the aging time ATime 521 in the set value accumulation table 130 exceeds the threshold Thr25 532-25 for P2P overload communication detection for the specific port (step 6403). If exceeded, the sum of the accumulated byte B2 of the packet sent by IP using Port as the source port and the accumulated byte B5 of the packet received as the destination port and the packet sent by IP using Port as the destination port The ratio between the accumulated byte B3 and the sum of accumulated bytes B4 of packets received as the source port is the maximum bandwidth ratio threshold Max-B-Ratio 590 and the minimum bandwidth ratio threshold Min-B- in the set value accumulation table 130. It is determined whether the ratio is between 591 (step 6404). When it is satisfied, it is determined as abnormal, and the type of abnormal communication is P2P overload communication using a specific port.

図65は、特定Port使用Client過負荷通信を探知する処理を示す。まず、組合せがIP1とProtoとPort1を含むか否かを判定する(ステップ6501)。含む場合は、Proto=TCP/UDPであるか否かを判定し、満たす場合は、通信データ蓄積テーブル150内の通信データ700-k内において、本組合せが含むPortを宛先ポートまたは送信元ポートとしてパケットを送信した通信相手数K2 736-kが、宛先数の閾値DIP-N 584を超過するか否かと、本組合せが含むPortを宛先ポートまたは送信元ポートとしてパケットを送信してきた通信相手数K3 737-kが、送信元数の閾値SIP-N 583を超過するか否かを判定し(ステップ6502)、共に超過する場合は、通信データ700-k内の積算バイトB1 721-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定Port使用Client過負荷通信探知用の閾値Thr26 532-26を超過するか否かを判定する(ステップ6503)。超過している場合は、IPがPortを送信元ポートとして送信したパケットの積算バイトB2と、宛先ポートとして受信したパケットの積算バイトB5との和と、IPがPortを宛先ポートとして送信したパケットの積算バイトB3と、送信元ポートとして受信したパケットの積算バイトB4 724-kとの和との比率が、設定値蓄積テーブル130内の最小帯域比率閾値Min-B-Ratio 591よりも小さいか否かを判定する(ステップ6504)。満たす場合は、異常と判定され、異常通信の種類は、特定Port使用Client過負荷通信となる。   FIG. 65 shows processing for detecting client overload communication using a specific port. First, it is determined whether or not the combination includes IP1, Proto, and Port1 (step 6501). If it is included, it is determined whether Proto = TCP / UDP. If it is satisfied, the port included in this combination is set as the destination port or the source port in the communication data 700-k in the communication data accumulation table 150. Number of communication partners K2 736-k that sent packets exceeds whether or not the threshold DIP-N 584 for the number of destinations, and the number of communication partners K3 that sent packets with the port included in this combination as the destination port or source port Judge whether or not 737-k exceeds the threshold SIP-N 583 of the number of senders (step 6502). If both exceed, set the accumulated byte B1 721-k in the communication data 700-k It is determined whether or not the value divided by the aging time ATime 521 in the value accumulation table 130 exceeds the threshold Thr26 532-26 for detecting a specific port use client overload communication (step 6503). If exceeded, the sum of the accumulated byte B2 of the packet sent by IP using Port as the source port and the accumulated byte B5 of the packet received as the destination port and the packet sent by IP using Port as the destination port Whether or not the ratio of the accumulated byte B3 and the sum of accumulated bytes B4 724-k of the packet received as the source port is smaller than the minimum bandwidth ratio threshold Min-B-Ratio 591 in the set value accumulation table 130 Is determined (step 6504). When it is satisfied, it is determined as abnormal, and the type of abnormal communication is client overload communication using a specific port.

図66は、特定Port使用Server過負荷通信を探知する処理を示す。まず、組合せがIP1とProtoとPort1を含むか否かを判定する(ステップ6601)。含む場合は、Proto=TCP/UDPであるか否かを判定し、満たす場合は、通信データ蓄積テーブル150内の通信データ700-k内において、本組合せが含むPortを宛先ポートまたは送信元ポートとしてパケットを送信した通信相手数K2 736-kが、宛先数の閾値DIP-N 584を超過するか否かと、本組合せが含むPortを宛先ポートまたは送信元ポートとしてパケットを送信してきた通信相手数K3 737-kが、送信元数の閾値SIP-N 583を超過するか否かを判定し(ステップ6602)、共に超過する場合は、通信データ700-k内の積算バイトB1 721-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定Port使用Server過負荷通信探知用の閾値Thr27 532-27を超過するか否かを判定する(ステップ6603)。超過している場合は、IPがPortを送信元ポートとして送信したパケットの積算バイトB2 722-kと、宛先ポートとして受信したパケットの積算バイトB5 725-kとの和と、IPがPortを宛先ポートとして送信したパケットの積算バイトB3 723-kと、送信元ポートとして受信したパケットの積算バイトB4 724-kとの和との比率が、設定値蓄積テーブル130内の最大帯域比率閾値Max-B-Ratio 590よりも大きいか否かを判定する(ステップ6604)。満たす場合は、異常と判定され、異常通信の種類は、特定Port使用Server過負荷通信となる。   FIG. 66 shows a process for detecting a server overload communication using a specific port. First, it is determined whether or not the combination includes IP1, Proto, and Port1 (step 6601). If it is included, it is determined whether Proto = TCP / UDP. If it is satisfied, the port included in this combination is set as the destination port or the source port in the communication data 700-k in the communication data accumulation table 150. Number of communication partners K2 736-k that sent packets exceeds whether or not the threshold DIP-N 584 for the number of destinations, and the number of communication partners K3 that sent packets with the port included in this combination as the destination port or source port Judge whether or not 737-k exceeds the threshold SIP-N 583 of the number of senders (step 6602), and if both exceed, set accumulated byte B1 721-k in communication data 700-k It is determined whether or not the value divided by the aging time ATime 521 in the value accumulation table 130 exceeds the threshold Thr27 532-27 for detecting overload communication with a specific port server (step 6603). If so, the sum of the accumulated byte B2 722-k of the packet sent by IP with Port as the source port and the accumulated byte B5 725-k of the packet received as the destination port, and the IP destined for the Port The ratio of the cumulative byte B3 723-k of the packet transmitted as the port and the sum of the cumulative byte B4 724-k of the packet received as the source port is the maximum bandwidth ratio threshold Max-B in the set value accumulation table 130 It is determined whether or not it is greater than -Ratio 590 (step 6604). If it is satisfied, it is determined as abnormal, and the type of abnormal communication is Server overload communication using a specific port.

図67は、特定IP間ランダムProto過負荷通信を探知する処理を示す。まず、組合せがIP1とIP2を含むか否かを判定する(ステップ6701)。含む場合は、通信データ蓄積テーブル150内の通信データ700-k内において、積算バイトB2+B3を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定IP間ランダムProto過負荷通信探知用の閾値Thr28 532-28を超過し、尚且つIP1がIP2に送信するパケットが使用するProtoの種類数K19 753-kがプロトコルの種類数用の閾値Proto-N 582を超過するか否かを判定、または、積算バイトB4+B5を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、特定IP間ランダムProto過負荷通信探知用の閾値Thr28 532-28を超過し、尚且つIP2がIP1に送信するパケットが使用するProtoの種類数K20 754-kがプロトコルの種類数用の閾値Proto-N 582を超過するか否かを判定し(ステップ6702)、満たす場合は、異常と判定され、異常通信の種類は、特定IP間ランダムProto過負荷通信となる。   FIG. 67 shows processing for detecting random Proto overload communication between specific IPs. First, it is determined whether or not the combination includes IP1 and IP2 (step 6701). If included, the value obtained by dividing the accumulated bytes B2 + B3 by the aging time ATime 521 in the set value accumulation table 130 in the communication data 700-k in the communication data accumulation table 150 is the random Proto overload between specific IPs. Whether the number of Proto types K19 753-k used by the packet sent by IP1 to IP2 exceeds the threshold Proto-N 582 for the number of protocol types, exceeding the threshold Thr28 532-28 for communication detection Or the value obtained by dividing the accumulated byte B4 + B5 by the aging time ATime 521 in the set value accumulation table 130 exceeds the threshold Thr28 532-28 for detecting random Proto overload communication between specific IPs, Further, it is determined whether or not the Proto type number K20 754-k used by the packet transmitted by IP2 to IP1 exceeds the threshold Proto-N 582 for the number of protocol types (step 6702). It is judged as abnormal, and the type of abnormal communication is random Proto overload communication between specific IPs. To become.

図68は、ランダムProto使用Worm攻撃を探知する処理を示す。まず、組合せがIP1を含むか否かを判定する(ステップ6801)。含む場合は、通信データ蓄積テーブル150内の通信データ700-k内において、IP1が送信するパケットが使用するProtoの種類数K22 756-kがプロトコルの種類数用の閾値Proto-N 582を超過するか否かを判定し(ステップ6802)、超過する場合は、積算数C2+C3を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ランダムProto使用Worm攻撃探知用の閾値Thr29 532-29を超過し、尚且つ、IP1がパケットを送信した通信相手数K2 736-kが、宛先数の閾値DIP-N 584を超過するか否かを判定し(ステップ6803)、共に超過する場合は、IP1がパケットを受信した通信相手数K3 737-kが、IP1がパケットを送信した通信相手数K2 736-kと設定値蓄積テーブル130内の閾値IThr29-1 576の積を超過するか否かの判定を行い(ステップ6804)、超過しない場合は、IP1が受信するパケットが使用するProtoの種類数K23 757-kが、IP1が送信するパケットが使用するProtoの種類数K22 756-kと設定値蓄積テーブル130内の閾値IIThr29-2 577の積を超過するか否かの判定を行い(ステップ6805)、超過しない場合は、通信データ蓄積テーブル150内を探索して、IPにパケットを返信してきた通信相手をホワイトリストとして取得する(ステップ6806)。異常通信の種類は、ランダムProto使用Worm攻撃となる。   FIG. 68 shows a process for detecting a random Proto-based Worm attack. First, it is determined whether or not the combination includes IP1 (step 6801). If included, in the communication data 700-k in the communication data accumulation table 150, the number of Proto types K22 756-k used by the packet transmitted by IP1 exceeds the threshold Proto-N 582 for the number of protocol types (Step 6802), and if it exceeds, the value obtained by dividing the cumulative number C2 + C3 by the aging time ATime 521 in the set value accumulation table 130 is a threshold Thr29 for detecting a random Proto-use Worm attack It is determined whether or not the number of communication partners K2 736-k that has exceeded 532-29 and IP1 has transmitted a packet exceeds the threshold DIP-N 584 for the number of destinations (step 6803). If the communication partner number K3 737-k from which IP1 received the packet exceeds the product of the communication partner number K2 736-k from which IP1 sent the packet and the threshold value IThr29-1 576 in the set value accumulation table 130 Judgment is made (step 6804), and if it does not exceed, the packet received by IP1 is used Determine whether the number of Proto types K23 757-k exceeds the product of the number of Proto types K22 756-k used by the packet transmitted by IP1 and the threshold value IIThr29-2 577 in the set value accumulation table 130 (Step 6805) If not exceeded, the communication data storage table 150 is searched, and the communication partner that has returned the packet to the IP is acquired as a white list (Step 6806). The type of abnormal communication is a random Proto-use Worm attack.

図69は、ランダムProto使用DDoS攻撃を探知する処理を示す。まず、組合せがIP1を含むか否かを判定する(ステップ6901)。含む場合は、通信データ蓄積テーブル150内の通信データ700-k内において、IP1が受信するパケットが使用するProtoの種類数K23 757-kがプロトコルの種類数用の閾値Proto-N 582を超過するか否かを判定し(ステップ6902)、超過する場合は、積算数(C4+C5)を、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ランダムProto使用DDoS攻撃探知用の閾値Thr30 532-30を超過し、尚且つ、IP1がパケットを受信した通信相手数K3 737-kが、送信元数の閾値SIP-N 583を超過するか否かを判定する(ステップ6903)。共に超過する場合は、IP1がパケットを送信した通信相手数K2 736-kが、IP1がパケットを受信した通信相手数K3 737-kと設定値蓄積テーブル130内の閾値IThr30-1 578の積を超過するか否かの判定を行い(ステップ6904)、超過しない場合は、IP1が送信するパケットが使用するProtoの種類数K22 756-kが、IP1が受信するパケットが使用するProtoの種類数K23 757-kと設定値蓄積テーブル130内の閾値IIThr30-2 579の積を超過するか否かの判定を行う(ステップ6905)。超過しない場合は、通信データ蓄積テーブル150内を探索して、IPがパケットを返信した通信相手をホワイトリストとして取得する(ステップ6906)。異常通信の種類は、ランダムProto使用DDoS攻撃となる。   FIG. 69 shows a process for detecting a random Proto-use DDoS attack. First, it is determined whether or not the combination includes IP1 (step 6901). If included, in the communication data 700-k in the communication data accumulation table 150, the number of Proto types K23 757-k used by the packet received by IP1 exceeds the threshold Proto-N 582 for the number of protocol types (Step 6902), and if it exceeds, the value obtained by dividing the total number (C4 + C5) by the aging time ATime 521 in the set value accumulation table 130 is used for detecting a random Doto attack using Proto It is determined whether or not the communication partner number K3 737-k that has exceeded the threshold Thr30 532-30 and IP1 has received a packet exceeds the threshold SIP-N 583 of the number of transmission sources (step 6903). If both are exceeded, the number of communication partners K2 736-k to which IP1 has transmitted the packet is the product of the number of communication partners K3 737-k to which IP1 has received the packet and the threshold IThr30-1 578 in the set value accumulation table 130. It is determined whether or not it exceeds (Step 6904). If not, the number of Proto types K22 756-k used by the packet transmitted by IP1 is the number of Proto types K23 used by the packet received by IP1. It is determined whether or not the product of 757-k and the threshold value IIThr30-2 579 in the set value accumulation table 130 is exceeded (step 6905). If not, the communication data storage table 150 is searched, and the communication partner to which the IP has returned the packet is acquired as a white list (step 6906). The type of anomalous communication is a random Proto-use DDoS attack.

図70は、ランダムInLine使用特定IP元攻撃を探知する処理を示す。まず、組合せがIP1を含むか否かを判定する(ステップ7001)。含む場合は、通信データ蓄積テーブル150内の通信データ700-k内において、IP1を送信元に持つパケットの入力ラインの種類数K19 753-kが、設定値蓄積テーブル130内の入力ライン数判定用の閾値InLine-N 585を超過するか否かの判定を行う(ステップ7002)。超過する場合は、積算数C2 712-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ランダムInLine使用特定IP元攻撃探知用の閾値Thr31 532-31を超過するか否かを判定する(ステップ7003)。超過する場合は、異常と判定する。異常通信の種類は、ランダムInLine使用特定IP元攻撃となる。   FIG. 70 shows processing for detecting a specific IP source attack using random InLine. First, it is determined whether or not the combination includes IP1 (step 7001). If included, in the communication data 700-k in the communication data storage table 150, the number of input lines K19 753-k of the packet having IP1 as the transmission source is used for determining the number of input lines in the set value storage table 130. It is determined whether or not the threshold value InLine-N 585 is exceeded (step 7002). If exceeded, whether the cumulative number C2 712-k divided by the aging time ATime 521 in the set value accumulation table 130 exceeds the threshold Thr31 532-31 for detecting a specific IP source attack using random InLine Is determined (step 7003). When exceeding, it determines with it being abnormal. The type of abnormal communication is a random InLine specific IP source attack.

図71は、ランダムProto使用特定IP過負荷通信を探知する処理を示す。まず、組合せがIP1を含むか否かを判定する(ステップ7101)。含む場合は、通信データ蓄積テーブル150内の通信データ700-k内において、IPが送受信するパケットのプロトコルの種類数K21 755-kが、設定値蓄積テーブル130内のプロトコル数判定用の閾値Proto-N 582を超過するか否かの判定を行う(ステップ7102)。超過する場合は、積算バイトB1 721-kを、設定値蓄積テーブル130内のエージング時間ATime 521で割った値が、ランダムProto使用特定IP過負荷通信探知用の閾値Thr32 532-32を超過するか否かを判定する(ステップ7103)。超過する場合は、通信データ700-k内の、IPがパケットを送信した通信相手数K2 736-kとパケットを受信した通信相手数K3-737-kが、設定値蓄積テーブル130内の宛先数の閾値DIP-N 584と送信元数の閾値SIP-N 583を超過するか否かの判定を行う(ステップ7104)。超過する場合は、異常と判定する。異常通信の種類は、ランダムProto使用特定IP過負荷通信となる。   FIG. 71 shows a process for detecting a random Proto use specific IP overload communication. First, it is determined whether or not the combination includes IP1 (step 7101). If it is included, in the communication data 700-k in the communication data accumulation table 150, the protocol type number K21 755-k of the packet transmitted / received by the IP is the threshold value Proto- It is determined whether or not N 582 is exceeded (step 7102). If exceeded, whether the value obtained by dividing the accumulated byte B1 721-k by the aging time ATime 521 in the set value accumulation table 130 exceeds the threshold Thr32 532-32 for detecting a specific IP overload communication using random Proto It is determined whether or not (step 7103). If the number exceeds the number of destinations in the set value accumulation table 130, the number of communication partners K2 736-k to which the IP transmitted the packet and the number of communication partners K3-737-k that received the packet in the communication data 700-k It is determined whether or not the threshold value DIP-N 584 and the transmission source number threshold value SIP-N 583 are exceeded (step 7104). When exceeding, it determines with it being abnormal. The type of abnormal communication is random Proto use specific IP overload communication.

図72は、特定InLine使用特定IP送受信攻撃を探知する処理を示す。まず、組合せがIP1とInLineを含むか否かを判定する(ステップ7201)。含む場合は、特定InLineに同一IPを送信元に持つパケットと、宛先に持つパケットが同時に入力しているか否かを調べるため、積算数C2 712-kとC4 714-kが共に、特定InLine使用特定IP送受信攻撃探知用の閾値Thr33 532-33より大きいか否かを判定する(ステップ7202)。共に大きい場合は、異常と判定され、異常通信の種類は、特定InLine使用特定IP送受信攻撃となる。   FIG. 72 shows processing for detecting a specific InLine use specific IP transmission / reception attack. First, it is determined whether or not the combination includes IP1 and InLine (step 7201). If it is included, both the cumulative numbers C2 712-k and C4 714-k use the specific InLine to check whether the packet with the same IP as the source and the packet with the destination are simultaneously input to the specific InLine. It is determined whether or not the threshold value Thr33 532-33 for detecting a specific IP transmission / reception attack is larger (step 7202). When both are large, it is determined as abnormal, and the type of abnormal communication is a specific IP transmission attack using specific InLine.

以上、図40〜72の説明で述べてきた正常/異常の判定処理3801を行うことで、標本化した通信データ使用でも、多種類の異常通信の探知が可能となる。そのため、抽出処理や記録処理を行うパケットデータ数を削減することができ、高速回線上で多種類の異常通信の探知を行うことが容易となる。   As described above, by performing the normal / abnormal determination process 3801 described in the description of FIGS. 40 to 72, it is possible to detect many types of abnormal communication even when sampled communication data is used. Therefore, the number of packet data to be extracted and recorded can be reduced, and it becomes easy to detect various types of abnormal communication on a high-speed line.

設定部171は、設定値蓄積テーブル130の全ての値を、外部の端末170からコマンド160を受けて変更(図1の161)することができる。例えば、“ID-1=1”というコマンドを端末170から受け取ると、ID-1 510-1の値を1に変更する。2つ以上の値を変更する場合は、端末170から“ID-1=1,Thr3=56”というコマンドを送ることで、ID-1 510-1とThr3 532-3の値をそれぞれ1,56に変更することができる。探知の不要な異常通信については、外部の端末170からコマンドを送ることで、対応するThr1〜33 532-1〜33の値を無限大に設定すればよい。これにより、探知しようとする異常通信の種類を限定することが可能である。例えば、“ID-1=∞”というコマンドで、Syn Flag TCP Flood型DoS攻撃の探知を禁止することができる。   The setting unit 171 can change all values in the setting value accumulation table 130 by receiving a command 160 from the external terminal 170 (161 in FIG. 1). For example, when the command “ID-1 = 1” is received from the terminal 170, the value of ID-1 510-1 is changed to 1. To change two or more values, send the command “ID-1 = 1, Thr3 = 56” from the terminal 170 to set the values of ID-1 510-1 and Thr3 532-3 to 1,56, respectively. Can be changed. For abnormal communication that does not require detection, the value of the corresponding Thr1 to 33 532-1 to 33 may be set to infinity by sending a command from the external terminal 170. Thereby, it is possible to limit the types of abnormal communication to be detected. For example, detection of a Syn Flag TCP Flood type DoS attack can be prohibited by a command “ID-1 = ∞”.

また、設定部171は、外部の端末170からコマンド160を受けて通信データ蓄積テーブル150のデータを取得(図1の156)・整列した上で、端末170に返信することもできる。例えば、“getvalue 128 C1”というコマンドを端末170から受け取ると、通信データ蓄積テーブル150内からC1の大きな上位128エントリを取り出して、整列したデータを、端末170に返信する。C1の部分には、C1〜5 711〜715-k、B1〜5 721〜725-k、Cnf 731-k、K0〜K23 734〜757-k等などを指定して、指定したデータの大小に基づく整列方法に変更することもできる。   Further, the setting unit 171 can receive a command 160 from the external terminal 170, acquire (156 in FIG. 1) and arrange the data in the communication data accumulation table 150, and return the data to the terminal 170. For example, when a command “getvalue 128 C1” is received from the terminal 170, the upper 128 entries having a large C1 are extracted from the communication data storage table 150 and the aligned data is returned to the terminal 170. In C1, specify C1-5 711-715-k, B1-5 721-725-k, Cnf 731-k, K0-K23 734-757-k, etc. It is also possible to change to an alignment method based on.

以上記載した抽出部180の処理900〜1200と、記録部181の処理1300及び1600と、探知部182の処理3600と3800によって、パケット積算数の多寡と新旧に基づいて通信データを上書き抽出する方式と、通信データとして複数のパケットの種類数を記録する方式と、パケットの標本解析を前提とした異常通信の探知方式が実現される。これによって、従来の方式がメモリ容量やCPU処理能力の不足により実現できなかった、不特定多数のPCやサーバを防御対象とした高速回線上での多種類の異常通信の同時探知が可能となる。   A method for overwriting extraction of communication data based on the number of accumulated packets and the old and new by processing 900 to 1200 of the extraction unit 180 described above, processing 1300 and 1600 of the recording unit 181 and processing 3600 and 3800 of the detection unit 182 In addition, a method for recording the number of types of a plurality of packets as communication data and a method for detecting abnormal communication based on packet sample analysis are realized. This makes it possible to simultaneously detect various types of abnormal communication on high-speed lines that protect a large number of unspecified PCs and servers that conventional methods could not be realized due to insufficient memory capacity and CPU processing capacity. .

異常通信の探知・制御部。Abnormal communication detection and control unit. 本発明適用の異常通信の探知・制御機能を追加したルータの使用環境。The use environment of the router which added the detection and control function of the abnormal communication of this invention application. 本発明適用の異常通信の探知・制御機能を追加したルータ。A router to which an abnormal communication detection / control function applied to the present invention is added. 本発明適用の異常通信の探知・制御機能を備える外部装置とルータ。An external device and a router having an abnormal communication detection / control function applied to the present invention. 設定値蓄積テーブル130のフォーマット。Format of the set value accumulation table 130. 抽出/記録履歴蓄積テーブル140のフォーマット。Format of extraction / record history accumulation table 140. 通信データ蓄積テーブル150のフォーマット。The format of the communication data accumulation table 150. 複製したパケットデータ101のフォーマット。The format of the duplicated packet data 101. 組合せ抽出部120が行う組合せ抽出処理900のフローチャート。The flowchart of the combination extraction process 900 which the combination extraction part 120 performs. 組合せ整列部121が行う組合せ整列処理1000のフローチャート。The flowchart of the combination arrangement | sequence process 1000 which the combination arrangement | sequence part 121 performs. アドレス生成部122が行う組合せ整列処理1100のフローチャート。The flowchart of the combination arrangement | sequence process 1100 which the address generation part 122 performs. 通信データ抽出判定部123が行う通信データ抽出判定処理1200のフローチャート。The flowchart of the communication data extraction determination process 1200 which the communication data extraction determination part 123 performs. 通信データ記録部124が行う通信データ記録処理1300のフローチャート。The flowchart of the communication data recording process 1300 which the communication data recording part 124 performs. 通信データ記録処理1300が含むパケットの選択積算処理1310の詳細。Details of the packet selective integration process 1310 included in the communication data recording process 1300. 通信データ記録処理1300が含む選択積算の種類の記録処理1311の詳細。Details of the recording process 1311 of the type of selection integration included in the communication data recording process 1300. 種類数記録部125が行う種類数記録処理1600のフローチャート。The flowchart of the kind number recording process 1600 which the kind number recording part 125 performs. 判定結果が上書の時のパケットの種類数の減算処理1605のフローチャートの一部。A part of flowchart of the subtraction processing 1605 of the number of packet types when the determination result is overwriting. 判定結果が上書の時のパケットの種類数の減算処理1605のフローチャートの一部。A part of flowchart of the subtraction processing 1605 of the number of packet types when the determination result is overwriting. 判定結果が上書の時のパケットの種類数の減算処理1605のフローチャートの一部。A part of flowchart of the subtraction processing 1605 of the number of packet types when the determination result is overwriting. 判定結果が上書の時のパケットの種類数の減算処理1605のフローチャートの一部。A part of flowchart of the subtraction processing 1605 of the number of packet types when the determination result is overwriting. 判定結果が上書の時のパケットの種類数の減算処理1605のフローチャートの一部。A part of flowchart of the subtraction processing 1605 of the number of packet types when the determination result is overwriting. 判定結果が上書の時のパケットの種類数の減算処理1605のフローチャートの一部。A part of flowchart of the subtraction processing 1605 of the number of packet types when the determination result is overwriting. 判定結果が上書の時のパケットの種類数の積算処理1606のフローチャートの一部。A part of flowchart of the integration processing 1606 of the number of types of packets when the determination result is overwriting. 判定結果が上書の時のパケットの種類数の積算処理1606のフローチャートの一部。A part of flowchart of the integration processing 1606 of the number of types of packets when the determination result is overwriting. 判定結果が上書の時のパケットの種類数の積算処理1606のフローチャートの一部。A part of flowchart of the integration processing 1606 of the number of types of packets when the determination result is overwriting. 判定結果が上書の時のパケットの種類数の積算処理1606のフローチャートの一部。A part of flowchart of the integration processing 1606 of the number of types of packets when the determination result is overwriting. 判定結果が上書の時のパケットの種類数の積算処理1606のフローチャートの一部。A part of flowchart of the integration processing 1606 of the number of types of packets when the determination result is overwriting. 判定結果が上書の時のパケットの種類数の積算処理1606のフローチャートの一部。A part of flowchart of the integration processing 1606 of the number of types of packets when the determination result is overwriting. 判定結果が一致の時のパケットの種類数の積算処理1603のフローチャートの一部。A part of flowchart of the integration processing 1603 of the number of types of packets when the determination results match. 判定結果が一致の時のパケットの種類数の積算処理1603のフローチャートの一部。A part of flowchart of the integration processing 1603 of the number of types of packets when the determination results match. 判定結果が一致の時のパケットの種類数の積算処理1603のフローチャートの一部。A part of flowchart of the integration processing 1603 of the number of types of packets when the determination results match. 判定結果が一致の時のパケットの種類数の積算処理1603のフローチャートの一部。A part of flowchart of the integration processing 1603 of the number of types of packets when the determination results match. 判定結果が一致の時のパケットの種類数の積算処理1603のフローチャートの一部。A part of flowchart of the integration processing 1603 of the number of types of packets when the determination results match. 判定結果が一致の時のパケットの種類数の積算処理1603のフローチャートの一部。A part of flowchart of the integration processing 1603 of the number of types of packets when the determination results match. 判定結果が一致の時のパケットの種類数の積算処理1603のフローチャートの一部。A part of flowchart of the integration processing 1603 of the number of types of packets when the determination results match. 組合せ判定部126が行う組合せ判定処理3600のフローチャート。The flowchart of the combination determination process 3600 which the combination determination part 126 performs. 組合せ判定処理3600が含む組合せの判定処理3604の詳細。Details of the combination determination process 3604 included in the combination determination process 3600. 正常/異常判定部127が行う正常/異常判定処理3800のフローチャート。The flowchart of the normal / abnormal determination process 3800 performed by the normal / abnormal determination unit 127. 組合せと、探知して出力する異常通信の種類の関係。The relationship between the combination and the type of abnormal communication that is detected and output. Syn Flag TCP Flood型DoS攻撃の探知処理のフローチャート。Syn Flag TCP Flood type DoS attack detection process flowchart. 特定Flag TCP Flood型DoS攻撃の探知処理のフローチャート。The flowchart of the detection process of specific Flag TCP Flood type DoS attack. Syn Flag TCP Flood型DDoS攻撃の探知処理のフローチャート。Syn Flag TCP Flood type DDoS attack detection process flowchart. 特定Flag TCP Flood型DDoS攻撃の探知処理のフローチャート。The flowchart of the detection process of specific Flag TCP Flood type DDoS attack. ランダムFlag TCP Flood型DoS攻撃の探知処理のフローチャート。The flowchart of the detection process of a random Flag TCP Flood type DoS attack. ICMP Flood型DoS攻撃の探知処理のフローチャート。The flowchart of the detection process of an ICMP Flood type DoS attack. 特定IP間ランダムPort過負荷通信の探知処理のフローチャート。The flowchart of the detection process of random Port overload communication between specific IPs. 特定IP間特定Proto使用過負荷通信の探知処理のフローチャート。The flowchart of the detection process of the specific Proto use overload communication between specific IP. ランダムFlag TCP Flood型DDoS攻撃の探知処理のフローチャート。Random Flag TCP Flood type DDoS attack detection processing flowchart. ランダムPort Worm攻撃の探知処理のフローチャート。The flowchart of the detection process of a random Port Worm attack. ランダムPort DDoS攻撃の探知処理のフローチャート。The flowchart of the detection process of a random Port DDoS attack. ICMP Flood型 DDoS/Worm攻撃の探知処理のフローチャート。Flow chart of ICMP Flood type DDoS / Worm attack detection process. 特定Proto使用Worm攻撃の探知処理のフローチャート。The flowchart of the detection process of the specific Proto use Worm attack. 特定Proto使用DDoS攻撃の探知処理のフローチャート。The flowchart of the detection process of DDoS attack using specific Proto. ランダムPort使用P2P過負荷通信の探知処理のフローチャート。The flowchart of the detection process of random port use P2P overload communication. ランダムPort使用Client過負荷通信の探知処理のフローチャート。Flowchart of detection processing of client overload communication using random port. ランダムPort使用Server過負荷通信の探知処理のフローチャート。Flowchart of detection processing of server overload communication using random port. 特定Proto使用特定IP過負荷通信の探知処理のフローチャート。The flowchart of the detection process of specific IP overload communication using specific Proto. 特定IP間特定Port間過負荷通信の探知処理のフローチャート。The flowchart of the detection process of the overload communication between specific ports between specific IPs. 特定IP間特定Port使用過負荷通信の探知処理のフローチャート。The flowchart of the detection process of overload communication using specific port between specific IP. 特定Port元Worm攻撃の探知処理のフローチャート。The flowchart of the detection process of the specific Port former Worm attack. 特定Port宛Worm攻撃の探知処理のフローチャート。The flowchart of the detection process of the Worm attack addressed to a specific port. 特定Port元DDoS攻撃の探知処理のフローチャート。The flowchart of the detection process of the specific Port origin DDoS attack. 特定Port宛DDoS攻撃の探知処理のフローチャート。The flowchart of the detection process of the DDoS attack for specific ports. 特定Port使用P2P過負荷通信の探知処理のフローチャート。The flowchart of the detection process of P2P overload communication using specific Port. 特定Port使用Client過負荷通信の探知処理のフローチャート。Flowchart of detection processing of client overload communication using specific port. 特定Port使用Server過負荷通信の探知処理のフローチャート。Flowchart of detection processing of server overload communication using specific port. 特定IP間ランダムProto過負荷通信の探知処理のフローチャート。The flowchart of the detection process of random Proto overload communication between specific IPs. ランダムProto使用Worm攻撃の探知処理のフローチャート。Flow chart of detection process of Worm attack using random Proto. ランダムProto使用DDoS攻撃の探知処理のフローチャート。The flowchart of the detection process of the random Doto use DDoS attack. ランダムInLine使用特定IP元攻撃の探知処理のフローチャート。The flowchart of the detection process of a specific IP former attack using random InLine. ランダムProto使用特定IP過負荷通信の探知処理のフローチャート。The flowchart of the detection process of specific IP overload communication using random Proto. 特定InLine使用特定IP送受信攻撃の探知処理のフローチャート。The flowchart of the detection process of specific IP transmission attack using specific InLine.

符号の説明Explanation of symbols

210,220,230…通信事業者のネットワーク、240…企業網、250,260…個人のPC、241…FirewallやIDS等の異常通信探知装置、242…企業のサーバ、211,212,213,214…エッジルータ、221,222,223,224…攻撃元サーバ、231,232,233,234…攻撃元サーバ、281…DDoS等のルータ攻撃、282…P2P等の過大通信、283…DDoS等のFirewall攻撃。 210,220,230 ... telecom operator network, 240 ... enterprise network, 250,260 ... personal PC, 241 ... abnormal communication detectors such as Firewall and IDS, 242 ... corporate server, 211,212,213,214 ... edge router, 221,222,223,224 ... attack source server, 231,232,233,234 ... Attack source server, router attack such as 281 ... DDoS, excessive communication such as 282 ... P2P, firewall attack such as 283 ... DDoS.

Claims (13)

受信した複数のパケットのうち、該パケット中のフィールドに所定の値の組み合わせを有するパケットの積算数から上記パケットの特性を判別する異常通信探知装置であって、
受信した複数のパケットのうち一定の割合のパケットを複製するパケットプロセッサと、
パケット中の所定の値の組み合わせのハッシュ値が所定のハッシュ値になるパケットの積算数を保持する記憶領域と、該受信したパケットの積算数を記憶すべき上記ハッシュ値の記憶領域が他の組み合わせを持つパケットの積算数の保持に既に利用されていた回数を積算した衝突回数を保持する記憶領域とを対応付けて有する記憶部と、
パケットを受信した際に、該パケット中の所定の値の組み合わせに基づいてハッシュ値を計算し、該計算されたハッシュ値に基づいて前記組み合わせを持つパケットの積算数を保持する記憶領域を決定し、上記決定された記憶領域に既に保持されている積算数に対応するパケットが持つ組み合わせと上記パケットが持つ組み合わせが一致するか否かを判定し、一致すると判定された場合は上記記憶領域の積算数を加算し、一致せずに衝突と判定された場合はさらに上記記憶領域に対応する上記衝突回数が所定の閾値を超過しているか否かを判定し、超過していない場合は該衝突回数を加算し、超過している場合は上記記憶領域に既に保持されている上記積算数を消去して上記受信したパケットの組み合わせを含むパケットの積算数を上書きするプロセッサとを備えた異常通信探知装置。
Among the received packets, the abnormal communication detection device for determining the characteristics of the packet from the cumulative number of packets having a combination of predetermined values in the field in the packet,
A packet processor that replicates a certain percentage of the received packets;
A storage area that holds the cumulative number of packets in which a hash value of a combination of predetermined values in a packet becomes a predetermined hash value, and a storage area of the hash value that should store the cumulative number of received packets are in other combinations A storage unit associated with a storage area that holds the number of collisions obtained by integrating the number of times that has already been used to hold the cumulative number of packets having
When a packet is received, a hash value is calculated based on a combination of predetermined values in the packet, and a storage area that holds the cumulative number of packets having the combination is determined based on the calculated hash value. , It is determined whether the combination of the packet corresponding to the integration number already held in the determined storage area matches the combination of the packet, and if it is determined to match, the integration of the storage area When it is determined that there is a collision without a match, it is further determined whether or not the number of collisions corresponding to the storage area exceeds a predetermined threshold, and if not, the number of collisions If the number exceeds, the accumulated number already stored in the storage area is deleted, and the accumulated number of packets including the received packet combination is overwritten. Abnormal communication apparatus for detecting a processor.
請求項1記載の異常通信探知装置であって、
上記プロセッサが、衝突回数が所定の閾値を超えているか否かを判定する代わりに、上記衝突回数と上記積算数の比率が所定の閾値を超えているか否かを判定することを特徴とする異常通信探知装置。
The abnormal communication detection device according to claim 1,
An abnormality in which the processor determines whether the ratio of the number of collisions and the cumulative number exceeds a predetermined threshold instead of determining whether the number of collisions exceeds a predetermined threshold Communication detector.
受信した複数のパケットのうち、該パケット中の所定の値の組み合わせを有するパケットの積算数から上記パケットの特性を判別する異常通信探知装置であって、
受信したパケットを一定の割合で複製したパケット中の所定の値の組み合わせが同一であるパケットの積算数を保持する記憶領域と、前記パケット数の積算を開始した積算開始時刻と最後に積算した積算最終時刻とを保持する記憶領域とを、対応付けて有する記憶部と、
前記パケット数の積算値を保持する記憶領域を前記所定の値の組み合わせから一意に定めて、定めた前記領域において、積算最終時刻を更新したときに、積算最終時刻と積算開始時刻の差分が予め定めた閾値を超過するか否かの判定を行い、超過している場合は、積算最終時刻の増加値に基づいて、パケットの積算数や衝突回数を減算する処理を行うプロセッサとを備えた異常通信探知装置。
Among the received packets, the abnormal communication detection device for determining the characteristics of the packet from the cumulative number of packets having a combination of predetermined values in the packet,
A storage area that holds the cumulative number of packets that have the same combination of predetermined values in packets that are duplicates of received packets at a fixed rate, the cumulative start time that started the cumulative number of packets, and the cumulative total that was last accumulated A storage unit having a storage area that holds the last time in association with each other;
A storage area that holds the integrated value of the number of packets is uniquely determined from the combination of the predetermined values, and when the integrated final time is updated in the determined area, a difference between the integrated final time and the integrated start time is previously determined. An abnormality including a processor that performs a process of subtracting the accumulated number of packets and the number of collisions based on the increment value of the accumulated last time when it is determined whether or not the predetermined threshold is exceeded. Communication detector.
請求項1乃至3のいずれかに記載の異常通信探知装置であって、
記憶部が、前記衝突回数の積算を開始した衝突開始時刻と最後に積算した衝突最終時刻を保持し、
プロセッサが、衝突と判定して衝突最終時刻を更新したときに、衝突最終時刻と衝突開始時刻の差分と、積算最終時刻と積算開始時刻の差分の比率が、予め定めた閾値を超過するか否かの判定を行い、超過していない場合は、前記記憶領域の衝突回数を増加させる処理を、超過している場合は、前記記憶領域が保持していた他の組み合わせのパケットの積算数を消去して、新たな組み合わせのパケットの積算数を上書き積算する処理を行うことを特徴とする異常通信探知装置。
An abnormal communication detection device according to any one of claims 1 to 3,
The storage unit holds the collision start time at which the accumulation of the number of collisions was started and the last collision last time accumulated,
Whether or not the ratio of the difference between the collision final time and the collision start time and the difference between the cumulative final time and the cumulative start time exceeds a predetermined threshold when the processor determines that the collision has occurred and updates the collision final time. If it does not exceed, the process of increasing the number of collisions of the storage area is performed, and if it exceeds, the cumulative number of packets of other combinations held in the storage area is deleted. Then, an abnormal communication detection apparatus, which performs a process of overwriting and integrating the integrated number of packets of a new combination.
受信した複数のパケットのうち、該パケット中の所定の値の組み合わせを有するパケットの積算数から上記パケットの特性を判別する異常通信探知装置であって、
受信したパケットを一定の割合で複製したパケット中の所定の値の組み合わせが同一であるパケットの積算数を保持する記憶領域と、送信元と宛先の一部または全てが一致する複数のパケットの積算数を保持する記憶領域とを、対応付けて有する記憶部と、
前記パケットの積算値を保持する記憶領域を、前記所定の値の組み合わせが含む送信元と宛先、あるいは入力元と出力先を整列した上で一意に定めるプロセッサを備えた異常通信探知装置。
Among the received packets, the abnormal communication detection device for determining the characteristics of the packet from the cumulative number of packets having a combination of predetermined values in the packet,
A storage area that holds the cumulative number of packets that have the same combination of predetermined values in packets that are duplicates of received packets at a certain rate, and the integration of multiple packets that match some or all of the source and destination A storage unit that associates a storage area that holds a number;
An abnormal communication detection apparatus comprising: a processor that uniquely determines a storage area that holds an integrated value of the packet by arranging a transmission source and a destination included in a combination of the predetermined values or an input source and an output destination.
請求項1、3または5記載の異常通信探知装置であって、
記憶部が、前記パケットの積算数を保持する記憶領域に、別の記憶領域に保持している同一の組み合わせを含むパケットの種類数を保持し、
プロセッサが、同一の組み合わせを含むパケットを新たに上書き積算した場合は、前記パケットの種類数を積算し、同一の組み合わせを含むパケットの積算数が、同一の組み合わせを含まないパケットによって上書き積算された場合は、前記パケットの種類数を減算することを特徴とする異常通信探知装置。
The abnormal communication detection device according to claim 1, 3 or 5,
The storage unit holds the number of types of packets including the same combination held in another storage area in the storage area holding the accumulated number of packets,
When the processor newly overwrites and accumulates packets containing the same combination, the number of types of the packets is accumulated, and the cumulative number of packets including the same combination is overwritten and accumulated by packets not including the same combination. In this case, the abnormal communication detection apparatus subtracts the number of types of the packets.
請求項5記載の異常通信探知装置であって、
プロセッサが、前記の送信元と宛先の一部または全てが一致する複数のパケットの積算数を用いて、前記パケットの特性を判定することを特徴とする異常通信探知装置。
The abnormal communication detection device according to claim 5,
An abnormal communication detection apparatus, wherein a processor determines a characteristic of the packet by using a cumulative number of a plurality of packets in which a part or all of the transmission source and the destination match.
請求項6記載の異常通信探知装置であって、
プロセッサが、前記の同一の組み合わせを含むパケットの種類数を1つまたは複数用いて、前記パケットの特性を判定することを特徴とする異常通信探知装置。
The abnormal communication detection device according to claim 6,
An abnormal communication detection apparatus, wherein a processor determines a characteristic of the packet by using one or a plurality of types of packets including the same combination.
受信した複数のパケットのうち、該パケット中の所定の値の組み合わせを有するパケットの積算数から上記パケットの特性を判別する異常通信探知装置であって、
受信したパケットを一定の割合で複製したパケット中の所定の値の組み合わせが同一であるパケットの積算数を、同一の領域に保持する記憶部と、
特定のアドレス番号とポート番号を、共に送信元にしたパケットと、共に宛先にしたパケットと、前者を送信元に後者を宛先にしたパケットと、前者を宛先に後者を送信元としたパケットの積算数を用いて、特定のアドレス番号とポート番号を送信元または宛先としたパケットの特性を判定するプロセッサを備える異常通信探知装置。
Among the received packets, the abnormal communication detection device for determining the characteristics of the packet from the cumulative number of packets having a combination of predetermined values in the packet,
A storage unit that holds, in the same area, the cumulative number of packets that have the same combination of predetermined values in packets that are duplicates of received packets at a certain rate;
Total number of packets that have both a specific address number and port number as the source, a packet that has both the destination, a packet that has the former as the source and the latter as the destination, and a packet that has the former as the destination and the latter as the source An abnormal communication detection apparatus comprising a processor that uses a number to determine characteristics of a packet having a specific address number and port number as a source or destination.
受信した複数のパケットのうち、該パケット中の所定の値の組み合わせを有するパケットの積算数から上記パケットの特性を判別する異常通信探知装置であって、 受信したパケットを一定の割合で複製したパケット中の所定の値の組み合わせが同一であるパケットの積算数を、同一の領域に保持する記憶部と、
特定のアドレス番号とポート番号を、共に送信元にしたパケットと、共に宛先にしたパケットと、前者を送信元に後者を宛先にしたパケットと、前者を宛先に後者を送信元としたパケットの種類数を用いて、特定のアドレス番号とポート番号を送信元または宛先としたパケットの特性を判定するプロセッサを備える異常通信探知装置。
Among the received packets, an abnormal communication detection device that determines the characteristics of the packet from the cumulative number of packets having a predetermined combination of values in the packet, wherein the received packet is duplicated at a certain rate A storage unit that holds the accumulated number of packets having the same combination of predetermined values in the same area;
Packets with a specific address number and port number as the source, packets with the destination as the destination, packets with the former as the source and the latter as the destination, and packets with the former as the destination and the latter as the source An abnormal communication detection apparatus comprising a processor that uses a number to determine characteristics of a packet having a specific address number and port number as a source or destination.
受信した複数のパケットのうち、該パケット中の所定の値の組み合わせを有するパケットの積算数から上記パケットの特性を判別する異常通信探知装置であって、
受信したパケットを一定の割合で複製したパケット中の所定の値の組み合わせが同一であるパケットの積算数を、同一の領域に保持する記憶部と、
特定の宛先と特定のTCPフラグ番号を持つパケットの送信元の種類数と、特定の送信元と特定のTCPフラグ番号を持つパケットの宛先の種類数を用いて、特定の送信元または宛先を持つパケットの特性を判定するプロセッサを備える異常通信探知装置。
Among the received packets, the abnormal communication detection device for determining the characteristics of the packet from the cumulative number of packets having a combination of predetermined values in the packet,
A storage unit that holds, in the same area, the cumulative number of packets that have the same combination of predetermined values in packets that are duplicates of received packets at a certain rate;
Have a specific source or destination using the number of types of packets that have a specific destination and a specific TCP flag number, and the number of types of packets that have a specific source and a specific TCP flag number An abnormal communication detection apparatus comprising a processor for determining packet characteristics.
受信した複数のパケットのうち、該パケット中の所定の値の組み合わせを有するパケットの積算数から上記パケットの特性を判別する異常通信探知装置であって、
受信したパケットを一定の割合で複製したパケット中の所定の値の組み合わせが同一であるパケットの積算数を、同一の領域に保持する記憶部と、
特定のアドレス番号を送信元にしたパケットの送信元ポートや宛先ポートの種類数と、特定のアドレス番号を宛先にしたパケットの送信元ポートや宛先ポートの種類数を用いて、特定のアドレス番号を送信元または宛先としたパケットの特性を判定するプロセッサを備える異常通信探知装置。
Among the received packets, the abnormal communication detection device for determining the characteristics of the packet from the cumulative number of packets having a combination of predetermined values in the packet,
A storage unit that holds, in the same area, the cumulative number of packets that have the same combination of predetermined values in packets that are duplicates of received packets at a certain rate;
A specific address number is determined using the number of types of the source port and destination port of a packet having a specific address number as the source and the number of types of the source port and destination port of a packet having the specific address number as the destination. An abnormal communication detection apparatus including a processor that determines characteristics of a packet as a transmission source or a destination.
受信した複数のパケットのうち、該パケット中の所定の値の組み合わせを有するパケットの積算数から上記パケットの特性を判別する異常通信探知装置であって、
受信したパケットを一定の割合で複製したパケット中の所定の値の組み合わせが同一であるパケットの積算数を、同一の領域に保持する記憶部と、
特定のアドレス番号を送信元に含むパケットの送信元、または前記アドレス番号を宛先に含むパケットの宛先が含むポート番号の種類数と、前記アドレス番号を送信元に含むパケットの宛先、または前記アドレス番号を宛先に含むパケットの送信元が含むポート番号の種類数を用いて、特定のアドレス番号を送信元または宛先としたパケットの特性を判定するプロセッサを備える異常通信探知装置。
Among the received packets, the abnormal communication detection device for determining the characteristics of the packet from the cumulative number of packets having a combination of predetermined values in the packet,
A storage unit that holds, in the same area, the cumulative number of packets that have the same combination of predetermined values in packets that are duplicates of received packets at a certain rate;
The source of a packet including a specific address number as a source, or the number of types of port numbers included in the destination of a packet including the address number as a destination, and the destination of a packet including the address number as a source, or the address number An abnormal communication detection apparatus comprising a processor that determines the characteristics of a packet having a specific address number as a transmission source or destination by using the number of types of port numbers included in the transmission source of the packet including the destination.
JP2005140589A 2005-05-13 2005-05-13 Abnormal communication detector Expired - Fee Related JP4538370B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005140589A JP4538370B2 (en) 2005-05-13 2005-05-13 Abnormal communication detector

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005140589A JP4538370B2 (en) 2005-05-13 2005-05-13 Abnormal communication detector

Publications (2)

Publication Number Publication Date
JP2006319693A JP2006319693A (en) 2006-11-24
JP4538370B2 true JP4538370B2 (en) 2010-09-08

Family

ID=37539948

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005140589A Expired - Fee Related JP4538370B2 (en) 2005-05-13 2005-05-13 Abnormal communication detector

Country Status (1)

Country Link
JP (1) JP4538370B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4538370B2 (en) * 2005-05-13 2010-09-08 アラクサラネットワークス株式会社 Abnormal communication detector
JP4734223B2 (en) 2006-11-29 2011-07-27 アラクサラネットワークス株式会社 Traffic analyzer and analysis method
JP5014282B2 (en) 2008-08-06 2012-08-29 アラクサラネットワークス株式会社 Communication data statistics apparatus, communication data statistics method and program
JP6591504B2 (en) * 2017-08-31 2019-10-16 セコム株式会社 Packet filtering device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006319693A (en) * 2005-05-13 2006-11-24 Alaxala Networks Corp Abnormal communication detecting apparatus

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006319693A (en) * 2005-05-13 2006-11-24 Alaxala Networks Corp Abnormal communication detecting apparatus

Also Published As

Publication number Publication date
JP2006319693A (en) 2006-11-24

Similar Documents

Publication Publication Date Title
US10735379B2 (en) Hybrid hardware-software distributed threat analysis
US10608992B2 (en) Hybrid hardware-software distributed threat analysis
US8010685B2 (en) Method and apparatus for content classification
US7499412B2 (en) Active packet content analyzer for communications network
Binkley et al. An algorithm for anomaly-based botnet detection.
US8964548B1 (en) System and method for determining network application signatures using flow payloads
JP4759389B2 (en) Packet communication device
US7486673B2 (en) Method and system for reassembling packets prior to searching
US8175096B2 (en) Device for protection against illegal communications and network system thereof
Karagiannis et al. Profiling the end host
US8474043B2 (en) Speed and memory optimization of intrusion detection system (IDS) and intrusion prevention system (IPS) rule processing
US20040179477A1 (en) Method and apparatus for processing network packets
CN112039904A (en) Network traffic analysis and file extraction system and method
US20120026881A1 (en) Packet classification in a network security device
EP1122932B1 (en) Protection of computer networks against malicious content
Dorfinger et al. Entropy-based traffic filtering to support real-time Skype detection
US20060272019A1 (en) Intelligent database selection for intrusion detection & prevention systems
JP4538370B2 (en) Abnormal communication detector
KR102014741B1 (en) Matching method of high speed snort rule and yara rule based on fpga
CN113765849B (en) Abnormal network flow detection method and device
CN115017502A (en) Flow processing method and protection system
JP2014036408A (en) Communication apparatus, communication system, communication method, and communication program
Pilli et al. Data reduction by identification and correlation of TCP/IP attack attributes for network forensics
Moon et al. A Multi-resolution Port Scan Detection Technique for High-speed Networks.
US20230367875A1 (en) Method for processing traffic in protection device, and protection device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080416

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080416

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100422

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100615

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100621

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130625

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4538370

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees