JP2003283571A - Defensive method and apparatus against disability-of- service attack, and computer program therefor - Google Patents

Defensive method and apparatus against disability-of- service attack, and computer program therefor

Info

Publication number
JP2003283571A
JP2003283571A JP2002079728A JP2002079728A JP2003283571A JP 2003283571 A JP2003283571 A JP 2003283571A JP 2002079728 A JP2002079728 A JP 2002079728A JP 2002079728 A JP2002079728 A JP 2002079728A JP 2003283571 A JP2003283571 A JP 2003283571A
Authority
JP
Japan
Prior art keywords
packet
communication
attack
communication packet
communication device
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.)
Granted
Application number
JP2002079728A
Other languages
Japanese (ja)
Other versions
JP3652661B2 (en
Inventor
Chen Eric
エリック・チェン
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2002079728A priority Critical patent/JP3652661B2/en
Publication of JP2003283571A publication Critical patent/JP2003283571A/en
Application granted granted Critical
Publication of JP3652661B2 publication Critical patent/JP3652661B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

<P>PROBLEM TO BE SOLVED: To provide a defensive method with which defense is made possible by detecting more kinds of attacks and the communication band of a network is prevented from being wasted by traffic caused by the attack. <P>SOLUTION: In order to defense a computer 7000a of a person to be attacked, shields 7001b and 7001c distributed with a variable level number are located. Each of the shields analyzes a packet associated with the computer 7000a of the person to be attacked, narrows down the band of suspicious traffic by an examination and detects the attack. When the attack is detected, each shield transfers the program of a probe toward the upstream of the attack. When the packet of the attack is found out, a probe 7001e discards the packet and transfers the program of the probe toward the further upstream side. <P>COPYRIGHT: (C)2004,JPO

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】この発明は、通信ネットワー
クにおいて大量の通信パケット(通信トラフィック)を
被攻撃者に向けて送りつけることによって機能障害を引
き起こすことを狙った攻撃を防御するための防御方法、
およびその防御方法を実現する通信装置ならびにコンピ
ュータプログラムに関する。特に、通信ネットワークに
おけるサービス不能(DoS,Denial of Service)攻
撃、とりわけ分散型サービス不能(DDoS,Distribu
ted Denial of Service )攻撃を防御するための技術に
関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a defense method for protecting an attack aimed at causing a functional failure by sending a large amount of communication packets (communication traffic) to an attacked person in a communication network,
And a communication device and a computer program for realizing the protection method. In particular, Denial of Service (DoS) attacks in communication networks, especially distributed denial of service (DDoS, Distribu).
ted Denial of Service) Technology for defending against attacks.

【0002】[0002]

【従来の技術】近年、通信ネットワーク(具体的にはイ
ンターネット)において、しばしば著名なウェブサイト
に対するDDoS攻撃が行われ、深刻な問題となってい
る。なお、DDoS攻撃とは、その名が示す通り分散型
のDoS攻撃である。DoS攻撃とは、ネットワークに
接続されたコンピュータ(ウェブサーバなど)に対して
大量の通信トラフィックを送りつけるものである。Do
S攻撃には様々なタイプのものがあるが、大きく次の2
つのタイプに分類される。第1のタイプは攻撃対象のコ
ンピュータの資源を浪費することによって機能障害を引
き起こすことを狙うものであり、第2のタイプはより単
純に大量の通信トラフィックによって攻撃対象の通信ネ
ットワークの帯域を浪費することを狙うものである。
2. Description of the Related Art In recent years, in communication networks (specifically, the Internet), DDoS attacks on well-known websites have often been performed, which has become a serious problem. The DDoS attack is, as the name implies, a distributed DoS attack. The DoS attack is a method of sending a large amount of communication traffic to a computer (such as a web server) connected to the network. Do
There are various types of S attacks, but there are two
There are two types. The first type aims to cause a malfunction by wasting the resources of the attacked computer, and the second type simply wastes the bandwidth of the attacked communication network with a large amount of communication traffic. It aims at that.

【0003】第1の従来技術として、ファイアウォール
装置を用いてDDoS攻撃を防御することが考えられ
る。これは、何らかの手段によって悪意のある攻撃の通
信パケットの送信元アドレス(具体的にはIPアドレス
など)を特定できたことを前提として、ファイアウォー
ルの外側から到着する通信パケットのうち該当する送信
元アドレスを有するものをファイアウォール装置におい
て破棄し、ファイアウォールの内側のコンピュータの資
源に悪影響を及ぼさないようにするという防御方法であ
る。
As a first conventional technique, it is conceivable to use a firewall device to protect against a DDoS attack. This is based on the assumption that the source address (specifically, IP address) of the communication packet of the malicious attack could be identified by some means, and the corresponding source address of the communication packet arriving from outside the firewall. It is a defense method of discarding those having the above in the firewall device so as not to adversely affect the resources of the computer inside the firewall.

【0004】また、第2の従来技術としては、本願発明
者らが既に特許出願済の防御方法も存在する。これは、
ネットワーク上で通信パケットを転送するための通信装
置(具体的にはルータやスイッチなど)上に、DDoS
攻撃を検知したり検知したDDoS攻撃を防御したりす
るためのコンピュータプログラムを実行することのでき
る環境を設け、次のような手順で被攻撃者のコンピュー
タを攻撃から防御するものである。その手順とは、ま
ず、被攻撃者のコンピュータに最も近い通信装置(境界
通信装置,境界ルータ)において当該通信装置を通過す
る通信パケットを監視し、DDoS攻撃を検出するプロ
グラムモジュールを作動させる。DDoS攻撃が検出さ
れると、当該DDoS攻撃の通信パケットを破棄するモ
ジュールを作動させる。そして、上位の通信装置、すな
わち攻撃元に近い側の通信装置を検索するモジュールを
作動させる。次に、検索された上位の通信装置に対して
当該検索モジュールを送信する。そして、上位の通信装
置においてさらに上位の通信装置を検索する。そのよう
にして、順次上位の通信装置を検索し、攻撃元に最も近
い通信装置を防御位置と定める。その定められた防御位
置の通信装置に対して、DDoS攻撃の通信パケットを
破棄するモジュールを送信し、当該防御位置の通信装置
においてこのモジュールを作動させることにより防御を
行う。
As a second conventional technique, there is also a defense method for which the present inventors have already applied for a patent. this is,
A DDoS is installed on a communication device (specifically, a router or a switch) for transferring a communication packet on the network.
An environment in which a computer program for detecting an attack or a DDoS attack detected can be executed is provided, and a computer of an attacked person is protected from the attack by the following procedure. In the procedure, first, in a communication device (boundary communication device, boundary router) closest to the attacked person's computer, a communication packet passing through the communication device is monitored, and a program module for detecting a DDoS attack is activated. When the DDoS attack is detected, the module that discards the communication packet of the DDoS attack is activated. Then, the module that searches for a higher-level communication device, that is, a communication device closer to the attack source is activated. Next, the search module is transmitted to the searched upper communication device. Then, the higher-level communication device is searched for a higher-level communication device. In this way, the communication devices in the upper order are sequentially searched, and the communication device closest to the attack source is set as the defense position. A module that discards a communication packet of a DDoS attack is transmitted to the communication device at the defined defense position, and the communication device at the defense position activates this module to perform protection.

【0005】[0005]

【発明が解決しようとする課題】前記の第1の従来技術
では、攻撃の通信パケットはファイアウォールの位置ま
で届いているため、たとえ防御対象のコンピュータの資
源を防御することができても、ファイアウォールに至る
までの部分での攻撃による通信トラフィックを減らすこ
とはできず、防御対象のコンピュータにとって必要な通
信帯域が浪費されてしまうという問題があった。
In the first prior art described above, since the attack communication packet reaches the location of the firewall, even if the resources of the protected computer can be protected, the firewall does not There is a problem that the communication traffic due to the attacks in the parts up to this point cannot be reduced, and the communication band required for the protected computer is wasted.

【0006】また、前記の第2の従来技術でも、検知で
きないタイプの攻撃があるという問題があった。また、
攻撃のトラフィックであることが確実に判別できない状
況においては、そのような疑わしいトラフィックの存在
によって、使用可能な通信帯域が狭められてしまうとい
う問題があった。
The second conventional technique also has a problem that some types of attacks cannot be detected. Also,
In a situation where it cannot be reliably determined that the traffic is an attack traffic, there is a problem that the usable communication band is narrowed due to the existence of such suspicious traffic.

【0007】本願発明はこのような事情を考慮してなさ
れたものであり、より多くの種類の攻撃を検知して防御
することのできる防御方法および装置ならびにそのコン
ピュータプログラムを提供することを目的とする。ま
た、さらに、単に防御対象コンピュータの資源を守るだ
けでなく、攻撃のトラフィックあるいは攻撃であると疑
われるトラフィックによってネットワークの通信帯域が
浪費されないような防御方法等を提供することを目的と
する。
The present invention has been made in consideration of such circumstances, and an object thereof is to provide a defense method and apparatus capable of detecting and defending more kinds of attacks, and a computer program thereof. To do. Another object of the present invention is not only to protect the resources of the protection target computer but also to provide a protection method in which the communication band of the network is not wasted by attack traffic or traffic suspected of being an attack.

【0008】[0008]

【課題を解決するための手段】上記の課題を解決するた
めに、本発明は、複数の通信装置によって構成されるネ
ットワークに接続された防御対象コンピュータをサービ
ス不能攻撃から防御するための防御方法であって、前記
防御対象コンピュータに最も近い通信装置であるところ
の境界通信装置からの指令情報に基づいて、当該境界通
信装置から所定の段数分の範囲内に接続されているシー
ルド通信装置が、当該シールド通信装置に到着する通信
パケットを分析する分析処理を行い、この分析処理の結
果に応じて当該通信パケットが前記防御対象コンピュー
タに対する攻撃の通信パケットである可能性に応じて当
該通信パケットの優先度を決定してこの優先度に応じて
当該通信パケットを転送先に転送するとともに、前記分
析処理の結果当該通信パケットが確実に前記防御対象コ
ンピュータに対する攻撃の通信パケットであることが判
明した場合には当該通信パケットを破棄するシールド過
程を有することを特徴とするサービス不能攻撃の防御方
法を要旨とする。
In order to solve the above problems, the present invention provides a defense method for protecting a defense target computer connected to a network composed of a plurality of communication devices from a denial of service attack. Then, based on the command information from the border communication device, which is the communication device closest to the protection target computer, the shield communication device connected within a predetermined number of stages from the border communication device, An analysis process for analyzing a communication packet arriving at the shielded communication device is performed, and according to the result of the analysis process, the communication packet has a priority according to the possibility that the communication packet is an attack communication packet for the defense target computer. The communication packet is transferred to the transfer destination according to this priority, and the result of the analysis process If it Shin packet is a communication packet attacks on reliably the protection target computer is found in the subject matter of the defense of the denial of service attack and having a discarding shielding process of the communication packet.

【0009】また、本発明のサービス不能攻撃の防御方
法は、前記境界通信装置から最も遠い位置にある前記シ
ールド通信装置との間の接続の段数として2以上を許容
するとともに、当該段数を動的に変更できるようにした
ことを特徴とする。
Further, the denial-of-service attack protection method of the present invention allows two or more stages of connection with the shielded communication device at the farthest position from the boundary communication device and dynamically changes the number of stages. It is characterized in that it can be changed to.

【0010】また、本発明のサービス不能攻撃の防御方
法は、前記シールド過程において前記通信パケットが確
実に前記防御対象コンピュータに対する攻撃の通信パケ
ットであることが判明した場合に、前記シールド通信装
置がより攻撃元に近い側の隣接する通信装置に対してプ
ローブプログラムコードを送信するプローブプログラム
コード送信過程と、前記プローブプログラムコードを受
信したプローブ通信装置が、当該プローブプログラムコ
ードを実行することによって、当該プローブ通信装置に
到着する通信パケットを分析し、その結果当該通信パケ
ットが前記防御対象コンピュータに対する攻撃の通信パ
ケットである場合には当該通信パケットを破棄するとと
もにさらに攻撃元に近い側の隣接する通信装置に対して
前記プローブプログラムコードを送信し、分析の結果一
定時間攻撃のパケットが検知されない場合には前記プロ
ーブプログラムコードの処理を終了させるプローブ過程
とをさらに有することを特徴とする。
Further, in the method of protecting against a denial of service of the present invention, when the communication packet is surely found to be a communication packet of an attack against the defense target computer in the shield process, the shield communication device is more effective. A probe program code transmission process of transmitting a probe program code to an adjacent communication device on the side close to the attack source, and a probe communication device that has received the probe program code executes the probe program code to generate the probe program code. The communication packet arriving at the communication device is analyzed, and as a result, when the communication packet is a communication packet of an attack on the defense target computer, the communication packet is discarded and the adjacent communication device on the side closer to the attack source is detected. In contrast to the probe pro It sends a ram code, when a packet results certain time attack analysis is not detected, characterized by further comprising a probe process to terminate the processing of the probe program code.

【0011】また、本発明のサービス不能攻撃の防御方
法は、前記プローブ過程においては、宛先アドレスが前
記防御対象コンピュータのアドレスである通信パケット
を捕捉し、当該通信パケットの送信元アドレスが予め得
られた攻撃元のアドレスと同一である場合には当該通信
パケットが攻撃のパケットであると判定し、その他の場
合には当該通信パケットは攻撃のパケットではないと判
定することを特徴とする。
Further, in the denial of service attack defense method of the present invention, in the probe process, a communication packet whose destination address is the address of the defense target computer is captured, and a source address of the communication packet is obtained in advance. If the address is the same as the attack source address, it is determined that the communication packet is an attack packet, and in other cases, the communication packet is not an attack packet.

【0012】また、本発明のサービス不能攻撃の防御方
法は、前記プローブ過程においては、宛先アドレスある
いは送信元アドレスの少なくともいずれか一方が前記防
御対象コンピュータのアドレスである通信パケットを捕
捉し、a)当該通信パケットの送信元アドレスが予め得
られた攻撃元のアドレスと同一である場合、又は、b)
当該通信パケットの送信元アドレスが前記防御対象コン
ピュータのアドレスであって且つ当該通信パケットの宛
先アドレスが前記攻撃元アドレスのブロードキャストア
ドレスである場合、には、当該通信パケットが攻撃のパ
ケットであると判定し、上記a)あるいは上記b)のい
ずれにも該当しない場合には当該通信パケットは攻撃の
パケットではないと判定することを特徴とする。
Further, in the denial of service attack protection method of the present invention, in the probe process, a communication packet in which at least one of a destination address and a source address is the address of the protection target computer is captured, and a) When the source address of the communication packet is the same as the previously obtained attack source address, or b)
If the source address of the communication packet is the address of the protection target computer and the destination address of the communication packet is the broadcast address of the attack source address, it is determined that the communication packet is an attack packet. However, when neither of the above a) or b) is applicable, the communication packet is determined not to be an attack packet.

【0013】また、本発明のサービス不能攻撃の防御方
法は、前記シールド過程内の前記分析処理においては、
予め正常時に得ておいたパラメータの値を含んだログ情
報を用いて、検査時のパラメータの値と前記ログ情報と
を比較することによる動的検査の処理を行うことを特徴
とする。
The denial of service attack protection method of the present invention comprises:
It is characterized in that the dynamic inspection process is performed by comparing the value of the parameter at the time of inspection with the log information by using the log information including the value of the parameter obtained in advance at the normal time.

【0014】また、本発明は、防御対象コンピュータを
サービス不能攻撃から防御するための防御方法の処理を
実行するシールド通信装置であって、前記防御対象コン
ピュータに最も近い通信装置であるところの境界通信装
置からの指令情報に基づいて、当該シールド通信装置に
到着する通信パケットを分析する分析処理を行い、この
分析処理の結果に応じて当該通信パケットが前記防御対
象コンピュータに対する攻撃の通信パケットである可能
性に応じて当該通信パケットの優先度を決定してこの優
先度に応じて当該通信パケットを転送先に転送するとと
もに、前記分析処理の結果当該通信パケットが確実に前
記防御対象コンピュータに対する攻撃の通信パケットで
あることが判明した場合には当該通信パケットを破棄す
る処理を実行することを特徴とするものである。
Further, the present invention is a shielded communication device that executes a process of a protection method for protecting a defense target computer from a denial of service attack, which is a communication device closest to the protection target computer. An analysis process for analyzing a communication packet arriving at the shield communication device is performed based on command information from the device, and the communication packet may be an attack communication packet for the defense target computer according to the result of the analysis process. The priority of the communication packet is determined according to the priority, the communication packet is transferred to the transfer destination according to the priority, and the result of the analysis processing ensures that the communication packet is an attack communication against the defense target computer. If the packet is found to be a packet, execute the process to discard the communication packet. And it is characterized in and.

【0015】また、本発明のシールド通信装置は、前記
分析処理においては、予め正常時に得ておいたパラメー
タの値を含んだログ情報を用いて、検査時のパラメータ
の値と前記ログ情報とを比較することによる動的検査の
処理を実行することを特徴とする。
Further, in the shield communication device of the present invention, in the analysis process, the log information including the parameter value obtained in advance at the normal time is used to calculate the parameter value at the time of inspection and the log information. It is characterized in that the processing of the dynamic inspection by comparison is executed.

【0016】また、本発明は、防御対象コンピュータを
サービス不能攻撃から防御するための防御方法の処理を
実行するプローブ通信装置であって、シールド通信装置
によって防御対象コンピュータに対する攻撃の通信パケ
ットが検出されたとき、当該シールド通信装置からプロ
ーブプログラムコードを受信し、当該プローブプログラ
ムコードを実行することによって、当該プローブ通信装
置に到着する通信パケットを分析し、その結果当該通信
パケットが前記防御対象コンピュータに対する攻撃の通
信パケットである場合には当該通信パケットを破棄する
とともにさらに攻撃元に近い側の隣接する通信装置に対
して前記プローブプログラムコードを送信し、分析の結
果一定時間攻撃のパケットが検知されない場合には前記
プローブプログラムコードの処理を終了させるプローブ
過程の処理を実行することを特徴とするものである。
Further, the present invention is a probe communication device for executing processing of a defense method for protecting a defense target computer from a denial of service attack, wherein a shield communication device detects a communication packet of an attack on the defense target computer. At this time, the probe program code is received from the shield communication device and the communication packet arriving at the probe communication device is analyzed by executing the probe program code. As a result, the communication packet attacks the protection target computer. If the packet is a communication packet, the communication packet is discarded, and the probe program code is transmitted to the adjacent communication device on the side closer to the attack source. Is the probe program It is characterized in performing the process of the probe process to terminate the processing of the code.

【0017】また、本発明のプローブ通信装置は、前記
プローブ過程の処理においては、宛先アドレスが前記防
御対象コンピュータのアドレスである通信パケットを捕
捉し、当該通信パケットの送信元アドレスが予め得られ
た攻撃元のアドレスと同一である場合には当該通信パケ
ットが攻撃のパケットであると判定し、その他の場合に
は当該通信パケットは攻撃のパケットではないと判定す
ることを特徴とするものである。
Further, in the probe communication apparatus of the present invention, in the processing of the probe process, the communication packet whose destination address is the address of the defense target computer is captured, and the source address of the communication packet is obtained in advance. If the address is the same as the attack source address, it is determined that the communication packet is an attack packet, and in other cases, the communication packet is not an attack packet.

