JP3699941B2 - 分散型サービス不能攻撃防止方法及びゲート装置、通信装置、分散型サービス不能攻撃防止プログラム及び記録媒体 - Google Patents
分散型サービス不能攻撃防止方法及びゲート装置、通信装置、分散型サービス不能攻撃防止プログラム及び記録媒体 Download PDFInfo
- Publication number
- JP3699941B2 JP3699941B2 JP2002081904A JP2002081904A JP3699941B2 JP 3699941 B2 JP3699941 B2 JP 3699941B2 JP 2002081904 A JP2002081904 A JP 2002081904A JP 2002081904 A JP2002081904 A JP 2002081904A JP 3699941 B2 JP3699941 B2 JP 3699941B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- attack
- signature
- suspect
- traffic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Description
【発明の属する技術分野】
本発明は、ネットワークに接続された機器をネットワーク経由での攻撃から防御するための、分散型サービス不能攻撃の防止方法およびその装置ならびにそのコンピュータプログラムに関するものである。
【0002】
【従来の技術】
従来、TCP/IP(Transmission control protocol/internet protocol)などのネットワークプロトコルは、オープンとなっており、互いに信用されるグループで使われるように設計されている。このため、コンピュータのオペレーティングシステムでは、大量の通信トラフィック(データ等)を攻撃目標のサーバに送信することによって、ネットワークの伝送帯域やサーバの資源を消費して正当な利用者の利用を妨げようとするサービス不能攻撃(以下、「DoS(Denial of Service)攻撃」と記す)を防ぐことは考慮されていない。このようなDoS攻撃に対する防御の方法は増えてきているが、複数箇所から同時に連携してDoS攻撃を行う「DDoS(Distributed Denial of Service)攻撃」に対する防御の方法は未だ効果的な方法が開発されていない。
【0003】
このDDoS攻撃に対する防御の方法としては、シスコ社が提案したIngress Filter(RFC2267)とUUNET社のCenter Trackがある。前者は、DDoS攻撃の際に良く使われる送信元アドレスの詐称をチェックする機構であり、ローカルエリアネットワークがインターネットに接続されている境界であるルータにインストールされ、ローカルエリアネットワークからインターネットに向かって送信されるパケットの送信元アドレスの正統性をチェックし、ローカルエリアネットワークに割り当てられたアドレスと整合していない場合には、そのパケットをインターネットに送信せずに破棄する。一方後者は、インターネットのルータに診断機能を付加し、DDoS攻撃の送信元を追跡する技術である。
【0004】
また、DDoS攻撃を検出したノードより攻撃元に近い上流ノードで攻撃トラヒックを制限するための技術としては、本出願の発明者等が出願済みの分散型サービス不能攻撃の防止方法(特願2001−274016)、AT&T社論文(R.Mahajan, S.M.Bellovin, S.Floyd, J.Ioannidis, V.Paxson and S.Shenker: “Controlling high bandwidth aggregates in the network - extended version”(2001))、IDIP(Intruder Detection and Isolation Protocol)(D.Schnackenberg, K.Djahandari and D.Sterne: “Infrastructure for intrusion detection and response”, Proceedings of the DARPA Information Survivability Conference and Exposition(DISCEX), South Carolina(2000))などがある。AT&T社論文及びIDIPは、攻撃検出イベントを攻撃経路の上流ノードへ伝達し、上流ノードで伝送帯域制限を行うための方式やプロトコルである。本出願の発明者等が出願済みの分散型サービス不能攻撃の防止方法は、ルータにインストールされている移動型パケットフィルタリングプログラムが、自らのプログラムの複製を作成し、その複製を上流ルータ移動させ、各上流ルータへ移動してきた移動型パケットフィルタリングプログラムは、それぞれDDoS攻撃者のホストから攻撃目標のサーバに向けて送られているトラフィック全てを通過させないようする技術である。
【0005】
【発明が解決しようとする課題】
上述したIngress Filter(RFC2267)は、送信元アドレスを詐称してDDoS攻撃をすることを禁止するための技術であり、攻撃を受ける側が防御するために使う技術ではない。また、Center Trackは、攻撃を受けた被害者が攻撃者を特定することを助ける技術ではあるが、実際に攻撃を受けているときにその攻撃を防御することはできない。
【0006】
さらに、上述したIngress Fileter(RFC2267)は、正しいIP(internet protocol)アドレスが送信元になっているIPパケットによる攻撃にはまったく対処できない、攻撃元になっているローカルエリアネットワークとインターネットとの境界であるルータにIngress Filterが具備されていない場合はまったく攻撃の防御に役に立たないという問題点がある。また、上述したCenter Trackは、複数箇所に分散された分散型DoSの攻撃元になっているコンピュータやそのコンピュータが接続されているネットワークの管理者に連絡をしないと、攻撃そのものを止めることはできないため、実質的には攻撃を止めるまでに何時間、あるいは何日もの時間がかかってしまうという問題点がる。
【0007】
また、この出願の同発明者等が出願済みの分散型サービス不能攻撃の防止方法やAT&T論文では、IPパケットのデータフィールドやパケットの宛先情報など、決められた属性のみで攻撃パケットを特定するため、被攻撃者の要求する攻撃属性を反映できないという問題がある。さらに、これらの分散型サービス不能攻撃の防止方法、AT&T論文及びIDIPにおては、攻撃パケットと特定されたパケットを次ノードへ送出せず、全て破棄してまう。よって、標的となるサーバのダウンやルータ装置の過負荷等によりサービスが停止する一次被害を防止することはできるが、正規利用者からのパケットを攻撃パケットと識別する方法がないため、誤って正規利用者からの正規パケットも攻撃パケットとして破棄してしまう可能性があり、正規利用者の利用性が低下するといった二次被害を引き起こしてしまうという問題がある。
【0008】
本発明は、上記事情を考慮してなされたものであり、その目的は、正規利用者へのサービス性を低下させる被害を軽減しながら上流ノードでDDoS攻撃を防御できる、分散型サービス不能攻撃防止方法及び装置ならびにプログラムを提供することにある。
【0009】
【課題を解決するための手段】
この発明は、上記の課題を解決すべくなされたもので、請求項1に記載の発明は、複数の通信装置を網目状に接続してなるネットワークと、防御対象であるコンピュータおよびLANと、前記LANおよびネットワークの間に介挿されたゲート装置とを有するネットワークシステムにおいて、
前記ゲート装置は、
通信トラヒックが予め決められた攻撃容疑パケットの検出条件に合致するか否かをチェックし、
合致したトラヒックを検出した場合に、検出された前記攻撃容疑パケットを識別する容疑シグネチャを生成して上流の前記通信装置へ送信し、
以後、前記容疑シグネチャによって識別される攻撃容疑パケットの伝送帯域を制限する処理を行い、
前記通信装置は、
下流のゲート装置または通信装置から受信した前記容疑シグネチャを上流の通信装置へ送信すると共に、前記容疑シグネチャによって識別される攻撃容疑パケットの伝送帯域を制限する処理を行い、
前記ゲート装置及び前記通信装置は、
前記容疑シグネチャで識別される攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出し、前記攻撃トラヒックを構成する攻撃パケットを特定して、以後特定された前記攻撃パケットの伝送帯域をさらに制限する処理を行い
前記ゲート装置は、正規利用者の端末装置からの通信パケットの条件である予め決められた正規条件を上流の通信装置へ送信すると共に、前記正規条件と前記容疑シグネチャとを基に正規パケットを識別する正規シグネチャを生成し、
以後、前記正規シグネチャによって識別される正規パケットの伝送帯域制限を解除する処理を行い、
前記通信装置は、下流のゲート装置または通信装置から受信した前記正規条件を上流の通信装置へ送信すると共に、前記正規条件と前記容疑シグネチャとを基に正規パケットを識別する正規シグネチャを生成し、
以後、正規シグネチャによって識別される正規パケットの伝送帯域制限を解除する処理を行う
ことを特徴とする分散型サービス不能攻撃防止方法である。
【0013】
請求項2に記載の発明は、複数の通信装置を網目状に接続してなるネットワークと、防御対象であるコンピュータおよびLANとの間に介挿されたゲート装置において、
分散型サービス不能攻撃の攻撃容疑パケットの検出条件を記憶するパケット検出条件記憶部と、
入力される通信パケットをチェックし、前記パケット検出条件記憶部が記憶する攻撃容疑パケットの検出条件を基に攻撃容疑パケットの発生を検出するトラヒック監視手段と、
前記トラヒック監視手段によって検出された前記攻撃容疑パケットの伝送帯域を制限する帯域制御手段と、
前記攻撃容疑パケットの検出条件を基に前記攻撃容疑パケットを識別する容疑シグネチャを生成するシグネチャ生成手段と、
前記容疑シグネチャを上流の通信装置に対して送信するシグネチャ送信手段と、を備え、
前記トラヒック監視手段は、入力される前記攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出し、
前記帯域制御手段は、前記攻撃トラヒックを構成する攻撃パケットを特定し、特定された前記攻撃パケットの伝送帯域をさらに制限し
前記パケット検出条件記憶部は、さらに、通信パケットが正規利用者の端末装置からに通信パケットである条件を示す正規条件を記憶し、
前記シグネチャ生成手段は、前記容疑シグネチャと前記正規条件とを基に正規パケットを識別する正規シグネチャを生成し、
前記帯域制御手段は、前記正規シグネチャで識別される正規パケットの伝送帯域制限を解除し、
前記シグネチャ送信手段は、前記正規条件を前記上流の通信装置に対して送信する
ことを特徴とするゲート装置である。
【0016】
請求項3に記載の発明は、防御対象であるコンピュータおよびLANがゲート装置を介して接続されたネットワークを構成する通信装置において、
下流のゲート装置あるいは通信装置から容疑シグネチャを受信するシグネチャ
受信手段と、
前記容疑シグネチャで識別される攻撃容疑パケットの伝送帯域を制限する帯域制御手段と、
前記容疑シグネチャを上流の通信装置に送信するシグネチャ送信手段と、
入力される前記攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出するトラヒック監視手段と、
を備え、
前記帯域制御手段は、前記攻撃トラヒックを構成する攻撃パケットを特定し、特定された前記攻撃パケットの伝送帯域をさらに制限し
前記シグネチャ受信手段は、前記下流のゲート装置あるいは通信装置から正規条件を受信し、
前記帯域制御手段は、前記正規条件と前記容疑シグネチャとを基に正規パケットを識別する正規シグネチャを生成し、前記正規シグネチャで識別される正規パケットの伝送帯域制限を解除し、
前記シグネチャ送信手段は、前記正規条件を前記上流の通信装置に送信することを特徴とする通信装置である。
【0019】
請求項4に記載の発明は、複数の通信装置を網目状に接続してなるネットワークと、防御対象であるコンピュータおよびLANとの間に介挿されたゲート装置上で実行されるコンピュータプログラムであって、
入力される通信トラヒックが予め決められた攻撃容疑パケットの検出条件に合致するか否かをチェックするステップと、
合致したトラヒックを検出した場合に、検出された前記攻撃容疑パケットを識別する容疑シグネチャを生成するステップと、
予め決められた正規条件と前記容疑シグネチャを基に正規パケットを識別する正規シグネチャを生成するステップと、
前記容疑シグネチャで識別される攻撃容疑パケットの伝送帯域を制限するステップと、
前記正規シグネチャで識別される正規パケットの伝送帯域制限を解除するステップと、
前記容疑シグネチャと前記正規条件を上流の通信装置に送信するステップと、
前記攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出するステップと、
前記攻撃トラヒックを構成するパケットの送出元ネットワークを特定し、前記送出元ネットワークから送出される攻撃パケットの伝送帯域をさらに制限するステップと、
をコンピュータに実行させることを特徴とする分散型サービス不能攻撃防止プログラムである。
【0020】
請求項5に記載の発明は、 防御対象であるコンピュータおよびLANがゲート装置を介して接続されたネットワークを構成する通信装置上で実行されるコンピュータプログラムであって、
下流のゲート装置あるいは通信装置から容疑シグネチャと正規条件とを受信するステップと、
前記容疑シグネチャで識別される攻撃容疑パケットの伝送帯域を制限するステップと、
前記正規条件と前記容疑シグネチャとを基に正規パケットを識別する正規シグネチャを作成し、作成された前記正規シグネチャで識別される正規パケットの伝送帯域制限を解除するステップと、
前記容疑シグネチャと前記正規条件を上流の通信装置に送信するステップと、
前記攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出するステップと、
前記攻撃トラヒックを構成するパケットの送出元ネットワークを特定し、前記送出元ネットワークから送出される攻撃パケットの伝送帯域をさらに制限するステップと、
をコンピュータに実行させることを特徴とする分散型サービス不能攻撃防止プログラム。
【0021】
請求項6に記載の発明は、 複数の通信装置を網目状に接続してなるネットワークと、防御対象であるコンピュータおよびLANとの間に介挿されたゲート装置上で実行されるコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
入力される通信トラヒックが予め決められた攻撃容疑パケットの検出条件に合致するか否かをチェックするステップと、
合致したトラヒックを検出した場合に、検出された前記攻撃容疑パケットを識別する容疑シグネチャを生成するステップと、
予め決められた正規条件と前記容疑シグネチャを基に正規パケットを識別する正規シグネチャを生成するステップと、
前記容疑シグネチャで識別される攻撃容疑パケットの伝送帯域を制限するステップと、
前記正規シグネチャで識別される正規パケットの伝送帯域制限を解除するステップと、
前記容疑シグネチャと前記正規条件を上流の通信装置に送信するステップと、
前記攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出するステップと、
前記攻撃トラヒックを構成するパケットの送出元ネットワークを特定し、前記送出元ネットワークから送出される攻撃パケットの伝送帯域をさらに制限するステップと、
の各処理をコンピュータに実行させる分散型サービス不能攻撃防止プログラムを記録することを特徴とする記録媒体である。
【0022】
請求項7に記載の発明は、防御対象であるコンピュータおよびLANがゲート装置を介して接続されたネットワークを構成する通信装置上で実行されるコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
下流のゲート装置あるいは通信装置から容疑シグネチャと正規条件とを受信するステップと、
前記容疑シグネチャで識別される攻撃容疑パケットの伝送帯域を制限するステップと、
前記正規条件と前記容疑シグネチャとを基に正規パケットを識別する正規シグネチャを生成し、前記正規シグネチャで識別される正規パケットの伝送帯域制限を解除するステップと、
前記容疑シグネチャと前記正規条件を上流の通信装置に送信するステップと、
前記攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出するステップと、
前記攻撃トラヒックを構成するパケットの送出元ネットワークを特定し、前記送出元ネットワークから送出される攻撃パケットの伝送帯域をさらに制限するステップと、
の各処理をコンピュータに実行させる分散型サービス不能攻撃防止プログラムを記録することを特徴とする記録媒体である。
【0023】
【発明の実施の形態】
以下図面を参照し、この発明の一実施の形態について説明する。図1は、同実施の形態を適用したネットワークの構成図である。この図において、2000はサーバ、2001はこの発明の一実施形態によるゲート装置(ゲートウェイ)、2002〜2006はこの発明の一実施形態による通信装置(ルータ)、2007〜2010は端末装置である。DDoS攻撃の被攻撃者のサーバ2000が収容されているLAN(ローカルエリアネットワーク)は、ゲート装置2001によって外部のネットワークに接続されている。そして、ネットワークは通信装置2002、2003、2004、2005、2006を有している。DDoS攻撃者によって操作された端末装置2007、2008、2009が、攻撃パケットを被攻撃者のサーバ2000に向かって送信すると、攻撃パケットが被攻撃者収容LANに集中して混雑が発生することにより、ゲート装置2001の資源を消費してしまい、DDoS攻撃者とは無関係な正規利用者の端末2010からサーバ2000に接続できなくなるという現象が起こる。
【0024】
ゲート装置2001は、予めサーバ2000を保有する利用者が設定した攻撃容疑検出条件及び正規条件を記憶している。図2に攻撃容疑検出条件の設定の例を、図3に正規条件の設定の例を示す。さらに、ゲート装置2001は、防御対象のサーバ2000及びサーバ2000が収容されているLANの所有者によって予め設定された伝送帯域制限値を記憶している。
【0025】
図2における攻撃容疑検出条件は、検出属性、検出閾値及び検出間隔の組からなる3組のレコードで構成される。ここでは、番号はレコードを特定するために便宜上使用される。攻撃容疑検出条件は、受信パケットが攻撃パケットである可能性がある攻撃容疑パケットを検出するために使用され、3組のレコードの内のいずれかのレコードの条件にトラヒックが一致した場合、このトラヒックの通信パケットは攻撃容疑パケットであると認識される。検出属性は、IPパケットの第3/4層属性種別とそれら属性値の組を指定するが、第3層属性であるIPの「Destination IP Address(宛先IPアドレス)」という属性種別は必ず指定される。図2において、番号1のレコードの検出属性は、「Destination IP Address(宛先IPアドレス)」が「192.168.1.1/32」であり(dst=192.168.1.1/32)、IPの上位層(第4層)のプロトコル種別を示す「Protocol(プロトコル)」が「TCP」であり(Protocol=TCP)、かつ、第4層プロトコルがどのアプリケーションの情報かを示す「Destination Port(宛先ポート番号)」が「80」である(Port=80)という属性種別とそれら属性値の組で指定される。番号2のレコード検出属性は、「Destination IP Address(宛先IPアドレス)」が「192.168.1.2/32」であり(dst=192.168.1.2/32)、かつ、「Protocol(プロトコル)」が「UDP(User Datagram protocol)」である(Protocol=UDP)という属性種別とそれら属性値の組で指定される。また、番号3のレコード検出属性は、「Destination IP Address(宛先IPアドレス)」が「192.168.1.0/24」である属性種別とその属性値で指定される。検出閾値は、同じレコードで指定される検出属性を持つ受信パケットのトラヒックを攻撃容疑トラヒックとして検出するための最低の伝送帯域を、検出間隔は同じく最低の連続時間を示している。
【0026】
図3における正規条件は、IPパケットの第3/4層属性種別とそれら属性値の組からなる複数のレコードで構成される。ここでは、番号はレコードを特定するために便宜上使用される。正規条件は、受信パケットが正規利用者の端末装置からのパケットである、すなわち正規パケットである条件であり、たとえ、図2の攻撃容疑検出条件に合致したパケットであっても、正規条件に合致する場合は正規パケットと判断される。図3において、番号1のレコードの検出属性は、IPの「Source IP Address(送信元IPアドレス)」が「172.16.10.0/24」であることを指定し(src=172.16.10.0/24)、番号2のレコードの検出属性はIP上のサービス品質を示す「Type of Service(サービスタイプ)」が「01(ヘキサ)」であることを指定している(TOS=0x01)。この正規条件には、例えば、サーバ所有者の会社の支店や、関連会社など、防御対象のサーバ2000及びサーバ2000が収容されているLANの所有者が正規ユーザであると認識しているネットワークの送信元IPアドレスなどが設定される。
【0027】
また、ゲート装置2001及び通信装置2002〜2006は、攻撃容疑パケットのトラヒックを分析し、不正トラヒックを検出するための不正トラヒック検出条件を保有する。図4に不正トラヒック検出条件の設定の例を示す。ここでは、番号はレコードを特定するために便宜上使用される。不正トラヒック条件は、既知のDDoS攻撃の複数のトラヒックパターンから構成され、攻撃容疑パケットのトラヒックがいずれかのトラヒックパターンに合致した場合に、不正トラヒックであると認識される。図4の番号1の不正トラヒック条件は、「伝送帯域T1Kbps以上のパケットがS1秒以上連続送信されている」というトラヒックパターンを示している。また、番号2の不正トラヒック条件は、「伝送帯域T2Kbps以上、第3層プロトコルであるICMP(Internet Control Message Protocol)上のエコー応答(Echo Reply)メッセージのパケットがS2秒以上連続送信されている」というトラヒックパターンを示している。番号3の不正トラヒック条件は、「伝送帯域T3Kbps以上、データが長すぎるためパケットに含まれるデータは複数IPパケットに分割して送信していることを示すフラグメントパケットがS3秒以上連続送信されている」というトラヒックパターンを示している。
【0028】
ここで、ゲート装置2001及び通信装置2002〜2006が備える帯域制御モデルを説明する。図5は本実施の形態におけるゲート装置2001及び通信装置2002〜2006が備える帯域制御モデルを示す。帯域制御モデルは、入力パケットをクラス別に分類し、このクラスに従ってパケットの出力帯域制御を実現するためのモデルを示す。フィルタ2021は、入力されたパケットを正規クラス2022、容疑クラス2026、不正クラス2024の3つのクラスに分類する。なお、このフィルタ2021の分類アルゴリズムは後述する。正規クラス2022はデフォルトクラスであり、正規クラス2022に分類されたパケットは正規キュー2023につながれ、伝送帯域を制限せずに出力される。容疑クラス2026に分類されたパケットは、防御対象のサーバ2000及びサーバ2000が収容されているLAN毎に発生する容疑キュー2027につながれ、防御対象のサーバ2000及びサーバ2000が収容されているLANの所有者によって予め設定された伝送帯域制限値に出力伝送帯域が制限される。サーバ2000を収容しているゲート装置2001の容疑キューの伝送帯域制限値は防御対象のサーバ2000及びサーバ2000が収容されているLANの所有者によって予め設定された伝送帯域制限値を使用するが、上流の通信装置2002〜2006では、下流のルータから受信した伝送帯域制限値を使用する。なお、容疑シグネチャの生成については後述する。不正クラス2024に分類されたパケットは、不正キュー2025につながれ、サーバ所有者やネットワークのポリシーに関わらず、0または0に近い伝送帯域に制限される。
【0029】
続いて、ゲート装置2001及び通信装置2002〜2006が伝送帯域制限を実行するための、フィルタ2021の分類アルゴリズムについて説明する。ゲート装置2001及び通信装置2002〜2006は、入力される全ての通信パケットをこの分類アルゴリズムで分類する。
【0030】
図6はフィルタ2021における分類アルゴリズムを示す。まず、ステップS3001において、フィルタ2021は、入力されたパケットが正規シグネチャに合致するか判断する。正規シグネチャに合致した場合には、パケットは正規クラス2022に分類される(ステップS3002)。ここで、正規シグネチャに合致しなかった場合はステップS3003に進み、パケットが不正シグネチャと合致するか判断する。不正シグネチャに合致した場合、パケットは不正クラス2024に分類される(ステップS3004)。不正シグネチャに合致しなかった場合はステップS3005に進み、パケットが容疑シグネチャであるか判断し、容疑シグネチャに合致すれば容疑クラス2026へ分類され(ステップS3006)、容疑シグネチャに合致しない、すなわち全てのシグネチャに合致しない場合には正規クラス2022へ分類される(ステップS3007)。このようにして各クラスに分類されたパケットは、正規キューであれば伝送帯域制限せずに出力され、容疑キュー及び不正キューであればそれぞれの伝送帯域制限値に従って伝送帯域が制限されて出力される。なお、正規シグネチャ、容疑シグネチャ及び不正シグネチャの生成については後述する。
【0031】
次に、図7のゲート装置2001の攻撃容疑パケット検出時の動作を示すフローチャート、図8の通信装置2002、2003のシグネチャ受信時の動作を示すフローチャート及び図9のゲート装置2001及び通信装置2002〜2006の不正トラヒック検出時の動作を示すフローチャートを使用して、DDoS攻撃対策方式の処理手順を示す。
【0032】
図7のステップS3011において、ゲート装置2001は、攻撃容疑検出条件(図2)に従って、検出間隔で指定されているより長い時間連続して、検出閾値で指定されている以上の伝送帯域を使用している、検出属性に合致するトラヒックをチェックし、3組のレコードの内のいずれかのレコードに合致した場合、このトラヒックを攻撃容疑トラヒックとして検出する。すると、ステップS3012において、この検出された攻撃容疑トラヒックが満たしている攻撃容疑検出条件のレコードの検出属性を、容疑シグネチャとして生成する。容疑シグネチャは、攻撃容疑トラヒックの通信パケット、すなわち攻撃容疑パケットを識別する。さらに、正規条件(図3)を参照し、正規条件の全てのレコード毎にこの容疑シグネチャとAND条件をとり、これを正規シグネチャとして生成する。正規シグネチャは、容疑シグネチャから正規ユーザの通信パケットである正規パケットを識別するために用いられる。例えば、図2と図3の設定例を用いて説明すると、図2における番号1のレコードの条件で検出されるパケットの容疑シグネチャは{dst=192.168.1.1/32, Protocol=TCP, Port=80}となり、図3より正規シグネチャは{src=172.16.10.24, dst=192.168.1.1/32, Protocol=TCP, Port=80}及び{TOS=0x01, dst=192.168.1.1/32, Protocol=TCP, Port=80}となる。
【0033】
次いで、ステップS3013において、ゲート装置2001は、ステップS3012において生成した容疑シグネチャ及び正規シグネチャをフィルタ2021に登録し、攻撃容疑トラヒックを防御対象のサーバ2000及びサーバ2000が収容されているLANの所有者によって予め設定された伝送帯域制限値に伝送帯域を制限するための容疑キュー2027を生成する。尚、同一防御対象に関する容疑キューが既に生成済みの場合は、新たな容疑キューの生成は行わない。これにより、図5に示す帯域制御モデルと図6に示すフィルタ2021の分類アルゴリズムに従って、容疑シグネチャに合致する攻撃容疑パケットの伝送帯域の制限と、正規シグネチャに合致する正規パケットの伝送帯域制限の解除が実行される。
【0034】
そして、ゲート装置2001は、ステップS3014を実行する。すなわち、ゲート装置2001は、容疑シグネチャと正規条件と攻撃容疑パケットの帯域制限値とを上流の通信装置2002、2003に送信する。ここで送信する攻撃容疑パケットのトラヒックの帯域制限値は、例えば、ゲート装置2001が記憶する攻撃容疑検出条件のレコードに対応したの伝送帯域制限値を上流の通信装置全てに均等に分配するなどの方法で算出される。
【0035】
次に、容疑シグネチャ、正規条件及び攻撃容疑パケットの帯域制限値の受信時の通信装置2002、2003の動作を説明する。図8のステップS3021において、通信装置2002、2003は、ゲート装置2001が送信した(ステップS3014)容疑シグネチャと正規条件と容疑パケットの帯域制限値とを受信する。すると、ステップS3022において、通信装置2002、2003は、受信した容疑シグネチャと正規条件を基に正規シグネチャを生成する。すなわち、正規シグネチャは、受信した正規条件の全てのレコード毎に、受信した容疑シグネチャとAND条件をとり、これを正規シグネチャとして生成する。次に、ステップS3023に進み、通信装置2002、2003は、受信した容疑シグネチャ及び算出した正規シグネチャをフィルタ2021に登録し、容疑シグネチャ及び攻撃容疑パケットのトラヒックの伝送帯域制限値に対応した容疑キュー2027を生成する。これにより、図5に示す帯域制御モデルと図6に示すフィルタ2021の分類アルゴリズムに従って、容疑シグネチャに合致する攻撃容疑パケットの伝送帯域の制限と、正規シグネチャに合致する正規パケットの伝送帯域制限の解除が実行される。そして、ステップS3024において、通信装置2002はその上流にある通信装置2004に、通信装置2003はその上流にある通信装置2005及び2006に受信した容疑シグネチャと正規条件及び受信した伝送帯域制限値より小さい攻撃容疑パケットの伝送帯域制限値を送信する。ここで攻撃容疑パケットの伝送帯域制限値は、例えば、通信装置2002、2003が受信した伝送帯域制限値を上流の通信装置全てに均等に分配するなどの方法で算出される。
【0036】
そして、通信装置2004〜2006は、通信装置2002、2003から容疑シグネチャと正規条件及び攻撃容疑パケットの伝送帯域制限値を受信し、通信装置2002、2003におけるステップS3021〜S3023と同様に動作する。
【0037】
次に、ゲート装置2001及び通信装置2002〜2006の不正トラヒック検出時の動作を説明する。図9のステップS3031において、ゲート装置2001及び通信装置2002〜2006は、DDoS攻撃者がパケットを送出しているネットワークを特定するため入力パケットを分析して、不正トラヒック条件(図4)のいずれかのパターンに合致するトラヒックを検出する。すると、ゲート装置2001及び通信装置2002〜2006は、ステップS3032において、この検出された不正トラヒック条件(図4)を満たすパケットの送信元IPアドレスを不正アドレス範囲として特定し、この不正アドレス範囲であり、かつ、容疑シグネチャに合致するという条件を不正シグネチャとする。そしてゲート装置2001及び通信装置2002〜2006は、ステップS3033においてこの不正シグネチャをフィルタ2021に登録する。これにより、図5に示す帯域制御モデルと図6に示すフィルタ2021の分類アルゴリズムに従って、不正シグネチャで識別される攻撃パケットの伝送帯域はさらに制限される。
【0038】
ところで、以上説明した動作は、以下に記述するアクティブネットワーク上で実行される。
【0039】
以下、図面を参照しこの発明の一実施形態を実行できるアクティブネットワークについて説明する。
図10は、本実施形態が前提とするネットワークの構成である。図10に示すように、通信ネットワークは、複数の通信装置7001によって接続されている。そして、通信装置7001には1台または複数台のユーザのコンピュータ7000を接続することができるようになっている。ユーザのコンピュータ7000相互間で通信データのやりとりを行う際には、送信元のユーザのコンピュータ7000が送信したパケットを通信ネットワーク上の各ノードに位置する通信装置7001が順次転送することにより、そのパケットを宛先のユーザのコンピュータ7000に届けるようにする。
【0040】
次に、通信装置の構成について説明する。図11は、通信装置7001の内部の構成を示すブロック図である。図11に示すように、通信装置7001には通信線7024a、7024b、7024c、7024dが接続されており、通信装置7001はこれらの通信線を介して隣接する他の通信装置との間でパケットを交換することができるようになっている。また、通信装置7001には、上記の各通信線7024a〜7024dに対応したインタフェース部7023a〜7023dと、パケットを転送する処理を行うための転送処理部7021と、パケットの転送の際の転送先の情報を記憶する転送先テーブル7022と、アクティブパケットに対する処理を行うためのアクティブネットワーク実行環境(Active Network Execution Environment)7010とが設けられている。なお、アクティブネットワーク実行環境7010は、内部に、アクティブコード(プログラム)を実行するためのコード実行部7011と、アクティブコードを記憶しておくためのコード記憶部7012とを備えている。なお、ここでアクティブコードとは、アクティブネットワークにおいてパケットに対する作用を行うコンピュータプログラムのコードである。
【0041】
ここで、図11を参照しながら、この通信装置7001の動作例の概要を説明する。隣接する他の通信装置から通信線7024dを介してパケットが到着すると、インタフェース部7023dがそのパケットを受信し転送処理部7021に渡す。転送処理部7021は、渡されたパケットのヘッダ部分に格納されている送信元(source)アドレスと宛先(destination)アドレスとを読み取り、さらにそれらのアドレスをキーとして転送先テーブル記憶部7022に記憶されている転送先テーブルを参照することによって、そのパケットにどう対処するかを決定する。
【0042】
パケットへの対処は大きく2通りに分けられる。そのパケットに対してアクティブコードを適用する場合と、そのパケットをそのまま他の通信装置に転送する場合とである。
転送先テーブルを参照した結果、そのパケットに対してアクティブコードを適用すべきものである場合には、転送処理部7021は、そのパケットをアクティブネットワーク実行環境7010に渡す。アクティブネットワーク実行環境7010においては、コード実行部7011がそのパケットを受け取り、そのパケットに対して適用すべきアクティブコードをコード記憶部7012から読み出して実行する。なお、コード実行部7011は、アクティブコードを実行した結果、必要な場合には処理対象となったパケットを再び転送処理部7021に渡して他の通信装置に対して転送することもある。
転送先テーブルを参照した結果、そのパケットにアクティブコードを適用せずそのまま他の転送装置に転送するべきものである場合には、転送処理部7021は、適切な転送先に対応したインタフェース部(7023aや7023bや7023cなど)に渡し、そのインタフェース部が通信線(7024aや7024bや7024cなど)を介してパケットを他の通信装置に転送する。
【0043】
なお、ここでは通信線7024dを介して他の通信装置からパケットが到着した場合を例として説明したが、他の通信線を介してパケットが到着した場合の処理も同様である。
【0044】
次に、通信装置7001内の転送処理部7021がいかにしてパケットに対する処置(アクティブコードを適用するか、単純に他の通信装置に転送するか)を決定するかを具体的に説明する。
【0045】
本実施形態が基礎とするフレームワークでは、アクティブネットワーク実行環境はパケットの中において指定されているIPアドレスに基づいて起動される。ここで、全ての(グローバル)IPアドレスの集合をIと表わすものとする。また、送信元IPアドレスがsであり宛先IPアドレスがdであるようなパケットを(s,d)と表わすものとする。また、通信装置のアクティブネットワーク実行環境に格納されているすべてのアクティブコードはそれぞれ特定のユーザに属するものとし、ある特定のユーザの所有するIPアドレスの集合をOと表わすものとする。
【0046】
本フレームワークでは、上記特定のユーザに属する個々のアクティブコードは、次に示す式による集合Aで表されるパケットであって、かつ当該アクティブネットワーク実行環境を備えた通信装置(ノード)によって受信されたパケットに対してアクセスする権限を持つ。すなわち、
A={(s,d)∈[(O×I)∪(I×O)]|s≠d}
である。つまり、この式が意味するところの概略は、特定のユーザに属するアクティブコードは、当該ユーザが所有する全てのIPアドレスのいずれかを送信元または宛先のアドレスとするようなパケットに対してアクセス権を有するということである。
【0047】
当該ユーザに属するn個のアクティブコードがある通信装置(ノード)に格納されているとき、i番目(1≦i≦n)のアクティブコードは、集合C(i)(C(i)⊆A)に属するパケットをキャプチャーして処理することをアクティブネットワーク実行環境に対して予め要求しておく。つまり、当該ユーザに関して、アクティブネットワーク実行環境は、c(1)∪c(2)∪・・・・・・∪c(n)なる和集合の要素であるパケット(s,d)によって起動されるものであり、このようなパケットを「アクティブパケット」と呼ぶことができる。
【0048】
図12は、図11に示した転送先テーブル記憶部7022に記憶されている転送先テーブルの一例を示す概略図である。上記のフレームワークを実現するために必要な情報は、このような転送先テーブルに格納することが可能である。
【0049】
図12に示すように、転送先テーブルは、タイプ(Type)と宛先アドレス(Destination)と送信元アドレス(Source)と転送先(Send to)の各項目を含んでいる。タイプの項目は、テーブルのエントリーのタイプを表わすものであり、「アクティブ(Active)」あるいは「通常(Regular)」のいずれかの値をとる。宛先アドレスおよび送信元アドレスの項目は、転送対象のパケットの宛先IPアドレスおよび送信元IPアドレスにそれぞれ対応するものである。転送先の項目はは、宛先アドレスと送信元アドレスの組み合せがマッチしたパケットに関して、適用すべきアクティブコードの識別情報あるいは転送先の通信装置のIPアドレスを表わすものである。
【0050】
タイプの値が「アクティブ」であるエントリーは、対象のパケットに適用するアクティブコードを指定するものであり、その転送先の項目にはアクティブコードを識別する情報が書かれている。
タイプの値が「通常」であるエントリーは、対象のパケットの転送先の通信装置のアドレスを指定するものであり、その転送先の項目には転送先の通信装置のIPアドレスが書かれている。
【0051】
図12に示す転送先テーブルの例において、第1のエントリーでは、タイプが「アクティブ」であり、宛先アドレスが「1.2.3.4」であり、送信元アドレスが「Any(何でもよい)」であり、転送先が「アクティブコードA」となっている。これは、送信元アドレスがいかなるアドレスであっても、宛先アドレスが「1.2.3.4」にマッチする場合には、該当するパケットをトリガーとしてアクティブネットワーク実行環境が起動され、アクティブコードAが実行されることを表わしている。
また、第2のエントリーでは、タイプが「アクティブ」であり、宛先アドレスが「10.50.0.0」であり、送信元アドレスが「11.12.13.14」であり、転送先が「アクティブコードB」となっている。これは、宛先アドレスと送信元アドレスの両方がそれぞれ上記の値にマッチした場合には、該当するパケットをトリガーとしてアクティブネットワーク実行環境が起動され、アクティブコードBが実行されることを表わしている。
また、第3のエントリーでは、タイプが「アクティブ」であり、宛先アドレスが「Any(何でもよい)」であり、送信元アドレスが「157.2.3.0」であり、転送先が「アクティブコードC」となっている。これは、宛先アドレスがいかなるアドレスであっても、送信元アドレスが「157.2.3.0」にマッチする場合には該当するパケットをトリガーとしてアクティブネットワーク実行環境が起動され、アクティブコードCが実行されることを表している。
【0052】
なお、図12に示すように、転送先テーブルにおいては、タイプが「アクティブ」であるエントリーのほうが、タイプが「通常」であるエントリーよりも上に存在している。そして、タイプが「アクティブ」であるエントリーのほうが、タイプが「通常」であるエントリーよりも優先的に適用される。また、各エントリーは、通信装置へ到着したパケットのみに対して適用され、転送のために送出されるパケットに対しては適用されない。
【0053】
以上説明した通信装置の構成をまとめる。
図11に示したインタフェース部は、通信線毎に設けられており、当該通信線から到着するパケットを受信するとともに当該通信線に対してパケットを送出する処理を行う。
また、転送先テーブル記憶部は、パケットの送信元アドレスまたは宛先アドレスまたはそれら両方のアドレスのパターンと、該パターンに対応するプログラム(アクティブコード)の情報あるいは該パターンに対応する転送先アドレスの情報とが登録された転送先テーブルを記憶する。
また、アクティブネットワーク実行環境は、前記プログラムを予め記憶しているとともに、このプログラムを実行する。
また、転送処理部は、通信線から到着した受信パケットを前記インタフェース部から渡された際に、当該受信パケットの送信元アドレスまたは宛先アドレスに基づいて前記転送先テーブルを参照し、前記転送先テーブルに当該受信パケットのアドレスのパターンに対応する転送先アドレスの情報が登録されていた場合には当該受信パケットを所定の転送先アドレスに向けて送出するように当該転送先アドレスに対応したインタフェース部に渡すとともに、前記転送先テーブルに当該受信パケットのアドレスのパターンに対応するプログラムの情報が登録されていた場合には前記アクティブネットワーク実行環境部において当該プログラムを起動させるとともに当該プログラムに当該受信パケットを渡す。
【0054】
次に、本実施形態におけるアクティブコードのセキュリティに関するモデルについて説明する。このセキュリティのモデルは、各々のアクティブコードが、アクティブコードの所有者に関わるパケットのみに対して作用することを保証するためのものである。そのために、このセキュリティのモデルは、公開鍵のインフラストラクチャの存在を前提として、それを利用することとする。
【0055】
図13は、上記のセキュリティモデルとそのモデルにおける処理の手順を示す概略図である。図13において、符号7051はユーザAのユーザ端末装置、7061は認証局(Certification Authority )装置である。この認証局の機能は、公の機関によって提供されるものであっても良いし、あるいはISP(Internet Service Provider,インターネット接続サービス提供者)などによって提供されるものであっても良い。
なお、図13に示す例では、ユーザ端末装置7051のIPアドレスは「1.2.3.4」である。以下では、ユーザAが、アクティブコードAを通信装置7001に登録するための処理の手順を説明する。なお、以下において、ユーザAはアクティブコードAの開発者であっても良いが、その必然性はなく、他の開発者が開発したアクティブコードAをユーザAが入手し、それを通信装置7001に登録するものでも良い。
【0056】
まず(1)で示すように、ユーザAのユーザ端末装置7051は、周知技術を用いて鍵のペアすなわち公開鍵と秘密鍵とを生成する。
そして(2)で示すように、ユーザ端末装置7051は、上で生成された公開鍵を認証局装置7061に登録する。このとき、認証局装置7061は、ユーザ端末装置7051のIPアドレスを検証する。この検証が正しく行なわれると、公開鍵そのものと、ユーザAを識別するための情報と、ユーザ端末装置7051のIPアドレス「1.2.3.4」が認証局装置7061に記憶される。
【0057】
次に(3)で示すように、ユーザ端末装置7051は、上で生成された秘密鍵を用いてアクティブコードAに電子署名する処理を行う。
そして(4)で示すように、ユーザ端末装置7051は、秘密鍵で署名されたアクティブコードAを通信装置7001に登録する処理を行う。
【0058】
これを受けて通信装置7001は、(5)で示すように、アクティブコードAの登録を行ったユーザAの電子証明書を認証局装置7061から取得する。この電子証明書には、ユーザAを識別する情報と、そのIPアドレス「1.2.3.4」と、上の(2)において登録された公開鍵そのものとが含まれている。
そして(6)で示すように、通信装置7001は、上記の電子証明書から取り出したユーザAの公開鍵を用いて、上の(4)において登録されたアクティブコードAの電子署名を検証する。そして、これが正しく検証された場合には、通信装置7001は、アクティブコードAをアクティブネットワーク実行環境に導入する処理を行う。また、これに応じて、転送先テーブルに必要なエントリーが追加される。
【0059】
なお、この(1)および(2)の処理が行われて一旦ユーザAの公開鍵が認証局装置7061に登録されると、ユーザ端末装置7051はその公開鍵に対応する秘密鍵を用いてアクティブモジュールをいくつでも通信装置7001に登録することも可能である。
【0060】
つまり、通信装置7001は登録部(図示せず)を備えており、この登録部は、ユーザの端末装置から当該ユーザの秘密鍵で電子署名されたプログラムを受信し、当該ユーザの電子証明書を認証局装置から受信し、受信した電子証明書に含まれる当該ユーザの公開鍵を用いて前記電子署名されたプログラムの検証を行い、この検証が成功した場合には当該プログラムに対応するアドレスのパターンと当該プログラムの情報とを前記転送先テーブルに登録し、この検証が失敗した場合には当該プログラムの情報の前記転送先テーブルへの登録は行わないようにするものである。
【0061】
なお、上で説明した通信装置へのアクティブコードの登録の手順が有効に機能するためには、次の2点が前提となる。
第1の前提として、ユーザがどの通信装置(ノード)にアクティブコードを登録すれば良いかは事前にわかっている。あるいは、どの通信装置(ノード)にアクティブコードを登録すればよいかがわかるためのディレクトリサービスが提供されている。
第2の前提として、通信装置(ノード)は、目的の認証局の公開鍵を事前にオフラインで取得しているか、他の認証局から取得するか、あるいは他の何らかの手段で取得できる。
【0062】
次に、矛盾の解消のための制御について説明する。
ある通信装置(ノード)において、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通りのシナリオのいずれかによって解消することとする。
【0063】
第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)が到着した場合である。このような場合には、宛先のユーザのアクティブコードを優先的に適用することが望ましいと考えられる。
【0064】
つまり、転送先テーブルに登録されているパターンに、送信元アドレスのみが指定されていて宛先アドレスが何でもよいとされている第1のエントリーと、宛先アドレスのみが指定されていて送信元アドレスが何でもよいとされている第2のエントリーとが含まれており、受信パケットがこれら第1のエントリーと第2のエントリーとの両方にマッチしたときには、第1のエントリーよりも第2のエントリーを優先させて、当該第2のエントリーのパターンに対応するプログラムを起動するようにする。
【0065】
このように、送信元のユーザのアクティブコードよりも宛先のユーザのアクティブコードを優先させることは、アクティブネットワークの機能を用いてDDoS(分散型DoS,Distributed Denial of Service )攻撃を防御するメカニズムを構築する場合に特に重要となる。そのようにすることによって、宛先のユーザつまり被攻撃者となり得る者のアクティブコードが、攻撃者となる可能性があるもののアクティブコードよりも優先されるためである。
【0066】
第2の矛盾の解消のシナリオは、あるパケット(s,d)に関して適用されるべき2つ以上のアクティブコードが同一のユーザによって登録されている場合に関するものである。このような場合には、該当するアクティブコードのうちの最も古く登録されたものが、他のものよりも優先的に適用されるようにすることが望ましいと考えられる。こうすることにより、ユーザが新しいアクティブコードを登録しようとする際には、新しいアクティブコードを有効にするために事前に古いアクティブコードを削除することが保証されるからである。
【0067】
次に、これまでに述べたようなアクティブネットワークのノードとして機能する通信装置のインプリメンテーションの例について説明する。図14は、Linux上のJava(登録商標)仮想マシン(JVM)を用いてアクティブパケットの処理を行う通信装置を実現した場合の概略図である。
【0068】
図14に示す例では、専用のIPスタックを処理(process)の一部として構築している。これによって、図12に示したような転送先テーブルを実現し、実行環境(アクティブネットワーク実行環境)からこの転送先テーブルにエントリーの追加や削除を行えるようにしている。また、これに伴い、カーネル(kernel)内のIPスタックは不要となるため、カーネルにおけるルーティングを不活性化している。そして、到着パケットのコピーがデータリンク部分から作成され、そのパケットがライブラリlibpcapを通してJava(登録商標)仮想マシンで補足できるようにしている。
【0069】
処理の一部として構築した専用のIPスタックは、アクティブパケット、つまり転送先テーブル上での所定の定義にマッチするIPアドレス(宛先IPアドレス、送信元IPアドレス、あるいはそれらの組み合せ)を有するパケットは、実行環境上で起動されるアクティブコードに対して渡される。一方、アクティブパケット以外の通常のパケットは、カーネルにおけるIPスタックと同様の方法で隣接する通信装置等へ向けた転送が行われる。アクティブパケットであれ通常パケットであれ、この通信装置から送出されるすべてのパケットは、ライブラリlibnetを通して送出される。こうすることにより、各々処理されたパケットのヘッダに記録された送信元アドレスは、元々の送信元アドレスのままの状態で、ネットワークに送出されることとなる。
【0070】
また、標準のJava(登録商標)のAPI(アプリケーションプログラムインタフェース)である「java.security 」を用いることによってセキュリティモデルをインプリメンテーションすることが可能である。この標準APIは、セキュリティモデルを構築するために必要な機能のほとんどを提供している。また、証明書のための形式としては「X.509」証明書形式を用いることが可能であり、アクティブコードの所有者のIPアドレスを「X.509」の識別名(DN, distinguished name)の一部に含めることにより、本実施形態のセキュリティモデルを実現することができる。
【0071】
なお、言うまでもなく、上記インプリメンテーションではコンピュータシステムを用いることによってアクティブネットワーク実行環境を備えた通信装置を構築している。そして、上述した一連の処理、すなわち到着パケットの複製の作成とその捕捉や、転送先テーブルを参照しながらのアクティブパケットおよび通常パケットの転送の処理や、アクティブネットワーク実行環境上でのアクティブコードの起動とその処理の実行や、処理されたパケットのネットワークへの送出などの各処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。
【0072】
なお、上述した各コンピュータプログラムは、コンピュータ読取可能な記録媒体に記録されており、通信装置等に搭載されたCPU(中央処理装置)がこの記録媒体からコンピュータプログラムを読み取って、攻撃防御あるいはサービスモジュール提供等のための各処理を実行する。また、「コンピュータ読み取り可能な記録媒体」とは、磁気ディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
【0073】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
【0074】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0075】
また、下流のゲート通信装置から上流の通信装置へのデータの送信は、アクティブネットワークの使用に限定するものではなく、任意の通信プロトコルの使用が可能である。
【0076】
また、ゲート装置及び通信装置はゲートウェイやルータに限られるものではなく、ブリッジ、イーサネット(登録商標)、インタフェース変換装置など、IPアドレスを持つ任意の通信ノードであっても良い。
【0077】
以上、図面を参照してこの発明の実施形態を詳述してきたが、具体的な構成はこれらの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【0078】
【発明の効果】
以上説明したように、ネットワーク上の各通信装置はDDoS攻撃の被攻撃者が指定した属性によって検出した攻撃容疑トラヒックの容疑シグネチャを再帰的に通知することが可能になるため、ネットワーク全体で被攻撃者の要求する攻撃容疑トラヒックの伝送帯域を制限することが可能になるとともに、早期にネットワークの輻輳を改善することが可能となる。そして、ネットワーク上のそれぞれの通信装置は、攻撃容疑トラヒックを監視して攻撃パケットを特定することにより攻撃パケットのみを更に制限することが可能になるため、正規ユーザのパケットが誤って攻撃パケットとして分類され、破棄される可能性を低くするとともに、攻撃元に最も近い最上流の通信装置において攻撃を防御する、すなわちDDoS攻撃の通信パケットを破棄することでネットワークの伝送帯域の浪費を防ぐことができる。
【0079】
また、ネットワークの各通信装置はDDoS攻撃の被攻撃者が指定した正規シグネチャを再帰的に通知することで、各通信装置は被攻撃者が指定した正規ユーザの通信トラヒックの伝送帯域の制限を解除することが可能になる。従って、DDoS攻撃の通信パケットを破棄しながらも、被攻撃者の指定するサービスポリシーを反映して、ネットワーク上の正規利用者のトラヒックの疎通を確保することが可能となり、ネットワーク全体への悪影響を抑制することができる。
【0080】
また、例えばインターネットのように、本来攻撃防御の機能を備えていないネットワークであっても、本発明を適用することによって攻撃に対する効果的な防御が可能になる。また本発明を用いた場合、攻撃者が直接接続されているネットワークの管理者が何らかの対処をする必要がなく、攻撃を受けている装置が接続されているネットワーク側の対処によって自動的に防御機能が起動され攻撃を防ぐことができるようになる。
【図面の簡単な説明】
【図1】 本発明の一実施の形態を適用できるネットワークの構成図である。
【図2】 同実施の形態による攻撃容疑検出条件の設定の例である。
【図3】 同実施の形態による正規条件の設定の例である。
【図4】 同実施の形態による不正トラヒック検出条件の設定の例である。
【図5】 同実施の形態によるゲート装置2001及び通信装置2002〜2006が備える帯域制御モデルである。
【図6】 同実施の形態によるフィルタ2021における分類アルゴリズムである。
【図7】 同実施の形態によるゲート装置2001の攻撃容疑パケット検出時の動作を示すフローチャートである。
【図8】 同実施の形態による通信装置2002、2003のシグネチャ受信時の動作を示すフローチャートである。
【図9】 同実施の形態によるゲート装置2001及び通信装置2002〜2006の不正トラヒック検出時の動作を示すフローチャートである。
【図10】 同実施の形態を実行できるアクティブネットワークが前提とするネットワークの構成である。
【図11】 同実施の形態を実行できるアクティブネットワークによる通信装置内部の構成を示すブロック図である。
【図12】 同実施の形態を実行できるアクティブネットワークによる転送先テーブル記憶部に記憶されている転送先テーブルの一例を示す概略図である。
【図13】 同実施の形態を実行できるアクティブネットワークによるセキュリティモデルとそのモデルにおける処理の手順を示す概略図である。
【図14】 同実施の形態を実行できるアクティブネットワークの通信装置をLinux上のJava(登録商標)仮想マシン(JVM)を用いてアクティブパケットの処理を行うように実現した場合の概略図である。
【符号の説明】
2000…サーバ
2001…ゲート装置
2002〜2006…通信装置
2007〜2010…端末装置
2021…フィルタ
2022…正規クラス
2023…正規キュー
2024…不正クラス
2025…不正キュー
2026…容疑クラス
2027…容疑キュー
7000…ユーザのコンピュータ
7001…通信装置
7010…アクティブネットワーク実行環境
7011…コード実行部
7012…コード記憶部
7021…転送処理部
7022…転送先テーブル記憶部
7023a、7023b…インタフェース部
7024a、7024b…通信線
7051…ユーザ端末装置
7061…認証局装置
Claims (7)
- 複数の通信装置を網目状に接続してなるネットワークと、防御対象であるコンピュータおよびLANと、前記LANおよびネットワークの間に介挿されたゲート装置とを有するネットワークシステムにおいて、
前記ゲート装置は、
通信トラヒックが予め決められた攻撃容疑パケットの検出条件に合致するか否かをチェックし、
合致したトラヒックを検出した場合に、検出された前記攻撃容疑パケットを識別する容疑シグネチャを生成して上流の前記通信装置へ送信し、
以後、前記容疑シグネチャによって識別される攻撃容疑パケットの伝送帯域を制限する処理を行い、
前記通信装置は、
下流のゲート装置または通信装置から受信した前記容疑シグネチャを上流の通信装置へ送信すると共に、前記容疑シグネチャによって識別される攻撃容疑パケットの伝送帯域を制限する処理を行い、
前記ゲート装置及び前記通信装置は、
前記容疑シグネチャで識別される攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出し、前記攻撃トラヒックを構成する攻撃パケットを特定して、以後特定された前記パケットの伝送帯域をさらに制限する処理を行い
前記ゲート装置は、正規利用者の端末装置からの通信パケットの条件である予め決められた正規条件を上流の通信装置へ送信すると共に、前記正規条件と前記容疑シグネチャとを基に正規パケットを識別する正規シグネチャを生成し、
以後、前記正規シグネチャによって識別される正規パケットの伝送帯域制限を解除する処理を行い、
前記通信装置は、下流のゲート装置または通信装置から受信した前記正規条件を上流の通信装置へ送信すると共に、前記正規条件と前記容疑シグネチャとを基に正規パケットを識別する正規シグネチャを生成し、
以後、正規シグネチャによって識別される正規パケットの伝送帯域制限を解除する処理を行う
ことを特徴とする分散型サービス不能攻撃防止方法。 - 複数の通信装置を網目状に接続してなるネットワークと、防御対象であるコンピュータおよびLANとの間に介挿されたゲート装置において、
分散型サービス不能攻撃の攻撃容疑パケットの検出条件を記憶するパケット検出条件記憶部と、
入力される通信パケットをチェックし、前記パケット検出条件記憶部が記憶する攻撃容疑パケットの検出条件を基に攻撃容疑パケットの発生を検出するトラヒック監視手段と、
前記トラヒック監視手段によって検出された前記攻撃容疑パケットの伝送帯域を制限する帯域制御手段と、
前記攻撃容疑パケットの検出条件を基に前記攻撃容疑パケットを識別する容疑シグネチャを生成するシグネチャ生成手段と、
前記容疑シグネチャを上流の通信装置に対して送信するシグネチャ送信手段と、を備え、
前記トラヒック監視手段は、入力される前記攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出し、
前記帯域制御手段は、前記攻撃トラヒックを構成する攻撃パケットを特定し、特定された前記攻撃パケットの伝送帯域をさらに制限し
前記パケット検出条件記憶部は、さらに、通信パケットが正規利用者の端末装置からの通信パケットである条件を示す正規条件を記憶し、
前記シグネチャ生成手段は、前記容疑シグネチャと前記正規条件とを基に正規パケットを識別する正規シグネチャを生成し、
前記帯域制御手段は、前記正規シグネチャで識別される正規パケットの伝送帯域制限を解除し、
前記シグネチャ送信手段は、前記正規条件を前記上流の通信装置に対して送信する
ことを特徴とするゲート装置。 - 防御対象であるコンピュータおよびLANがゲート装置を介して接続されたネットワークを構成する通信装置において、
下流のゲート装置あるいは通信装置から容疑シグネチャを受信するシグネチャ
受信手段と、
前記容疑シグネチャで識別される攻撃容疑パケットの伝送帯域を制限する帯域制御手段と、
前記容疑シグネチャを上流の通信装置に送信するシグネチャ送信手段と、
入力される前記攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出するトラヒック監視手段と、
を備え、
前記帯域制御手段は、前記攻撃トラヒックを構成する攻撃パケットを特定し、特定された前記攻撃パケットの伝送帯域をさらに制限し、
前記シグネチャ受信手段は、前記下流のゲート装置あるいは通信装置から正規条件を受信し、
前記帯域制御手段は、前記正規条件と前記容疑シグネチャとを基に正規パケットを識別する正規シグネチャを生成し、前記正規シグネチャで識別される正規パケットの伝送帯域制限を解除し、
前記シグネチャ送信手段は、前記正規条件を前記上流の通信装置に送信することを特徴とする通信装置。 - 複数の通信装置を網目状に接続してなるネットワークと、防御対象であるコンピュータおよびLANとの間に介挿されたゲート装置上で実行されるコンピュータプログラムであって、
入力される通信トラヒックが予め決められた攻撃容疑パケットの検出条件に合致するか否かをチェックするステップと、
合致したトラヒックを検出した場合に、検出された前記攻撃容疑パケットを識別する容疑シグネチャを生成するステップと、
予め決められた正規条件と前記容疑シグネチャを基に正規パケットを識別する正規シグネチャを生成するステップと、
前記容疑シグネチャで識別される攻撃容疑パケットの伝送帯域を制限するステップと、
前記正規シグネチャで識別される正規パケットの伝送帯域制限を解除するステップと、
前記容疑シグネチャと前記正規条件を上流の通信装置に送信するステップと、
前記攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出するステップと、
前記攻撃トラヒックを構成するパケットの送出元ネットワークを特定し、前記送出元ネットワークから送出される攻撃パケットの伝送帯域をさらに制限するステップと、
をコンピュータに実行させることを特徴とする分散型サービス不能攻撃防止プログラム。 - 防御対象であるコンピュータおよびLANがゲート装置を介して接続されたネットワークを構成する通信装置上で実行されるコンピュータプログラムであって、
下流のゲート装置あるいは通信装置から容疑シグネチャと正規条件とを受信するステップと、
前記容疑シグネチャで識別される攻撃容疑パケットの伝送帯域を制限するステップと、
前記正規条件と前記容疑シグネチャとを基に正規パケットを識別する正規シグネチャを作成し、作成された前記正規シグネチャで識別される正規パケットの伝送帯域制限を解除するステップと、
前記容疑シグネチャと前記正規条件を上流の通信装置に送信するステップと、
前記攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出するステップと、
前記攻撃トラヒックを構成するパケットの送出元ネットワークを特定し、前記送出元ネットワークから送出される攻撃パケットの伝送帯域をさらに制限するステップと、
をコンピュータに実行させることを特徴とする分散型サービス不能攻撃防止プログラム。 - 複数の通信装置を網目状に接続してなるネットワークと、防御対象であるコンピュータおよびLANとの間に介挿されたゲート装置上で実行されるコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
入力される通信トラヒックが予め決められた攻撃容疑パケットの検出条件に合致するか否かをチェックするステップと、
合致したトラヒックを検出した場合に、検出された前記攻撃容疑パケットを識別する容疑シグネチャを生成するステップと、
予め決められた正規条件と前記容疑シグネチャを基に正規パケットを識別する正規シグネチャを生成するステップと、
前記容疑シグネチャで識別される攻撃容疑パケットの伝送帯域を制限するステップと、
前記正規シグネチャで識別される正規パケットの伝送帯域制限を解除するステップと、
前記容疑シグネチャと前記正規条件を上流の通信装置に送信するステップと、
前記攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出するステップと、
前記攻撃トラヒックを構成するパケットの送出元ネットワークを特定し、前記送出元ネットワークから送出される攻撃パケットの伝送帯域をさらに制限するステップと、
の各処理をコンピュータに実行させる分散型サービス不能攻撃防止プログラムを記録することを特徴とする記録媒体。 - 防御対象であるコンピュータおよびLANがゲート装置を介して接続されたネットワークを構成する通信装置上で実行されるコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
下流のゲート装置あるいは通信装置から容疑シグネチャと正規条件とを受信するステップと、
前記容疑シグネチャで識別される攻撃容疑パケットの伝送帯域を制限するステップと、
前記正規条件と前記容疑シグネチャとを基に正規パケットを識別する正規シグネチャを生成し、前記正規シグネチャで識別される正規パケットの伝送帯域制限を解除するステップと、
前記容疑シグネチャと前記正規条件を上流の通信装置に送信するステップと、
前記攻撃容疑パケットのトラヒックを分析して攻撃トラヒックを検出するステップと、
前記攻撃トラヒックを構成するパケットの送出元ネットワークを特定し、前記送出元ネットワークから送出される攻撃パケットの伝送帯域をさらに制限するステップと、
の各処理をコンピュータに実行させる分散型サービス不能攻撃防止プログラムを記録することを特徴とする記録媒体。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002081904A JP3699941B2 (ja) | 2002-03-22 | 2002-03-22 | 分散型サービス不能攻撃防止方法及びゲート装置、通信装置、分散型サービス不能攻撃防止プログラム及び記録媒体 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002081904A JP3699941B2 (ja) | 2002-03-22 | 2002-03-22 | 分散型サービス不能攻撃防止方法及びゲート装置、通信装置、分散型サービス不能攻撃防止プログラム及び記録媒体 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2003283554A JP2003283554A (ja) | 2003-10-03 |
| JP3699941B2 true JP3699941B2 (ja) | 2005-09-28 |
Family
ID=29230351
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002081904A Expired - Fee Related JP3699941B2 (ja) | 2002-03-22 | 2002-03-22 | 分散型サービス不能攻撃防止方法及びゲート装置、通信装置、分散型サービス不能攻撃防止プログラム及び記録媒体 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3699941B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10673893B2 (en) | 2016-08-31 | 2020-06-02 | International Business Machines Corporation | Isolating a source of an attack that originates from a shared computing environment |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005184792A (ja) | 2003-11-27 | 2005-07-07 | Nec Corp | 帯域制御装置、帯域制御方法及び帯域制御プログラム |
| JP4480422B2 (ja) | 2004-03-05 | 2010-06-16 | 富士通株式会社 | 不正アクセス阻止方法、装置及びシステム並びにプログラム |
| WO2006040895A1 (ja) * | 2004-10-12 | 2006-04-20 | Nippon Telegraph And Telephone Corporation | 中継装置、中継方法および中継プログラム並びにネットワーク攻撃防御システム |
| EP1802059A2 (en) * | 2004-10-12 | 2007-06-27 | Nippon Telegraph and Telephone Corporation | Repeater, repeating method, repeating program, and network attack defending system |
| KR20060063932A (ko) * | 2004-10-12 | 2006-06-12 | 니폰덴신뎅와 가부시키가이샤 | 서비스 불능 공격 방어방법, 서비스 불능 공격 방어시스템, 서비스 불능 공격 방어장치, 중계장치, 서비스불능 공격 방어 프로그램 및 중계장치용 프로그램 |
| KR100611741B1 (ko) | 2004-10-19 | 2006-08-11 | 한국전자통신연구원 | 네트워크 침입 탐지 및 방지 시스템 및 그 방법 |
| JP4547342B2 (ja) * | 2005-04-06 | 2010-09-22 | アラクサラネットワークス株式会社 | ネットワーク制御装置と制御システム並びに制御方法 |
| CN100428688C (zh) * | 2005-06-09 | 2008-10-22 | 杭州华三通信技术有限公司 | 网络攻击的防护方法 |
| JP4545647B2 (ja) * | 2005-06-17 | 2010-09-15 | 富士通株式会社 | 攻撃検知・防御システム |
| KR100803029B1 (ko) | 2006-12-01 | 2008-02-18 | 경희대학교 산학협력단 | 협력적인 통계기반 탐지기법을 이용한 분산서비스거부공격의 방어 방법 |
-
2002
- 2002-03-22 JP JP2002081904A patent/JP3699941B2/ja not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10673893B2 (en) | 2016-08-31 | 2020-06-02 | International Business Machines Corporation | Isolating a source of an attack that originates from a shared computing environment |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2003283554A (ja) | 2003-10-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Wheeler et al. | Techniques for cyber attack attribution | |
| Ptacek et al. | Insertion, evasion, and denial of service: Eluding network intrusion detection | |
| US8356349B2 (en) | Method and system for intrusion prevention and deflection | |
| US7076803B2 (en) | Integrated intrusion detection services | |
| US7409714B2 (en) | Virtual intrusion detection system and method of using same | |
| US8635695B2 (en) | Multi-method gateway-based network security systems and methods | |
| CN101248613B (zh) | 用于安全通信网络尤其是安全ip电话网络的可信装置准入方案 | |
| US20030145225A1 (en) | Intrusion event filtering and generic attack signatures | |
| CN1968272B (zh) | 通信网络中用于缓解拒绝服务攻击的方法和系统 | |
| CN111988289B (zh) | Epa工业控制网络安全测试系统及方法 | |
| JP3699941B2 (ja) | 分散型サービス不能攻撃防止方法及びゲート装置、通信装置、分散型サービス不能攻撃防止プログラム及び記録媒体 | |
| JP3609382B2 (ja) | 分散型サービス不能攻撃防止方法及びゲート装置、通信装置ならびにプログラム | |
| JPWO2015174100A1 (ja) | パケット転送装置、パケット転送システム及びパケット転送方法 | |
| US20070166051A1 (en) | Repeater, repeating method, repeating program, and network attack defending system | |
| JP3609381B2 (ja) | 分散型サービス不能攻撃防止方法及びゲート装置、通信装置ならびにプログラム | |
| JP2000354034A (ja) | 事業:ハッカー監視室 | |
| Strayer et al. | Architecture for multi-stage network attack traceback | |
| JP3790486B2 (ja) | パケット中継装置、パケット中継システムおよびオトリ誘導システム | |
| Vuong et al. | A survey of VoIP intrusions and intrusion detection systems | |
| Haeberlen et al. | Pretty Good Packet Authentication. | |
| Tupakula et al. | Tracing DDoS floods: An automated approach | |
| KR100422807B1 (ko) | 정책기반 네트워크 보안제어를 위한 보안 게이트웨이 장치및 그 동작 방법 | |
| JP3657569B2 (ja) | パケット処理方法および通信装置 | |
| US20060225141A1 (en) | Unauthorized access searching method and device | |
| Jouravlev | Mitigating Denial-Of-Service Attacks On VoIP Environment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20040123 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040907 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041005 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041203 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050301 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050428 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20050527 |
|
| 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: 20050705 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050711 |
|
| LAPS | Cancellation because of no payment of annual fees |