【国等の委託研究の成果に係る記載事項】(出願人による申告)平成23年度、総務省、「国際連携によるサイバー攻撃の予知技術の研究開発」委託研究、産業技術力強化法第19条の適用を受ける特許出願
【文献】
大規模分散DoS攻撃に対する適応的防御手法の提案 An Adaptive Defense Against Large DDoS Attack,電子情報通信学会技術研究報告 Vol.110 No.449 IEICE Technical Report,2011年 2月24日
【文献】
DDoS攻撃に対するアクティブシェーピング手法の評価 Evaluation of Active Shaping Method against DDoS Attacks,情報処理学会研究報告 Vol.2003 No.87 IPSJ SIG Technical Reports,2003年 8月29日
(58)【調査した分野】(Int.Cl.,DB名)
前記算出部は、前記取得部により取得されたIPアドレスレンジの少なくとも一部のIPアドレスに対して、当該IPアドレスへ至る通信経路のリンク容量を取得し、当該リンク容量を前記エッジルータが処理可能な通信量を示す値として算出する請求項1又は請求項2に記載の攻撃対策装置。
前記算出部は、前記取得部により取得されたIPアドレスレンジの少なくとも一部のIPアドレスに対して、当該IPアドレスへ至る通信経路に基づいて、前記隣接するエッジルータを判定することにより、当該隣接するエッジルータが管理するIPアドレスの数を、当該エッジルータが処理可能な通信量を示す値として算出する請求項1から請求項3のいずれかに記載の攻撃対策装置。
前記対処情報記憶部に記憶されている前記対処方法に関するデータに基づいて、予め設定されている所定の処理を実行する対処実行部を備える請求項5に記載の攻撃対策装置。
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、例えば、攻撃パケットを迂回させる方式の場合、正常なパケットも大きく影響を受ける。これらの正常なパケットを分別するためには、攻撃を解析する必要があるため、対処に時間が掛かる。また、リンク容量又はルータの許容パケット数等によって、通信機器を保護するための緊急度も異なるため、攻撃に対して画一的な対処が実行されることは適切ではなかった。
【0006】
本発明は、攻撃を検知した際の対処を管理者がより適切に行うための情報を取得できる攻撃対策装置、攻撃対策方法及び攻撃対策プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明では、以下のような解決手段を提供する。
【0008】
(1)所定のネットワークに属するホストへの攻撃が検知された場合に、当該ネットワークの管理者が行う対処を支援する攻撃対策装置であって、前記ネットワークが管理する複数のIPアドレスレンジを取得する取得部と、前記取得部により取得されたIPアドレスレンジのそれぞれについて、隣接するエッジルータが処理可能な通信量を示す値を算出する算出部と、前記攻撃が検知された場合に、当該攻撃の対象であるIPアドレス及び当該攻撃に係る通信量を取得し、当該攻撃に係る通信量に対して、当該IPアドレスに隣接するエッジルータの前記処理可能な通信量の余剰量を示す情報を報知する報知部と、を備える攻撃対策装置。
【0009】
このような構成によれば、攻撃対策装置は、ネットワーク内のIPアドレスレンジに隣接するエッジルータが処理可能な通信量を示す値を算出する。そして、攻撃対策装置は、攻撃を検知した際には、処理可能な通信量の余剰量、すなわち、この攻撃に係る通信量をエッジルータが処理可能か否かを判断できる情報を報知する。したがって、攻撃対策装置は、攻撃を検知した際の対処を管理者がより適切に行うための情報を提供できる。
【0010】
(2)前記取得部は、所定のルーティング情報から、前記ネットワークが管理するAS番号宛のIPアドレスレンジを取得する(1)に記載の攻撃対策装置。
【0011】
このような構成によれば、攻撃対策装置は、所定のルーティング情報から、ネットワークが管理するAS番号宛のIPアドレスレンジを容易に取得することができる。
【0012】
(3)前記算出部は、前記取得部により取得されたIPアドレスレンジの少なくとも一部のIPアドレスに対して、当該IPアドレスへ至る通信経路のリンク容量を取得し、当該リンク容量を前記エッジルータが処理可能な通信量を示す値として算出する(1)又は(2)に記載の攻撃対策装置。
【0013】
このような構成によれば、攻撃対策装置は、エッジルータが処理可能な通信量を示す値として、エッジルータ毎のリンク容量を計測するので、容易にエッジルータの規模を推測できる。
【0014】
(4)前記算出部は、前記取得部により取得されたIPアドレスレンジの少なくとも一部のIPアドレスに対して、当該IPアドレスへ至る通信経路に基づいて、前記隣接するエッジルータを判定することにより、当該隣接するエッジルータが管理するIPアドレスの数を、当該エッジルータが処理可能な通信量を示す値として算出する(1)から(3)のいずれかに記載の攻撃対策装置。
【0015】
このような構成によれば、攻撃対策装置は、エッジルータが処理可能な通信量を示す値として、エッジルータが管理するIPアドレス数を導出する。したがって、攻撃対策装置は、容易にエッジルータの規模を推測できる。
【0016】
(5)前記処理可能な通信量の余剰量に対応して、前記攻撃に対する対処方法に関するデータを予め記憶する対処情報記憶部を備え、前記報知部は、前記処理可能な通信量の余剰量に応じて、前記対処情報記憶部に記憶されている前記対処方法に関するデータを報知する(1)から(4)のいずれかに記載の攻撃対策装置。
【0017】
このような構成によれば、攻撃対策装置は、処理可能な通信量の余剰量に対応して、予め記憶されている対処方法に関するデータを報知するので、管理者は、攻撃に対する対処をより適切に行える。
【0018】
(6)前記対処情報記憶部に記憶されている前記対処方法に関するデータに基づいて、予め設定されている所定の処理を実行する対処実行部を備える(5)に記載の攻撃対策装置。
【0019】
このような構成によれば、攻撃対策装置は、記憶されている対処方法に関するデータに基づいて、予め設定されている所定の処理を自動的に実行できるので、管理者の負荷を低減できると共に、対処の正確性を向上できる可能性がある。
【0020】
(7)所定のネットワークに属するホストへの攻撃が検知された場合に、当該ネットワークの管理者が行う対処をコンピュータが支援する攻撃対策方法であって、前記ネットワークが管理する複数のIPアドレスレンジを取得する取得ステップと、前記取得ステップにおいて取得されたIPアドレスレンジのそれぞれについて、隣接するエッジルータが処理可能な通信量を示す値を算出する算出ステップと、前記攻撃が検知された場合に、当該攻撃の対象であるIPアドレス及び当該攻撃に係る通信量を取得し、当該攻撃に係る通信量に対して、当該IPアドレスに隣接するエッジルータの前記処理可能な通信量の余剰量を示す情報を報知する報知ステップと、を含む攻撃対策方法。
【0021】
このような構成によれば、攻撃対策方法をコンピュータが実行することにより、(1)と同様の効果が期待できる。
【0022】
(8)所定のネットワークに属するホストへの攻撃が検知された場合に、当該ネットワークの管理者が行う対処をコンピュータに支援させるための攻撃対策プログラムであって、前記ネットワークが管理する複数のIPアドレスレンジを取得する取得ステップと、前記取得ステップにおいて取得されたIPアドレスレンジのそれぞれについて、隣接するエッジルータが処理可能な通信量を示す値を算出する算出ステップと、前記攻撃が検知された場合に、当該攻撃の対象であるIPアドレス及び当該攻撃に係る通信量を取得し、当該攻撃に係る通信量に対して、当該IPアドレスに隣接するエッジルータの前記処理可能な通信量の余剰量を示す情報を報知する報知ステップと、を前記コンピュータに実行させるための攻撃対策プログラム。
【0023】
このような構成によれば、攻撃対策プログラムをコンピュータに実行させることにより、(1)と同様の効果が期待できる。
【発明の効果】
【0024】
本発明によれば、攻撃を検知した際の対処を管理者がより適切に行うための情報を提供できる。
【発明を実施するための形態】
【0026】
<第1実施形態>
以下、本発明の第1実施形態について説明する。
本実施形態に係る攻撃対策装置1は、インターネットサービスプロバイダ等の所定のネットワークに属するホストへの攻撃が検知された場合に、このネットワークの管理者が行う対処を支援するサーバ装置である。なお、攻撃対策装置1は、ネットワーク内の少なくともコアルータを含む各種ルータと通信可能であり、ルータからネットワークフローデータ又はパケットキャプチャデータ等、通信のデータを取得すると共に、攻撃対処のために通信経路を制御したり、フィルタリング機能の実行を指示したりできる。
【0027】
図1は、本実施形態に係る攻撃対策装置1の機能構成を示す図である。
攻撃対策装置1は、制御部10と、記憶部20と、通信部30と、入力部40と、表示部50とを備える。
【0028】
制御部10は、攻撃対策装置1の全体を制御する部分であり、記憶部20に記憶された各種プログラムを適宜読み出して実行することにより、前述のハードウェアと協働し、本実施形態における各種機能を実現している。制御部10は、CPU(Central Processing Unit)であってよい。なお、制御部10が備える各部の機能は後述する。
【0029】
記憶部20は、ハードウェア群を攻撃対策装置1として機能させるための各種プログラム、本実施形態の各種機能を制御部10に実行させるためのプログラム、及び各種データ等を記憶する。なお、記憶部20が備える各種データは後述する。
【0030】
通信部30は、攻撃対策装置1が他の装置と情報を送受信する場合のネットワーク・アダプタであり、ネットワーク内のコアルータにアクセスし、ネットワークフローデータ又はパケットキャプチャデータ等、通信のデータを取得して制御部10へ提供する。また、通信部30は、制御部10からの指示に従ってルータに制御信号を送信する。
【0031】
入力部40は、攻撃対策装置1に対するユーザからの指示入力を受け付けるインタフェース装置である。入力部40は、例えばキー操作部やタッチパネルにより構成される。
【0032】
表示部50は、ユーザにデータの入力を受け付ける画面を表示したり、攻撃対策装置1による処理結果の画面を表示したりするものである。ユーザは、表示部50に表示された画面により、攻撃が検知されたこと、及び対処方法に関する情報を確認する。表示部50は、液晶ディスプレイや有機ELディスプレイであってよい。
【0033】
前述の制御部10は、取得部11と、リンク容量計測部12(算出部)と、攻撃検知部13と、報知部14と、対処実行部15とを備える。また、記憶部20は、ネットワーク構成DB21と、対処情報DB22(対処情報記憶部)とを備える。
【0034】
取得部11は、監視対象である所定のネットワークが管理している複数のIPアドレスレンジを取得する。具体的には、取得部11は、例えば、インターネット上のサイトに公開されている所定のルーティング情報から、ネットワークが管理するAS(Autonomous System number)番号宛のIPアドレスレンジを抽出する。
【0035】
図2は、ルーティング情報から取得されたIPアドレスレンジの一例を示す図である。
この例では、AS10002が管理するIPアドレスレンジは、192.168.0.0/24及び192.168.1.0/24である。
【0036】
リンク容量計測部12は、取得部11により取得されたIPアドレスレンジのそれぞれについて、隣接するエッジルータが処理可能な通信量を示す値を算出する。
【0037】
図3は、本実施形態に係る監視対象ネットワークにおける攻撃対象ホストへ至る通信経路を示す図である。
攻撃対象ホストを宛先とするデータパケットは、コアルータを基点に配下のルータを経由して、ホストに隣接するエッジルータに至る。このとき、エッジルータに対するリンク容量、又はエッジルータの収容ホスト数は、間接的にエッジルータが処理可能な通信量を示している。
【0038】
リンク容量計測部12は、取得部11により取得されたIPアドレスレンジの少なくとも一部のIPアドレスに対して、「pchar」又は「pathchar」等のコマンドを実行する。そして、リンク容量計測部12は、コマンドの実行結果から、指定したIPアドレスへ至る通信経路のリンク容量を取得し、このリンク容量をエッジルータが処理可能な通信量を示す値として、ネットワーク構成DB21に記憶する。
【0039】
図4は、pcharコマンドの実行結果の一例を示す図である。
リンク容量計測部12は、この実行結果の中で、「Path bottleneck」の値「2925.714286Kbps」を、エッジルータに対するリンク容量として取得する。
【0040】
図5は、ネットワーク構成DB21に格納されるリンク容量対応表を示す図である。
この対応表には、IPアドレスレンジに対応して、エッジルータのリンク容量が記憶されている。例えば、アドレスレンジ「192.168.0.0/24」の中の1つのIPアドレス「192.168.0.1」に対して
図4に示す計測結果が得られた場合、このアドレスレンジ「192.168.0.0/24」に対して、リンク容量「2.9Mbps」が記憶される。
【0041】
攻撃検知部13は、監視対象である所定のネットワークにおいて、トラフィックを監視し、DoS攻撃を受けたことを検知する。
【0042】
報知部14は、攻撃検知部13により攻撃が検知された場合に、この攻撃の対象であるIPアドレス及び攻撃に係る通信量を取得し、この攻撃に係る通信量に対して、攻撃対象のIPアドレスに隣接するエッジルータの処理可能な通信量を示すリンク容量の余剰量を示す情報を報知する。
【0043】
例えば、報知部14は、検知された攻撃に係る通信量がリンク容量を超える、又は所定の閾値を超える場合に警告を出力する。これにより、管理者は、攻撃対象のIPアドレス以外のホストに対しても影響が及ぶため緊急性が高いことを把握でき、このIPアドレス宛のトラフィックをブラックホールルータへ転送する対処を実施できる。また、リンク容量が攻撃に比して十分に大きい場合には、トラフィックがさらに増加した場合に対処すればよく、管理者は、緊急性が低いことを把握できる。
【0044】
ここで、対処情報DB22は、処理可能な通信量を示すリンク容量の余剰量に対応して、攻撃に対する対処方法に関するデータを予め記憶している。このデータは、例えば、対処の緊急度を示すデータ、又は具体的な対処方法(ブラックホールルータへの転送、フィルタリングルールの設定等)を推奨するデータ等である。
そして、報知部14は、リンク容量の余剰量に応じて、対処情報DB22に記憶されている対処方法に関するデータを報知する。
【0045】
対処実行部15は、報知部14により抽出された対処情報DB22に記憶されている対処方法に関するデータに基づいて、予め設定されている所定の処理を実行する。このとき、対処実行部15は、表示部50を介して、実行の可否を管理者に問い合わせ、入力部40を介して、指示入力を受け付けてもよい。
【0046】
図6は、本実施形態に係るリンク容量対応表を生成する処理を示すフローチャートである。
【0047】
ステップS1において、取得部11は、監視対象である所定のネットワークが管理している複数のIPアドレスレンジを取得する。
【0048】
ステップS2において、リンク容量計測部12は、ステップS1で取得されたIPアドレスレンジ毎に、少なくとも一部のIPアドレスに対して、「pchar」又は「pathchar」等のコマンドを実行し、指定したIPアドレスへ至る通信経路のリンク容量を計測する。
【0049】
ステップS3において、リンク容量計測部12は、ステップS2で計測されたリンク容量を、ネットワーク構成DB21のリンク容量対応表(
図5)に記憶する。
【0050】
ステップS4において、リンク容量計測部12は、ステップS1で取得された全てのIPアドレスレンジについて、リンク容量の計測を行ったか否かを判定する。この判定がYESの場合、処理は終了し、判定がNOの場合、処理はステップS2に戻って、別のIPアドレスレンジについてリンク容量の計測を継続する。
【0051】
図7は、本実施形態に係る監視対象ネットワークへの攻撃が検知された場合の処理を示すフローチャートである。
【0052】
ステップS11において、攻撃検知部13は、検知された攻撃に関するネットワークフローデータ又はパケットキャプチャデータ等、通信のデータから、攻撃対象のIPアドレスを取得する。
【0053】
ステップS12において、報知部14は、リンク容量対応表から、ステップS11で取得したIPアドレスに対応するエッジルータのリンク容量を取得する。
【0054】
ステップS13において、報知部14は、検知された攻撃の通信量がステップS12で取得したリンク容量を超えているか否かを判定する。この判定がYESの場合、処理はステップS14に移り、判定がNOの場合、処理はステップS15に移る。
【0055】
ステップS14において、報知部14は、攻撃に対して即座に対処を行う必要があることを示す警告を出力する。
【0056】
ステップS15において、報知部14は、攻撃に関する情報として、攻撃対象のIPアドレス、攻撃の通信量、エッジルータのリンク容量等を出力する。
【0057】
以上のように、本実施形態によれば、攻撃対策装置1は、ネットワーク内のIPアドレスレンジに隣接するエッジルータが処理可能な通信量を示す値を算出する。そして、攻撃対策装置1は、攻撃を検知した際には、処理可能な通信量の余剰量、すなわち、この攻撃に係る通信量をエッジルータが処理可能か否かを判断できる情報を報知する。したがって、攻撃対策装置1は、攻撃を検知した際の対処を管理者がより適切に行うための情報を提供できる。
このとき、攻撃対策装置1は、所定のルーティング情報から、ネットワークが管理するAS番号宛のIPアドレスレンジを容易に取得することができる。
【0058】
また、具体的には、攻撃対策装置1は、エッジルータが処理可能な通信量を示す値として、エッジルータ毎のリンク容量をコマンド実行により計測するので、容易にエッジルータの規模を推測できる。
【0059】
また、攻撃対策装置1は、処理可能な通信量の余剰量に対応して、予め記憶されている対処方法に関するデータを報知するので、管理者は、攻撃に対する対処をより適切に行える。
【0060】
また、攻撃対策装置1は、記憶されている対処方法に関するデータに基づいて、予め設定されている所定の処理を自動的に実行できるので、管理者の負荷を低減できると共に、対処の正確性を向上できる可能性がある。
【0061】
<第2実施形態>
以下、本発明の第2実施形態について説明する。
本実施形態において、攻撃対策装置1aは、エッジルータが処理可能な通信量を示す値として、第1実施形態で計測されるリンク容量に替えて、エッジルータが管理するIPアドレスの数を導出する。
なお、第1実施形態と同様の構成に対しては、同一の符号を付し、説明を省略又は簡略化する。
【0062】
図8は、本実施形態に係る攻撃対策装置1aの機能構成を示す図である。
第1実施形態の攻撃対策装置1とは、制御部10aのアドレス数導出部12a(算出部)及び報知部14aと、記憶部20aのネットワーク構成DB21aとが異なる。
【0063】
アドレス数導出部12aは、取得部11により取得されたIPアドレスレンジのそれぞれについて、少なくとも一部のIPアドレスに対して「traceroute」コマンドを実行する。そして、アドレス数導出部12aは、コマンドの実行結果として得られるIPアドレスへ至る通信経路に基づいて、IPアドレスレンジに隣接するエッジルータを判定する。アドレス数導出部12aは、複数のIPアドレス数レンジに対応するエッジルータの重複を考慮して、エッジルータのそれぞれが管理するIPアドレスの数を導出し、このIPアドレス数をエッジルータが処理可能な通信量を示す値として、ネットワーク構成DB21に記憶する。
【0064】
図9は、tracerouteコマンドの実行結果の一例を示す図である。
アドレス数導出部12aは、IPアドレスレンジ「192.168.0.0/24」の一部である「192.168.0.1」に対してコマンドを実行し、この実行結果の中で、「192.168.0.1」の直前のIPアドレス、すなわち「192.168.100.2」がエッジルータであると判定する。
【0065】
この実行結果は、エッジルータ「192.168.100.2」がIPアドレスレンジ「192.168.0.0/24」に属している少なくとも256個のIPアドレスを管理していることを示している。
【0066】
同様に、IPアドレスレンジ「192.168.1.0/24」の一部である「192.168.1.1」についても、「192.168.100.2」がエッジルータであると判定された場合、エッジルータ「192.168.100.2」は、合計512個のIPアドレスを管理していることが導出される。
【0067】
図10は、ネットワーク構成DB21aに格納されるIPアドレス数対応表を示す図である。
この対応表には、IPアドレスレンジに対応して、エッジルータのIPアドレス、及びエッジルータが管理するIPアドレス数が記憶されている。例えば、アドレスレンジ「192.168.0.0/24」及び「192.168.1.0/24」に対して、上述のように導出されたIPアドレス数「512」が記憶される。
【0068】
報知部14aは、攻撃検知部13により攻撃が検知された場合に、この攻撃の対象であるIPアドレス及び攻撃に係る通信量を取得する。そして、報知部14aは、この攻撃に係る通信量に対して、攻撃対象のIPアドレスに隣接するエッジルータが管理するIPアドレス数に応じて推定される処理可能な通信量の余剰量を示す情報を報知する。
【0069】
図11は、本実施形態に係るIPアドレス数対応表を生成する処理を示すフローチャートである。
【0070】
ステップS21において、取得部11は、監視対象である所定のネットワークが管理している複数のIPアドレスレンジを取得する。
【0071】
ステップS22において、アドレス数導出部12aは、ステップS21で取得されたIPアドレスレンジ毎に、少なくとも一部のIPアドレスに対して、「traceroute」等のコマンドを実行し、指定したIPアドレスに隣接するエッジルータが管理するIPアドレス数を導出する。
【0072】
ステップS23において、アドレス数導出部12aは、ステップS22で導出されたIPアドレス数に基づいて、ネットワーク構成DB21のIPアドレス数対応表(
図10)を更新する。このとき、アドレス数導出部12aは、エッジルータが共通するIPアドレスレンジについて、既に対応して記憶されているIPアドレス数に、新たに導出されたIPアドレス数を加算して更新する。
【0073】
ステップS24において、アドレス数導出部12aは、ステップS21で取得された全てのIPアドレスレンジについて、IPアドレス数の導出を行ったか否かを判定する。この判定がYESの場合、処理は終了し、判定がNOの場合、処理はステップS22に戻って、別のIPアドレスレンジについて処理を継続する。
【0074】
図12は、本実施形態に係る監視対象ネットワークへの攻撃が検知された場合の処理を示すフローチャートである。
【0075】
ステップS31において、攻撃検知部13は、検知された攻撃に関するネットワークフローデータ又はパケットキャプチャデータ等、通信のデータから、攻撃対象のIPアドレスを取得する。
【0076】
ステップS32において、報知部14aは、IPアドレス数対応表から、ステップS31で取得したIPアドレスに対応するエッジルータが管理するIPアドレス数を取得する。
【0077】
ステップS33において、報知部14aは、検知された攻撃の通信量がステップS32で取得したIPアドレス数を管理するためのエッジルータの規模を超えているか否かを判定する。この判定がYESの場合、処理はステップS34に移り、判定がNOの場合、処理はステップS35に移る。
【0078】
ステップS34において、報知部14aは、攻撃に対して即座に対処を行う必要があることを示す警告を出力する。
【0079】
ステップS35において、報知部14aは、攻撃に関する情報として、攻撃対象のIPアドレス、攻撃の通信量、エッジルータの規模等を出力する。
【0080】
以上のように、本実施形態によれば、攻撃対策装置1は、エッジルータが処理可能な通信量を示す値として、エッジルータが管理するIPアドレス数を導出する。したがって、攻撃対策装置1は、容易にエッジルータの規模を推測でき、第1実施形態と同様の効果が期待できる。
【0081】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本実施形態に記載されたものに限定されるものではない。
【0082】
攻撃対策装置1又は1aは、ネットワークに接続可能な情報処理装置の一例であり、サーバ装置又はPC(Personal Computer)等、様々な情報処理装置(コンピュータ)であってよく、前述の各機能は、ソフトウェアにより実現される。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、上記情報処理装置にインストールされる。また、これらのプログラムは、CD−ROMのようなリムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。