【0018】また、本発明のプローブ通信装置は、前記
プローブ過程の処理においては、宛先アドレスあるいは
送信元アドレスの少なくともいずれか一方が前記防御対
象コンピュータのアドレスである通信パケットを捕捉
し、a)当該通信パケットの送信元アドレスが予め得ら
れた攻撃元のアドレスと同一である場合、又は、b)当
該通信パケットの送信元アドレスが前記防御対象コンピ
ュータのアドレスであって且つ当該通信パケットの宛先
アドレスが前記攻撃元アドレスのブロードキャストアド
レスである場合、には、当該通信パケットが攻撃のパケ
ットであると判定し、上記a)あるいは上記b)のいず
れにも該当しない場合には当該通信パケットは攻撃のパ
ケットではないと判定することを特徴とするものであ
る。
Further, the probe communication device of the present invention, in the processing of the probe process, captures a communication packet in which at least one of a destination address and a source address is the address of the defense target computer, and If the source address of the communication packet is the same as the previously obtained attack source address, or b) the source address of the communication packet is the address of the defense target computer and the destination address of the communication packet is If it is a broadcast address of the attack source address, it is determined that the communication packet is an attack packet, and if neither of the above a) or b) is applicable, the communication packet is an attack packet. It is characterized by determining that it is not.

【0019】また、本発明は、防御対象コンピュータを
サービス不能攻撃から防御するための防御方法の処理を
実行する通信装置であって、ネットワーク側から到着す
る通信パケットを捕捉する到着パケット捕捉部と、前記
通信パケットに対して作用を及ぼすコンピュータプログ
ラムの処理を行うアクティブネットワーク実行環境部
と、複数のクラスにそれぞれ対応した待ち行列を備える
とともに、前記アクティブネットワーク実行環境部にお
ける前記コンピュータプログラムの処理の結果として決
定されるクラスに応じて、前記通信パケットをそのクラ
スに対応する前記待ち行列に入れる処理を行うクラスベ
ースの待ち行列処理部と、前記クラスベースの待ち行列
処理部が備える各々の待ち行列から順次通信パケットを
取り出してネットワーク側に送出するパケット送出部
と、前記アクティブネットワーク実行環境部で実行する
ためのコンピュータプログラムを他の通信装置との間で
転送する処理を行うプログラム転送処理部とを備えてお
り、前記アクティブネットワーク実行環境部は、コンピ
ュータプログラムを記憶するコード記憶部と、このコー
ド記憶部に記憶されたコンピュータプログラムを読み出
して実行するコード実行部とを備えており、前記コード
記憶部には、到着する通信パケットの分析を行い、この
分析の結果、前記通信パケットが攻撃の通信パケットで
ある可能性に応じて前記通信パケットのクラスを決定す
るとともに、当該通信パケットが確実に攻撃の通信パケ
ットである場合には当該通信パケットを破棄する処理を
コンピュータに実行させるシールドモジュールと、到着
する通信パケットを分析し、その結果当該通信パケット
が前記防御対象コンピュータに対する攻撃の通信パケッ
トである場合には当該通信パケットを破棄する処理をコ
ンピュータに実行させるプローブモジュールと、前記プ
ローブモジュールの処理をコンピュータが実行した結
果、攻撃の通信パケットが見つかった場合に、自己のプ
ログラムコードの複製をさらに攻撃元に近い側の隣接す
る通信装置に対して送信する処理をコンピュータに実行
させる自己複製送信モジュールと、前記プローブモジュ
ールの処理をコンピュータが実行した結果、攻撃の通信
パケットが所定時間継続して見つからなかった場合に、
自己のプログラムコードを消滅させる処理をコンピュー
タに実行させる自己消滅モジュールとが少なくとも記憶
されていることを特徴とする通信装置である。
Further, the present invention is a communication device for executing processing of a protection method for protecting a defense target computer from a denial of service attack, and an arrival packet capturing section for capturing a communication packet arriving from the network side, As a result of the processing of the computer program in the active network execution environment unit, the active network execution environment unit that performs the processing of the computer program that acts on the communication packet, and the queues that respectively correspond to a plurality of classes are provided. Depending on the class to be determined, a class-based queue processing unit that performs processing for putting the communication packet in the queue corresponding to the class, and sequentially from each queue provided in the class-based queue processing unit Take out the communication packet and The active network execution environment unit, and a program transfer processing unit that transfers the computer program to be executed by the active network execution environment unit to another communication device. The execution environment unit includes a code storage unit that stores a computer program, and a code execution unit that reads and executes the computer program stored in the code storage unit. The result of this analysis is to determine the class of the communication packet according to the possibility that the communication packet is an attack communication packet, and if the communication packet is definitely an attack communication packet, A shield module that causes a computer to execute the process of discarding the communication packet. And a probe module that analyzes the incoming communication packet and causes the computer to execute a process of discarding the communication packet if the communication packet is a communication packet of an attack on the defense target computer as a result. When an attack communication packet is found as a result of the computer executing the module's processing, it causes the computer to execute the processing of transmitting a copy of its own program code to the adjacent communication device closer to the attack source. As a result of the computer executing the processing of the duplicate transmission module and the probe module, if the attack communication packet is not found continuously for a predetermined time,
At least a self-destructing module that causes a computer to execute a process of eliminating its own program code is stored.

【0020】また、本発明は、複数の通信装置によって
構成されるネットワークに接続された防御対象コンピュ
ータをサービス不能攻撃から防御するための防御方法の
処理をコンピュータに実行させるコンピュータプログラ
ムであって、前記防御対象コンピュータに最も近い通信
装置であるところの境界通信装置からの指令情報に基づ
いて、当該境界通信装置から所定の段数分の範囲内に接
続されているシールド通信装置が、当該シールド通信装
置に到着する通信パケットを分析する分析処理を行い、
この分析処理の結果に応じて当該通信パケットが前記防
御対象コンピュータに対する攻撃の通信パケットである
可能性に応じて当該通信パケットの優先度を決定してこ
の優先度に応じて当該通信パケットを転送先に転送する
とともに、前記分析処理の結果当該通信パケットが確実
に前記防御対象コンピュータに対する攻撃の通信パケッ
トであることが判明した場合には当該通信パケットを破
棄するシールド過程の処理をコンピュータに実行させる
ものである。
Further, the present invention is a computer program for causing a computer to execute processing of a defense method for protecting a defense target computer connected to a network constituted by a plurality of communication devices from a denial of service attack, Based on the command information from the border communication device, which is the communication device closest to the protection target computer, the shield communication device connected within the predetermined number of stages from the border communication device becomes the shield communication device. Performs analysis processing to analyze incoming communication packets,
According to the result of this analysis processing, the priority of the communication packet is determined according to the possibility that the communication packet is an attack communication packet for the defense target computer, and the communication packet is transferred to the transfer destination according to the priority. In addition to transferring the packet to the computer, the computer causes the computer to execute the process of the shield process of discarding the communication packet when the communication packet is definitely found to be an attack communication packet for the defense target computer as a result of the analysis process. Is.

【0021】また、本発明は、複数の通信装置によって
構成されるネットワークに接続された防御対象コンピュ
ータをサービス不能攻撃から防御するための防御方法の
処理をコンピュータに実行させるコンピュータプログラ
ムであって、到着する通信パケットを分析し、その結果
当該通信パケットが前記防御対象コンピュータに対する
攻撃の通信パケットである場合には当該通信パケットを
破棄するとともにさらに攻撃元に近い側の隣接する通信
装置に対して当該コンピュータプログラム自身を送信
し、分析の結果一定時間攻撃のパケットが検知されない
場合には当該コンピュータプログラムを終了させるプロ
ーブ過程の処理をコンピュータに実行させるものであ
る。
Further, the present invention is a computer program that causes a computer to execute a process of a defense method for protecting a defense target computer connected to a network composed of a plurality of communication devices from a denial of service attack. The communication packet is analyzed, and as a result, if the communication packet is a communication packet for attacking the defense target computer, the communication packet is discarded and the computer is compared with the adjacent communication device closer to the attack source. The program itself is transmitted, and when the result of the analysis indicates that no attack packet has been detected for a certain period of time, the computer is caused to execute the processing of a probe process that terminates the computer program.

【0022】また、本発明は、上記のコンピュータプロ
グラムにおいて、前記プローブ過程においては、宛先ア
ドレスが前記防御対象コンピュータのアドレスである通
信パケットを捕捉し、当該通信パケットの送信元アドレ
スが予め得られた攻撃元のアドレスと同一である場合に
は当該通信パケットが攻撃のパケットであると判定し、
その他の場合には当該通信パケットは攻撃のパケットで
はないと判定する処理をコンピュータに実行させるもの
である。
According to the present invention, in the above computer program, in the probe process, a communication packet whose destination address is the address of the defense target computer is captured, and a source address of the communication packet is obtained in advance. If it is the same as the attack source address, it is determined that the communication packet is an attack packet,
In other cases, the communication packet causes the computer to execute processing to determine that the communication packet is not an attack packet.

【0023】また、本発明は、上記のコンピュータプロ
グラムにおいて、前記プローブ過程においては、宛先ア
ドレスあるいは送信元アドレスの少なくともいずれか一
方が前記防御対象コンピュータのアドレスである通信パ
ケットを捕捉し、a)当該通信パケットの送信元アドレ
スが予め得られた攻撃元のアドレスと同一である場合、
又は、b)当該通信パケットの送信元アドレスが前記防
御対象コンピュータのアドレスであって且つ当該通信パ
ケットの宛先アドレスが前記攻撃元アドレスのブロード
キャストアドレスである場合、には、当該通信パケット
が攻撃のパケットであると判定し、上記a)あるいは上
記b)のいずれにも該当しない場合には当該通信パケッ
トは攻撃のパケットではないと判定する処理をコンピュ
ータに実行させるものである。
The present invention, in the above computer program, captures a communication packet in which at least one of a destination address and a source address is an address of the defense target computer in the probing process. If the source address of the communication packet is the same as the previously obtained attack source address,
Or b) When the source address of the communication packet is the address of the defense target computer and the destination address of the communication packet is the broadcast address of the attack source address, the communication packet is an attack packet. If it is determined that the communication packet is not the attack packet, the computer is caused to execute the process of determining that the communication packet is not an attack packet.

【0024】[0024]

【発明の実施の形態】以下、図面を参照しこの発明の一
実施形態について説明する。図1は、本実施形態が前提
とするネットワークの構成である。図1に示すように、
通信ネットワークは、複数の通信装置7001によって
接続されている。そして、通信装置7001には1台ま
たは複数台のユーザのコンピュータ7000を接続する
ことができるようになっている。ユーザのコンピュータ
7000相互間で通信データのやりとりを行う際には、
送信元のユーザのコンピュータ7000が送信したパケ
ットを通信ネットワーク上の各ノードに位置する通信装
置7001が順次転送することにより、そのパケットを
宛先のユーザのコンピュータ7000に届けるようにす
る。
BEST MODE FOR CARRYING OUT THE INVENTION An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 shows a network configuration premised on the present embodiment. As shown in Figure 1,
The communication network is connected by a plurality of communication devices 7001. The communication device 7001 can be connected to one or more user computers 7000. When exchanging communication data between users' computers 7000,
The communication device 7001 located in each node on the communication network sequentially transfers the packet transmitted by the computer 7000 of the transmission source user so that the packet is delivered to the computer 7000 of the destination user.

【0025】次に、通信装置の構成について説明する。
図2は、本実施形態による通信装置7001の内部の構
成を示すブロック図である。図2に示すように、通信装
置7001は、ネットワーク(通信線)を経由して他の
通信装置あるいはコンピュータから到着した通信パケッ
トを捕捉する到着パケット捕捉部7531と、到着パケ
ット捕捉部7521によって捕捉された通信パケットを
転送するための処理を行う転送処理部7521と、優先
度の異なる複数のクラスに対応した待ち行列(キュー)
を用いることによってクラス毎の通信帯域を制御するク
ラスベースの待ち行列処理部7532と、このクラスベ
ースの待ち行列処理部7532から出力されたパケット
を他の通信装置あるいはコンピュータに転送するために
ネットワークに送出するパケット送出部7533とを備
えている。
Next, the configuration of the communication device will be described.
FIG. 2 is a block diagram showing an internal configuration of the communication device 7001 according to the present embodiment. As shown in FIG. 2, the communication device 7001 is captured by an arrival packet capturing unit 7531 that captures a communication packet that has arrived from another communication device or a computer via a network (communication line), and an arrival packet capturing unit 7521. Transfer processing unit 7521 that performs processing for transferring a communication packet, and a queue (queue) corresponding to a plurality of classes with different priorities
Class-based queue processing unit 7532 for controlling the communication band for each class by using the, and a network for transferring the packet output from the class-based queue processing unit 7532 to another communication device or computer. And a packet sending unit 7533 for sending.

【0026】さらに、通信装置7001は、アクティブ
ネットワーク実行環境7510と、プログラム転送処理
部7540とを備えている。アクティブネットワーク実
行環境7510は、転送対象のパケットに対して作用す
るプログラムコードを実行するものであり、その内部に
は、プログラムコードを記憶するコード記憶部7512
とこのコード記憶部7512から読み出したプログラム
コードを実行するコード実行部7511とを有してい
る。プログラム転送処理部7540は、ネットワークを
介して、アクティブネットワーク実行環境7510で実
行するためのプログラムコードを他の通信装置から受信
したり、逆に他の通信装置上で実行させるためのプログ
ラムコードを他の通信装置に対して送信したりするもの
である。
Further, the communication device 7001 includes an active network execution environment 7510 and a program transfer processing unit 7540. The active network execution environment 7510 executes a program code that acts on a packet to be transferred, and has a code storage unit 7512 that stores the program code therein.
And a code execution unit 7511 that executes the program code read from the code storage unit 7512. The program transfer processing unit 7540 receives a program code to be executed in the active network execution environment 7510 from another communication device via the network, or conversely, a program code to be executed on another communication device. It is transmitted to the communication device.

【0027】アクティブネットワーク実行環境7510
内のコード記憶部7512には、DDoS攻撃を防御す
るためのDDoS攻撃防御プログラムを記憶することが
できるようになっている。このDDoS攻撃防御プログ
ラムは、センサーモジュールとシールドモジュールとプ
ローブモジュールと自己複製送信モジュールと自己消滅
モジュールとを含んでいる。センサーモジュールは当該
通信装置に到着する通信パケットを継続的に分析するこ
とにより、DDoS攻撃の通信トラフィックが起こって
いるかどうかを検知する機能を有する。シールドモジュ
ールは、センサーモジュールによる分析結果に基づき、
DDoS攻撃の通信パケットを破棄したり、通信パケッ
トの特徴に応じて出力のクラスを決定し当該通信パケッ
トがこのクラスに対応した待ち行列に入るようにクラス
ベースの待ち行列処理部7532に渡したりする機能を
有する。プローブモジュールは、DDoS攻撃が検知さ
れたときに、より上位の通信装置において、つまりより
攻撃元に近い側の通信装置において防御のための処理を
行う機能を有する。自己複製送信モジュールは、より上
流の通信装置に、プログラム転送処理部7540経由で
DDoS攻撃プログラムコード自身あるいはその一部分
を転送する機能を有する。自己消滅モジュールは、DD
oS攻撃のトラフィックが継続されない状態が所定時間
以上継続した場合に、DDoS攻撃防御プログラム自身
の実行を終了したり、当該通信装置のコード記憶部上か
ら消去したりする機能を有する。なお、防御対象のコン
ピュータに直接に隣接する通信装置等においては、DD
oS攻撃防御プログラムの自己消滅を行わずに、常に少
なくともセンサーモジュールだけは稼動させるようにし
ても良い。
Active network execution environment 7510
The internal code storage unit 7512 can store a DDoS attack protection program for protecting a DDoS attack. This DDoS attack protection program includes a sensor module, a shield module, a probe module, a self-replicating transmission module, and a self-destructing module. The sensor module has a function of detecting whether or not communication traffic of a DDoS attack is occurring by continuously analyzing communication packets that arrive at the communication device. The shield module is based on the analysis result by the sensor module,
The communication packet of the DDoS attack is discarded, or the output class is determined according to the characteristics of the communication packet, and the communication packet is passed to the class-based queue processing unit 7532 so as to enter the queue corresponding to this class. Have a function. When a DDoS attack is detected, the probe module has a function of performing protection processing in a higher-level communication device, that is, in a communication device closer to the attack source. The self-copy transmission module has a function of transferring the DDoS attack program code itself or a part thereof to the upstream communication device via the program transfer processing unit 7540. The self-destruction module is DD
It has a function of ending the execution of the DDoS attack protection program itself or deleting it from the code storage unit of the communication device when the traffic of the oS attack continues for a predetermined time or longer. Note that in a communication device or the like that is directly adjacent to the protected computer, DD
It is possible to always operate at least only the sensor module without self-destructing the oS attack protection program.

【0028】次に、この通信装置7001が通信パケッ
トを転送する際の処理の流れを説明する。ネットワーク
側から到着した通信パケットは到着パケット捕捉部75
31によって捕捉され、転送処理部7531に渡され
る。転送処理部7531は、通信パケットの宛先アドレ
ス等に応じて、当該通信パケットをそのままクラスベー
スの待ち行列処理部7532に渡すか、あるいは当該通
信パケットをアクティブネットワーク実行環境7510
上で稼動するプログラムに渡す。このプログラムは、所
定の処理を行い、通常は通信パケットをクラスベースの
待ち行列処理部7532に渡すが、前記のようにそれが
DDoS攻撃の通信パケットであると認識された場合な
どはその通信パケットをそのまま破棄する場合もあり得
る。クラスベースの待ち行列処理部7532に渡された
通信パケットは、指定されたクラスの待ち行列に一旦入
れられ、クラス毎に待ち行列から通信パケットが順次取
り出され、パケット送出部7533に渡される。パケッ
ト送出部7533は、通信パケットをネットワーク上の
所定の転送先に向けて送出する。
Next, a flow of processing when the communication device 7001 transfers a communication packet will be described. The communication packet arriving from the network side is the arrival packet capturing unit 75.
It is captured by 31 and passed to the transfer processing unit 7531. The transfer processing unit 7531 transfers the communication packet as it is to the class-based queue processing unit 7532 according to the destination address of the communication packet or the like, or transfers the communication packet to the active network execution environment 7510.
Pass it to the program running above. This program performs a predetermined process and normally passes the communication packet to the class-based queuing processing unit 7532. However, as described above, when the communication packet is recognized as a DDoS attack communication packet, the communication packet May be discarded as is. The communication packet passed to the class-based queue processing unit 7532 is once put in the queue of the designated class, the communication packet is sequentially taken out from the queue for each class, and passed to the packet sending unit 7533. The packet sending unit 7533 sends the communication packet to a predetermined transfer destination on the network.

