JP4764930B2 - 分散サービス妨害(DDoS)攻撃防御のための、挙動ベースのトラフィック識別(BTD) - Google Patents

分散サービス妨害(DDoS)攻撃防御のための、挙動ベースのトラフィック識別(BTD) Download PDF

Info

Publication number
JP4764930B2
JP4764930B2 JP2008557527A JP2008557527A JP4764930B2 JP 4764930 B2 JP4764930 B2 JP 4764930B2 JP 2008557527 A JP2008557527 A JP 2008557527A JP 2008557527 A JP2008557527 A JP 2008557527A JP 4764930 B2 JP4764930 B2 JP 4764930B2
Authority
JP
Japan
Prior art keywords
tcp connection
tcp
input packet
connection
packet
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.)
Active
Application number
JP2008557527A
Other languages
English (en)
Other versions
JP2009529254A (ja
Inventor
チーチャン ガオ,
ナアワン アンサリ,
Original Assignee
ニュー ジャージー インスティチュート オブ テクノロジー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ニュー ジャージー インスティチュート オブ テクノロジー filed Critical ニュー ジャージー インスティチュート オブ テクノロジー
Publication of JP2009529254A publication Critical patent/JP2009529254A/ja
Application granted granted Critical
Publication of JP4764930B2 publication Critical patent/JP4764930B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/141Denial of service attacks against endpoints in a network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、分散サービス妨害(DDoS)攻撃防御のための、挙動ベースのトラフィック識別(BTD)に関する。
eビジネスアプリケーションやミッションクリティカルな軍事通信の普及によって、インターネット上のネットワークセキュリティが深刻に懸念されている。致命的なサービス妨害(DoS)攻撃や、その進化形である分散DoS(DDoS)攻撃の出現により、我々のインターネットの利用やインターネットへの信頼が迷惑にも侵害されている。Yahoo、CNN、Ebay、及びAmazonといった知名度の高いサイトにおいてでさえ、DoS/DDoS攻撃の悪影響が何度も生じている。
DDoS攻撃において、アタッカーは被害者に大量の悪質なトラフィックを送信する。例えば、DDoSアタッカーは、インターネットに接続されたコンピュータシステムを介して、様々なデータセンターにおける1つ又は複数のコンピュータに侵入することもある。多くの場合、アタッカーはインターネットサービスプロバイダ(ISP)を介してインターネットにアクセスするだろう。その後、アタッカーは、悪質なソフトウェアプログラムを用いてデータセンターの複数のコンピュータを制御下に置くことができる。アタッカーがコマンドを出すと、これらのコンピュータは様々なタイミングで大量のデータを一斉に被害者に送信できるため、被害者は正規のインターネットトラフィックやメッセージに応答できなくなってしまう。
現在、DDoS攻撃はインターネットの世界において最も恐ろしい脅威であろう。DDoS攻撃は、一見正常に見えるが実際には無用なパケットを送信することで、利用の限られたシステムリソースを悪用し、且つ消費して、被害者側のシステムを劣化/崩壊させるため、被害者側のシステムによる通常のクライアントサービスは著しく妨害される。典型的には、ネットワーク帯域幅、ターゲットホストのCPUサイクル、及び、フラグメンテーションバッファやTCP SYNバッファ等の特定のTCP/IPプロトコルスタック構造といったリソースがDoS/DDoS攻撃によって使い果たされてしまう。更に、容易にアクセス可能な攻撃スクリプトがインターネット上に氾濫しているため、DDoS攻撃を仕掛ける技術的ハードルは著しく下げられている。また、インターネットにおいてはアカウンティングが不十分であるため、クラッカーは、後でペナルティを課されることを全く心配することもなく、他者を攻撃してみようという気になってしまう。
DDoS攻撃は、仕掛けるのは比較的簡単だが、防御するのは難しいことがよく知られている。その根本的な理由として、(1)IPスプーフィング(即ち、攻撃パケットは通常偽造された送信元IPアドレスを有する。これによって、攻撃発信元の身元が効果的に隠され、検出、防御、追跡といった取り組みが阻まれてしまう);(2)DDoS攻撃の分散性(即ち、膨大な数の送信元が攻撃トラフィックを一斉に発生させることで、攻撃がますます強力化していき、その攻撃に対処するためスケーラビリティの問題が生じることになるので、対応策に過大な負担がかかる);及び(3)被害者が正常パケットと致命的な攻撃トラフィックとを容易に区別できるメカニズムが存在しないこと等が挙げられる。
以上より、DDoS攻撃を防御することでネットワークやホスト(特にサーバー)の持続可能性を向上させることは、当該技術分野における重要な目標である。DDoS防御における重要な問題は、如何にして攻撃トラフィックを正常トラフィックから分離するかということである。この問題は「トラフィック識別(traffic differentiation)」と呼ばれ、極めて重要である。なぜなら、DDoS攻撃は、ターゲットホスト及びネットワークの性能を著しく劣化させることを、又は被害者からその正規クライアントへのサービス提供能力を完全に奪うことさえも目的としているからである。どれが「攻撃的」トラフィックで、どれが「正常な」トラフィックであるかを把握できれば、被害者は、トラフィックの種類(即ち、攻撃的なものか又は正常なものか)に従い対応を変えることによって、DDoS攻撃を阻止できるようになる。
更に、DDoS攻撃パターンの多様性を考えると、如何にしてできるだけ多くのDDoS攻撃パターンを抑制するかがもう一つ重要な問題となる。DDoS攻撃パターンの例は、非特許文献1及び2に記載されている。
プロトコルの悪用という観点から見れば、DDoS攻撃はTCP、UDP、ICMP、又はその他のプロトコルに基づいている。以下の表1に示すように、異なるプロトコルを組み合わせた攻撃もある。攻撃レートの観点から言えば、攻撃の多くは高速フラッドベースの攻撃であるが、非特許文献3及び4に記載されているような、新規のより巧妙な攻撃である低レートDDoS攻撃もある。
Figure 0004764930
残念ながら、攻撃方式とは対照的に、防御方式はDDoS攻撃の進化に追い付いていない。背景技術であるDDoS防御方式の多くは、1種又は2種のDDoS攻撃に対処するものであり、考え得る広範なDDoS攻撃パターンに対しては不十分であり、効果がない。
C.Douligeris and A.Mitrokotsa,"DDoS attacks and defense mechanisms:classification and state−of−the−art,"Computer Networks,vol.44,pp.643−666,2004 J.Mirkovic and P.Reiher,"A taxonomy of DDoS attack and DDoS defense mechanisms,"ACM SIGCOMM Computer Communications Review,vol.34,no.2,pp.39−53,Apr.2004 R.Chang,"Defending against flooding−based,Distributed Denial of Service attacks:a tutorial,"IEEE Communications Magazine,vol.40,no.10,pp.42−51,2002 A.Kuzmanovic and E.knightly,"Low−Rate TCP−Targeted Denial of Service Attacks(The Shrew vs.the Mice and Elephants),"ACM SIGCOMM 2003,Aug.2003,pp.75−86
実施形態は、背景技術が直面する上記問題、及びその他の問題を克服することを目的とする。特に、挙動ベースのトラフィック識別(BTD)の実施形態は、悪質な攻撃トラフィックの大半をプロアクティブに特定且つ阻止し、更に様々なDDoS攻撃パターンに対処する新規なフレームワークを提供する。当該フレームワークにおける2つの構成要素は、トラフィック分類及びトラフィック識別である。トラフィック分類は非TCPフラッド攻撃に対処することを目的とし、トラフィック識別は悪質なTCPフローを特定するのに使用される。BTDの実施形態は、例えばns−2で実装されてもよいが、これに限定されることはない。実験結果から、トラフィック分類によりTCPトラフィックのスループットは著しく向上し(即ち、70%を上回る)、トラフィック識別により悪質な攻撃トラフィックは速やかにブロックされることが示される。BTDの当該実施形態が有するその他の有益性としては、以下に限定されないが、(1)機器/システムの変更が最小限で済むこと;(2)実用的に配備できること;(3)受信側にのみ配備すればよいのでスケーラビリティの問題が起こらないこと;及び(4)本方式における配備は当該ネットワーク及びホストを保護するためにのみ使用され、他のものは対象外であるので、インセンティブ欠如の問題がないこと等が挙げられる。
BTDの実施形態は、攻撃トラフィックを分離し、できるだけ多くのDDoS攻撃方式を抑制しようとするものである。DDoS攻撃はリソース管理の問題であるので、実施形態はQoS手法を採用してDDoS攻撃に対抗する。BTDの実施形態は、背景技術のように1種か2種の攻撃方式だけではなく、様々なDDoS攻撃方式を効率的且つ効果的に抑制する統合された方式を用いる。BTDの実施形態は、悪質な攻撃トラフィックと正常トラフィックとを識別可能であり、悪質な攻撃トラフィックにペナルティを課すことが可能である。BTDの実施形態は少なくとも2つの構成要素からなる。第1の構成要素は、使用されたプロトコルに基づいて各種トラフィックを分類し、それらのレートを帯域幅割り当てによって適宜制限する。この方法は、UDP、ICMP、及びその他のトラフィックをTCPから分離するためのものであり、帯域幅割り当てを非TCPトラフィックに制限することにより、UDP及びICMPに基づく幾らかのフラッド攻撃を軽減する上で有用である。
TCPはインターネット上の主要トラフィックであり、ほとんどのDDoS攻撃はTCPに基づいている。従って、次のステップでは、本質的に異なるTCPトラフィックを識別する。全てのTCPトラフィックは接続確立の状態によって2つのグループに分けられる。接続が確立している全てのTCPトラフィックについて、BTDの実施形態は、フローの特性、即ち良性か悪性かを、その挙動に従って特定しようとする。同じ接続の他方のエンドポイントの制御信号に対して適切に応答すれば、フローは「良性」即ち「正常」であると定められる。これに対し、「悪性」即ち「攻撃」フローは、TCP輻輳制御の原則に従わず、攻撃的に振る舞う。
TCPに不都合なフローを致命的フローとして分類し、BTD方式の実施形態によりペナルティを課す可能性もある。即ち、BTDの実施形態には、目下、TCPに不都合なフローと攻撃フローとを区別しないという副次的作用がある。区別に基づき、不都合なフローのうち攻撃性のあるフローに対して所定のペナルティが課される。
更に、BTDの実施形態は「被害者中心」であり、送信元エンドポイント又は中間ルータの変更を全く必要としない。このようなBTDの特性により、スケーラビリティ、各ドメイン間の協調、及びインセンティブ欠如といった問題が回避される。広範なシミュレーションが実施され、BTDの実施形態の設計が有効であることを実証する実験結果がもたらされている。
防御方式としては、攻撃フローと正常フローとを区別し、それに応じて有害なトラフィックを分離できることが理想的であろう。しかしながら、そのような区別を行うのは決して簡単ではない。BTDの実施形態では、悪質な攻撃トラフィックをその挙動により特定する。DDoSトラフィックに顕著な特徴/挙動としては、IPスプーフィングの他に攻撃性が挙げられる。攻撃的挙動の一例として、攻撃発信元が被害者からの応答の受信の有無に関して反応しないという点がある。そのような場合、アタッカーは、応答受信の有無に関係なく、ターゲットに途方もない量の無用なパケットを殺到させて、引き続き攻撃を実行し得る。図1に示されるような、オン−オフモデルを用いて散発的に攻撃パケットを仕掛ける低レートDoS攻撃でさえ、「オン」の段階中にはそのような攻撃的特徴を示す。
「攻撃性」は、「高レート」と等価ではないことに留意されたい。高レートフローが正常なTCPフローである可能性もある。受信者が、受信者からの所定の制御信号に対して送信元がどのように応答するかを意図的にテストすることで、攻撃的挙動を特定できることがある。そのようなテストに失敗する送信元を致命的な攻撃発信元と見なして、その送信元にペナルティを課すことができる。
しかしながら、上記テストに合格する送信元が良性であるとは限らない。受信者(通常はサーバー)は、接続のリクエスト/要求を受信した際には必ず上記テストを実施するよう促される。即ち、巧妙なアタッカーは、最初は正常に挙動して初めのテストに合格し、後に有害な攻撃動作を実行するかもしれない。このような状況に対処するため、受信者は、攻撃フローを検出するのに使用される上記テストの頻度を高めてもよい。別の解決策として、テストに動力学を幾らか導入し、各フロー、特に高レートフローに対するテストの頻度及び間隔をランダムに決定することも挙げられる。
高レートの正規トラフィックに更に適切に対応するために、フローが合格したテストの最大回数を規定する閾値が設定される。フローが特定回数のテストに合格したら、そのフローからのパケットにはそれ以上テストは行われない。送信元を積極的にテストすることにより、受信者は、その送信元からのフローの特性(即ち、正常か、又は攻撃か)に対して信頼性の高い判定を行い、それに応じて対応することができる。
挙動ベースのフィルタリングによって攻撃発信元はジレンマに陥り、(1)特定され且つペナルティを受ける危険性があってもパケットを強引に送信するか、又は(2)受信者の要求に応じるように攻撃レートを下げるので、攻撃の効力が減退する。攻撃発信元にこのようなジレンマを起こさせる中で、BTDの実施形態により、受信者は起こり得る攻撃の範囲及び影響を抑制することができる。
上記設計はTCPでのみ実施可能であるが、それは、TCPが輻輳制御と信頼性のある送信メカニズムとを備えているためである。TCPはインターネット上の主要トラフィックであり、DDoSトラフィックの90%程がTCPを扱うものであることに留意されたい。一般的に、TCPはフロー数で言えば80%を占め、パケット数で言えば90%を占める。従って、DDoS防御方式において、TCPトラフィックに効果的且つ効率的に対応することが必須である。
しかしながら、UDPやICMP等の他のトラフィックには、本発明のフレームワークが利用可能な代替メカニズムがない。BTDの実施形態は、トラフィック分類によって、非TCPトラフィックを処理する。トラフィック分類は、UDP及びICMPに基づくフラッド攻撃を処理する上で単純で且つ効率的な解決策である。UDP及びICMPトラフィックに割り当てられるリソースを制限することにより、受信者がUDP及びICMPフラッド攻撃を著しく軽減できる場合もある。
トラフィック分類の別の利点として、UDPトラフィックがTCPトラフィックよりはるかに攻撃的である点も挙げられる。UDPトラフィックがTCPトラフィックと帯域幅を競合する場合、UDPが、任意の輻輳制御メカニズムを持たないこと、及び、より攻撃的な特性を持つことから、使用可能な帯域幅のほとんどを獲得可能であるということが十分に立証されている。従って、UDPトラフィックを送信すると、TCPトラフィックから帯域幅の公平な割り当て分を効果的に奪い取り、TCPストリームのパフォーマンスを劣化させてしまう場合がある。よって、UDPはDDoS攻撃にとって優れた手段であることが分かる。これは、様々な種類のDDoS攻撃パターンを1種の方式で抑制することの難しさを示しており、更にトラフィック分類を実施する必要があることを理由づけるものである。
その他の考慮すべき問題として、以下に限定されるわけではないが、(1)IPスプーフィングに対処する方法、及び(2)実施形態のフレームワークがどのレベルで実行されるべきかを判定する方法(例えば、パケットレベル又はフローレベル)が挙げられる。まず、偽造された送信元IPアドレスを持つ攻撃トラフィックを特定し、次に、本物のIPアドレスを持つ正常トラフィックを、それらの挙動を観察することにより見分ける。スプーフィングは、検証(verification)によって対処できることがあり、攻撃的挙動は、TCPトラフィックの受信側で返信ACKのレートを操作することによって特定できることがある。この方法で、より微妙且つ巧妙な低レートDDoS攻撃も特定することができる。
図2は、BTDフレームワークの実施形態のフローチャート例を示す。図2のステップ2.1において、入力パケット(incoming packets)は、BTDフレームワークに受信される。ステップ2.2において、トラフィック分類方法が実行される。ステップ2.3において、帯域幅分割/割り当て方法が実行される。ステップ2.4において、TCP接続が確立されているか否か判定される。TCP接続が確立されていなければ、ステップ2.5において、レート制限、ハーフオープン(half−open)接続における待ち時間短縮、及びバックログキューサイズのインクリメントのうち少なくとも1つが実行される。また、TCP接続が確立されていれば、ステップ2.6において、トラフィック識別方法が実行される。
トラフィック識別方法の結果、ステップ2.7(a)及びステップ2.7(b)において、パケットが正常トラフィックであるか、又は攻撃トラフィックであるかが判定される。ステップ2.7(a)において正常トラフィックが受信されていると判定されると、ステップ2.8(a)において、受信パケットはBTDフレームワークによって許可される。あるいは、ステップ2.7(b)において攻撃トラフィックが受信されていると判定されると、ステップ2.8(b)において、受信パケットはBTDフレームワークによって破棄され、侵入は拒否される。様々な送信元からの膨大な量のパケットを取り扱うことで重い負荷がかかる受信者(例えばサーバー)のために、BTDの実施形態は、入力パケットを許可するか破棄するかを迅速且つ賢明に判断しよう。リンク速度が絶えず高速化しているため、フローレベルでの対応策の考案が求められている。
以下、トラフィック分類方法及び帯域幅割り当て方法について更に説明する。特に、BTDの実施形態におけるトラフィック分類方法を以下に説明する。上述したように、UDPには輻輳制御メカニズムが組み込まれておらず、且つ攻撃性が高いので、BTDの実施形態はまずプロトコルに基づいてトラフィックを分類して、TCPトラフィックと非TCPトラフィックとを分離する。具体的に、BTDの実施形態はトラフィックをTCP、UDP、ICMP、及びその他という4つのグループに分類する。BTDの実施形態は、少なくともIP層におけるプロトコルフィールドをチェックすることにより、この分類を実行する。帯域幅分割/割り当てに関しては、以下の例に限定されるわけではないが、例えば、システム管理者がネットワークを構築し、次のように帯域幅を割り当ててもよい。TCP:85%、UDP:13%、ICMP1%、その他1%。このような具体的な構成はサイトのプロファイルによって決定されるものであり、動的に変更されてもよい。
BTDの実施形態におけるトラフィック分類方法の目的は、正常トラフィックのプロファイルに従って、起こり得るUDP及びICMPフラッド攻撃の影響を軽減する防御策を実行する必要があるか否かを判定することである。特性を挙動によって特定できるTCPトラフィックとは異なり、UDPは攻撃性が高い。より「信頼性」が低いプロトコルであるため、正常UDPトラフィックと攻撃UDPトラフィックとを容易に区別することができない場合もあることが分かる。しかしながら、BTDの実施形態は、帯域幅制限を課すことで、これら2つのトラフィックを区別する単純だが効果的な方策を提供し、ほとんどの場合、ネットワークの性能に影響を及ぼさない。
更に、ネットワーク中に許容されるICMPトラフィックの量を制限するのも良いやり方である。なぜなら、ICMPが診断を目的としたものでしかなく、ICMPベースのDDoS攻撃が一般的であるからである。
図3は、保護されたネットワーク又はシステムのエントリーポイントにおいて、即ちファイアウォール3.1又はエッジルータ3.2で、トラフィック分類が如何にして実行されるかを示す。特に、分類を目的として設計されたネットワークプロセッサ及びその他のASICの可用性によって、BTDの実施形態は回線レートで動作可能である。
BTDの実施形態の帯域幅割り当て/分割機能としては、各プロトコルに対するクォータが設定可能であって、これは通常、一サイトにおけるルーチンのトラフィックプロファイルによって決定される。上述したように、また最近の測定によっても、現在インターネットで主要なトラフィックは依然としてTCPである。従って、ウェブ、eメール、テルネット、及びFTP等の大半のキラーアプリケーションは全てTCPを使用しているので、通常のサイトにおいては大半の帯域幅をTCPトラフィックに割り当てるのが妥当である。例えば、各プロトコルの帯域幅割り当て/分割としては、TCP:88%、UDP:10%、ICMP:1%、及びその他:1%となるものが考えられる。将来トラフィックパターンが変化した場合には、BTDの実施形態は、新しいトラフィックモデルに従って帯域幅割り当て率を調整可能な可変帯域幅割り当てを提供する。従って、BTDの実施形態は将来的なトラフィック変化に容易に適応できる。
以下、BTDの実施形態におけるTCPフロー識別方法について説明する。接続の確立とは、接続が確立されているか否かを判定することであり、受信者にとっては大きな意味がある。接続がうまく確立されていれば、両エンドは3ウェイハンドシェイクの手順を完了している。
DDoS防御においてよりいっそう重要なのは、送信元がIPスプーフィングを使用しているか否かを判定することである。それに対し、不完全な接続については、受信者は警戒し、リソース消費を抑えるべきであろう。起こり得る攻撃を軽減するための処置としては、以下に限定されないが、(1)全ての不完全な接続に対し、帯域幅割り当て総数を制限すること、(2)バッファがハーフオープン接続に長時間占有されないよう、タイムアウト値を著しく短くすること、又はハーフオープン接続に対してバッファ割り当てを全く行わないこと、及び(3)バックログ用のバッファサイズを増加することが考えられる。これらの選択肢は図2のステップ2.5に示されると共に上記されている。
以下、正常即ち良性フローと致命的即ち攻撃フローの分析について説明する。各プロトコルに対してクォータを割り当てたら、次に、致命的即ち攻撃TCPフローを良性即ち正常TCPフローから分離するタスクを行う。保護されたネットワークにおける帯域幅の大半をTCPが消費するため、このタスクは簡潔に行われる。上述したように、トラフィックの大多数が攻撃ストリームである場合、フラッドベースのDDoS攻撃に際して安易に公平パケットキューイングを採用することは実用的でない。TCPは、送信者と受信者との間に密接なオーケストレーションを要求するエンド・ツー・エンド(end−to−end)ソリューションである。(接続確立後に)TCPフローの特性を特定するため、受信者はACKパケットを意図的に遅延させて、送信者の反応を積極的にテストすることができる。送信者は、正常な場合には、それに応じて対応し、送信レートを下げる。
対して、DDoS攻撃に関しては2つのケースが考えられる。一つは、送信者が偽造された送信元IPアドレスを使用しており、従って受信者からのレート低減メッセージを受信できないケースである。この場合、送信者は適正な送信レートが全く分からない。もう一つは、送信者が通知を受信はしたものの、それを無視してパケットを送り続けるばかりであるため、プロトコルに違反し、割り当て分を減らされたり、更にはトラフィックをブロックされたりして、受信者によりペナルティを課されるケースである。上記手段は動的である。保護されたサイトは、加害者からのトラフィックが正常なものであるとシステムが間違って簡単に信じてしまわないよう、レート低減の頻度及び程度を決定することができる。
図4は、BTDの実施形態におけるトラフィック識別方法のフローチャート例を示す。ステップ4.1において新規入力パケットが到着すると、同じく図4のステップ4.1において、受信者はまず(送信元IPアドレス、送信元ポート番号、宛先IPアドレス、宛先ポート番号の)タプルをチェックすることで、現パケットのフローがどこに属するかを判定する。ステップ4.2において、上記方法によりパケットが新規フローの最初のパケットであると判定された場合、ステップ4.3において、受信者は、適正なサービス品質を確実に提供するために受信者が設定する閾値に対して、許可されたフローの数が最大フローカウントに到達したか否かを検査する。最大フローカウントとなっている場合、ステップ4.5においてパケットは破棄される。そうでない場合は、ステップ4.7において、受信者が維持しているフローテーブルを更新し、フローカウントを1だけインクリメントし、テスト合格数やテスト失敗数など幾つかのカウンタを初期設定した後、ステップ4.9において新規パケットを許可する。
既存フローのパケットに対しては、受信者はフローの挙動履歴をチェックする。図4のステップ4.3において、テスト失敗数が閾値f以上の場合、ステップ4.5においてパケットは破棄されるだろう。BTDの実施形態がフローの挙動を誤って特定しないように、1より大きい整数が選択される。fが小さい値であると、パケット破棄に悪影響を及ぼすことがある。誤って特定された場合、無害なフローからの後続パケットがブロックされてしまうだろう。値が大きすぎるのも賢明な選択ではない。fが大きい値であるとパケットの破棄判定が遅延して、悪質なストリームの後続パケットがシステムリソースを更に消費することがある。実験結果によれば、f=3の場合、特定レートが適正で、且つ、性能への影響も容認でき、バランスが良い。
また、受信者がこの時点で送信元にペナルティを課すための選択肢を幾つか持つことは言及に値する。選択肢の一つは、DUPACKを意図的に送信して、送信元を強制的にスロースタート段階へ導くことである。別の選択肢として、RSTを送信して接続を中止させることで、リソースが不正送信元によって浪費されないようにすることも挙げられる。図4には、パケット破棄のオペレーションのみが示されており、その他のペナルティは示されていない。
過去の挙動がそれほど悪くないフローに対しては、図4のステップ4.6に示されるように、BTDの実施形態は、フローが所定回数hのテストに合格したか否かを検査する。h回のテストに合格したフローのパケットであれば、受信者は直ちに許可しよう(例えば、hの適正値を決定するには何らかのトレードオフを行う必要がある。hに大きい値を選択すると、正常だが高レートであるフローのパフォーマンスを損なうことがあり、小さい値を使用すると、巧妙なアタッカーがテストを容易にかわしてしまうことがある。ステップ4.6においては、広範なシミュレーションの結果、hは6に設定された)。
その他のフローに対しては、図4のステップ4.8において、BTDの実施形態は更にフローの現在の状態をチェックする。フローがテスト中であれば、現レートはその前のレートの半分を超えることはないはずである(即ち、受信者はリバースACKレートを操作することでこの制限を強いる)。フローが当該制限に従う場合、ステップ4.13においてフローは現テストに合格し、ステップ4.14においてpass_numが1だけインクリメントされ、ステップ4.16においてパケットが許可される。そうでない場合、ステップ4.13においてフローは1つのテストに失敗し、ステップ4.15においてfail_numが1だけインクリメントされ、ステップ4.17においてパケットは破棄される。
ステップ4.8においてフローがテスト中でないと判定される場合、送信レートが各フローの公平な割り当て分のレートと比較される。比較の結果から、ステップ4.10において当該フローのテスト確率が決定される。ステップ4.12において、テストが必要か否か判定される。帯域幅が狭いと想定されるフローに対しては実施されるテストの回数が少ないことは明らかである。ステップ4.1において、テスト間の待ち時間が判定される。(公平な割り当て分を超える)高レートフローに対するテスト確率pは、1/(pass_num+1)である。最初は、全てのフローに対してpass_numは0である。従って、高レートフローはテストに合格しない限り、テストされる可能性は100%である。
フローのテスト合格数が増えるにつれ、そのテスト確率は減少する。リソース消費が少ないフローに対するテスト確率pは、1/max(m,2*h)(式中、mはフローの総数である)である。通常の場合、m>>2hであり、従ってp=1/mである。システム内に数フローしか存在しない場合にも対応できるようmax(.)関数を使用し、低レートフローに対するテスト確率が最大で高レートフローに対するそれの1/2には確実になるようにする。
フローのレートは下記式によって計算される。
(num_pkt*sz_pkt)/t (1)
式中、tは時間間隔(窓)であり、num_pktは当該期間中に受信したパケット数であり、sz_pktはパケットサイズである。フローが一旦テストに合格するとフローの開始時間が更新されるので、上記式で計算されるフローレートは、通常他者が使用するようなフローの平均レートではないということは言及に値する。そのようにして、攻撃パケットを突発的に送信して輻輳を誘発するものの、非常に長い時間沈黙を保って平均レートを著しく下げることによって検出及びフィルタリングを逃れる低レートDoS攻撃を効果的に阻むことができる。
以下の4つのシナリオが考えられる。(1)攻撃発信元は常に正常に挙動し、よって攻撃の影響が大幅に軽減される。(2)攻撃発信元は、最初は正常に挙動し、後に不正な挙動をみせる。この場合、テスト状態において現レートは前レートの1/2を超えない、という制限が満たされることはなく、発信元はテストに失敗する。(3)攻撃発信元は常に不正な挙動をみせ、失敗数によって容易に阻まれる。及び(4)攻撃発信元は、最初は不正な挙動をみせるが、後に正常に挙動する。シナリオ(4)では、一旦テストに失敗すればfail_numによってpass_numが相殺されるので、攻撃発信元にとって、テストされる可能性が高まる。本発明の設計において、確率は低いものの低レートフローもテストされるということに注目されたい。時間の経過と共に、低レートフローが受信者によって一度もテストされない可能性は極めて低くなる。BTDの実施形態は上記方法を実施して、低レートストリームが悪質なケースも抑制する。
以下、悪質なTCPフローに対するペナルティを説明する。受信者は、送信元にペナルティを課すために幾つかの選択肢を持つ。選択肢の一つは、DUPACKを意図的に送信することで、発信元を強制的にスロースタート段階に導くことである。別の選択肢として、RSTを送信して接続を中止させることで、リソースが不正発信元によって浪費されないようにすることも挙げられる。BTDの実施形態は、フローがテストに3回失敗すると、RSTを送信する。図4には、パケット破棄のオペレーションのみが示されており、その他のペナルティは示されていない。
以下、トラフィック分類に関する実験結果を説明する。トラフィック分類の有効性をテストするため、図5に示すように、1つのFTP送信元及びシンク(TCP使用)と、1つのCBR送信元及びシンク(UDP使用)とを含む簡単なシミュレーションシナリオを設定した。これらのフローは同じボトルネックリンクを通過する。FTP送信元〜チェックポイント間、CBR送信元〜チェックポイント間、宛先〜CBRシンク間、及び、宛先〜FTPシンク間のリンクパラメータは全て、帯域幅10Mb、遅延2msとする。チェックポイント〜宛先間のボトルネックリンクは、1Mb、10msに設定する。CBRレートは10Mbとする。チェックポイントでのトラフィック分類において、TCPが90%、UDPが10%である。シミュレーションの比較上、エントリーポイントがトラフィック分類を実行するか否かを除き、全て同じとする。FTPトラフィックのスループットを図6(a)及び図6(b)に示す。
図6(a)は、トラフィック分類方法を実行しない場合の、TCPフローに対するTCPグッドプット及びTCPスループット、並びにUDPスループットを示す。図6(a)及び図6(b)において、TCPトラフィックは0秒の時点から開始され、UDPトラフィックは1秒後に開始される。0〜1秒の間、TCPはリンク内で唯一のトラフィックであり、そのグッドプット及びスループットは最大値で0.1秒当たり12パケットに達する(ボトルネックリンクの帯域幅は1mb/秒、各パケットは1000*8=8000ビット、1mb*0.1/8000=12)。1.2秒以降、UDPトラフィックが合流し始め、使用可能な帯域幅を速やかに捕捉するので、TCPスループットは1.3〜1.8秒の間に1パケットまで減少し、1.9秒以降は枯渇してしまう。これに対して、トラフィック分類を行う場合、TCPスループットは1.9秒以降でも0.1秒当たり3パケットを保ち、UDPトラフィックは0.1秒当たり9パケット以下である。送信パケット総数は、図6(a)においては127、図6(b)においては234である(図6(b)においては比較のため1.9秒までのスループットしか示していない)。従って、TCPトラフィックのスループットはトラフィック分類によって70.8%増加する。UDPトラフィックは依然としてTCPより多くの割り当て分を獲得しているが、上述したように、これはTCPに輻輳制御メカニズムが組み込まれているためである。
以下、TCPフロー識別を説明する。トラフィックフロー識別の有効性をテストするため、図7に示すように、FTP送信元と攻撃発信元とを含むシミュレーションシナリオを設定した。これらのフローは同じボトルネックリンクを通過する。相違点として、一方のシミュレーションでは両フローからのパケットを受信するのに標準FTPシンクを使用し、もう一方では、本発明者らが開発した、TCPスマートシンクと呼ばれるTCPシンクを使用している。シミュレーション結果を図8(a)及び図8(b)に示す。
図8(a)は、FTPシンクを使用した場合の攻撃トラフィックのスループットを表し、図8(b)は、BTDの実施形態におけるTCPスマートシンクを使用した場合の攻撃トラフィックのスループットを示す。3.2秒の時点で、攻撃トラフィックのスループットは大幅に低下している。42.3秒後、攻撃トラフィックは完全にブロックされている。対して、背景技術のFTPシンクを受信者として使用した場合、送信者はその存続期間中最大スループットを保持することもある。当該結果により、BTDの実施形態におけるトラフィック識別手法の有効性が示される。
以上説明したように、BTDの実施形態は、トラフィック分類とトラフィック識別という2つの構成要素を備える。前者は非TCPトラフィックの量を低減するのに使用され、後者はプロアクティブテストを介して悪質なTCPフローを特定することができる。以下、BTDの実施形態の顕著な利点を列挙する。
・BTDはプロアクティブテストを介して攻撃フローを効果的且つ効率的に特定且つブロックすることができる。
・BTDは多数のDDoS攻撃パターンを抑制できる。
・BTDにおいては最小限の変更しか要求されない。
・BTDにはスケーラビリティやインセンティブ欠如等の問題がない。
シミュレーション及び上述の実験結果により、本発明の設計の有効性が証明された。更に、BTDの実施形態のその他の態様として以下が挙げられる。(1)ネットワーク状態を自動的に特定すること;(2)プロアクティブテストに合わせて使用される様々なパラメータを選択すること;及び(3)以下に限定はされないが、Linuxカーネル等のオペレーティングシステム環境においてフレームワークを実装することである。
以上をまとめると、BTDの実施形態は、まずトラフィック分類によって非TCPトラフィックの量を低減して、一般的なUDP及びICMPフラッド攻撃を軽減しようとする。TCPフローに対しては、挙動を観察することによりそれらの特性を区別しようとする。表2は、正常トラフィックを受け入れ、攻撃トラフィックを制限するために、BTDの実施形態のフレームワークに採用される方法を列挙したものである。
Figure 0004764930
以上、特定の実施形態のみが記載されているが、特許請求の範囲に記載の主題はその範囲を特定の実施形態又は実装に限定されないことが当然理解されよう。例えば、一実施形態は、例えばデバイス又はデバイスを組み合わせたものにおいて動作するよう実装されるような、ハードウェアにおけるものであってもよく、別の実施形態に関しては、ソフトウェアにおけるものであってもよい。同様に、ある実施形態はファームウェアにおいて、あるいは、例えばハードウェア、ソフトウェア、及び/又はファームウェアを任意に組み合わせたものとして実装されてもよい。同様に、一実施形態は1つ以上の物品、例えば1つ又は複数の記憶媒体から成っていてもよいが、特許請求の範囲に記載の主題は、その範囲をこの点において限定されない。例えば1つ以上のCD−ROM及び/又はディスクといった上記記憶媒体はそこに命令を記憶していてもよく、この命令が、例えばコンピュータシステム、コンピューティングプラットフォーム、又はその他のシステムといったシステムで実行された場合、特許請求の範囲に記載の主題に係る方法又は装置の一実施形態、例えば上述の実施形態の1つが実施されてもよい。
考えられる一例として、コンピューティングプラットフォームには、1つ以上の処理装置若しくはプロセッサ、1つ以上の入/出力デバイス(ディスプレイ、キーボード、及び/又はマウス等)、及び/又は1つ以上のメモリ(スタティックランダムアクセスメモリ、ダイナミックランダムアクセスメモリ、フラッシュメモリ、及び/又はハードドライブ等)、及びファイアウォール型機器の1つ以上のルータを実装するための装置又は方法が含まれてもよい。例えば、ディスプレイを用いて、1つ以上のクエリー(相関を持ったもの等)及び/又は1つ以上の木表現を表示してもよいが、ここでも、特許請求の範囲に記載の主題は、その範囲をこの例に限定されない。同様に、実施形態はシステムとして実装されてもよいし、或いは、コンピュータシステム及びコンピュータシステムに対するインターフェース(以下に限定されないが、ルータやファイアウォール等)、移動通信システム及び/又はその他の種類の通信システム、及びその他周知の電子システム等の構成要素を任意に組み合わせたものとして実装されてもよい。
先の記載には、特許請求の範囲に記載の主題の様々な態様が記載されている。特許請求の範囲に記載の主題が十分に理解されるように、説明上、特定の数値、システム、及び/又は構成を示した。しかしながら、上記の具体的な詳細通りでなくとも特許請求の範囲に記載の主題が実施されることは、本開示の恩恵を受ける当業者にとって明白であろう。その他、特許請求の範囲に記載の主題が不明確にならないよう、周知の特徴を省略及び/又は簡略化した場合もある。特定の特徴が本明細書に図示及び/又は記載されているが、多くの変形例、置換例、変更例、及び/又は均等物が当業者には想到されよう。従って、添付の特許請求の範囲は、そのような変形及び/又は変更の全てを、特許請求の範囲に記載の主題の趣旨に入るものとして包含するものであると理解されたい。
オン−オフモデルを使用して攻撃パケットを散発的に送信することにより低レートDoS攻撃を仕掛けるタイミングの一例を示す。 BTDフレームワークの一実施形態のフローチャート例を示す。 ファイアウォール又はエッジルータにおいて保護されたネットワーク又はシステムのエントリーポイントにおいて、如何にしてトラフィック分類が実行されるかを表す一例を示す。 BTDの実施形態におけるトラフィック識別方法のフローチャート例である。 1つのFTP送信元及びシンク(TCP使用)、並びに1つのCBR送信元及びシンク(UDP使用)を含むシミュレーションシナリオの一例を示す。 (a)は、トラフィック分類方法を実行しない場合の、TCPフローに対するTCPグッドプット及びTCPスループット、並びにUDPスループットの一例を示し、(b)は、トラフィック分類方法を実行する場合の、TCPフローに対するTCPグッドプット及びTCPスループット、並びにUDPスループットの一例を示す。 1つのFTP送信元及び攻撃発信元を含むシミュレーションシナリオにおけるトラフィック識別の有効性を表す実験結果の一例を示す。 (a)は、BTDの実施形態においてFTPシンクを用いた場合の攻撃トラフィックのスループットを表す実験結果の一例であり、(b)は、BTDの実施形態においてTCPスマートシンクを用いた場合の攻撃トラフィックのスループットを表す実験結果の一例である。

Claims (24)

  1. 第一入力パケットを検査して前記第一入力パケットが許可されたTCP接続に関連付けられているか否かを判定するステップと、
    前記第一入力パケットは許可されたTCP接続に関連付けられているとの判定に応じて、前記TCP接続に関連付けられたテスト確率に基づいて、前記TCP接続は攻撃フローを表すかまたは良性フローを表すかを判定するように前記TCP接続をテストすべきであるか否かを判定するステップと、
    前記TCP接続をテストすべきであるとの判定に応じて、前記TCP接続は攻撃フローを表すかまたは良性フローを表すかを判定するように前記TCP接続をテストするステップであって、
    前記TCP接続の送信元への前記入力パケットの確認応答の送信を遅延させるステップと、
    前記TCP接続に関連付けられた少なくとも1つの更なる入力パケットに基づいて、前記TCP接続の前記送信元が前記遅延に応じてその送信レートを調整するか否かを判定するステップとを含む、ステップと、
    前記TCP接続の前記送信元が前記遅延に応じてその送信レートを調整する場合、前記第一入力パケットを許可するステップと、
    を含む方法。
  2. 前記第一入力パケットは許可されたTCP接続に関連付けられていないとの判定に応じて、許可されたTCP接続の既存数が第一所定閾値より小さいか否かを判定するステップと、
    許可されたTCP接続の前記既存数が前記第一所定閾値より小さいとの判定に応じて、更なるTCP接続を許可しおよび前記第一入力パケットを許可するステップと、
    を更に含む、請求項1に記載の方法。
  3. 前記更なるTCP接続を許可するステップは、前記更なるTCP接続に関連付けられたテスト確率を1に初期化するステップを含む、請求項2に記載の方法。
  4. 各TCP接続に対して、前記各TCP接続の前記送信元が前記遅延に応じてその送信レートを下げる回数を、合格数として維持するステップと、前記各TCP接続の前記送信元が前記遅延に応じてその送信レートを下げない回数を、失敗数として維持するステップと、を更に含む、請求項1に記載の方法。
  5. 前記第一入力パケットが、その失敗数が第二所定閾値を超える許可されたTCP接続に関連付けられる場合、前記第一入力パケットを破棄するステップと、
    前記第一入力パケットが、その合格数が第三所定閾値を超える許可されたTCP接続に関連付けられる場合、前記第一入力パケットを許可するステップと、
    を更に含む、請求項4に記載の方法。
  6. 各TCP接続の前記テスト確率は1に初期化され、
    各TCP接続に対し窓ベースのフローレートを計算するステップと、
    前記各TCP接続の前記フローレートに応じて、前記各TCP接続の前記フローレートに基づいて、前記各TCP接続が高レート接続であるかまたは低レート接続であるかを判定するステップと、
    前記各TCP接続は高レート接続であるとの判定に応じて、前記各TCP接続に関連付けられた前記合格数に基づいて前記各TCP接続の前記テスト確率を調整するステップとを、
    更に含む、請求項4に記載の方法。
  7. 前記各TCP接続が低レート接続であるとの判定に応じて、前記各TCP接続の前記テスト確率を、TCP接続の総数および前記第三所定閾値の少なくとも1つに少なくとも部分的に基づいた値に設定するステップを更に含む、請求項6に記載の方法。
  8. 前記TCP接続のテスト間の待ち時間を計算するステップと、
    前記TCP接続をテストすべきであるとの判定に応じて、前記TCP接続の前記待ち時間が超えた場合にのみ前記遅延を実行し、そうでなければ前記第一入力パケットを許可するステップと、
    を更に含む、請求項1に記載の方法。
  9. 1つ以上の受信した入力パケットの各々のプロトコルを判定するように構成されたトラフィック分類を実行するステップと、
    前記入力パケットの可能なプロトコルについての所定の帯域幅割り当てに基づいて前記1つ以上の受信した入力パケットの非TCPパケットを許可するステップと、
    1つ以上の入力パケットがTCPパケットである場合、かつ、前記TCPパケットの前記所定の帯域幅割り当てにおいて十分な帯域幅がある場合、TCP接続が確立しているか否かを判定し、TCP接続が確立していない場合、レート制限、ハーフオープン接続における待ち時間短縮、又はバックログキューサイズのインクリメントのうち少なくとも1つを実行し、TCP接続が確立している場合、TCPパケットを前記第一入力パケットとして転送するステップを更に含む、請求項1に記載の方法。
  10. 前記トラフィック分類は、各入力パケットに対してパケット分類を判定するように前記入力パケットの少なくとも1つのインターネットプロトコル(IP)関連フィールドをチェックするステップを更に含む、請求項9に記載の方法。
  11. 前記入力パケットのパケット分類に基づいて確立されたトラフィックプロファイルに基づいて前記所定の帯域幅割り当てを設定するステップを更に含む、請求項10に記載の方法。
  12. 前記トラフィック分類は、ファイアウォール又はエッジルータで実装される、
    請求項11に記載の方法。
  13. プロセッサによって実行される場合、前記プロセッサに、
    第一入力パケットを検査して前記第一入力パケットが許可されたTCP接続に関連付けられているか否かを判定するステップと、
    前記第一入力パケットは許可されたTCP接続に関連付けられているとの判定に応じて、前記TCP接続に関連付けられたテスト確率に基づいて、前記TCP接続は攻撃フローを表すかまたは良性フローを表すかを判定するように前記TCP接続をテストすべきであるか否かを判定するステップと、
    前記TCP接続をテストすべきであるとの判定に応じて、前記TCP接続は攻撃フローを表すかまたは良性フローを表すかを判定するように前記TCP接続をテストするステップであって、
    前記TCP接続の送信元への前記入力パケットの確認応答の送信を遅延させるステップと、
    前記TCP接続に関連付けられた少なくとも1つの更なる入力パケットに基づいて、前記TCP接続の前記送信元が前記遅延に応じてその送信レートを調整するか否かを判定するステップとを含む、ステップと、
    前記TCP接続の前記送信元が前記遅延に応じてその送信レートを調整する場合、前記第一入力パケットを許可するステップと、
    を含むオペレーションを実行させるソフトウェアコードを含むコンピュータ可読記憶媒体。
  14. 前記オペレーションは、
    前記第一入力パケットは許可されたTCP接続に関連付けられていないとの判定に応じて、許可されたTCP接続の既存数が第一所定閾値より小さいか否かを判定するステップと、
    許可されたTCP接続の前記既存数が前記第一所定閾値より小さいとの判定に応じて、更なるTCP接続を許可しおよび前記第一入力パケットを許可するステップと、
    を更に含む、請求項13に記載のコンピュータ可読記憶媒体。
  15. 前記更なるTCP接続を許可するステップは、前記更なるTCP接続に関連付けられたテスト確率を1に初期化するステップを含む、請求項14に記載のコンピュータ可読記憶媒体。
  16. 前記オペレーションは、
    各TCP接続に対して、前記各TCP接続の前記送信元が前記遅延に応じてその送信レートを下げる回数を、合格数として維持するステップと、前記各TCP接続の前記送信元が前記遅延に応じてその送信レートを下げない回数を、失敗数として維持するステップと、を更に含む、請求項13に記載のコンピュータ可読記憶媒体。
  17. 前記オペレーションは、
    前記第一入力パケットが、その失敗数が第二所定閾値を超える許可されたTCP接続に関連付けられる場合、前記第一入力パケットを破棄するステップと、
    前記第一入力パケットが、その合格数が第三所定閾値を超える許可されたTCP接続に関連付けられる場合、前記第一入力パケットを許可するステップと、
    を更に含む、請求項16に記載のコンピュータ可読記憶媒体。
  18. 各TCP接続の前記テスト確率は1に初期化され、
    前記オペレーションは、
    各TCP接続に対し窓ベースのフローレートを計算するステップと、
    前記各TCP接続の前記フローレートに応じて、前記各TCP接続の前記フローレートに基づいて、前記各TCP接続が高レート接続であるかまたは低レート接続であるかを判定するステップと、
    前記各TCP接続は高レート接続であるとの判定に応じて、前記各TCP接続に関連付けられた前記合格数に基づいて前記各TCP接続の前記テスト確率を調整するステップとを、
    更に含む、請求項16に記載のコンピュータ可読記憶媒体。
  19. 前記オペレーションは、
    前記各TCP接続が低レート接続であるとの判定に応じて、前記各TCP接続の前記テスト確率を、TCP接続の総数および前記第三所定閾値の少なくとも1つに少なくとも部分的に基づいた値に設定するステップを更に含む、請求項18に記載のコンピュータ可読記憶媒体。
  20. 前記オペレーションは、
    前記TCP接続のテスト間の待ち時間を計算するステップと、
    前記TCP接続をテストすべきであるとの判定に応じて、前記TCP接続の前記待ち時間が超えた場合にのみ前記遅延を実行し、そうでなければ前記第一入力パケットを許可するステップと、
    を更に含む、請求項13に記載のコンピュータ可読記憶媒体。
  21. 前記オペレーションは、
    1つ以上の受信した入力パケットの各々のプロトコルを判定するように構成されたトラフィック分類を実行するステップと、
    前記入力パケットの可能なプロトコルについての所定の帯域幅割り当てに基づいて前記1つ以上の受信した入力パケットの非TCPパケットを許可するステップと、
    1つ以上の入力パケットがTCPパケットである場合、かつ、前記TCPパケットの前記所定の帯域幅割り当てにおいて十分な帯域幅がある場合、TCP接続が確立しているか否かを判定し、TCP接続が確立していない場合、レート制限、ハーフオープン接続における待ち時間短縮、又はバックログキューサイズのインクリメントのうち少なくとも1つを実行し、TCP接続が確立している場合、TCPパケットを前記第一入力パケットとして転送する、請求項13に記載のコンピュータ可読記憶媒体。
  22. 前記トラフィック分類は、各入力パケットに対してパケット分類を判定するように前記入力パケットの少なくとも1つのインターネットプロトコル(IP)関連フィールドをチェックするステップを更に含む、請求項21に記載のコンピュータ可読記憶媒体。
  23. 前記チェックされたフィールドによって、前記パケットがTCP、UDP、ICMP、及びその他のパケットのうちの1つとして分類されるか否かを判定する、請求項22に記載のコンピュータ可読記憶媒体。
  24. 前記オペレーションは、前記入力パケットのパケット分類に基づいて確立されたトラフィックプロファイルに基づいて前記所定の帯域幅割り当てを設定するステップを更に含む、請求項22に記載のコンピュータ可読記憶媒体。
JP2008557527A 2006-03-03 2007-03-05 分散サービス妨害(DDoS)攻撃防御のための、挙動ベースのトラフィック識別(BTD) Active JP4764930B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US77866206P 2006-03-03 2006-03-03
US60/778,662 2006-03-03
PCT/US2007/063296 WO2007103864A2 (en) 2006-03-03 2007-03-05 BEHAVIOR-BASED TRAFFIC DIFFERENTIATION (BTD) FOR DEFENDING AGAINST DISTRIBUTED DENIAL OF SERVICE(DDoS) ATTACKS

Publications (2)

Publication Number Publication Date
JP2009529254A JP2009529254A (ja) 2009-08-13
JP4764930B2 true JP4764930B2 (ja) 2011-09-07

Family

ID=38475761

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008557527A Active JP4764930B2 (ja) 2006-03-03 2007-03-05 分散サービス妨害(DDoS)攻撃防御のための、挙動ベースのトラフィック識別(BTD)

Country Status (5)

Country Link
US (1) US8091132B2 (ja)
EP (1) EP1999585A4 (ja)
JP (1) JP4764930B2 (ja)
CN (1) CN101529386B (ja)
WO (1) WO2007103864A2 (ja)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7434254B1 (en) * 2002-10-25 2008-10-07 Cisco Technology, Inc. Method and apparatus for automatic filter generation and maintenance
KR100639969B1 (ko) * 2004-12-02 2006-11-01 한국전자통신연구원 이상 트래픽 제어 장치 및 그 제어 방법
US7917299B2 (en) 2005-03-03 2011-03-29 Washington University Method and apparatus for performing similarity searching on a data stream with respect to a query string
US7969881B2 (en) * 2005-11-28 2011-06-28 New Jersey Institute Of Technology Providing proportionally fair bandwidth allocation in communication systems
US7702629B2 (en) 2005-12-02 2010-04-20 Exegy Incorporated Method and device for high performance regular expression pattern matching
US7921046B2 (en) 2006-06-19 2011-04-05 Exegy Incorporated High speed processing of financial information using FPGA devices
US8326819B2 (en) 2006-11-13 2012-12-04 Exegy Incorporated Method and system for high performance data metatagging and data indexing using coprocessors
US8286244B2 (en) * 2007-01-19 2012-10-09 Hewlett-Packard Development Company, L.P. Method and system for protecting a computer network against packet floods
US8644151B2 (en) * 2007-05-22 2014-02-04 Cisco Technology, Inc. Processing packet flows
US7904597B2 (en) 2008-01-23 2011-03-08 The Chinese University Of Hong Kong Systems and processes of identifying P2P applications based on behavioral signatures
US8374986B2 (en) 2008-05-15 2013-02-12 Exegy Incorporated Method and system for accelerated stream processing
US8413250B1 (en) 2008-06-05 2013-04-02 A9.Com, Inc. Systems and methods of classifying sessions
WO2010028680A1 (en) * 2008-09-09 2010-03-18 Nokia Siemens Networks Oy Application identification in mobile networks
JP5871619B2 (ja) 2008-12-15 2016-03-01 アイ・ピー・リザブワー・エル・エル・シー 金融市場深度データの高速処理のための方法および装置
FR2946820B1 (fr) * 2009-06-16 2012-05-11 Canon Kk Procede de transmission de donnees et dispositif associe.
US9053320B2 (en) * 2010-04-20 2015-06-09 Verisign, Inc Method of and apparatus for identifying requestors of machine-generated requests to resolve a textual identifier
KR101380096B1 (ko) 2010-08-13 2014-04-02 한국전자통신연구원 분산 서비스 거부 공격 대응 시스템 및 그 방법
KR101178570B1 (ko) 2010-10-28 2012-08-30 삼성에스디에스 주식회사 이더넷 환경에서 udp 데이터 전송의 공정성 확보장치 및 방법
WO2012079041A1 (en) 2010-12-09 2012-06-14 Exegy Incorporated Method and apparatus for managing orders in financial markets
CN102655493A (zh) * 2011-03-01 2012-09-05 国基电子(上海)有限公司 用户端设备及其防止攻击的方法
US9195805B1 (en) * 2011-12-08 2015-11-24 Amazon Technologies, Inc. Adaptive responses to trickle-type denial of service attacks
US9047243B2 (en) 2011-12-14 2015-06-02 Ip Reservoir, Llc Method and apparatus for low latency data distribution
US20130198805A1 (en) * 2012-01-24 2013-08-01 Matthew Strebe Methods and apparatus for managing network traffic
JP5870009B2 (ja) 2012-02-20 2016-02-24 アラクサラネットワークス株式会社 ネットワークシステム、ネットワーク中継方法及び装置
JP5701238B2 (ja) * 2012-02-29 2015-04-15 日本電信電話株式会社 通信装置及び通信方法
US9990393B2 (en) 2012-03-27 2018-06-05 Ip Reservoir, Llc Intelligent feed switch
US11436672B2 (en) 2012-03-27 2022-09-06 Exegy Incorporated Intelligent switch for processing financial market data
US10121196B2 (en) 2012-03-27 2018-11-06 Ip Reservoir, Llc Offload processing of data packets containing financial market data
US10650452B2 (en) 2012-03-27 2020-05-12 Ip Reservoir, Llc Offload processing of data packets
CA2887022C (en) 2012-10-23 2021-05-04 Ip Reservoir, Llc Method and apparatus for accelerated format translation of data in a delimited data format
US9633097B2 (en) 2012-10-23 2017-04-25 Ip Reservoir, Llc Method and apparatus for record pivoting to accelerate processing of data fields
US9633093B2 (en) 2012-10-23 2017-04-25 Ip Reservoir, Llc Method and apparatus for accelerated format translation of data in a delimited data format
CN103841088B (zh) * 2012-11-23 2016-12-21 香港游戏橘子数位科技股份有限公司 提供网络服务连线品质检测的方法
WO2014168524A1 (en) * 2013-04-08 2014-10-16 Telefonaktiebolaget L M Ericsson (Publ) Controlling establishment of multiple tcp connections
US8955138B1 (en) * 2013-07-11 2015-02-10 Symantec Corporation Systems and methods for reevaluating apparently benign behavior on computing devices
KR101419861B1 (ko) 2013-07-30 2014-07-16 (주) 시스메이트 가공된 하프 클로즈 순서에 따른 패킷을 사용한 세션 관리 및 세션 자원 소모형 디도스 공격 방어 장치 및 방법
WO2015164639A1 (en) 2014-04-23 2015-10-29 Ip Reservoir, Llc Method and apparatus for accelerated data translation
US9900342B2 (en) * 2014-07-23 2018-02-20 Cisco Technology, Inc. Behavioral white labeling
US9686312B2 (en) * 2014-07-23 2017-06-20 Cisco Technology, Inc. Verifying network attack detector effectiveness
US10021130B2 (en) * 2015-09-28 2018-07-10 Verizon Patent And Licensing Inc. Network state information correlation to detect anomalous conditions
US10942943B2 (en) 2015-10-29 2021-03-09 Ip Reservoir, Llc Dynamic field data translation to support high performance stream data processing
GB2547222A (en) * 2016-02-10 2017-08-16 Testplant Europe Ltd Method of, and apparatus for, testing computer hardware and software
GB2547220A (en) 2016-02-10 2017-08-16 Testplant Europe Ltd Method of, and apparatus for, testing computer hardware and software
US11218506B2 (en) * 2018-12-17 2022-01-04 Microsoft Technology Licensing, Llc Session maturity model with trusted sources
CN110177115A (zh) * 2019-06-10 2019-08-27 中国民航大学 基于多特征融合的LDoS攻击检测方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005073272A (ja) * 2003-08-25 2005-03-17 Lucent Technol Inc Tcpステートレス・ホグによるtcpサーバに対する分散サービス妨害攻撃を防御する方法および装置
JP2005229234A (ja) * 2004-02-12 2005-08-25 Nippon Telegr & Teleph Corp <Ntt> ネットワーク攻撃検出方法、ネットワーク攻撃元識別方法、ネットワーク装置、ネットワーク攻撃検出プログラムおよびネットワーク攻撃元識別プログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3603243B2 (ja) * 1997-09-02 2004-12-22 富士通株式会社 交換機の試験制御方法
US6215769B1 (en) * 1998-10-07 2001-04-10 Nokia Telecommunications, Inc. Enhanced acknowledgment pacing device and method for TCP connections
US6987732B2 (en) * 2000-12-15 2006-01-17 Tellabs San Jose, Inc. Apparatus and methods for scheduling packets in a broadband data stream
EP1294134B1 (en) * 2001-09-12 2005-01-12 Alcatel Method and apparatus for differentiating service in a data network
US7391740B2 (en) * 2003-04-17 2008-06-24 University Of Maryland Method for quantifying reponsiveness of flow aggregates to packet drops in a communication network
US6970426B1 (en) * 2003-05-14 2005-11-29 Extreme Networks Rate color marker
US8503294B2 (en) * 2003-07-11 2013-08-06 Nec Corporation Transport layer relay method, transport layer relay device, and program
US7463590B2 (en) * 2003-07-25 2008-12-09 Reflex Security, Inc. System and method for threat detection and response
US7992208B2 (en) * 2005-09-19 2011-08-02 University Of Maryland Detection of nonconforming network traffic flow aggregates for mitigating distributed denial of service attacks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005073272A (ja) * 2003-08-25 2005-03-17 Lucent Technol Inc Tcpステートレス・ホグによるtcpサーバに対する分散サービス妨害攻撃を防御する方法および装置
JP2005229234A (ja) * 2004-02-12 2005-08-25 Nippon Telegr & Teleph Corp <Ntt> ネットワーク攻撃検出方法、ネットワーク攻撃元識別方法、ネットワーク装置、ネットワーク攻撃検出プログラムおよびネットワーク攻撃元識別プログラム

Also Published As

Publication number Publication date
CN101529386A (zh) 2009-09-09
US8091132B2 (en) 2012-01-03
WO2007103864A2 (en) 2007-09-13
CN101529386B (zh) 2012-10-10
EP1999585A2 (en) 2008-12-10
US20070209068A1 (en) 2007-09-06
WO2007103864A3 (en) 2008-09-25
EP1999585A4 (en) 2012-01-25
JP2009529254A (ja) 2009-08-13

Similar Documents

Publication Publication Date Title
JP4764930B2 (ja) 分散サービス妨害(DDoS)攻撃防御のための、挙動ベースのトラフィック識別(BTD)
US8819821B2 (en) Proactive test-based differentiation method and system to mitigate low rate DoS attacks
Kargl et al. Protecting web servers from distributed denial of service attacks
Liu et al. To filter or to authorize: Network-layer DoS defense against multimillion-node botnets
Srivastava et al. A recent survey on DDoS attacks and defense mechanisms
US6973040B1 (en) Method of maintaining lists of network characteristics
US7818795B1 (en) Per-port protection against denial-of-service and distributed denial-of-service attacks
US20050198519A1 (en) Unauthorized access blocking apparatus, method, program and system
Mohammadi et al. SYN‐Guard: An effective counter for SYN flooding attack in software‐defined networking
US20170374097A1 (en) Denial-of-service (dos) mitigation based on health of protected network device
Kumarasamy et al. An active defense mechanism for TCP SYN flooding attacks
Kumar et al. Can microsoft's Service Pack2 (SP2) security software prevent SMURF attacks?
WO2007122495A2 (en) A framework for protecting resource-constrained network devices from denial-of-service attacks
Jhi et al. PWC: A proactive worm containment solution for enterprise networks
Kumar et al. Mitigation of TCP-SYN attacks with Microsoft's Windows XP Service Pack2 (SP2) software
Djalaliev et al. Sentinel: hardware-accelerated mitigation of bot-based DDoS attacks
Katabi et al. Botz-4-sale: Surviving organized DDoS attacks that mimic flash crowds
Kuldeep et al. Enhancing Network Security by implementing preventive mechanism using GNS3
David et al. Router based approach to mitigate DOS attacks on the wireless networks
Letourneau et al. Defeating Architectures for Low-Latency Services: The Case of L4S
Xia Selective Dropping of Rate Limiting Against Denial of Service Attacks
Park et al. Unified rate limiting in broadband access networks for defeating internet worms and DDoS attacks
Shishira et al. A Survey on Existing Detection and Mitigation Methods of Denial of Service Attacks
Ming A probabilistic drop scheme for mitigating SYN flooding attacks
Fan et al. Proactively defeating distributed denial of service attacks

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100520

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100528

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100528

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110322

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110613

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

Free format text: PAYMENT UNTIL: 20140617

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4764930

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250