JP6777615B2 - 対処装置、対処方法及びプログラム - Google Patents

対処装置、対処方法及びプログラム Download PDF

Info

Publication number
JP6777615B2
JP6777615B2 JP2017195736A JP2017195736A JP6777615B2 JP 6777615 B2 JP6777615 B2 JP 6777615B2 JP 2017195736 A JP2017195736 A JP 2017195736A JP 2017195736 A JP2017195736 A JP 2017195736A JP 6777615 B2 JP6777615 B2 JP 6777615B2
Authority
JP
Japan
Prior art keywords
coping
communication
amount
target
base
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
JP2017195736A
Other languages
English (en)
Other versions
JP2019071520A (ja
Inventor
浩明 前田
浩明 前田
小島 久史
久史 小島
末田 欣子
欣子 末田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2017195736A priority Critical patent/JP6777615B2/ja
Publication of JP2019071520A publication Critical patent/JP2019071520A/ja
Application granted granted Critical
Publication of JP6777615B2 publication Critical patent/JP6777615B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、対処装置、対処方法及びプログラムに関する。
近年、DDoS攻撃が大規模化しており、上流ISP(Internet Service Provider)のネットワーク帯域の枯渇や防御機能(例えば、非特許文献1に示すmitigation装置)のリソース限界により、標的となった組織単独での対処が困難な場合が存在する。このようなDDoS攻撃に対して、複数のAS(Autonomous System)のmitigation装置のリソースをシェアし、AS間リンクの輻輳を回避しつつ、各ASのmitigation装置のリソース使用率を平準化しながら、発生した攻撃に分担して対処することで、インターネット全体で対処可能な攻撃量を向上させる技術が提案されている(非特許文献2)。
Arbor Networks、"DDOS PROTECTION BY ARBOR NETWORKS APS"、[online]、インターネット<http://www.arbornetworks.com/ddos-protection-products/arbor-aps> 前田浩明他、"AS間リンク帯域を考慮したDDoS攻撃連携対処方式に関する一検討"、 電子情報通信学会2017年総合大会講演論文集、B-6-55、2017年3月 NTT America、"DDoS Mitigation Services Datasheet"、[online]、インターネット<http://www.us.ntt.com/content/dam/nttcom/us/pdf/brochure/ddos-mitigation-services.pdf>
Tier1 ISP等では、グローバルに複数のmitigation拠点を配備し、遅延・消費帯域等の観点から流入元に近い拠点のリソースを利用したDDoS攻撃対処が行われているが(非特許文献3)、このようなグローバル規模のASと連携する場合、既存技術(非特許文献2)によるAS間リンクの輻輳回避とmitigation装置のリソース負荷分散が正確に行えず、DDoS攻撃対処性能が劣化するという課題がある。
具体的には、既存技術では、各ASのmitigation装置のリソース総量をベースに、任意の標的AS宛通信に対する各ASのmitigation装置のリソース割り当て量(対処量)を調整するため、各AS内のmitigation装置のリソースを使い切れる場合はAS単位での最適な調整が実現できるが、複数のAS間リンクやmitigation拠点を保有するASでは、標的AS宛通信の入ってくるリンクによって利用可能なmitigation拠点(mitigation装置のリソース量)が限定されるため、AS内のリソースを使い切ることができず、正確なリソース調整ができない。例えば、或るASに2つの拠点x、yが存在し、それぞれ10Gbpsずつ利用可能なmitigation装置リソースがあり、拠点xの近くから流入した(拠点xで対処可能な)標的AS宛通信量が12Gbps、拠点yの近くから流入した(拠点yで対処可能な)標的AS宛通信量が3Gbpsの状況を想定すると、既存技術ではリソースの総和20Gbps分はこのASで対処可能として計算するが、もし、標的AS宛通信の総量(=15Gbps)分の対処が当該或るASに割り当てられた場合、標的AS宛通信の流入口の付近における拠点xのリソース不足で対処不能になる。
また、既存技術では、AS間のリンクを1つとみなして輻輳回避を行うが、特にグローバル規模のAS間は、複数のリンクで接続されており、或るAS間リンクで発生する輻輳を回避するためには、複数のリンク経由で下流ASに流入してくる標的AS宛通信の内、当該リンクに流入する標的AS宛通信を減らすように、上流側のASの適切な拠点で対処してもらう必要があるが、下流ASが標的AS毎にAS単位での対処量(例えば、AS1はAS2宛通信に対して、10Gbps分対処)を算出して上流ASに通知するだけのため、輻輳を回避するように対処してもらえるかが不明という課題もある。
本発明は、上記の点に鑑みてなされたものであって、特定の宛先の通信に関してAS間リンク帯域の輻輳の回避と各ASの拠点のリソース使用率の平準化とを実現可能とすることを目的とする。
そこで上記課題を解決するため、特定の宛先に対する通信に対処する拠点を含むAS(Autonomous System)ごとに設置される対処装置は、当該対処装置に対応する第1のASよりも前記通信に関して上流側の第2のASに対応する他の対処装置に対して、前記通信に対する対処を要求する要求部と、前記他の対処装置から、前記第2のASにおいて前記対処に利用される前記拠点ごとに、当該拠点に対応する前記通信の入口における通信量の和である引き込み可能な通信量と、前記第2のASにおける前記通信の出口リンクの輻輳を回避するために前記第2のASにおいて対処すべき前記出口リンクごとの最低量とを受信する受信部と、前記第2のASが前記対処を実施しなかった場合に前記第1のASにおいて前記対処に利用される前記拠点ごとに、当該拠点に対応する前記通信の入口における通信量の和である引き込み可能な通信量を取得する取得部と、前記各拠点単位の対処量が、前記各拠点についての前記引き込み可能な通信量以下であること、かつ、前記第1のASの各拠点及び前記第2のASの各拠点のリソース使用率が平準化されること、かつ、前記各出口リンク単位の前記第2のASにおける対処量が、当該出口リンクに対する前記最低量以上であることを制約条件とし、前記各拠点単位の対処量及び前記各出口リンク単位の前記第2のASにおける対処量を変数とする最適化問題を解くことで、前記各拠点単位の対処量及び前記各出口リンク単位の前記第2のASにおける対処量を算出する算出部と、を有する。
特定の宛先の通信に関してAS間リンク帯域の輻輳の回避と各ASの拠点のリソース使用率の平準化とを実現可能とすることができる。
本発明の実施の形態におけるネットワークの構成例を示す図である。 本発明の実施の形態における連携対処装置10を有するASの構成例を示す図である。 本発明の実施の形態における連携対処装置10のハードウェア構成例を示す図である。 本発明の実施の形態における連携対処装置10の機能構成例を示す図である。 本発明の実施の形態における各ASの連携対処装置10が実行する処理手順の一例を説明するためのシーケンス図である。 本発明の実施の形態における各ASの連携対処装置10が実行する処理手順の一例を説明するためのシーケンス図である。 標的IPアドレス情報テーブル131の構成例を示す図である。 対処状態管理テーブル132の構成例を示す図である。 連携先AS情報テーブル137の構成例を示す図である。 攻撃情報テーブル133の構成例を示す図である。 GW・拠点対応情報テーブル135の構成例を示す図である。 AS間リンク情報テーブル134の構成例を示す図である。 拠点情報テーブル136の構成例を示す図である。 攻撃検知メッセージ処理部112が実行する処理手順の一例を説明するためのフローチャートである。 対処要求メッセージ処理部113が実行する処理手順の一例を説明するためのフローチャートである。 対処応答メッセージ処理部114が実行する処理手順の一例を説明するためのフローチャートである。 調整要求メッセージ処理部115が実行する処理手順の一例を説明するためのフローチャートである。 リソース最適化処理の処理手順の一例を説明するためのフローチャートである。 更新要求メッセージ処理部116が実行する処理手順の一例を説明するためのフローチャートである。 輻輳対処メッセージ処理部117が実行する処理手順の一例を説明するためのフローチャートである。 対処終了要求メッセージ処理部118が実行する処理手順の一例を説明するためのフローチャートである。
本実施の形態では、DDoS攻撃情報の共有と各攻撃に対して各AS(Autonomous System)の防御機能のリソースをどれだけ割り当てるかを調整する役割を担う連携対処装置10を導入する。なお、各ASの連携対処装置10は、近隣の連携先ASの連携対処機能とのみ通信を行う分散型のアーキテクチャ上で動作する。
以下の(1)〜(4)により、AS間リンクの輻輳を回避しつつ、拠点単位でのmitigation装置40のリソース使用率の平準化を実現する。
(1)連携対処装置10を保有する各ASは、次の情報を保持
・拠点毎のmitigation装置40の最大リソース量と利用可能リソース量
・AS間リンクが複数ある場合は、リンク毎の利用可能帯域
・通信の流入する(入口)GW毎に、対処に利用可能な拠点情報
・各GWが接続する他ASのGWの情報
(2)任意の標的宛対処を依頼された際に、その標的宛対処に関わるASの連携対処装置10は、以下を取得(特定)又は計算する。
・標的宛通信の流入する入口GWと各入口GWを流れる標的宛通信量
・標的宛通信の流入する入口GWと他ASへの出口GW・出口リンクの対応情報
・各拠点に引き込み可能な標的宛通信量
・自ASでの対処を実施する前の状態を想定した際に、各出口のAS間リンクを流れる標的宛通信量(出口リンクに流入する標的宛通信量)と、そのAS間リンクの輻輳を回避するために、リンクへの流入前に自ASで対処すべき標的宛通信量の最低値(最低対処量)
(3)連携対処装置10は、標的AS番号や標的IPアドレスに加えて、「標的宛通信の流入する入口GWと各入口GWを流れる標的宛通信量、標的宛通信の流入する入口GWと他ASへの出口GW・出口リンク・利用可能な拠点の対応情報、各拠点に引き込み可能な標的宛通信量、出口リンクに流入する標的宛通信量とそのAS間リンクの輻輳を回避するための最低対処量、対処中の標的宛通信量」をメッセージに含めて、連携するAS間でやり取りし、上流ASのどの拠点で対処すれば下流ASのどの拠点リソースが負荷分散されるか、及びどのAS間リンクの輻輳を回避できるかを紐づけた上で、AS間リンクが輻輳しない範囲内で各拠点のmitigation装置40のリソース使用率を平準化する最適化問題を構築する。この最適化問題を解くことで、上流ASと下流ASの各拠点で対処する標的宛通信量を算出し、その値を各ASに共有する。
(4)この局所的なリソース調整を分散処理的に繰り返し実施することで、最終的に、インターネット全体で、AS間リンク輻輳の回避と各拠点単位でのmitigation装置40のリソース使用率の平準化を統一的に実現しつつ、発生した攻撃への対処が可能となる。
以下、図面に基づいて本発明の実施の形態を説明する。本実施の形態では、Autonomous System(以下、単に「AS」という。)間でのDDoS攻撃情報の共有及び或るASを標的とするDDoS攻撃に対して、各ASの防御機能のリソースをどれだけ割り当てるのかを調整する役割を担う連携対処装置10を開示する。また、連携対処装置10間のアーキテクチャとして、例えば、非特許文献2のアーキテクチャなど、近隣ASの連携対処装置10とのみ直接通信を行う分散型のアーキテクチャを適用することでスケーラビリティを向上させ、局所的な調整を繰り返すことで、インターネット全体で統一的なリソース割り当てを実現する。
攻撃の標的となったAS(以下、「標的AS」という。)が攻撃を検知した場合、まず、標的ASから他のASとの連携対処を開始し、各ASの連携対処装置10を介して、上流AS方向に標的IPアドレスを含む対処要求メッセージを伝搬し、要求を受信したASにおいて、随時、標的宛通信への対処とさらに上流ASへの対処要求の伝搬を繰り返していくことで、防御機能のリソースの許す限り、攻撃元に近いASでの攻撃対処を実現する。
次に、各ASの防御機能のリソース使用率を平準化するために、最上流のASから下流AS方向に、「標的AS番号、標的宛通信の流入する入口GWと各入口GWを流れる標的宛通信量、標的宛通信の流入する入口GWと他ASへの出口GW・出口リンク・利用可能な拠点の対応情報、各拠点に引き込み可能な標的宛通信量、出口リンクに流入する標的宛通信量とそのAS間リンクの輻輳を回避するための最低対処量、対処中の標的宛通信量」を含む調整要求メッセージを伝搬していき、調整要求メッセージを受信したAS(以下、「下流AS」という。)自身の情報と合わせて、下流ASとその連携先の上流ASとの間で、AS間リンクの輻輳を回避しつつ、各mitigation拠点のリソース使用率を平準化するための最適化問題を構築して解くことにより、各ASで対処する標的宛通信量を調整する。
なお、AS間リンクの輻輳回避は、各AS間リンクの輻輳を回避するための最低対処量を制約条件として、当該最低対処量以上になるように上流ASの対処する標的宛通信量を計算することで実現する。
分散型のアーキテクチャにより、上記の局所的なリソース割り当て量の調整を下流AS方向および上流AS方向に繰り返し行うことで、インターネット全体でAS間リンクの輻輳を回避しつつ、各拠点の防御機能のリソース使用率が平準化された統一的なリソース割り当てが実現される。
図1は、本発明の実施の形態におけるネットワークの構成例を示す図である。
本実施の形態では、ネットワーク(インターネットに相当)を構成する複数の組織ネットワーク(AS)が連携対処装置10(連携対処装置10−1〜10−4)を保有する状況を想定している。また、一例として、AS1(ISP網等)内のシステムが、AS3、4、5の加入者ネットワーク内に存在する攻撃者の端末(Bot等)からのDDoS攻撃の標的となった場合を想定し、AS1が、他のASとの間で、DDoS攻撃情報の共有と連携対処時のパラメータ調整(パラメータは、ある標的への攻撃に対して、各ASの防御機能のリソースをどれだけ割り当てて対処するかの量)等に必要な情報とを共有し、それらの情報を用いて、他ASとの間で対処パラメータを調整する方法を説明する。
図1に示されるように、任意数のAS(AS1〜AS5など)がネットワークに含まれ、これらのASが相互接続されることによって、インターネットを模したネットワークのネットワークトポロジが構成される。図1において、AS1は、連携対処装置10−1、mitigation拠点b1−1及びb1−2、GW1−1及び1−2、並びに標的システムt1を含む。AS2は、連携対処装置10−2、mitigation拠点b2−1及びb2−2、並びにGW2−1〜2−5を含む。AS3は、連携対処装置10−3、mitigation拠点b3、並びにGW3−1及び3−2を含む。AS4は、連携対処装置10−4、mitigation拠点b4、並びにGW4−1及び4−2を含む。AS5は、GW5−1及び5−2を含む。
連携対処装置10は、後述されるように、各AS間でDDoS攻撃情報等をやり取りし、やり取りした情報に基づき、DDoS攻撃に対処するためのパラメータを調整すると共に、他のASに対してDDoS攻撃の対処を要求する1以上のコンピュータである。
DDoS攻撃に対処するためのパラメータとは、例えば、AS2、AS3及びAS4で分担してある標的宛の攻撃に対処する場合、各ASで標的宛通信量を何Gbpsずつmitigation装置40に引き込んで対処するのかを示す量、フィルタリングする場合に各ASで何Gbpsまで標的宛通信を減らすのかを示す量(フィルタリングの閾値)などである。これらの対処パラメータは、各ASを流れる標的宛通信量や各ASが保有するmitigation装置40の容量(リソース量)、AS間リンクの利用可能帯域量などの情報に基づく計算や、AS間のリンク輻輳の検査・対処処理を通じて調整される。
AS1内の任意のシステムがDDoS攻撃の被害に遭っている場合、AS1は、連携対処装置10を保有する近隣のAS(AS1の場合、AS2。以降、「連携先AS」という。)の連携対処装置10に対して、自AS番号や標的システムt1のIPアドレス(標的システムt1が複数存在する場合は、IPアドレスのリスト)等のDDoS攻撃情報を含む、攻撃への対処要求メッセージを送信する。
連携先ASの連携対処装置10は、連携対処装置10−110−1から受信した情報、自ASの各GW等から取得したフロー等のトラヒック情報、BGP(Border Gateway Protocol)等の経路情報、自身の連携先AS情報に基づき、標的宛通信が自網内から対処要求メッセージの送信元AS(AS1)に、他の連携先ASを経由せずに流れているのかを示す情報の取得、標的宛通信への対処等を実施し、対処要求メッセージの送信元AS(AS1)に対して、取得した情報や対処状況等を応答する。連携先ASの連携対処装置10は、更に、標的宛通信が自網内から対処要求メッセージの送信元ASに流れている場合は、メッセージの送信元(AS1)を除く、他の連携先AS(AS2の場合は、AS3及びAS4)の連携対処装置10に、DDoS攻撃情報を含む対処要求メッセージを送信する。これを上流側AS方向に繰り返していくことで、攻撃元近くのASまでDDoS攻撃情報を含む対処要求メッセージが伝搬される。その後、最上流のASから下流AS方向に、拠点単位のmitigation装置40のリソース負荷分散に必要な情報及び調整要求メッセージを伝搬することで、徐々に拠点単位でのmitigation装置40のリソースの負荷分散が進んでいく。
ここで、各ASの連携対処装置10は、連携先ASの連携対処装置10との通信に必要な連携先ASの連携対処装置10のIPアドレス等の情報を予め保有していることを想定している。また、各ASの連携対処装置10に対する連携先ASの連携対処装置10に関する情報の設定は、本仕組みを各ASに導入する際などに、BGPの経路情報やインターネットのトポロジ情報に基づき行われることを想定している。なお、標的ASから連携対処を開始する(標的ASから他のASに攻撃情報や対処要求等を送信する)タイミングは任意である。例えば、自AS内のシステムを標的とする攻撃を検知した際に連携対処を開始する他、攻撃を検知した場合には、まず自AS内の防御機能のみで対処を行い、自AS内の防御機能のリソースやネットワーク帯域が逼迫した際に連携対処を開始することや、攻撃を検知してから一定時間毎等に連携対処を実施することも想定される。
mitigation拠点b1―1、b1−2、b2−1、b2−2、b3、b4(以下、それぞれを区別しない場合、単に「拠点」というは、1以上のmitigation装置40を含むデータセンタ等である。
mitigation装置40は、例えば、非特許文献1に記載される装置であってもよく、対処要求メッセージに含まれるDDoS攻撃情報等に基づき標的宛通信に対する対処を実施する。なお、DDoS攻撃に対処する技術としては、mitigation装置40のほかに、ルータ等の転送装置によるACL(Access Control List)等を利用した攻撃通信のフィルタリング、攻撃の標的宛通信の帯域制限(レートリミット等)等も想定され、本実施の形態は、これらの対処技術との組み合わせも可能である。後述の本実施の形態における動作手順では、mitigation装置40を利用して連携対処する場合の具体的な動作手順を説明する。
GW(ゲートウェイ)は、他ASや自AS内の加入者ネットワーク等との境界(エッジ)に位置するパケット転送装置を表す。なお、ここでいうパケット転送装置は、厳密にはパケットを転送する機能を持つ装置であればルータに限定されず、例えばレイヤ2スイッチ等であってもよい。
図2は、本発明の実施の形態における連携対処装置10を有するASの構成例を示す図である。図2では、AS1に着目して説明するが、他のASについても同様の構成が採用されてもよい。
図2において、AS1には、mitigation装置40、連携対処装置10、攻撃検知装置20、ネットワーク制御装置30、パケット転送装置及びGW等が設置される。
ここで、GWは、パケット転送装置と同等の装置であるが、特に他ASや自AS内の加入者ネットワーク等との境界に位置するものとして、他のパケット装置と区別して記載している。但し、以下における「パケット転送装置」には、GWも含まれる。
攻撃検知装置20は、各パケット転送装置から定期的にフロー情報(送受信IPアドレス、送受信ポート番号、プロトコル番号等の組からなるフロー毎の通信量等)を収集し、収集したフロー情報を分析することで特定の宛先へのDDoS攻撃の発生を検知する。
攻撃検知装置20は、また、攻撃検知時等の任意のタイミングで、自AS(図2ではAS1)の連携対処装置10に対して、標的システムt1のIPアドレスを含む攻撃検知メッセージを送信する。標的システムt1が複数存在する場合や標的システムt1が複数のIPアドレスを保有する場合には、複数の標的IPアドレスが攻撃検知メッセージに含まれる。なお、攻撃検知装置20は、例えば、非特許文献4に記載されるSAMURAI等によって実現されてもよい。SAMURAIについては、「水口孝則他,"トラフィック解析システムSAMURAIとサービス展開,"NTT技術ジャーナル,2008.7,http://www.ntt.co.jp/journal/0807/files/jn200807016.pdf」等が参考とされてもよい。
攻撃検知装置20は、更に、DDoS攻撃が発生した際、又は任意のタイミングで、各GWやパケット転送装置を流れる標的のIPアドレス宛通信量、各拠点のmitigation装置40の最大リソース量、各拠点のmitigation装置40の利用可能なリソース量、隣接ASとの間のリンク(AS間リンク)の利用可能帯域量等を測定し、任意のテーブルに格納すると共に、自ASの連携対処装置10に通知する機能を有する。
mitigation装置40は、非特許文献1に説明される装置のように、DDoS攻撃対処に特化した装置であり、ある宛先に対する通信の中から、攻撃通信と正常通信とを区別して、攻撃通信のみを遮断するといった対処を行うことができる。前述の通り、DDoS攻撃対処の手段はこの他にも想定できるが、本実施の形態では、DDoS攻撃対処のための手段の一例として、ASがmitigation装置40を保有する場合について記載している。
ネットワーク制御装置30は、パケット転送装置を制御する機能を有する。ネットワーク制御装置30は、例えば、SDN(Software-Defined Networking)コントローラであってもよい。ネットワーク制御装置30は、また、連携対処装置10と通信し、連携対処装置10から通知された情報(標的のIPアドレスの一覧、対処方式、対処のためのパラメータ等)に基づき、パケット転送装置を制御することで、mitigation装置40に標的宛の通信を迂回させたり、各パケット転送装置にフィルタリングを設定したりといった制御や、適用中のトラヒック制御等を終了するための制御を行う。
mitigation装置40を利用して対処する場合の具体例を説明すると、ネットワーク制御装置30は、BGP(Border Gateway Protocol)又はOpenFlow等を利用し、各パケット転送装置が保有する標的宛パケットの転送に関わるルーティング情報を一時的に書き換える(転送先をmitigation装置40のIPアドレスに変更する)ことで、標的宛パケットのみをmitigation装置40に迂回させて検査及び対処することができる。
連携対処装置10は、ネットワーク制御装置30と通信し、標的のIPアドレスのリストを含むDDoS攻撃情報、DDoS攻撃の対処方式(例えば、mitigation装置40を利用)、対処する通信量(mitigation装置40に引き込む標的宛通信量)等をネットワーク制御装置30に通知する。連携対処装置10は、また、攻撃検知装置20と通信し、各GWやルータを流れる標的のIPアドレス宛の通信量、各拠点のmitigation装置40の最大リソース量や利用可能なリソース量、AS間リンクの利用可能帯域量等を、攻撃検知装置20から取得する。
連携対処装置10は、また、攻撃検知メッセージを受信した場合、攻撃検知メッセージに含まれる標的IPアドレスを標的IPアドレス情報テーブル131(図7)に格納する。
連携対処装置10は、更に、他のASの連携対処装置10と通信し、DDoS攻撃情報(標的ASを識別可能な番号(例えば、AS番号)、標的IPアドレスの一覧等)や、連携対処に必要な情報(各ASにおける標的宛通信の流入する入口GWと各入口GWを流れる標的宛通信量、標的宛通信の流入する入口GWと他ASへの出口GW・出口リンク・利用可能な拠点の対応情報、各拠点に引き込み可能な標的宛通信量、出口リンクに流入する標的宛通信量とそのAS間リンクの輻輳を回避するための最低対処量、対処中の標的宛通信量といった対処パラメータ等)等をやり取りする。
ここで、DDoS攻撃情報は、前記情報のみに限定されず、連携して対処する際のやり方に応じて、攻撃タイプ、攻撃元のIPアドレス情報、mitigation装置40で検査後のパケットを元のASまで転送するためのトンネル情報等を含むものであってもよい。また、連携対処装置10は、他のASの連携対処装置10との間でAS間のリンク輻輳の発生の有無を検査するためのパケットをやり取りし、平常時のRTT(Round Trip Time)からの遅延の増大やパケットのドロップの有無等に基づき、輻輳発生を検知する機能を有する。
図3は、本発明の実施の形態における連携対処装置10のハードウェア構成例を示す図である。図3の連携対処装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。
連携対処装置10での処理を実現するプログラムは、CD−ROM(Compact Disk-Read Only Memory)、DVD(Digital Versatile Disk)、フラッシュメモリ等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って連携対処装置10に係る各種機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
但し、連携対処装置10は、上述したハードウェア構成に限定されるものでなく、他の何れか適切なハードウェア構成により実現されてもよい。なお、本実施例で示す構成は一例であり、例えば、連携対処装置10が、攻撃検知装置20やネットワーク制御装置30を含んでもよい。
図4は、本発明の実施の形態における連携対処装置10の機能構成例を示す図である。図4において、連携対処装置10は、処理部11及び通信部12を有する。これら各部は、連携対処装置10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。連携対処装置10は、また、記憶部13を利用する。記憶部13は、例えば、補助記憶装置102、又は連携対処装置10にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
処理部11は、メッセージ受付部111、攻撃検知メッセージ処理部112、対処要求メッセージ処理部113、対処応答メッセージ処理部114、調整要求メッセージ処理部115、更新要求メッセージ処理部116、輻輳対処メッセージ処理部117、対処終了要求メッセージ処理部118、輻輳検査部119、パラメータ調整部120、攻撃対処設定部121及び対処終了判断部122等を含む。
通信部12は、他のASの連携対処装置10、自ASの攻撃検知装置20及び自ASのネットワーク制御装置30と通信する。また、通信部12は、パケット転送装置やmitigation装置40から直接情報を取得したり、制御対象の装置とも通信したりする。
記憶部13は、自AS及び連携先ASのDDoS攻撃対処に関する情報を記憶する。図4において、記憶部13は、標的IPアドレス情報テーブル131、対処状態管理テーブル132、攻撃情報テーブル133、AS間リンク情報テーブル134、GW・拠点対応情報テーブル135、拠点情報テーブル136及び連携先AS情報テーブル137等を記憶する。
まず、全体的な処理の流れについて説明する。図5及び図6は、本発明の実施の形態における各ASの連携対処装置10が実行する処理手順の一例を説明するためのシーケンス図である。当該シーケンス図が示すロジックでは、複数箇所が同時に攻撃される場合にも対処不能にならないように、可能な限りAS全体で各拠点のmitigation装置40の使用率が均一になるように、かつ、AS間リンクの輻輳を回避するように、各拠点で処理する通信量(攻撃通信+正常通信)を調整しながら対処が実施される。
ここでは、下流ASが、上流ASのmitigation装置40で検査済みのパケット(すなわち、攻撃パケットではない標的宛てパケット)と未検査のパケット(すなわち、攻撃パケットであるか否かが不明な標的宛てパケット)とを区別可能であることを前提とし、各ASでは、標的宛かつ未検査のパケットのみを対象に、指定された通信量分をmitigation装置40に引き込んで対処する。
なお、検査済みのパケットと未検査のパケットとを区別可能にする方法としては、例えば、OpenFlow等を利用して、上流ASにおいて、mitigation装置40で検査済みの標的宛パケットの宛先IPアドレスを、標的AS内の平常時は使用していない任意のIPアドレスに書き換え、標的ASに到達後に、元のIPアドレスに戻すといった方法や、GRE(Generic Routing Encapsulation)等のトンネリング技術を利用して、標的ASの任意のルータ等までカプセル化して転送するといった方法が考えられるが、これらの方法に限定されない(どちらの方法でも、上流ASのmitigation装置40で検査済みの場合は、途中のASでは、標的とは異なる宛先IPアドレスのパケットに見えるため、mitigation装置40への二重引き込みを回避できる)。この場合、標的ASの連携対処装置10と対処を実施するASの連携対処装置10との間で、書き換えに利用するIPアドレス情報、トンネルの始点、終点となるノードのIPアドレスを追加で共有する必要があるが、例えば、対処要求メッセージや調整要求メッセージに含めて共有することが考えられる。
図5及び図6では、AS1の攻撃検知装置20による、AS1の標的システムt1への攻撃の検知をトリガーとして、自動的にAS間での連携対処が行われる際の処理手順を説明する。ここで、各ASの連携対処装置10は、攻撃検知装置20や他のASの連携対処装置10からのメッセージを常に待ち受け、メッセージを受信した際には、当該メッセージに対応した処理を実施する。また、連携対処装置10は、あるメッセージの処理中に他のメッセージを受信した場合は、受信したメッセージをキューに貯めていき、最も古いメッセージから1つずつ処理を実施する。
また、図5及び図6では、AS3、AS4、AS5内の端末が攻撃元となり、1つのAS(AS1)が標的となっている場合について説明しているが、複数のASが同時に攻撃される場合にも、それぞれの攻撃に並列で対処することができる。さらに、連携対処装置10は、他の連携対処装置10にメッセージを送信する際に、非同期で動作する(すなわち、送信したメッセージに対する応答を待たずに他の処理を実行する)。
ステップS101において、連携対処装置10−1は、AS1の攻撃検知装置20からの攻撃検知メッセージを受信すると、AS1の標的IPアドレス情報テーブル131に、自身の標的AS番号と当該攻撃検知メッセージに含まれる標的IPアドレスとを対応付けて登録する。
図7は、標的IPアドレス情報テーブル131の構成例を示す図である。標的IPアドレス情報テーブル131は、標的となっているシステム(標的システムt1)のIPアドレスを管理するためのテーブルである。図7において、標的IPアドレス情報テーブル131には、「標的AS番号」ごとに、1以上の「標的IPアドレス」が対応付けられて記憶される。
「標的AS番号」は、検知されたDDos攻撃の被害に遭っているASを一意に識別可能な情報(AS番号)である。「標的IPアドレス」は、「標的AS番号」に係るASにおける標的システムt1のIPアドレスである。自ASにおける「標的IPアドレス」の値は、新規のIPアドレス宛攻撃の検知の都度、または、一定時間毎等の任意のタイミングで、攻撃検知装置20から通知され、記憶される。また、他ASの標的AS番号に対応する「標的IPアドレス」は、他ASを標的とする攻撃対処において、他ASの連携対処装置10からの対処要求メッセージに含めて通知され、対処要求メッセージの受信時の処理の中で、連携対処装置10によって登録される。なお、図7は、AS1(連携対処装置10−1)における標的IPアドレス情報テーブル131の内容を示す。
続いて、連携対処装置10−1は、対処状態管理テーブル132に、自ASを標的とする攻撃に対応するレコードを生成する(S102)。
図8は、対処状態管理テーブル132の構成例を示す図である。対処状態管理テーブル132は、現在対処中の攻撃の標的AS毎に、その対処に関わる各ASの対処ステータスを管理するためのテーブルである。図8において、対処状態管理テーブル132は、「標的AS番号」、「要求元(下流=親)AS番号」、及び「対処ステータス」等の項目を含む。
「標的AS番号」は、標的ASのAS番号である。「要求元(下流=親)AS番号」は、対処要求メッセージの直接の送信元ASのAS番号である。
「対処ステータス」は、「標的AS番号」に係るASに対する攻撃に関する「自ASに関する情報」及び「連携先(上流=子)に関する情報」等を含む。「自ASに関する情報」は、当該対処状態管理テーブル132を連携対処装置10が属するASのAS番号、対処方式、状態及び最上流フラグ等を含む。「連携先(上流=子)に関する情報」は、連携先の連携対処装置10が属するASの「AS番号」、「対処方式」及び「状態」等を含む。なお、「連携先(上流=子)に関する情報」は、連携先ASの個数分存在する。「対処方式」は、実施中の対処方式である。「状態」は、対処に関する状態である。「最上流フラグ」は、標的AS宛通信対処の最上流ASかどうかを表すフラグである。なお、図8は、便宜上、連携対処装置10−2−2における対処状態管理テーブル132の内容を示す。
ステップS102では、「標的AS番号」がAS1のAS番号であるレコードが生成される。
続いて、連携対処装置10−1は、AS1のネットワーク制御装置30に対して、標的IPアドレスリスト(図7の「標的AS番号」が「AS1」であるレコードの内容)を通知し、自AS内のmitigation装置40を用いた対処を適用する(上流で未検査の標的宛通信を全てmitigation装置40に引き込んで対処するように設定)(S103)。この際、連携対処装置10−1は、対処状態管理テーブル132に対してステップS102において生成したレコードの「自ASに関する情報」に値を登録する。具体的には、「AS番号」には、AS1のAS番号が登録される。対処方式には、対処した方式が登録される。状態には、「対処中」が登録される。「最上流フラグ」は、このタイミングでは値は登録されない。
続いて、連携対処装置10−1は、連携先AS情報テーブル137を参照することで特定される、連携先AS(AS2)の連携対処装置10−2に対して、標的AS番号(AS1)、標的IPアドレスリスト、自身のAS番号(AS1)を含む対処要求メッセージを送信する(S104)。
図9は、連携先AS情報テーブル137の構成例を示す図である。連携先AS情報テーブル137、自ASにおいて、直接の通信先となる連携先ASに関する情報を管理するためのテーブルである。図9において、連携先AS情報テーブル137には、連携先ASごとに、「連携先AS番号」、「隣接フラグ」、「IPアドレス:ポート番号」及び「拠点情報」等の項目を含む。
「連携先AS番号」は、連携先ASのAS番号である。「隣接フラグ」は、当該連携先ASが隣接ASか否かを示すフラグである。なお、連携対処装置10を有さないASを跨いで二つのASが連携する場合(例えば、仮に、AS5の上流に、連携対処装置10を有するAS6が存在する場合、AS2は、AS5を跨いでAS6と連携する。)、当該二つのASの一方にとって他方は連携先では有るが、隣接はしない。「IPアドレス:ポート番号」は、当該連携先ASの連携対処装置10のIPアドレス及びポート番号である。
「拠点情報」は、連携先ASが保有する拠点ごとに「拠点番号」、「最大リソース量」、「利用可能リソース量」等の項目を含む。「拠点番号」は、拠点を一意に識別可能な情報(拠点番号)である。本実施の形態では、図1における各拠点の参照番号が、拠点番号とされる。「最大リソース量」は、当該拠点におけるmitigation装置40の最大リソース量である。「利用可能リソース量」は、当該mitigation装置40において利用可能なリソース量である。なお、図9は、連携対処装置10−1における連携先AS情報テーブル137の内容を示す。
なお、連携先ASの連携対処装置10との通信形態によっては、連携対処装置10のMACアドレスやポート番号等の他の情報の登録も想定される。「IPアドレス:ポート番号」、「隣接フラグ」の取得方法は任意だが、例えば、本システムを各ASに導入する際に、システムの運用者間で共有し、本テーブルに格納すること等が想定される。また、「拠点番号」、「最大リソース量」、「利用可能リソース量」は、攻撃への連携対処の手順において、他ASの連携対処装置10から通知された情報に基づき更新される。
続いて、対処要求メッセージを受信した連携対処装置10−2は、当該対処要求メッセージに含まれる各IPアドレス宛の通信についてAS2における通信量を取得し、当該通信が自ASからAS1方向に流れているかを判定する(S105)。例えば、AS2の各GW等から定期的に収集したフロー情報の中から、宛先が標的IPアドレスリストに含まれるものを抽出することで、斯かる判定が実行されてもよい。
AS2からAS1方向に当該通信が流れている場合、連携対処装置10−2は、受信した対処要求メッセージに含まれる標的AS番号(AS1)と、当該対処要求メッセージの送信元のAS番号(AS1)とを含むレコードを、自身の対処状態管理テーブル132(図8)に登録する(S106)。すなわち、当該対処要求メッセージに含まれる標的AS番号を「標的AS番号」とし、「要求元(下流=親)AS番号」を当該対処要求メッセージの送信元のAS番号とするレコード(以下、「対象対処状態レコード」という。)が対処状態管理テーブル132に登録される。また、当該対処要求メッセージに含まれる標的AS番号及び標的IPアドレスリストが、連携対処装置10−2の標的IPアドレス情報テーブル131(図7)に対応付けられて登録される。
続いて、連携対処装置10−2は、AS2のネットワーク制御装置30に対して、標的IPアドレスリストを通知し、AS2内のmitigation装置40を用いた対処を適用する(上流で未検査の標的宛通信をリソースの許す限りmitigation装置40に引き込んで対処するように設定する。)(S107)。この際、連携対処装置10−2は、対処状態管理テーブル132の対象対処状態レコードの「自ASに関する情報」に値を登録する。
続いて、連携対処装置10−2は、標的AS番号(AS1)、自身のAS番号(AS2)、Status=対処中を含む対処応答メッセージを、対処要求メッセージの送信元である連携対処装置10−1に送信する(S108)。なお、本実施の形態では、対処方式として、mitigation装置40への引き込みが既定であるとする。したがって、対処応答メッセージに対処方式が含まれなくても、対処応答メッセージの受信先では、対処方式が既知であるとする。但し、対処方式が動的に決定される場合には、対処応答メッセージに対処方式が含まれてもよい。
続いて、連携対処装置10−2は、AS2の各GW等から収集したフロー情報に基づき、他ASから自ASへの標的宛通信の流入の有無を判定し、他ASからAS2へのAS1宛攻撃の流入が有る場合には、AS2の対処状態管理テーブル132(図8)の対象対処状態レコードの「自ASに関する情報」の「最上流フラグ」に「False」を設定する(S109)。
続いて、連携対処装置10−2は、対処要求メッセージの送信元(AS1)を除く連携先AS(AS3、AS4)の連携対処装置10に、標的AS番号(AS1)、標的IPアドレスリスト、自身のAS番号(AS2)を含む対処要求メッセージを送信する(S110)。ここでは、通信の流入する隣接AS毎に、どのASを連携先にするかの対応関係を予め設定しておき、どの隣接ASから標的宛通信が流入しているかを調査して対応する連携先にのみメッセージを送信することで、AS間でやり取りの必要なメッセージ数を削減しても良い。
一方、連携対処装置10−2からの対処応答メッセージを受信した連携対処装置10−1は、自身の対処状態管理テーブル132(図8)の「標的AS番号」が「AS1」であるレコードの「連携先(上流=子)ASに関する情報」に当該対処応答メッセージに含まれる情報を登録する(S111)。すなわち、当該対処応答メッセージに含まれるAS2のAS番号が「連携先(上流=子)ASに関する情報」の「AS番号」に登録され、「状態」に「対処中」が登録される。
また、連携対処装置10−3は、連携対処装置10−2からの対処要求メッセージを受信すると、当該対処要求メッセージに含まれる各IPアドレス宛の通信についてAS3における通信量を取得し、当該通信が自ASからAS2方向に流れているかを判定する(S112)。
AS3からAS2方向に当該通信が流れている場合、連携対処装置10−3は、受信した対処要求メッセージに含まれる標的AS番号(AS1)と、当該対処要求メッセージの送信元のAS番号(AS2)とを含むレコードを自身の対処状態管理テーブル132(図8)に登録する(S113)。すなわち、当該対処要求メッセージに含まれる標的AS番号を「標的AS番号」とし、「要求元(下流=親)AS番号」を当該対処要求メッセージの送信元のAS番号とするレコード(以下、「対象対処状態レコード」という。)が対処状態管理テーブル132に登録される。また、当該対処要求メッセージに含まれる標的AS番号及び標的IPアドレスリストが、連携対処装置10−3の標的IPアドレス情報テーブル131(図7)に対応付けられて登録される。
続いて、連携対処装置10−3は、AS3のネットワーク制御装置30に対して、標的IPアドレスリストを通知し、AS3内のmitigation装置40を用いた対処を適用する(上流で未検査の標的宛通信をリソースの許す限りmitigation装置40に引き込んで対処するように設定する。)(S114)。この際、連携対処装置10−3は、対処状態管理テーブル132の対象対処状態レコードの「自ASに関する情報」に値を登録する。
続いて、連携対処装置10−3は、標的AS番号(AS1)、自身のAS番号(AS3)、Status=対処中を含む対処応答メッセージを、対処要求メッセージの送信元である連携対処装置10−2に送信する(S115)。
続いて、連携対処装置10−3は、AS3の各GW等から収集したフロー情報に基づき、他ASから自ASへの標的宛通信の流入の有無を判定し、他ASからAS3へのAS1宛攻撃の流入が無い場合には、AS3の対処状態管理テーブル132(図8)の対象対処状態レコードの「自ASに関する情報」の「最上流フラグ」に「True」を設定する(S116)。
続いて、連携対処装置10−3は、自身が最上流であることから、対処終了判断部122を定期的に呼び出すタイマを設定し(S117)、以下の処理(S118−1〜S118−4)により、リソース最適化に必要な情報を取得する(S118)。
ステップS118−1において、連携対処装置10−3は、AS3の各GWから収集したフロー情報と標的IPアドレスリストとに基づき、標的IPアドレス宛通信の流入するGW番号を取得すると共に、GWごとに、当該GWを流れる標的AS宛通信量(標的IPアドレスリストに含まれる各IPアドレス宛通信量を合算した値)を算出し、取得結果及び算出結果を攻撃情報テーブル133に登録する。
図10は、攻撃情報テーブル133の構成例を示す図である。攻撃情報テーブル133は、自AS及び連携先ASで対処中の攻撃に関する情報を管理するためのテーブルであり、標的ASと対処中の連携先ASとの組ごとにレコードが記憶される。図10において、攻撃情報テーブル133は、「標的AS番号」、「AS番号」、「標的宛通信の流入する入口GW情報」、「標的宛通信の流入する出口GW・リンク情報」、「標的宛通信を引き込み可能な拠点情報」等の項目を有する。「AS番号」は、対処中の連携先ASのAS番号である。
「標的宛通信の流入する入口GW情報」は、「AS番号」に係るASにおける、標的宛通信の入口GWごとに、「入口GW番号」、「入口GWを流れる標的宛通信量」、「入口GW単位の対処中の量」、「対応する連携AS番号」、「対応する連携先ASの出口GW番号」等の項目を含む。「入口GW番号」、は、「AS番号」に係るASにおいて、標的宛通信の入口GWを一意に識別可能な情報(GW番号)である。本実施の形態では、図1における各GWの参照番号が、GW番号とされる。「入口GWを流れる標的宛通信量」は、当該入口GWを流れる標的宛通信量である。「入口GW単位の対処中の量」は、「入口GWを流れる標的宛通信量」のうち、当該入口GWの存在するASにおいて対処中の通信量である。「対応する連携AS番号」は、当該入口GWの上流に位置する連携先ASのAS番号である。「対応する連携先ASの出口GW番号」は、「対応する連携AS番号」に係る連携先ASにおいて当該入口GWに対応する出口GWのGW番号である。
「標的宛通信の流入する出口GW・リンク情報」は、「AS番号」に係るASにおける、標的宛通信の出口GW及び出口リンクごとに、「出口GW番号」、「出口リンク番号」、「出口リンクを流れる標的宛通信量」、「出口リンク単位の対処中の量」等の項目を含む。「出口GW番号」は、各入口GWから流入した標的宛通信を自ASで対処しない場合に他ASに流出する際の出口となるGW(出口GW)のGW番号である。「出口リンク番号」は、「出口GW番号」に係る出口GWにおいて、標的宛通信が流出するリンクを一意に識別可能な情報である。「出口リンクを流れる標的宛通信量」は、各入口GWから流入した標的宛通信を自ASで対処しない場合に「出口リンク番号」に係るリンク(出口リンク)から流出する標的宛通信量である。「出口リンクに流入する標的宛通信の最低対処量」は、当該出口リンクを流れる標的宛通信量のうち、当該出口リンクの輻輳を回避するために、当該出口GWを保有するASで対処すべき最低の通信量である。「出口リンク単位の対処中の量」は、当該出口リンクに流入する標的宛通信量の流入元の入口GWから流入した標的宛通信のうち、当該出口GWを保有するASで対処中の通信量である。例えば、図1において、GW2−4には、GW2−1及びGW2−2から流入した標的宛通信が流入する。したがって、GW2−4についての「出口リンク単位の対処中の量」は、GW2−1及びGW2−2からの流入した標的宛通信量のうち、AS2において対処中の通信量である。
「標的宛通信を引き込み可能な拠点情報」は、「拠点番号」、「拠点に引き込み可能な標的宛通信量」、「拠点単位の対処中の量」等の項目を含む。「拠点番号」は、「入口GW番号」に係る入口GWから流入する標的宛通信に対応する(当該標的宛通信に対する対処を行う)拠点の拠点番号である。「拠点に引き込み可能な標的宛通信量」は「入口GW番号」に係る入口GWから当該拠点に引き込み可能な標的宛通信量である。「拠点単位の対処中の量」は、当該拠点に引き込み可能な標的宛通信量のうち、当該拠点で対処中の通信量である。
攻撃情報テーブル133の各情報は、各種メッセージ受信時の処理の中で、連携対処装置10によって登録される。なお、図10には、連携対処装置10−2における攻撃情報テーブル133の内容の例が示されている。
S118−1では、攻撃情報テーブル133における「標的AS番号」が「AS1」であり、かつ「AS番号」が自身(AS3)であるレコードに対して、AS3における標的AS宛て通信の入口GWごとに、「標的宛通信量の流入する入口GW情報」の「入口GW番号」、「入口GWを流れる標的宛通信量」の値を含むレコードが登録される。なお、GWは、他ASとの境界に位置するエッジルータだけでなく、自ASの管理する加入者ネットワークとの境界に位置するエッジルータも含み、自AS内を発信元とする通信のフロー情報を入口で取得することを想定している。
ステップS118−2において、連携対処装置10−3は、自AS内のルーティング情報等(ルータ等のルーティングテーブルやBGP経路情報等)に基づき、前述の各入口GW(AS3の場合はGW3−1)から流入した標的AS宛通信が、他ASに流れる際の出口となるGW番号(AS3の場合はGW3−2)とリンク番号とを取得する。また、連携対処装置10−3は、GW・拠点対応情報テーブル135に基づき、各GWから流入した標的宛通信を引き込み可能な拠点番号(AS3の場合は拠点b3)を取得し、攻撃情報テーブル133における各入口GWのレコードの「標的宛通信の流入する出口GW・リンク情報」の対応する「出口GW番号」、「出口リンク番号」と、「標的宛通信を引き込み可能な拠点情報」の対応する「拠点番号」に取得した値を登録する。
図11は、GW・拠点対応情報テーブル135の構成例を示す図である。GW・拠点対応情報テーブル135は、各ASにおいて、各GWから流入した通信を引き込み可能な拠点情報を管理するためのテーブルである。図11において、GW・拠点対応情報テーブル135は、「入口GW番号」及び「拠点番号」等の項目を有する。「入口GW番号」は、通信の入口となるGWのGW番号である。「拠点番号」は、「入口GW番号」に係るGWから流入した通信を引き込み可能な拠点の拠点番号である。これらの情報は、GWや拠点を配備する際や本システムを導入する際等の任意のタイミングで、運用者等によって登録される。なお、図11には、連携対処装置10−2におけるGW・拠点対応情報テーブル135の内容の例が示されている。
ステップS118−3において、連携対処装置10−3は、攻撃情報テーブル133(図10)を参照して、「標的AS番号」=「AS1」、かつ、「AS番号」=「AS3」に関して、各拠点番号に紐づく入口GW番号の一覧(AS3の場合は拠点b3ならGW3−1)を取得し、取得された各入口GW番号に係る「標的宛通信量の流入する入口GW情報」の「各入口GWの標的宛通信量」に基づき、各拠点に引き込み可能な標的宛通信量を算出し(例えば、AS3の拠点b3なら、GW3−1の標的AS1宛通信量が拠点b3に引き込み可能な標的宛通信量とされる。)、算出結果を「標的宛通信量を引き込み可能な拠点情報」の「拠点に引き込み可能な標的宛通信量」に格納する。
ステップS118−4において、連携対処装置10−3は、攻撃情報テーブル133(図10)を参照して、「標的AS番号」=「AS1」、かつ、「AS番号」=「AS3」に関して、各出口GW番号に紐づく入口GW番号(例えば、AS3の出口GW3−2なら入口GW2−1)を取得し、各入口GWに係る「標的宛通信の流入する入口GW情報」の「入口GWを流れる標的宛通信量」に基づき、自ASで対処を実施しなかった場合に、各出口GW・出口リンクに流入する標的宛通信量を算出し(例えば、AS3の出口GW3−2なら入口GW2−1を流れる標的宛通信量が、出口GW3−2のリンクに流入する標的宛通信量とされる。)、算出結果を「標的宛通信の流入する出口GW・リンク情報」の「出口リンクを流れる標的宛通信量」に格納する。また、連携対処装置10−3は、各出口リンクに対して、下記式(1)により、出口リンクの輻輳を回避するために、最低限対処すべき標的宛通信量(標的宛通信の最低対処量)を算出し、「出口リンクに流入する標的宛通信の最低対処量」に格納する。
最低対処量=対処を実施しなかった場合に出口リンクに流入する標的宛通信量−出口リンクの利用可能帯域量×β(0≦β≦1) ・・・(1)
ここで、出口リンクの利用可能帯域量は、AS間リンク情報テーブル134から取得する。
図12は、AS間リンク情報テーブル134の構成例を示す図である。AS間リンク情報テーブル134は、各ASにおいて、隣接ASとの間のリンク情報を管理するためのテーブルである。図12において、AS間リンク情報テーブル134は、「リンク番号」、「自AS側の接続GW情報」、「隣接AS側の接続GW情報」、「最大帯域量」、「利用可能帯域量」等の項目を有する。
「リンク番号」は、リンクを一意に識別するための情報である。「自AS側の接続GW情報」は、「GW番号」及び「インタフェースのIPアドレス」等の項目を含む。「GW番号」は、「リンク番号」に係るリンクに接続する自AS側のGWの識別情報である。「インタフェースのIPアドレス」は、当該リンクに接続する自AS側のGWのインタフェースのIPアドレスである。「隣接AS側の接続GW情報」は、「隣接AS番号」、「GW番号」及び「インタフェースのIPアドレス」等の項目を含む。「隣接AS番号」は、隣接ASを一意に識別するための情報である。「GW番号」は、「リンク番号」に係るリンクに接続する隣接AS側のGWの識別情報である。「インタフェースのIPアドレス」は、当該リンクに接続する隣接AS側のGWのインタフェースのIPアドレスである。「最大帯域量」は、「リンク番号」に係るリンクの最大帯域量である。「利用可能帯域量」は、「最大帯域量」から各種通信サービスで利用中の通信帯域量を減算した値である。
リンク番号や接続GW情報、最大帯域量は、任意のタイミングで運用者等によって登録される。また、利用可能帯域は、攻撃検知装置20を介して、パケット転送装置から定期的または任意のタイミングで収集され、更新される。なお、図12には、連携対処装置10−1におけるAS間リンク情報テーブル134の内容の例が示されている。
式(1)のβは、AS間リンクの利用可能帯域量の何割をその標的宛通信の対処に利用するのかを示す値であり、特定ASへの攻撃対処だけでAS間リンク帯域を使い切らないようにする効果がある。
βの値は、管理者等が事前設定するほか、動的に設定しても良い。動的に設定する場合、例えば、AS間リンクの利用可能帯域量と本リンクに流入する標的宛通信の対処に利用可能な拠点のmitigation装置40の利用可能リソース量に基づき、β=(AS間リンクの利用可能帯域量)/(AS間リンクの利用可能帯域量+mitigation装置40の利用可能リソース量)のように設定することが想定される。
なお、算出した最低対処量が、対応するmitigation装置40の利用可能リソース量を超える場合は、そのリンクの輻輳を回避するように対処することが不可能なため、例えば、mitigation装置40の利用可能リソース量の値を最低対処量として設定することで、リソース上限まで対処するように調整することが考えられる。
ステップS118に続いて、連携対処装置10−3は、標的AS番号(AS1)、自身のAS番号(AS3)、攻撃情報テーブル133(図10)の「標的AS番号」がAS1、かつ、「AS番号」が自身のAS番号のレコードの内容と、拠点情報テーブル136のAS1宛攻撃対処に利用する拠点情報を含む調整要求メッセージを連携対処装置10−2に対して送信する(S119)。
図13は、拠点情報テーブル136の構成例を示す図である。拠点情報テーブル136は、各ASにおいて、自ASが保有する拠点と各拠点のmitigation装置40の情報を管理するためのテーブルである。図13において、拠点情報テーブル136は、「拠点番号」、「最大リソース量」、及び「利用可能リソース量」等の項目を有する。
「最大リソース量」は、「拠点番号」に係る拠点のmitigation装置40の最大リソース量である。「利用可能リソース量」は、「拠点番号」に係る拠点のmitigation装置40の最大リソース量から攻撃対処に利用中のリソース量を減算した値である。これらの情報は、攻撃検知装置20を介して、mitigation装置40等から定期的または任意のタイミングで収集され、更新される。また、最大リソース量は、mitigation装置40を導入する際や本システムを導入する際等の任意のタイミングで、運用者等によって登録されてもよい。なお、図13には、連携対処装置10−1における拠点情報テーブル136の内容の例が示されている。
ステップS119において送信される調整メッセージは、具体的には、標的宛通信の流入する入口GW番号、入口GWを流れる標的宛通信量、標的宛通信の流入する入口GWと出口GW・拠点の対応情報、標的宛通信を引き込み可能な拠点番号、各拠点に引き込み可能な標的宛通信量、各拠点のmitigation装置40の最大リソース量及び利用可能リソース量、標的宛通信の流れる出口リンクと接続する出口GWと当該リンクに流入する標的宛通信量およびそのリンクの最低対処量といった情報を含む。
なお、分散処理により、各ASの処理が並列に動くことによる値ずれを補正するために、現在の対処量の情報も含めて送信することも想定される。
また、mitigation装置40の利用可能リソース量のうち、対象の標的AS宛攻撃対処に利用中のものがあれば、その対処量分加算した値を通知する。但し、現在の対処量を調整要求メッセージに含めて送信し、受信側で加算しても良い。
一方、連携対処装置10−4は、ステップS110において送信された連携対処装置10−2からの対処要求メッセージを受信すると、連携対処装置10−3と同様の処理(S112〜S119)を実行する。
ここまでの手順で、攻撃元に最も近い拠点のmitigation装置40のリソースを最大限用いた対処(インターネット全体での攻撃通信による消費帯域が最小になるような対処)が完了する。以降(図6)では、さらに各ASのmitigation装置40のリソース使用率をAS間リンクが輻輳しない範囲で平準化するための調整処理が実行される。
図6のステップS151において、連携対処装置10−2は、連携対処装置10−3からの対処応答メッセージ(図5:S115)を受信し、対処状態管理テーブル132(図8)の「標的AS番号」がAS1のレコードの「連携先(上流=子)ASに関する情報」に、当該対処応答メッセージに含まれるAS3の情報を格納する。
ステップS152において、連携対処装置10−2は、連携対処装置10−3からの調整要求メッセージ(図5:S119)を受信し、自身の攻撃情報テーブル133(図10)に、「標的AS番号」がAS1であり「AS番号」がAS3であるレコード(図10において2番目のレコード)を生成し、当該調整要求メッセージに含まれるAS3の情報(標的宛通信の流入する入口GW情報、標的宛通信の流入する出口GW・リンク情報、標的宛通信を引き込み可能な拠点情報)を当該レコードに格納する。連携対処装置10−2は、また、連携先AS情報テーブル137(図9)に、当該調整要求メッセージに含まれるAS3の情報(拠点情報)を格納する。
ステップS153において、連携対処装置10−2は、連携対処装置10−4からの対処応答メッセージを受信し、対処状態管理テーブル132(図8)の「標的AS番号」がAS1のレコードの「連携先(上流=子)ASに関する情報」に、当該対処応答メッセージに含まれるAS4の情報を格納する。
ステップS154において、連携対処装置10−2は、連携対処装置10−4からの調整要求メッセージを受信し、自身の攻撃情報テーブル133(図10)に、「標的AS番号」がAS1であり「AS番号」がAS4であるレコード(図10において3番目のレコード)を生成し、当該調整要求メッセージに含まれるAS4の情報(標的宛通信の流入する入口GW情報、標的宛通信の流入する出口GW・リンク情報、標的宛通信を引き込み可能な拠点情報)を当該レコードに格納する。連携対処装置10−2は、また、連携先AS情報テーブル137(図9)に、当該調整要求メッセージに含まれるAS4の情報(拠点情報)を格納する。
続いて、連携対処装置10−2は、対処要求メッセージの全ての送信先から対処応答メッセージを受信し、かつ、全ての子から調整要求を受信すると、リソース最適化の計算に必要な自AS内の情報を取得する(S155)。具体的には、以下のステップS155−1〜S155−3が実行される。
ステップS155−1において、連携対処装置10−2は、AS2の各GWから収集したフロー情報と標的IPアドレスリストとに基づき、標的IPアドレス宛通信の流入するGW番号の取得と、当該GW番号に係る各GWを流れる標的AS宛通信量(標的IPアドレスリストに含まれるIPアドレス宛通信量を合算した値)の算出を行い、攻撃情報テーブル133(図10)における「標的AS番号」がAS1、かつ、「AS番号」が自身のAS番号(AS2)のレコード(図10において1番目のレコード)の「標的宛通信量の流入する入口GW情報」の「入口GW番号」及び「標的宛通信量」に値を登録する。入口GWが複数存在する場合は、入口GW毎にレコードが登録される。
連携対処装置10−2は、また、攻撃情報テーブル133(図10)の「標的AS番号」がAS1、かつ、「AS番号」が連携先AS(標的ASが1の場合はAS3とAS4)」のレコード(図10の2番目及び3番目のレコード)の「AS番号」、「出口GW番号」と、AS間リンク情報テーブル134(図12)の「隣接AS側の接続GW情報」の「隣接AS番号」・「GW番号」とを突合することで、連携先の各出口リンクから流出した標的宛通信が流入する自ASの入口GW番号を取得し、攻撃情報テーブル133に登録する。このとき、「標的宛通信の流入する入口GW情報」の「対応する連携先AS番号」及び「対応する連携先ASの出口GW番号」も同じレコードに登録される。また、連携対処装置10−2は、各入口GWの「入口GWを流れる標的宛通信量」に、当該入口GWに対応する連携先ASの出口GWを流れる標的宛通信量を加算する。上流での対処が行われなかった状況下での当該各入口GWを流れる標的宛通信量に基づいて、後述の最適化問題を解くためである。
なお、連携先AS(子)と対処要求メッセージの送信元AS(親)が直接接続していない場合は、子の標的宛通信の流出する出口GWの接続する隣接AS番号と親の入口GWの接続する隣接AS番号およびBGPの経路情報に基づき、子の出口GWから流出した標的宛通信が親のどの入口GWから流入するかを判定する。この場合、調整要求メッセージに、子の出口GWの接続する隣接AS番号を合わせて通知することが想定される。
ステップS155−2において、連携対処装置10−2は、GW・拠点対応情報テーブル135(図11)に基づき、AS2の各入口GWから流入した標的宛通信を引き込み可能な拠点番号(AS2の場合、入口GW2−1、入口GW2−2については拠点b2−1、入口GW2−3については拠点b2−2)を取得し、攻撃情報テーブル133(図10)における「標的AS番号」がAS1、かつ、「AS番号」がAS2となる各入口GWのレコードの「標的宛通信を引き込み可能な拠点情報」の「拠点番号」に、取得した拠点番号を登録する。また、連携対処装置10−2は、攻撃情報テーブル133(図10)を参照して、各拠点に紐づく入口GW番号の一覧(AS2の場合、拠点b2−1なら入口GW2−1と入口GW2−2)を取得し、各入口GWの「標的宛通信量の流入する入口GW情報」の「入口GWを流れる標的宛通信量」に基づき、各拠点に引き込み可能な標的宛通信量を算出し(AS2の拠点b2−1の場合、GW2−1の標的AS宛通信量とGW2−2の標的AS宛通信量の和)、「標的宛通信量を引き込み可能な拠点情報」の「拠点に引き込み可能な標的宛通信量」に算出結果を格納する。
ステップS155−3において、連携対処装置10−2は、拠点情報テーブル136(図13)を参照して、各拠点のmitigation装置40の最大リソース量及び利用可能リソース量を取得する。
ステップS155に続いて、連携対処装置10−2は、下記の最適化問題を解くことで、AS間リンク輻輳を回避しつつ、自身(AS2)と子(AS3、AS4)の各拠点のmitigation装置40のリソース使用率が平準化するような対処量の値の組み合わせを算出する。一般化した表現では、当該最適化問題は、以下とすることができる。
[目的関数]
自AS(この計算を実行しているAS)とその子AS(複数可)において、各拠点の「標的宛通信対処に利用可能なリソース使用率」の値のうち、最大となるものの値をF、最小となるものの値をGとしたときに、F−Gが最小となる、「各拠点で対処する標的AS宛通信量(各拠点単位の対処量)」の組み合わせを決定する。ここで、或る拠点の「標的宛通信対処に利用可能なリソース使用率」は、当該拠点について拠点情報テーブル136に記憶されている「最大リソース量」、「利用可能リソース量」を用いて以下のように算出される値である。
(最大リソース量−利用可能リソース量)÷最大リソース量
なお、AS2の子AS(AS3、AS4)の各拠点のmitigation装置40に関する拠点情報は、各連携先からの調整要求メッセージに基づいて、連携対処装置10−2の連携先AS情報テーブル137(図9)に登録されているため、連携対処装置10−2は、各子ASの各拠点に関する「標的宛通信対処に利用可能なリソース使用率」についても計算可能である。
[変数]
・各拠点単位の対処量
・各入口GW単位の対処量
・各出口リンク単位の対処量(子の分のみ)
但し、入口GW単位の対処量は、当該入口GWを流れる標的宛通信量のうち、当該入口GWの存在するASで対処する標的宛通信量を表し、出口リンク単位の対処量は、当該出口リンクの接続する出口GWの存在するASで対処を実施しなかった場合に、当該出口リンクを流れる標的宛通信量のうち、当該出口GWの存在するASで対処する標的宛通信量を表す。例えば、図1において、GW2−4には、GW2−1及びGW2−2から流入した標的宛通信が流入する。したがって、GW2−4についての「出口リンク単位の対処量」は、GW2−1及びGW2−2からの流入した標的宛通信量のうち、AS2において対処する通信量である。
[制約条件]
・(子の各出口リンク単位の対処量)=(当該出口リンクに対応する子の入口GW単位の対処量の和)
・(各拠点単位の対処量)=(当該拠点に対応する入口GW単位の対処量の和)
・(子の各出口リンク単位の対処量)≧(当該出口リンクの最低対処量)
・(各拠点単位の対処量)≦(当該拠点に引き込み可能な標的宛通信量)
・(各拠点単位の対処量)≦(当該拠点の利用可能リソース量)
・(各拠点単位の対処量の和)=(自ASと子ASの各入口GWで対処中の標的宛通信量の和)
・(各入口GW単位の対処量)≦(当該入口GWを流れる標的宛通信量)
・(各入口GW単位の対処量)≦(当該入口GWに対応する拠点の利用可能リソース量)
・(各入口GW単位の対処量の和)=(自ASと子ASの各入口GWで対処中の標的宛通信量の和)
・(自ASの各入口GW単位の対処量)+(当該入口GWに対応する子の出口GWに接続する出口リンク単位の対処量)=(当該入口GWで対処中の標的宛通信量と当該出口リンクで対処中の標的宛通信量の和)
・(各拠点の対処量割り当て後のmitigation装置40のリソース使用率)≦F
・(各拠点の対処量割り当て後のmitigation装置40のリソース使用率)≧G
・(各拠点単位の対処量)≧0,(子の各出口リンク単位の対処量)≧0,(各入口GW単位の対処量)≧0
続いて、連携対処装置10−2は、上記のパラメータ調整の結果として(上記の最適化問題を解くことで)得られた、「各入口GW単位の対処量」、「各出口リンク単位の対処量(子の分のみ)」、「各拠点単位の対処量」を用いて、攻撃情報テーブル133(図10)の自ASと連携先(子)ASのレコードにおける「入口GW単位の対処中の量」と「出口リンク単位の対処中の量」と「拠点単位の対処中の量」を更新する(S157)。また、連携対処装置10−2は、攻撃情報テーブル133(図10)において「標的AS番号」がAS1、かつ、「AS番号」がAS2となる(自ASの情報の)各入口GWのレコードについて、「入口GWを流れる標的宛通信量」を、対応する連携先ASの出口リンクの対処量分だけ減算する。また、連携対処装置10−2は、「拠点に引き込み可能な標的宛通信量」を、更新された各入口GWを流れる標的宛通信量の値を用いて再計算して更新する。更に、連携対処装置10−2は、拠点情報テーブル136(図13)に記憶されている各拠点の「利用可能リソース量」を当該拠点の対処量分だけ減算する。また、連携対処装置10−2は、ステップS118−2、S118−4と同様の手順で、自ASの各入口GWに対応する出口GW番号、出口リンク番号、出口リンクを流れる標的宛通信量、最低対処量を取得・算出し、攻撃情報テーブル133に登録する。
続いて、連携対処装置10−2は、AS2のネットワーク制御装置30に対して、標的IPアドレス、自ASの各入口GW単位の対処量を通知して、最新の情報での攻撃対処を適用する(S158)。ネットワーク制御装置30は、標的IPアドレス情報テーブル131(図7)に登録されている標的IPアドレス宛通信を、それらの通信が流入する各入口GWから、通知された各入口GW単位の対処量分だけmitigation装置40に引き込んで対処する。
なお、各拠点の対処量が計算結果と同じになれば、標的宛通信の引き込み(の設定)を行う装置は必ずしも入口GWでなくても良い。
続いて、連携対処装置10−2は、子(AS3、AS4)の連携対処装置10に対して、標的AS番号(AS1)、自身のAS番号(AS2)、調整の結果得られた「各入口GW単位の対処量」、「各出口リンク単位の対処量」、「各拠点単位の対処量」(メッセージの宛先ASに関する情報のみ)、「Flag=fromParent」が含まれる更新要求メッセージを送信する(S159)。
ここで、各対処量は、当該対処量に紐づくGWや拠点の識別子とセットで送信する。例えば、「各入口GW単位の対処量」の場合は、「入口GW番号:その入口GWの対処量、・・・」のような形式で、どの入口GWの対処量なのかが受信側で分かるようにする。なお、データ形式は前述のものに限定されず、任意の形式で良い。
また、分散処理の実行順序による値ずれを補正するために、例えば、計算前の子の対処中の量の値または計算前後の対処量の差分値もメッセージに含めて送信することが想定される。受信側では、対処量そのものの値でなく、元の対処量からの差分値を用いてその値分だけ現在の対処量から値を増加または減少させることで、親によるリソース調整を実施中に、自身とその子とのリソース調整が先に実施されて現在の対処量が変化した場合でも、システム全体としての整合性を保つことができる。
続いて、連携対処装置10−2は、親(AS1)に対して、標的AS番号(AS1)、自身のAS番号(AS2)、攻撃情報テーブル133(図10)の「標的AS番号」がAS1、かつ、「AS番号」が自身(AS2)のレコードの内容、拠点情報テーブル136(図13)のAS1宛攻撃対処に利用する拠点情報、を含む調整要求メッセージを送信する(S160)。
ステップS161において、連携対処装置10−3は、受信した更新要求メッセージに含まれる「各入口GW単位の対処量」、「各出口リンク単位の対処量」、「各拠点単位の対処量」を用いて、拠点情報テーブル136(図13)の「利用可能リソース量」を拠点単位の対処量分だけ減算すると共に、攻撃情報テーブル133(図10)の「標的AS番号」がAS1、かつ、「AS番号」がA3のレコードの各対処量の値を更新し、ネットワーク制御装置30を介して、標的IPアドレス宛通信を更新要求メッセージによって要求された分だけmitigation装置40に引き込んで対処する。
この際、各入口GW単位の対処量を用いて、各入口GWから標的宛通信を各拠点に引き込んでも良いし、各拠点単位の対処量の値を用いて、任意の装置から要求された量を対処できるように各拠点に引き込んでも良い。
ステップS162において、連携対処装置10−4は、受信した更新要求メッセージに含まれる「各入口GW単位の対処量」、「各出口リンク単位の対処量」、「各拠点単位の対処量」を用いて、拠点情報テーブル136(図13)の「利用可能リソース量」を拠点単位の対処量分減算すると共に、攻撃情報テーブル133(図10)の「標的AS番号」がAS1、かつ、「AS番号」がA4のレコードの各対処量の値を更新し、ネットワーク制御装置30を介して、標的IPアドレス宛通信を更新要求メッセージによって要求された分だけmitigation装置40に引き込んで対処する。
ここで、親と子が直接接続されていない場合、子での対処適用後に、親と子のそれぞれの網内のシステム間で検査パケット等を用いたAS間のネットワークの輻輳検査を実施し、輻輳している場合は、輻輳が解消されるまで子の対処量を増加させて、解消後の値を親に通知することで、mitigation装置40のリソースの割り当てを再調整しても良い。
一方、ステップS171において、連携対処装置10−1は、連携対処装置10−2からの調整要求メッセージを受信し、自身の攻撃情報テーブル133(図10)の「標的AS番号」がAS1で「AS番号」がAS2となるレコードを生成し、受信した調整要求メッセージに含まれるAS2の情報(標的宛通信の流入する入口GW情報、標的宛通信の流入する出口GW・リンク情報、標的宛通信を引き込み可能な拠点情報)を当該レコードに格納する。また、連携対処装置10−1は、連携先AS情報テーブル137(図9)に、受信したAS2の情報(拠点情報)を格納する。
続いて、連携対処装置10−1は、対処要求メッセージの全ての送信先から対処応答メッセージを受信し、かつ、全ての子から調整要求を受信すると、リソース最適化の計算に必要な自AS内の情報を取得する(S172)。なお、取得する情報と取得方法はステップS155と同様である。
続いて、連携対処装置10−1は、最適化問題を解くことで、AS間リンクの輻輳を回避しつつ、自身(AS1)と子(AS2)の各拠点のmitigation装置40のリソース使用率が平準化するような対処量の値の組み合わせを算出する(S173)。この手順は、ステップS156と同様である。
続いて、連携対処装置10−1は、上記のパラメータ調整の結果として得られた、「各入口GW単位の対処量」、「各出口リンク単位の対処量(子の分のみ)」、「各拠点単位の対処量」を用いて、攻撃情報テーブル133(図10)の自ASと連携先(子)ASのレコードにおける「入口GW単位の対処中の量」と「出口リンク単位の対処中の量」と「拠点単位の対処中の量」を更新する(S174)。また、連携対処装置10−1は、攻撃情報テーブル133(図10)において「標的AS番号」がAS1、かつ、「AS番号」がAS1となる(自ASの情報の)各入口GWのレコードについて、「入口GWを流れる標的宛通信量」を、対応する連携先ASの出口リンクの対処量分だけ減算する。また、連携対処装置10−1は、「拠点に引き込み可能な標的宛通信量」を、更新された各入口GWを流れる標的宛通信量の値を用いて再計算して更新する。更に、連携対処装置10−1は、拠点情報テーブル136(図13)の「利用可能リソース量」を当該拠点の対処量分だけ減算する。
なお、AS1は、標的AS(本攻撃対処における最下流のAS)であるため、自身の出口リンク(本実施例の場合は標的システムt1の存在するデータセンタとの接続点のGW)を流れる標的宛通信量と最低対処量の更新は実施されなくても良い。
続いて、連携対処装置10−1は、AS1のネットワーク制御装置30に対して、標的IPアドレス、自ASの各入口GW単位の対処量を通知して、最新の情報での攻撃対処を適用する(S175)。ネットワーク制御装置30は、標的IPアドレス情報テーブル131に記載の標的IPアドレス宛通信を、それらの通信が流入する各入口GWから、通知された各入口GW単位の対処量分だけmitigation装置40に引き込んで対処する。
続いて、連携対処装置10−1は、子(AS2)の連携対処装置10−2に対して、標的AS番号(AS1)、自身のAS番号(AS1)、調整の結果得られた「各入口GW単位の対処量」、「各出口リンク単位の対処量」、「各拠点単位の対処量」(メッセージの宛先ASに関する情報のみ)、「Flag=fromParent」が含まれる更新要求メッセージを送信する(S176)。
ステップS181において、連携対処装置10−2は、当該更新要求メッセージを受信すると、当該更新要求メッセージに含まれる「各入口GW単位の対処量」、「各出口リンク単位の対処量」、「各拠点単位の対処量」を用いて、拠点情報テーブル136(図13)の「利用可能リソース量」を拠点単位の対処量分だけ減算すると共に、攻撃情報テーブル133(図10)の「標的AS番号」がAS1、かつ、「AS番号」がA2のレコードの各対処量の値を更新し、ネットワーク制御装置30を介して、標的IPアドレス宛通信を更新要求メッセージによって要求された分だけmitigation装置40に引き込んで対処する。
続いて、連携対処装置10−2は、更新された情報を用いて、最適化問題を解くことで、自身と子(AS3とAS4)の各対処量を再計算する(S182)。
続いて、連携対処装置10−2は、計算結果を用いて、攻撃情報テーブル133(図10)と拠点情報テーブル136(図13)の情報を更新し(手順はステップS157と同様)、更新された対処量での対処を実施する(手順はステップS158と同様)(S183)。
続いて、連携対処装置10−2は、子(AS3、AS4)の連携対処装置10に対して、標的AS番号(AS1)、自身のAS番号(AS2)、調整の結果得られた「各入口GW単位の対処量」、「各出口リンク単位の対処量」、「各拠点単位の対処量」(メッセージの宛先ASに関する情報のみ)、「Flag=fromParent」が含まれる更新要求メッセージを送信する(S184)。
続いて、連携対処装置10−2は、親(AS1)に対して、標的AS番号(AS1)、自身のAS番号(AS2)、攻撃情報テーブル133の「標的AS番号」がAS1、かつ、「AS番号」が自身のAS番号であるレコードの内容、拠点情報テーブル136のAS1宛攻撃対処に利用する拠点情報、「Flag=fromChild」を含む[更新要求メッセージ]を送信する(S185)。
以降、後述の収束条件を満たすまで、各ASにおいてメッセージの受信に伴う処理と他ASへのメッセージ送信を繰り返し行うことで、インターネット全体として、AS間リンク輻輳を防ぎつつ、各拠点のmitigation装置40のリソース使用率が平準化するように、標的AS宛攻撃に分担して対処することができる。
なお、無限にパラメータ調整が実施されるのを防ぐための収束条件としては、例えば、各ASにおいて、ある標的宛通信に対する調整実施時の入力値で計算したFの値とGの値との差(preF−preG)と、調整の結果得られたFの値とGの値との差(F−G)とを比較して、事前設定した閾値以上改善していない場合は、そのパラメータ調整を実施せずにそのメッセージ処理を終了することが想定される。なお、収束条件については任意であり、この方法に限定されない。
続いて、図5及び図6において説明した処理手順を実現するために、図4の処理部11を構成する各部が有する機能又は各部が実行する処理手順について説明する。
メッセージ受付部111は、攻撃検知装置20や他の連携対処装置10からの各種メッセージの受信を待ち受け、受信したメッセージの種類に応じて、対応するメッセージ処理部に振り分ける。メッセージ受付部111は、受信したメッセージをキューに格納し、例えば、FIFO方式で対応するメッセージ処理部に転送する。メッセージは、上述より明らかなように、攻撃検知メッセージ、対処要求メッセージ、対処応答メッセージ、調整要求メッセージ、更新要求メッセージ、輻輳対処メッセージ、対処終了要求メッセージの7種類存在する。
攻撃検知メッセージ処理部112は、攻撃検知装置20からの攻撃検知メッセージに対する処理を行う。図14は、攻撃検知メッセージ処理部112が実行する処理手順の一例を説明するためのフローチャートである。
攻撃検知メッセージ処理部112は、攻撃検知メッセージを受信すると、自ASの標的IPアドレス情報テーブル131(図7)に、自ASを標的とするレコードを生成し、攻撃検知メッセージに含まれる標的IPアドレスを当該レコードに追加する(S201)。また、攻撃検知メッセージ処理部112は、対処状態管理テーブル132(図8)に自ASを標的とする攻撃のレコードを生成する。
続いて、攻撃検知メッセージ処理部112は、攻撃対処設定部121を介して、標的IPアドレスの一覧に含まれるアドレス宛通信を自AS内のmitigation装置40に引き込んで対処するように設定する(S202)。
続いて、攻撃検知メッセージ処理部112は、自身の連携先AS情報テーブル137(図9)を参照し、各連携先ASの連携対処装置10に対して、標的AS番号(自身のAS番号)、標的IPアドレスリスト(図7の標的AS番号が自身のAS番号となるレコードの内容全て、又はデータサイズを削減するために過去に送信済みの場合は追加分のみでもよい)、要求元AS番号(自身のAS番号)を含む対処要求メッセージを送信する(S203)。
なお、ステップS203の前に、自AS内を流れる標的宛通信量(複数の宛先IPアドレスが標的の場合は、各宛先への通信量の合計値)と、事前設定された閾値とを比較し、当該合計値が閾値未満の場合は、ステップS203を実施せずに自ASのみで攻撃に対処することも想定される。
対処要求メッセージ処理部113は、他の連携対処装置10からの対処要求メッセージに対する処理を行う。図15は、対処要求メッセージ処理部113が実行する処理手順の一例を説明するためのフローチャートである。
対処要求メッセージ処理部113は、対処要求メッセージを受信すると、攻撃検知装置20を介して、受信した対処要求メッセージに含まれる標的IPアドレスリストを構成する各IPアドレス宛の通信量を取得する(S301)。
続いて、対処要求メッセージ処理部113は、BGPの経路情報等を用いることで、自ASから対処要求メッセージの送信元ASへ、標的宛通信が流れているか否かを判定する(S302)。標的宛通信が当該送信元ASへ流れていない場合(S302でNo)、対処要求メッセージ処理部113は、標的AS番号、自身のAS番号、対処状況(Status=対処不可)を含む対処応答メッセージを当該送信元ASの連携対処装置10へ送信し(S303)、図15の処理を終了する。
一方、標的宛通信が当該送信元ASへ流れている場合(S302でYes)、対処要求メッセージ処理部113は、対処要求メッセージに含まれる標的AS番号及び標的IPアドレスリストを、標的IPアドレス情報テーブル131に対応付けて登録する(S304)。
続いて、対処要求メッセージ処理部113は、対処要求メッセージに含まれる標的AS番号を「標的AS番号」とし、対処要求メッセージに含まれる要求元AS番号を「要求元(下流=親)AS番号」とするレコードを対処状態管理テーブル132(図8)に生成する(S305)。
続いて、対処要求メッセージ処理部113は、攻撃対処設定部121を介して、対処要求メッセージに含まれる標的IPアドレスリストを構成する各IPアドレス宛の通信を自AS内のmitigation装置40のリソース上限まで引き込んで対処するように設定する(標的宛通信量がmitigation装置40の利用可能リソース量より大きい場合は、利用可能リソース量まで引き込むように対処量を設定し、小さい場合は、対処量を指定せずに引き込みを設定する)(S306)。ここで、mitigation装置40の最大リソース量は、攻撃検知装置20が定期的に収集し、拠点情報テーブル136(図13)に登録した値を参照してもよいし、攻撃検知装置20に情報の取得を指示して、最新の情報を取得してもよい。
続いて、対処要求メッセージ処理部113は、対処要求メッセージの送信元ASに対して、標的AS番号、自身のAS番号、対処状況(Status=対処中)を含む対処応答メッセージを送信する(S307)。
続いて、対処要求メッセージ処理部113は、他のASから自ASに対して標的宛通信が流入しているか否かを判定する(S308)。
他のASから自ASに対して標的宛通信が流入している場合(S308でNo)、対処要求メッセージ処理部113は、対処状態管理テーブル132(図8)の自身の「最上流フラグ」を「False」に設定する(S309)。続いて、対処要求メッセージ処理部113は、自ASの連携先AS情報テーブル137(図10)に含まれる連携先AS(要求元ASを除く)の連携対処装置10に対して、受信した対処要求メッセージに含まれる標的AS番号及び標的IPアドレスリストと、自身のAS番号とを含む対処要求メッセージを送信する(S310)。
一方、他のASから自ASに対して標的宛通信が流入していない場合(S308でYes)、対処要求メッセージ処理部113は、対処状態管理テーブル132(図8)において対処要求メッセージに対応するレコードの「自ASに関する情報」の「最上流フラグ」に「True」を設定する(S311)。
続いて、対処要求メッセージ処理部113は、対処終了判断部122に対処要求メッセージに含まれる標的AS番号を通知し、当該対処要求メッセージに係る攻撃の終了を監視するためのタイマを設定する(S312)。
続いて、対処要求メッセージ処理部113は、以下のステップS313−1〜S313−4の手順でリソース最適化の計算に必要な情報を取得し、取得した情報を各テーブルに登録する(S313)。
ステップS313−1において、対処要求メッセージ処理部113は、自ASの各GWから収集したフロー情報等の任意のトラヒック情報と標的IPアドレスリストに基づき、標的IPアドレス宛通信の流入するGW番号の取得と各GWを流れる標的AS宛通信量(標的IPアドレスリストに含まれるIPアドレス宛通信量を合算した値)の算出を行い、攻撃情報テーブル133(図10)において「標的AS番号」が当該攻撃の標的AS、かつ「AS番号」が自身のAS番号のレコードの「標的宛通信量の流入する入口GW情報」の「入口GW番号」、「標的宛通信量」に取得結果又は算出結果を登録する。入口GWが複数存在する場合は、GW毎にレコードが登録される。
なお、GWは他ASとの境界に位置するエッジルータだけでなく、自ASの管理する加入者ネットワークとの境界に位置するエッジルータも含み、自AS内を発信元とする通信のフロー情報を入口で取得することを想定している。
ステップS313−2において、対処要求メッセージ処理部113は、自AS内のルーティング情報等(ルータ等のルーティングテーブルやBGP経路情報等)に基づき、前述の各入口GWから流入した標的AS宛通信が他ASに流れる際の出口となるGW番号及びリンク番号を取得すると共に、GW・拠点対応情報テーブル135(図11)に基づき、各入口GWから流入した標的宛通信を引き込み可能な拠点番号を取得し、攻撃情報テーブル133(図10)における各入口GWのレコードの「標的宛通信の流入する出口GW・リンク情報」と「標的宛通信を引き込み可能な拠点情報」に、当該レコードに対応する「出口GW番号」「出口リンク番号」「拠点番号」を登録する。
ステップS313−3において、対処要求メッセージ処理部113は、攻撃情報テーブル133(図10)を参照して、各拠点に紐づく入口GW番号の一覧を取得し、「標的宛通信量の流入する入口GW情報」の各入口GWの標的宛通信量に基づき、各拠点に引き込み可能な標的宛通信量を算出し、「標的宛通信量を引き込み可能な拠点情報」の「拠点に引き込み可能な標的宛通信量」に算出結果を格納する。
ステップS313−4において、対処要求メッセージ処理部113は、攻撃情報テーブル133(図10)を参照して、各出口GWに紐づく入口GW番号を取得し、「標的宛通信の流入する入口GW情報」の各入口GWの標的宛通信量に基づき、自ASで対処を実施しなかった場合に、各出口GW・出口リンクに流入する標的宛通信量を算出し、「標的宛通信の流入する出口GW・リンク情報」の「出口リンクを流れる標的宛通信量」に算出結果を格納する。また、対処要求メッセージ処理部113は、各出口リンクに対して、上述した式(1)により、出口リンクの輻輳を回避するために、最低限対処すべき標的AS宛通信量(標的宛通信の最低対処量)を算出し、攻撃情報テーブル133(図10)の「出口リンクに流入する標的宛通信の最低対処量」に格納する。
ステップS313に続いて、対処要求メッセージ処理部113は、親AS(対処要求メッセージの送信元のAS)の連携対処装置10に対して、標的AS番号(受信した対処要求メッセージに含まれるものと同じ値)、自身のAS番号、攻撃情報テーブル133(図10)の「標的AS番号」が当該¥標的AS番号、かつ、「AS番号」が自身のAS番号であるレコードの内容と、拠点情報テーブル136(図13)の当該攻撃対処に利用する拠点情報とを含む調整要求メッセージを送信する(S314)。
対処応答メッセージ処理部114は、他の連携対処装置10からの対処応答メッセージに対する処理を行う。図16は、対処応答メッセージ処理部114が実行する処理手順の一例を説明するためのフローチャートである。
対処応答メッセージ処理部114は、対処応答メッセージを受信すると、当該対処応答メッセージに含まれる対処状況が、「Status=対処中」であるか否かを判定する(S401)。当該対処状況が、「Status=対処中」である場合(S401でYes)、対処応答メッセージ処理部114は、対処状態管理テーブル132(図8)において当該対処応答メッセージに含まれる標的AS番号に対応するレコードの「連携先AS(上流=子)ASに関する情報」の「AS番号」に、当該対処応答メッセージの送信元AS番号を登録する(S402)。
一方、当該対処状況が、「Status=対処中」でない場合(S401でNo)、対処応答メッセージ処理部114は、対処要求メッセージの全ての送信先から対処応答メッセージを受信済みであり、かつ、全ての子から調整要求メッセージを受信済みか否かを判定する(S403)。
ステップS403の判定がYesの場合、対処応答メッセージ処理部114は、リソース最適化処理を実行する(S404)。リソース最適化処理の詳細については後述する。
調整要求メッセージ処理部115は、他の連携対処装置10からの調整要求メッセージに対する処理を行う。図17は、調整要求メッセージ処理部115が実行する処理手順の一例を説明するためのフローチャートである。
調整要求メッセージ処理部115は、調整要求メッセージを受信すると、「標的AS番号」が当該調整要求メッセージに含まれる標的AS番号、かつ、「AS番号」が当該調整要求メッセージの送信元ASとなるレコードを(新規の場合)攻撃情報テーブル133(図10)に生成し、当該調整要求メッセージに含まれる情報(標的宛通信の流入する入口GW情報、標的宛通信の流入する出口GW・リンク情報、標的宛通信を引き込み可能な拠点情報)を当該レコードに格納する(S501)。
続いて、調整要求メッセージ処理部115は、連携先AS情報テーブル137(図9)において「連携先AS番号」が、当該調整要求メッセージの送信元ASとなるレコードの「拠点情報(「拠点番号」、「最大リソース量」、「利用可能リソース量」)」を当該調整要求メッセージに含まれる情報で更新する(S502)。但し、該当するレコードが無い場合には、該当するレコードが生成される。
続いて、調整要求メッセージ処理部115は、対処要求メッセージの全ての送信先から対処応答メッセージを受信済みであり、かつ、全ての子から調整要求メッセージを受信済みであるか否かを判定する(S503)。ステップS503の判定がYesの場合、調整要求メッセージ処理部115は、リソース最適化処理を実行する(S504)。
続いて、図16のステップS404及び図17のステップS504の詳細について説明する。図18は、リソース最適化処理の処理手順の一例を説明するためのフローチャートである。
ステップS601において、リソース最適化の計算に必要な自AS内の情報を次のS601−1〜S601−5の手順で取得する。
ステップS601−1において、自ASの各GWから収集したフロー等のトラヒック情報と標的IPアドレスリストとに基づき、標的IPアドレス宛通信の流入するGW番号を取得すると共に、当該GW番号に係る各GWを流れる標的AS宛通信量(標的IPアドレスリストに含まれるIPアドレス宛通信量を合算した値)を算出し、攻撃情報テーブル133(図10)において「標的AS番号」が受信したメッセージに含まれる標的AS番号、かつ、「AS番号」が自身のAS番号であるレコードの「標的宛通信量の流入する入口GW情報」の「入口GW番号」、「標的宛通信量」に、取得したGW番号、算出した標的AS宛通信量を登録する。入口GWが複数存在する場合は、GW毎にレコードを登録する。
ステップS601−2において、攻撃情報テーブル133(図10)の「標的AS番号」が受信メッセージに含まれる標的AS、かつ、「AS番号」が連携先ASであるレコードの「AS番号」・「出口GW番号」と、AS間リンク情報テーブル134(図12)の「隣接AS側の接続GW情報」の「隣接AS番号」・「GW番号」とを突合することで、連携先の各出口リンクから流出した標的宛通信の流入元である自ASの入口GW番号を取得し、当該入口GW番号を攻撃情報テーブル133(図10)において「AS番号」が自ASのAS番号であるレコードの「入口GW番号」に登録する。このとき、「標的宛通信の流入する入口GW情報」の「対応する連携先AS番号」及び「対応する連携先ASの出口GW番号」も登録する。また、現在の各入口GWに対応する「入口GWを流れる標的宛通信量」に、当該入口GWに対応する連携先ASの出口GWを流れる標的宛通信量を加算する。
なお、連携先AS(子)と対処要求メッセージの送信元AS(親)が直接接続していない場合は、子の標的宛通信の流出する出口GWが接続する隣接AS番号と親の入口GWが接続する隣接AS番号およびBGPの経路情報に基づき、子の出口GWから流出した標的宛通信が親のどの入口GWから流入するのかを判定することが考えられる。この場合、調整要求メッセージに、例えば、子の出口GWの接続する隣接AS番号を含めることで、受信側において隣接AS番号を用いた判定が可能になると想定される。
ステップS601−3において、GW・拠点対応情報テーブル135(図11)に基づき、各入口GWから流入した標的宛通信を引き込み可能な拠点番号を取得し、攻撃情報テーブル133(図10)において「標的AS番号」が受信メッセージに含まれる標的AS番号、かつ、「AS番号」が自ASのAS番号である各入口GWのレコードの「標的宛通信を引き込み可能な拠点情報」の、「拠点番号」に、取得した拠点番号を登録する。
ステップS601−4において、攻撃情報テーブル133(図10)を参照して、各拠点に紐づく入口GW番号の一覧を取得し、「標的宛通信量の流入する入口GW情報」の各入口GWの標的宛通信量に基づき、各拠点に引き込み可能な標的宛通信量を算出し(拠点に紐付く入口GWが複数の場合は、各GWの標的AS宛通信量の和)、算出結果を「標的宛通信量を引き込み可能な拠点情報」の「拠点に引き込み可能な標的宛通信量」に格納する。
ステップS601−5において、拠点情報テーブル136(図13)を参照して、各拠点のmitigation装置40の最大リソース量及び利用可能リソース量を取得する。
続いて、ステップS601で取得した自ASの情報と、受信済みの連携先ASの情報とを用いて、自身と子との各拠点で対処する標的宛通信量(対処量)を算出するためのパラメータ調整処理(最適化問題を解く処理)を、パラメータ調整部120に実行させる(S602)。
続くステップS603において、パラメータ調整処理によって得られた、「各入口GW単位の対処量」、「各出口リンク単位の対処量(子の分のみ)」、「各拠点単位の対処量」によって、攻撃情報テーブル133(図10)の自ASと連携先(子)ASのレコードにおける「入口GW単位の対処中の量」、「出口リンク単位の対処中の量」及び「拠点単位の対処中の量」を更新する。
また、攻撃情報テーブル133(図10)において「標的AS番号」が受信した標的AS番号、かつ、「AS番号」が自身のAS番号となる各入口GWのレコードについて、「入口GWを流れる標的宛通信量」を、対応する連携先ASの出口リンクの対処量分減算する。また、「拠点に引き込み可能な標的宛通信量」を、更新された各入口GWを流れる標的宛通信量の値を用いて再計算する。更に、拠点情報テーブル136(図13)の「利用可能リソース量」をその拠点の対処量分だけ減算する。
ステップS603に続いて、子の連携対処装置10に対して、標的AS番号(受信した標的AS番号と同じ)、自身のAS番号、調整の結果得られた「各入口GW単位の対処量」、「各出口リンク単位の対処量」、「各拠点単位の対処量」(メッセージの宛先ASに関する情報のみ)、及び「Flag=fromParent」が含まれる更新要求メッセージを送信する(S604)。
なお、分散処理の実行順序による値ずれを補正するために、例えば、「計算前の子の対処中の量の値」または「計算前後の対処量の差分値」も更新要求メッセージに含めて送信しても良い。受信側では、対処量そのものの値でなく、元の対処量からの差分値を用いてその値分現在の対処量から値を増加または減少させることで、親によるリソース調整を実施中に、自身とその子とのリソース調整が先に実施されて現在の対処量が変化した場合でも、システム全体としての整合性を保つことができる。
続いて、自ASが標的ASでない場合(S605でYes)、自ASの各入口GWに対応する出口GW番号・出口リンク番号、出口リンクを流れる標的宛通信量、最低対処量を取得・算出し、攻撃情報テーブル133に登録する(S606)。続いて、自身の親の連携対処装置10に、標的AS番号(受信したものと同じ)、自身のAS番号、攻撃情報テーブル133(図10)の「標的AS番号」が受信したメッセージに含まれる標的AS番号、かつ、「AS番号」が自身のAS番号であるレコードの内容、拠点情報テーブル136(図13)において、受信したメッセージに含まれる標的AS宛攻撃対処に利用する拠点情報、を含む調整要求メッセージを送信する(S607)。なお、当該調整要求メッセージと更新要求メッセージの受信時の処理において、親と子にメッセージを送る順番は、子、親の順又は親、子の順のどちらでも良い。
更新要求メッセージ処理部116は、他の連携対処装置10からの更新要求メッセージに対する処理を行う。図19は、更新要求メッセージ処理部116が実行する処理手順の一例を説明するためのフローチャートである。
ステップS701において、更新要求メッセージ処理部116は、受信した更新要求メッセージに「Flag=fromParent」が含まれるか否かを判定する。当該更新要求メッセージに「Flag=fromParent」が含まれる場合(S701でYes)、親が隣接ASであり(S702でYes)、対処状態管理テーブル132(図8)において自ASの「最上流フラグ」が「True」であれば(S703でYes)、更新要求メッセージ処理部116は、当該更新要求メッセージに含まれる「各入口GW単位の対処量」、「各出口リンク単位の対処量」、「各拠点単位の対処量」を用いて、拠点情報テーブル136(図13)の「利用可能リソース量」を拠点単位の対処量分だけ減算すると共に、攻撃情報テーブル133(図10)の自ASの各対処中の量の値を更新し、ネットワーク制御装置30を介して、標的IPアドレス宛通信を要求分だけmitigation装置40に引き込んで対処する(S704)。ここでは、当該更新要求メッセージに、「計算前の子の対処中の量の値」または「計算前後の対処量の差分値」が含まれる場合は、前述のように、これらの値も利用して値を更新しても良い。
また、親が隣接ASであり(S702でYes)、対処状態管理テーブル132(図8)において自ASの「最上流フラグ」が「True」でない場合(S703でNo)、更新要求メッセージ処理部116は、自身と子との各拠点で対処する標的宛て通信量を算出するためのパラメータ調整処理を、パラメータ調整部120に実行させる(S705)。
続いて、更新要求メッセージ処理部116は、パラメータ調整処理によって得られた、「各入口GW単位の対処量」、「各出口リンク単位の対処量(子の分のみ)」、「各拠点単位の対処量」を用いて、攻撃情報テーブル133(図10)の自ASと連携先(子)ASのレコードにおける「入口GW単位の対処中の量」、「出口リンク単位の対処中の量」及び「拠点単位の対処中の量」を更新し、攻撃への対処を実施する(S706)。また、更新要求メッセージ処理部116は、拠点に引き込み可能な標的宛通信量を、更新された各入口GWを流れる標的宛通信量の値を用いて再計算する。さらに、更新要求メッセージ処理部116は、拠点情報テーブル136(図13)の利用可能リソース量をその拠点の対処量分だけ減算する。
続いて、更新要求メッセージ処理部116は、自ASの各入口GWに対応する出口GW番号・出口リンク番号、出口リンクを流れる標的宛通信量、最低対処量を取得・算出し、取得結果又は算出結果を攻撃情報テーブル133(図10)に登録する(S707)。
続いて、更新要求メッセージ処理部116は、子の連携対処装置10に対して、標的AS番号(受信メッセージに含まれるものと同じ)、自身のAS番号、調整の結果得られた「各入口GW単位の対処量」、「各出口リンク単位の対処量」、「各拠点単位の対処量」(メッセージの宛先ASに関する情報のみ)、「Flag=fromParent」を含む更新要求メッセージを送信する(S708)。
続いて、更新要求メッセージ処理部116は、親の連携対処装置10に対して、標的AS番号(受信メッセージに含まれるものと同じ)、自身のAS番号、攻撃情報テーブル133(図10)の「標的AS番号」が受信した更新要求メッセージの標的AS番号、かつ、「AS番号」が自身のAS番号であるレコードの内容、拠点情報テーブル136(図13)の攻撃対処に利用する拠点情報、「Flag=fromChild」を含む更新要求メッセージを送信する(S709)。
また、親が隣接ASではない場合(S702でNo)、更新要求メッセージ処理部116は、対処を実施後(S710)、輻輳検査部119を介して、自身と親との間のリンクで輻輳が発生しているかの検査を実行してもよい(S711)。なお、輻輳検査部119は、他の連携対処装置10の輻輳検査部119からの検査パケットを受信すると、それに対する応答パケットを返送する機能を有し、例えば、自身と親の連携対処装置10との間で検査パケットを送信して応答を待ち、パケットのドロップが発生している場合や、RTT(Round Trip Time)の値を見て平常時と比較して遅延が発生している場合に、輻輳が発生していると判定する。
輻輳検査の結果、自身と親の間のリンクで輻輳が発生している場合、更新要求メッセージ処理部116は、自身の対処量を任意の量だけ増加させ、再度輻輳検査を実施する(S712)。更新要求メッセージ処理部116は、子の対処量の増加と輻輳検査とを輻輳が解消されるまで繰り返し、自身の対処量が元よりも増加している場合に、自身の最低対処量として増加後の対処量を設定し、各テーブルの値を更新する(S713)。
続いて、更新要求メッセージ処理部116は、自身の親の連携対処装置10に、標的AS番号(受信した更新要求メッセージに含まれるものと同じ)、自身のAS番号、攻撃情報テーブル133の「標的AS番号」が受信した更新要求メッセージに含まれる標的AS番号、かつ、「AS番号」が自身のAS番号であるレコードの内容、拠点情報テーブル136のAS1宛攻撃対処に利用する拠点情報を含む、輻輳対処メッセージを送信する(S714)。
一方、受信した更新要求メッセージに「Flag=fromChild」が含まれる場合(S701でNo)、ステップS705〜S709とほぼ同様の処理が実行される(S715〜S719)。但し、自ASが標的ASでない場合のみ、最低対処量の更新(S717)と、親への更新要求メッセージの送信(S719)が実行される。
輻輳対処メッセージ処理部117は、他の連携対処装置10からの輻輳対処メッセージに対する処理を行う。図20は、輻輳対処メッセージ処理部117が実行する処理手順の一例を説明するためのフローチャートである。
輻輳対処メッセージ処理部117は、他の連携対処装置10からの輻輳対処メッセージを受信すると、当該輻輳対処メッセージに含まれる情報を用いて、拠点情報テーブル136(図13)及び攻撃情報テーブル133(図10)の値(各ASの対処量等)を更新する(S801)。続いて、ステップS802が実行されてもよい。
ステップS802において、輻輳対処メッセージ処理部117は、子の連携対処装置10と、親が標的でない場合には親の連携対処装置10とに、更新要求メッセージを送信することで、対処量を再度調整する(S802)。
対処終了要求メッセージ処理部118は、対処終了判断部122又は他の連携対処装置10からの対処終了要求メッセージに対する処理を行う。図21は、対処終了要求メッセージ処理部118が実行する処理手順の一例を説明するためのフローチャートである。
対処終了要求メッセージ処理部118は、全ての子から対処終了メッセージを受信済みであれば(S901でYes)、対処終了要求メッセージに含まれる標的AS番号に基づき、標的IPアドレス情報テーブル131から標的のIPアドレスを抽出し、攻撃検知装置20によって定期的に取得されるトラヒック情報と標的のIPアドレスとを突合することで、標的AS宛攻撃の通信量の合計値を計算する(S902)。続いて、対処終了要求メッセージ処理部118は、当該合計値を事前設定された閾値を比較する。
当該合計値が当該閾値未満である場合(S903でYes)、対処終了要求メッセージ処理部118は、攻撃対処設定部121を介して、自AS内での当該標的AS宛攻撃に対する対処を終了する(S904)。続いて、対処終了要求メッセージ処理部118は、攻撃対処設定部121を介して、対処状態管理テーブル132、攻撃情報テーブル133等の当該標的ASに対応するレコードを削除し、拠点情報テーブル136の利用可能リソース量を当該標的AS宛に確保していた量分増加させる(S905)。続いて、対処終了要求メッセージ処理部118は、対処終了判断部122に標的AS番号を通知し、当該攻撃への監視を終了させる(S906)。続いて、対処終了要求メッセージ処理部118は、標的AS番号を含む対処終了要求メッセージを下流ASに送信する(S907)。
一方、当該合計値が当該閾値以上である場合(S903でNo)、対処終了要求メッセージ処理部118は、対処終了判断部122を定期的に呼び出すタイマを設定する(S908)。続いて、対処終了要求メッセージ処理部118は、対処状態管理テーブル132(図8)において対処終了要求メッセージに含まれる標的AS番号に対応するレコードの「自ASに関する情報」の「最上流フラグ」に「True」を設定する(S909)。
パラメータ調整部120は、他の処理部11によって呼び出され、各テーブルに格納された情報に基づきパラメータ調整処理を実行して、任意のAS宛の攻撃に対して、自ASと連携先AS間で対処する通信量を算出する機能を有する。
本実施の形態では、標的AS単位で攻撃をまとめて、各拠点で対処する通信量を調整することで、標的IPアドレス単位で1つずつ調整する場合と比較して、必要な調整回数を削減できる。なお、本実施の形態では、各ASがmitigation装置40を利用して対処する際に、AS間リンクが輻輳しない範囲内で、といった制約条件のもと、各拠点のmitigation装置40の使用率ができるだけ均一になるように、各ASで対処する通信量を調整する方法について説明している。しかし、AS間リンクの輻輳の回避と各ASのmitigation装置40のリソース負荷分散とを同時に実現する最適化問題の表現方法については、斯かる方法に限定されない。
攻撃対処設定部121は、他の処理部11によって呼び出され、標的IPアドレス情報テーブル131(図7)、対処状態管理テーブル132(図8)、攻撃情報テーブル133(図10)を参照することで、標的IPアドレスの一覧、対処方式、自ASで対処する標的AS宛通信量(入口GW単位、拠点単位、出口リンク単位)を取得し、これらの情報をネットワーク制御装置30に通知する。前述の通り、ネットワーク制御装置30は、受信した当該情報に基づき、入口GW等の任意のパケット転送装置を制御することで、標的AS宛通信の内、標的IPアドレスの一覧に含まれるIPアドレス宛通信を、通知された通信量分だけmitigation装置40に引き込んで対処する(または適用中の制御を解除する)。
なお、他の処理部11による攻撃対処設定部121の呼び出しのタイミングは任意であり、例えば、各種メッセージを受信したタイミング、パラメータ調整処理が収束したタイミングで呼び出されることが想定される。
また、各ASにおいて、任意の標的宛通信を要求された対処量分だけ自ASの拠点に引き込んで対処するためには、各ASのGW等に、任意の宛先IPアドレスに合致する通信を割合ベースで複数経路に分散できる機能等が必要となる。本機能については、「Juniper, "Configuring Per-Prefix Load Balancing," https://www.juniper.net/documentation/en_US/junos/topics/usage-guidelines/policy-configuring-per-prefix-load-balancing.html」等が参考とされてもよい。こうした機能を有するパケット転送装置を保有しないASにおいて、AS内の複数の入口GWから標的宛通信が流入している場合には、入口GW単位で拠点に引き込む/引き込まない標的宛通信を振り分ける(例えば、或る特定のGWから流入した標的宛通信は拠点に引き込み、別の特定のGWから流入した標的宛通信はそのまま転送のようなイメージ)か、標的IPアドレスが複数有る場合は、標的IPアドレス単位で拠点に引き込む/引き込まない通信を振り分ける(例えば、192.0.2.1/32宛通信は拠点に引き込み、192.0.2.2/32宛通信はそのまま転送のようなイメージ)ことが想定される。また、前記入口GW単位の振り分けと標的IPアドレス単位の振り分けの組み合わせも想定される。
このように、各ASにおいて、拠点に引き込める標的宛通信量の単位が限定される場合は、子からの調整要求メッセージまたは更新要求メッセージに、「引き込み可能な標的宛通信量の単位」を含めて送信し、子の対処量を表す変数の取り得る範囲を前記値に制限した混合整数最適化問題としてリソース最適化の問題を構築することで、子の対処量を「引き込み可能な標的宛通信量の単位」の中で決定することが想定される。「引き込み可能な標的宛通信量の単位」は、例えば、GWx、GWyから標的宛通信が流入しており、入口GW単位での振り分けを行う場合は、{0,GWxを流れる標的宛通信量,GWyを流れる標的宛通信量,GWx+GWyを流れる標的宛通信量}のように、0と各GWを流れる標的宛通信量単体、又はその組み合わせの集合として表すことができる。
対処終了判断部122は、他の処理部11によって呼び出され、標的IPアドレス情報テーブル131(図7)の標的IPアドレスと、攻撃検知装置20が定期的に取得するトラヒック情報とを突合することで、各標的IPアドレス宛通信量を取得し、各標的AS宛攻撃の通信量の合計値を計算する。対処終了判断部122は、当該合計値と事前設定された閾値とを定期的に比較し、当該合計値が閾値を下回った場合に、自ASの対処を終了し、終了する標的AS番号と自身のAS番号を含む対処終了要求を親の連携対処装置10に送信する。
ここで、対処終了判断の方法としては、前記閾値を用いた定期的な比較のほか、対処要求メッセージ等にその対処の有効期限を示すライフタイムを付与して送信し、そのライフタイムが0になった場合に、自身のメッセージ受付部111に対処終了要求メッセージを送信して、対処終了処理を行う等の方法も想定される。特に、ライフタイムで対処終了を管理する場合、AS間での対処終了メッセージの送受信は発生せず、各AS内で完結して特定のAS宛攻撃への対処終了が実施される。
上述したように、本実施の形態によれば、インターネット全体でmitigation装置40のリソースを共用してDDoS攻撃(特定の宛先に対する通信)に連携対処する場合で、複数のAS間リンクやmitigation拠点を保有し、遅延・消費帯域等の観点から流入元に近い拠点のリソースを利用した攻撃対処を行うTier1 ISPのようなグローバル規模のASと連携する場合でも、AS間リンク帯域の輻輳を回避することで、他の通信サービスへの影響を抑えつつ、各ASの拠点単位でmitigation装置40のリソース使用率を平準化することで、インターネット全体としてより多くのDDoS攻撃に対処可能となる。
なお、本実施の形態において、連携対処装置10は、対処装置の一例である。攻撃検知メッセージ処理部112又は対処要求メッセージ処理部113は、要求部の一例である。調整要求メッセージ処理部115は、受信部、取得部及び送信部の一例である。パラメータ調整部120は、算出部の一例である。AS2は、第1のASの一例である。AS3及びAS4は、第2のASの一例である。
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
10 連携対処装置
11 処理部
12 通信部
13 記憶部
20 攻撃検知装置
30 ネットワーク制御装置
40 mitigation装置
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 CPU
105 インタフェース装置
111 メッセージ受付部
112 攻撃検知メッセージ処理部
113 対処要求メッセージ処理部
114 対処応答メッセージ処理部
115 調整要求メッセージ処理部
116 更新要求メッセージ処理部
117 輻輳対処メッセージ処理部
118 対処終了要求メッセージ処理部
119 輻輳検査部
120 パラメータ調整部
121 攻撃対処設定部
122 対処終了判断部
131 標的IPアドレス情報テーブル
132 対処状態管理テーブル
133 攻撃情報テーブル
134 AS間リンク情報テーブル
135 GW・拠点対応情報テーブル
136 拠点情報テーブル
137 連携先AS情報テーブル
B バス
t1 標的システム

Claims (7)

  1. 特定の宛先に対する通信に対処する拠点を含むAS(Autonomous System)ごとに設置される対処装置であって、
    当該対処装置に対応する第1のASよりも前記通信に関して上流側の第2のASに対応する他の対処装置に対して、前記通信に対する対処を要求する要求部と、
    前記他の対処装置から、前記第2のASにおいて前記対処に利用される前記拠点ごとに、当該拠点に対応する前記通信の入口における通信量の和である引き込み可能な通信量と、前記第2のASにおける前記通信の出口リンクの輻輳を回避するために前記第2のASにおいて対処すべき前記出口リンクごとの最低量とを受信する受信部と、
    前記第2のASが前記対処を実施しなかった場合に前記第1のASにおいて前記対処に利用される前記拠点ごとに、当該拠点に対応する前記通信の入口における通信量の和である引き込み可能な通信量を取得する取得部と、
    前記各拠点単位の対処量が、前記各拠点についての前記引き込み可能な通信量以下であること、かつ、前記第1のASの各拠点及び前記第2のASの各拠点のリソース使用率が平準化されること、かつ、前記各出口リンク単位の前記第2のASにおける対処量が、当該出口リンクに対する前記最低量以上であることを制約条件とし、前記各拠点単位の対処量及び前記各出口リンク単位の前記第2のASにおける対処量を変数とする最適化問題を解くことで、前記各拠点単位の対処量及び前記各出口リンク単位の前記第2のASにおける対処量を算出する算出部と、
    を有することを特徴とする対処装置。
  2. 前記受信部は、前記第2のASにおける入口ごとの前記通信の通信量を受信し、
    前記取得部は、前記第1のASにおける入口ごとの前記通信の通信量を取得し、
    前記算出部は、更に、前記第1のAS及び前記第2のASのそれぞれの前記入口単位の対処量が、当該入口の前記通信量以下であることを制約条件として、前記最適化問題を解くことで、前記入口単位の対処量を算出する、
    ことを特徴とする請求項1記載の対処装置。
  3. 前記算出部が算出した情報を、前記他の対処装置に送信することで、当該情報に基づく対処を前記他の対処装置に実行させる送信部、
    を有することを特徴とする請求項1又は2記載の対処装置。
  4. 特定の宛先に対する通信に対処する拠点を含むAS(Autonomous System)ごとに設置される対処装置が、
    当該対処装置に対応する第1のASよりも前記通信に関して上流側の第2のASに対応する他の対処装置に対して、前記通信に対する対処を要求する要求手順と、
    前記他の対処装置から、前記第2のASにおいて前記対処に利用される前記拠点ごとに、当該拠点に対応する前記通信の入口における通信量の和である引き込み可能な通信量と、前記第2のASにおける前記通信の出口リンクの輻輳を回避するために前記第2のASにおいて対処すべき前記出口リンクごとの最低量とを受信する受信手順と、
    前記第2のASが前記対処を実施しなかった場合に前記第1のASにおいて前記対処に利用される前記拠点ごとに、当該拠点に対応する前記通信の入口における通信量の和である引き込み可能な通信量を取得する取得部と、
    前記各拠点単位の対処量が、前記各拠点についての前記引き込み可能な通信量以下であること、かつ、前記第1のASの各拠点及び前記第2のASの各拠点のリソース使用率が平準化されること、かつ、前記各出口リンク単位の前記第2のASにおける対処量が、当該出口リンクに対する前記最低量以上であることを制約条件とし、前記各拠点単位の対処量及び前記各出口リンク単位の前記第2のASにおける対処量を変数とする最適化問題を解くことで、前記各拠点単位の対処量及び前記各出口リンク単位の前記第2のASにおける対処量を算出する算出手順と、
    を実行することを特徴とする対処方法。
  5. 前記受信手順は、前記第2のASにおける入口ごとの前記通信の通信量を受信し、
    前記取得部は、前記第1のASにおける入口ごとの前記通信の通信量を取得し、
    前記算出手順は、更に、前記第1のAS及び前記第2のASのそれぞれの前記入口単位の対処量が、当該入口の前記通信量以下であることを制約条件として、前記最適化問題を解くことで、前記入口単位の対処量を算出する、
    ことを特徴とする請求項4記載の対処方法。
  6. 前記算出手順が算出した情報を、前記他の対処装置に送信することで、当該情報に基づく対処を前記他の対処装置に実行させる送信手順、
    を前記対処装置が実行することを特徴とする請求項4又は5記載の対処方法。
  7. 請求項1乃至3いずれか一項記載の各部としてコンピュータを機能させることを特徴とするプログラム。
JP2017195736A 2017-10-06 2017-10-06 対処装置、対処方法及びプログラム Active JP6777615B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017195736A JP6777615B2 (ja) 2017-10-06 2017-10-06 対処装置、対処方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017195736A JP6777615B2 (ja) 2017-10-06 2017-10-06 対処装置、対処方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2019071520A JP2019071520A (ja) 2019-05-09
JP6777615B2 true JP6777615B2 (ja) 2020-10-28

Family

ID=66441366

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017195736A Active JP6777615B2 (ja) 2017-10-06 2017-10-06 対処装置、対処方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6777615B2 (ja)

Also Published As

Publication number Publication date
JP2019071520A (ja) 2019-05-09

Similar Documents

Publication Publication Date Title
Sivaraman et al. High throughput cryptocurrency routing in payment channel networks
US9270536B2 (en) BGP slow peer detection
US8817798B2 (en) Constraining topology size and recursively calculating routes in large networks
JP5975083B2 (ja) 通信システム、制御装置、パケット転送経路の制御方法およびプログラム
US9754297B1 (en) Network routing metering
US9401868B2 (en) Method of traffic engineering for provisioning routing and storage in content-oriented networks
US11146477B2 (en) Discovery and admission control of forwarding boxes in a software-defined network
EP3166268A1 (en) Load sharing method and routing device
WO2016186861A1 (en) Method and apparatus for self-tuned adaptive routing
WO2020136052A1 (en) Packet analysis and filtering
JP6612197B2 (ja) DDoS連携対処装置、DDoS連携対処方法及びプログラム
Bedi et al. Mitigating congestion based DoS attacks with an enhanced AQM technique
KR101897423B1 (ko) 정책 기반 네트워크들에서의 개선된 네트워크 이용
CN104994019B (zh) 一种用于sdn控制器的水平方向接口系统
JP6777615B2 (ja) 対処装置、対処方法及びプログラム
JP2017147516A (ja) DDoS攻撃情報共有装置、動作方法及びプログラム
Merlin et al. Latency-aware forwarding for IRON: Latency support for back-pressure forwarding
JP6679521B2 (ja) 通信システム及びDDoS連携対処方法
JP2006287919A (ja) 通信ネットワーク、コンテンツ配信ノード、ツリー構築方法、コンテンツ配信制御プログラム
JP2007227997A (ja) オーバーレイネットワークにおける通信経路決定方法および通信経路決定システム
WO2012167623A1 (zh) 一种选择路由的方法及设备
JP6718416B2 (ja) 通信システム及びDDoS攻撃連携対処方法
de Deus et al. Internet capacity: optimizing autonomous system inbound traffic using specialist knowledge as support for decision-making
US11876831B2 (en) DDoS coping apparatus, DDoS coping method and program
Wijekoon et al. Slrouting: Server link router state routing protocol design and implementation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200911

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201008

R150 Certificate of patent or registration of utility model

Ref document number: 6777615

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150