【0029】次に、上述した通信装置同士が協調的に動
作することによりネットワーク全体を通してDDoS攻
撃を防御する方法の概略を説明する。図3は、本実施形
態による防御のしくみを示す論理的概略図である。図3
において、符号7000aは被攻撃者のコンピュータで
ある。被攻撃者のコンピュータ7001aとなる可能性
があるのは、例えば、著名なウェブサイトのサーバコン
ピュータなどであり、このコンピュータ7000aがD
DoS攻撃を受けたときに防御のしくみが働く。また、
7001a〜7001eは、それぞれネットワークを構
成する通信装置(具体的にはルータやスイッチなど)で
あり、図2を用いて説明した通信装置7001に相当す
るものである。
Next, an outline of a method for protecting the DDoS attack through the entire network by the above-mentioned communication devices operating cooperatively will be described. FIG. 3 is a logical schematic diagram showing a defense mechanism according to the present embodiment. Figure 3
In the above, reference numeral 7000a is the computer of the attacked person. The computer 7001a of the attacked person may be, for example, a server computer of a well-known website.
The defense mechanism works when receiving a DoS attack. Also,
Reference numerals 7001a to 7001e are communication devices (specifically, routers, switches, etc.) configuring a network, and correspond to the communication device 7001 described with reference to FIG.

【0030】これらの通信装置(7001a〜7001
e)のうち、通信装置7001aは、被攻撃者のコンピ
ュータ7000aに直接に隣接するものであり、つまり
被攻撃者のコンピュータ7000a側から見てネットワ
ークへの接点となるものであり、このような位置付けの
通信装置を「境界(edge)通信装置」と呼ぶことにす
る。そして、この境界通信装置が防御指令元としての役
割、つまりこの防御のしくみ全体を制御する中心として
の役割を果たす。また、通信装置7001bおよび70
01c(シールド通信装置)は、防御指令元からの指令
に基づき通信トラフィックを検査するとともに、DDo
S攻撃の通信パケットを破棄するなど、シールドとして
の役割を果たす。また、通信装置7001e(プローブ
通信装置)は、シールドからさらに上位において防御を
行うためのプローブとしての役割を果たす。
These communication devices (7001a to 7001)
In e), the communication device 7001a is directly adjacent to the attacked computer 7000a, that is, it serves as a contact point to the network when viewed from the attacked computer 7000a side. Will be referred to as “edge communication device”. Then, this boundary communication device serves as a defense command source, that is, as a center for controlling the entire defense mechanism. In addition, the communication devices 7001b and 701
01c (shield communication device) inspects communication traffic based on a command from the defense command source, and
It acts as a shield by discarding communication packets for S attacks. In addition, the communication device 7001e (probe communication device) plays a role as a probe for protecting the shield further above.

【0031】各通信装置の、防御指令元、シールド、お
よびプローブとしての、それぞれの具体的な処理内容を
以下に記載する。防御指令元が行う処理のひとつはシー
ルドレベルの設定である。ここで、シールドレベルと
は、防御指令元から見て、ネットワークの外側への通信
装置の接続の段数(深さ)である。図3に示している構
成では、シールドレベルは「2」に設定されているた
め、防御指令元の通信装置7001aから見て1段目の
通信装置7001bおよび2段目の通信装置7001c
がシールドの役割を果たす。図3ではシールドレベルが
「2」に設定されている例を示しているが、他のレベル
に設定することも可能であり、また動的にレベルを変更
することも可能である。例えば、被攻撃者のコンピュー
タ7000aへの攻撃の度合いが大きい場合にはシール
ドレベルが高くなるように動的に変更することができ
る。また、防御指令元は、防御指令元から転送され他の
通信装置上で稼動する全てのシールドモジュールに対す
る制御を行う。また、防御指令元は、必要に応じて稼動
中のシールドモジュールの動作を停止させることもでき
る。
The specific processing contents of each communication device as a defense command source, a shield, and a probe will be described below. One of the processes performed by the defense command source is setting the shield level. Here, the shield level is the number of stages (depth) of the connection of the communication device to the outside of the network as viewed from the defense command source. In the configuration shown in FIG. 3, since the shield level is set to “2”, the communication device 7001b in the first stage and the communication device 7001c in the second stage are viewed from the communication device 7001a that is the defense command source.
Acts as a shield. Although FIG. 3 shows an example in which the shield level is set to “2”, it is also possible to set it to another level, and it is also possible to change the level dynamically. For example, when the degree of attack on the computer 7000a by the attacked person is large, the shield level can be dynamically changed to be high. The defense command source controls all shield modules transferred from the defense command source and operating on other communication devices. Further, the defense command source can stop the operation of the shield module in operation as necessary.

【0032】後述するように、シールドモジュールは各
通信装置(7001b,7001c)上で、局所静的検
査と局所動的検査の2つのタイプの検査を行うため、あ
る種の攻撃はシールドモジュールによって効果的に防御
することができる。しかしながら、他の攻撃の中には、
ネットワーク全体の状況のデータを分析することによっ
てはじめて検出され得るものもある。そこで、防御指令
元は、大域的動的検査の処理を行う。
As will be described later, the shield module performs two types of inspections on each communication device (7001b, 7001c), that is, a local static inspection and a local dynamic inspection, so that some kind of attack is effective by the shield module. You can defend yourself. However, among other attacks,
Some can only be detected by analyzing data on the status of the entire network. Therefore, the defense command source performs a global dynamic inspection process.

【0033】本実施形態による防御をネットワークに適
用した場合、最初は、防御指令元は学習段階の処理を行
う。この学習段階の処理では、定期的に到着パケット
(通信トラフィック)のスナップショットデータを取得
し、このスナップショットデータに統計的処理を施すこ
とによって、正常状態におけるネットワークの特徴デー
タを取得する。この特徴データは、防御対象のコンピュ
ータの使用目的等に応じてネットワーク毎に異なる特徴
のパターンを表わすものである。この正常状態における
特徴データを便宜的に「指紋データ」と呼ぶことにす
る。
When the protection according to this embodiment is applied to a network, the defense command source first performs the learning stage processing. In the processing of this learning stage, snapshot data of the arriving packet (communication traffic) is periodically acquired, and statistical processing is performed on this snapshot data to acquire the characteristic data of the network in the normal state. The feature data represents different feature patterns for each network depending on the purpose of use of the protected computer. The characteristic data in this normal state will be referred to as “fingerprint data” for convenience.

【0034】学習段階で指紋データが得られると、次の
段階では、防御指令元は、この指紋データを使うことに
よって異常を検出することができる。ここで検出可能な
異常とは、例えば、到着パケットのヘッダ部分に格納さ
れている送信元アドレスの分布が異常にばらついている
(ランダム性が高い)といったものであり、このような
異常が検出されるということは、ランダムに選択された
アドレスによって送信元アドレスを偽装したパケットを
用いた攻撃が行われていることを示唆している。一旦あ
る異常が検出されると、防御指令元は、新しいパケット
フィルタリングのルールを全てのシールドに対して発行
することができる。
When the fingerprint data is obtained in the learning stage, in the next stage, the defense command source can detect the abnormality by using the fingerprint data. Anomalies that can be detected here are, for example, that the distribution of the source addresses stored in the header part of the arriving packet is abnormally random (high randomness), and such anomalies are detected. This implies that an attack is being carried out using a packet in which the source address is spoofed by a randomly selected address. Once an anomaly is detected, the defense commander can issue a new packet filtering rule for all shields.

【0035】次に、シールド(図3における通信装置7
001bおよび7001cが果たす役割)の具体的な処
理内容について説明する。シールドは、DDoS攻撃に
対処するための「第一段階」の対応の役割を果たすよう
に設計されている。各通信装置上において、シールドモ
ジュールは、防御対象となっているコンピュータに向け
て転送されてくる通信パケットをモニタする。これは、
後述するアクティブネットワークのしくみにおいて、特
定の通信アドレス(IPアドレス)を有するパケットを
トリガーとしてアクティブネットワーク実行環境上の特
定のプログラムコードを呼び出すことによって可能とな
る。従って、シールドモジュールの制御は、本モジュー
ルの所有者に関するすべての通信パケットに及ぶことと
なる。
Next, the shield (communication device 7 in FIG. 3)
The specific processing contents of the roles played by 001b and 7001c) will be described. The shield is designed to act as a "first stage" response to combating DDoS attacks. In each communication device, the shield module monitors the communication packet transferred to the protected computer. this is,
In the mechanism of the active network described later, it becomes possible by calling a specific program code in the active network execution environment with a packet having a specific communication address (IP address) as a trigger. Therefore, control of the shield module extends to all communication packets for the owner of this module.

【0036】図4は、シールドモジュールによる通信パ
ケットのクラス分けの処理の概要を示す概略図である。
図示するように、シールドモジュールの処理対象となる
通信パケットは、ネットワーク側から入力インタフェー
スを介して到着すると、一旦入力待ち行列に入れられ、
順次シールドモジュールに渡される。また、クラスベー
スの待ち行列処理部7532は、出力(ネットワークへ
の送出)の優先度がそれぞれ「高」、「中」、「低」の
3つの待ち行列を有している。そして、クラスベースの
待ち行列処理部7532は、アクティブネットワーク実
行環境7510上で稼動するシールドモジュールによっ
て決定されたクラスに応じた待ち行列に通信パケットを
格納し、各待ち行列から順次通信パケットを取り出して
出力する。
FIG. 4 is a schematic diagram showing an outline of the processing of classifying communication packets by the shield module.
As shown in the figure, when the communication packet to be processed by the shield module arrives from the network side via the input interface, it is once put in the input queue,
Sequentially passed to the shield module. Further, the class-based queue processing unit 7532 has three queues whose output (send to the network) priority levels are “high”, “medium”, and “low”, respectively. Then, the class-based queue processing unit 7532 stores the communication packet in the queue according to the class determined by the shield module operating on the active network execution environment 7510, and sequentially extracts the communication packet from each queue. Output.

【0037】各通信装置上で稼動するシールドモジュー
ルは、通信トラフィックをクラス別に分類するクラス分
け機能を有しており、このクラス分け機能は、到着した
通信パケットがDDoS攻撃の洪水トラフィックをなす
ものである確率を求めることができるようになってい
る。そして、DDoS攻撃である可能性が最も高い部類
に属する通信パケット、つまり最も疑わしいクラスの通
信パケットは、最も優先度の低い待ち行列(「低」)に
入るように指定され、クラスベースの待ち行列処理部7
532に渡される。逆に、DDoS攻撃である可能性が
最も低い部類に属する正常な通信パケットは、最も優先
度の高い待ち行列(「高」)に入るように指定される。
疑わしさの度合いが中間のクラスの通信パケットは、優
先度が「中」の待ち行列に入るように指定される。
The shield module operating on each communication device has a classifying function for classifying the communication traffic according to the class, and the classifying function is such that the arrived communication packet constitutes flood traffic of the DDoS attack. It is possible to obtain a certain probability. Then, the communication packets belonging to the category most likely to be the DDoS attack, that is, the communication packets of the most suspicious class are designated to enter the lowest priority queue (“low”), and the class-based queue. Processing unit 7
532. Conversely, normal communication packets belonging to the category that are least likely to be a DDoS attack are designated to enter the highest priority queue ("high").
Communication packets of the medium suspiciousness class are designated to enter the "medium" priority queue.

【0038】シールドモジュールが、上記のようにクラ
スベースの待ち行列を用いた出力の処理を行うことによ
り、次の2つの効果が得られる。第1の効果は、防御対
象のコンピュータが攻撃を受けている途中、疑わしい通
信トラフィックが防御対象のコンピュータに到達しにく
くする一方で、正常である可能性の高い通信トラフィッ
クが防御対象のコンピュータに到達する可能性を高める
ことができる点である。つまり、疑わしい通信トラフィ
ックの帯域を抑え、正常な通信トラフィックの帯域を確
保することができる。第2の効果は、DDoS攻撃を検
出するためのアルゴリズムにより柔軟性と正確性を与え
ることができる点である。
When the shield module processes the output using the class-based queue as described above, the following two effects can be obtained. The first effect is that while the protected computer is being attacked, it makes it difficult for suspicious communication traffic to reach the protected computer, while communication traffic that is likely to be normal reaches the protected computer. It is possible to increase the possibility of doing. That is, it is possible to suppress the band of suspicious communication traffic and secure the band of normal communication traffic. The second effect is that the algorithm for detecting DDoS attacks can be given more flexibility and accuracy.

【0039】従来技術においてDDoS攻撃の通信パケ
ットであるか否かを二値的に判断して処理していたのに
比べると、上記の2つの効果は防御の方法を大幅に改善
するものであると言える。何故ならば、通常時の通信ト
ラフィックよりも広い帯域を占める通信トラフィックが
流れているときに、その通信トラフィックがDDoS攻
撃によって引き起こされているものであるのか、正常な
通信の量がたまたまピークをむかえているものであるの
かを判別するのは、単純に行える問題ではないからであ
る。また、たとえDDoS攻撃であることが確認された
状況下であっても、DDoS攻撃による洪水パケットと
正当な通信パケットとを高い信頼性で分別することは困
難だからである。つまり、正常な通信パケットまでもが
届きにくくなるというダメージを最小化するためには、
検知アルゴリズムは、二値的な真か偽かの判断を行うも
のであるよりも、攻撃の通信パケットである可能性(確
率)算出するものであるほうが望ましいといえる。そし
て、攻撃の通信パケットである可能性が非常に高い通信
パケットだけを破棄するようにすべきである。
Compared with the prior art in which whether or not the packet is a DDoS attack communication packet was judged and processed binaryly, the above two effects greatly improve the defense method. Can be said. The reason is that when the communication traffic occupying a wider band than the normal communication traffic is flowing, whether the communication traffic is caused by the DDoS attack, or the normal communication volume happens to peak. This is because it is not a simple matter to determine whether or not it is a problem. Further, even under the condition that the DDoS attack is confirmed, it is difficult to highly reliably distinguish the flood packet due to the DDoS attack from the legitimate communication packet. In other words, to minimize the damage that makes it difficult for even normal communication packets to reach,
It can be said that the detection algorithm is preferably one that calculates the possibility (probability) of an attack communication packet, rather than one that makes a binary judgment as to whether it is true or false. Then, only communication packets that are very likely to be attack communication packets should be discarded.

【0040】シールドモジュール内の前記クラス分け機
能は、以下に述べるように、局所静的検査と局所動的検
査との2つのタイプの検査を行う。局所静的検査は、状
態に基づかずに行われる検査であり、それぞれの多くの
静的なパラメータに基づいて各々の到着パケットに対し
て行われる検査である。ここで、静的なパラメータと
は、通信パケットの送信元アドレスや宛先アドレス、ヘ
ッダ(具体的にはIPヘッダなど)に含まれる通信プロ
トコル上のパラメータ、通信パケット長、宛先ポート番
号、ICMP(インターネット・コントロール・メッセ
ージ・プロトコル)タイプなどである。
The classification function in the shield module performs two types of inspection, local static inspection and local dynamic inspection, as described below. The local static test is a test that is performed based on a state, and is a test that is performed on each arriving packet based on many static parameters. Here, the static parameters include a source address and a destination address of a communication packet, parameters on a communication protocol included in a header (specifically, an IP header, etc.), a communication packet length, a destination port number, and an ICMP (Internet). -Control message protocol type.

【0041】例えば、防御対象のコンピュータがウェブ
サイトのサーバである場合には、その防御対象のコンピ
ュータが他のコンピュータに対して「ping」要求を
送信することはないため、シールドは、その防御対象の
コンピュータに向けたタイプ0のICMPパケット(エ
コー応答)や送信元のポート番号が7であるUDP(ユ
ーザ・データグラム・プロトコル)を、検出次第すぐに
破棄することができる。また、静的検査によって検出可
能な他の異常の例としては、送信元アドレスと宛先アド
レスが同一である通信パケットである。このような通信
パケットは、そのアドレスを有するコンピュータが通信
パケットの送受信のループに陥ることを狙った攻撃であ
るので、シールドはこのような通信パケットを全て破棄
すべきである。
For example, if the computer to be protected is a website server, the computer to be protected will not send a "ping" request to other computers, so the shield will The type 0 ICMP packet (echo response) directed to the computer and the UDP (User Datagram Protocol) whose source port number is 7 can be discarded as soon as it is detected. Another example of the abnormality that can be detected by the static inspection is a communication packet in which the source address and the destination address are the same. Since such a communication packet is an attack aimed at causing a computer having the address to fall into a loop of transmitting and receiving the communication packet, the shield should discard all such communication packets.

【0042】局所動的検査は、状態に基づいて行われる
検査であり、シールドによって記録されたログファイル
(ログ情報)を用いて行われる検査である。このログフ
ァイルは、異常を検出するために用いられるデータとし
て、ある種のパラメータの値を所定期間にわたって記録
し保持するものである。
The local dynamic inspection is an inspection performed based on the state, and is an inspection performed using a log file (log information) recorded by the shield. This log file records and holds the values of certain parameters for a predetermined period as data used for detecting an abnormality.

【0043】ここで、動的検査の具体例について説明す
る。第1の具体例は、異常なパケットあるいは疑わしい
パケットが継続的に流入してくるときに、その継続時間
を検査するものである。例えば、突然、同じ送信元から
規定の最大サイズの通信パケットが5分間に渡って継続
的に流入してきた場合になどには、シールドはその送信
元アドレスからの通信パケットの疑わしさの度合いを上
げ、その送信元アドレスからの通信パケットを「低」優
先度の出力待ち行列に入れるようにする。第2の具体例
は、特定のコンピュータへの到着パケットとそのコンピ
ュータからの送出パケットと間の量(パケット数、デー
タ量など)の比率を用いて検査を行うものである。一般
にこの到着・送出間の比率は、コンピュータ(システ
ム、例えばウェブサイトのシステム)毎に異なるが、あ
るコンピュータについて見た場合、その比率はほぼ一定
している。そこで、予め通常時に長期的な到着・送出間
の平均比率を算出しておく。そして、その平均比率に基
づいて、異常を検知するための到着・送出間の比率の閾
値を決定しておく。そして、検査中に到着・送出間の比
率がこの閾値をこえた場合に異常とみなすことができ
る。なお、上限値と下限値を予め決定しておき、到着・
送出間の比率が上限値を上回った場合あるいは下限値を
下回った場合に異常とみなすようにしても良い。
Here, a specific example of the dynamic inspection will be described. The first specific example is to inspect the duration of abnormal packets or suspicious packets when they continuously flow in. For example, if suddenly communication packets of the specified maximum size continuously flow from the same source for 5 minutes, the shield increases the suspiciousness of the communication packets from the source address. , Put the communication packet from that source address into the output queue of "low" priority. In the second specific example, the inspection is performed using the ratio of the amount (the number of packets, the amount of data, etc.) between the packet arriving at a specific computer and the packet sent out from that computer. Generally, the ratio between arrival and transmission differs depending on the computer (system, for example, website system), but when viewed from a certain computer, the ratio is almost constant. Therefore, the average ratio between long-term arrival and transmission is calculated in advance during normal times. Then, based on the average ratio, the threshold value of the ratio between arrival and transmission for detecting an abnormality is determined. When the ratio between arrival and transmission exceeds the threshold value during the inspection, it can be considered as an abnormality. In addition, the upper limit and the lower limit are determined in advance and the arrival /
It may be considered as abnormal if the ratio between the transmissions exceeds the upper limit value or falls below the lower limit value.

