(57)【特許請求の範囲】
【請求項１】
防御対象の装置宛てに送信されたパケットの認証を行うセキュリティシステムによって
防御された装置に対し、処理負荷を増加させる攻撃パケットを送信する送信部と、
前記セキュリティシステムによって行われる複数の段階の認証のうち、所定の段階の認
証までの応答要求に対し、前記攻撃パケットが前記セキュリティシステムによって正当な
ものであると認証されるように応答を行う応答部と、
前記所定の段階における、前記攻撃パケットが送信された前記セキュリティシステムの
処理負荷の状況を監視し、前記攻撃パケットの種類および量と、前記処理負荷の状況との相関を分析し、処理負荷が高い認証機能を把握する監視部と、
を有することを特徴とする試験装置。
【請求項２】
前記応答部は、前記所定の段階までの認証に対応した応答要求を受信するたびに、受信
した応答要求を識別し、識別した応答要求に対し、前記攻撃パケットが前記セキュリティ
システムによって正当なものであると認証されるように応答を行うことを特徴とする請求
項１に記載の試験装置。
【請求項３】
前記応答部は、ＴＣＰ認証、ＨＴＴＰ認証およびチャレンジレスポンス認証のいずれか
に対応した応答要求を受信した場合、受信した応答要求の種別として、ＴＣＰ認証、ＨＴ
ＴＰ認証およびチャレンジレスポンス認証のいずれに対応した応答要求であるかを識別し
、識別した種別の認証において正当なものであると認証されるように応答を行うことを特
徴とする請求項２に記載の試験装置。
【請求項４】
前記送信部は、Ｗｅｂサーバである前記装置に、前記攻撃パケットとともに、Ｗｅｂブ
ラウザの操作により発生するパケットを送信することを特徴とする請求項１に記載の試験
装置。
【請求項５】
前記セキュリティシステムの処理負荷の状況に応じて、前記送信部によって送信される
前記攻撃パケットの量を変化させる管理部をさらに有することを特徴とする請求項１に記
載の試験装置。
【請求項６】
前記管理部は、前記セキュリティシステムの処理負荷が所定以上である場合、前記セキ
ュリティシステムに前記送信部によって送信される前記攻撃パケットの量を増加させるこ
とを特徴とする請求項５に記載の試験装置。
【請求項７】
試験装置によって実行される試験方法であって、
防御対象の装置宛てに送信されたパケットの認証を行うセキュリティシステムによって
防御された装置に対し、処理負荷を増加させる攻撃パケットを送信する送信工程と、
前記セキュリティシステムによって行われる複数の段階の認証のうち、所定の段階の認
証までの応答要求に対し、前記攻撃パケットが前記セキュリティシステムによって正当な
ものであると認証されるように応答を行う応答工程と、
前記所定の段階における、前記攻撃パケットが送信された前記セキュリティシステムの
処理負荷の状況を監視し、前記攻撃パケットの種類および量と、前記処理負荷の状況との相関を分析し、処理負荷が高い認証機能を把握する監視工程と、
を含んだことを特徴とする試験方法。
【請求項８】
防御対象の装置宛てに送信されたパケットの認証を行うセキュリティシステムによって
防御された装置に対し、処理負荷を増加させる攻撃パケットを送信する送信ステップと、
前記セキュリティシステムによって行われる複数の段階の認証のうち、所定の段階の認
証までの応答要求に対し、前記攻撃パケットが前記セキュリティシステムによって正当な
ものであると認証されるように応答を行う応答ステップと、
前記所定の段階における、前記攻撃パケットが送信された前記セキュリティシステムの
処理負荷の状況を監視し、前記攻撃パケットの種類および量と、前記処理負荷の状況との相関を分析し、処理負荷が高い認証機能を把握する監視ステップと、
をコンピュータに実行させるための試験プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、試験装置、試験方法および試験プログラムに関する。
【背景技術】
【０００２】
従来、機器に対し負荷を印加するためのパケットを送信し、パケット負荷試験を実施する方式が提案されている（例えば、非特許文献１）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】IXIA,  “Denial  of  Service  (DOS)  Testing”
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の方式には、認証のための応答要求を行う機器に対し、パケット負荷試験が行えないという問題があった。
【０００５】
例えば、ＤＤｏＳ攻撃ツールの進化にともない、ＤＤｏＳ対策製品等のセキュリティ機器は、ＴＣＰ認証、ＨＴＴＰ認証、チャレンジレスポンス認証等の多段階防御機能の実装により、複数の認証でサーバを防御するように高度化してきている。
【０００６】
このようなセキュリティ機器またはサーバに対してパケット負荷試験を行う場合、従来の方式では、認証のための応答要求に応答がない場合、負荷を印加するためのパケットが廃棄され、目的とする試験を行うことができないことがあった。
【課題を解決するための手段】
【０００７】
本発明の試験装置は、防御対象の装置宛てに送信されたパケットの認証を行うセキュリティシステムによって防御された装置に対し、処理負荷を増加させる攻撃パケットを送信する送信部と、前記セキュリティシステムによって行われる前記攻撃パケットの認証に対応した応答要求を受信し、受信した応答要求を識別し、識別した応答要求に対し、前記攻撃パケットが前記セキュリティシステムによって正当なものであると認証されるように応答を行う応答部と、前記応答部の応答により前記セキュリティシステムによって正当なものであると認証された前記攻撃パケットが送信された前記セキュリティシステムまたは前記装置の処理負荷の状況を監視する監視部と、を有することを特徴とする。
【０００８】
また、本発明の試験方法は、試験装置によって実行される試験方法であって、防御対象の装置宛てに送信されたパケットの認証を行うセキュリティシステムによって防御された装置に対し、処理負荷を増加させる攻撃パケットを送信する送信工程と、前記セキュリティシステムによって行われる前記攻撃パケットの認証に対応した応答要求を受信し、受信した応答要求を識別し、識別した応答要求に対し、前記攻撃パケットが前記セキュリティシステムによって正当なものであると認証されるように応答を行う応答工程と、前記応答工程の応答により前記セキュリティシステムによって正当なものであると認証された前記攻撃パケットが送信された前記セキュリティシステムまたは前記装置の処理負荷の状況を監視する監視工程と、を含んだことを特徴とする。
【０００９】
また、本発明の試験プログラムは、防御対象の装置宛てに送信されたパケットの認証を行うセキュリティシステムによって防御された装置に対し、処理負荷を増加させる攻撃パケットを送信する送信ステップと、前記セキュリティシステムによって行われる前記攻撃パケットの認証に対応した応答要求を受信し、受信した応答要求を識別し、識別した応答要求に対し、前記攻撃パケットが前記セキュリティシステムによって正当なものであると認証されるように応答を行う応答ステップと、前記応答ステップの応答により前記セキュリティシステムによって正当なものであると認証された前記攻撃パケットが送信された前記セキュリティシステムまたは前記装置の処理負荷の状況を監視する監視ステップと、をコンピュータに実行させる。
【発明の効果】
【００１０】
本発明によれば、認証のための応答要求を行う機器に対し、パケット負荷試験を行うことができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、第１の実施形態に係る試験装置を有するネットワークの構成の一例を示す図である。
【図２】図２は、第１の実施形態に係る試験装置の構成の一例を示す図である。
【図３】図３は、多段階防御機能について説明するための図である。
【図４】図４は、第１の実施形態に係る試験装置によるパケット負荷試験について説明するためのシーケンス図である。
【図５】図５は、第１の実施形態に係る試験装置の処理の流れを示すフローチャートである。
【図６】図６は、第１の実施形態に係る試験装置の処理の流れを示すフローチャートである。
【図７】図７は、プログラムが実行されることにより試験装置が実現されるコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１２】
以下に、本願に係る試験装置、試験方法および試験プログラムの実施形態を図面に基づいて詳細に説明する。なお、この実施形態により本発明が限定されるものではない。
【００１３】
［第１の実施形態の構成］
まず、図１を用いて、第１の実施形態に係る試験装置を有するネットワークの構成について説明する。図１は、第１の実施形態に係る試験装置を有するネットワークの構成の一例を示す図である。
【００１４】
図１に示すように、ネットワーク１は、試験装置１０ａ〜１０ｄ、および試験対象システム２０を有する。また、試験対象システム２０は、ネットワーク装置２１、セキュリティ装置２２、サーバ２３および２４を有する。ネットワーク１の各システム、および各装置は、例えば、有線または無線のＬＡＮ（Local  Area  Network）やＶＰＮ（Virtual  Private  Network）等の任意の種類の通信網によって接続されている。
【００１５】
なお、試験装置１０ｂ〜１０ｄは、いずれも試験装置１０ａと同じ機能を有する装置である。試験装置１０ａは、試験パケット送受信機能、モニタリング機能および管理機能を有する。
【００１６】
試験パケット送受信機能は、セキュリティ耐性試験のための攻撃パケットを試験対象システム２０に含まれる各装置に対し送信し、攻撃パケットに対して試験対象システム２０から送信されるパケットを受信する機能である。また、モニタリング機能は、試験対象システム２０の各装置の負荷の状況を監視する機能である。また、管理機能は、試験パケット送受信機能およびモニタリング機能に関する設定や、情報の取得および分析を行う機能である。
【００１７】
例えば、図１の例では、試験装置１０ａによって管理機能が実行され、試験装置１０ｂおよび１０ｃによって試験パケット送受信機能が実行され、試験装置１０ｄによってモニタリング機能が実行される。なお、例えば、試験装置１０ａによって、試験パケット送受信機能、モニタリング機能および管理機能のすべての機能が実行されるようにしてもよい。また、例えば、管理機能を実行する試験装置１０ａと、試験パケット送受信機能やモニタリング機能を実行する試験装置１０ｂ〜１０ｄとの間における通信には、ネットワーク１内で用いられるＨＴＴＰやＨＴＴＰＳ等のプロトコルが用いられる。
【００１８】
ここで、図２を用いて、試験装置１０ａについて説明する。なお、試験装置１０ｂ〜１０ｄの構成は、試験装置１０ａの構成と同様である。図２は、第１の実施形態に係る試験装置の構成の一例を示す図である。図２に示すように、試験装置１０ａは、インタフェース部１１、制御部１２および記憶部１３を有する。
【００１９】
インタフェース部１１は、他の装置との間で通信制御を行うインタフェースである。例えば、インタフェース部１１は、ネットワークを介して他の装置との間でパケットの送受信を行う。また、インタフェース部１１は、例えばＬＡＮカード等のネットワークインタフェースカードである。
【００２０】
インタフェース部１１は、試験パケット用インタフェース１１１、モニタリング用インタフェース１１２および管理用インタフェース１１３を有する。試験パケット用インタフェース１１１は、試験パケット送受信機能の実行にともなうパケットの送受信を行う。また、モニタリング用インタフェース１１２は、試験装置１０ａのモニタリング機能の実行にともなうパケットの送受信を行う。また、管理用インタフェース１１３は、試験装置１０ａの管理機能の実行にともなうパケットの送受信を行う。
【００２１】
制御部１２は、試験装置１０ａ全体を制御する。制御部１２は、例えば、ＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）等の電子回路や、ＡＳＩＣ（Application  Specific  Integrated  Circuit）、ＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路である。また、制御部１２は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。また、制御部１２は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、制御部１２は、試験パケット送受信部１２１、モニタリング部１２２および管理部１２３を有する。なお、モニタリング部１２２は、監視部の一例である。
【００２２】
送信部１２５は、防御対象の装置宛てに送信されたパケットの認証を行うセキュリティ装置２２によって防御されたサーバ２３に対し、処理負荷を増加させる攻撃パケットを送信する。また、応答部１２６は、セキュリティ装置２２によって行われる認証に対応した応答要求を受信し、受信した応答要求を識別し、識別した応答要求に適合する応答、すなわち攻撃パケットがセキュリティ装置２２によって正当なものであると認証されるような応答を行う。また、モニタリング部１２２は、セキュリティ装置２２によって正当なものであると認証された攻撃パケットが送信されたセキュリティ装置２２またはサーバ２３の処理負荷の状況を監視する。
【００２３】
また、応答部１２６は、セキュリティ装置２２によって段階的に行われる認証のうち任意の段階までの認証に対応した応答要求を受信するたびに、受信した応答要求を識別し、識別した応答要求に適合する応答、すなわち攻撃パケットが前記セキュリティシステムによって正当なものであると認証されるような応答を行う。
【００２４】
また、応答部１２６は、ＴＣＰ認証、ＨＴＴＰ認証およびチャレンジレスポンス認証のいずれかに対応した応答要求を受信した場合、受信した応答要求の種別として、ＴＣＰ認証、ＨＴＴＰ認証およびチャレンジレスポンス認証のいずれに対応した応答要求であるかを識別する。
【００２５】
記憶部１３は、ＨＤＤ（Hard  Disk  Drive）、ＳＳＤ（Solid  State  Drive）、光ディスク等の記憶装置である。なお、記憶部１３は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ、ＮＶＳＲＡＭ（Non  Volatile  Static  Random  Access  Memory）等のデータを書き換え可能な半導体メモリであってもよい。記憶部１３は、制御部１２で実行されるＯＳ（Operating  System）や各種プログラムを記憶する。さらに、記憶部１３は、プログラムの実行で用いられる各種情報を記憶する。
【００２６】
試験装置１０ａ〜１０ｄによれば、試験対象システム２０に含まれる各装置のパケット負荷試験を行うことができる。ここで、セキュリティ装置２２およびサーバ２３のパケット負荷試験を行う場合を例に挙げて、試験装置１０ａ〜１０ｄによるパケット負荷試験について説明する。
【００２７】
まず、図３を用いて多段階防御機能について説明する。図３は、多段階防御機能について説明するための図である。図３に示すように、サーバ２３にパケットを送信する場合、セキュリティ装置２２による複数の段階の認証が行われる必要がある。セキュリティ装置２２は、例えば、ＴＣＰ認証、ＨＴＴＰ認証、およびチャレンジレスポンス認証を行う。
【００２８】
例えば、セキュリティ装置２２は、サーバ２３に対するパケットの送信を検知した場合、当該パケットに対し各段階の認証に対応した応答要求を行う。このとき、パケットの送信元が人によって操作される一般ブラウザであって、操作した人によって応答要求に適合した応答が行われれば、セキュリティ装置２２は、パケットを認証し通過させる。
【００２９】
一方、送信されたパケットが、詐称した送信元によるＳＹＮ  Ｆｌｏｏｄ攻撃を目的としたものである場合、セキュリティ装置２２は、ＴＣＰ認証の段階で当該パケットを廃棄する。このため、サーバ２３のパケット負荷試験を目的とした攻撃ツールによってパケットが送信された場合であっても、セキュリティ装置２２は所定の段階で当該パケットの送信が攻撃であることを検知し、当該パケットを廃棄する。
【００３０】
これにより、従来のパケット負荷試験を目的とした攻撃ツールでは、サーバ２３やセキュリティ装置２２のパケット負荷試験を行うことが難しかった。これに対し、第１の実施形態に係る試験装置によれば、サーバ２３やセキュリティ装置２２のパケット負荷試験を行うことが可能である。
【００３１】
ここで、図４を用いて、試験装置１０ａ〜１０ｄがサーバ２３またはセキュリティ装置２２のパケット負荷試験を行う場合の動作について説明する。図４は、第１の実施形態に係る試験装置によるパケット負荷試験について説明するためのシーケンス図である。図４の例では、試験装置１０ａが管理機能を実行し、試験装置１０ｂが試験パケット送受信機能を実行することとする。
【００３２】
まず、試験装置１０ａは、攻撃パケットおよびモニタリングの設定を行う（ステップＳ２０１）。このとき、試験装置１０ａは、攻撃パケットとして、例えば大量ＨＴＴＰ  ＧＥＴ攻撃、または大量ＨＴＴＰ  ＰＯＳＴ攻撃を行うパケットを送信するように試験装置１０ｂの設定を行う。また、試験装置１０ａは、モニタリングとして、例えばサーバ２３のｐｉｎｇやｔｒａｃｅｂａｃｋへの応答確認、またはＨＴＴＰ応答確認を行うように試験装置１０ｂの設定を行う。
【００３３】
そして、試験装置１０ｂの送信部１２５は、試験パケット用インタフェース１１１から攻撃パケットを送信する（ステップＳ２０２）。このとき、まず、送信部１２５は、サーバ２３との間にＴＣＰコネクションを確立するために、サーバ２３のＩＰアドレスである１０．０．０．１にＴＣＰ  ＳＹＮパケットを送信する。
【００３４】
これに対し、セキュリティ装置２２は、サーバ２３宛てに送信されたＳＹＮパケットが攻撃パケットであるか否かを判定するため、ＴＣＰ認証応答要求を行う（ステップＳ２０３）。なお、ＴＣＰコネクションが確立される場合、ＳＹＮパケットの送信元に対してはＳＹＮ／ＡＣＫパケットが送信される。
【００３５】
ここで、例えば、攻撃ツールは、ＳＹＮパケットに対して不当なパケットが送信されてきた場合であっても、不当なパケットに適合した応答を行わず、再びＳＹＮパケットを送信するといった行動を取ることが知られている。そこで、ＴＣＰ認証を行う場合、セキュリティ装置２２は、例えば、Ｃｏｏｋｉｅを入れたＳＹＮ／ＡＣＫパケット、不当なＡＣＫ  Ｓｅｑｕｅｎｃｅナンバーを入れたＳＹＮ／ＡＣＫパケット、ＡＣＫパケット、ＲＳＴパケット等の不当なパケットを試験装置１０ｂに送信する。そして、セキュリティ装置２２は、送信した不当なパケットに適合した応答が返ってきた場合、ＴＣＰ認証を通過させる。
【００３６】
ここで、応答部１２６は、セキュリティ装置２２に対し、ＴＣＰ認証応答要求に適合した応答を行う（ステップＳ２０４）。例えば、応答部１２６は、ＳＹＮパケットに対しＣｏｏｋｉｅを入れたＳＹＮ／ＡＣＫパケットが送信されてきた場合、当該パケットがＣｏｏｋｉｅを入れたＳＹＮ／ＡＣＫパケットであることを識別する。そして、応答部１２６は、当該Ｃｏｏｋｉｅの内容に基づいたＳｅｑｕｅｎｃｅナンバーを設定したＡＣＫパケットをセキュリティ装置２２に送信する。なお、ＳＹＮ  Ｆｌｏｏｄ攻撃を目的とした攻撃ツールは、セキュリティ装置２２からＣｏｏｋｉｅを入れたＳＹＮ／ＡＣＫパケットが送信されてきた場合であっても、何も応答しないことが考えられる。
【００３７】
これにより、試験装置１０ｂは、サーバ２３との間でＴＣＰコネクションを確立させることができ、送信部１２５によって送信された攻撃パケットがＴＣＰ認証段階で廃棄されることを防止することができる。そして、試験装置１０ｂは、ＴＣＰ認証より先の段階の認証を行う際のセキュリティ装置２２や、サーバ２３を対象にパケット負荷試験を行うことができる。
【００３８】
ＴＣＰコネクションが確立されると、送信部１２５は、サーバ２３宛てにＨＴＴＰ  ＧＥＴリクエストパケットを送信する。セキュリティ装置２２は、サーバ２３宛てに送信されたＨＴＴＰ  ＧＥＴリクエストパケットが攻撃パケットであるか否かを判定するため、ＨＴＴＰ  ＲｅｄｉｒｅｃｔによるＨＴＴＰ認証応答要求を行う（ステップＳ２０５）。
【００３９】
ＨＴＴＰ  ＲｅｄｉｒｅｃｔによるＨＴＴＰ認証を行う場合、セキュリティ装置２２は、例えば、試験装置１０ｂに対し、ＨＴＴＰ  Ｓｔａｔｕｓ  Ｃｏｄｅ  ３０１、３０２、３０３、３０７等のリダイレクト応答を行う。そして、セキュリティ装置２２は、リダイレクト応答に適合した応答が返ってきた場合、ＨＴＴＰ  Ｒｅｄｉｒｅｃｔによる認証を通過させる。
【００４０】
ここで、応答部１２６は、セキュリティ装置２２に対し、ＨＴＴＰ  ＲｅｄｉｒｅｃｔによるＨＴＴＰ認証に適合した応答を行う（ステップＳ２０６）。例えば、応答部１２６は、セキュリティ装置２２からの応答がリダイレクト応答であることを識別する。そして、応答部１２６は、リダイレクト応答のＬｏｃａｔｉｏｎヘッダで示されるＵＲＩ（Uniform  Resource  Identifier）等の値に指定されたリダイレクト先にＧＥＴリクエストパケットを送信する。なお、リダイレクト応答に適合した応答を行わない攻撃ツールは、Ｌｏｃａｔｉｏｎヘッダを参照せず、リダイレクト先にＧＥＴリクエストパケットを送信しないことが考えられる。
【００４１】
さらに、セキュリティ装置２２は、サーバ２３宛てに送信されたＨＴＴＰ  ＧＥＴリクエストパケットが攻撃パケットであるか否かを判定するため、ＨＴＴＰ  ＣｏｏｋｉｅやＪａｖａＳｃｒｉｐｔ（登録商標）によるＨＴＴＰ認証応答要求を行う（ステップＳ２０７）。
【００４２】
ＨＴＴＰ  ＣｏｏｋｉｅやＪａｖａＳｃｒｉｐｔによるＨＴＴＰ認証を行う場合、セキュリティ装置２２は、例えば、試験装置１０ｂに対し、ＪａｖａＳｃｒｉｐｔで記述したプログラムによって、Ｃｏｏｋｉｅの記載内容を読み取り、読み取った結果を返す処理を実行することを要求する。そして、セキュリティ装置２２は、所定時間内に当該プログラムの実行結果が返ってきた場合、ＨＴＴＰ  Ｒｅｄｉｒｅｃｔによる認証を通過させる。
【００４３】
ここで、応答部１２６は、セキュリティ装置２２に対し、ＨＴＴＰ  ＣｏｏｋｉｅやＪａｖａＳｃｒｉｐｔによるＨＴＴＰ認証に適合した応答を行う（ステップＳ２０８）。例えば、応答部１２６は、セキュリティ装置２２から送信されたデータが、ＪａｖａＳｃｒｉｐｔの実行命令であることを識別する。そして、応答部１２６は、ＪａｖａＳｃｒｉｐｔで記述されたプログラムを実行した結果得られるＣｏｏｋｉｅの記載内容をセキュリティ装置２２に通知する。なお、ＪａｖａＳｃｒｉｐｔおよびＣｏｏｋｉｅによるＨＴＴＰ認証に適合した応答を行わない攻撃ツールは、ＨＴＴＰ  ＣｏｏｋｉｅやＪａｖａＳｃｒｉｐｔによるＨＴＴＰ認証に対し何も応答しないことが考えられる。
【００４４】
これにより、試験装置１０ｂは、ＨＴＴＰ認証を通過することができ、送信部１２５によって送信された攻撃パケットがＨＴＴＰ認証段階で廃棄されることを防止することができる。そして、試験装置１０ｂは、ＨＴＴＰ認証より先の段階の認証を行う際のセキュリティ装置２２や、サーバ２３を対象にパケット負荷試験を行うことができる。
【００４５】
さらに、ＨＴＴＰ認証がされた場合、送信部１２５は、サーバ２３宛てにＨＴＴＰ  ＰＯＳＴリクエストパケットを送信する。セキュリティ装置２２は、サーバ２３宛てに送信されたＨＴＴＰ  ＰＯＳＴリクエストパケットが攻撃パケットであるか否かを判定するため、チャレンジレスポンス認証応答要求を行う（ステップＳ２０９）。
【００４６】
チャレンジレスポンス認証を行う場合、セキュリティ装置２２は、例えば、試験装置１０ｂに対し、所定経路上におけるマウス移動やＣＡＰＴＣＨＡ（Completely  Automated  Public  Turing  test  to  tell  Computers  and  Humans  Apart）を要求する。そして、セキュリティ装置２２は、マウス移動やＣＡＰＴＣＨＡに適合した応答が返ってきた場合、チャレンジレスポンス認証による認証を通過させる。
【００４７】
ここで、応答部１２６は、セキュリティ装置２２に対し、チャレンジレスポンス認証に適合した応答を行う（ステップＳ２１０）。例えば、応答部１２６は、セキュリティ装置２２によってマウス移動経路が示されていることを識別する。そして、応答部１２６は、マウス移動経路として示された経路を読み取り、読み取った経路に沿ってマウスを移動させた際に発生する信号と同じ信号をセキュリティ装置２２に送信する。
【００４８】
また、応答部１２６は、セキュリティ装置２２によってＣＡＰＴＣＨＡが示されていることを識別する。そして、応答部１２６は、画像テキスト化サービスやＯＣＲ等を用いてＣＡＰＴＣＨＡをテキスト化したデータをセキュリティ装置２２に送信する。なお、チャレンジレスポンス認証に適合した応答を行わない攻撃ツールは、マウス移動やＣＡＰＴＣＨＡによるチャレンジレスポンス認証に対し何も応答しないことが考えられる。
【００４９】
これにより、試験装置１０ｂは、チャレンジレスポンス認証を通過することができ、送信部１２５によって送信された攻撃パケットがチャレンジレスポンス認証段階で廃棄されることを防止することができる。そして、試験装置１０ｂは、サーバ２３を対象にパケット負荷試験を行うことができる。
【００５０】
試験装置１０ｂがセキュリティ装置２２による各認証を通過すると、モニタリングおよび分析が行われる（ステップＳ３００）。このとき、送信部１２５は、サーバ２３に攻撃パケットを送信し続ける。
【００５１】
一方で、モニタリング部１２２は、サーバ２３にモニタリング応答要求を行う（ステップＳ３０１）。例えば、モニタリング部１２２は、試験装置１０ａによる設定に従い、サーバ２３のｐｉｎｇやｔｒａｃｅｂａｃｋへの応答確認、またはＨＴＴＰ応答確認を行う。
【００５２】
そして、サーバ２３は、攻撃パケットを処理しつつ（ステップＳ３０２）、モニタリング応答要求に対して応答する（ステップＳ３０３）。そして、モニタリング部１２２は、モニタリング用インタフェース１１２からモニタリング結果を試験装置１０ａに送信する（ステップＳ３０４）。
【００５３】
さらに、試験装置１０ａは、モニタリング結果を分析し（ステップＳ３０５）、必要に応じて試験装置１０ａにシナリオ変更を指示する（ステップＳ３０６）。具体的には、試験装置１０ａは、試験装置１０ｂから受信したモニタリング結果と、攻撃パケットの種類や量である試験トラフィックとの相関を取りながらサーバ２３の応答時間や応答内容を分析する。サーバ２３の応答時間変化や応答メッセージ、応答がなくなったときの試験トラフィック内容、応答が復活したときの試験トラフィック内容等を時系列で記録・分析し、処理負荷が高い機能を把握する。
【００５４】
シナリオ変更として、例えば、管理部１２３は、セキュリティ装置２２またはサーバ２３の処理負荷の状況に応じて、送信部１２５によって送信される攻撃パケットの量を変化させる。具体的には、管理部１２３は、セキュリティ装置２２またはサーバ２３の処理負荷が所定以上である場合、セキュリティ装置２２またはサーバ２３に送信部１２５によって送信される攻撃パケットの量を増加させる。
【００５５】
そして、処理負荷が高い機能を把握するとともに、試験トラフィックのシナリオを変化させ、そのときのサーバ２３の応答時間変化や応答メッセージ、応答がなくなったときの試験トラフィック内容、応答が復活したときの試験トラフィック内容から処理負荷が高い機能の負荷が最大になる試験トラフィック条件を抽出する。
【００５６】
なお、試験装置１０ａおよび１０ｂは、サーバ２３以外の機器を含めた複数の試験対象機器について試験および分析を行い、試験対象機器の中から処理負荷が高い機器を把握するようにしてもよい。
【００５７】
例えば、試験装置１０ｂがＨＴＴＰ  ＧＥＴ攻撃パケット量を増加させていくと、サーバ２３の処理負荷が増加するとともにＨＴＴＰ応答時間が増加していく。そして、試験装置１０ａは、サーバ２３がサーバに接続できたもののウェブページを表示できないＨＴＴＰ  ４０４エラー応答を行うようになった時点の攻撃パケット量、およびサーバ２３が応答することができなくなった時点の攻撃パケット量を記録する。これにより、サーバ２３のＨＴＴＰ  ＧＥＴ攻撃への耐性を把握することができる。
【００５８】
また、ＨＴＴＰ  ＧＥＴ攻撃パケットの量が増加すると、セキュリティ装置２２が攻撃を検出して、当該攻撃パケットを廃棄し、サーバ２３の処理負荷の増加が止まることがある。このとき、試験装置１０ａは、モニタリング結果から、サーバ２３への攻撃パケットを増加させても、サーバ２３の処理負荷が増加しないことを把握する。
【００５９】
さらに、試験装置１０ｂだけでなく、試験装置１０ｃおよび１０ｄを含めた複数の試験装置から、サーバ２３に対し、複数クエリのサービス不能攻撃パケット等をシナリオに沿って送信するようにしてもよい。これにより、送信元ＩＰアドレス単位の攻撃対策やキャッシュ等の対策有効度を調査し、さらにモニタリングを行うことで、サービス不能になる限界、ボトルネック、およびそのときの試験トラフィックパターン等を把握することができる。
【００６０】
例えば、セキュリティ装置２２が、送信元ＩＰアドレス単位の攻撃元フィルタリングとして、試験装置１０ｂのＩＰアドレスフィルタリングを行った場合、攻撃元と判定された試験装置１０ｂからのモニタリング結果には、サーバ２３からの応答が含まれなくなる。一方、試験装置１０ｃおよび１０ｄは、セキュリティ装置２２からフィルタリングされていないため、試験装置１０ｃおよび１０ｄからのモニタリング結果には、サーバ２３からの応答が含まれる。
【００６１】
例えば、試験装置１０ｂ〜１０ｄからモニタリング結果を受信した試験装置１０ａは、試験装置１０ｂからの攻撃パケット送信およびモニタリングが不可能になったことと、試験装置１０ｃおよび１０ｄからの攻撃パケット送信およびモニタリングは有効であること、ＨＴＴＰ  ＧＥＴ攻撃の攻撃パケットを増加させてもサーバ２３の処理負荷の増加は止まっていることを把握する。
【００６２】
このとき、試験装置１０ａは、試験装置１０ｂによるモニタリングのみサーバ２３からの応答がないことから、試験装置１０ｂがフィルタリングされていると推定する。また、ＨＴＴＰ  ＧＥＴ攻撃パケットを増加させてもサーバ２３の処理負荷の増加は止まっていることより、セキュリティ装置２２等で当該攻撃パケットは廃棄されていると推定する。
【００６３】
ここで、試験装置１０ａは、ＨＴＴＰ  ＧＥＴ攻撃から他の攻撃種類にシナリオを変化させ、また、フィルタリングされていない試験装置１０ｃおよび１０ｄから攻撃パケットを送信させ、サーバ２３のセキュリティ耐性調査やボトルネック調査を行う。
【００６４】
これにより、複数の試験装置からのモニタリングによるサーバ２３の応答が異なる原因が、ネットワーク装置２１、セキュリティ装置２２、もしくはサーバ２３自身による試験装置へのフィルタ設定によるものであるのか、またはサーバ２３の負荷によるものであるのかを判定する。
【００６５】
なお、試験装置１０ｂは、認証を途中で中止し、セキュリティ装置２２の任意の認証段階の処理に対する負荷試験を行うようにしてもよい。例えば、試験装置１０ｂは、セキュリティ装置２２によるＴＣＰ認証応答要求に対して適合する応答を行い、その後、セキュリティ装置２２によるＨＴＴＰ認証応答要求に対して適合する応答を行わないようにしてもよい。これにより、試験装置１０ｂは、セキュリティ装置２２のＨＴＴＰ認証段階の処理に対する負荷試験を行うことができる。同様に、試験装置１０ｂは、セキュリティ装置２２の各認証段階について負荷試験を行うことで、ボトルネックとなる認証段階を特定することができる。
【００６６】
［第１の実施形態の処理］
図５および６を用いて、試験装置１０ａの処理の流れについて説明する。図５および６は、第１の実施形態に係る試験装置の処理の流れを示すフローチャートである。まず、図５に示すように、送信部１２５は、試験対象機器に攻撃パケットを送信する（ステップＳ１１）。そして、応答部１２６は、攻撃パケットの送信に対する認証として要求された応答要求に適合する応答を行う（ステップＳ１２）。
【００６７】
応答部１２６による応答によって、目的の段階まで認証がされるまで、応答部１２６は応答要求に対して応答を行う（ステップＳ１３、Ｎｏ）。そして、応答部１２６による応答によって、目的の段階まで認証がされた場合（ステップＳ１３、Ｙｅｓ）、モニタリング部１２２および管理部１２３は、モニタリングおよび分析を行う（ステップＳ１４）。
【００６８】
図６を用いて、モニタリング部１２２および管理部１２３によるモニタリングおよび分析の処理の流れについて説明する。図６に示すように、モニタリング部１２２は、攻撃パケットを受信している試験対象機器の処理負荷をモニタリングする（ステップＳ１４１）。このとき、モニタリング部１２２は、試験対象機器の処理負荷が所定以上となるまでモニタリングを続ける（ステップＳ１４２、Ｎｏ）。そして、試験対象機器の処理負荷が所定以上となった場合（ステップＳ１４２、Ｙｅｓ）、管理部１２３は、試験のシナリオを変更する（ステップＳ１４３）。
【００６９】
モニタリング部１２２は、さらに試験対象機器の処理負荷をモニタリングする（ステップＳ１４４）。管理部１２３は、モニタリング結果を分析し（ステップＳ１４５）、所定の条件が満たされた場合、分析を完了する（ステップＳ１４６、Ｙｅｓ）。例えば、試験対象機器からの応答がなくなった場合、管理部１２３は分析を完了する。所定の条件が満たされ分析が完了するまで（ステップＳ１４６、Ｎｏ）、モニタリング部１２２はモニタリングを続ける（ステップＳ１４４）。
【００７０】
［第１の実施形態の効果］
【００７１】
送信部１２５は、防御対象の装置宛てに送信されたパケットの認証を行うセキュリティ装置２２によって防御されたサーバ２３に対し、処理負荷を増加させる攻撃パケットを送信する。また、応答部１２６は、セキュリティ装置２２によって行われる認証に対応した応答要求を受信し、受信した応答要求を識別し、識別した応答要求に適合する応答、すなわち攻撃パケットがセキュリティ装置２２によって正当なものであると認証されるような応答を行う。また、モニタリング部１２２は、セキュリティ装置２２によって正当なものであると認証された攻撃パケットが送信されたセキュリティ装置２２またはサーバ２３の処理負荷の状況を監視する。
【００７２】
このように、第１の実施形態に係る試験装置によれば、認証に対応した応答要求に適した応答を行うことで認証を通過したうえで、試験対象の機器に負荷を印加し、セキュリティ耐性の試験を行うことが可能となる。また、複数の段階の認証や複数の機器を試験対象とすることで、ボトルネックを特定することが可能となる。
【００７３】
また、応答部１２６は、セキュリティ装置２２によって段階的に行われる認証のうち任意の段階までの認証に対応した応答要求を受信するたびに、受信した応答要求を識別し、識別した応答要求に適合する応答、すなわち攻撃パケットが前記セキュリティシステムによって正当なものであると認証されるような応答を行う。これにより、セキュリティ装置２２の任意の段階の試験を行うことが可能となる。
【００７４】
また、応答部１２６は、ＴＣＰ認証、ＨＴＴＰ認証およびチャレンジレスポンス認証のいずれかに対応した応答要求を受信した場合、受信した応答要求の種別として、ＴＣＰ認証、ＨＴＴＰ認証およびチャレンジレスポンス認証のいずれに対応した応答要求であるかを識別する。これにより、種別が異なる複数の認証が行われる場合であっても、試験を行うことが可能となる。
【００７５】
送信部１２５は、Ｗｅｂサーバであるサーバ２３に、攻撃パケットとともに、Ｗｅｂブラウザの操作により発生するパケットを送信する。これにより、実際に攻撃が行われる場合に近い状況での試験を行うことが可能となる。
【００７６】
管理部１２３は、セキュリティ装置２２またはサーバ２３の処理負荷の状況に応じて、送信部１２５によって送信される攻撃パケットの量を変化させる。試験対象機器の処理負荷に応じた動作を把握することが可能となる。
【００７７】
管理部１２３は、セキュリティ装置２２またはサーバ２３の処理負荷が所定以上である場合、セキュリティ装置２２またはサーバ２３に送信部１２５によって送信される攻撃パケットの量を増加させる。これにより、試験対象機器の処理負荷の限界を把握することが可能となる。
【００７８】
［その他の実施形態］
サーバ２３がＷｅｂサーバである場合、送信部１２５は、サーバ２３に、攻撃パケットとともに、Ｗｅｂブラウザの操作により発生するパケットを送信してもよい。具体的に、送信部１２５は、一般ユーザが通常用いるブラウザを用いてサーバ２３に対して正常な通信を実施するとともに、通常のブラウザを用いたＴＣＰおよびＨＴＴＰ／ＨＴＴＰＳに対するサービス不能攻撃パケットを送信してもよい。これにより、サーバ２３のサービス不能攻撃対策機能やＨＴＴＰ／ＨＴＴＰＳトラフィック処理性能、サービス不能攻撃耐性とボトルネックを調査することができる。
【００７９】
また、サーバ２３がＤＮＳサーバ等のＷｅｂサーバ以外のサーバである場合や、ネットワーク装置２１やセキュリティ装置２２に対する調査を行う場合、試験装置１０ａは、試験対象機器がサービスしているプロトコル、アプリケーションに従ったサービス不能攻撃パケットと正常パケットを送信する。このとき、セキュリティ装置２２がＴＣＰ再送要求等のＤＮＳ認証等の要求を送信する場合があるが、試験装置１０ａは、要求に従ったパケットを送信する。これにより、追加の認証が行われる場合であっても、試験対象機器のセキュリティ耐性調査やボトルネック調査を進めることができる。
【００８０】
［システム構成等］
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００８１】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００８２】
［プログラム］
一実施形態として、試験装置は、パッケージソフトウェアやオンラインソフトウェアとして上記の試験を実行する試験プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の試験プログラムを情報処理装置に実行させることにより、情報処理装置を試験装置として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）等の移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistant）等のスレート端末等がその範疇に含まれる。
【００８３】
また、試験装置は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の試験に関するサービスを提供するサーバ装置として実装することもできる。例えば、試験装置は、試験対象システムの情報を入力とし、試験結果を出力とする試験サービスを提供するサーバ装置として実装される。この場合、試験装置は、Ｗｅｂサーバとして実装することとしてもよいし、アウトソーシングによって上記の試験に関するサービスを提供するクラウドとして実装することとしてもかまわない。
【００８４】
図７は、プログラムが実行されることにより試験装置が実現されるコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【００８５】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【００８６】
ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、試験装置の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、試験装置における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤにより代替されてもよい。
【００８７】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して実行する。
【００８８】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３およびプログラムデータ１０９４は、ネットワーク（ＬＡＮ、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３およびプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【００８９】
１  ネットワーク
１０ａ、１０ｂ、１０ｃ、１０ｄ  試験装置
１１  インタフェース部
１２  制御部
１３  記憶部
２０  試験対象システム
２１  ネットワーク装置
２２  セキュリティ装置
２３、２４  サーバ
１１１  試験パケット用インタフェース
１１２  モニタリング用インタフェース
１１３  管理用インタフェース
１２１  試験パケット送受信部
１２２  モニタリング部
１２３  管理部
１２５  送信部
１２６  応答部
【図１】
0006497782.tif 000002
【図２】
0006497782.tif 000003
【図３】
0006497782.tif 000004
【図４】
0006497782.tif 000005
【図５】
0006497782.tif 000006
【図６】
0006497782.tif 000007
【図７】
0006497782.tif 000008