(57)【要約】【課題】多様な検知回避行動のパターンに柔軟に対応する。【解決手段】複数種類の判別器２３は、パケットのヘッダ情報に基づいて、該パケットが攻撃によるスキャンのためのものであるか、もしくは所定の操作によるものであるかを判断する。分類器２２は、判別器２３からヘッダ情報に基づいて適切なものを選択して、パケットのヘッダ情報を送信する。判別器２３のそれぞれは、特定の監視期間を設定し、ヘッダ情報が特定の条件に合致するパケットから求めた特徴量が、監視期間中に、所定の判別条件を満たした場合に、該パケットが攻撃によるスキャンのためのものであるか、もしくは所定の操作によるものであるかを判断する。【選択図】図２
2017076841.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを流れるパケットのＩＰおよび上位プロトコルのヘッダ情報に基づいて、攻撃によるスキャンを検知する監視装置であって、
パケットのヘッダ情報に基づいて、該パケットが攻撃によるスキャンのためのものであるか、もしくは所定の操作によるものであるかを判断する複数種類の判別器と、
前記複数種類の判別器から前記ヘッダ情報に基づいて判別器を選択して、該判別器にパケットのヘッダ情報を送信する分類器と、
を有し、
前記複数種類の判別器のそれぞれは、特定の監視期間を設定し、ヘッダ情報が特定の条件に合致するパケットから求めた特徴量が、前記監視期間中に、所定の判別条件を満たした場合に、該パケットが攻撃によるスキャンのためのものであるか、もしくは所定の操作によるものであるかを判断することを特徴とする監視装置。
【請求項２】
前記複数種類の判別器のそれぞれは、ヘッダ情報が特定の条件に合致するパケットを送信元ＩＰアドレスごとにカウントした数を前記パケットから求めた特徴量とし、所定の閾値を超えることを前記所定の判別条件とすることを特徴とする請求項１に記載の監視装置。
【請求項３】
前記ネットワーク内の装置構成情報を記憶する構成管理データベースをさらに有し、
前記分類器は、前記構成管理データベースから、装置のＩＰアドレスおよびポート番号を取得して新たな判別器を作成することを特徴とする請求項１または２に記載の監視装置。
【請求項４】
安全な通信におけるパケットのヘッダ情報を記憶するホワイトリストをさらに有し、
前記判別器は、前記所定の操作によるものであると判断したパケットのヘッダ情報を前記分類器へフィードバックし、
前記分類器は、該ヘッダ情報を前記ホワイトリストに追加することを特徴とする請求項１から３のいずれか１項に記載の監視装置。
【請求項５】
前記判別器は、攻撃または安全とは断定できないと判断したパケットのヘッダ情報を前記分類器へ通知し、
前記分類器は、該パケットのヘッダ情報を基に新たな判別器を作成し、前記新たな判別器に該パケットのヘッダ情報を送信し、
前記新たな判別器は、該パケットが攻撃によるスキャンのためのものであるか否かを判断することを特徴とする請求項１から４のいずれか１項に記載の監視装置。
【請求項６】
前記複数種類の判別器は、
第１の監視期間を設定し、ヘッダ情報が特定の条件に合致するパケットから求めた特徴量が、前記第１の監視期間中に、所定の判別条件を満たした場合に、該パケットが攻撃によるスキャンのためのものでないと判断する第１の判別器と、
前記第１の監視期間より長い第２の監視期間を設定し、ヘッダ情報が特定の条件に合致するパケットから求めた特徴量が、前記第２の監視期間中に、所定の判別条件を満たした場合に、該パケットが攻撃によるスキャンのためのものであると判断する第２の判別器と、
を含んだことを特徴とする請求項１から５のいずれか１項に記載の監視装置。
【請求項７】
前記構成管理データベースは、プロキシサーバのＩＰアドレス、および前記プロキシサーバのポート番号を記憶し、
前記複数種類の判別器は、
特定の監視期間を設定し、前記プロキシサーバのポート番号との類似度があらかじめ設定した値以上であるポート番号が設定されているという条件に合致するパケットから求めた特徴量が、前記特定の監視期間中に、所定の判別条件を満たした場合に、該パケットが攻撃によるスキャンのためのものでないと判断する第３の判別器と、
特定の監視期間を設定し、前記プロキシサーバのＩＰアドレスとの類似度があらかじめ設定した値以上であるＩＰアドレスが設定されているという条件に合致するパケットから求めた特徴量が、前記特定の監視期間中に、所定の判別条件を満たした場合に、該パケットが攻撃によるスキャンのためのものでないと判断する第４の判別器と、
を含み、
前記分類器は、ヘッダ情報の宛先ＩＰアドレスが前記プロキシサーバのＩＰアドレスであるパケットのヘッダ情報を前記第３の判別器に送信し、ヘッダ情報の宛先ポート番号が前記プロキシサーバのポート番号であるパケットのヘッダ情報を前記第４の判別器に送信することを特徴とする請求項３に記載の監視装置。
【請求項８】
ネットワークを流れるパケットのＩＰおよび上位プロトコルのヘッダ情報に基づいて、攻撃によるスキャンを検知する監視方法であって、
複数種類の判別器と、
分類器と、
を有する監視装置で実行される監視方法であって、
前記分類器が前記複数種類の判別器から前記ヘッダ情報に基づいて判別器を選択して、該判別器にパケットのヘッダ情報を送信する分類工程と、
前記複数種類の判別器のそれぞれが、特定の監視期間を設定し、ヘッダ情報が特定の条件に合致するパケットから求めた特徴量が、前記監視期間中に、所定の判別条件を満たした場合に、該パケットが攻撃によるスキャンであるか否か、もしくは所定の操作によるものであるか否かを判断する判別工程と、
を含んだことを特徴とする監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークの監視装置および監視方法に関する。
【背景技術】
【０００２】
近年、官公庁や企業等の特定の相手を標的とし、長期に渡って組織内部に潜入・情報を窃取する高度標的型攻撃が大きな問題となっている。高度標的型攻撃では、標的組織のネットワーク上の端末にマルウェアを感染させた後に、感染した端末（感染端末）がネットワーク上の他の端末の脆弱性を突いて、さらに感染端末を増やす行動をとることがある。
【０００３】
このとき、感染端末は、他の端末に試験パケットを送り、対象からの応答を得るスキャンを行う。スキャンによって、感染端末は、ネットワーク上に存在する端末のＩＰアドレス、利用可能なＴＣＰ／ＵＤＰポート、および端末のＯＳ等の情報を収集する。
【０００４】
高度標的型攻撃において、攻撃者は、ネットワーク管理者にスキャンが検知されるのを防ぐため、スキャン頻度を極端に遅くする低速スキャン等の検知回避行動を感染端末にとらせることがある。
【０００５】
このような検知回避行動への対策として、例えば低速スキャンの宛先ポートの一様性を仮定した統計的仮説検定を用いた手法や、端末ごとのＴＣＰセッション確立失敗数をカウントしてスキャンを検知する手法が知られている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】ＩＰＡ、“「高度標的型攻撃」対策に向けたシステム設計ガイド”、p.7、2014、［online］、［2015年9月25日検索］、インターネット＜https://www.ipa.go.jp/files/000046236.pdf＞
【非特許文献２】ＴＲＥＮＤ  ＭＩＣＲＯ、“2013年  国内における持続的標的型攻撃の分析”、2014、［online］、［2015年9月25日検索］、インターネット＜http://www.trendmicro.co.jp/jp/about-us/press-releases/articles/20140320013250.html＞
【非特許文献３】武仲  正彦、鳥居  悟、古川  和快、清水  聡、“ランダムで低速なポートスキャンの検知についての検討２”、Symposium  on  Cryp-tography  and  Information  Security  2013(SCIS2013)、2013.
【非特許文献４】嶌田  一郎、津田  侑、衛藤  将史、井上  大介、“ライブネットにおける低速スキャン検知手法”、Computer  Security  Symposium  2014  （CSS2014)、2014.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の技術には多様な検知回避行動のパターンに対応できないという問題があった。また、検知のために必要なリソースが増大する場合があるという問題があった。
【０００８】
例えば、攻撃者が、感染端末から取得したセッション確立情報やトラヒック情報を基に、通信可能なネットワーク端末やＯＳの情報を特定し、より効果的な攻撃が期待できるポートへのスキャンを優先的に行うことが考えられる。
【０００９】
この場合、宛先ポートが一様であるスキャンと比較して、実行されるスキャンの回数は、少なくなることが考えられる。そのため、従来の技術によってこのようなスキャンを検知するためには、検出閾値を下げることが考えらえるが、その場合、ネットワーク上の正規ユーザの設定ミスや誤操作等も誤検知する恐れがある。よって、従来の技術ではこのようなパターンに対しては対応することができない。
【００１０】
また、例えば低速スキャンの検知を行う場合、スキャンの頻度に応じた長い監視期間が必要である。これに対して、設定ミスや誤操作等の検知を行う場合は、長い監視期間は不要である。このため、低速スキャンの検知と、設定ミスや誤操作等の検知とを同じ監視期間で行う場合、監視に必要なリソースが増大するという問題が発生することが考えられる。
【課題を解決するための手段】
【００１１】
本発明の監視装置は、ネットワークを流れるパケットのＩＰおよび上位プロトコルのヘッダ情報に基づいて、攻撃によるスキャンを検知する監視装置であって、パケットのヘッダ情報に基づいて、該パケットが攻撃によるスキャンのためのものであるか、もしくは所定の操作によるものであるかを判断する複数種類の判別器と、前記複数種類の判別器から前記ヘッダ情報に基づいて判別器を選択して、該判別器にパケットのヘッダ情報を送信する分類器と、を有し、前記複数種類の判別器のそれぞれは、特定の監視期間を設定し、ヘッダ情報が特定の条件に合致するパケットから求めた特徴量が、前記監視期間中に、所定の判別条件を満たした場合に、該パケットが攻撃によるスキャンのためのものであるか、もしくは所定の操作によるものであるかを判断することを特徴とする。
【００１２】
本発明の監視方法は、ネットワークを流れるパケットのＩＰおよび上位プロトコルのヘッダ情報に基づいて、攻撃によるスキャンを検知する監視方法であって、複数種類の判別器と、分類器と、を有する監視装置で実行される監視方法であって、前記分類器が前記複数種類の判別器から前記ヘッダ情報に基づいて判別器を選択して、該判別器にパケットのヘッダ情報を送信する分類工程と、前記複数種類の判別器のそれぞれが、特定の監視期間を設定し、ヘッダ情報が特定の条件に合致するパケットから求めた特徴量が、前記監視期間中に、所定の判別条件を満たした場合に、該パケットが攻撃によるスキャンであるか否か、もしくは所定の操作によるものであるか否かを判断する判別工程と、を含んだことを特徴とする。
【発明の効果】
【００１３】
本発明によれば、多様な検知回避行動のパターンに柔軟に対応できる。また、検知のために必要となるリソースの量も低減できる。
【図面の簡単な説明】
【００１４】
【図１】図１は、第１の実施形態に係る監視装置を含むネットワークの構成の一例を示す図である。
【図２】図２は、第１の実施形態に係る監視装置の構成の一例を示す図である。
【図３】図３は、ホワイトリストの一例を示す図である。
【図４】図４は、第１の実施形態に係る監視装置の分類器の構成の一例を示す図である。
【図５】図５は、第１の実施形態に係る監視装置の判別器の構成の一例を示す図である。
【図６】図６は、第１の実施形態に係る監視装置の判別器が保管する監視情報の一例を示す図である。
【図７】図７は、第１の実施形態に係る監視装置の動作の一例を示す図である。
【図８】図８は、第１の実施形態に係る監視装置の動作の一例を示す図である。
【図９】図９は、第１の実施形態に係る監視装置の動作の一例を示す図である。
【図１０】図１０は、第１の実施形態に係る監視装置の判別処理の一例を示す図である。
【図１１】図１１は、第１の実施形態に係る監視装置の応答処理の一例を示す図である。
【図１２】図１２は、プログラムが実行されることにより監視装置が実現されるコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１５】
以下に、本願に係る監視装置および監視方法の実施形態を図面に基づいて詳細に説明する。なお、この実施形態により本願に係る監視装置および監視方法が限定されるものではない。
【００１６】
［第１の実施形態］
以下の実施形態では、第１の実施形態に係る監視装置の構成および各処理の流れを説明し、最後に第１の実施形態による効果を説明する。
【００１７】
［第１の実施形態の構成］
まず、図１を用いて監視装置を含むネットワークの構成について説明する。図１は、第１の実施形態に係る監視装置を含むネットワークの構成の一例を示す図である。図１に示すように、監視装置１、端末２、感染端末２ａがネットワークに接続されている。
【００１８】
感染端末２ａは、マルウェアに感染した端末である。感染端末２ａは、感染の拡大を目的としてネットワークを経由して端末２に対してパケットを送出し応答を得ることでスキャンを行い、ＩＰアドレス、利用可能なＴＣＰ／ＵＤＰポートおよびＯＳの情報等を収集する。このとき、感染端末２ａは、スキャンの頻度を非常に低くする検知回避行動をとる場合がある。
【００１９】
端末２および感染端末２ａは、ユーザの操作によって、もしくは設定に従って自動的にネットワーク上の他の端末に対してパケットを送出し通信を行う。このとき、端末２および感染端末２ａは、操作ミスや設定ミス等によって、他の端末の空いていないポートを宛先としてパケットを送出する等、本来正常と考えられていない通信を行う場合がある。
【００２０】
監視装置１は、端末２および感染端末２ａを含むネットワーク上のパケットのＩＰおよび上位プロトコルのヘッダ情報を取得する。そして、監視装置１は、ポートスキャンを検知するために取得したヘッダ情報を分析し、分析結果に応じた応答処理を行う。以降、監視装置１の構成について詳細に説明する。
【００２１】
［監視装置の構成］
図２を用いて監視装置１の構成について説明する。図２は、第１の実施形態に係る監視装置の構成の一例を示す図である。図２に示すように、監視装置１は、入出力部１０、制御部２０および記憶部３０を有する。また、制御部２０は、フィルタリング部２１、分類器２２、判別器２３を有する。なお、判別器２３は、複数であってもよい。また、記憶部３０は、ホワイトリスト３１および構成管理ＤＢ３２を有する。
【００２２】
入出力部１０には、前述のネットワーク上のパケットのＩＰおよび上位プロトコルのヘッダ情報が入力される。そして、入出力部１０は、制御部２０等による分析の結果を監視結果情報として出力する。監視結果情報には、例えば各判別ロジックに検知された端末のＩＰアドレス、疑わしいスキャンの種類等が含まれる。監視結果情報は、ディスプレイ等のインタフェースを介してユーザに認識可能な形式で出力されてもよいし、マルウェア駆除のための装置等から参照可能な形式で外部の記憶装置に蓄積されるようにしてもよい。
【００２３】
制御部２０は、入出力部１０に入力されたヘッダ情報を各部の処理により分析する。フィルタリング部２１は、記憶部３０のホワイトリスト３１を参照し、ヘッダ情報を基に正常な通信を抽出する。そして、フィルタリング部２１は、抽出した正常な通信によるパケットのヘッダ情報を削除したうえで分類器２２にヘッダ情報を送信する。また、フィルタリング部２１は、リクエストに応じてホワイトリストの編集を行う。分類器２２および判別器２３については後述する。
【００２４】
記憶部３０は、制御部２０における各処理に必要な情報を記憶する。ホワイトリスト３１は、安全な通信におけるパケットのヘッダ情報を記憶する。ホワイトリスト３１には、例えば図３に示すように、正常な通信に対応した送信元ＩＰアドレス、宛先ＩＰアドレス、宛先ポート番号およびＬ４プロトコルからなる。図３は、ホワイトリストの一例を示す図である。
【００２５】
なお、フィルタリング部２１は、ホワイトリスト３１に記憶されている送信元ＩＰアドレス、宛先ＩＰアドレス、宛先ポート番号およびＬ４プロトコルに合致するヘッダ情報を持つパケットを正常な通信によるものとして抽出する。また、ホワイトリスト３１は、エントリごとに有効期限を記憶するようにしてもよい。
【００２６】
例えば、図３に示すように、フィルタリング部２１は、送信元ＩＰアドレスが「１０．１０．２０．１０」、宛先ＩＰアドレスが「１０．１０．３０．１０」、宛先ポート番号が「２０２０」、Ｌ４プロトコルが「ＴＣＰ」であるパケットを、「２０１５／９／３０」までの期間において、正常な通信によるものとして抽出する。
【００２７】
構成管理ＤＢ３２は、ネットワーク内の装置構成情報を記憶する。構成管理ＤＢ３２は、構成情報として、例えばネットワーク上の機器のＩＰアドレスおよびＯＳ情報、機器の接続情報、サーバ等の提供サービスやオープンポート情報等を記憶する。なお、分類器２２は、構成管理ＤＢ３２から、装置のＩＰアドレスおよびポート番号を取得して新たな判別器を作成してもよい。
【００２８】
［分類器の構成］
分類器２２は、判別器２３から適切なものを選択して、パケットのヘッダ情報を送信する。分類器２２は、ヘッダ情報を判別器２３に判別させ、判別器２３から判別結果としてフィードバック情報を取得し、フィードバック情報を基に応答処理を行う。図４を用いて分類器２２の構成について説明する。図４は、第１の実施形態に係る監視装置の分類器の構成の一例を示す図である。図４に示すように、分類器２２は、送受信部２２１、管理部２２２、割当部２２３、応答部２２４、判別器作成部２２５、判別器更新部２２６およびリクエスト作成部２２７を有する。
【００２９】
送受信部２２１は、分類器２２における各情報の送受信を行う。例えば、送受信部２２１は、フィルタリング部２１からパケットのヘッダ情報を受信する。また、送受信部２２１は、割当部２２３が判別器２３に割り当てたヘッダ情報を判別器２３それぞれに送信する。また、送受信部２２１は、判別器２３からフィードバック情報を受信する。また、送受信部２２１は、分類器２２における応答処理の結果を監視装置１の入出力部１０へ送信する。また、送受信部２２１は、リクエスト作成部２２７が作成したホワイトリストの編集のためのリクエストをフィルタリング部２１へ送信する。
【００３０】
管理部２２２は、作成済みの判別器および作成可能な判別器の情報を管理する。管理部２２２が管理する情報は、例えば判別器の判別ロジックおよび判別ロジックに必要なパラメータや各判別器の状態である。さらに、管理部２２２が管理する判別器のパラメータには、個々の判別ロジックで必要になるパラメータや、監視期間を定めるパラメータが含まれる。また、管理部２２２は、各判別器の状態として、例えば作成時刻、各判別器が監視するヘッダ情報の種類等を管理する。
【００３１】
割当部２２３は、管理部２２２が管理している情報および所定の割り当てロジックに従って、送受信部２２１が受信したヘッダ情報を判別器２３それぞれに割り当てる。そして、前述の通り、送受信部２２１は、割当部２２３が判別器２３に割り当てたヘッダ情報を判別器２３それぞれに送信する。
【００３２】
応答部２２４は、送受信部２２１が判別器２３から受信したフィードバック情報に基づいて各種応答処理を行う。応答部２２４は、単独もしくは複数の判別器２３のフィードバック情報を基に攻撃情報を判定する判定ロジックを持つ。そして、応答部２２４は、判定した攻撃情報に基づいて判別器作成部２２５、判別器更新部２２６またはリクエスト作成部２２７に応答処理を実行させる。また、応答部２２４は、各部に応答処理を行わせることなく、送受信部２２１に、判定結果をネットワーク管理者や他のセキュリティ機器に送信させるようにしてもよい。
【００３３】
判別器作成部２２５は、初期設定として、またはフィードバック情報に基づく応答処理として判別器２３を作成する。このとき、判別器作成部２２５は、管理部２２２から判別ロジックおよび判別ロジックに必要なパラメータを取得し、さらに必要に応じて構成管理ＤＢ３２から構成情報および設定情報を取得する。また、判別器作成部２２５は、作成した判別器２３の情報を管理部２２２に管理させる。
【００３４】
判別器更新部２２６は、作成済みの判別器２３のパラメータの設定を行う。なお、判別器更新部２２６は、判別器作成部２２５と同様に、必要に応じて管理部２２２および構成管理ＤＢ３２を参照することもできる。また、判別器更新部２２６は、パラメータの設定を行った判別器２３の情報を管理部２２２に更新させる。
【００３５】
リクエスト作成部２２７は、フィードバック情報を基に、フィルタリング部２１にホワイトリスト３１を編集させるためのリクエストを作成する。このとき、リクエスト作成部２２７は、リクエストにホワイトリスト３１のエントリおよび追加もしくは削除を示すフラグを含める。リクエストに含まれるエントリには、送信元ＩＰアドレス、宛先ＩＰアドレス、宛先ポート番号およびＬ４プロトコル等が含まれる。なお、前述の通り、リクエスト作成部２２７が作成したリクエストは、送受信部２２１によってフィルタリング部２１へ送信される。
【００３６】
このように、分類器２２は、判別器２３がフィードバックした所定の操作、例えば設定ミスによるものであると判断したパケットを安全であるとみなし、リクエストを作成し送信することで、ヘッダ情報をホワイトリスト３１に追加する。
【００３７】
［判別器の構成］
複数種類の判別器２３は、パケットのヘッダ情報に基づいて、該パケットが攻撃によるスキャンのためのものであるか、もしくは所定の操作によるものであるかを判断する。判別器２３のそれぞれは、特定の監視期間を設定し、ヘッダ情報が特定の条件に合致するパケットから求めた特徴量が、監視期間中に、所定の判別条件を満たした場合に、該パケットが攻撃によるスキャンのためのものであるか、もしくは所定の操作によるものであるかを判断する。
【００３８】
判別器２３は、分類器２２が割り当てたヘッダ情報の判別を行い、判別結果をフィードバック情報として分類器２２へ送信する。このとき、判別器２３は、フィードバック情報によってパケットが攻撃によるスキャンのためのものであるか、もしくは所定の操作によるものであるかの判断の結果を表す。
【００３９】
図５を用いて判別器２３の構成について説明する。図５は、第１の実施形態に係る監視装置の判別器の構成の一例を示す図である。図５に示すように、判別器２３は、送受信部２３１、保管部２３３および判別部２３２を有する。
【００４０】
送受信部２３１は、判別器２３における各情報の送受信を行う。例えば、送受信部２３１は、分類器２２からヘッダ情報を受信する。また、送受信部２３１は、判別部２３２が作成したフィードバック情報を分類器２２へ送信する。
【００４１】
判別部２３２は、各機能を用いてヘッダ情報を基にフィードバック情報を作成する。ここで判別部２３２の各機能について説明する。
【００４２】
まず、判別部２３２は、ヘッダ情報から監視に必要な特徴量を算出し、検知条件が満たされるか否かを判別する機能である判別ロジックを有する。このとき、判別部２３２は、判別結果を監視情報として保管部２３３に保管させる。
【００４３】
また、判別部２３２は、保管部２３３が保管している監視情報を管理する管理機能を有する。判別部２３２は、管理機能を用いて、分類器２２が設定するパラメータの１つである監視期間に従って、保管部２３３が保管している監視情報が監視期間を超過しているか否かを逐次判定する。そして、監視期間を超過した監視情報が存在する場合、判別部２３２は、フィードバック情報作成機能によりフィードバック情報の作成を行う。なお、判別部２３２は、フィードバック情報の作成に必要な監視情報を取得後、保管部２３３から当該監視情報を削除するようにしてもよい。
【００４４】
また、判別部２３２は、判別ロジックの判別結果、または監視期間の超過をトリガとして、フィードバック情報を作成する機能を有する。前述の通り、フィードバック情報は、送受信部２３１によって分類器２２へ送信される。フィードバック情報には、例えば判別結果、判別器ＩＤおよび属性値が含まれる。
【００４５】
判別結果は、例えば攻撃によるものではないと判別したことを示す「Ｗｈｉｔｅ」、攻撃によるものであると判別したことを示す「Ｂｌａｃｋ」、またはどちらとも判別ができなかったことを示す「Ｇｒｅｙ」の３値のいずれかである。判別器ＩＤは、判別を行った判別器の識別情報である。属性値は、判別結果の内容を説明する情報であり、判別器ごとに構成および値が異なる。
【００４６】
保管部２３３は、分類器２２から受信したヘッダ情報、ヘッダ情報に含まれる判別に必要な特徴量、ヘッダ情報を受信した時刻のタイムスタンプ、判別部２３２による判別結果等を監視情報として保管する。また、監視期間が経過し、フィードバック情報の分類器２２への送信が完了した場合は、保管部２３３は、保管している監視情報を破棄することとしてもよい。
【００４７】
図６を用いて保管部２３３が保管する監視情報について説明する。図６は、第１の実施形態に係る監視装置の判別器が保管する監視情報の一例を示す図である。例えば図６に示すように、保管部２３３は、ヘッダ情報のうち送信元ＩＰアドレスが「１０．１０．２０．１０」、宛先ＩＰアドレスが「１０．１０．３０．１０」、宛先ポート番号が「１０００」であるパケットが検知条件を満たした回数「１０」を保管する。
【００４８】
また、保管部２３３は、回数を加算する際に、最後に加算された日時を示すタイムスタンプを記憶し、監視情報一式を同一時刻のものとして扱う。なお、保管部２３３は、個々の監視情報ごとにタイムスタンプを対応させて記憶するようにしてもよい。
【００４９】
例えば、判別部２３２は、パケットが検知条件を満たした回数と閾値との比較結果を基にフィードバック情報を作成する。このとき、判別部２３２は、送信元ＩＰアドレスごとの回数を集約することとしてもよい。その場合、図６の例では、送信元ＩＰアドレス「１０．１０．２０．１０」については、集約した回数「２５」を基にフィードバック情報が作成される。なお、保管部２３３は、宛先ＩＰアドレスおよび宛先ポート番号を記憶せずに、送信元ＩＰアドレスごとに回数を記憶するようにしてもよい。
【００５０】
［動作例１］
以降、具体的な例を用いて監視装置１の動作について説明する。なお、任意の構成もしくは設定でよい部分については説明を省略する。まず、図７を用いて低速スキャンによるパケットと設定ミスによるパケットとを検知する場合について説明する。図７は、第１の実施形態に係る監視装置の動作の一例を示す図である。
【００５１】
図７の例において、判別器２３ｂは、第１の監視期間を設定し、特定の条件、例えばＴＣＰ接続の確立に失敗したという条件に合致するパケットを送信元ＩＰアドレスごとにカウントし、カウント数が、第１の監視期間中に、所定の閾値を超えた場合に、該パケットが設定ミス等によるものであって、攻撃によるスキャンのためのものでないと判断する。このとき、判別器２３ａは、第１の監視期間より長い第２の監視期間を設定し、特定の条件、例えばＴＣＰ接続の確立に失敗したという条件に合致するパケットを送信元ＩＰアドレスごとにカウントし、カウント数が、第２の監視期間中に、所定の閾値を超えた場合に、該パケットが攻撃によるスキャンのためのものであると判断する。以降、図７の例について具体的に説明する。
【００５２】
まず、図７の例においては、通常の通信を行う端末に加えて、マルウェアに感染した感染端末Ａ、および宛先ポート番号が誤って設定された設定ミス端末Ｍが存在するものとする。
【００５３】
感染端末Ａは、ネットワークの情報を得るために、幅広い宛先ＩＰアドレスおよび宛先ポート番号に対して、１日に平均３０回程度の頻度でスキャンのためのパケットＡを送信する。また、設定ミス端末Ｍは、組織内プロキシサーバのＩＰアドレスを宛先ＩＰアドレス、プロキシサーバの利用ポート番号（例えば３３３０３）に近いポート番号（例えば３３０３３）を宛先ポート番号として、１分間に平均１０回程度の頻度でパケットＭを送信しアクセスを行う。
【００５４】
まず、図７に示すように、分類器２２は、判別器（Ｓｌｏｗ）２３ａおよび判別器（プロキシポートミス）２３ｂを作成する。このとき、分類器２２は、判別器２３ａの監視期間として「１週間」を設定する。また、分類器２２は、判別器２３ｂの監視期間として「３０分」を設定する。また、分類器２２は、判別器２３ａおよび判別器２３ｂの検知条件として、「ＴＣＰセッション確立失敗」を設定する。また、分類器２２は、判別器２３ａおよび判別器２３ｂのそれぞれに所定の閾値を設定する。
【００５５】
まず、パケットＡおよびパケットＭのヘッダ情報は、ホワイトリスト３１に記憶されていないため、分類器２２へ送信される。
【００５６】
ここで、分類器２２は、割当条件に従ってヘッダ情報を各判別器に割り当てる。例えば、判別器２３ａの割当条件は「全て」であるため、分類器２２は、全てのヘッダ情報を判別器２３ａに割り当てる。また、判別器２３ｂの割当条件は「宛先ＩＰアドレスが組織内プロキシサーバのＩＰアドレス」であるため、分類器２２は、宛先ＩＰアドレスが組織内プロキシサーバのＩＰアドレスであるヘッダ情報を判別器２３ｂに割り当てる。
【００５７】
なお、同一のヘッダ情報が複数の判別器に対して重複して送信されてもかまわない。また、組織内プロキシサーバのＩＰアドレスは構成管理ＤＢ３２に記憶されている。また、図７の例では、スキャンのためのパケットが幅広い宛先ＩＰアドレスおよび宛先ポート番号に対して送信されることを想定しているため、全てのヘッダ情報を判別器２３ａに割り当てることとしている。これに対して、スキャンのためのパケットの宛先等の特徴をある程度特定できる場合は、特定した特徴に応じた割当条件を判別器２３ａに設定してもよい。
【００５８】
これより、分類器２２は、パケットＡおよびパケットＡに対する応答パケットのヘッダ情報を判別器２３ａに送信する。また、分類器２２は、パケットＭおよびパケットＭに対する応答パケットのヘッダ情報を判別器２３ａおよび判別器２３ｂに送信する。そして、分類器２２は、判別器２３ａおよび判別器２３ｂからのフィードバック情報を基に応答処理を行う。
【００５９】
ここで、検知条件「ＴＣＰセッション確立失敗」の判定方法の一例について説明する。例えばヘッダ情報からＳＹＮパケットであることが判明しているパケットについて、送信元と宛先が逆転した応答パケットとしてＲＳＴパケットが存在している場合、判別器は、当該ＳＹＮパケットを検知条件「ＴＣＰセッション確立失敗」を満たすパケットとしてカウントする。
【００６０】
この場合、パケットのカウント数が、判別器２３における、ヘッダ情報が特定の条件に合致するパケットから求めた特徴量として用いられる。そして、判別器２３は、パケットのカウント数が所定の閾値を超えた場合に、判別条件が満たされたと判断する。
【００６１】
また、判別器２３におけるパケットから求めた特徴量は、パケットのカウント数に限られない。例えば、判別器２３は、あるパケットと他のパケットとの共起確率をパケットから求めた特徴量としてもよい。この場合、判別器２３は、例えば共起確率が事前に設定した上限値を超えるか、または下限値を下回った場合に、判別条件が満たされたと判断する。
【００６２】
また、判別器２３ａは、閾値を超えたヘッダ情報について攻撃によるスキャンのためのパケットのものであるとみなし、フィードバック情報における判別結果を「Ｂｌａｃｋ」とする。一方、判別器２３ｂは、閾値を超えたヘッダ情報について攻撃によるスキャンのためのパケットのものでないとみなし、フィードバック情報における判別結果を「Ｗｈｉｔｅ」とする。
【００６３】
そして、例えば判別器２３ａによるパケットＡのヘッダ情報についての判別結果が「Ｂｌａｃｋ」であり、判別器２３ｂからの「Ｗｈｉｔｅ」の判定がない、または「Ｇｒｅｙ」であった場合、分類器２２は応答部２２４のもつ判定ロジックによって、パケットＡが攻撃によるスキャンのためのものであると判定し、ネットワーク管理者に対しアラームを出力する。
【００６４】
また、例えば判別器２３ａによるパケットＭのヘッダ情報についての判別結果が「Ｂｌａｃｋ」であり、判別器２３ｂによるパケットＭのヘッダ情報についての判別結果が「Ｗｈｉｔｅ」であった場合、分類器２２は応答部２２４のもつ判定ロジックによって、パケットＭは設定ミスとして判定し、パケットＭのヘッダ情報をホワイトリスト３１に追加するリクエストを作成し、作成したリクエストをフィルタリング部２１に送信する。
【００６５】
なお、パケットＡの宛先ＩＰアドレスが組織内プロキシサーバのＩＰアドレスであることも当然あり得る。この場合、分類器２２は、パケットＡおよびパケットＡに対する応答パケットのヘッダ情報を判別器２３ａだけでなく、判別器２３ｂにも送信する。このとき、判別器２３ｂは、パケットＡを攻撃によるスキャンのためのパケットのものでないとみなし、判別結果を「Ｗｈｉｔｅ」とする誤検知を発生させる場合がある。しかし、このような場合であっても、応答部２２４の判定ロジックによって、パケットＡは設定ミスとして判定される。
【００６６】
なお、応答部２２４の判定ロジックは、各判別器の判別結果の信頼性等に基づき任意の判定方法を設定できるものとする。例えば、判別器２３ａの判別結果が「Ｂｌａｃｋ」である場合、常に当該パケットを攻撃によるものであると判定するようにしてもよい。
【００６７】
［動作例２］
次に、図８を用いてポート番号設定ミスによるパケットと、ＩＰアドレス設定ミスによるパケットとを検知する場合について説明する。図８は、第１の実施形態に係る監視装置の動作の一例を示す図である。なお、図８の例においては直接的に攻撃によるスキャンが検知されるわけではないが、ホワイトリスト３１が編集されることにより、攻撃によるスキャンの検知精度が向上する。
【００６８】
図８の例において、構成管理ＤＢ３２は、プロキシサーバのＩＰアドレス、およびプロキシサーバのポート番号を記憶する。このとき、判別器２３ｃは、特定の監視期間を設定し、プロキシサーバのポート番号の１０進数表記とのレーベンシュタイン距離があらかじめ設定した値以下であるポート番号が設定されているという条件に合致するパケットを送信元ＩＰアドレスごとにカウントし、カウント数が、特定の監視期間中に、所定の閾値を超えた場合に、該パケットがポート番号の設定ミス等によるものであって、攻撃によるスキャンのためのものでないと判断する。
【００６９】
また、判別器２３ｄは、特定の監視期間を設定し、プロキシサーバのＩＰアドレスの１０進数表記とのレーベンシュタイン距離が所定値以下であるＩＰアドレスが設定されているという条件に合致するパケットを送信元ＩＰアドレスごとにカウントし、カウント数が、特定の監視期間中に、所定の閾値を超えた場合に、該パケットがＩＰアドレスの設定ミス等によるものであって、攻撃によるスキャンのためのものでないと判断する。
【００７０】
なお、２つの文字列間のレーベンシュタイン距離が小さいということは、類似度が大きいということを示している。つまり、レーベンシュタイン距離があらかじめ設定した値以下であることは、類似度があらかじめ設定した値以上であるということである。
【００７１】
そして、分類器２２は、ヘッダ情報の宛先ＩＰアドレスがプロキシサーバのＩＰアドレスであるパケットのヘッダ情報を判別器２３ｃに送信し、ヘッダ情報の宛先ポート番号がプロキシサーバのポート番号であるパケットのヘッダ情報を判別器２３ｄに送信する。以降、図８の例について具体的に説明する。なお、図８の例では、レーベンシュタイン距離の設定値は１である。また、プロキシサーバのＩＰアドレスが「１０．１０．１０．１０」、ポート番号が「２０２０」であるものとする。
【００７２】
そして、図８に示すように、分類器２２は、判別器（ポート番号設定ミス）２３ｃおよび判別器（ＩＰアドレス設定ミス）２３ｄを作成する。このとき、分類器２２は、判別器２３ｃおよび判別器２３ｄのそれぞれに所定の監視期間および閾値を設定する。また、分類器２２は、判別器２３ｃの検知条件として、「宛先ポート番号が打ち間違え候補かつＴＣＰセッション確立失敗」を設定する。また、分類器２２は、判別器２３ｄの検知条件として、「宛先ＩＰアドレスが打ち間違え候補かつＴＣＰセッション確立失敗」を設定する。
【００７３】
ここで、宛先ポート番号の打ち間違え候補について説明する。ポート番号の打ち間違え候補は、例えばプロキシサーバの宛先ポート番号の１０進数表記におけるレーベンシュタイン距離が１以下である番号である。これより、プロキシサーバのポート番号「２０２０」に対する打ち間違え候補の例として「２０２」、「２００２」、「２０２０２」、「０２０」、「０２２０」等が挙げられる。
【００７４】
一方、宛先ＩＰアドレスの打ち間違え候補は、プロキシサーバのＩＰアドレスの１０進数表記におけるレーベンシュタイン距離が１以下である番号である。これより、プロキシサーバのＩＰアドレス「１０．１０．１０．１０」に対する打ち間違え候補の例として「１０．１０．１０．１１」、「１０．１０．１０．０１」、「１０．１０．１０１．１０」、「１０．１．１０．１００」等が挙げられる。
【００７５】
なお、上記の例では打ち間違え候補とする番号のレーベンシュタイン距離は、１以下であるが、他の値であってもよい。また、レーベンシュタイン距離を用いない任意の方法により打ち間違え候補を作成することとしてもよい。
【００７６】
ここで、分類器２２は、割当条件に従ってヘッダ情報を各判別器に割り当てる。例えば、判別器２３ｃの割当条件は「宛先ＩＰアドレスが「１０．１０．１０．１０」」であるため、分類器２２は、宛先ＩＰアドレスが「１０．１０．１０．１０」であるヘッダ情報を判別器２３ｃに割り当てる。また、判別器２３ｄの割当条件は「宛先ポート番号が「２０２０」」であるため、分類器２２は、宛先ポート番号が「２０２０」であるヘッダ情報を判別器２３ｄに割り当てる。そして、判別器２３ｃおよび判別器２３ｄは、閾値を超えたヘッダ情報のフィードバック情報における判別結果を「Ｗｈｉｔｅ」とする。
【００７７】
例えば、判別器２３ｃによる判別結果が「Ｗｈｉｔｅ」であったヘッダ情報について、分類器２２は、ポート番号の設定ミスであるものと判定し、当該ヘッダ情報をホワイトリスト３１に追加するリクエストを作成し、作成したリクエストをフィルタリング部２１に送信する。
【００７８】
一方、判別器２３ｄによる判別結果が「Ｗｈｉｔｅ」であったヘッダ情報について、分類器２２は、ＩＰアドレスの設定ミスであるものと判定し、当該ヘッダ情報をホワイトリスト３１に追加するリクエストを作成し、作成したリクエストをフィルタリング部２１に送信する。
【００７９】
［動作例３］
図９を用いて低速スキャンによるパケットを検知する場合であって、応答処理において判別器を新規作成する場合について説明する。図９は、第１の実施形態に係る監視装置の動作の一例を示す図である。
【００８０】
図９の例において、判別器２３ｅは、攻撃または安全であると判定できないと判断したパケットのヘッダ情報、すなわち判別結果が「Ｇｒｅｙ」であるヘッダ情報を分類器２２へ通知する。このとき、分類器２２は、該パケットのヘッダ情報を基に判別器２３ｆを作成し、判別器２３ｆに該パケットのヘッダ情報を送信する。また、判別器２３ｆは、該パケットが攻撃によるスキャンのためのものであるか否かを判断する。以降、図９の例について具体的に説明する。
【００８１】
まず、図９の例においては、通常の通信を行う端末に加えて、マルウェアに感染した感染端末ＸおよびＹが存在するものとする。
【００８２】
感染端末Ｘは、ネットワークの情報を得るために、幅広い宛先ＩＰアドレスおよび宛先ポート番号に対して、１日に平均６０回（１時間に平均２．５回）程度の頻度でスキャンのためのパケットＸを送信する。また、感染端末Ｙは、ネットワークの情報を得るために、幅広い宛先ＩＰアドレスおよび宛先ポート番号に対して、１日に平均６０００回（１時間に平均２５０回）程度の頻度でスキャンのためのパケットＹを送信する。
【００８３】
まず、図９に示すように、分類器２２は、判別器（失敗カウントＳｈｏｒｔ）２３ｅを作成する。このとき、分類器２２は、判別器２３ｅの監視期間として「１時間」を設定する。また、分類器２２は、判別器２３ｅの検知条件として、「ＴＣＰセッション確立失敗」を設定する。また、分類器２２は、判別器２３ｅの閾値として「２０」を設定する。そして、判別器２３ｅは、回数が閾値を超えたヘッダ情報のフィードバック情報における判別結果を「Ｂｌａｃｋ」、回数が１以上閾値未満のヘッダ情報のフィードバック情報における判別結果を「Ｇｒｅｙ」とする。
【００８４】
まず、パケットＸおよびパケットＹのヘッダ情報は、ホワイトリスト３１に記憶されていないため、分類器２２へ送信される。ここで、分類器２２は、全てのヘッダ情報を判別器２３ｅに送信するように設定されている。
【００８５】
これより、分類器２２は、パケットＸおよびパケットＹに対する応答パケットのヘッダ情報を判別器２３ｅに送信する。そして、分類器２２は、判別器２３ｅからのフィードバック情報を基に応答処理を行う。
【００８６】
ここで、パケットＹは１時間に平均２５０回の頻度で送信されるため、パケットＹの回数が閾値である２０を超え、パケットＹが判別器２３ｅによって「Ｂｌａｃｋ」と判別される可能性が高い。一方、パケットＸは１時間に平均２．５回の頻度で送信されるため、パケットＸの回数が閾値である２０を超える可能性は低く、パケットＸが判別器２３ｅによって「Ｂｌａｃｋ」と判別される可能性は低い。ただし、パケットＸが判別器２３ｅによって「Ｇｒｅｙ」と判別される可能性がある。
【００８７】
判別器２３ｅの割当条件は「全て」であるため、分類器２２は、割当条件に従って全てのヘッダ情報を判別器２３ｅに割り当てる。そして、判別器２３ｅからのフィードバック情報における判別結果が「Ｇｒｅｙ」である場合、分類器２２は、応答部２２４のもつ判定ロジックによって、パケットＹは攻撃によるスキャンの疑いがあると判定し、応答処理として判別器（失敗カウントＬｏｎｇ）２３ｆを作成する。そして、判別器２３ｆの割当条件は「判別器（失敗カウントＳｈｏｒｔ）の判別結果が「Ｇｒｅｙ」」であるため、分類器２２は、判別器２３ｅの判別結果が「Ｇｒｅｙ」であったヘッダ情報を判別器２３ｆに送信する。
【００８８】
このとき、図９に示すように、分類器２２は、判別器２３ｆの監視期間として「１週間」を設定する。また、分類器２２は、判別器２３ｆの検知条件として「ＴＣＰセッション確立失敗」を設定する。また、分類器２２は、判別器２３ｆの閾値として「１０」を設定する。そして、判別器２３ｆは、回数が閾値を超えたヘッダ情報のフィードバック情報における判別結果を「Ｂｌａｃｋ」とする。
【００８９】
このように、分類器２２が、応答処理として、作成済みの判別器を基に監視期間を大きくもしくは閾値を小さく設定した判別器を作成することで、作成済みの判別器では明確な判別ができなかったヘッダ情報についても判別を行うことができる。この場合、パケットＸは、判別器２３ｆによって「Ｂｌａｃｋ」と判別される可能性が高い。
【００９０】
［第１の実施形態の処理］
図１０を用いて、監視装置１の処理について説明する。図１０は、第１の実施形態に係る監視装置の判別処理の一例を示す図である。図１０に示すように、まず入出力部１０は、ネットワーク上のパケットのヘッダ情報を受信する（ステップＳ１０）。次に、フィルタリング部２１は、ホワイトリスト３１を参照し、受信したヘッダ情報のうちホワイトリスト３１に含まれるものを削除することでヘッダ情報の編集を行う（ステップＳ１１）。
【００９１】
そして、分類器２２は、割り当てロジックに従ってヘッダ情報を判別器２３に割り当てる（ステップＳ１２）。ここで、判別器２３は、割り当てられたヘッダ情報について判別を行い、フィードバック情報を作成する（ステップＳ１３）。そして、分類器２２は、フィードバック情報に応じた応答処理を行う（ステップＳ１４）。
【００９２】
図１１を用いて、応答処理について説明する。図１１は、第１の実施形態に係る監視装置の応答処理の一例を示す図である。図１１に示すように、まず分類器２２は、受け取った一つまたは複数の判別結果を応答部２２４の保持する判定ロジックによって判定する（ステップＳ１４１）。そして、分類器２２は、判定結果に応じた異なる応答処理を実行する（ステップＳ１４２）。
【００９３】
まず、判定結果が「攻撃によるスキャンでないと断定」である場合（ステップＳ１４２、攻撃によるスキャンでないと断定）、分類器２２は、ホワイトリスト３１を編集するためのリクエストを作成する（ステップＳ１４３）。例えば、判別結果から、パケットが設定ミスや操作ミス等によるものであることが明らかである場合に、分類器２２は、当該パケットを攻撃によるスキャンではないと断定する。
【００９４】
また、判定結果が「攻撃によるスキャンの疑いあり」である場合（ステップＳ１４２、攻撃によるスキャンの疑いあり）、分類器２２は、新たな判別器を作成する（ステップＳ１４４）。ここで、分類器２２は、作成済みの判別器を基に、監視期間を大きくもしくは閾値を小さく設定した判別器を作成するようにしてもよい。さらに、この場合、分類器２２は、新たな判別器を作成することなく、作成済みの判別器のパラメータの設定を行うようにしてもよい。
【００９５】
また、判定結果が「攻撃によるスキャンと断定」である場合（ステップＳ１４２、攻撃によるスキャンと断定）、分類器２２は、ネットワーク管理者に対してアラームを出力する（ステップＳ１４５）。
【００９６】
なお、各判定結果に対する分類器２２の応答処理は、上記のものに限定されない。例えば、判定結果が「攻撃によるスキャンでないと断定」、または「攻撃によるスキャンの疑いあり」である場合に、分類器２２は、パケットが設定ミスによるものであること等を記載したログを出力するようにしてもよい。これによって、攻撃によるスキャンへの対応が必要ない場合であっても、オペレータは、出力されたログに基づいて設定ミス等への対応を行うことが可能になる。
【００９７】
［第１の実施形態の効果］
複数種類の判別器２３は、パケットのヘッダ情報に基づいて、該パケットが攻撃によるスキャンのためのものであるか、もしくは所定の操作によるものであるかを判断する。分類器２２は、判別器２３からヘッダ情報に基づいて適切なものを選択して、パケットのヘッダ情報を送信する。判別器２３のそれぞれは、特定の監視期間を設定し、ヘッダ情報が特定の条件に合致するパケットから求めた特徴量が、監視期間中に、所定の判別条件を満たした場合に、該パケットが攻撃によるスキャンのためのものであるか、もしくは所定の操作によるものであるかを判断する。
【００９８】
これにより、攻撃による低速スキャンと所定の操作、すなわち設定ミス等を識別して検知することができるため、多様な検知回避行動のパターンに柔軟に対応できる。
【００９９】
判別器２３のそれぞれは、ヘッダ情報が特定の条件に合致するパケットを送信元ＩＰアドレスごとにカウントした数をパケットから求めた特徴量としてもよい。
【０１００】
これにより、攻撃等の元となっているＩＰアドレスを特定することができる。
【０１０１】
構成管理ＤＢ３２は、ネットワーク内の装置構成情報を記憶する。そして、分類器２２は、構成管理ＤＢ３２から、装置のＩＰアドレスおよびポート番号を取得して新たな判別器を作成してもよい。
【０１０２】
これにより、既存のネットワークの情報を利用することができ、効率よく分類器２２や判別器２３の設定を行うことができる。
【０１０３】
ホワイトリスト３１は、安全な通信におけるパケットのヘッダ情報を記憶するようにしてもよい。このとき、判別器２３は、所定の操作によるものであると判断したパケットのヘッダ情報を分類器２２へフィードバックする。さらに、分類器２２は、リクエストを作成し送信することで、フィードバックされたヘッダ情報をホワイトリスト３１に追加する。
【０１０４】
これにより、ホワイトリスト３１が編集され、誤検知率を低下させ、検知精度を向上させることができる。
【０１０５】
判別器２３ｅは、攻撃または安全とは断定できないと判断したパケットのヘッダ情報を分類器２２へ通知するようにしてもよい。このとき、分類器２２は、該パケットのヘッダ情報を基に判別器２３ｆを作成し、判別器２３ｆに該パケットのヘッダ情報を送信する。また、判別器２３ｆは、該パケットが攻撃によるスキャンのためのものであるか否かを判断する。
【０１０６】
これにより、作成済みの判別器では明確な判別ができなかったパケットについても、より明確に判別ができるようになるため、多様な検知回避行動のパターンに対するさらに柔軟な対応が可能となる。また、長期的な監視を行うパケットを限定することにより、監視にかかるリソースを効率化することが可能となる。
【０１０７】
判別器２３ｂは、第１の監視期間を設定し、ＴＣＰ接続の確立に失敗したという条件に合致するパケットを送信元ＩＰアドレスごとにカウントし、カウント数が、第１の監視期間中に、所定の閾値を超えた場合に、該パケットが設定ミスによるものであると判断するようにしてもよい。このとき、判別器２３ａは、第１の監視期間より長い第２の監視期間を設定し、ＴＣＰ接続の確立に失敗したという条件に合致するパケットを送信元ＩＰアドレスごとにカウントし、カウント数が、第２の監視期間中に、所定の閾値を超えた場合に、該パケットが攻撃によるスキャンのためのものであると判断する。
【０１０８】
これにより、低速スキャン等のより長期の監視が必要なものと設定ミス等の比較的短期間の監視でスキャンの判別が可能なものとが切り分けられるため、監視に必要なリソースを抑えることができる。
【０１０９】
構成管理ＤＢ３２は、プロキシサーバのＩＰアドレス、およびプロキシサーバのポート番号を記憶するようにしてもよい。このとき、判別器２３ｃは、特定の監視期間を設定し、プロキシサーバのポート番号の１０進数表記とのレーベンシュタイン距離があらかじめ設定した値以下であるポート番号が設定されているという条件に合致するパケットを送信元ＩＰアドレスごとにカウントし、カウント数が、特定の監視期間中に、所定の閾値を超えた場合に、該パケットがポート番号の設定ミスによるものであると判断する。
【０１１０】
また、判別器２３ｄは、特定の監視期間を設定し、プロキシサーバのＩＰアドレスの１０進数表記とのレーベンシュタイン距離が所定値以下であるＩＰアドレスが設定されているという条件に合致するパケットを送信元ＩＰアドレスごとにカウントし、カウント数が、特定の監視期間中に、所定の閾値を超えた場合に、該パケットがＩＰアドレスの設定ミスによるものであると判断する。
【０１１１】
そして、分類器２２は、ヘッダ情報の宛先ＩＰアドレスがプロキシサーバのＩＰアドレスであるパケットのヘッダ情報を判別器２３ｃに送信し、ヘッダ情報の宛先ポート番号がプロキシサーバのポート番号であるパケットのヘッダ情報を判別器２３ｄに送信する。
【０１１２】
これにより、直接的に攻撃によるスキャンが検知されるわけではないが、ホワイトリスト３１が編集されることにより、攻撃によるスキャンの検知精度が向上する。
【０１１３】
［システム構成等］
また、図示した各装置の各構成要素は、機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は、図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵ（Central  Processing  Unit）および当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【０１１４】
また、本実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【０１１５】
［プログラム］
一実施形態として、監視装置１は、パッケージソフトウェアやオンラインソフトウェアとして上記の監視を実行する監視プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の監視プログラムを情報処理装置に実行させることにより、情報処理装置を監視装置１として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）等の移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistants）等のスレート端末等がその範疇に含まれる。
【０１１６】
また、監視装置１は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の監視に関するサービスを提供するサーバ装置として実装することもできる。例えば、監視装置１は、ネットワーク上のパケットのヘッダ情報を入力とし、当該ヘッダ情報に対する監視結果を出力する監視サービスを提供するサーバ装置として実装される。この場合、監視装置１は、Ｗｅｂサーバとして実装することとしてもよいし、アウトソーシングによって上記の監視に関するサービスを提供するクラウドとして実装することとしてもかまわない。
【０１１７】
図１２は、プログラムが実行されることにより監視装置が実現されるコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【０１１８】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ（Random  Access  Memory）１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【０１１９】
ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、監視装置の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、監視装置における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤ（Solid  State  Drive）により代替されてもよい。
【０１２０】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して実行する。
【０１２１】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３およびプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３およびプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【０１２２】
１  監視装置
２  端末
２ａ  感染端末
１０  入出力部
２０  制御部
２１  フィルタリング部
２２  分類器
２３  判別器
２３ａ  判別器（Ｓｌｏｗ）
２３ｂ  判別器（プロキシポートミス）
２３ｃ  判別器（ポート番号設定ミス）
２３ｄ  判別器（ＩＰアドレス設定ミス）
２３ｅ  判別器（失敗カウントＳｈｏｒｔ）
２３ｆ  判別器（失敗カウントＬｏｎｇ）
３０  記憶部
３１  ホワイトリスト
３２  構成管理ＤＢ
２２１、２３１  送受信部
２２２  管理部
２２３  割当部
２２４  応答部
２２５  判別器作成部
２２６  判別器更新部
２２７  リクエスト作成部
２３２  判別部
２３３  保管部
【図１】
2017076841.tif 000003
【図２】
2017076841.tif 000004
【図３】
2017076841.tif 000005
【図４】
2017076841.tif 000006
【図５】
2017076841.tif 000007
【図６】
2017076841.tif 000008
【図７】
2017076841.tif 000009
【図８】
2017076841.tif 000010
【図９】
2017076841.tif 000011
【図１０】
2017076841.tif 000012
【図１１】
2017076841.tif 000013
【図１２】
2017076841.tif 000014