【0044】第3の具体例は、通信パケットの送信元ア
ドレスの分布を利用して検査を行うものである。正常な
状況においてある程度の長い期間にわたって見た場合、
通信パケットの送信元アドレスの分布はほぼ一定してい
るはずである。ところがDDoS攻撃が行われる際に
は、ランダムに選ばれたアドレスを用いて送信元アドレ
スの偽装が行われるため、送信元アドレスのばらつき度
合いが異常に高い場合、言い換えればランダム性が高い
場合に、攻撃を検出することができる。図5(a)およ
び(b)は、それぞれ送信元IPアドレスの分布状況を
示すグラフである。図5(a)は正常時の分布例を示し
ており、同(b)はDDoS攻撃を受けているときの分
布例を示しており、それぞれ横軸はIPアドレス、縦軸
は通信パケットの出現回数(あるいは出現頻度でも良
い)を表している。図5(a)に示すように、正常時に
は、特定の少数の送信元アドレスの通信パケットのみの
出現回数が多く、他の送信元アドレスの通信パケットの
出現回数は少なかったりゼロであったりするなど、特定
のアドレスに出現回数が集中する傾向がある。それに対
して図5(b)に示すように、DDoS攻撃が行われて
いるときには、偽装のためのアドレスがランダムに選択
されるために、すべての送信元アドレスについて一様に
出現回数が多い。つまり、出現回数の分布がIPアドレ
スの空間にばらついている度合いが大きい。
In the third specific example, the inspection is performed by utilizing the distribution of the source address of the communication packet. If you look at it in a normal situation for a long time,
The distribution of source addresses of communication packets should be almost constant. However, when a DDoS attack is performed, the source address is spoofed using a randomly selected address. Therefore, when the variation degree of the source address is abnormally high, in other words, when the randomness is high, Attacks can be detected. FIGS. 5A and 5B are graphs showing distribution states of source IP addresses. FIG. 5A shows an example of distribution in a normal state, and FIG. 5B shows an example of distribution when a DDoS attack is received. The horizontal axis represents the IP address, and the vertical axis represents the appearance of communication packets. It represents the number of times (or the frequency of appearance). As shown in FIG. 5A, in a normal state, the number of appearances of only communication packets of a specific small number of source addresses is large, and the number of appearances of communication packets of other source addresses is small or zero. , The number of appearances tends to concentrate on a specific address. On the other hand, as shown in FIG. 5B, when a DDoS attack is being performed, the number of appearances is uniformly high for all the source addresses because the address for camouflage is randomly selected. In other words, the distribution of the number of appearances has a large degree of variation in the IP address space.

【0045】このようなランダム性を数値化に扱う方法
を説明する。存在するすべてのIPアドレスの数をkと
する。i番目(1≦i≦k)のIPアドレスの出現頻度
を長期間にわたって測定しておくことによって、所定期
間中に期待されるi番目の出現回数e(i)を予め得て
おく。そして、検査時に所定期間中に実際にi番目のI
Pアドレスが出現した回数o(i)を得ておく。そし
て、すべてのIPアドレスについて、 d(i)=((o(i)−e(i))^2)/e(i) を計算し、1≦i≦kであるすべてのiについてのd
(i)の総和を計算する。この総和が予め定めた閾値を
上回った場合に、異常とみなすことができる。
A method of handling such randomness in digitization will be described. Let k be the number of all existing IP addresses. By measuring the appearance frequency of the i-th (1 ≦ i ≦ k) IP address over a long period of time, the expected number of times e (i) of the i-th appearance during a predetermined period is obtained in advance. Then, at the time of inspection, the i-th I-th
The number of times the P address appears o (i) is obtained. Then, d (i) = ((o (i) -e (i)) ^ 2) / e (i) is calculated for all IP addresses, and d for all i where 1 ≦ i ≦ k is calculated.
Calculate the sum of (i). If this total exceeds a predetermined threshold value, it can be considered as an abnormality.

【0046】以上説明した3種類の具体例の他にも、通
信パケット長や、TTL(Time-To-Live )値など様々
なパラメータを用いた検査が可能であり、これらのパラ
メータ値のランダム性が異常に高い場合や、逆に一定し
ている度合いが異常に高い場合などを検出することによ
って、DDoS攻撃が行われているかどうかを検査する
ことができる。
In addition to the three types of specific examples described above, it is possible to inspect using various parameters such as communication packet length and TTL (Time-To-Live) value, and the randomness of these parameter values is possible. It is possible to inspect whether or not a DDoS attack is being performed by detecting a case where is abnormally high or a case where the degree of constant is abnormally high.

【0047】図3に示したように、シールドを複数の通
信装置に分散させることにより、次の2つの効果が得ら
れる。第1の効果は、DDoS攻撃を吸収しやすくな
り、異常な通信トラフィックの増加を起こりにくくする
ことができる点である。第2の効果は、通信トラフィッ
クの検査を異なった複数の場所で行える点である。
As shown in FIG. 3, by dispersing the shield in a plurality of communication devices, the following two effects can be obtained. The first effect is that the DDoS attack can be easily absorbed, and an abnormal increase in communication traffic can be suppressed. The second effect is that communication traffic can be inspected at different locations.

【0048】次に、プローブ(図3における通信装置7
001eが果たす役割)の具体的な処理内容について説
明する。本実施形態の防御方法は、DDoS攻撃によっ
て引き起こされるダメージを最小化することを目的とし
て、シールドを用いた防御のほかに、さらにプローブを
用いる。前述のようにシールドが「第一段階」の対応の
役割を果たすように設計されていたのに対して、プロー
ブは、トレースバックおよび「第二段階」の対応の役割
を果たすように設計されている。つまり、シールド過程
において通信パケットが確実に防御対象コンピュータに
対する攻撃の通信パケットであることが判明した場合
に、シールド通信装置がより攻撃元に近い側の隣接する
通信装置に対してプローブプログラムコードを送信する
プローブプログラムコード送信過程の処理が行われる。
また、前記プローブプログラムコードを受信したプロー
ブ通信装置が、当該プローブプログラムコードを実行す
ることによって、当該プローブ通信装置に到着する通信
パケットを分析し、その結果当該通信パケットが防御対
象コンピュータに対する攻撃の通信パケットである場合
には当該通信パケットを破棄するとともにさらに攻撃元
に近い側の隣接する通信装置に対して前記プローブプロ
グラムコードを送信し、分析の結果一定時間攻撃のパケ
ットが検知されない場合には前記プローブプログラムコ
ードの処理を終了させるプローブ過程の処理が行われ
る。
Next, the probe (communication device 7 in FIG. 3)
Specific processing contents of (role played by 001e) will be described. The defense method according to the present embodiment further uses a probe in addition to the defense using a shield for the purpose of minimizing the damage caused by the DDoS attack. Whereas the shield was designed to act as a "first stage" response, as described above, the probe was designed to perform a traceback and "second stage" response. There is. In other words, in the shield process, when it is found that the communication packet is an attack communication packet for the defense target computer, the shield communication device transmits the probe program code to the adjacent communication device closer to the attack source. The process of transmitting the probe program code is performed.
Further, the probe communication device that has received the probe program code analyzes the communication packet that arrives at the probe communication device by executing the probe program code, and as a result, the communication packet causes an attack communication to the defense target computer. If the packet is a packet, the communication packet is discarded, and the probe program code is transmitted to the adjacent communication device closer to the attack source. The process of the probe process is completed to terminate the processing of the probe program code.

【0049】本実施形態の防御のしくみがDDoS攻撃
を確認して、攻撃による洪水トラフィックを完璧に阻止
することを決定した場合には、プローブが洪水トラフィ
ックの元に向かって送り込まれる。その目的は次の2つ
である。第1の目的は、洪水トラフィックを可能な限り
上流で阻止することによって、ネットワークの帯域を少
しでも多く確保することである。また、第2の目的は、
法的に使用する目的の攻撃の証拠を収集することであ
る。このプローブもまた、アクティブネットワークのア
クティブコードとして実現されている。つまり、プロー
ブモジュールは、下流から上流に向かって通信装置から
通信装置を段階的に移動していくエージェントのような
ふるまいをする。なお、本実施形態では、次に述べるA
型とB型との2つのモデルのDDoS攻撃に対応できる
ように、プローブモジュールのアルゴリズムを設計して
いる。
If the defense mechanism of the present embodiment confirms the DDoS attack and decides to completely prevent the flood traffic due to the attack, the probe is sent to the source of the flood traffic. The purpose is the following two. The first purpose is to reserve as much network bandwidth as possible by blocking flood traffic as upstream as possible. The second purpose is
To collect evidence of an attack for legal use. This probe is also implemented as the active code of the active network. That is, the probe module behaves like an agent that moves from communication device to communication device step by step from downstream to upstream. In this embodiment, the following A
The algorithm of the probe module is designed so as to deal with the DDoS attacks of two models, type and type B.

【0050】まず、A型のDDoS攻撃について説明す
る。図6は、A型のDDoS攻撃を示す概略図である。
このA型のモデルでは、マスター(攻撃元のコンピュー
タ)と、このマスターによって侵入されたスレーブ(コ
ンピュータ)とによって攻撃が行われる。マスターコン
ピュータはDDoS攻撃のプログラムをスレーブコンピ
ュータにアップロードする。このマスターとスレーブと
の間の通信をコントロールトラフィックと呼ぶ。そし
て、それぞれのスレーブコンピュータは、被攻撃者のコ
ンピュータに対して膨大な量のパケットを送りつける。
このとき、被攻撃者が攻撃元を特定できないようにする
ことを目的として、スレーブコンピュータから被攻撃者
のコンピュータに対して送られる通信パケットの送信元
アドレスの偽装が行われることもしばしばある。
First, the A-type DDoS attack will be described. FIG. 6 is a schematic diagram showing an A-type DDoS attack.
In this type A model, an attack is performed by a master (attacking computer) and a slave (computer) invaded by this master. The master computer uploads the DDoS attack program to the slave computer. The communication between the master and slave is called control traffic. Then, each slave computer sends a huge amount of packets to the attacked computer.
At this time, the source address of the communication packet sent from the slave computer to the attacker's computer is often spoofed for the purpose of preventing the attacker from identifying the attack source.

【0051】次に、B型のDDoS攻撃について説明す
る。図7は、B型のDDoS攻撃を示す概略図である。
例えば「Smurf」や「Fraggle」を用いたD
DoS攻撃はこのB型に含まれる。B型の攻撃の特徴は
被攻撃者のコンピュータのダメージを大きくするため
に、ネットワークを用いて通信トラフィックの増幅を行
う点にある。マスター(攻撃元のコンピュータ)がスレ
ーブコンピュータに対して指令を行うことにより、スレ
ーブコンピュータはICMPエコー要求パケットやUD
Pの7番ポート(エコー)のパケットをいくつかのネッ
トワークに対してブロードキャストする。このとき各々
のエコー要求のパケットの送信元アドレスは偽装されて
おり、被攻撃者のコンピュータのアドレスが送信元アド
レスとして格納されている。従って、エコー要求パケッ
トのブロードキャスト先のネットワークに接続されたす
べてのコンピュータ(正当なユーザのコンピュータ)
は、被攻撃者のコンピュータに対してエコー応答のパケ
ットを送信しようとする。このようにして、ネットワー
クによって増幅された洪水トラフィックが被攻撃者のコ
ンピュータに向かうこととなる。
Next, the B-type DDoS attack will be described. FIG. 7 is a schematic diagram showing a B-type DDoS attack.
For example, D using "Smurf" or "Fraggle"
The DoS attack is included in this type B. The characteristic of the B-type attack is that the communication traffic is amplified using a network in order to increase the damage to the attacked computer. When the master (attacking computer) issues a command to the slave computer, the slave computer causes the ICMP echo request packet or UD
It broadcasts P's port 7 (echo) packet to some networks. At this time, the source address of each echo request packet is spoofed, and the address of the attacked computer is stored as the source address. Therefore, all computers (legitimate user's computer) connected to the network to which the echo request packet is broadcast.
Attempts to send an echo reply packet to the attacked computer. In this way, the flood traffic amplified by the network will be directed to the victim's computer.

【0052】次に、プローブによる前記A型のDDoS
攻撃への対応の処理について説明する。一般に、あるひ
とつの通信パケットの送信元アドレスが偽装されている
か偽装されていないかを見分けることはできない。そこ
で、初期的には、全ての通信パケットの送信元アドレス
が偽装されているものという仮定を置くことにする。
Next, the A-type DDoS is probed.
The process of responding to an attack will be described. Generally, it is not possible to distinguish whether the source address of a certain communication packet is spoofed or not spoofed. Therefore, initially, it is assumed that the source addresses of all communication packets are forged.

【0053】図8は、A型のDDoS攻撃に対応するた
めのプローブのアルゴリズムを記述した擬似プログラム
コードである。以下、図8を参照しながら説明する。シ
ールドモジュールによって検出された攻撃トラフィック
の送信元アドレスが変数「attSrc」に格納されて
いる。本実施形態においては、アクティブネットワーク
実行環境で実行される各アクティブコードは特定の所有
者によって所有され、当該所有者に関するすべての通信
パケットをフルに制御することができるようにオーソラ
イズされていることを前提としている。従って、各通信
装置上では、プローブモジュールは当該プローブモジュ
ールの所有者に関するパケットをすべて捕捉し処理対象
とすることができる。
FIG. 8 is a pseudo program code describing a probe algorithm for dealing with an A-type DDoS attack. Hereinafter, description will be given with reference to FIG. The source address of the attack traffic detected by the shield module is stored in the variable “attSrc”. In this embodiment, each active code executing in the active network execution environment is owned by a particular owner and is authorized to have full control over all communication packets for that owner. It is assumed. Therefore, on each communication device, the probe module can capture and process all packets related to the owner of the probe module.

【0054】図3に示したように、シールドの通信装置
からスタートして、順次自己複製送信モジュールの機能
によって、攻撃元の方向に向かって隣接する通信装置に
段階的にプローブモジュールの複製が転送されていく。
図8に示すプローブモジュールのコードは、新たなノー
ド(通信装置)uに到着して実行が開始される。
As shown in FIG. 3, starting from the shielded communication device, the function of the self-replicating transmission module sequentially transfers replicas of the probe module to adjacent communication devices in the direction of the attack source. Will be done.
The code of the probe module shown in FIG. 8 arrives at a new node (communication device) u and is started to be executed.

【0055】まず図8に示す擬似コードの1行目におい
て、変数「explored」に値「false
(偽)」が格納される。次に同擬似コードの2行目から
11行目までのループ(do−while)が実行され
る。同擬似コードの3行目において、関数「captu
rePacketByDest()」の機能によって、
被攻撃者のコンピュータのアドレス(IPアドレス)を
宛先アドレスとする通信パケットを捕捉し、その通信パ
ケットのデータを変数(構造体)「p」に格納する。同
擬似コードの4行目において、変数「p」に格納された
通信パケットの送信元アドレス(p.src)が前記変
数「attSrc」の値に等しいならば、つまり攻撃ト
ラフィックの送信元アドレスに等しいならば、5行目か
ら9行目までの処理が実行される。そうでない場合に
は、10行目の関数「releasePacket
(p)」の機能によって当該通信パケットがリリースさ
れる、つまり転送先の通信装置に向けて送出される。4
行目の処理において攻撃トラフィックの通信パケットで
あると判別された場合は、同擬似コードの5行目におい
て、関数「discard(p)」の機能により、変数
「p」に格納された通信パケットは破棄される。つま
り、攻撃のトラフィックがここで阻止される。また、同
擬似コードの7行目から9行目の処理においては、当該
ノードuに隣接するノードであって当該ノードuに対し
てプローブモジュールを送信した元のノードではないも
の、つまりすべての上流のノードv(通信装置、複数の
場合もある)に対してプローブモジュール自身の自己複
製を転送する。
First, in the first line of the pseudo code shown in FIG. 8, the variable "explored" has the value "false".
(False) "is stored. Next, a loop (do-while) from the second line to the eleventh line of the pseudo code is executed. In the third line of the pseudo code, the function "captu
By the function of "rePacketByDest ()",
A communication packet whose destination address is the address (IP address) of the attacked computer is captured, and the data of the communication packet is stored in a variable (structure) “p”. In the fourth line of the pseudo code, if the source address (p.src) of the communication packet stored in the variable "p" is equal to the value of the variable "attSrc", that is, equal to the source address of the attack traffic. If so, the processing from the fifth line to the ninth line is executed. Otherwise, the function "releasePacket" on the 10th line
The communication packet is released by the function of (p), that is, is sent to the transfer destination communication device. Four
If it is determined that the packet is an attack traffic communication packet in the processing of the line, the communication packet stored in the variable “p” is determined by the function of the function “discard (p)” in line 5 of the pseudo code. Will be discarded. That is, attack traffic is blocked here. Further, in the processing from the 7th line to the 9th line of the pseudo code, a node adjacent to the node u and not the original node that transmitted the probe module to the node u, that is, all upstream Node v (communication device, there may be a plurality) of the probe module itself.

【0056】同擬似コードの11行目の条件式におい
て、攻撃のトラフィックが見つからない状態が所定時間
続いた場合には、2行目から11行目までのループを抜
け出し、12行目において自己消滅モジュールの機能に
よって自己を消滅させる。つまり、一旦プローブとして
動作を始めたもののその通信装置が攻撃の上流の位置に
ない場合には、プローブとしての役割を終える。
In the conditional expression on the 11th line of the pseudo code, if the attack traffic is not found for a predetermined time, the loop from the 2nd line to the 11th line is exited and the self-destruction is performed on the 12th line. Extinguish yourself by the function of the module. That is, when the communication device, which has once started to operate as a probe, is not located at the upstream position of the attack, it ends its role as a probe.

【0057】以上説明したように、図8に示したアルゴ
リズムの目的は攻撃元に最も近い位置の通信装置を見つ
け出し、その位置において不必要なトラフィックを阻止
することである。これによって、下流に攻撃の通信パケ
ットが流れることを防ぎ、途中の通信装置に不要な負荷
がかからないようにすることができる。また、攻撃元に
最も近い通信装置に到達すると、プローブはその位置情
報(IPアドレスなど、証拠情報)を防御指令元に報告
する処理を行う。
As described above, the purpose of the algorithm shown in FIG. 8 is to find the communication device at the position closest to the attack source and block unnecessary traffic at that position. As a result, it is possible to prevent an attack communication packet from flowing downstream and prevent an unnecessary load from being applied to the communication device on the way. When the probe reaches the communication device closest to the attack source, the probe performs a process of reporting its position information (evidence information such as IP address) to the defense command source.

【0058】次に、プローブによる前記B型のDDoS
攻撃への対応の処理について説明する。前述したよう
に、B型のDDoS攻撃においては、攻撃元(スレー
ブ)から増幅のために用いられるネットワークに対して
送られる通信パケットは偽装された送信元アドレスを有
している。ところが、増幅のために用いられたネットワ
ークに属しているコンピュータから被攻撃者のコンピュ
ータに送られる洪水トラフィックの通信パケットのヘッ
ダには、各コンピュータの正規の送信元アドレスが格納
されている。シールドは、初期的には、増幅のために用
いられたネットワークに属するコンピュータのアドレス
を変数「attSrc」に格納してしまうため、図8で
示したアルゴリズムを使っている限りにおいては、プロ
ーブは増幅のために用いられたネットワークまでしか到
達することはできず、その先、つまり真の攻撃者にさら
に近い通信装置へプローブを送り込むことはできない。
そこで、B型のDDoS攻撃に対応するためのプローブ
として新たなアルゴリズムを用いることにする。
Next, the B-type DDoS is probed.
The process of responding to an attack will be described. As described above, in the B-type DDoS attack, the communication packet sent from the attack source (slave) to the network used for amplification has a spoofed source address. However, in the header of the communication packet of flood traffic sent from the computer belonging to the network used for amplification to the attacked computer, the legitimate source address of each computer is stored. Initially, the shield stores the address of the computer belonging to the network used for amplification in the variable “attSrc”. Therefore, as long as the algorithm shown in FIG. It can only reach the network used for it, and can't send the probe beyond that, to the communication device closer to the true attacker.
Therefore, a new algorithm will be used as a probe for dealing with the B-type DDoS attack.

