(57)【要約】【課題】レイヤ５以上の処理に対するＤｏＳ／ＤＤｏＳ攻撃に対して効率的に防御する。【解決手段】防御対象のエンドノード（サーバ）の手前に、レイヤ４以下のフィールド情報を基にフィルタリングを行うスタティックパケットフィルタリング部１１と、エンドノードの代理でＴＣＰの処理を一旦終端し、３ウェイ−ハンドシェーク処理を行ってからそのエンドノードへトラヒックを転送するＴＣＰインターセプト部１２と、エンドノードのアドレスを送信先アドレスとするトラヒックを発信元アドレスごとに監視し、トラヒック量などのレイヤ４以下の情報を基にＤｏＳ／ＤＤｏＳ攻撃を検知し対処を依頼するＬ４不特定検知部１３と、Ｌ４不特定検知部１３からの依頼により指定されたフローに対しフィルタリングまたはレートリミットの設定を行うＬ４ＡＣＬ／レート制限ダイナミック設定部１４とを有するファイアウォール装置３を設ける。【選択図】    図２
2006060599.tif 000002
【特許請求の範囲】
【請求項１】
ＩＰネットワーク内に設置されるエンドノードを、該エンドノードのレイヤ５以上の処理をターゲットとするＴＣＰ上のＤｏＳ攻撃またはＤＤｏＳ攻撃から防御するためのアプリケーションサービス拒絶攻撃防御方法であって、
前記エンドノードを収容するエッジノードの該エンドノードへの出口回線に設置されたファイアウォール装置が、レイヤ４以下のフィールド情報を基にフィルタリングを行う第１の処理と、前記第１の処理の後、前記エンドノードの代理でＴＣＰの処理を一旦終端し、３ウェイ−ハンドシェーク処理を行ってから前記エンドノードへトラヒックを転送する第２の処理と、前記エンドノードのアドレスを送信先アドレスとするトラヒックを発信元アドレスごとに監視し、レイヤ４以下の情報に基づいて攻撃を検知し対処を依頼する第３の処理と、前記第３の処理からの依頼により指定されたフローに対してトラヒックの制限を行う第４の処理と、
を実行する、アプリケーションサービス拒絶攻撃防御方法。
【請求項２】
前記第３の処理は、前記のレイヤ４以下の情報として前記発信元アドレスごとのトラヒック量が一定のしきい値を越えた場合に、前記攻撃があるものと検知する、請求項１に記載のアプリケーションサービス拒絶攻撃防御方法。
【請求項３】
前記攻撃に関連する発信元アドレスからのトラヒック量が復帰しきい値を下回った場合に、前記トラヒックの制限を解除する、請求項２に記載のアプリケーションサービス拒絶攻撃防御方法。
【請求項４】
前記トラヒックの制限は、該当するフローのフィルタリングまたはレート制限である、請求項１乃至３のいずれか１項に記載のアプリケーションサービス拒絶攻撃防御方法。
【請求項５】
ＩＰネットワーク内に設置されるエンドノードを、該エンドノードのレイヤ５以上の処理をターゲットとするＴＣＰ上のＤｏＳ攻撃またはＤＤｏＳ攻撃から防御するためのアプリケーションサービス拒絶攻撃防御システムであって、
前記エンドノードを収容するエッジノードの該エンドノードへの出口回線に設置されたファイアウォール装置を有し、
前記ファイアウォール装置は、
該ファイアウォール装置のイングレス端に設けられ、レイヤ４以下のフィールド情報を基にフィルタリングを行うスタティックパケットフィルタリング部と、
前記スタティックパケットフィルタリング部を通過したトラヒックに対して前記エンドノードの代理でＴＣＰの処理を一旦終端し、３ウェイ−ハンドシェーク処理を行ってから前記エンドノードへ前記トラヒックを転送するＴＣＰインターセプト部と、
前記エンドノードのアドレスを送信先アドレスとするトラヒックを発信元アドレスごとに監視し、レイヤ４以下の情報を基にＤｏＳ／ＤＤｏＳ攻撃を検知し対処を依頼するＬ４不特定検知部と、
前記Ｌ４不特定検知部からの依頼により指定されたフローに対しトラヒックの制限を行うＬ４ＡＣＬ／レート制限ダイナミック設定部と、
を有する、アプリケーションサービス拒絶攻撃防御システム。
【請求項６】
前記Ｌ４不特定検知部は、前記のレイヤ４以下の情報として前記発信元アドレスごとのトラヒック量が一定のしきい値を越えた場合に、前記攻撃があるものと検知する、請求項５に記載のアプリケーションサービス拒絶攻撃防御システム。
【請求項７】
前記Ｌ４不特定検知部は、前記攻撃に関連する発信元アドレスからのトラヒック量が復帰しきい値を下回った場合に、前記トラヒックの制限を解除するように前記Ｌ４ＡＣＬ／レート制限ダイナミック設定部に依頼する、請求項６に記載のアプリケーションサービス拒絶攻撃防御システム。
【請求項８】
前記一定のしきい値及び前記復帰しきい値を設定する設定部をさらに有する請求項７に記載のアプリケーションサービス拒絶攻撃防御システム。
【請求項９】
前記トラヒックの制限は、該当するフローのフィルタリングまたはレート制限である、請求項５乃至８のいずれか１項に記載のアプリケーションサービス拒絶攻撃防御システム。
【請求項１０】
前記ファイアウォール装置において、該ファイアウォール装置のイングレス側からエグレス側に向けて、前記スタティックパケットフィルタリング部と前記ＴＣＰインターセプト部と前記Ｌ４不特定検知部と前記Ｌ４ＡＣＬ／レート制限ダイナミック設定部とがこの順で直列に設けられている、請求項５乃至８のいずれか１項に記載のアプリケーションサービス拒絶攻撃防御システム。
【請求項１１】
ＩＰネットワーク内に設置されたエンドノードを収容するエッジノードの該エンドノードへの出口回線に設置されたファイアウォール装置を構成するコンピュータに、
レイヤ４以下のフィールド情報を基にフィルタリングを行う第１の処理、
前記第１の処理の後、前記エンドノードの代理でＴＣＰの処理を一旦終端し、３ウェイ−ハンドシェーク処理を行ってから前記エンドノードへトラヒックを転送する第２の処理、
前記エンドノードのアドレスを送信先アドレスとするトラヒックを発信元アドレスごとに監視し、レイヤ４以下の情報に基づいて攻撃を検知し対処を依頼する第３の処理、
前記第３の処理からの依頼により指定されたフローに対してトラヒックの制限を行う第４の処理、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＰ（インターネットプロトコル；Internet protocol）ネットワークにおけるセキュリティ向上技術に関し、特に、インターネット上におけるＤｏＳ攻撃やＤＤｏＳ攻撃などに対する防御方法及びシステムに関する。
【背景技術】
【０００２】
インターネット上では、特定のサイトに対して異常なデータあるいはパケットを大量に送信しそれによってそのサイトにおけるサービスを停止させようとする攻撃が、しばしば行われるようになってきた。そのような攻撃のことをＤｏＳ（サービス拒絶；Denial of Service）攻撃と呼ぶが、さらに巧妙な攻撃として、異なる複数の場所から同時に同一サイトに対してＤｏＳ攻撃を仕掛けてくることもあり、そのような複数の場所からの攻撃をＤＤｏＳ（分散型サービス拒絶；Distributed Denial of Service）攻撃と呼んでいる。以下では、サービス拒絶（ＤｏＳ）攻撃及び分散型サービス拒絶（ＤＤｏＳ）攻撃を総称して、ＤｏＳ／ＤＤｏＳ攻撃と呼ぶことにする。
【０００３】
ところで、ネットワーク上で通信を行うために用いられる各種のプロトコルは、ＯＳＩ参照モデルによって７つのレイヤ（階層）に階層化されて取り扱われている。これに対応して、ＤｏＳ／ＤＤｏＳ攻撃に用いられるパケットも、どのレイヤにおけるサービスを停止させようとするものであるかによって分類される。最近では、ＩＰ電話の中継に用いられるＳＩＰ(Session Initiation Protocol)サーバや電子メールの中継に用いられるＳＭＴＰ(Simple Mail Transfer Protocol)サーバなどの、ＯＳＩ参照モデルにおけるレイヤ５（セッション層）以上の処理を行う各種エンドノードに対して、ＤｏＳ／ＤＤｏＳ攻撃が行われるようになってきている。
【０００４】
ＳＩＰサーバ、ＳＭＴＰサーバなどのレイヤ５以上の処理を行うエンドノード（すなわちサーバ）あるいはエンドノード群に対するＤｏＳ／ＤＤｏＳ攻撃からこれらのサーバを保護するために、従来、（１）そのサーバ自身が攻撃を検知し、検知したトラヒックを排除する、あるいは、（２）保護対象のサーバが構築されたマシンの手前にファイアウォール装置またはＩＤＳ（不正侵入検知システム；Intrusion Detection System）を設置してレイヤ５以上の情報を分析することにより攻撃を検知し、検知したトラヒックを排除する、などの方策が採られている。
【０００５】
攻撃を検知して該当するトラヒックを排除した場合、攻撃トラヒックが終了した場合には排除設定の解除を行うことになるが、攻撃トラヒックの終了を自動的に検出することが難しいことから、実際には、攻撃検出時の排除設定は自動で行われても、攻撃終了時の解除処理は手動で行われる場合が多い。
【０００６】
特許文献１（特開２００３―２８３５７１号公報「サービス不能攻撃の防御方法及び装置ならびにそのコンピュータプログラム」）は、サーバが攻撃された場合に、ネットワーク中の攻撃者に近いルータにおいて攻撃パケットを廃棄するようにするため、ネットワーク内の各拠点にシールドと呼ばれる専用装置を設置し、これらの専用装置間で攻撃情報を逐次伝播させ、攻撃トラヒックを上流側で排除することを提案している。しかしながらこの手法では、専用装置間では攻撃情報は伝播するものの、ネットワークに接続するサーバなどのノード間では攻撃情報を伝播することはしていない。
【０００７】
特許文献２（特開２００２―１５８６６０号公報「不正アクセス防御システム」）は、ネットワーク内に専用の遮断機器を配置し、攻撃をネットワークにおいて検出した場合には遮断機器を動作させることで攻撃からネットワークを防御する旨を提案している。しかしながら、特許文献２に記載の技術は、防御の対象として、レイヤ４以下の攻撃を対象としている。
【特許文献１】特開２００３―２８３５７１号公報
【特許文献２】特開２００２―１５８６６０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら上述した従来の防御方法には、特にレイヤ５上の攻撃に対する防御を行う場合において、以下に述べるような問題点がある。
【０００９】
サーバマシン自身で攻撃を防御する場合、その防御処理自体に重い処理負荷を必要ととするだけでなく、そのサーバマシンに接続する回線にも攻撃トラヒックが集中することになり、正当なユーザへのサービスの妨げになる可能性がある。一方、サーバの手前にファイアウォール装置またはＩＤＳを設置する場合、レイヤ５以上の攻撃を検知するために、これらファイアウォール装置あるいはＩＤＳそれ自体もレイヤ５以上の処理を行った上でＤｏＳ／ＤＤｏＳ攻撃である否か判断するため、レイヤ５以上の攻撃の検知自体に難しさが伴うとともに、ファイアウォール装置やＩＤＳ自体が性能上のボトルネックとなる可能性があり、攻撃の検知のみならず排除まで行おうとすると、さらにスループットが制限され、また、装置自身の価格も高くなる可能性が大きい。
【００１０】
そこで本発明の目的は、特にＯＳＩ参照モデルでのレイヤ５以上のサービスに対応するサーバに対してパケットを送信するＤｏＳ／ＤＤｏＳ攻撃を、スループットの低下などをもたらすことなく、効果的に防御できるアプリケーションサービス拒絶攻撃防御方法及びシステムを提供することにある。
【課題を解決するための手段】
【００１１】
上述した従来のサービス拒絶防御方法では、レイヤ５以上の情報に基づいて、各種エンドノード（サーバ）のレイヤ５以上の処理に対して行われるＤｏＳ／ＤＤｏＳ攻撃の検出処理を行っている。しかしながら、パケットのレイヤ５以上の情報を検知する処理は、大きな負荷を要する処理であるため、システム全体としてのトラヒックのスループットの低下や、システムのコスト高の要因となる。そこで本発明では、レイヤ４以下の情報のみによるトラヒック情報に基づいて、レイヤ５以上の処理に対するＤｏＳ／ＤＤｏＳ攻撃の検出処理を行うようにする。
【００１２】
具体的には、ＳＩＰサーバやＳＭＴＰサーバなどのレイヤ５以上の処理を行う各種エンドノードあるいはエンドノード群の手前に、ファイアウォール装置を設置し、このファイアウォール装置において、レイヤ５以上の処理に対するＤｏＳ／ＤＤｏＳ攻撃の検知・対処を行う。好ましくは、これらのエンドノードへの回線を束ねたエッジノードからの出口回線上に、インラインでファイアウォール装置を設置するようにする。この場合は、各種エンドノードへの回線を束ねた回線上に設置されるため、ファイアウォール装置は高スループットである必要があるが、高スループットを実現できれば、１台のファイアウォール装置のみの設置によってＤｏＳ／ＤＤｏＳ攻撃に対処できるので、低コストが期待できる。
【００１３】
ファイアウォール装置は、高速処理を可能にするために、パケットのレイヤ５以上の情報については一切検知せず、レイヤ４以下の情報のみにより攻撃を検知・対処する。これにより、ファイアウォール装置について高スループットを実現する。そのようなファイアウォール装置は、イングレス側（防御対象のエンドノードに対するパケットがネットワークから入力する側）からエグレス側（防御対象のエンドノードに接続する側）に向けて、レイヤ４以下のフィールド情報を基にフィルタリングを行うスタティックパケットフィルタリング部（１番目の機能部）と、エンドノードの代理でＴＣＰの処理を一旦終端し、３ウェイ−ハンドシェーク処理を行ってからそのエンドノードへトラヒックを転送するＴＣＰ(transmission control protocol)インターセプト部（２番目の機能部）と、エンドノードのアドレスを送信先アドレスとするトラヒックを発信元アドレスごとに監視し、レイヤ４以下の情報を基にＤｏＳ／ＤＤｏＳ攻撃を検知し対処を依頼するＬ４不特定検知部（３番目の機能部）と、Ｌ４不特定検知部からの依頼により指定されたフローに対しフィルタリングまたはレートリミットの設定を行うＬ４ＡＣＬ／レート制限ダイナミック設定部（４番目の機能部）とが直列に接続した構成を有する。ここでＬ４不特定検知部は、例えば、トラヒック量が一定のしきい値を越えた場合に、攻撃への対処の依頼として、そのフローのフィルタリングまたはレートリミットをＬ４ＡＣＬ／レート制限ダイナミック設定部に命令するなどの処理を行う。
【００１４】
すなわちファイアウォール装置では、レイヤ４以下のパケットに含まれる情報を基に、イングレス側から入力されたパケットを段階を追って処理することで、レイヤ５以上の情報を転送しているレイヤ４以下パケットを絞っていき、最終段階で、パケットのトラヒック量などを計測してそれが規定値以上あればＤｏＳ／ＤＤｏＳ攻撃であると判断することで、攻撃パケットを廃棄する。このようにレイヤ４以下の処理を段階を追って行うことで、負荷がかかるレイヤ５以上の処理を行うことなく、レイヤ５以上をターゲットとしたＤｏＳ／ＤＤｏＳ攻撃から、サーバなどのエンドノードを防御することができる。
【００１５】
具体的には、３番目の機能部であるＬ４不特定検知部においてレイヤ４以下の情報を基にトラヒックを検知し、その検知した情報を基に、４番目の機能部であるＬ４ＡＣＬ／レート制限ダイナミック設定部において、攻撃トラヒックに対して対処を行う。攻撃に対して対処を行うＬ４ＡＣＬ／レート制限ダイナミック設定部を、検知を行うＬ４不特定検知部の後ろに設けているのは、対処を行う機能部を、検知を行う機能部の手前（イングレス側）に置いた場合、検知を行う機能部に対処後のトラヒックが流れ込むこととなって攻撃の終了を検知しづらくなり、ひいては対処処理の解除処理が難しくなるためである。
【００１６】
Ｌ４不特定検知部では、レイヤ５攻撃トラヒック（またはレイヤ６、７攻撃トラヒック）と正当トラヒックとを明確に区別する必要があるが、それには、Ｌ４不特定検知部において検知するトラヒックに、レイヤ４以下の処理をターゲットする攻撃トラヒックなどの余計なトラヒックが含まれていないことが必要である。そこで、１番目の機能部であるスタティックパケットフィルタリング部と２番目の機能部であるＴＣＰインターセプト部において、３番目の機能部であるＬ４不特定検知部が検知処理を行う上で余計なものとなるトラヒックの排除を行っている。
【００１７】
本発明のアプリケーションサービス拒絶攻撃防御方法は、ＩＰネットワーク内に設置されるエンドノードを、エンドノードのレイヤ５以上の処理をターゲットとするＴＣＰ上のＤｏＳ攻撃またはＤＤｏＳ攻撃から防御するためのアプリケーションサービス拒絶攻撃防御方法であって、エンドノードを収容するエッジノードのエンドノードへの出口回線に設置されたファイアウォール装置が、レイヤ４以下のフィールド情報を基にフィルタリングを行う第１の処理と、第１の処理の後、エンドノードの代理でＴＣＰの処理を一旦終端し、３ウェイ−ハンドシェーク処理を行ってからエンドノードへトラヒックを転送する第２の処理と、エンドノードのアドレスを送信先アドレスとするトラヒックを発信元アドレスごとに監視し、レイヤ４以下の情報に基づいて攻撃を検知し対処を依頼する第３の処理と、第３の処理からの依頼により指定されたフローに対してトラヒックの制限（フィルタリングやレート制限など）を行う第４の処理と、を実行する。
【発明の効果】
【００１８】
本発明によれば、レイヤ５以上の処理に対するＤｏＳ／ＤＤｏＳ攻撃を検知するための全ての処理をパケットのレイヤ４以下の情報のみの検知により行うことで、高スループットを実現することが可能となり、またネットワーク内でそれらの処理を行うことができるようになる、という効果が得られる。また、ＤｏＳ／ＤＤｏＳ攻撃に際し、エンドノードだけでなく、パケット集中などからネットワークも保護することが可能となる。
【００１９】
本発明のアプリケーションサービス拒絶攻撃防御方法は、ファイア装置単独で実行できるので、既存のネットワークに対してそのようなファイアウォール装置１台を挿入するだけの実装で済むこととなり、コスト等の面で優れている。また、対処処理設定後の攻撃トラヒックについても検知できる仕組みとなっているため、解除契機を高精度に検出することができ、サービス性、保守性に優れた方法となっている。
【発明を実施するための最良の形態】
【００２０】
次に、本発明の好ましい実施の形態について図面を参照して説明する。
【００２１】
図１は、本発明のアプリケーションサービス拒絶攻撃防御方法が適用されるネットワークの構成の一例を示す図である。ここでは、エンドノードの例としてＳＩＰサーバ、ＳＭＴＰサーバそれぞれ一台ずつを、ＴＣＰ(transmission control protocol)上のＤｏＳ／ＤＤｏＳ攻撃から防御する場合について説明する。
【００２２】
ＩＳＰ（インターネットサービスプロバイダ）のコアネットワーク１０が設けられており、このコアネットワーク１０の縁（エッジ）の部分には、それぞれ、エッジルータ１，２が設けられている。エッジルータ１は、防御対象であるＳＩＰサーバ４及びＳＭＴＰサーバ５を収容するものであって、エッジルータ１のサーバ４，５側への出口回線には、エッジルータ１の出口インタフェース８を介して、インラインに、ファイアウォール装置３が挿入され接続されている。ＳＩＰサーバ４は、ＩＳＰ内でＳＩＰ(Session Initiation Protocol)をプロトコル制御する制御サーバであり、同様にＳＭＴＰサーバ５は、ＩＳＰ内でＳＭＴＰ(Simple Mail Transfer Protocol)及びＰＯＰ３(Post Office Protocol 3)をプロトコル制御する制御サーバである。エッジルータ２には、ＳＩＰサーバ４及びＳＭＴＰサーバ５に収容されているユーザ端末６，７が接続している。
【００２３】
図２は、ファイアウォール装置３の構成を示すブロック図である。ファイアウォール装置３は、イングレス側（エッジルータ１に接続する側）からエグレス側（防御対象のＳＩＰサーバ４及びＳＭＴＰサーバ５に接続する側）に向けて、レイヤ４以下のフィールド情報を基にフィルタリングを行うスタティックパケットフィルタリング部１１と、各サーバ４，５の代理でＴＣＰの処理を一旦終端し、３ウェイ−ハンドシェーク処理を行ってからそのサーバへトラヒックを転送するＴＣＰインターセプト部１２と、各サーバ４，５のアドレスを送信先アドレスとするトラヒックを発信元アドレスごとに監視し、レイヤ４以下の情報を基にＤｏＳ／ＤＤｏＳ攻撃を検知し対処を依頼するＬ４不特定検知部１３と、Ｌ４不特定検知部１３からの依頼により指定されたフローに対しフィルタリングまたはレートリミットの設定を行うＬ４ＡＣＬ／レート制限ダイナミック設定部１４とが、ファイアウォール装置３内のバスを介して直列に接続した構成を有する。Ｌ４不特定検知部１３は、例えば、トラヒック量が一定のしきい値を越えた場合に、上述した依頼として、そのフローのフィルタリングまたはレートリミットをＬ４ＡＣＬ／レート制限ダイナミック設定部１４に命令するなどの処理を行う。
【００２４】
具体的には、スタティックパケットフィルタリング部１１は、イングレス側から入力したパケットのＩＰヘッダ及びＴＣＰヘッダ情報を基に、トラヒックのフィルタリングを行う。例えば、ＵＤＰ(User Datagram Protocol)パケット、ＩＣＭＰ(Internet Control Message Protocol)パケット、ＴＣＰパケットのうち、防御対象のサーバ４，５が処理対象とするプロトコルの予約済みポート番号を持たないパケットについては、破棄される。どのポート番号のパケットを通すかは、保守者（ファイアウォール装置の管理者）によって設定される。これにより、ＵＤＰフラッド（洪水）やＩＣＭＰスキャンなどの攻撃トラヒックを排除できる。これは、低レイヤでのＤｏＳ／ＤＤｏＳ攻撃を防御する従来のファイアウォール装置にも一般的に設けられている機能である。ＩＰはレイヤ３のプロトコルであり、ＴＣＰはレイヤ４のプロトコルであるから、スタティックパケットフィルタリング部１１は、レイヤ４以下のフィールド情報に基づいてフィルタリングを行っていることになる。
【００２５】
ＴＣＰインターセプト部１２は、ＴＣＰをステートフル(stateful)に検知し、ＴＣＰ−ＳＹＮフロッド（洪水）やＴＣＰポートスキャンなどのＴＣＰを基調とする攻撃パケットを廃棄するばかりでなく、ＴＣＰシーケンスの正常性を確認してからパケットを転送する。ＴＣＰシーケンスの正常性を確認するので、発信元アドレスを詐称したパケットもここで廃棄され、詐称アドレスパケットについてもここで防御されることになる。ＴＣＰはレイヤ４のプロトコルであるから、ＴＣＰインターセプト部１２は、レイヤ４以下の情報に基づいてレイヤ４での処理を行っていることになる。
【００２６】
Ｌ４不特定検知部１３は、レイヤ４以下の情報を基にＤｏＳ／ＤＤｏＳ攻撃の検出を行い、検出されたＤｏＳ／ＤＤｏＳ攻撃フローについてフィルタリングまたはレート（転送速度）制限の対処を行うように、Ｌ４ＡＣＬ／レート制限ダイナミック設定部１４へ命令する。ここではＬ４不特定検知部１３による、攻撃検知とＬ４ＡＣＬ／レート制限ダイナミック設定部１４への設定の指示とをまとめて、検知・設定連携機能と呼ぶ。Ｌ４不特定検知部１３は、例えば、予め設定されたエンドノード（サーバ）への各ユーザ端末（あるいは他のノード）からのトラヒックを発信元アドレスごとに検知しそのトラヒック量がしきい値を上回ったときにＤｏＳ／ＤＤｏＳ攻撃と判断し、ＤｏＳ／ＤＤｏＳ攻撃を検出する。
【００２７】
Ｌ４ＡＣＬ／レート制限ダイナミック設定部１４は、Ｌ４不特定検知部１３からの命令にしたがってフィルタリングあるいはレート制限を行うことにより、結果として、レイヤ４以下のフィールドの値によってフィルタリングあるいはレート制限を行っている。スタティックパケットフィルタリング部１１でのフィルタリングあるいはレート制限の設定は保守者によって行われるが、このＬ４ＡＣＬ／レート制限ダイナミック設定部１４でのフィルタリングあるいはレート制限の設定は、基本的には、Ｌ４不特定検知部１３のみが行っている。すなわち、非常時に強制的に設定しなければならないという例外的な場合を除き、保守者は、Ｌ４ＡＣＬ／レート制限ダイナミック設定部１４に対するフィルタリングあるいはレート制限の設定を行わない。
【００２８】
さらに、ファイアウォール装置３には、各機能部（スタティックパケットフィルタリング部１１、ＴＣＰインターセプト部１２、Ｌ４不特定検知部１３及びＬ４ＡＣＬ／レート制限ダイナミック設定部１４）で処理を行う際に用いられる値やパラメータを設定する設定部１５と、保守者によってそれらの値やパラメータが入力されるキーボードやマウスなどの入力装置１６と、それらの値やパラメータを設定するための画面を保守者に対し表示する表示装置１７と、を備えている。ただし、Ｌ４ＡＣＬ／レート制限ダイナミック設定部１４に対する値の設定は、上述したように、ごく例外的な場合にしか行われない。
【００２９】
次に、本実施形態の動作の説明に先立って、ＩＰヘッダ及びＴＣＰヘッダの構成と、ＳＩＰ及びＳＭＴＰでの処理について説明する。
【００３０】
図３は、ＩＰヘッダー及びＴＣＰヘッダーの各フィールドを示す。ここに示したＩＰヘッダ及びＴＣＰヘッダの構成は、当業者には周知のものである。
【００３１】
図４は、ＩＰ電話の中継に用いられＴＣＰ上のプロトコルであるＳＩＰ（ＲＦＣ３２６１を参照）での処理を示すシーケンス図である。発呼側のユーザ端末から着呼側のユーザ端末に発呼する際の処理を示している。まず、発呼側のユーザ端末から、ＩＮＶＩＴＥ（インバイト）メッセージをＳＩＰサーバに送ると（ステップ４０１）、ＳＩＰサーバは、ＩＮＶＩＴＥメッセージを着呼側のユーザ端末に送り（ステップ４０２）、続いて、Ｔｒｙｉｎｇメッセージを発呼側のユーザ端末に送る（ステップ４０３）。着呼側のユーザ端末は、ＳＩＰサーバに、Ｔｒｙｉｎｇメッセージを送り（ステップ４０４）、引き続いて、呼び出し音に相当するＲｉｎｇｉｎｇメッセージを送る（ステップ４０５）。これを受けてＳＩＰサーバは、Ｒｉｎｇｉｎｇメッセージを発呼側のユーザ端末に送る（ステップ４０６）。着呼側のユーザ端末は、着呼の準備ができるとＯＫメッセージをＳＩＰサーバに送り（ステップ４０７）、これを受けてＳＩＰサーバは、ＯＫサーバを発呼側のユーザ端末に送る（ステップ４０８）。ＯＫメッセージを受け取ると発呼側の端末はＡＣＫ（肯定応答）メッセージをＳＩＰサーバに送り（ステップ４０９）、ＳＩＰサーバはＡＣＫメッセージを着呼側のユーザ端末に送信する（ステップ４１０）。
【００３２】
以上の処理により、発呼側と着呼側のユーザ端末間の接続経路が確立するから、発呼側と着呼側のユーザ端末間での通信が開始する（ステップ４１１）。通信が終了すると、終話を伝えるＢＹＥメッセージが発呼側のユーザ端末からＳＩＰサーバに送られ（ステップ４１２）、ＳＩＰサーバはＢＹＥメッセージを着呼側のユーザ端末に送る（ステップ４１３）。これを受けて着呼側のユーザはＯＫメッセージをＳＩＰサーバに送り（ステップ４１４）、ＳＩＰサーバがＯＫメッセージを発呼側のユーザ端末に送る（ステップ４１５）。以上により、一連の呼の処理が終了する。
【００３３】
図５は、電子メールの中継に用いられＴＣＰ上のプロトコルであるＰＯＰ３（ＲＦＣ１９３９ほかを参照）での処理を示すシーケンス図である。
【００３４】
ＳＭＴＰサーバ内にユーザ向けの電子メールメッセージが既に蓄積されているとして、ユーザ端末からＳＭＴＰサーバにＵＳＥＲメッセージを送ると（ステップ５０１）、ＳＭＴＰサーバはユーザ端末に＋ＯＫレスポンスを返し（ステップ５０２）、その後、ユーザ端末とＳＭＴＰサーバとの間で、ユーザ認証交換が行われ（ステップ５０３）、認証後、サーバ内のメッセージ情報の確認が行われる（ステップ５０４）。続いて、ユーザ端末はＳＭＴＰサーバからメッセージをダウンロードし（ステップ５０５）、ダウンロード後、ユーザ端末からＳＭＴＰサーバに対してメッセージ削除要求が行われる（ステップ５０６）。最後に、ユーザ端末からＳＭＴＰサーバに完了通知を送信し（ステップ５０７）、ユーザ端末とＳＭＴＰサーバのそれぞれで通信の切断処理が行われる（ステップ５０８）。
【００３５】
このようにして、ＳＭＴＰサーバからユーザ端末に電子メールのメッセージを取り込む処理が行われる。
【００３６】
次に、本実施形態のアプリケーションサービス拒絶攻撃防御方法の動作を説明する。ここでは、図１に示したネットワーク構成において、ユーザ端末６はＤｏＳ／ＤＤｏＳ攻撃トラヒックを発するユーザ端末であり、ユーザ端末７は正当なユーザ端末であるとする。ＳＩＰサーバ４は、ＴＣＰ上のプロトコルであるＳＩＰのサーバとして動作し、ＳＭＴＰサーバ５は、ＴＣＰ上のプロトコルであるＰＯＰ３のサーバとして動作するものとする。以下では、ユーザ端末６、７からＳＩＰサーバ４やＳＭＴＰサーバ５へのトラヒックを「上りトラヒック」とし、「上りトラヒック」とは逆方向のトラヒックを「下りトラヒック」とする。
【００３７】
ここで、ユーザ端末６は、各サーバ４，５に向けて、レイヤ５以上の処理を行うメッセージを多数送信し、サーバ４，５及びそこまでのネットワークを過負荷状態にし、ユーザ端末７を使用する正当なユーザがサービスを受けるのを妨害するものとする。
【００３８】
本実施形態では、図１に示すように、エッジルータ１の出口インタフェース８へインラインにファイアウォール装置３を設置し、ここで、ＤｏＳ／ＤＤｏＳ攻撃の検知・対処を行う。
【００３９】
ファイアウォール装置３のスタティックパケットフィルタリング部１１では、まず、設定部１５によって、上りトラヒックに対して、「ＩＰヘッダでは、発信元アドレス＝ＳＩＰサーバのアドレス、プロトコルフィールド＝６（ＴＣＰ）、ＴＣＰヘッダでは、送信先ポート＝５０６０（ＳＩＰプロトコルのウェルノーウン（周知；well-known）ポート）」及び「ＩＰヘッダでは、発信元アドレス＝ＳＭＴＰサーバのアドレス、プロトコルフィールド＝６（ＴＣＰ）、ＴＣＰヘッダでは、送信先ポート＝１１０（ＰＯＰ３プロトコルのウェルノーウンポート）」のみを通過可能とする設定を行う。これにより、ＵＤＰフラッド（洪水）やＩＣＭＰフラッドなどの攻撃パケットは廃棄できる。
【００４０】
ＴＣＰインターセプト部１２における具体的な処理シーケンスが図６に示されている。ＴＣＰインターセプト部１２は、ユーザ端末とエンドノードとの間で３ウェイ−ハンドシェーク処理を行うものであるが、ユーザ端末からのＴＣＰ−ＳＹＮパケットを検知したとき（ステップ６０１）に、すぐには転送せず、一旦保留し、エンドノード（サーバ）の代理として、ユーザ端末にＴＣＰ−ＳＹＮ＋ＡＣＫパケットを返送する（ステップ６０２）。ユーザ端末が発信元アドレスを詐称してＴＣＰ−ＳＹＮパケットを送信していた場合には、このＴＣＰ−ＳＹＮ＋ＡＣＫパケットは、そのユーザ端末には届かない。
【００４１】
ユーザ端末は、ＴＣＰ−ＳＹＮ＋ＡＣＫパケットを受け取るとＴＣＰ−ＡＣＫパケットをファイアウォール装置に送信する（ステップ６０３）はずであるが、ＴＣＰ−ＳＹＮフラッド攻撃を行っている場合には、ＴＣＰ−ＡＣＫパケットを返さない。そこでＴＣＰインターセプト部１２は、ユーザ端末よりそのＴＣＰ−ＡＣＫパケットが帰ってきたときに、そのＴＣＰ−ＡＣＫパケットをすぐにはエンドノードには転送せず、まず、保留していたＴＣＰ−ＳＹＮパケットをエンドノードに転送する（ステップ６０４）。後は、エンドノードよりＴＣＰ−ＳＹＮ＋ＡＣＫパケットが返送されたとき（ステップ６０５）に、そのＴＣＰ−ＳＹＮ＋ＡＣＫパケットをユーザ端末へは転送せず、留めていたＴＣＰ−ＡＣＫパケットをエンドノードへ転送する（ステップ６０６）。その後、コネクションが確立すると、ユーザ端末はＴＣＰデータを送信する（ステップ６０７）が、ファイアウォール装置３は、そのＴＣＰデータをそのままエンドノードに転送する（ステップ６０８）。
【００４２】
このようにして、ＴＣＰインターセプト部１２は、ＴＣＰセッションの状態を監視し、ユーザ端末からのシーケンスにそぐわないパケットを廃棄する。これによりユーザからの発信元アドレスを詐称したパケットは廃棄でき、また、不正なＴＣＰパケットも廃棄できる。このことから、ＴＣＰインターセプト部１２の段階で、ＴＣＰパケットを用いたほとんどのＤｏＳ／ＤＤｏＳ攻撃パケットを廃棄できる。
【００４３】
図７は、Ｌ４不特定検知部１３での処理を示すフローチャートである。Ｌ４不特定検知部１３は、ある発信元アドレスのトラヒックに関してＬ４ＡＣＬ／レート制限ダイナミック設定部１４に対してフィルタリングあるいはレート制限を命令した場合にその発信元アドレスを登録する設定テーブルを備えている。そしてＬ４不特定検知部１３は、上りトラヒックについて、予め設定されたエンドノードへのユーザ端末からのトラヒックを発信元アドレスごとに検知し、攻撃の対象となるエンドノードについての、発信元アドレスごとに予め設定された単位時間Ｔ当たりのトラヒック量をその単位時間で割った値をＣとする（ステップ７０１）。次に、検出された発信元アドレスが設定テーブルに登録されているかどうかを判定する（ステップ７０２）。ここで、発信元アドレスが設定テーブルに登録されていない場合には、値Ｃは予め設定されたしきい値Ａを超えているかどうかを判定する（ステップ７０３）。Ｃがしきい値Ａを超えている場合には、Ｌ４不特定検知部１３は、その発信元アドレスをもつパケットをフィルタリングまたは予め指定されたしきい値Ｄでレート制限をかけるように、ファイアウォール装置３内のバスを介してＬ４ＡＣＬ／レート制限ダイナミック設定部１４へ命令し（ステップ７０４）、さらに、その発信元アドレスを設定テーブルに登録して（ステップ７０５）、その後、次のパケットの処理のために、ステップ７０１に戻る。ステップ７０３でＣがしきい値Ａを超えていない場合は、そのまま、ステップ７０１に戻る。
【００４４】
ステップ７０２において、その発信元アドレスが設定テーブルに登録されている場合、Ｃが予め設定されたしきい値Ｂを下回ったかどうかを判断する（ステップ７０６）。下回っていない場合には、ステップ７０１に戻り、下回っている場合には、Ｌ４不特定検知部１３は、Ｌ４ＡＣＬ／レート制限ダイナミック設定部１４に対し、その発信元アドレスに設定した内容（フィルタリングあるいはレート制限）を解除するように命令し（ステップ７０７）、設定テーブルからその発信元アドレスを削除して（ステップ７０８）、ステップ７０１に戻る。同様に、ステップ７０２において、設定テーブルに登録されている発信元アドレスをもつパケットがその単位時間Ｔ内に検出されなかった場合には、Ｌ４不特定検知部１３は、ステップ７０７に移行して、Ｌ４ＡＣＬ／レート制限ダイナミック設定部１４に対し、その発信元アドレスに設定した内容を解除するように命令する。
【００４５】
以上の処理において、ステップ７０１でのエンドノードの送信先アドレス、単位時間Ｔ、しきい値Ａ，Ｂ，Ｄは、いずれも、保守者によって、送信先アドレスごと（エンドノードごと）に設定されるものである。
【００４６】
図８は、保守者が設定部１５を用いてＬ４不特定検知部１３に対して設定を行う際に、表示装置１６上に表示される保守者設定画面２１の一例を示している。図８に示したものでは、「対象エンドノード指定のＩＰアドレスとして、ＳＩＰサーバのアドレス、トラヒック検知単位時間Ｔ＝１０００ｍｓｅｃ、しきい値Ａについては、１秒間にＳＩＰプロトコルのＩＮＶＩＴＥメッセージを１０個検知した場合に攻撃と判断することを前提として、ＩＮＶＩＴＥメッセージ１０個分（ＴＣＰなどの下位レイヤシーケンス分トラヒックも含む）のトラヒック量、しきい値Ｂとしては、しきい値Ａの約８０％としてＩＮＶＩＴＥメッセージ８個分のトラヒック量、検出時の対処処理としてはフィルタリングを選択」、及び「対象エンドノード指定のＩＰアドレスとして、ＳＭＴＰサーバのアドレス、トラヒック検知単位時間Ｔ＝１０００ｍｓｅｃ、しきい値Ａについては、１秒間にＰＯＰ３プロトコルのＵＳＥＲメッセージを１０個検知した場合に攻撃と判断することを前提として、ＵＳＥＲメッセージ１０個分（ＴＣＰなどの下位レイヤシーケンス分トラヒックも含む）のトラヒック量、しきい値Ｂとしては、しきい値Ａの約８０％としてＵＳＥＲメッセージ８個分のトラヒック量、検出時の対処処理としてはフィルタリングを選択」の２つを予め設定している。このような設定を行うことにより、ＳＩＰサーバ、ＳＭＴＰサーバへの攻撃が発生した場合、それらに対して自動的に防御し、攻撃終了時には自動的に解除することができる。
【００４７】
Ｌ４ＡＣＬ／レート制限ダイナミック設定部１４は、上りトラヒックに対して、Ｌ４不特定検知部１３で発見したＤｏＳ／ＤＤｏＳ攻撃フローについてフィルタリング（具体的には発信元アドレスに基づくフィルタリング）あるいはレート制限を行う。レート制限を選択する場合には、上述したように予め指定したしきい値Ｄを基にレート制限を行う。さらに、Ｌ４ＡＣＬ／レート制限ダイナミック設定部１４は、Ｌ４不特定検知部１３がＤｏＳ／ＤＤｏＳ攻撃の終了を検出した場合に、それに基づいて、フィルタリングあるいはレート制限の設定の解除を行う。
【００４８】
このようにして本実施形態によれば、以上述べた構成のファイアウオール装置３にユーザ端末からエンドノードへのトラヒックを通すことにより、高精度にＤｏＳ／ＤＤｏＳ攻撃を検知・防御することができる。
【００４９】
以上説明したファイアウォール装置は、それを実現するためのコンピュータプログラムを、サーバ用コンピュータなどのコンピュータに読み込ませ、そのプログラムを実行させることによっても実現できる。そのようなプログラムは、ＣＤ−ＲＯＭなどの記録媒体によって、あるいは、ネットワークを介して、コンピュータに読み込まれる。そのようなコンピュータは、一般に、ＣＰＵ（中央処理装置）と、プログラムやデータを格納するためのハードディスク装置と、主メモリと、キーボードやマウスなどの入力装置と、ＣＲＴなどの表示装置と、ＣＤ−ＲＯＭ等の記録媒体を読み取る読み取り装置と、ネットワークと接続するためのインタフェースとから構成されている。このコンピュータでは、ファイアウォール装置を実現するためのプログラムを記録媒体から読み出しあるいはネットワークを介してダウンロードしてハードディスク装置に格納し、ハードディスク装置に格納されたプログラムをＣＰＵが実行することにより、ファイアウォール装置として機能することになる。
【図面の簡単な説明】
【００５０】
【図１】本発明のアプリケーションサービス拒絶攻撃防御方法が適用されるネットワークの構成の一例を示す図である。
【図２】ファイアウォール装置の構成を示すブロック図である。
【図３】ＩＰヘッダ及びＴＣＰヘッダにおける各フィールドを説明する図である。
【図４】ＳＩＰプロトコルを示すシーケンス図である。
【図５】ＳＭＴＰプロトコルを示すシーケンス図である。
【図６】ＴＣＰインターセプト部での処理の一例を示すシーケンス図である。
【図７】Ｌ４不特定検知部での処理を示すフローチャートである。
【図８】Ｌ４不特定検知部及びＬ４ＡＣＬ／レート制限ダイナミック設定部で用いる値を設定するための保守者設定画面の一例を示す図である。
【符号の説明】
【００５１】
１，２    エッジルータ
３    ファイアウォール装置
４    ＳＩＰサーバ
５    ＳＭＴＰサーバ
６，７    ユーザ端末
８    出口インタフェース
１０    コアネットワーク
１１    スタティックパケットフィルタリング部
１２    ＴＣＰインターセプト部
１３    Ｌ４不特定検知部
１４    Ｌ４ＡＣＬ／レート制限ダイナミック設定部
１５    設定部
１６    入力装置
１７    表示装置
２１    保守者設定画面
【図１】
2006060599.tif 000003
【図２】
2006060599.tif 000004
【図３】
2006060599.tif 000005
【図４】
2006060599.tif 000006
【図５】
2006060599.tif 000007
【図６】
2006060599.tif 000008
【図７】
2006060599.tif 000009
【図８】
2006060599.tif 000010