(57)【要約】【課題】極めて簡便な方法でアドレス不定型のＤｏＳ攻撃であってもそれを検知可能なＤｏＳ攻撃検知方法、ＤｏＳ攻撃検知装置及びプログラムを提供する。【解決手段】ＤｏＳ攻撃検知装置１０１は、送信元Ａ１〜Ａｉから送られた通信パケットを受信し、送信元ＩＰアドレス等を含むヘッダ部分を抽出する処理を行うパケット処理部１０２と、パケット処理部１０２にて抽出されたヘッダ部分を記憶するヘッダ情報記憶部１０３と、単位処理時間当たりのパケット数をカウントする判定値算出部１０４と、判定値算出部１０４により算出された判定値に基づきＤｏＳ攻撃か否かを判定するＤｏＳ攻撃判定手段である判定部１０５と、判定部１０５によりＤｏＳ攻撃を検知した場合に適切な処理行う検知時処理部１０６とを備える。【選択図】　図１
2004140524.tif 000002
【特許請求の範囲】
【請求項１】
単位処理時間当たりに受信した通信パケットのパケット数及び／又は該通信パケットから抽出したヘッダ情報に基づきＤｏＳ攻撃を検知する検知工程を有する
ことを特徴とするＤｏＳ攻撃検知方法。
【請求項２】
上記検知工程は、
上記通信パケットを受信する工程と、
上記単位処理時間当たりに受信した上記通信パケットのパケット数をカウントする判定値算出工程と、
上記判定値算出工程の算出結果に基づきＤｏＳ攻撃であるか否かを判定するＤｏＳ攻撃判定工程と
を有することを特徴とする請求項１記載のＤｏＳ攻撃検知方法。
【請求項３】
上記検知工程は、受信した上記通信パケットのヘッダ情報を記録手段に記録する工程を有し、
上記判定値算出工程では、上記単位処理時間当たりに受信した上記通信パケットのパケット数が所定の閾値以上である場合に、上記通信パケットのヘッダ情報から送信元アドレスが抽出され、上記単位処理時間に抽出した該送信元アドレス数がカウントされ、
上記ＤｏＳ攻撃判定工程では、上記送信元アドレス数が所定の閾値以上である場合にＤｏＳ攻撃であると判定される
ことを特徴とする請求項２記載のＤｏＳ攻撃検知方法。
【請求項４】
上記判定値算出工程は、上記単位処理時間当たりに受信した上記通信パケットのパケット数が所定の閾値以上である場合に、上記通信パケットのヘッダ情報から送信元アドレスを抽出し、該送信元アドレスの乱数性を評価する乱数評価工程を有し、
上記ＤｏＳ攻撃判定工程では、上記乱数評価の結果に基づきＤｏＳ攻撃であるか否かが判定される
ことを特徴とする請求項２記載のＤｏＳ攻撃検知方法。
【請求項５】
上記判定値算出工程では、上記単位処理時間当たりに受信した上記通信パケットのパケット数が所定の閾値以上である場合に、上記通信パケットのヘッダ情報から送信元アドレスが抽出され、上記単位処理時間当たりに受信した上記パケット数を上記送信元アドレスの信頼度に応じて重み付けした数値が算出され、
上記ＤｏＳ攻撃判定工程では、上記重み付けした数値に基づきＤｏＳ攻撃であるか否かが判定される
ことを特徴とする請求項２記載のＤｏＳ攻撃検知方法。
【請求項６】
ＤｏＳ攻撃が検知された場合、上記通信パケットの受信元の使用者に対してＤｏＳ攻撃の検知を通知する通知工程を有する
ことを特徴とする請求項１記載のＤｏＳ攻撃検知方法。
【請求項７】
ＤｏＳ攻撃が検知された場合、所定期間、通信パケットの受信が拒否される
ことを特徴とする請求項１記載のＤｏＳ攻撃検知方法。
【請求項８】
単位時間当たりに受信した通信パケットのパケット数及び／又は該通信パケットのヘッダ情報に基づきＤｏＳ攻撃であるか否かを検知する検知手段を有する
ことを特徴とするＤｏＳ攻撃検知装置。
【請求項９】
上記検知手段は、
上記通信パケットを受信する受信手段と、
上記単位処理時間当たりに受信した上記通信パケットのパケット数をカウントする判定値算出手段と、
上記判定値算出手段の算出結果に基づきＤｏＳ攻撃であるか否かを判定するＤｏＳ攻撃判定手段と
を有することを特徴とする請求項８記載のＤｏＳ攻撃検知装置。
【請求項１０】
上記検知手段は、受信した上記通信パケットのヘッダ情報を記録する記録手段を有し、
上記判定値算出手段は、上記単位処理時間当たりに受信した上記通信パケットのパケット数が所定の閾値以上である場合に、上記記録手段に記録された上記通信パケットのヘッダ情報から送信元アドレスを抽出し、上記単位処理時間に抽出した該送信元アドレス数をカウントし、
上記ＤｏＳ攻撃判定手段は、上記送信元アドレス数が所定の閾値以上である場合にＤｏＳ攻撃であると判定する
ことを特徴とする請求項９記載のＤｏＳ攻撃検知装置。
【請求項１１】
上記判定値算出手段は、上記単位処理時間当たりに受信した上記通信パケットのパケット数が所定の閾値以上である場合に、上記通信パケットのヘッダ情報から送信元アドレスを抽出し、該送信元アドレスの乱数性を評価する乱数評価手段を有し、
上記ＤｏＳ攻撃判定手段は、上記乱数評価結果に基づきＤｏＳ攻撃であるか否かを判定する
ことを特徴とする請求項９記載のＤｏＳ攻撃検知装置。
【請求項１２】
上記判定値算出手段は、上記単位処理時間当たりに受信した上記通信パケットのパケット数が所定の閾値以上である場合に、上記通信パケットのヘッダ情報から送信元アドレスを抽出し、上記単位処理時間当たりに受信した上記パケット数を該送信元アドレスの信頼度に応じて重み付けした数値を算出する算出手段を有し、
上記ＤｏＳ攻撃判定手段は、上記重み付けした数値に基づきＤｏＳ攻撃であるか否かを判定する
ことを特徴とする請求項９記載のＤｏＳ攻撃検知装置。
【請求項１３】
ＤｏＳ攻撃を検知した場合に、上記通信パケットの受信元の使用者に対してＤｏＳ攻撃の検知を通知する通知手段を有する
ことを特徴とする請求項８記載のＤｏＳ攻撃検知方法。
【請求項１４】
上記通信パケットを受信する受信手段を有し、該受信手段は、ＤｏＳ攻撃を検知した場合に、所定期間、通信パケットの受信を拒否する
ことを特徴とする請求項８記載のＤｏＳ攻撃検知装置。
【請求項１５】
所定の動作をコンピュータに実行させるためのプログラムであって、
単位処理時間当たりに受信した通信パケットのパケット数及び／又は該通信パケットから抽出したヘッダ情報に基づきＤｏＳ攻撃を検知する検知工程を有する
ことを特徴とするプログラム。
【請求項１６】
上記検知工程は、
上記通信パケットを受信する工程と、
上記単位処理時間当たりに受信した上記通信パケットのパケット数をカウントする判定値算出工程と、
上記判定値算出工程の算出結果に基づきＤｏＳ攻撃であるか否かを判定するＤｏＳ攻撃判定工程と
を有することを特徴とする請求項１５記載のプログラム。
【請求項１７】
上記検知工程は、受信した上記通信パケットのヘッダ情報を記録手段に記録する工程を有し、
上記判定値算出工程では、上記単位処理時間当たりに受信した上記通信パケットのパケット数が所定の閾値以上である場合に、上記通信パケットのヘッダ情報から送信元アドレスが抽出され、上記単位処理時間に抽出した該送信元アドレス数がカウントされ、
上記ＤｏＳ攻撃判定工程では、上記送信元アドレス数が所定の閾値以上である場合にＤｏＳ攻撃であると判定される
ことを特徴とする請求項１６記載のプログラム。
【請求項１８】
上記判定値算出工程は、上記単位処理時間当たりに受信した上記通信パケットのパケット数が所定の閾値以上である場合に、上記通信パケットのヘッダ情報から送信元アドレスを抽出し、該送信元アドレスの乱数性を評価する乱数評価工程を有し、
上記ＤｏＳ攻撃判定工程では、上記乱数評価結果に基づきＤｏＳ攻撃であるか否かが判定される
ことを特徴とする請求項１６記載のプログラム。
【請求項１９】
上記判定値算出工程では、上記単位処理時間当たりに受信した上記通信パケットのパケット数が所定の閾値以上である場合に、上記通信パケットのヘッダ情報から送信元アドレスが抽出され、上記単位処理時間当たりに受信した上記パケット数を上記送信元アドレスの信頼度に応じて重み付けした数値が算出され、
上記ＤｏＳ攻撃判定工程では、上記重み付けした数値に基づきＤｏＳ攻撃であるか否かが判定される
ことを特徴とする請求項１６記載のプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ユビキタスネットワーク等において脅威となるＤｏＳ攻撃（Ｄｅｎｉａｌｏｆ　Ｓｅｒｖｉｃｅ攻撃：サービス拒否攻撃、サービス妨害攻撃、サービス不能攻撃）等の高負荷攻撃を検知するＤｏＳ攻撃検知方法、ＤｏＳ攻撃検知装置及びＤｏＳ攻撃を検知する処理をコンピュータに実行させるためのプログラムに関する。
【０００２】
【従来の技術】
ＤｏＳ攻撃とは、インターネット等で不特定多数のユーザ等の送信元に公開されたサーバ等の送信先に対して、不正な通信パケットを送ることにより、送信先のリソースを消費する等の悪影響を与え、他の送信元から該送信先へのアクセスを困難にしたり、該送信先の機能を停止させたりするものである。また、このＤｏＳ攻撃の応用としてＤＤｏＳ攻撃（Ｄｉｓｔｒｉｂｕｔｅｄ　ＤｏＳ攻撃）というものもある。
【０００３】
ＤｏＳ攻撃に使用される不正なパケットの種類によって、ＤｏＳ攻撃は、以下に分類することができる。即ち、
（１）異常形式型ＤｏＳ攻撃：パケットの形式が正常ではないもの
（２）アドレス固定型ＤｏＳ攻撃：パケットの形式は正常であるが、パケットの数が送信先に対するサービス妨害に十分な程多く、且つ、送信元ＩＰアドレスがある程度の範囲内に限定されるもの
（３）アドレス不定型ＤｏＳ攻撃：パケットの形式は正常であるが、パケットの数が送信先に対するサービス妨害に十分なほど多く、且つ送信元ＩＰアドレスがある程度の範囲内に限定されないもの
の３つに分類することができる。
【０００４】
従来、上記（１）に対する対策としては、送信先内、又は送信先と送信元との通信経路上に所定の装置を設け、この装置により、形式が異常なパケットを破棄する方法がある。パケットの形式が異常であるか否かの判定は、主にパターンマッチングによって行われる。
【０００５】
しかしながら、このような対策は、上記（１）のような異常な形式のパケットが攻撃に使用される場合には有効であるが、上記（２）及び（３）のように、パケットの形式から不正であることを検出することができない攻撃に対しては、このような対策は有効ではない。
【０００６】
次に、上記（２）に対する対策としては、特定又は特定範囲の送信元ＩＰアドレスを有する通信パケット毎に、単位時間当たりの通信量を制限するトラヒックシェーピング装置を送信先内、又は送信先と送信元との通信経路上に設置する方法がある。この方法においては、所定の通信量を超えた場合、そのパケットはトラヒックシェーピング装置によって破棄されるため、特定範囲内の送信元ＩＰアドレスを有するパケットを使用した攻撃を無効にすることができる。
【０００７】
しかしながら、上記（３）のようにパケット毎に異なる送信元ＩＰアドレスを偽装する等の手段を使用する攻撃や、ＤＤｏＳ攻撃のように、攻撃に使用されるパケットの送信元ＩＰアドレス範囲を限定しない攻撃に関しては、このように、送信元ＩＰアドレス毎に通信量制限を行うこの方法は有効ではない。
【０００８】
上記（３）に対する対策としては、上記（３）の攻撃は、送信元ＩＰアドレスを偽装することによって実現されることが多いため、送信元ＩＰアドレスの偽装を防ぐために、ＩＳＰ（Ｉｎｔｅｒｎｅｔ　Ｓｅｒｖｉｃｅ　Ｐｒｏｖｉｄｅｒ）等によって行われるイングレスフィルタリングと呼ばれる方法がある。
【０００９】
イングレスフィルタリングとは、物理的又は論理的な回線毎に、その先に接続される送信元（ユーザ）が使用するアドレス範囲が特定される場合に、その回線を通過して送信されるパケットの送信元ＩＰアドレスを確認し、特定された範囲に含まれない送信元ＩＰアドレスを有するパケットを破棄するものである。これによって、回線で許可された範囲から外れたアドレスを偽装したパケットは通過することができなくなる。
【００１０】
イングレスフィルタリングは、回線で許可するアドレスの範囲が狭いほどアドレスの偽装防止として有効である。従って、イングレスフィルタリングはパケットがユーザ（送信元）側からＩＳＰのバックボーンネットワークに入る前等に行うことが望ましく、逆に送信先であるサーバ側への接続部分でイングレスフィルタリングを行っても、送信元ＩＰアドレスの範囲を狭い範囲に限定することができないため有効にはならない。
【００１１】
つまり、イングレスフィルタリングは、サーバを運営する者が防御としてとることのできる対策としては有効ではなく、ユーザを接続するＩＳＰ側が、そのＩＳＰのユーザが不正を行わないようにするための対策として有効なものである。対策を採る側であるＩＳＰやユーザにとって、自らが不正を行わないようにするという理由だけでは直接的な利益は少ないため、この対策は普及していない。
【００１２】
また、イングレスフィルタリングを利用する発展例として、網内へのアクセスをイングレスフィルタリングのみに限定する閉域網を構築する方法がある。この場合には、その中のサーバは、アドレス不定型ＤｏＳ攻撃を防ぐことができるためサーバ運営者側のメリットは大きくなる。しかし、この場合はサーバを特定のメンバーにのみ公開することになってしまうため、公開サーバにおける対策としては導入されない。
【００１３】
アドレス偽装に関するその他の対策として、ＩＰレイヤ（ネットワーク層）において暗号化を行う技術であるＩＰｓｅｃ（ＩＰ　Ｓｅｃｕｒｉｔｙ　Ｐｒｏｔｏｃｏｌ、ＩＥＴＦ（Ｉｎｔｅｒｎｅｔ　Ｅｎｇｉｎｅｅｒｉｎｇ　Ｔａｓｋ　Ｆｏｒｃｅ）標準のネットワーク層におけるセキュリティ・プロトコル）等を使ったＶＰＮ（Ｖｉｒｔｕａｌ　Ｐｒｉｖａｔｅ　Ｎｅｔｗｏｒｋ）の導入がある。サーバと、そのサーバへアクセスを行うユーザとの間でＶＰＮを構築することは閉域網を構築することに等しく、イングレスフィルタリングを行う場合と同じように、サーバを特定のメンバーにのみ公開することになってしまうため、公開サーバにおける対策としては不十分である。
【００１４】
このように、従来、アドレス不定型ＤｏＳ攻撃への十分な対策がなかった。更に、攻撃者が攻撃元を特定されにくくするために送信元ＩＰアドレスの偽造を利用することが多いため、アドレス不特定型ＤｏＳ攻撃は、十分な対策がない現在では、大きな脅威となっている。
【００１５】
そこで、上記（１）乃至（３）に示すＤｏＳ攻撃を有効に防御するＤｏＳ攻撃防御方法が下記特許文献１に記載されている。この特許文献１に記載のＤｏＳ攻撃防御方法は、通信パケットに対して施した安全性確認の度合いに応じて、通信パケットに異なる種類の安全性識別子を付加し、通信パケットの配送経路上でその安全性識別子に応じた優先制御を行うものであり、送信元側において、イングレスフィルタリング等の安全性確認を行ったパケットに対して、安全性識別子を付加し、パケットにどれほどの安全性確認が行われているかを送信元から送信先へ配送される間の経路において識別し、より高い安全性確認が行われたパケットを優先的に送信先に送信し、その他のパケットは破棄することにより、ＤｏＳ攻撃を防御するものである。
【００１６】
アドレス不定型のＤｏＳ攻撃は、十分な安全性確認を行っていないパケットを使用して行われるが、安全性確認が高いもの程優先的に許可するため、攻撃に使用されるパケットの優先度を下げ、帯域で許可された容量を超えた場合に、攻撃に使用されるパケットを破棄することができ、アドレス不定型のＤｏＳ攻撃は無効となる。
【００１７】
【特許文献１】
特開２００２−１５８６９９号公報
【００１８】
【発明が解決しようとする課題】
しかしながら、上述の特許文献１に記載の技術においては、送信先のＤｏＳ攻撃防御方法であるが、送信先としてサーバを想定したものであり、各通信パケット全てについて安全性確認を行って安全性識別子を付加する必要があると共に、安全性の高いものから優先的に送信先に接続させるために、安全性識別子から安全性を判断する必要があり、処理が複雑である。
【００１９】
また、ＰｔｏＰ（Ｐｅｅｒ　ｔｏ　Ｐｅｅｒ）通信では、通信のエンド端末でＤｏＳ攻撃の対策が必要となるため、サーバでなんらかの防御策を一元的に施すことは困難である。即ち、上述の特許文献１に記載の技術では、ＰｔｏＰ通信におけるＤｏＳ攻撃を防御することができない。
【００２０】
更に、ＵＶＮ（Ｕｂｉｑｕｉｔｏｕｓ　Ｖａｌｕｅ　Ｎｅｔｗｏｒｋ）を構成する端末は、ＰＣ（Ｐｅｒｓｏｎａｌ　Ｃｏｍｐｕｔｅｒ）等のような万能な端末だけではなく、限定されたサービスのみ利用可能な端末やセンサー等の機能限定端末も含まれる。このような機能限定端末の場合、上述の特許文献１に記載の技術のようなＤｏＳ攻撃防御方法をとることは困難である。また、機能限定端末においては、利用可能なサービスも限定されるため、攻撃者が攻撃パケットを偽ることが容易であり、しかも、所謂ファイアウォールと呼ばれる機能ではＤｏＳ攻撃を防ぐことはできない。
【００２１】
本発明は、このような従来の実情に鑑みて提案されたものであり、極めて簡便な方法でアドレス不定型のＤｏＳ攻撃であってもそれを検知可能なＤｏＳ攻撃検知方法、ＤｏＳ攻撃検知装置及びプログラムを提供することを目的とする。
【００２２】
【課題を解決するための手段】
上述した目的を達成するために、本発明に係るＤｏＳ攻撃検知方法は、単位処理時間当たりに受信した通信パケットのパケット数及び／又は該通信パケットから抽出したヘッダ情報に基づきＤｏＳ攻撃を検知する検知工程を有することを特徴とする。
【００２３】
本発明においては、単位処理時間当たりに受信したパケット数及び／又はヘッダ情報により、ＤｏＳ攻撃であるか否かを判定するため、例えば送信元アドレスを偽る等されたアドレス不定型のＤｏＳ攻撃であっても、送信先の端末側において、例えば処理不能な多数の通信パケットが受信されれば、それをＤｏＳ攻撃と判定し、適宜防御処理を行うことができる。
【００２４】
また、上記検知工程は、上記通信パケットを受信する工程と、上記単位処理時間当たりに受信した上記通信パケットのパケット数をカウントする判定値算出工程と、上記判定値算出工程の算出結果に基づきＤｏＳ攻撃であるか否かを判定するＤｏＳ攻撃判定工程とを有することができる。
【００２５】
更に、上記検知工程は、受信した上記通信パケットのヘッダ情報を記録手段に記録する工程を有し、上記判定値算出工程では、上記単位処理時間当たりに受信した上記通信パケットのパケット数が所定の閾値以上である場合に、上記通信パケットのヘッダ情報から送信元アドレスを抽出し、上記単位処理時間に抽出した該送信元アドレス数をカウントし、上記ＤｏＳ攻撃判定工程では、上記送信元アドレス数が所定の閾値以上である場合にＤｏＳ攻撃であると判定することができ、不特定多数のアドレスからのＤｏＳ攻撃に対応することができる。
【００２６】
更にまた、上記判定値算出工程は、上記単位処理時間当たりに受信した上記通信パケットのパケット数が所定の閾値以上である場合に、上記通信パケットのヘッダ情報から送信元アドレスを抽出し、該送信元アドレスの乱数性を評価する乱数評価工程を有し、上記ＤｏＳ攻撃判定工程では、上記乱数評価結果に基づきＤｏＳ攻撃であるか否かを判定することができ、送信元アドレスを乱数によって生成するようなＤｏＳ攻撃に対応することができる。
【００２７】
また、上記判定値算出工程では、上記単位処理時間当たりに受信した上記通信パケットのパケット数が所定の閾値以上である場合に、上記通信パケットのヘッダ情報から送信元アドレスを抽出し、上記単位処理時間当たりに受信した上記パケット数を上記送信元アドレスの信頼度に応じて重み付けした数値を算出し、上記ＤｏＳ攻撃判定工程では、上記重み付けした数値に基づきＤｏＳ攻撃であるか否かを判定することができ、例えば送信先の使用者が指定したアドレス等は信頼度が高く、過去にＤｏＳ攻撃をしたと見なせるようなアドレスは信頼度を低くというように、送信元アドレスをその信頼度によって分類することにより、信頼度が低い通信パケットが多数送信された場合に、迅速にＤｏＳ攻撃と判定することができる。
【００２８】
更に、ＤｏＳ攻撃であると判定した場合、上記通信パケットの受信元の使用者に対してＤｏＳ攻撃の検知を通知する通知工程を有するか、パケット受信工程にて所定期間、通信パケットの受信が拒否されるようにすることにより、送信先のリソースを消費する等の悪影響を与えられる前に防御処理を行うことができる。
【００２９】
また、本発明に係るプログラムは、上述したＤｏＳ攻撃検知処理をコンピュータに実行させるものである。
【００３０】
【発明の実施の形態】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、ＰＣ等の通信のエンド端末において、受信した通信パケットの総数及び、その通信パケットの送信元アドレスからＤｏＳ攻撃であるか否かを判定することにより、アドレス不定型ＤｏＳ攻撃であっても対応可能なＤｏＳ攻撃検知装置に適用したものである。
【００３１】
図１は、本発明の実施の形態におけるＤｏＳ攻撃検知装置を示すブロック図である。図１に示すように、ネットワークを介して接続された複数の送信元Ａ１〜Ａｉから送信先である例えばＰＣ等の主装置に対して通信パケットが送信される。主装置は、受信した通信パケットのＤｏＳ攻撃を検知するＤｏＳ攻撃検知装置１０１を備える。このＤｏＳ攻撃検知装置１０１は、送信元Ａ１〜Ａｉから送られた通信パケットを受信し、送信元ＩＰアドレス等を含むヘッダ部分を抽出する処理を行うパケット処理部１０２と、パケット処理部１０２にて抽出されたヘッダ部分を記憶するヘッダ情報記憶部１０３と、単位処理時間Ｔ２当たりのパケット数をカウントする判定値算出部１０４と、判定値算出部１０４により算出された判定値に基づきＤｏＳ攻撃か否かを判定するＤｏＳ攻撃判定手段である判定部１０５と、判定部１０５によりＤｏＳ攻撃を検知した場合に適切な処理行う検知時処理部１０６とを有している。
【００３２】
パケット処理部１０２は、送信元Ａ１〜Ａｉから送られてくる例えばＩＰ（Ｉｎｔｅｒｎｅｔ　Ｐｒｏｔｏｃｏｌ）パケット等の通信パケットを受信する受信手段（図示せず）を有している。そして、受信した通信パケットから、その送信元アドレスを抽出する。
【００３３】
ヘッダ情報記憶部１０３は、パケット処理部１０２により送信元パケットから抽出された送信元アドレス等をヘッダ情報として記憶する。ここで、ヘッダ情報として、送信元パケットのどの情報を記録するかは、本ＤｏＳ攻撃検知装置１０１を備える主装置がサポートするプロトコルに依存する。
【００３４】
判定値算出部１０４は、単位期間Ｔ１毎に、ヘッダ情報記憶部１０３からヘッダ情報を取得し、単位処理期間Ｔ２の間に届いた通信パケットのパケット数をカウントする。この判定値算出部１０４の判定値算出処理は、図２に示すタイミングで実行される。即ち、図２に示すように、単位期間Ｔ１毎に、単位処理期間Ｔ２の間に届いた通信パケットのパケット数がカウントされる。このとき下記式（１）の関係が成立する。
【００３５】
【数１】
2004140524.tif 000003
【００３６】
判定値算出処理として、送信元アドレスの個数をｉ、各送信元から単位処理期間Ｔ２間に送信されたパケット数をｂｉとしたとき、下記式（２）により、単位処理期間Ｔ２の間に送信されたパケットの総数Ｂをカウントする。
【００３７】
【数２】
2004140524.tif 000004
【００３８】
そして、このパケットの総数Ｂを判定部１０５に送る。判定部１０５は、判定値算出部１０４からこのような判定値算出結果が送られ、その結果に基づき、ＤｏＳ攻撃であるか否かを判定する。即ち、主装置のＤｏＳ攻撃検知装置１０１が単位処理時間Ｔ２の間に処理可能な範囲で予め設定されたパケット数（閾値）をｐとしたとき、パケットの総数Ｂの値と上記パケット数ｐとを比較し、下記式（３）が成立した場合、即ち、受信したパケットの総数Ｂが上記パケット数ｐを超えた場合に、ＤｏＳ攻撃であると判定する。
【００３９】
【数３】
2004140524.tif 000005
【００４０】
ここで、上記式（３）が成立した場合にＤｏＳ攻撃である可能性が高いと判断するか、又は、受信したパケットの総数Ｂが処理可能範囲の上記パケット数ｐには達しないものの、ある程度大きい場合等に、ＤｏＳ攻撃である可能性が高いと判断して、後述する第１乃至第３の判定方法を用いてＤｏＳ攻撃であるか否かを判定することも可能である。
【００４１】
検知時処理部１０６は、例えば図示せぬ通知手段を備え、判定部１０５にて、ＤｏＳ攻撃であると判定された場合に、上記通知手段により、主装置の使用者に対して、ＤｏＳ攻撃を検知したことを知らせるようにするか、検知時処理部１０６からの制御信号等により、パケット処理部１０２の図示せぬパケット受信部に対して一定期間全てのパケットの受信を停止させる等の処理を行うようにするか、又は両者を組み合わせた処理等を行う。また、上述のＤｏＳ攻撃の可能性が高いと判断した場合においても、主装置の使用者に通知するようにしてもよい。
【００４２】
図３は、本実施の形態におけるＤｏＳ攻撃検知方法を示すフローチャートである。図３に示すように、送信元からパケットが送信され、これを受信すると、単位時間当たりに受信した通信パケットのパケット数及び／又はヘッダ情報に基づきＤｏＳ攻撃であるか否かを検出する。即ち、先ずパケット処理部１０２にて、受信したパケットのヘッダ情報が抽出され、このヘッダ情報がパケット情報記憶部１０３に記憶される（ステップＳ１）。そして、判定値算出部１０４にて、パケットのヘッダ情報の単位処理期間Ｔ２当たりの取得数、即ち単位処理期間Ｔ２の間に受信したパケット数をカウントし（ステップＳ２）、単位処理期間Ｔ２の間に受信したパケット数の総和が所定の閾値以上であるか否かの判定が行われ（ステップＳ３）、パケット数が所定の閾値以上である場合、ＤｏＳ攻撃であると判定し、検知時処理として所定の防衛処理を行う（ステップＳ４）。
【００４３】
本実施の形態においては、単位処理期間Ｔ２の間に受信したパケット数の統計を求め、パケットの総数が予め設定した閾値を超えた場合にＤｏＳ攻撃であると判定するため、アドレス不定型のＤｏＳ攻撃であっても極めて容易に検知することができる。
【００４４】
次に、本発明の第２の実施の形態について説明する。上述の第１の実施の形態においては、単位処理期間Ｔ２の間に受信されたパケット数が所定の閾値以上である場合、ＤｏＳ攻撃であると判定するものであったが、本実施の形態においては、単位処理期間Ｔ２の間に所定の閾値以上のパケットを受信した場合、更に、ＤｏＳ攻撃であるか否かを判定する処理を設けるものである。本第２の実施の形態におけるＤｏＳ攻撃検知装置も図１に示す第１の実施の形態と同様の構成とし、その詳細な説明は省略する。単位処理期間Ｔ２の間に所定の閾値以上のパケットを受信した場合に行われるＤｏＳ攻撃判定処理は、判定値算出部１０４及び判定部１０５にて行われる。
【００４５】
即ち、判定値算出部１０４にて、先ず、ヘッダ情報記憶部１０３に記憶されている各通信パケットのヘッダ情報から送信元アドレスを抽出し、単位時間Ｔ１毎に単位処理期間Ｔ２の間に検出された送信元アドレス数をカウントする。そして、この送信元アドレス数を判定部１０５に送る。判定部１０５は、送信元アドレス数が所定の閾値以上であるか否かを判定し、所定の閾値以上である場合、ＤｏＳ攻撃と判定し、これを検知時処理部１０６に知らせることにより、第１の実施の形態と同様に、ＤｏＳ攻撃が検知されたことを使用者に通知するか、又は、所定期間、パケットの受信を拒否するなどの処理を行う。
【００４６】
図４乃至図６は、夫々パケット処理部１０２、判定値算出部１０４、判定部１０５における処理方法を示すフローチャートである。図４に示すように、パケット処理部１０２におけるパケット処理工程では、先ず、受信したパケットのヘッダ部分（ヘッダ情報）を検索し（ステップＳ１１）、検索したヘッダ情報を抽出し（ステップＳ１２）、最後に抽出したヘッダ情報をヘッダ情報記録部１０３に記録する（ステップＳ１３）。
【００４７】
また、図５に示すように、判定値算出部１０４の判定値算出処理は、ヘッダ情報記録部１０３からヘッダ情報を取得し（ステップＳ２１）、取得したヘッダ情報の処理期間Ｔ２の間に取得したパケット数をカウントする。ここで、パケット数が所定の閾値以上である場合、ＤｏＳ攻撃であるかを検知する検知処理を開始する。即ち、取得したパケット情報から送信元アドレスを抽出し、単位処理期間Ｔ２の間に受信した通信パケットの送信元アドレス数をカウントし（ステップＳ２２）、この送信元アドレス数を判定部１０５に送る（ステップＳ２３）。
【００４８】
また、図６に示すように、判定部１０５の判定工程では、判定値算出部１０４から送られてきた判定値算出結果、即ち、送信元アドレス数を受取り（ステップＳ３１）、この判定値算出結果が予め登録された範囲内であるか否かの判定がされる（ステップＳ３２）。ここで、判定値算出結果が範囲内である場合は、ＤｏＳ攻撃ではないとの判定をする。一方、判定処理結果が範囲を超える場合はＤｏＳ攻撃であるか否かを検知する検知処理を行う（ステップＳ３３）。
【００４９】
以下、判定部１０５において、所定処理時間Ｔ２の間に受信したパケットの総数Ｂが処理可能なパケット数ｐを超えた場合に、判定値算出部１０４において行われるＤｏＳ攻撃を検知するための判定値算出について詳細に説明する。
【００５０】
ＤｏＳ攻撃であるか否かは、パケットの送信元アドレスに基づき行われ、本実施の形態においては、単位処理期間Ｔ２の間に検出された送信元アドレス数が所定の閾値以上である場合にＤｏＳ攻撃であると判定するものである（以下第１の判定方法という。）。
【００５１】
判定値算出部１０４は、ヘッダ情報記憶部１０３から読み出した送信元アドレスの個数ｉを判定部１０５に渡す。判定部１０５では、本ＤｏＳ攻撃制御装置を備える主装置に対し単位処理時間Ｔ２に応じて予め設定された送信元アドレス数の閾値と、判定値算出部１０４から送られてきた送信元アドレスの個数ｉとを比較処理する。そして、単位処理時間Ｔ２の間に送られてきたパケットの送信元アドレスの個数ｉが、上記送信元アドレス数の閾値を超えた場合、ＤｏＳ攻撃があったものと判定する。
【００５２】
主装置にＷｅｂページの閲覧等、不特定多数のアドレスに対してリクエストを出す機能が搭載されていない場合、主装置には、無数の送信元アドレスが記録されることはないため、送信元アドレスの個数ｉがＤｏＳ攻撃検知の役割を果たす。
【００５３】
逆に、主装置１０１にＷｅｂページの閲覧等、不特定多数のアドレスに対してリクエストを出す機能が搭載されている場合、主装置に無数の送信元アドレスが記録される可能性がある。しかしながら、ＣＥ（Ｃｏｎｓｕｍｅｒ　Ｅｌｅｃｔｒｏｎｉｃｓ）製品を想定した場合、単位処理時間Ｔ２の間に記録される送信元アドレスの個数ｉは、単位処理時間Ｔ２が例えば２４時間であったとしても通常、数十程度のオーダーであると予測される。従って、いずれの場合においても、送信元アドレスの個数ｉはＤｏＳ攻撃検知の役割を果たす。
【００５４】
本実施の形態においては、単位処理時間Ｔ２の間に受信した通信パケット数及び送信元アドレス数の統計をとることにより、単位処理時間Ｔ２の間に受信した通信パケット数が所定の閾値を超え、且つ、その通信パケットから抽出した送信元アドレス数が所定の閾値を超えた場合に、ＤｏＳ攻撃であると判定するため、アドレス不定型のＤｏＳ攻撃であっても検知することができ、また、ＣＥ製品等においては、想定される送信元アドレス数がある程度予測でき、適宜送信元アドレス数の閾値等を設定して、容易にＤｏＳ攻撃等の高負荷攻撃を検知することができる。
【００５５】
また、インターネット等のオープンなネットワークにおいて、情報送信者の身元特定が困難であることや、攻撃実行に必要なコストや心理的障壁が低いという理由等から、公開サーバに対するＤｏＳ攻撃が容易に行われ得るという問題点があり、通信品質が重視されるＶｏＩＰ（Ｖｏｉｃｅ　ｏｖｅｒ　Ｉｎｔｅｒｎｅｔ　Ｐｒｏｔｏｃｏｌ）や動画配信のようなアプリケーションが、オープンなネットワーク上では利用されにくかったが、端末側にて、通信パケットのパケット数及びパケットの送信元アドレスに基づきＤｏＳ攻撃検知を行うことができ、これによりＤｏＳ攻撃の対策が可能となり、インターネット等の安価なネットワークで、ある程度の通信品質を確保することができ、大きなビジネスに繋げることができる。
【００５６】
更に、ＰｔｏＰ（Ｐｅｅｒ　ｔｏ　Ｐｅｅｒ）通信では、サーバでなんらかの防御策を一元的に施すことは困難であり、通信のエンド端末でＤｏＳ攻撃の対策が必要であるが、本ＤｏＳ攻撃検知装置により、通信のエンド端末でＤｏＳ攻撃の対策が可能となり、ＵＶＮを構成する安心・安全な端末を提供できる。
【００５７】
更にまた、ＵＶＮを構成する端末は、ＰＣ等のような万能な端末だけではなく、限定されたサービスのみ利用可能な端末やセンサー等の機能限定端末も含まれるが、このような機能限定端末においても、攻撃者が攻撃パケットを偽るような攻撃パケットを容易に検知することができ、ＵＶＮを構成する安心・安全な端末を提供できる。
【００５８】
次に、本発明の第３の実施の形態について説明する。単位処理時間Ｔ２の間に受信したパケットの総数Ｂが処理可能なパケット数ｐを超えた場合に、判定値算出部１０４において行われるＤｏＳ攻撃を検知するための判定値算出が、第２の実施の形態とは異なり、本第３の実施の形態においては、送信元アドレスを二進数表示した場合にこれが乱数であるか否かを評価し、この乱数検出結果に基づきＤｏＳ攻撃であるか否かを判定するものである（以下、第２の判定方法という。）。
【００５９】
即ち、単位処理期間Ｔ２におけるパケットの総数Ｂが処理可能なパケット数ｐを超えた場合、ヘッダ情報記憶部に記憶されている各通信パケットのヘッダ情報から送信元アドレスを抽出し、送信元アドレスを二進数表示した場合に該二進数表示が乱数であるか否かを検出し、この二進数表示が乱数であるか否かの判定結果に基づきＤｏＳ攻撃であるか否かを判定する。ＤｏＳ攻撃と判定した場合は、これを検知時処理部１０６に知らせることにより、第１の実施の形態と同様に、ＤｏＳ攻撃が検知されたことを使用者に通知するか、又は、所定期間、パケットの受信を拒否するなどの処理を行う。
【００６０】
以下、第２の判定方法について更に詳細に説明する。送信元アドレスを乱数によって生成するようなＤｏＳ攻撃に対応するため、送信元アドレスを二進数列とみなし、乱数性を検査する。
【００６１】
乱数性検査の方法として、ここでは、Ｆｒｅｑｕｅｎｃｙ　Ｔｅｓｔ　ｗｉｔｈｉｎ　ａ　Ｂｌｏｃｋ法を用いた方法について説明する。Ｆｒｅｑｕｅｎｃｙ　Ｔｅｓｔ　ｗｉｔｈｉｎ　ａ　Ｂｌｏｃｋ法では、下記式（７）を満たすか否かを判定し、満たす（真である）とき乱数ではないとする。
【００６２】
【数４】
2004140524.tif 000006
【００６３】
以下、具体的数値で示す。図７の右側に示すように、実際に乱数を発生させ、この乱数を二進数表記とし、これを左側に示すように、ＩＰｖ４のアドレスとみなした場合について説明する。Ｍ＝３２、ｎ＝３２×１０とすると、上記式（４）に示すＮ＝１６となる。このとき、図７に示すアドレスと見なすための二進数表記とした乱数は、上記式（５）から下記式（９）のように計算される。従って、上記式（６）は、下記式（１０）のように計算される。
【００６４】
【数５】
2004140524.tif 000007
【００６５】
【数６】
2004140524.tif 000008
【００６６】
従って、上記式（７）により不完全ガンマ関数ｉｇａｍｃを計算すると、下記式（１１）のように計算され、この下記式（１１）を上記式（８）に当てはめると下記式（１２）となる。
【００６７】
【数７】
2004140524.tif 000009
【００６８】
従って、上記式（１２）は、上記式（８）を満たさないことから、この数列は、Ｆｒｅｑｕｅｎｃｙ　Ｔｅｓｔ　ｗｉｔｈｉｎ　ａ　Ｂｌｏｃｋ法では乱数であるとみなされる。乱数性検査の別の例としてはＮＩＳＴ　Ｓｐｅｃｉａｌ　Ｐｕｂｌｉｃａｔｉｏｎ　８００−２２（ｈｔｔｐ：／／ｃｓｒｃ．ｎｉｓｔ．ｇｏｖ／ｐｕｂｌｉｃａｔｉｏｎｓ／ｎｉｓｔｐｕｂｓ／８００−２２／ｓｐ−８００−２２−０５１５０１．ｐｄｆ）等が挙げられる。ここで示したＦｒｅｑｕｅｎｃｙ　Ｔｅｓｔ　ｗｉｔｈｉｎ　ａ　Ｂｌｏｃｋ法も上記文献に記載されているものである。
【００６９】
判定値算出部１０４は、乱数であるか否かの結果を判定部１０５に渡す。判定部１０５では乱数か否かを判断の基準に用いる。例えば、所定の数以上、乱数であると判定される送信元アドレスが検出された場合、又は、乱数と判定された送信元アドレスから送信された通信パケットのパケット数の総数が所定の閾値を超えた場合等に、ＤｏＳ攻撃と判定することができる。
【００７０】
本実施の形態においては、単位処理時間Ｔ２の間に受信した通信パケット数及び送信元アドレスの乱数性の統計をとり、単位処理期間Ｔ２の間に受信した通信パケット数が所定の閾値を超え、且つ、その通信パケットの送信元アドレスの乱数性を評価することにより、第２の実施の形態と同様の効果を奏すると共に、乱数から生成されたような偽装された送信元アドレスからＤｏＳ攻撃を受けた場合においても、ＤｏＳ攻撃を検知することができ、適宜防御処理を行うことができる。
【００７１】
次に、本発明の第４の実施の形態について説明する。本第４の実施の形態においては、単位処理時間Ｔ２の間に受信したパケットの総数Ｂが処理可能なパケット数ｐを超えた場合に、ＤｏＳ攻撃を検知するための判定値を算出する判定値算出処理が、上記第２及び第３の実施の形態とは異なる。即ち、判定値算出部では、単位処理期間の間に受信した通信パケット数を、該通信パケットの送信元アドレスの信頼度に応じて重み付けして加算した数値を算出し、この数値に基づきＤｏＳ攻撃であるか否かを判定するものである（以下、第３の判定方法という。）。そして、ＤｏＳ攻撃と判定した場合は、これを検知時処理部１０６に知らせることにより、第１の実施の形態と同様に、ＤｏＳ攻撃が検知されたことを使用者に通知するか、又は、所定期間、パケットの受信を拒否するなどの処理を行う。
【００７２】
以下、第３の判定方法について更に詳細に説明する。先ず、送信元アドレスに対して、その信頼度に基づき優先順位をつける。図８は、優先順位の設定ルールの一例を示す図である。図８に示すように、送信元アドレスの分類（優先順位１〜４）に対して、加算する数値を割り当てる。即ち、例えば、ＤｏＳ攻撃検知装置を備える本装置（情報処理端末）に予め設定されているアドレスである公開鍵認証機関アドレス及び情報処理端末製造元アドレス等は、信頼度が最も高い、信頼する送信元アドレスに分類し、この信頼する送信元アドレスから送信された通信パケットに掛け合わせる数値として例えば１等の小さな値を設定する。また、情報処理端末の使用者が信頼できるとして予め設定した送信元アドレス、及び情報処理端末に過去にＤｏＳ攻撃を仕掛けたことがある送信元アドレスを、夫々信頼できる送信元アドレス及び信頼しない送信元アドレスとして、夫々通信パケットに掛け合わせる数値として２及び８等のその信頼度に基づく数値を設定する。即ち、信頼度が低い送信元アドレスには、大きな値を割り当てる。そして、各送信元アドレスから受信した通信パケットのパケット数Ｃ１〜Ｃ４を例えば下記のように分類する。
【００７３】
【表１】
2004140524.tif 000010
【００７４】
そして、この分類後のパケット数を、信頼度に応じて重み付けした数値を求める。図８に示す例では、上記重み付けした数値は、下記式（１３）により算出することができる。この算出結果Ｃを判定部１０５に渡す。
【００７５】
【数８】
2004140524.tif 000011
【００７６】
判定部１０５では、受け取った算出結果Ｃと、主装置において予め定めた閾値とで比較処理する。即ち、この算出結果Ｃが所定の閾値を超える場合は、ＤｏＳ攻撃であると判定する。
【００７７】
このように構成された本実施の形態においては、単位処理時間Ｔ２の間に受信した通信パケット数及び送信元アドレスの信頼度に基づくパケット数の統計をとり、単位処理期間Ｔ２の間に受信した通信パケット数が所定の閾値を超え、且つ、通信パケットのパケット数を、送信元アドレスの信頼度に応じて重み付けした数値により、ＤｏＳ攻撃であるか否かを判定するため、第２の実施の形態と同様の効果を奏すると共に、信頼度に基づく判定により、更に誤検出を低減することができる。
【００７８】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。例えば、単位処理時間Ｔ２の間に受信したパケットの総数Ｂが処理可能なパケット数ｐを超えた場合に、第２の実施の形態乃至第４の実施の形態において説明した第１の判定方法乃至第３の判定方法を、ＤｏＳ攻撃検知を行う端末の機能等に合わせて適宜組み合わせることも可能であることは勿論である。また、上述の従来の技術のようなＤｏＳ攻撃対策と組み合わせて使用してもよい。
【００７９】
また、上述の第２乃至第４の実施の形態においては、単位処理時間Ｔ２の間に受信したパケットの総数Ｂが処理可能なパケット数ｐを超えた場合に、夫々第１乃至第３の判定方法にて、ＤｏＳ攻撃であるか否かを判定するものとしたが、パケット数をカウントする処理は省略し、直接第１乃至第３の判定方法又はこれを組み合わせた判定方法により、ＤｏＳ攻撃であるか否かを判定するものとしてもよい。
【００８０】
また、上述の実施の形態では、ハードウェアの構成として説明したが、これに限定されるものではなく、任意の処理を、ＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）にコンピュータプログラムを実行させることにより実現することも可能である。この場合、コンピュータプログラムは、記録媒体に記録して提供することも可能であり、また、インターネットその他の伝送媒体を介して伝送することにより提供することも可能である。
【００８１】
【発明の効果】
以上詳細に説明したように本発明に係るＤｏＳ攻撃検知方法及び装置は、単位処理時間当たりに受信した通信パケットのパケット数及び／又は該通信パケットから抽出したヘッダ情報に基づきＤｏＳ攻撃であるか否かを検知するので、例えば送信元アドレス等を偽ったアドレス不定型のＤｏＳ攻撃を受けたとしても、送信先の端末側において処理不能な多数の通信パケットが受信されれば、それをＤｏＳ攻撃と判定し、適宜防御処理を行うことができる。
【００８２】
また、本発明に係るプログラムは、上述したＤｏＳ攻撃検知処理をコンピュータに実行させるものであり、このようなプログラムによれば、上述したＤｏＳ攻撃検知処理をソフトウェアにより実現することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るＤｏＳ攻撃検知装置を示すブロック図である。
【図２】本発明の実施の形態に係るＤｏＳ攻撃検知装置における判定値算出部の処理タイミングを示す模式図である。
【図３】本発明の実施の形態に係るＤｏＳ攻撃検知方法を示すフローチャートである。
【図４】本発明の実施の形態に係るＤｏＳ攻撃検知方法におけるパケット処理部の処理工程を示すフローチャートである。
【図５】本発明の実施の形態に係るＤｏＳ攻撃検知方法における判定値算出部の処理工程を示すフローチャートである。
【図６】本発明の実施の形態に係るＤｏＳ攻撃検知方法における判定部の処理工程を示すフローチャートである。
【図７】右は、実際に発生させた乱数を二進数表記を示し、左は、右に示す二進数表記をＩＰｖ４のアドレスとみなしたものを示す図である。
【図８】本発明の実施の形態に係るＤｏＳ攻撃検知方法における優先順位の設定ルールの一例を示す図である。
【符号の説明】
１０１　ＤｏＳ攻撃検知装置、１０２　パケット処理部、１０３　ヘッダ情報記憶部、１０４　判定値算出部、１０５　判定部、１０６　検知時処理部
【図１】
2004140524.tif 000012
【図２】
2004140524.tif 000013
【図３】
2004140524.tif 000014
【図４】
2004140524.tif 000015
【図５】
2004140524.tif 000016
【図６】
2004140524.tif 000017
【図７】
2004140524.tif 000018
【図８】
2004140524.tif 000019