【0059】図9は、B型のDDoS攻撃に対応するた
めのプローブのアルゴリズムを記述した擬似プログラム
コードである。以下、図9を参照しながら説明する。図
9に示す擬似プログラムコードの特徴は、その3行目と
4行目の処理にある。同コードの3行目では、関数「c
apturePacketAssociatedWit
h()」の機能によって、被攻撃者のコンピュータのア
ドレスに関する通信パケットを捕捉する。つまり、例え
ば、送信元アドレスあるいは宛先アドレスのいずれかが
被攻撃者のコンピュータのアドレスと同一である通信パ
ケットを捕捉する。また、同コードの4行目のif文に
よる判断のための条件式は、捕捉された通信パケットの
送信元アドレスが変数「attSrc」に等しい場合だ
けでなく、送信元アドレスが被攻撃者のコンピュータの
アドレスであって且つ宛先アドレスが変数「attSr
c」に格納されているアドレスのブロードキャストアド
レスである場合にも、その値が「真」となるように記述
されている。例えば、変数「attSrc」に格納され
ている攻撃元のIPアドレスが「101.102.10
3.104」であったとき、「101.102.10
3.255」はそのブロードキャストアドレスである。
4行目のif文の条件式をこのようなものにすることに
より、被攻撃者のコンピュータのアドレスが送信元アド
レスであって且つ増幅に用いられているネットワークの
ブロードキャストアドレスが宛先アドレスであるような
通信パケット、すなわち攻撃元(図7におけるスレー
ブ)から増幅のためのネットワークに対して送られてい
る偽装の通信パケットを破棄できる(同コード5行目の
処理)ようになるとともに、さらに攻撃元に近い通信装
置にプローブモジュールを送り込むことができる(同コ
ードの6行目〜9行目の処理)ようになる。
FIG. 9 is a pseudo program code describing a probe algorithm for dealing with a B-type DDoS attack. Hereinafter, description will be given with reference to FIG. The characteristic of the pseudo program code shown in FIG. 9 lies in the processing on the third and fourth lines. In the third line of the code, the function "c
capturePacketAssociatedWit
The function "h ()" captures communication packets related to the address of the attacked computer. That is, for example, a communication packet in which either the source address or the destination address is the same as the address of the attacked computer is captured. The conditional expression for the determination by the if statement in the fourth line of the code is not only the case where the source address of the captured communication packet is equal to the variable "attSrc", but the source address is the computer of the attacked person. And the destination address is the variable "attSr
Even in the case of the broadcast address of the address stored in “c”, the value is described as “true”. For example, the attack source IP address stored in the variable “attSrc” is “101.102.10”.
When it is "3.104", "101.102.10"
3.255 "is the broadcast address.
By making the conditional expression of the if statement in the 4th line such that the address of the attacked computer is the source address and the broadcast address of the network used for amplification is the destination address. Communication packets, that is, spoofed communication packets sent from the attack source (slave in FIG. 7) to the network for amplification can be discarded (processing in line 5 of the same code), and The probe module can be sent to the communication device close to (the processing of the sixth line to the ninth line of the same code).

【0060】なお、変数「attSrc」に格納される
攻撃元のIPアドレスは複数のアドレスであっても良
い。また、通信装置から通信装置へプローブが移動する
のに伴って、この攻撃元IPアドレスの情報も渡される
ようにする。
The attacking IP address stored in the variable "attSrc" may be a plurality of addresses. Further, as the probe moves from the communication device to the communication device, the attack source IP address information is also passed.

【0061】なお、上述した防御のしくみが機能するた
めには、必ずしもネットワークを構成するすべての通信
装置がアクティブネットワーク実行環境を備えているこ
とが要求されるわけではない。つまり、ネットワークが
アクティブノードのみから構成されるのではなく、アク
ティブノードと非アクティブノード(アクティブネット
ワーク実行環境を備えず通信パケットの転送のみを行う
通信装置のノード)とが混在していても良い。この場合
には、DDoS攻撃防御プログラムコードは、アクティ
ブノード相互間で転送され、アクティブノードにおいて
のみ実行される。そして、非アクティブノードは、単に
通信パケットを転送する役割を果たす。
In order for the above-mentioned defense mechanism to work, it is not always necessary that all the communication devices that make up the network have an active network execution environment. That is, the network does not have to be composed of only active nodes, and active nodes and inactive nodes (nodes of communication devices that do not have an active network execution environment and only transfer communication packets) may be mixed. In this case, the DDoS attack protection program code is transferred between the active nodes and executed only in the active nodes. The inactive node then merely serves to transfer the communication packet.

【0062】次に、図10〜図13を参照しながら、本
実施形態が前提としているアクティブネットワークの実
現方式の一例について説明する。
Next, with reference to FIGS. 10 to 13, an example of an active network implementation method presupposed by this embodiment will be described.

【0063】図10は、通信装置7001の内部の構成
を示すブロック図である。図10に示すように、通信装
置7001には通信線7024a、7024b、702
4c、7024dが接続されており、通信装置7001
はこれらの通信線を介して隣接する他の通信装置との間
でパケットを交換することができるようになっている。
また、通信装置7001には、上記の各通信線7024
a〜7024dに対応したインタフェース部7023a
〜7023dと、パケットを転送する処理を行うための
転送処理部7021と、パケットの転送の際の転送先の
情報を記憶する転送先テーブル7022と、アクティブ
パケットに対する処理を行うためのアクティブネットワ
ーク実行環境(Active Network Execution Environmen
t)7010とが設けられている。なお、アクティブネ
ットワーク実行環境7010は、内部に、アクティブコ
ード(プログラム)を実行するためのコード実行部70
11と、アクティブコードを記憶しておくためのコード
記憶部7012とを備えている。なお、ここでアクティ
ブコードとは、アクティブネットワークにおいてパケッ
トに対する作用を行うコンピュータプログラムのコード
である。
FIG. 10 is a block diagram showing the internal configuration of communication apparatus 7001. As shown in FIG. 10, the communication device 7001 includes communication lines 7024a, 7024b, and 702.
4c and 7024d are connected to the communication device 7001.
Is capable of exchanging packets with other adjacent communication devices via these communication lines.
Further, the communication device 7001 includes the above-mentioned communication lines 7024.
interface unit 7023a corresponding to a to 7024d
To 7023d, a transfer processing unit 7021 for performing a packet transfer process, a transfer destination table 7022 for storing information of a transfer destination at the time of packet transfer, and an active network execution environment for performing a process for an active packet (Active Network Execution Environmen
t) 7010 are provided. The active network execution environment 7010 is internally provided with a code execution unit 70 for executing active code (program).
11 and a code storage unit 7012 for storing the active code. The active code is a code of a computer program that acts on a packet in the active network.

【0064】ここで、図10を参照しながら、この通信
装置7001の動作例の概要を説明する。隣接する他の
通信装置から通信線7024dを介してパケットが到着
すると、インタフェース部7023dがそのパケットを
受信し転送処理部7021に渡す。転送処理部7021
は、渡されたパケットのヘッダ部分に格納されている送
信元(source)アドレスと宛先(destination )アドレ
スとを読み取り、さらにそれらのアドレスをキーとして
転送先テーブル記憶部7022に記憶されている転送先
テーブルを参照することによって、そのパケットにどう
対処するかを決定する。
Here, an outline of an operation example of the communication device 7001 will be described with reference to FIG. When a packet arrives from another adjacent communication device via the communication line 7024d, the interface unit 7023d receives the packet and transfers it to the transfer processing unit 7021. Transfer processing unit 7021
Reads the source address and the destination address stored in the header part of the passed packet, and further, using those addresses as a key, the transfer destination stored in the transfer destination table storage unit 7022. Determine what to do with the packet by looking up the table.

【0065】パケットへの対処は大きく2通りに分けら
れる。そのパケットに対してアクティブコードを適用す
る場合と、そのパケットをそのまま他の通信装置に転送
する場合とである。転送先テーブルを参照した結果、そ
のパケットに対してアクティブコードを適用すべきもの
である場合には、転送処理部7021は、そのパケット
をアクティブネットワーク実行環境7010に渡す。ア
クティブネットワーク実行環境7010においては、コ
ード実行部7011がそのパケットを受け取り、そのパ
ケットに対して適用すべきアクティブコードをコード記
憶部7012から読み出して実行する。なお、コード実
行部7011は、アクティブコードを実行した結果、必
要な場合には処理対象となったパケットを再び転送処理
部7021に渡して他の通信装置に対して転送すること
もある。転送先テーブルを参照した結果、そのパケット
にアクティブコードを適用せずそのまま他の転送装置に
転送するべきものである場合には、転送処理部7021
は、適切な転送先に対応したインタフェース部(702
3aや7023bや7023cなど)に渡し、そのイン
タフェース部が通信線(7024aや7024bや70
24cなど)を介してパケットを他の通信装置に転送す
る。
There are roughly two ways to deal with packets. There are a case where the active code is applied to the packet and a case where the packet is directly transferred to another communication device. As a result of referring to the transfer destination table, when the active code is to be applied to the packet, the transfer processing unit 7021 passes the packet to the active network execution environment 7010. In the active network execution environment 7010, the code execution unit 7011 receives the packet, reads the active code to be applied to the packet from the code storage unit 7012, and executes it. Note that the code execution unit 7011 may pass the packet, which is the processing target, to the transfer processing unit 7021 again and transfer it to another communication device when necessary as a result of executing the active code. As a result of referring to the transfer destination table, if the packet is to be directly transferred to another transfer device without applying the active code, the transfer processing unit 7021
Is an interface unit (702) corresponding to an appropriate transfer destination.
3a, 7023b, 7023c, etc.), and the interface section of the communication line (7024a, 7024b, 70).
24c) to transfer the packet to another communication device.

【0066】なお、ここでは通信線7024dを介して
他の通信装置からパケットが到着した場合を例として説
明したが、他の通信線を介してパケットが到着した場合
の処理も同様である。
Here, the case where the packet arrives from another communication device via the communication line 7024d has been described as an example, but the process when the packet arrives via the other communication line is similar.

【0067】次に、通信装置7001内の転送処理部7
021がいかにしてパケットに対する処置(アクティブ
コードを適用するか、単純に他の通信装置に転送する
か)を決定するかを具体的に説明する。
Next, the transfer processing unit 7 in the communication device 7001
A specific description will be given of how the 021 determines the action to be taken on the packet (whether to apply the active code or simply transfer it to another communication device).

【0068】本実施形態が基礎とするフレームワークで
は、アクティブネットワーク実行環境はパケットの中に
おいて指定されているIPアドレスに基づいて起動され
る。ここで、全ての(グローバル)IPアドレスの集合
をIと表わすものとする。また、送信元IPアドレスが
sであり宛先IPアドレスがdであるようなパケットを
(s,d)と表わすものとする。また、通信装置のアク
ティブネットワーク実行環境に格納されているすべての
アクティブコードはそれぞれ特定のユーザに属するもの
とし、ある特定のユーザの所有するIPアドレスの集合
をOと表わすものとする。
In the framework on which this embodiment is based, the active network execution environment is activated based on the IP address specified in the packet. Let I be the set of all (global) IP addresses. A packet having a source IP address of s and a destination IP address of d is represented by (s, d). Further, all active codes stored in the active network execution environment of the communication device belong to a particular user, and a set of IP addresses owned by a particular user is represented by O.

【0069】本フレームワークでは、上記特定のユーザ
に属する個々のアクティブコードは、次に示す式による
集合Aで表されるパケットであって、かつ当該アクティ
ブネットワーク実行環境を備えた通信装置(ノード)に
よって受信されたパケットに対してアクセスする権限を
持つ。すなわち、 A={(s,d)∈[(O×I)∪(I×O)]|s≠
d} である。つまり、この式が意味するところの概略は、特
定のユーザに属するアクティブコードは、当該ユーザが
所有する全てのIPアドレスのいずれかを送信元または
宛先のアドレスとするようなパケットに対してアクセス
権を有するということである。
In this framework, each active code belonging to the above-mentioned specific user is a packet represented by a set A by the following formula, and a communication device (node) equipped with the active network execution environment. Has permission to access packets received by. That is, A = {(s, d) ε [(O × I) ∪ (I × O)] | s ≠
d}. In other words, the general meaning of this formula is that an active code belonging to a specific user has access right to a packet whose source or destination address is any of all IP addresses owned by the user. Is to have.

【0070】当該ユーザに属するn個のアクティブコー
ドがある通信装置(ノード)に格納されているとき、i
番目(1≦i≦n)のアクティブコードは、集合C
(i)(C(i)⊆A)に属するパケットをキャプチャ
ーして処理することをアクティブネットワーク実行環境
に対して予め要求しておく。つまり、当該ユーザに関し
て、アクティブネットワーク実行環境は、c(1)∪c
(2)∪・・・・・・∪c(n)なる和集合の要素であ
るパケット(s,d)によって起動されるものであり、
このようなパケットを「アクティブパケット」と呼ぶこ
とができる。
When n active codes belonging to the user are stored in a communication device (node), i
The th (1 ≦ i ≦ n) active code is the set C
(I) The active network execution environment is requested in advance to capture and process a packet belonging to (C (i) ⊆A). That is, for the user, the active network execution environment is c (1) ∪c
(2) ∪ ... · ∪c (n) is started by the packet (s, d) which is an element of the union,
Such a packet can be called an "active packet".

【0071】図11は、図10に示した転送先テーブル
記憶部7022に記憶されている転送先テーブルの一例
を示す概略図である。上記のフレームワークを実現する
ために必要な情報は、このような転送先テーブルに格納
することが可能である。
FIG. 11 is a schematic diagram showing an example of the transfer destination table stored in the transfer destination table storage unit 7022 shown in FIG. Information necessary for implementing the above framework can be stored in such a transfer destination table.

【0072】図11に示すように、転送先テーブルは、
タイプ(Type)と宛先アドレス(Destination )と送信
元アドレス(Source)と転送先(Send to )の各項目を
含んでいる。タイプの項目は、テーブルのエントリーの
タイプを表わすものであり、「アクティブ(Active)」
あるいは「通常(Regular )」のいずれかの値をとる。
宛先アドレスおよび送信元アドレスの項目は、転送対象
のパケットの宛先IPアドレスおよび送信元IPアドレ
スにそれぞれ対応するものである。転送先の項目はは、
宛先アドレスと送信元アドレスの組み合せがマッチした
パケットに関して、適用すべきアクティブコードの識別
情報あるいは転送先の通信装置のIPアドレスを表わす
ものである。
As shown in FIG. 11, the transfer destination table is
Each item of type (Type), destination address (Destination), source address (Source), and transfer destination (Send to) is included. The type item represents the type of entry in the table and is "Active".
Alternatively, it takes one of the values "Regular".
The items of the destination address and the source address correspond to the destination IP address and the source IP address of the transfer target packet, respectively. The transfer destination items are
It represents the identification information of the active code to be applied or the IP address of the communication device of the transfer destination for the packet in which the combination of the destination address and the source address is matched.

【0073】タイプの値が「アクティブ」であるエント
リーは、対象のパケットに適用するアクティブコードを
指定するものであり、その転送先の項目にはアクティブ
コードを識別する情報が書かれている。タイプの値が
「通常」であるエントリーは、対象のパケットの転送先
の通信装置のアドレスを指定するものであり、その転送
先の項目には転送先の通信装置のIPアドレスが書かれ
ている。
The entry whose type value is "active" specifies an active code to be applied to the target packet, and the transfer destination item has information for identifying the active code written therein. The entry whose type value is "normal" specifies the address of the communication device of the transfer destination of the target packet, and the IP address of the communication device of the transfer destination is written in the item of the transfer destination. .

【0074】図11に示す転送先テーブルの例におい
て、第1のエントリーでは、タイプが「アクティブ」で
あり、宛先アドレスが「1.2.3.4」であり、送信
元アドレスが「Any(何でもよい)」であり、転送先
が「アクティブコードA」となっている。これは、送信
元アドレスがいかなるアドレスであっても、宛先アドレ
スが「1.2.3.4」にマッチする場合には、該当す
るパケットをトリガーとしてアクティブネットワーク実
行環境が起動され、アクティブコードAが実行されるこ
とを表わしている。また、第2のエントリーでは、タイ
プが「アクティブ」であり、宛先アドレスが「10.5
0.0.0」であり、送信元アドレスが「11.12.
13.14」であり、転送先が「アクティブコードB」
となっている。これは、宛先アドレスと送信元アドレス
の両方がそれぞれ上記の値にマッチした場合には、該当
するパケットをトリガーとしてアクティブネットワーク
実行環境が起動され、アクティブコードBが実行される
ことを表わしている。また、第3のエントリーでは、タ
イプが「アクティブ」であり、宛先アドレスが「Any
(何でもよい)」であり、送信元アドレスが「157.
2.3.0」であり、転送先が「アクティブコードC」
となっている。これは、宛先アドレスがいかなるアドレ
スであっても、送信元アドレスが「157.2.3.
0」にマッチする場合には該当するパケットをトリガー
としてアクティブネットワーク実行環境が起動され、ア
クティブコードCが実行されることを表している。
In the example of the transfer destination table shown in FIG. 11, in the first entry, the type is "active", the destination address is "1.2.3.4", and the source address is "Any ( Anything)), and the transfer destination is "active code A". This is because when the destination address matches "1.2.3.4", the active network execution environment is activated by the corresponding packet as a trigger and the active code A Is executed. In the second entry, the type is "active" and the destination address is "10.5".
0.0.0 ”and the source address is“ 11.12.
13.14 "and the transfer destination is" active code B ".
Has become. This means that, when both the destination address and the source address match the above values, the active packet execution environment is activated by the corresponding packet and the active code B is executed. In the third entry, the type is “active” and the destination address is “Any”.
(Anything is acceptable) "and the transmission source address is" 157.
2.3.0 ”and the transfer destination is“ active code C ”
Has become. This means that no matter what the destination address is, the source address is "157.2.3.
When it matches “0”, it means that the active network execution environment is activated by the corresponding packet as a trigger and the active code C is executed.

【0075】なお、図11に示すように、転送先テーブ
ルにおいては、タイプが「アクティブ」であるエントリ
ーのほうが、タイプが「通常」であるエントリーよりも
上に存在している。そして、タイプが「アクティブ」で
あるエントリーのほうが、タイプが「通常」であるエン
トリーよりも優先的に適用される。また、各エントリー
は、通信装置へ到着したパケットのみに対して適用さ
れ、転送のために送出されるパケットに対しては適用さ
れない。
As shown in FIG. 11, in the transfer destination table, the entry whose type is "active" exists above the entry whose type is "normal". Then, the entry whose type is “active” is applied in preference to the entry whose type is “normal”. Also, each entry is applied only to the packet that has arrived at the communication device, and is not applied to the packet that is sent out for transfer.

