(57)【要約】【課題】ネットワークに入ってくるパケットを解析し，LANスイッチのアクセス制御リスト(以降，ACLとする)を使って攻撃者のパケットを遮断することにより攻撃を抑制するシステムを提供する。【解決手段】本発明のスキャン攻撃不正侵入防御装置は、受信解析部100と代理応答生成部200、ブラックリスト管理部300、ブラックリストのデータベース400、コマンド発行部500とからなり、スキャン攻撃の際に使用されるTCPコネクションを検知し、TCPコネクションへの応答を選択的に遅くするthrottlingを用いてスキャン攻撃を抑制するものである．【選択図】        図２
2010212916.tif 000002
【特許請求の範囲】
【請求項１】
インターネット側から受信したパケットについて、予め登録してある信頼できる送信元及び適用外のアプリケーション（宛先ポート番号）以外のときに、そのパケットが通信開始要求パケット（SYN）であれば、送信元IPアドレスを抽出し、その通信開始要求に対する内部からの応答を待ち、それが無い場合、代理応答生成部(200)に代理応答を指示するとともに、ブラックリスト管理部(300)にそのIPアドレスの記録を指示する受信解析部(100)と、
受信解析部(100)からの指示により代理応答（SYN/ACK）を行う代理応答生成部(200)と、
受信解析部(100)からの指示によりIPアドレス、記録時間、そのIPアドレスの出現回数をデータベースに記録し、後述のコマンド発行部(500)からの要求により、データベース(400)から出現回数が所定回数以上のIPアドレスを抽出し、最後の出現時刻から所定時間以上経過しているIPアドレスをデータベース(400)から削除するブラックリスト管理部(300)と、
所定時間ごとにブラックリスト管理部(300)にデータベース(400)に登録されているIPアドレスの一覧の作成を指示し、それに基づいてLANスイッチのACL(Access Control List)を作成し、最後の出現時刻から所定時間以上経過しているIPアドレスをデータベース(400)から削除するようにブラックリスト管理部(300)に指示するコマンド発行部(500)と、
からなることを特徴とするスキャン攻撃不正侵入防御装置。  
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャン攻撃不正侵入防御装置に関するものである。
【背景技術】
【０００２】
セキュリティホールの残っているホストや，特定のサービスを行っているホストへのscan攻撃が後を絶たない．scan攻撃によるホストの発見後，ホストへの攻撃が行われる可能性がある．この攻撃により，サービスを行えない，不正アクセスが行われるなどの問題が発生することが考えられる．
従来における公知文献として非特許文献１及び非特許文献２がある。
非特許文献１、非特許文献２に記載の技術は、実在するサーバへのアクセスには、その回数に応じて遅延をかけると同時にサーバが存在しないIPアドレスを設定しておき、偽装応答することで、そのIPアドレスへscan攻撃を誘導することである。
我々は図1に示す透過型ブリッジとして動作し，TCPコネクション接続要求に対して遅延・偽装応答を行うscan攻撃抑制システムを開発・運用を行ってきた。
課題は、遅延時間が接続要求回数のみの基づくため、少ない接続要求回数では誤判定が多く、大きな接続要求回数では判定に時間がかかることであり、PCサーバをLANスイッチのように使用するためスループットが出ないことである。
【０００３】
＜図4に示す従来装置の説明＞
従来装置は、TCP の接続要求(TCP オプションのSYN フラグのみが1 であるパケット)が外部ネットワークの同一の送信元IP アドレスから短時間に複数回送信されてきた場合，または使用されていない内部ネットワークのIPアドレスに対して送信されてきた場合，scan 攻撃が行われたと判断する．前者の場合では，送信元IP アドレスとの通信はパケットの転送を遅延させ，後者の場合では，偽装応答を行うことで攻撃の抑制を行う．
また，本装置は設置場所を選ばない透過型ブリッジとしてネットワークの境界に設置し，使用する．透過型ブリッジとして動作することにより，内部ネットワーク内の個々のコンピュータの設定や構成を変更することなくscan 攻撃への対策が可能になる．
【非特許文献１】大塚，兒玉，吉田 ： 偽装応答によるscan攻撃抑制システムについて，マルチメディア，分散，協調とモバイル(DICOMO 2008)シンポジウム pp.1182-1189，2008．
【非特許文献２】兒玉，大塚，南，吉田 ：偽装応答を用いたscan攻撃抑制システムの提案，FIT2007（第6回情報科学技術フォーラム）講演論文集 pp.71-73(2007).
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、これまでのシステム装置の運用経験から，ネットワークに入ってくるパケットを解析し，LANスイッチのアクセス制御リスト(以降，ACLとする)を使って攻撃者のパケットを遮断することにより攻撃を抑制するスキャン攻撃不正侵入防御装置を提供する。
【課題を解決するための手段】
【０００５】
本発明のスキャン攻撃不正侵入防御装置の技術的特徴は、次の(1)に記載の通りである。
(1)インターネット側から受信したパケットについて、予め登録してある信頼できる送信元及び適用外のアプリケーション（宛先ポート番号）以外のときに、そのパケットが通信開始要求パケット（SYN）であれば、送信元IPアドレスを抽出し、その通信開始要求に対する内部からの応答を待ち、それが無い場合、代理応答生成部に代理応答を指示するとともに、ブラックリスト管理部にそのIPアドレスの記録を指示する受信解析部と、
受信解析部からの指示により代理応答（SYN/ACK）を行う代理応答生成部と、
受信解析部からの指示によりIPアドレス、記録時間、そのIPアドレスの出現回数をデータベースに記録し、後述のコマンド発行部からの要求により、データベースから出現回数が所定回数以上のIPアドレスを抽出し、最後の出現時刻から所定時間以上経過しているIPアドレスをデータベースから削除するブラックリスト管理部と、
所定時間ごとにブラックリスト管理部にデータベースに登録されているIPアドレスの一覧の作成を指示し、それに基づいてLANスイッチのACL(Access Control List)を作成し、最後の出現時刻から所定時間以上経過しているIPアドレスをデータベースから削除するようにブラックリスト管理部に指示するコマンド発行部と、
からなることを特徴とするスキャン攻撃不正侵入防御装置。
【発明の効果】
【０００６】
本発明は、インターネットからネットワークに入ってくるパケットを解析し，LANスイッチのアクセス制御リスト(以降，ACLとする)を使って攻撃者のパケットを確実に遮断することにより攻撃を抑制することができるスキャン攻撃不正侵入防御装置である。
【発明を実施するための最良の形態】
【０００７】
本実施例のスキャン攻撃不正侵入防御装置のシステムフローを図１と図２と共に説明する。装置は一方のネットワークに流れるパケットを全て受信し、もう一方のネットワークに送信する。ただし、送信の前に、受信したパケットの解析を行い、throttlingを行うかどうかを判断する。throttlingを行う場合は、パケットに遅延をかけた後に送信を行う。
スキャン攻撃不正侵入防御装置の主な装置構成は、受信解析部100と代理応答生成部200（偽応答生成部とも言う）、ブラックリスト管理部300、ブラックリストのデータベース400、コマンド発行部（遮断・解徐コマンド発行部とも言う）500とからなり、スキャン攻撃の際に使用されるTCPコネクションを検知し、TCPコネクションへの応答を選択的に遅くするthrottlingを用いてスキャン攻撃を抑制するものである。
【０００８】
受信解析部100は、図３−１と図３−２に示すパケット解析フロー１及び２に記載のように、インターネット側から受信したパケットについて、予め登録してある信頼できる送信元及び適用外のアプリケーション（宛先ポート番号）以外のときに、そのパケットが通信開始要求パケット（SYN）であれば、送信元IPアドレスを抽出し、その通信開始要求に対する内部からの応答を待ち、それが無い場合、代理応答生成部200に代理応答を指示するとともに、ブラックリスト管理部にそのIPアドレスの記録を指示する。
具体的には、受信解析部100は、ここでは受信したパケットにthrottlingを行うかを判断するために、表１、表２に示す例のように、パケットを解析し、解析結果を保存しておく。
【０００９】
【表１】
2010212916.tif 000003
【００１０】
【表２】
2010212916.tif 000004
まず、パケットを受信し、TCPヘッダ、IPヘッダの解析を行う。本装置で使用するものは、送信元IPアドレス、宛先IPアドレス、宛先ポート番号、TCPコントロールフラグビット、到着時刻の情報である。解析結果の保存では送信元IPアドレス毎および宛先IPアドレス毎に到着時刻とTCPコネクション試行回数を保存していく。到着時刻は最終アクセス時刻として使用する。TCPコントロールフラグビットのSYNフラグが１、ACKフラグが0である場合に、TCPコネクションが試行されたものとしてカウントを行う。既にIPアドレスの情報が保存されている場合には、回数、アクセス時刻の更新を行う。
解析結果をいつまでも保持していると、正規のユーザのTCPコネクションの試行回数がしきい値を超えるという問題が発生する。そのため、定期的に保存している情報を整理する。送信元IPアドレスにおいては、所定周期で、保存されている各IPアドレスの最終アクセス時間と現在時間を比較し、所定時間更新が無いアドレスの情報を破棄する。宛先IPアドレスにおいては所定周期で全ての情報を破棄する。
【００１１】
代理応答生成部200は、受信解析部からの指示により代理応答（SYN/ACK）を行う。
【００１２】
ブラックリスト管理部300は、受信解析部100からの指示によりIPアドレス、記録時間、そのIPアドレスの出現回数をデータベース400に記録し、後述のコマンド発行部からの要求により、データベース400から出現回数が所定回数以上のIPアドレスを抽出し、最後の出現時刻から所定時間以上経過しているIPアドレスをデータベースから削除する.
【００１３】
コマンド発行部（遮断・解徐コマンド発行部とも言う）400は、所定時間ごとにブラックリスト管理部300にデータベース400に登録されているIPアドレスの一覧の作成を指示し、それに基づいてLANスイッチのACL(Access Control List)を作成し、最後の出現時刻から所定時間以上経過しているIPアドレスをデータベース400から削除するようにブラックリスト管理部300に指示する。
【００１４】
LANスイッチ600（601、602）は、正常なパケットの通過、不正パケットの遮断を行う。またPCサーバとを組み合わせて負荷分散をおこなっている。
【００１５】
このスキャン攻撃不正侵入防御装置におけるthrottlingのアルゴリズムは、次のとおりである。
1.1  概要
スキャン攻撃はツールを用いて自動的に実行されることが多く、大抵は１つのIPアドレスから行われている。また、多くのTCPコネクションを短時間で試行する。そこで、同じIPアドレスからのTCPコネクションの開始を検知するたびに、その送信元IPアドレスに対して遅延を増加させていく。つまりTCPコネクション試行回数に応じて遅延をかけていく。これによりTCPコネクションを使用するスキャン攻撃に対してthrottlingを行う。
1.2  考慮点
TCPコネクションの試行回数から遅延時間を決定するときに次の3点について考慮する。
1.2.1  正規の利用者
SSHで、パスワードの入力を間違えるなど、正規の利用者もTCPコネクションを数回繰り返すころがある。TCPコネクションの試行回数に応じて遅延を増加させる方法だと、正規の利用者にも大きな遅延をかける可能性がある。このため、しきい値を導入する。TCPコネクション試行回数のしきい値を定め、それを超えない回数までは遅延の増加量を小さなものとする。TCPコネクション試行回数がしきい値を越えたならば、スキャン攻撃だと判断し、遅延の増加量を大きくしていく。所定時間、TCPコネクションが志向されなかったものについては、その試行回数を0にリセットする。
1.2.2  多くのTCPコネクションの試行を必要とするプロトコル
プロトコルの中には、多くのTCPコネクションを利用するものもある。HyperText Transfer Protocol（以下単にHTTPと言う）（80番）などが該当する。これらのプロトコルに関しては、遅延を行わないようにすることで解決を図る。throttlingの対象としないあて先ポート番号を記録する除外ポート番号リスト（ポート番号white listという）を作成する。TCPコネクションのあて先ポート番号がポート番号white listに該当する場合にはthrottlingを行わない。
1.2.3  信用できるホスト、公開されているサーバ
正規利用者がよく使うホストで、セキュリティ管理がきちんと行われているものからのTCPコネクション要求や、公開されているサーバで攻撃に対する対策をサーバ自身できちんと行っているものへのTCPコネクション要求に関しては、遅延をかける必要はない。これらのホスト、サーバのIPアドレスを記録する除外IPアドレスリスト（IPアドレスwhitelistという）を作成する。TCPコネクションの送信元あるいは宛先のIPアドレスがIPアドレスwhite listに該当する場合にはthrottlingを行わない。
1.3  遅延アルゴリズム
以上により、遅延アルゴリズムは以下のようになる。
(1)インターネット側からのパケットを１つ受け取る。
(2)パケットの送信元アドレス、宛先アドレス、宛先ポートのいずれかがポート番号white list、IPアドレスwhite listにある、あるいは、プロトコルフィールドがTCP以外のときは、遅延なしの内部キューに置き、(1)へ戻る。
(3)パケットがTCPコネクション開始パケット(SYN=1，ACK=0)のとき、送信元アドレス、宛先アドレスそれぞれの試行回数、遅延時間を更新する。
(4)送信元アドレスに対する遅延時間、宛先アドレスに対する遅延時間を検索し、後述の関数例１〜３によりパケットの遅延時間とする。
(5)送出時刻＝現在時刻＋遅延時間を計算し、パケット自身とともにヒープに置く。ヒープとは、パケットとその送信時刻とを蓄え、送信可能時刻が来るたびに送信部にパケットを渡す手段をいう。
(6)内部／外部の２つの送信部では、それぞれ「１」、「３」のキューを調べてパケットがあれば、すぐに送信し、さらに内部送信部では「５」のヒープ中にある一番古いパケットが送出時刻になって入れば送出する。
(7)あらかじめ設定した時間間隔（30分程度）で、データベース中に記録している各IPアドレスの参照時刻を検査し、参照時刻が古いもの（１時間程度送信開始要求がないもの）は、データベースから消去する。
ただし、LANからインターネットに向かうパケットに関しては、すべて外部キューに置き、遅延させない。
【産業上の利用可能性】
【００１６】
既存のファイアウォール、IDP（Intrusion Detention and Prevention System）では、あらかじめ作成されたパターンのデーターベース400を持ち、それに合致するパケットのみの侵入を阻止するが、本発明装置は、怪しい動き（多数の通信開始要求）を検知し、本装置自身がデーターベース400を構築する優れた装置である。このため本装置単体で製品化することの他、本装置のアルゴリズムを、既存のファイアウォールの中に組み込可能であるなどインターネット通信産業などに広く活用されるものである。
【図面の簡単な説明】
【００１７】
【図１】本発明のスキャン攻撃不正侵入防御装置の全体装置構成を示すブロック線図である。
【図２】図１の一部詳細ブロック線図である。
【図３−１】本発明のスキャン攻撃不正侵入防御装置の受信解析部100における受信時のパケット解析フロー１を示す説明図である。
【図３−２】本発明のスキャン攻撃不正侵入防御装置の受信解析部100における受信時のパケット解析フロー２を示す説明図である。
【図３−３】本発明のスキャン攻撃不正侵入防御装置における更新処理フロー図である。
【図４】従来のスキャン攻撃不正侵入防御装置の全体装置構成を示すブロック線図である。
【符号の説明】
【００１８】
100    受信解析部
200    代理応答生成部（偽応答生成部とも言う）
300    ブラックリスト管理部
400    ブラックリストのデータベース
500    コマンド発行部（遮断・解徐コマンド発行部とも言う）
【図１】
2010212916.tif 000005
【図２】
2010212916.tif 000006
【図３−１】
2010212916.tif 000007
【図３−２】
2010212916.tif 000008
【図３−３】
2010212916.tif 000009
【図４】
2010212916.tif 000010