【0076】以上説明した通信装置の構成をまとめる。
図10に示したインタフェース部は、通信線毎に設けら
れており、当該通信線から到着するパケットを受信する
とともに当該通信線に対してパケットを送出する処理を
行う。また、転送先テーブル記憶部は、パケットの送信
元アドレスまたは宛先アドレスまたはそれら両方のアド
レスのパターンと、該パターンに対応するプログラム
(アクティブコード)の情報あるいは該パターンに対応
する転送先アドレスの情報とが登録された転送先テーブ
ルを記憶する。また、アクティブネットワーク実行環境
は、前記プログラムを予め記憶しているとともに、この
プログラムを実行する。また、転送処理部は、通信線か
ら到着した受信パケットを前記インタフェース部から渡
された際に、当該受信パケットの送信元アドレスまたは
宛先アドレスに基づいて前記転送先テーブルを参照し、
前記転送先テーブルに当該受信パケットのアドレスのパ
ターンに対応する転送先アドレスの情報が登録されてい
た場合には当該受信パケットを所定の転送先アドレスに
向けて送出するように当該転送先アドレスに対応したイ
ンタフェース部に渡すとともに、前記転送先テーブルに
当該受信パケットのアドレスのパターンに対応するプロ
グラムの情報が登録されていた場合には前記アクティブ
ネットワーク実行環境部において当該プログラムを起動
させるとともに当該プログラムに当該受信パケットを渡
す。
The configuration of the communication device described above will be summarized.
The interface unit shown in FIG. 10 is provided for each communication line, and performs processing of receiving a packet arriving from the communication line and transmitting the packet to the communication line. Further, the transfer destination table storage unit stores a pattern of a source address and / or a destination address of the packet or both of them, information of a program (active code) corresponding to the pattern or information of a transfer destination address corresponding to the pattern. Stores the registered transfer destination table. Further, the active network execution environment stores the program in advance and executes the program. Further, the transfer processing unit, when the received packet arriving from the communication line is passed from the interface unit, refers to the transfer destination table based on the source address or the destination address of the received packet,
When the information of the transfer destination address corresponding to the pattern of the address of the received packet is registered in the transfer destination table, the transfer destination address is corresponded so that the received packet is sent to the predetermined transfer destination address. When the information of the program corresponding to the address pattern of the received packet is registered in the transfer destination table, the program is started in the active network execution environment section and Pass the received packet.

【0077】次に、本実施形態におけるアクティブコー
ドのセキュリティに関するモデルについて説明する。こ
のセキュリティのモデルは、各々のアクティブコード
が、アクティブコードの所有者に関わるパケットのみに
対して作用することを保証するためのものである。その
ために、このセキュリティのモデルは、公開鍵のインフ
ラストラクチャの存在を前提として、それを利用するこ
ととする。
Next, the model relating to the security of the active code in this embodiment will be described. This security model is to ensure that each active code operates only on packets that are associated with the owner of the active code. For this reason, this security model assumes that a public key infrastructure exists and uses it.

【0078】図12は、上記のセキュリティモデルとそ
のモデルにおける処理の手順を示す概略図である。図1
2において、符号7051はユーザAのユーザ端末装
置、7061は認証局(Certification Authority )装
置である。この認証局の機能は、公の機関によって提供
されるものであっても良いし、あるいはISP(Intern
et Service Provider,インターネット接続サービス提供
者)などによって提供されるものであっても良い。な
お、図12に示す例では、ユーザ端末装置7051のI
Pアドレスは「1.2.3.4」である。以下では、ユ
ーザAが、アクティブコードAを通信装置7001に登
録するための処理の手順を説明する。なお、以下におい
て、ユーザAはアクティブコードAの開発者であっても
良いが、その必然性はなく、他の開発者が開発したアク
ティブコードAをユーザAが入手し、それを通信装置7
001に登録するものでも良い。
FIG. 12 is a schematic diagram showing the security model and the procedure of processing in the model. Figure 1
2, reference numeral 7051 is a user terminal device of the user A, and 7061 is a certification authority (Certification Authority) device. The function of this certification authority may be provided by a public institution, or ISP (Intern
et Service Provider, Internet connection service provider) or the like. In the example shown in FIG. 12, I of the user terminal device 7051
The P address is “1.2.3.4”. In the following, a procedure of processing for user A to register active code A in communication device 7001 will be described. In the following, the user A may be the developer of the active code A, but this is not inevitable, and the user A obtains the active code A developed by another developer, and the user A obtains it.
It may be registered in 001.

【0079】まず(1)で示すように、ユーザAのユー
ザ端末装置7051は、周知技術を用いて鍵のペアすな
わち公開鍵と秘密鍵とを生成する。そして(2)で示す
ように、ユーザ端末装置7051は、上で生成された公
開鍵を認証局装置7061に登録する。このとき、認証
局装置7061は、ユーザ端末装置7051のIPアド
レスを検証する。この検証が正しく行なわれると、公開
鍵そのものと、ユーザAを識別するための情報と、ユー
ザ端末装置7051のIPアドレス「1.2.3.4」
が認証局装置7061に記憶される。
First, as shown in (1), the user terminal device 7051 of the user A generates a key pair, that is, a public key and a secret key, using a well-known technique. Then, as shown in (2), the user terminal device 7051 registers the public key generated above in the certificate authority device 7061. At this time, the certificate authority device 7061 verifies the IP address of the user terminal device 7051. If this verification is correctly performed, the public key itself, information for identifying the user A, and the IP address “1.2.3.4” of the user terminal device 7051.
Is stored in the certificate authority device 7061.

【0080】次に(3)で示すように、ユーザ端末装置
7051は、上で生成された秘密鍵を用いてアクティブ
コードAに電子署名する処理を行う。そして(4)で示
すように、ユーザ端末装置7051は、秘密鍵で署名さ
れたアクティブコードAを通信装置7001に登録する
処理を行う。
Next, as shown in (3), the user terminal device 7051 performs a process of digitally signing the active code A using the secret key generated above. Then, as shown in (4), the user terminal device 7051 performs a process of registering the active code A signed with the private key in the communication device 7001.

【0081】これを受けて通信装置7001は、(5)
で示すように、アクティブコードAの登録を行ったユー
ザAの電子証明書を認証局装置7061から取得する。
この電子証明書には、ユーザAを識別する情報と、その
IPアドレス「1.2.3.4」と、上の(2)におい
て登録された公開鍵そのものとが含まれている。そして
(6)で示すように、通信装置7001は、上記の電子
証明書から取り出したユーザAの公開鍵を用いて、上の
(4)において登録されたアクティブコードAの電子署
名を検証する。そして、これが正しく検証された場合に
は、通信装置7001は、アクティブコードAをアクテ
ィブネットワーク実行環境に導入する処理を行う。ま
た、これに応じて、転送先テーブルに必要なエントリー
が追加される。
In response to this, the communication device 7001 (5)
As shown in, the electronic certificate of the user A who has registered the active code A is acquired from the certificate authority device 7061.
This electronic certificate includes information for identifying the user A, its IP address "1.2.3.4", and the public key itself registered in (2) above. Then, as shown in (6), the communication device 7001 verifies the electronic signature of the active code A registered in (4) above using the public key of the user A extracted from the above electronic certificate. Then, if this is correctly verified, the communication device 7001 performs a process of introducing the active code A into the active network execution environment. Further, in response to this, necessary entries are added to the transfer destination table.

【0082】なお、この(1)および(2)の処理が行
われて一旦ユーザAの公開鍵が認証局装置7061に登
録されると、ユーザ端末装置7051はその公開鍵に対
応する秘密鍵を用いてアクティブモジュールをいくつで
も通信装置7001に登録することも可能である。
Note that once the processes (1) and (2) are performed and the public key of the user A is registered in the certification authority device 7061, the user terminal device 7051 sets the private key corresponding to the public key. It is also possible to register any number of active modules in the communication device 7001 by using it.

【0083】つまり、通信装置7001は登録部(図示
せず)を備えており、この登録部は、ユーザの端末装置
から当該ユーザの秘密鍵で電子署名されたプログラムを
受信し、当該ユーザの電子証明書を認証局装置から受信
し、受信した電子証明書に含まれる当該ユーザの公開鍵
を用いて前記電子署名されたプログラムの検証を行い、
この検証が成功した場合には当該プログラムに対応する
アドレスのパターンと当該プログラムの情報とを前記転
送先テーブルに登録し、この検証が失敗した場合には当
該プログラムの情報の前記転送先テーブルへの登録は行
わないようにするものである。
That is, the communication device 7001 is provided with a registration unit (not shown), and this registration unit receives a program electronically signed by the private key of the user from the terminal device of the user, and the electronic unit of the user. Receive the certificate from the certificate authority device, verify the electronically signed program using the public key of the user included in the received electronic certificate,
If this verification is successful, the address pattern corresponding to the program and the information of the program are registered in the transfer destination table. If this verification fails, the information of the program is stored in the transfer destination table. Registration should not be performed.

【0084】なお、上で説明した通信装置へのアクティ
ブコードの登録の手順が有効に機能するためには、次の
2点が前提となる。第1の前提として、ユーザがどの通
信装置(ノード)にアクティブコードを登録すれば良い
かは事前にわかっている。あるいは、どの通信装置(ノ
ード)にアクティブコードを登録すればよいかがわかる
ためのディレクトリサービスが提供されている。第2の
前提として、通信装置(ノード)は、目的の認証局の公
開鍵を事前にオフラインで取得しているか、他の認証局
から取得するか、あるいは他の何らかの手段で取得でき
る。
In order for the procedure of registering the active code to the communication device described above to function effectively, the following two points are premised. As a first premise, it is known in advance to which communication device (node) the user should register the active code. Alternatively, a directory service is provided for recognizing which communication device (node) should register the active code. As a second premise, the communication device (node) can acquire the public key of the target certificate authority in advance off-line, from another certificate authority, or by some other means.

【0085】次に、矛盾の解消のための制御について説
明する。ある通信装置(ノード)において、n個のアク
ティブコードが登録されており、i番目(1≦i≦n)
とj番目(1≦j≦n)のアクティブコードが、それぞ
れ集合C(i)(C(i)⊆A)と集合C(j)(C
(j)⊆A)に属するパケットに対するものであると定
義されているとき、集合(c(i)∩c(j))が空集
合ではないようなiおよびjの組み合せ(但しi≠j)
が存在する場合があり得る。つまり、あるパケットがi
番目のアクティブコードにもj番目のアクティブコード
にも適用されるような定義が行われている場合である。
このような矛盾は、次の2通りのシナリオのいずれかに
よって解消することとする。
Next, the control for resolving the contradiction will be described. In a communication device (node), n active codes are registered, and the i-th (1 ≦ i ≦ n)
And the j-th (1 ≦ j ≦ n) active codes are set C (i) (C (i) ⊆A) and set C (j) (C), respectively.
(J) ⊆ A) is defined as a packet, a combination of i and j (where i ≠ j) such that the set (c (i) ∩c (j)) is not an empty set.
May exist. That is, if a packet is i
This is the case where the definition is applied so that it can be applied to both the jth active code and the jth active code.
Such a contradiction will be resolved by either of the following two scenarios.

【0086】第1の矛盾の解消のシナリオは、パケット
(s,d)に関して、 (s∈O(k)Λd∈O(l))Λ(k≠l) であるために、 (s,d)∈c(i)∩c(j) となる場合に関するものである。但し、O(k)および
O(l)は、それぞれユーザkおよびlによって所有さ
れるIPアドレスの集合である。つまり、あるパケット
に関して、送信元のユーザ用のアクティブコードと宛先
のユーザ用のアクティブコードとの両方が通信装置に登
録されており、そのような通信装置にこのパケット
(s,d)が到着した場合である。このような場合に
は、宛先のユーザのアクティブコードを優先的に適用す
ることが望ましいと考えられる。
The first contradiction resolution scenario for packet (s, d) is (sεO (k) ΛdεO (l)) Λ (k ≠ l) ) ∈c (i) ∩c (j). However, O (k) and O (l) are a set of IP addresses owned by users k and l, respectively. That is, regarding a certain packet, both the active code for the source user and the active code for the destination user are registered in the communication device, and this packet (s, d) arrives at such a communication device. This is the case. In such a case, it is considered desirable to preferentially apply the active code of the destination user.

【0087】つまり、転送先テーブルに登録されている
パターンに、送信元アドレスのみが指定されていて宛先
アドレスが何でもよいとされている第1のエントリー
と、宛先アドレスのみが指定されていて送信元アドレス
が何でもよいとされている第2のエントリーとが含まれ
ており、受信パケットがこれら第1のエントリーと第2
のエントリーとの両方にマッチしたときには、第1のエ
ントリーよりも第2のエントリーを優先させて、当該第
2のエントリーのパターンに対応するプログラムを起動
するようにする。
That is, in the pattern registered in the transfer destination table, the first entry in which only the source address is designated and the destination address may be any, and the source entry in which only the destination address is designated The second entry, which is supposed to have any address, is included in the received packet.
If both of the entries are matched, the second entry is prioritized over the first entry and the program corresponding to the pattern of the second entry is activated.

【0088】このように、送信元のユーザのアクティブ
コードよりも宛先のユーザのアクティブコードを優先さ
せることは、アクティブネットワークの機能を用いてD
DoS(分散型DoS,Distributed Denial of Servic
e )攻撃を防御するメカニズムを構築する場合に特に重
要となる。そのようにすることによって、宛先のユーザ
つまり被攻撃者となり得る者のアクティブコードが、攻
撃者となる可能性があるもののアクティブコードよりも
優先されるためである。
As described above, giving priority to the active code of the destination user over the active code of the user of the transmission source is performed by using the function of the active network.
DoS (Distributed Denial of Servic
e) Especially important when constructing a mechanism to defend against attacks. By doing so, the active code of the destination user, that is, the person who can be the attacked person, is prioritized over the active code that may become the attacker.

【0089】第2の矛盾の解消のシナリオは、あるパケ
ット(s,d)に関して適用されるべき2つ以上のアク
ティブコードが同一のユーザによって登録されている場
合に関するものである。このような場合には、該当する
アクティブコードのうちの最も古く登録されたものが、
他のものよりも優先的に適用されるようにすることが望
ましいと考えられる。こうすることにより、ユーザが新
しいアクティブコードを登録しようとする際には、新し
いアクティブコードを有効にするために事前に古いアク
ティブコードを削除することが保証されるからである。
The second contradiction resolution scenario relates to the case where two or more active codes to be applied to a packet (s, d) are registered by the same user. In such cases, the oldest registered active code is
It may be desirable to have priority applied over others. By doing so, when the user attempts to register a new active code, it is guaranteed that the old active code will be deleted in advance in order for the new active code to become effective.

【0090】次に、これまでに述べたようなアクティブ
ネットワークのノードとして機能する通信装置のインプ
リメンテーションの例について説明する。図13は、L
inux上のJava(登録商標)仮想マシン(JV
M)を用いてアクティブパケットの処理を行う通信装置
を実現した場合の概略図である。
Next, an example of the implementation of the communication device that functions as a node of the active network as described above will be described. FIG. 13 shows L
A Java (registered trademark) virtual machine (JV) on Linux
It is a schematic diagram at the time of realizing a communication apparatus which processes an active packet using M).

【0091】図13に示す例では、専用のIPスタック
を処理(process )の一部として構築している。これに
よって、図11に示したような転送先テーブルを実現
し、実行環境(アクティブネットワーク実行環境)から
この転送先テーブルにエントリーの追加や削除を行える
ようにしている。また、これに伴い、カーネル(kerne
l)内のIPスタックは不要となるため、カーネルにお
けるルーティングを不活性化している。そして、到着パ
ケットのコピーがデータリンク部分から作成され、その
パケットがライブラリlibpcapを通してJava
(登録商標)仮想マシンで補足できるようにしている。
In the example shown in FIG. 13, a dedicated IP stack is constructed as a part of the process. As a result, the transfer destination table as shown in FIG. 11 is realized, and entries can be added to or deleted from the transfer destination table from the execution environment (active network execution environment). Along with this, the kernel (kerne
Since the IP stack in l) is unnecessary, routing in the kernel is deactivated. Then, a copy of the arriving packet is created from the data link portion, and the packet is Java-transmitted through the library libpcap.
(Registered trademark) A virtual machine can be used for supplementation.

【0092】処理の一部として構築した専用のIPスタ
ックは、アクティブパケット、つまり転送先テーブル上
での所定の定義にマッチするIPアドレス(宛先IPア
ドレス、送信元IPアドレス、あるいはそれらの組み合
せ)を有するパケットは、実行環境上で起動されるアク
ティブコードに対して渡される。一方、アクティブパケ
ット以外の通常のパケットは、カーネルにおけるIPス
タックと同様の方法で隣接する通信装置等へ向けた転送
が行われる。アクティブパケットであれ通常パケットで
あれ、この通信装置から送出されるすべてのパケット
は、ライブラリlibnetを通して送出される。こう
することにより、各々処理されたパケットのヘッダに記
録された送信元アドレスは、元々の送信元アドレスのま
まの状態で、ネットワークに送出されることとなる。
The dedicated IP stack constructed as a part of the process creates an active packet, that is, an IP address (destination IP address, source IP address, or a combination thereof) that matches a predetermined definition on the transfer destination table. The packet that it has is passed to the active code that is activated on the execution environment. On the other hand, normal packets other than active packets are transferred to the adjacent communication device or the like by the same method as the IP stack in the kernel. All packets, whether active packets or normal packets, sent from this communication device are sent through the library libnet. By doing so, the source address recorded in the header of each processed packet is sent to the network in the state of the original source address.

【0093】また、標準のJava(登録商標)のAP
I(アプリケーションプログラムインタフェース)であ
る「java.security 」を用いることによってセキュリテ
ィモデルをインプリメンテーションすることが可能であ
る。この標準APIは、セキュリティモデルを構築する
ために必要な機能のほとんどを提供している。また、証
明書のための形式としては「X.509」証明書形式を
用いることが可能であり、アクティブコードの所有者の
IPアドレスを「X.509」の識別名(DN, distin
guished name)の一部に含めることにより、本実施形態
のセキュリティモデルを実現することができる。
In addition, a standard Java (registered trademark) AP
It is possible to implement a security model by using "java.security" which is I (application program interface). This standard API provides most of the functionality needed to build a security model. As the format for the certificate, the “X.509” certificate format can be used, and the IP address of the owner of the active code is the identification name (DN, distin) of the “X.509”.
The security model of the present embodiment can be realized by including it as a part of the guished name).

【0094】なお、言うまでもなく、上記インプリメン
テーションではコンピュータシステムを用いることによ
ってアクティブネットワーク実行環境を備えた通信装置
を構築している。そして、上述した一連の処理、すなわ
ち到着パケットの複製の作成とその捕捉や、転送先テー
ブルを参照しながらのアクティブパケットおよび通常パ
ケットの転送の処理や、アクティブネットワーク実行環
境上でのアクティブコードの起動とその処理の実行や、
処理されたパケットのネットワークへの送出などの各処
理の過程は、プログラムの形式でコンピュータ読み取り
可能な記録媒体に記憶されており、このプログラムをコ
ンピュータが読み出して実行することによって、上記処
理が行われる。ここでコンピュータ読み取り可能な記録
媒体とは、磁気ディスク、光磁気ディスク、CD−RO
M、DVD−ROM、半導体メモリ等をいう。また、こ
のコンピュータプログラムを通信回線によってコンピュ
ータに配信し、この配信を受けたコンピュータが当該プ
ログラムを実行するようにしても良い。
Needless to say, in the above implementation, a communication system having an active network execution environment is constructed by using a computer system. Then, the series of processes described above, that is, the creation and capture of a copy of the arriving packet, the process of transferring the active packet and the normal packet while referring to the transfer destination table, and the activation of the active code on the active network execution environment And the execution of that process,
The process of each process such as sending the processed packet to the network is stored in a computer readable recording medium in the form of a program, and the above process is performed by the computer reading and executing the program. . Here, the computer-readable recording medium means a magnetic disk, a magneto-optical disk, a CD-RO.
M, DVD-ROM, semiconductor memory, etc. Further, the computer program may be distributed to the computer via a communication line, and the computer that receives the distribution may execute the program.

【0095】以上、図面を参照してこの発明の実施形態
を詳述してきたが、具体的な構成はこれらの実施形態に
限られるものではなく、この発明の要旨を逸脱しない範
囲の設計等も含まれる。例えば、上記実施形態ではイン
ターネットプロトコルの使用を前提として通信アドレス
を4バイトのIPアドレスとして書き表したが、より多
いバイト数のアドレスを用いる次世代のIPや、まった
く異なる他のプロトコルを用いる通信ネットワークにも
本発明を適用することができる。
Although the embodiments of the present invention have been described in detail above with reference to the drawings, the specific configuration is not limited to these embodiments, and the design etc. within the scope not departing from the gist of the present invention are also possible. included. For example, in the above embodiment, the communication address is written as a 4-byte IP address on the assumption that the Internet protocol is used. The present invention can also be applied.

【0096】[0096]

【発明の効果】以上説明したように、この発明によれ
ば、シールド通信装置が、到着する通信パケットを分析
する分析処理を行い、この分析処理の結果に応じて当該
通信パケットが前記防御対象コンピュータに対する攻撃
の通信パケットである可能性に応じて当該通信パケット
の優先度を決定してこの優先度に応じて当該通信パケッ
トを転送先に転送するようにしている。このため、従来
技術において攻撃のパケットであるか否かを二値的に判
断して処理していたのに比べると、攻撃下において正常
な通信パケットが届きにくくなるというダメージを最小
化することができる。また、攻撃のパケットであるかど
うかを確定できない段階においても、疑わしい通信パケ
ットが占めるの帯域を段階的に絞っていくことができ
る。
As described above, according to the present invention, the shield communication device performs the analysis process for analyzing the incoming communication packet, and the communication packet is transferred to the protection target computer according to the result of the analysis process. The priority of the communication packet is determined according to the possibility that it is an attack communication packet, and the communication packet is transferred to the transfer destination according to the priority. Therefore, in comparison with the case where the conventional technique binaryly determines whether or not the packet is an attack packet and processes, it is possible to minimize the damage that a normal communication packet becomes difficult to reach under an attack. it can. Further, even when it cannot be determined whether the packet is an attack packet, the band occupied by the suspicious communication packet can be gradually narrowed down.

【0097】また、この発明によれば、境界通信装置か
ら最も遠い位置にあるシールド通信装置との間の接続の
段数として2以上を許容しているため、つまりシールド
通信装置の段数(深さ)を2以上にできるため、防御の
処理の負荷を分散させることができるとともに、より攻
撃元に近い位置で防御を行うため、下流側の通信線の帯
域を浪費せずに有効に使うことができる。
Further, according to the present invention, since the number of stages of connection with the shield communication device farthest from the boundary communication device is allowed to be 2 or more, that is, the number of stages (depth) of the shield communication device. Since it can be set to 2 or more, the load of the defense processing can be dispersed, and since the defense is performed at a position closer to the attack source, the bandwidth of the communication line on the downstream side can be effectively used without wasting it. .

【0098】また、この発明によれば、攻撃が検出され
たときに、シールド通信装置からより上流へプローブの
機能を段階的に移動させていくため、より攻撃元に近い
場所での防御が可能となる。これにより、下流側の通信
線の帯域を有効に使うことができるとともに、攻撃元に
関する証拠情報を収集する処理を行うことができる。
Further, according to the present invention, when an attack is detected, the function of the probe is gradually moved from the shield communication device to the upstream, so that the defense at a place closer to the attack source is possible. Becomes As a result, the bandwidth of the communication line on the downstream side can be effectively used, and the process of collecting evidence information about the attack source can be performed.

【0099】また、この発明によれば、プローブの処理
として、宛先アドレスが防御対象コンピュータのアドレ
スである通信パケットを捕捉し、当該通信パケットの送
信元アドレスが予め得られた攻撃元のアドレスと同一で
ある場合には当該通信パケットが攻撃のパケットである
と判定するようにしているため、実施形態の説明に記載
したA型のDDoS攻撃を防御することができる。
According to the present invention, as the processing of the probe, the communication packet whose destination address is the address of the defense target computer is captured, and the transmission source address of the communication packet is the same as the previously obtained attack source address. If it is, the communication packet is determined to be an attack packet, so that the A-type DDoS attack described in the description of the embodiment can be protected.

【0100】また、この発明によれば、プローブの処理
として、宛先アドレスあるいは送信元アドレスの少なく
ともいずれか一方が前記防御対象コンピュータのアドレ
スである通信パケットを捕捉し、当該通信パケットの送
信元アドレスが防御対象コンピュータのアドレスであっ
て且つ当該通信パケットの宛先アドレスが前記攻撃元ア
ドレスのブロードキャストアドレスである場合にもこの
通信パケットが攻撃のパケットであると判定するため、
実施形態の説明に記載したB型のDDoS攻撃を防御す
ることができる。
Further, according to the present invention, as the processing of the probe, the communication packet in which at least one of the destination address and the source address is the address of the defense target computer is captured, and the source address of the communication packet is Since it is determined that this communication packet is an attack packet even when the address of the defense target computer and the destination address of the communication packet are the broadcast addresses of the attack source address,
The type B DDoS attack described in the description of the embodiment can be protected.

【0101】また、この発明によれば、動的検査を導入
したことにより、従来技術では検知できなかった攻撃も
検知して防御できるようになった。
Further, according to the present invention, by introducing the dynamic inspection, it becomes possible to detect and defend against an attack which cannot be detected by the conventional technique.

【図面の簡単な説明】[Brief description of drawings]

【図1】 この発明の一実施形態が前提とするネットワ
ークの構成である。
FIG. 1 is a network configuration presumed by an embodiment of the present invention.

【図2】 同実施形態による通信装置の内部の構成を示
すブロック図である。
FIG. 2 is a block diagram showing an internal configuration of a communication device according to the same embodiment.

【図3】 同実施形態による防御のしくみを示す論理的
概略図である。
FIG. 3 is a logical schematic diagram showing a defense mechanism according to the embodiment.

【図4】 同実施形態のシールドモジュールによる通信
パケットのクラス分けの処理の概要を示す概略図であ
る。
FIG. 4 is a schematic diagram showing an outline of a process of classifying communication packets by the shield module of the embodiment.

【図5】 同実施形態によるシールドモジュールが動的
検査を行う場合に用いる送信元IPアドレスの分布状況
を示すグラフであり、(a)は正常時の分布、(b)は
攻撃を受けているときの分布の一例を示す。
FIG. 5 is a graph showing a distribution state of source IP addresses used when the shield module according to the embodiment performs a dynamic inspection, (a) being a normal distribution, and (b) being attacked. An example of the distribution at time is shown.

【図6】 A型のDDoS攻撃を示す概略図である。FIG. 6 is a schematic diagram showing an A-type DDoS attack.

【図7】 B型のDDoS攻撃を示す概略図である。FIG. 7 is a schematic diagram showing a B-type DDoS attack.

【図8】 本発明の一実施形態により、A型のDDoS
攻撃に対応するためのプローブのアルゴリズムを記述し
た擬似プログラムコードである。
FIG. 8 illustrates an A-type DDoS according to an embodiment of the present invention.
This is a pseudo program code that describes a probe algorithm for responding to an attack.

【図9】 同実施形態により、B型のDDoS攻撃に対
応するためのプローブのアルゴリズムを記述した擬似プ
ログラムコードである。
FIG. 9 is a pseudo program code describing a probe algorithm for dealing with a B-type DDoS attack according to the embodiment.

【図10】 同実施形態による通信装置内部の構成を示
すブロック図である。
FIG. 10 is a block diagram showing an internal configuration of a communication device according to the same embodiment.

【図11】 同実施形態による転送先テーブル記憶部に
記憶されている転送先テーブルの一例を示す概略図であ
る。
FIG. 11 is a schematic diagram showing an example of a transfer destination table stored in a transfer destination table storage unit according to the same embodiment.

【図12】 同実施形態によるセキュリティモデルとそ
のモデルにおける処理の手順を示す概略図である。
FIG. 12 is a schematic diagram showing a security model according to the same embodiment and a procedure of processing in the model.

【図13】 同実施形態の通信装置をLinux上のJ
ava(登録商標)仮想マシン(JVM)を用いてアク
ティブパケットの処理を行うように実現した場合の概略
図である。
FIG. 13 shows the communication device of the same embodiment as J on Linux.
It is a schematic diagram at the time of realizing so that it may process an active packet using an ava (registered trademark) virtual machine (JVM).

【符号の説明】[Explanation of symbols]

7000 ユーザのコンピュータ 7001 通信装置 7010 アクティブネットワーク実行環境 7011 コード実行部 7012 コード記憶部 7021 転送処理部 7022 転送先テーブル記憶部 7023a、7023b、・・・・・・ インタフェー
ス部 7024a、7024b、・・・・・・ 通信線 7051 ユーザ端末装置 7061 認証局装置 7510 アクティブネットワーク実行環境 7511 コード実行部 7512 コード記憶部 7521 転送処理部 7531 到着パケット捕捉部 7532 クラスベースの待ち行列処理部 7533 パケット送出部 7540 プログラム転送処理部
7000 User's computer 7001 Communication device 7010 Active network execution environment 7011 Code execution unit 7012 Code storage unit 7021 Transfer processing unit 7022 Transfer destination table storage units 7023a, 7023b, ... Interface units 7024a, 7024b ,. Communication line 7051 User terminal device 7061 Certificate authority device 7510 Active network execution environment 7511 Code execution unit 7512 Code storage unit 7521 Transfer processing unit 7531 Arrival packet capturing unit 7532 Class-based queue processing unit 7533 Packet sending unit 7540 Program transfer processing Department

Claims (16)

【特許請求の範囲】[Claims] 【請求項1】 複数の通信装置によって構成されるネッ
トワークに接続された防御対象コンピュータをサービス
不能攻撃から防御するための防御方法であって、 前記防御対象コンピュータに最も近い通信装置であると
ころの境界通信装置からの指令情報に基づいて、当該境
界通信装置から所定の段数分の範囲内に接続されている
シールド通信装置が、当該シールド通信装置に到着する
通信パケットを分析する分析処理を行い、この分析処理
の結果に応じて当該通信パケットが前記防御対象コンピ
ュータに対する攻撃の通信パケットである可能性に応じ
て当該通信パケットの優先度を決定してこの優先度に応
じて当該通信パケットを転送先に転送するとともに、前
記分析処理の結果当該通信パケットが確実に前記防御対
象コンピュータに対する攻撃の通信パケットであること
が判明した場合には当該通信パケットを破棄するシール
ド過程を有することを特徴とするサービス不能攻撃の防
御方法。
1. A defense method for protecting a defense target computer connected to a network composed of a plurality of communication devices from a denial of service attack, which is a boundary of communication devices closest to the protection target computer. Based on the command information from the communication device, the shield communication device connected within the range of a predetermined number of stages from the boundary communication device performs an analysis process of analyzing communication packets arriving at the shield communication device. According to the result of the analysis process, the priority of the communication packet is determined according to the possibility that the communication packet is an attack communication packet for the defense target computer, and the communication packet is transferred to the transfer destination according to the priority. As a result of the analysis processing, the communication packet is reliably transmitted to the protection target computer while being transferred. Methods of preventing denial of service attacks, comprising discarding shielding process of the communication packet if it is a communication packet hammer was found.
【請求項2】 請求項1に記載のサービス不能攻撃の防
御方法であって、 前記境界通信装置から最も遠い位置にある前記シールド
通信装置との間の接続の段数として2以上を許容すると
ともに、当該段数を動的に変更できるようにしたことを
特徴とするサービス不能攻撃の防御方法。
2. The denial-of-service attack protection method according to claim 1, wherein the number of stages of connection with the shield communication device located farthest from the boundary communication device is 2 or more, and A denial-of-service attack defense method characterized in that the number of stages can be dynamically changed.
【請求項3】 請求項1に記載のサービス不能攻撃の防
御方法であって、 前記シールド過程において前記通信パケットが確実に前
記防御対象コンピュータに対する攻撃の通信パケットで
あることが判明した場合に、前記シールド通信装置がよ
り攻撃元に近い側の隣接する通信装置に対してプローブ
プログラムコードを送信するプローブプログラムコード
送信過程と、 前記プローブプログラムコードを受信したプローブ通信
装置が、当該プローブプログラムコードを実行すること
によって、当該プローブ通信装置に到着する通信パケッ
トを分析し、その結果当該通信パケットが前記防御対象
コンピュータに対する攻撃の通信パケットである場合に
は当該通信パケットを破棄するとともにさらに攻撃元に
近い側の隣接する通信装置に対して前記プローブプログ
ラムコードを送信し、分析の結果一定時間攻撃のパケッ
トが検知されない場合には前記プローブプログラムコー
ドの処理を終了させるプローブ過程とをさらに有するこ
とを特徴とするサービス不能攻撃の防御方法。
3. The denial-of-service attack protection method according to claim 1, wherein in the shield process, it is determined that the communication packet is an attack communication packet for the defense target computer. A shield communication device transmits a probe program code to an adjacent communication device closer to the attack source, and a probe communication device that receives the probe program code executes the probe program code. By analyzing the communication packet arriving at the probe communication device, if the communication packet is a communication packet of an attack on the defense target computer as a result, the communication packet is discarded and the side closer to the attack source For the adjacent communication device, Over Bed program sends a code, and methods of preventing denial of service attacks, wherein if the packet results certain time attack analysis is not detected, further comprising a probe process to terminate the processing of the probe program code.
【請求項4】 請求項3に記載のサービス不能攻撃の防
御方法であって、 前記プローブ過程においては、宛先アドレスが前記防御
対象コンピュータのアドレスである通信パケットを捕捉
し、当該通信パケットの送信元アドレスが予め得られた
攻撃元のアドレスと同一である場合には当該通信パケッ
トが攻撃のパケットであると判定し、その他の場合には
当該通信パケットは攻撃のパケットではないと判定する
ことを特徴とするサービス不能攻撃の防御方法。
4. The denial of service attack protection method according to claim 3, wherein in the probing process, a communication packet whose destination address is the address of the defense target computer is captured, and the transmission source of the communication packet is captured. If the address is the same as the previously obtained attack source address, it is determined that the communication packet is an attack packet, and in other cases, the communication packet is not an attack packet. How to defend against denial of service attacks.
【請求項5】 請求項3に記載のサービス不能攻撃の防
御方法であって、 前記プローブ過程においては、宛先アドレスあるいは送
信元アドレスの少なくともいずれか一方が前記防御対象
コンピュータのアドレスである通信パケットを捕捉し、 a)当該通信パケットの送信元アドレスが予め得られた
攻撃元のアドレスと同一である場合、又は、 b)当該通信パケットの送信元アドレスが前記防御対象
コンピュータのアドレスであって且つ当該通信パケット
の宛先アドレスが前記攻撃元アドレスのブロードキャス
トアドレスである場合、 には、当該通信パケットが攻撃のパケットであると判定
し、 上記a)あるいは上記b)のいずれにも該当しない場合
には当該通信パケットは攻撃のパケットではないと判定
することを特徴とするサービス不能攻撃の防御方法。
5. The denial of service attack protection method according to claim 3, wherein in the probe process, a communication packet in which at least one of a destination address and a source address is an address of the protection target computer is transmitted. A) if the source address of the communication packet is the same as the previously obtained attack source address, or b) if the source address of the communication packet is the address of the defense target computer and When the destination address of the communication packet is the broadcast address of the attack source address, it is determined that the communication packet is an attack packet, and if neither of the above a) or b) is applicable, Denial of service characterized by determining that the communication packet is not an attack packet And methods of preventing attack.
【請求項6】 請求項1に記載のサービス不能攻撃の防
御方法であって、 前記シールド過程内の前記分析処理においては、予め正
常時に得ておいたパラメータの値を含んだログ情報を用
いて、検査時のパラメータの値と前記ログ情報とを比較
することによる動的検査の処理を行うことを特徴とする
サービス不能攻撃の防止方法。
6. The method of protecting against a denial of service attack according to claim 1, wherein in the analysis processing in the shield process, log information including a parameter value obtained in advance in a normal state is used. A method of preventing a denial of service attack, which is characterized by performing a dynamic inspection process by comparing a parameter value at the time of inspection with the log information.
【請求項7】 防御対象コンピュータをサービス不能攻
撃から防御するための防御方法の処理を実行するシール
ド通信装置であって、 前記防御対象コンピュータに最も近い通信装置であると
ころの境界通信装置からの指令情報に基づいて、当該シ
ールド通信装置に到着する通信パケットを分析する分析
処理を行い、この分析処理の結果に応じて当該通信パケ
ットが前記防御対象コンピュータに対する攻撃の通信パ
ケットである可能性に応じて当該通信パケットの優先度
を決定してこの優先度に応じて当該通信パケットを転送
先に転送するとともに、前記分析処理の結果当該通信パ
ケットが確実に前記防御対象コンピュータに対する攻撃
の通信パケットであることが判明した場合には当該通信
パケットを破棄する処理を実行することを特徴とするシ
ールド通信装置。
7. A shield communication device for executing processing of a protection method for protecting a defense target computer from a denial of service attack, and a command from a boundary communication device which is a communication device closest to the protection target computer. Based on the information, an analysis process for analyzing the communication packet arriving at the shielded communication device is performed, and according to the result of this analysis process, the communication packet is determined to be a communication packet of an attack on the defense target computer. The priority of the communication packet is determined, the communication packet is transferred to the transfer destination according to the priority, and the result of the analysis processing is that the communication packet is definitely a communication packet of an attack on the defense target computer. If it is found, the process of discarding the communication packet is executed. Shield communication device.
【請求項8】 請求項7に記載のシールド通信装置であ
って、 前記分析処理においては、予め正常時に得ておいたパラ
メータの値を含んだログ情報を用いて、検査時のパラメ
ータの値と前記ログ情報とを比較することによる動的検
査の処理を実行することを特徴とするシールド通信装
置。
8. The shielded communication device according to claim 7, wherein in the analysis processing, log information including a parameter value obtained in advance in a normal state is used to detect a parameter value at the time of inspection. A shielded communication device, which executes a dynamic inspection process by comparing with the log information.
【請求項9】 防御対象コンピュータをサービス不能攻
撃から防御するための防御方法の処理を実行するプロー
ブ通信装置であって、 シールド通信装置によって防御対象コンピュータに対す
る攻撃の通信パケットが検出されたとき、当該シールド
通信装置からプローブプログラムコードを受信し、当該
プローブプログラムコードを実行することによって、 当該プローブ通信装置に到着する通信パケットを分析
し、その結果当該通信パケットが前記防御対象コンピュ
ータに対する攻撃の通信パケットである場合には当該通
信パケットを破棄するとともにさらに攻撃元に近い側の
隣接する通信装置に対して前記プローブプログラムコー
ドを送信し、分析の結果一定時間攻撃のパケットが検知
されない場合には前記プローブプログラムコードの処理
を終了させるプローブ過程の処理を実行することを特徴
とするプローブ通信装置。
9. A probe communication device for executing processing of a defense method for protecting a defense target computer from a denial of service attack, wherein when the shield communication device detects a communication packet of an attack on the defense target computer, By receiving the probe program code from the shielded communication device and executing the probe program code, the communication packet that arrives at the probe communication device is analyzed, and as a result, the communication packet is an attack communication packet for the defense target computer. In some cases, the communication packet is discarded, and the probe program code is transmitted to the adjacent communication device on the side closer to the attack source. When the analysis result indicates that no attack packet is detected for a certain period of time, the probe program is used. Code processing Probe communication device and executes the processing of the probe process to terminate.
【請求項10】 請求項9に記載のプローブ通信装置で
あって、 前記プローブ過程の処理においては、宛先アドレスが前
記防御対象コンピュータのアドレスである通信パケット
を捕捉し、当該通信パケットの送信元アドレスが予め得
られた攻撃元のアドレスと同一である場合には当該通信
パケットが攻撃のパケットであると判定し、その他の場
合には当該通信パケットは攻撃のパケットではないと判
定することを特徴とするプローブ通信装置。
10. The probe communication device according to claim 9, wherein in the processing of the probe process, a communication packet whose destination address is the address of the defense target computer is captured, and a source address of the communication packet is captured. Is determined to be an attack packet if it is the same as the attack source address obtained in advance, and in other cases it is determined that the communication packet is not an attack packet. Probe communication device.
【請求項11】 請求項9に記載のプローブ通信装置で
あって、 前記プローブ過程の処理においては、宛先アドレスある
いは送信元アドレスの少なくともいずれか一方が前記防
御対象コンピュータのアドレスである通信パケットを捕
捉し、 a)当該通信パケットの送信元アドレスが予め得られた
攻撃元のアドレスと同一である場合、又は、 b)当該通信パケットの送信元アドレスが前記防御対象
コンピュータのアドレスであって且つ当該通信パケット
の宛先アドレスが前記攻撃元アドレスのブロードキャス
トアドレスである場合、 には、当該通信パケットが攻撃のパケットであると判定
し、 上記a)あるいは上記b)のいずれにも該当しない場合
には当該通信パケットは攻撃のパケットではないと判定
することを特徴とするプローブ通信装置。
11. The probe communication device according to claim 9, wherein in the processing of the probe process, a communication packet in which at least one of a destination address and a source address is an address of the defense target computer is captured. A) if the source address of the communication packet is the same as the previously obtained attack source address, or b) if the source address of the communication packet is the address of the defense target computer and the communication When the destination address of the packet is a broadcast address of the attack source address, it is determined that the communication packet is an attack packet, and when the above neither a) nor b) is applicable, the communication is concerned. A probe communication device characterized by determining that the packet is not an attack packet .
【請求項12】 防御対象コンピュータをサービス不能
攻撃から防御するための防御方法の処理を実行する通信
装置であって、 ネットワーク側から到着する通信パケットを捕捉する到
着パケット捕捉部と、 前記通信パケットに対して作用を及ぼすコンピュータプ
ログラムの処理を行うアクティブネットワーク実行環境
部と、 複数のクラスにそれぞれ対応した待ち行列を備えるとと
もに、前記アクティブネットワーク実行環境部における
前記コンピュータプログラムの処理の結果として決定さ
れるクラスに応じて、前記通信パケットをそのクラスに
対応する前記待ち行列に入れる処理を行うクラスベース
の待ち行列処理部と、 前記クラスベースの待ち行列処理部が備える各々の待ち
行列から順次通信パケットを取り出してネットワーク側
に送出するパケット送出部と、 前記アクティブネットワーク実行環境部で実行するため
のコンピュータプログラムを他の通信装置との間で転送
する処理を行うプログラム転送処理部とを備えており、 前記アクティブネットワーク実行環境部は、コンピュー
タプログラムを記憶するコード記憶部と、このコード記
憶部に記憶されたコンピュータプログラムを読み出して
実行するコード実行部とを備えており、 前記コード記憶部には、 到着する通信パケットの分析を行い、この分析の結果、
前記通信パケットが攻撃の通信パケットである可能性に
応じて前記通信パケットのクラスを決定するとともに、
当該通信パケットが確実に攻撃の通信パケットである場
合には当該通信パケットを破棄する処理をコンピュータ
に実行させるシールドモジュールと、 到着する通信パケットを分析し、その結果当該通信パケ
ットが前記防御対象コンピュータに対する攻撃の通信パ
ケットである場合には当該通信パケットを破棄する処理
をコンピュータに実行させるプローブモジュールと、 前記プローブモジュールの処理をコンピュータが実行し
た結果、攻撃の通信パケットが見つかった場合に、自己
のプログラムコードの複製をさらに攻撃元に近い側の隣
接する通信装置に対して送信する処理をコンピュータに
実行させる自己複製送信モジュールと、 前記プローブモジュールの処理をコンピュータが実行し
た結果、攻撃の通信パケットが所定時間継続して見つか
らなかった場合に、自己のプログラムコードを消滅させ
る処理をコンピュータに実行させる自己消滅モジュール
とが少なくとも記憶されていることを特徴とする通信装
置。
12. A communication device for executing processing of a protection method for protecting a protection target computer from a denial of service attack, comprising an arrival packet capturing unit for capturing a communication packet arriving from a network side, and the communication packet A class that is provided as a result of the processing of the computer program in the active network execution environment unit, which includes an active network execution environment unit that processes the computer program that exerts an effect on the active network execution environment, and a queue that corresponds to each of a plurality of classes. In accordance with the above, a class-based queue processing unit that performs processing of putting the communication packet in the queue corresponding to the class, and sequentially extracting communication packets from each queue provided in the class-based queue processing unit Sent to the network side And a program transfer processing unit that transfers the computer program to be executed by the active network execution environment unit to another communication device. A code storage unit that stores a computer program; and a code execution unit that reads and executes the computer program stored in the code storage unit. The code storage unit analyzes incoming communication packets. , The result of this analysis,
While determining the class of the communication packet according to the possibility that the communication packet is an attack communication packet,
If the communication packet is definitely an attack communication packet, a shield module that causes the computer to perform processing to discard the communication packet and an incoming communication packet are analyzed, and as a result, the communication packet is transmitted to the defense target computer. If the packet is an attack communication packet, a probe module that causes the computer to execute a process of discarding the communication packet, and if the computer executes the process of the probe module, and if an attack communication packet is found, its own program A self-replicating transmission module that causes a computer to execute a process of transmitting a copy of the code to an adjacent communication device on the side closer to the attack source, and the computer executes the process of the probe module, and as a result, the communication packet of the attack is predetermined. Watch for hours continuing If no from a communication device and a self-destructing module for executing the processing to extinguish the self program code to the computer is characterized in that it is at least stored.
【請求項13】 複数の通信装置によって構成されるネ
ットワークに接続された防御対象コンピュータをサービ
ス不能攻撃から防御するための防御方法の処理をコンピ
ュータに実行させるコンピュータプログラムであって、 前記防御対象コンピュータに最も近い通信装置であると
ころの境界通信装置からの指令情報に基づいて、当該境
界通信装置から所定の段数分の範囲内に接続されている
シールド通信装置が、当該シールド通信装置に到着する
通信パケットを分析する分析処理を行い、この分析処理
の結果に応じて当該通信パケットが前記防御対象コンピ
ュータに対する攻撃の通信パケットである可能性に応じ
て当該通信パケットの優先度を決定してこの優先度に応
じて当該通信パケットを転送先に転送するとともに、前
記分析処理の結果当該通信パケットが確実に前記防御対
象コンピュータに対する攻撃の通信パケットであること
が判明した場合には当該通信パケットを破棄するシール
ド過程の処理をコンピュータに実行させるコンピュータ
プログラム。
13. A computer program for causing a computer to execute a process of a defense method for protecting a defense target computer connected to a network composed of a plurality of communication devices from a denial of service attack. Based on the command information from the border communication device, which is the closest communication device, the shield communication device connected within a predetermined number of stages from the border communication device, the communication packet that arrives at the shield communication device. The communication packet is analyzed, and the priority of the communication packet is determined according to the result of this analysis processing depending on the possibility that the communication packet is an attack communication packet for the defense target computer. Accordingly, the communication packet is transferred to the transfer destination, and the result of the analysis process Computer program in the case where that said communication packet is a communication packet attacks on reliably the protection target computer has been found is to execute the process of discarding the shield process the communication packets to the computer.
【請求項14】 複数の通信装置によって構成されるネ
ットワークに接続された防御対象コンピュータをサービ
ス不能攻撃から防御するための防御方法の処理をコンピ
ュータに実行させるコンピュータプログラムであって、 到着する通信パケットを分析し、その結果当該通信パケ
ットが前記防御対象コンピュータに対する攻撃の通信パ
ケットである場合には当該通信パケットを破棄するとと
もにさらに攻撃元に近い側の隣接する通信装置に対して
当該コンピュータプログラム自身を送信し、分析の結果
一定時間攻撃のパケットが検知されない場合には当該コ
ンピュータプログラムを終了させるプローブ過程の処理
をコンピュータに実行させるコンピュータプログラム。
14. A computer program for causing a computer to execute a process of a defense method for protecting a defense target computer connected to a network constituted by a plurality of communication devices from a denial of service attack, the incoming communication packet being received. If the communication packet is an attack communication packet for the defense target computer as a result of analysis, the communication packet is discarded and the computer program itself is transmitted to the adjacent communication device closer to the attack source. A computer program that causes a computer to execute the process of a probe process that terminates the computer program when an attack packet is not detected for a certain period of time as a result of analysis.
【請求項15】 請求項14に記載のコンピュータプロ
グラムであって、 前記プローブ過程においては、宛先アドレスが前記防御
対象コンピュータのアドレスである通信パケットを捕捉
し、当該通信パケットの送信元アドレスが予め得られた
攻撃元のアドレスと同一である場合には当該通信パケッ
トが攻撃のパケットであると判定し、その他の場合には
当該通信パケットは攻撃のパケットではないと判定する
処理をコンピュータに実行させるコンピュータプログラ
ム。
15. The computer program according to claim 14, wherein in the probing process, a communication packet whose destination address is the address of the defense target computer is captured, and a source address of the communication packet is obtained in advance. A computer that causes the computer to execute processing to determine that the communication packet is an attack packet if it is the same as the address of the attack source that has been determined, and otherwise determine that the communication packet is not an attack packet. program.
【請求項16】 請求項14に記載のコンピュータプロ
グラムであって、 前記プローブ過程においては、宛先アドレスあるいは送
信元アドレスの少なくともいずれか一方が前記防御対象
コンピュータのアドレスである通信パケットを捕捉し、 a)当該通信パケットの送信元アドレスが予め得られた
攻撃元のアドレスと同一である場合、又は、 b)当該通信パケットの送信元アドレスが前記防御対象
コンピュータのアドレスであって且つ当該通信パケット
の宛先アドレスが前記攻撃元アドレスのブロードキャス
トアドレスである場合、 には、当該通信パケットが攻撃のパケットであると判定
し、 上記a)あるいは上記b)のいずれにも該当しない場合
には当該通信パケットは攻撃のパケットではないと判定
する処理をコンピュータに実行させるコンピュータプロ
グラム。
16. The computer program according to claim 14, wherein in the probing process, a communication packet in which at least one of a destination address and a source address is an address of the defense target computer is captured. ) When the source address of the communication packet is the same as the previously obtained attack source address, or b) the source address of the communication packet is the address of the defense target computer and the destination of the communication packet If the address is the broadcast address of the attack source address, it is determined that the communication packet is an attack packet, and if neither of the above a) or b) is applicable, the communication packet is attacked. Computer to execute the processing to determine that the packet is not Computer program.
JP2002079728A 2002-03-20 2002-03-20 Method and apparatus for preventing denial of service attack and computer program therefor Expired - Fee Related JP3652661B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002079728A JP3652661B2 (en) 2002-03-20 2002-03-20 Method and apparatus for preventing denial of service attack and computer program therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002079728A JP3652661B2 (en) 2002-03-20 2002-03-20 Method and apparatus for preventing denial of service attack and computer program therefor

Publications (2)

Publication Number Publication Date
JP2003283571A true JP2003283571A (en) 2003-10-03
JP3652661B2 JP3652661B2 (en) 2005-05-25

Family

ID=29229055

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002079728A Expired - Fee Related JP3652661B2 (en) 2002-03-20 2002-03-20 Method and apparatus for preventing denial of service attack and computer program therefor

Country Status (1)

Country Link
JP (1) JP3652661B2 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005074215A1 (en) * 2004-02-02 2005-08-11 Cyber Solutions Inc. Unauthorized information detection system and unauthorized attack source search system
JP2005318578A (en) * 2004-04-29 2005-11-10 Microsoft Corp Alleviation of network amplification attack
JP2006054652A (en) * 2004-08-11 2006-02-23 Nippon Telegr & Teleph Corp <Ntt> Communication network traffic analyzer and system thereof, and analyzing method
JP2006119828A (en) * 2004-10-20 2006-05-11 Hitachi Ltd Packet data processing node device
JP2007512745A (en) * 2003-11-28 2007-05-17 フランス・テレコム How to detect and prevent unauthorized use of several network protocols without compromising their legal use
JP2009089224A (en) * 2007-10-02 2009-04-23 Kddi Corp Abnormality detection apparatus, program, and recording medium
JP2010537525A (en) * 2007-08-21 2010-12-02 エヌイーシー ヨーロッパ リミテッド Method for detecting attack on multimedia system and multimedia system having attack detection function
JP2011523822A (en) * 2008-05-29 2011-08-18 ハンドリームネット カンパニー リミテッド Access level security device and security system
US8479282B2 (en) 2004-10-12 2013-07-02 Nippon Telegraph And Telephone Corporation Denial-of-service attack defense system, denial-of-service attack defense method, and computer product
JP2014504111A (en) * 2010-12-29 2014-02-13 アマゾン テクノロジーズ インコーポレイテッド Technology to protect against denial of service denials near the source
JP2016163180A (en) * 2015-03-02 2016-09-05 日本電気株式会社 Communication system, communication method, and program
JP2019092039A (en) * 2017-11-14 2019-06-13 日本電信電話株式会社 Attack detection method, attack detection device, and communication system

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007512745A (en) * 2003-11-28 2007-05-17 フランス・テレコム How to detect and prevent unauthorized use of several network protocols without compromising their legal use
WO2005074215A1 (en) * 2004-02-02 2005-08-11 Cyber Solutions Inc. Unauthorized information detection system and unauthorized attack source search system
US8020205B2 (en) 2004-02-02 2011-09-13 Cyber Solutions Inc. Unauthorized information detection system and unauthorized attack source search system
JP2005318578A (en) * 2004-04-29 2005-11-10 Microsoft Corp Alleviation of network amplification attack
KR101312905B1 (en) * 2004-04-29 2013-09-30 마이크로소프트 코포레이션 Network amplification attack mitigation
US8387144B2 (en) 2004-04-29 2013-02-26 Microsoft Corporation Network amplification attack mitigation
US7966661B2 (en) 2004-04-29 2011-06-21 Microsoft Corporation Network amplification attack mitigation
JP2006054652A (en) * 2004-08-11 2006-02-23 Nippon Telegr & Teleph Corp <Ntt> Communication network traffic analyzer and system thereof, and analyzing method
US8479282B2 (en) 2004-10-12 2013-07-02 Nippon Telegraph And Telephone Corporation Denial-of-service attack defense system, denial-of-service attack defense method, and computer product
JP4704729B2 (en) * 2004-10-20 2011-06-22 株式会社日立製作所 Packet data processing node equipment
US7856559B2 (en) 2004-10-20 2010-12-21 Hitachi, Ltd. Packet communication node apparatus for authenticating extension module
JP2006119828A (en) * 2004-10-20 2006-05-11 Hitachi Ltd Packet data processing node device
US9032515B2 (en) 2007-08-21 2015-05-12 Nec Europe Ltd. Method for detecting attacks to multimedia systems and multimedia system with attack detection functionality
JP2010537525A (en) * 2007-08-21 2010-12-02 エヌイーシー ヨーロッパ リミテッド Method for detecting attack on multimedia system and multimedia system having attack detection function
JP2009089224A (en) * 2007-10-02 2009-04-23 Kddi Corp Abnormality detection apparatus, program, and recording medium
JP2011523822A (en) * 2008-05-29 2011-08-18 ハンドリームネット カンパニー リミテッド Access level security device and security system
US8966622B2 (en) 2010-12-29 2015-02-24 Amazon Technologies, Inc. Techniques for protecting against denial of service attacks near the source
JP2014504111A (en) * 2010-12-29 2014-02-13 アマゾン テクノロジーズ インコーポレイテッド Technology to protect against denial of service denials near the source
JP2016163180A (en) * 2015-03-02 2016-09-05 日本電気株式会社 Communication system, communication method, and program
US10313238B2 (en) 2015-03-02 2019-06-04 Nec Corporation Communication system, communication method, and non-transitiory computer readable medium storing program
JP2019092039A (en) * 2017-11-14 2019-06-13 日本電信電話株式会社 Attack detection method, attack detection device, and communication system

Also Published As

Publication number Publication date
JP3652661B2 (en) 2005-05-25

Similar Documents

Publication Publication Date Title
US7797749B2 (en) Defending against worm or virus attacks on networks
Yu et al. Discriminating DDoS flows from flash crowds using information distance
US20080098476A1 (en) Method and Apparatus for Defending Against Zero-Day Worm-Based Attacks
JP2008527471A (en) Network intrusion prevention
Munshi et al. Ddos attack on IoT devices
US20070166051A1 (en) Repeater, repeating method, repeating program, and network attack defending system
Manna et al. Review of syn-flooding attack detection mechanism
JP3652661B2 (en) Method and apparatus for preventing denial of service attack and computer program therefor
Qin et al. Worm detection using local networks
Xiao et al. A novel approach to detecting DDoS attacks at an early stage
JP3609382B2 (en) Distributed denial of service attack prevention method, gate device, communication device, and program
JP3699941B2 (en) Distributed denial of service attack prevention method, gate device, communication device, distributed denial of service attack prevention program, and recording medium
US8095981B2 (en) Worm detection by trending fan out
Irum et al. DDoS detection and prevention in internet of things
Ogunleye et al. Securing and monitoring of Bandwidth usage in multi-agents denial of service environment
Prasad et al. IP traceback for flooding attacks on Internet threat monitors (ITM) using Honeypots
JP3609381B2 (en) Distributed denial of service attack prevention method, gate device, communication device, and program
Pao et al. Netflow based intrusion detection system
Bojjagani et al. Early DDoS Detection and Prevention with Traced-Back Blocking in SDN Environment.
Trabelsi et al. Spoofed ARP packets detection in switched LAN networks
Amran et al. Metrics for network forensics conviction evidence
Prabhu et al. Network intrusion detection system
Stojanović et al. Intrusion Detection Against Denial Of Service Attacks In Manet Environment
Tang et al. Honids: Enhancing honeypot system with intrusion detection models
Gray et al. Rapid detection of worms using ICMP-T3 analysis

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040902

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A132

Effective date: 20041005

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041203

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050223

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

Free format text: PAYMENT UNTIL: 20080304

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090304

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090304

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100304

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110304

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110304

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120304

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130304

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees