JP6502902B2 - 攻撃検知装置、攻撃検知システムおよび攻撃検知方法 - Google Patents

攻撃検知装置、攻撃検知システムおよび攻撃検知方法 Download PDF

Info

Publication number
JP6502902B2
JP6502902B2 JP2016158578A JP2016158578A JP6502902B2 JP 6502902 B2 JP6502902 B2 JP 6502902B2 JP 2016158578 A JP2016158578 A JP 2016158578A JP 2016158578 A JP2016158578 A JP 2016158578A JP 6502902 B2 JP6502902 B2 JP 6502902B2
Authority
JP
Japan
Prior art keywords
attack
packet
flow
unit
request packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016158578A
Other languages
English (en)
Other versions
JP2018026747A (ja
Inventor
裕平 林
裕平 林
重谷 昌昭
昌昭 重谷
伊知郎 工藤
伊知郎 工藤
聡史 西山
聡史 西山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016158578A priority Critical patent/JP6502902B2/ja
Publication of JP2018026747A publication Critical patent/JP2018026747A/ja
Application granted granted Critical
Publication of JP6502902B2 publication Critical patent/JP6502902B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、攻撃検知装置、攻撃検知システムおよび攻撃検知方法に関する。
近年、サービスプロバイダが提供するネットワークサービスを妨害する攻撃が問題となっている。この攻撃としては、例えば、悪意のある攻撃者がネットワークに大量のパケットを送信してネットワークの帯域に負荷をかける、またはサーバに対しリソースを消費させるパケットを送信することでサーバに負荷をかけ、これによりネットワークサービス提供者のサービスを妨害するDoS攻撃(Denial of Service)やDDoS攻撃(Distributed Denial of Service)が知られている。
これらの攻撃からネットワークに接続された通信機器(サーバ装置など)を防御するために、種々の攻撃検知方法が提案されている。たとえば、一般的なDDoSの対策技術として、フローコレクターを用いた検知、或いは、Mitigation装置への通信引き込みによる対処がある(例えば、非特許文献1参照)。この手法では、攻撃を仕掛ける通信端末とサーバ装置とを結ぶ通信経路上に、パケットのカウント機能を有する転送装置を設け、サーバにおいて、フローの帯域が閾値を超えた場合に攻撃検知を行い、攻撃と疑われるフローをセキュリティ装置に引き込んで詳細分析及び対処を行う。
ただし、通信量に基づいて攻撃検知を行うxFlow技術を用いる非特許文献1記載の手法では、攻撃先サーバに対し多数セッションを張り続けることにより低通信量でも攻撃が成立するSlow Dos攻撃の検知ができなかった。SlowDos攻撃としては、Slow Read DoS攻撃、Slow HTTP(HyperText Transfer Protocol)ポスト攻撃及びSlow HTTPヘッダ攻撃がある。
例えば、Slow Read DoSは、HTTPサーバに対して、TCPプロトコルのウィンドウサイズを小さく通知することによって、HTTPサーバからのレスポンスを、時間をかけて受信することによって、攻撃先サーバとの多数のセッションを維持し、HTTPサーバのセッション数を使い切る攻撃である。また、Slow HTTP POST攻撃は、HTTP Postリクエスト全体を分割して数バイトごとに時間をかけて送信することによって、大量に接続を張ることでサーバをダウンさせる攻撃である。Slow HTTPヘッダ攻撃は、不完全なHTTPヘッダを、時間をかけて送信し続け、接続を張り続けることによって、サーバをダウンさせる攻撃である。
そこで、近年では、このようなSlow Dos攻撃の検知手法として、WAF等のセキュリティ装置をインライン接続することによって対処を行う手法(例えば、非特許文献2参照)が提案されている。また、Webサーバでの設定変更による対処、具体的には、Webサーバでのタイムアウト設定を小さくするパーシステントコネクション設定を無効にする手法(例えば、非特許文献3参照)も提案されている。さらに、Webサーバでの検知アルゴリズム動作による検知及び対処、具体的には、コネクション数やコネクション継続時間を基に攻撃の検知及び対処を行う手法(例えば、非特許文献4参照)も提案されている。
ISPにおけるDoS/DDoS攻撃の検知・対策技術、[online]、[平成28年8月2日検索]、インターネット<URL:https://www.nic.ad.jp/ja/materials/iw/2013/proceedings/s2/s2-nishizuka.pdf> Barracuda Web Application Firewall、[平成28年8月2日検索]、インターネット<URL:http://www.keyman.or.jp/pd/10028645/> Are you ready for slow reading?、[平成28年8月2日検索]、インターネット<URL:https://blog.qualys.com/securitylabs/2012/01/05/slow-read> 平川哲也他, "分散型 Slow Read DoS 攻撃に対する防御手法の提案", 平成27年度電気関係学会東北支部連合大会
しかしながら、非特許文献2記載の手法では、セキュリティ装置は、通常通信も分析を行ってしまうため、セキュリティ装置に要するコストが高くなってしまうという問題があった。また、非特許文献3記載の手法では、Webサーバでの設定変更を行うため、通常通信(通常ユーザ)のQoS(Quality of Service)に影響を及ぼすという問題があった。そして、非特許文献4記載の手法では、Webサーバに、コネクションごとに継続時間等を保持するプロセスを動作させることによって、すなわち、WebサーバにおけるSlow Dos検知アルゴリズムを動作することによって、Webアプリケーションの性能に影響を及ぼす場合があるという問題があった。
本発明は、上記に鑑みてなされたものであって、Slow Dos攻撃を適切に検知することができる攻撃検知装置、攻撃検知システムおよび攻撃検知方法を提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明に係る攻撃検知装置は、通過するパケットの中から所定サーバへの接続要求パケット及び所定サーバへの切断要求パケットを抽出する転送装置から、該転送装置が抽出したパケットのコピーを取得する取得部と、取得部が取得したパケットのコピーを基に、接続要求パケットが到達してから、接続要求パケットに対応するフローでの切断要求パケットが到達するまでの期間を計測する計測部と、計測部が計測した期間と所定の閾値とを比較し、比較結果に基づいて、接続要求パケットに対応するフローに対する攻撃の疑いを検知し、該フローについて攻撃の疑いを検知した場合には、該フローのパケットを、攻撃被疑フローのパケットとして、攻撃の解析を行う攻撃解析装置に転送するように前記転送装置に指示する攻撃検知部と、を有することを特徴とする。
本発明によれば、Slow Dos攻撃を適切に検知することができる。
図1は、実施の形態に係る攻撃検知システムの構成の一例を模式的に示す図である。 図2は、図1に示す転送装置の構成の一例を示すブロック図である。 図3は、図2に示す抽出パケット設定テーブルのデータ構成の一例を示す図である。 図4は、図1に示すサーバ装置の構成の一例を示すブロック図である。 図5は、各フローのTCP SYNパケット及びTCP FINパケットの到達時間の計測結果テーブルの一例を示す図である。 図6は、サーバ装置による、WebサーバへのTCP SYNパケット及びTCP FINパケットの取得タイミングの一例を示す図である。 図7は、サーバ装置による、WebサーバへのTCP SYNパケット及びTCP FINパケットの取得タイミングの他の例を示す図である。 図8は、図1に示すセキュリティ装置の構成の一例を示す図である。 図9は、図8に示す記憶部が記憶する攻撃解析用のテーブルの一例を示す図である。 図10は、図1に示す攻撃検知システムによる攻撃検知処理の流れを説明するシーケンス図である。 図11は、プログラムが実行されることにより、攻撃検知システムのサーバ装置が実現されるコンピュータの一例を示す図である。
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
[実施の形態]
実施の形態に係る攻撃検知システムについて、攻撃検知システム全体の概略構成、攻撃検知システムを構成する各装置の概略構成、攻撃検知システムにおける処理の流れ及び具体例を説明する。なお、以降で説明する転送装置の台数等は、あくまで例示であり、これに限定されるものではない。
[攻撃検知システムの構成]
この実施の形態では、監視対象のフローの帯域が閾値を超えた場合に攻撃を検知するのではなく、検知対象のサーバに対するTCP(Transmission Control Protocol) SYN(Synchronize)パケット(接続要求パケット)が到達してから、このTCP SYNパケットに対応するフローでのTCP FIN(Finish)パケット(切断要求パケット)が到達するまでの期間と、所定の閾値とを比較することによって、低通信量で長期間にわたり攻撃を行うSlow Dos攻撃を検知する。
まず、図1を参照して、実施の形態に係る攻撃検知システムの構成について説明する。図1は、実施の形態に係る攻撃検知システムの構成の一例を説明するための図である。
図1に示すように、実施の形態に係る攻撃検知システムは、複数の転送装置2A〜2Dを含むネットワーク10に対して、該ネットワーク10を流れるトラフィックを監視するとともにネットワーク10を流れる攻撃の疑いを検知するサーバ装置3(攻撃検知装置)と、ネットワーク10を流れる攻撃があった場合に該攻撃を解析するセキュリティ装置4(攻撃解析装置)とを有する。
図1の例では、転送装置2Cの接続先にWebサーバ5が位置する。本実施の形態では、このWebサーバ5へのSlow Dos攻撃を検知、対処する例について説明する。また、図1の例では、転送装置2Aは、インターネット等を介して、外部の通常ユーザ端末6Aと、攻撃者端末6Bとに接続する。また、図1では、ネットワーク10内を流れるトラフィックフローとして、フローFa,Fb,Fcを例示している。また、フローFa,Fb,Fcのうち、フローFa,Fcを正常フローとして説明し、フローFbを攻撃フローとして説明する。
転送装置2A〜2Dは、ネットワーク10の通信経路上に設けられたパケット転送装置である。転送装置2A〜2Dは、それぞれ、転送先の装置の識別情報と転送先の装置のアドレスとをそれぞれ対応付けた転送テーブルに従って、到着したパケットを転送先に転送する。
また、転送装置2A〜2Dは、転送装置2A〜2Dを通過するパケットの中から、所定サーバ(例えば、Webサーバ5)へのTCP SYNパケット、及び、Webサーバ5へのTCP FINパケットを抽出し、抽出したパケットのコピーをサーバ装置3に送信する。転送装置2A〜2Dは、仮想スイッチ、仮想ソフトウェアスイッチ、物理スイッチ或いはゲートウェイ等である。
サーバ装置3は、例えば、各装置との間で通信を行い、各種サービスを提供する。また、サーバ装置3は、ネットワーク10のトラフィックを監視し、監視状況に基づいてネットワーク10を流れる攻撃の疑いを検知する。本実施の形態では、サーバ装置3は、転送装置2A〜2Cから送信されたパケットのコピーを基に、ネットワーク10を流れる攻撃の疑いを検知する。
具体的には、サーバ装置3は、転送装置2A〜2Cから送信されたパケットのコピーを基に、Webサーバ5へのTCP SYNパケットが到達してから、TCP SYNパケットに対応するフローでのTCP FINパケットが到達するまでの期間と、所定の閾値とを比較することによってSlow Dos攻撃の疑いを検知する。この所定の閾値は、TCP SYNパケットが到達してから、TCP SYNパケットに対応するフローでのTCP FINパケットが到達するまでの期間の度数分布を一定期間作成し、該作成した度数分布を基にされる。
セキュリティ装置4は、サーバ装置3がネットワーク10を流れる攻撃の疑いを検知した場合、サーバ装置3が攻撃を検知したフローを攻撃被疑フローとして、攻撃被疑フローの内容を解析する。例えば、セキュリティ装置4は、転送装置2A〜2Dから論理的に接続できる場所に設けられ、転送装置2A〜2Dを介して、サーバ装置3と通信可能に接続される。或いは、セキュリティ装置4は、ネットワーク10の外部に設けられ、各種通信装置を介してサーバ装置3と通信可能に接続される。
Webサーバ5は、各装置との間で通信を行い、各種サービスを提供する。例えば、Webサーバ5は、転送装置2A〜2Dのいずれかを経由して、端末からHTTPリクエストを受信した場合に、HTML(HyperText Markup Language)ファイル等をリクエスト元の端末に返信する。
通常ユーザ端末6Aは、転送装置2A〜2Dやインターネットを介して、Webサーバ5などの他の端末と通信を行う通信装置である。例えば、PC(Personal Computer)やPDA(Personal Digital Assistant)等である。図1に示す例では、通常ユーザ端末6Aは、転送装置2A〜2Dと通信可能に接続される。また、図1の例では、攻撃者端末6Bが、転送装置2A〜2Dやインターネットを介して、Webサーバ5にSlow Dos攻撃を実行し、サーバ装置3が、攻撃者端末6BによるSlow Dos攻撃を検知する場合について説明する。
[転送装置の構成]
次に、TCP SYNパケット及びTCP FINパケットのコピーを生成する転送装置2A〜2Dの構成について説明する。図2は、図1に示す転送装置2Aの構成の一例を示すブロック図である。図2に示すように、転送装置2Aは、記憶部21、通信部22及び制御部23を有する。なお、他の転送装置2B〜2Dも転送装置2Aと同様の構成を有する。
記憶部21は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現され、転送装置2を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータなどが記憶される。記憶部21は、転送先の装置の識別情報と転送先の装置のアドレスとをそれぞれ対応付けた転送テーブルを記憶する。
また、記憶部21は、転送装置2を通過するパケットのうち、抽出対象となるパケットを設定した抽出パケット設定テーブル211を記憶する。この抽出パケットは、他の装置(例えば、サーバ装置3)からの通知に従い設定される。また、抽出パケットの設定方法として、転送装置2に静的に設定する方法や、通過するフロー情報から動的に設定する方法等が考えられる。
図3は、図2に示す抽出パケット設定テーブル211のデータ構成の一例を示す図である。抽出パケット設定テーブル211は、図3に示すテーブルT1のように、抽出対象となるパケットの宛先IPアドレス(dst_ip_addr)、宛先ポート番号(dst_port)、プロトコル(protocol)、フラグ(tcp_flag)が示されている。
攻撃検知対象がWebサーバ5(dst_ip_addr=B,dst_port=80 or 443)である場合には、例えばテーブルT1の1行目に、dst_ip_addr=B、dst_port=80 or 443、protocol=tcp、tcp_flag=synが設定されており、1行目に、dst_ip_addr=B、dst_port=80 or 443、protocol=tcp、tcp_flag=finが設定されている。このようにテーブルT1を設定することによって、抽出部231(後述)が、攻撃検知対象であるWebサーバ5へのTCP SYNパケット及びTCP FINパケットを抽出できるようにしている。
通信部22は、ネットワークを介して接続された装置と各種情報を送受信する通信インターフェースである。例えば、通信部22は、他の装置から送信されたパケットを受信したり、転送対象のパケットを転送先に送信したりする。
制御部23は、各種の処理手順などを規定したプログラム及び所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する。例えば、制御部23は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。制御部23は、抽出部231、パケットコピー部232(送信部)及び転送制御部233を有する。
抽出部231は、転送装置2Aを通過するパケットの中から、所定サーバ(Webサーバ5)へのTCP SYNパケット及びTCP FINパケットを抽出し、抽出したパケットをパケットコピー部232に出力する。抽出部231は、通信部22が受信したパケットのうち、宛先IPアドレス(dst_ip_addr)、宛先ポート番号(dst_port)、プロトコル(protocol)、フラグ(tcp_flag)の組み合わせが、テーブルT1に示す組み合わせと一致したパケットを、抽出対象のパケットとして判別する。
パケットコピー部232は、抽出部231が抽出したパケットのコピーを、通信部22を介し、サーバ装置3に送信する(図1の矢印Y参照)。転送制御部233は、通信部22におけるパケットの転送処理を制御する。転送制御部233は、サーバ装置3で攻撃被疑フローを決定した後に、サーバ装置3から転送装置2Aに対して転送指示が送信される(図1の矢印Y参照)と、攻撃被疑フローをセキュリティ装置4に転送する(図1の矢印Y参照)。
サーバ装置3は、転送装置2Aから送信された、Webサーバ5へのTCP SYNパケット及びTCP FINパケットのコピーを基に攻撃の疑いを検知する。次に、サーバ装置3の構成について説明する。
[サーバ装置の構成]
図4は、図1に示すサーバ装置3の構成の一例を示すブロック図である。図4に示すように、サーバ装置3は、記憶部31、通信部32及び制御部33を有する。
記憶部31は、RAM、フラッシュメモリ等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現され、サーバ装置3を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータなどが記憶される。記憶部31は、転送装置2A〜2Dから送信されたパケットのコピーや、攻撃検知に用いられる閾値を記憶する。また、通信部32は、ネットワークを介して接続された装置と各種情報を送受信する通信インターフェースである。
制御部33は、CPUやMPUなどの電子回路であり、各種の処理手順などを規定したプログラムに従って種々の処理を実行する。制御部33は、パケット取得部331(取得部)、タイマ332、計測部333、攻撃検知部334、通信制御部335及び閾値設定部336を有する。
パケット取得部331は、転送装置2A〜2Dから、転送装置2A〜2Dが抽出したパケットのコピーを取得する。このパケットのコピーは、転送装置2A〜2Dを通過するパケットの中から抽出された、Webサーバ5へのTCP SYNパケット及びTCP FINパケットのコピーである。具体的には、パケット取得部331は、通信部32が受信したパケットから、攻撃検知対象期間に対応するパケットのコピーを抽出する。或いは、パケット取得部331は、記憶部31に記憶されたパケット情報から、攻撃検知対象期間に対応するパケットのコピーを読み出す。
タイマ332は、時刻を計測する。タイマ332は、複数ある。
計測部333は、パケット取得部331が取得したパケットのコピーを基に、Webサーバ5へのTCP SYNパケットが到達してから、このTCP SYNパケットに対応するフローでのTCP FINパケットが到達するまでの期間を計測する。計測部333は、パケット取得部331が取得したパケットのコピーの取得タイミングに応じてタイマ332の起動及び計測終了を制御することによって、Webサーバ5へのTCP SYNパケットが到達してから、このTCP SYNパケットに対応するフローでのTCP FINパケットが到達するまでの期間を計測する。計測部333は、TCP SYNパケットが所属するフローごとに、タイマ332を起動させる。
なお、計測部333は、TCP SYNパケットのヘッダ情報から、このパケットの送信元IPアドレス(src_ip_addr)や送信元ポート番号(src_port)を判別できる。また、計測部333は、TCP FINパケットが途中でロスした場合に永遠にタイマ332が稼働し続けることを防止するために、タイマ332の計測値が設定値を超えた場合には、このタイマ332を終了する。
このように、計測部333が、各フローのTCP SYNパケット及びTCP FINパケットの到達時間を計測することによって、サーバ装置3は、各フローのTCP SYNパケット及びTCP FINパケットの到達時間をそれぞれ得ることができる。図5は、各フローのTCP SYNパケット及びTCP FINパケットの到達時間の計測結果テーブルの一例を示す図である。
例えば、通常ユーザ端末6A(src_ip_addr=D,dst_ip_addr=B,src_port=E,dst_port=443,protocol=tcp,flag=syn)によるTCP SYNパケットのコピーが取得された場合、計測部333は、このTCP SYNパケットが所属するフローFa(src_ip_addr=D,dst_ip_addr=B,src_port=E,dst_port=443,protocol=tcp)について、一つのタイマ332を起動する(図5の計測結果テーブルT2の1行目参照)。続いて、通常ユーザ端末6AによるTCP FINパケットのコピーが取得された場合には、計測部333は、このフローFaに対応するタイマ332の計測を終了し、計測した期間D1を記憶部31に記録する(計測結果テーブルT2の2行目最右欄参照)。
また、攻撃者端末6B(src_ip_addr=A,src_port=C)によるTCP SYNパケットの取得があった場合には、計測部333は、このTCP SYNパケットが所属するフローFb(src_ip_addr=A,dst_ip_addr=B,src_port=C,dst_port=80,protocol=tcp)について、また別のタイマ332を起動する。そして、攻撃者端末6BによるTCP FINパケットのコピーが取得された場合には、計測部333は、このフローFbに対応するタイマ332の計測を終了し、計測した期間D3を記憶部31に記録する(計測結果テーブルT2の3,4行目参照)。
攻撃検知部334は、計測部333によって計測された、Webサーバ5へのTCP SYNパケットが到達してから、このTCP SYNパケットに対応するフローでのTCP FINパケットが到達するまでの期間と、所定の閾値とを比較し、比較結果に基づいて監視対象フローに対する攻撃の疑いを検知する。具体的には、攻撃検知部334は、計測部333によって計測された期間が所定の閾値(Dt)を超えている場合に、TCP SYNパケットに対応するフローに対する攻撃の疑い、すなわち、Webサーバ5に対する攻撃の疑いがあることを検知し、該監視対象フローが攻撃被疑フローであると判断する。
図6及び図7は、サーバ装置3による、Webサーバ5へのTCP SYNパケット及びTCP FINパケットの取得タイミングの一例を示す図である。
図5では、計測部333が、フローFaについて、TCP SYNパケットが到達し、TCP FINパケットが到達するまでの期間として、期間D1を計測した場合について示す。この場合、計測部333が計測した期間D1は、閾値Dt以下であるため、攻撃検知部334は、フローFaは、攻撃被疑フローではないと判断する(図6の矢印Ya参照)。
また、図6では、計測部333は、フローFbについて、TCP SYNパケットが到達し、TCP FINパケットが到達するまでの期間として、期間D3を計測した場合について示す。この場合、計測部333が計測した期間D3は、閾値Dtを超えているため、攻撃検知部334は、このフローFbに攻撃があることを検知し、このフローFbを攻撃被疑フローであると判断する(図7の矢印Yb参照)。
攻撃検知部334は、あるフロー(例えば、図1に示すフローFb)に対する攻撃を検知した場合には、該フローを攻撃被疑フローとして、通信部32を介して、転送装置2A〜2D及びセキュリティ装置4に通知する。
まず、攻撃検知部334は、攻撃の疑いを検知した場合には、攻撃の疑いを検知したフローFbのパケットを、攻撃被疑フローのパケットとして、セキュリティ装置4に転送するように転送装置2A〜2Dに指示する。すなわち、攻撃検知部334は、フローFbを攻撃被疑フローとしてコピー、ステアリングし、攻撃被疑フローであるフローFbを、セキュリティ装置4を経由するフローに変更するよう転送装置2A〜2Dに指示する(図1の矢印Y参照)。
そして、攻撃検知部334は、攻撃の疑いを検知したフローであって、転送装置2A〜2Dから転送されたパケットに対応するフローFbが、攻撃被疑フローであることを示す攻撃フロー情報(攻撃検知情報)をセキュリティ装置4に通知する。
なお、サーバ装置3は、転送装置2Bを介してセキュリティ装置4と通信する場合には、転送装置2Bに攻撃被疑フローのパケットのセキュリティ装置4への転送を指示し、これによって、転送装置2Bがセキュリティ装置4にU−Planeのトラフィックを転送する(図1の矢印Y参照)。
通信制御部335は、通信部32における通信処理を制御し、他の装置との間で各種情報を通信する。
そして、閾値設定部336は、抽出対象のフローごとに、該フローのTCP SYNパケットが到達してからTCP FINパケットが到達する期間の比較対象となる閾値を設定する。
具体的には、閾値設定部336は、閾値の設定対象であるフローのパケットのコピーの中から、攻撃のない時間帯における、TCP SYNパケット及び該TCP SYNパケットに対応するTCP FINパケットを収集する。そして、閾値設定部336は、閾値の設定対象であるフローについて、TCP SYNパケットが到達してからTCP FINパケットが到達するまでの期間の度数分布を一定期間作成し、該作成した度数分布を基に、このフローの所定の閾値を設定する。
例えば、閾値設定部336は、攻撃のない時間帯に、パケット取得部331を介して、閾値設定対象フローのパケットのコピーの収集を行ってもよいし、記憶部31に記憶された閾値設定対象フローのパケットのコピーであって攻撃のない時間帯に対応するものを読み出すことによってパケットのコピーの収集を行ってもよい。閾値設定部336は、この処理を複数回繰り返すことによって、TCP SYNパケットが到達してからTCP FINパケットが到達するまでの期間の度数分布を一定期間作成する。
続いて、閾値設定部336は、該作成した閾値設定対象フローのTCP SYNパケットが到達してからTCP FINパケットが到達するまでの期間の度数分布を基に、この期間の所定のα(例えば、99.9)パーセンタイル値を、該閾値設定対象フローにおける閾値として設定する。閾値設定部336は、上記の閾値設定までの処理を、サーバ装置3における攻撃検知処理を開始する前に行う他、攻撃のない時間帯に適宜行って閾値を更新してもよい。閾値設定部336は、設定した閾値を、対応するフローの識別情報に対応付けて記憶部31に記憶する。
[セキュリティ装置の構成]
次に、セキュリティ装置4の構成について説明する。図8は、図1に示すセキュリティ装置4の構成の一例を示す図である。図8に示すように、セキュリティ装置4は、記憶部41、通信部42及び制御部43を有する。
記憶部41は、RAM、フラッシュメモリ等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現され、セキュリティ装置4を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータなどが記憶される。記憶部41は、攻撃解析のために用いる解析用テーブル411を記憶する。
図9は、図8に示す記憶部41が記憶する解析用テーブル411の一例を示す図である。図9のテーブルT3は、DDoS攻撃を解析するためのものであり、攻撃内容と、攻撃のトラフィックパターンとを対応付けている。例えば、テーブルT3の最終行には、不完全なHTTPヘッダを、時間をかけて送信する攻撃トラフィックが検出できる場合には、Webサーバ5が、Slow HTTPヘッダ攻撃の標的となっていることが示されている。
通信部42は、ネットワークを介して接続された装置と各種情報を送受信する通信インターフェースである。
制御部43は、RAM、フラッシュメモリ等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現され、セキュリティ装置4を動作させる処理プログラムや、処理プログラムの実行中に使用されるデータなどが記憶される。制御部43は、攻撃解析部431を有する。
攻撃解析部431は、転送装置2A〜2Dから転送された攻撃被疑フローのパケットを受信した場合、サーバ装置3から攻撃検知情報に基づいて攻撃被疑フローの内容を解析する。攻撃解析部431は、攻撃検知情報である制御信号にしたがって、攻撃検知情報に示された攻撃被疑フローをコピーし、攻撃被疑フローを、セキュリティ装置4を経由するフローに変更するよう処理を行う。
例えば、攻撃解析部431は、攻撃検知情報で示された攻撃被疑フローが、図1に示すフローFbである場合には、このフローFbを、セキュリティ装置4を経由するフロー(図1参照)に変更する。すなわち、セキュリティ装置4は、転送装置2Bを制御して、攻撃被疑フローのパケットの全てを、セキュリティ装置4に転送させる。つまり、転送装置2Bで攻撃被疑フローであるフローFb自体をセキュリティ装置4に引き込んでいる。
そして、セキュリティ装置4は、このように転送させた攻撃被疑フローのパケットから、攻撃被疑フローのトラフィックパターンを検出し、検出したトラフィックパターンと、テーブルT3に示されたトラフィックパターンとを比較して、攻撃内容を解析する。さらに、セキュリティ装置4は、該解析結果に基づいて攻撃対処を行う。
[攻撃検知処理の流れ]
図10は、図1に示す攻撃検知システムによる攻撃検知処理の流れを説明するシーケンス図である。図10では、説明の簡易化のために、ある一つのフローを監視対象フローとした場合の処理手順について示す。
図10に示すように、転送装置2Aは、パケットを受信すると(ステップS1)、所定サーバへのTCP SYNパケット及びTPC FINパケットを抽出し(ステップS2)、抽出したパケットをコピーし(ステップS3)、パケットのコピーをサーバ装置3に送信する(ステップS4)。転送装置2Aは、ステップS1〜ステップS4の処理を繰り返す。
そして、サーバ装置3は、タイマ332の計測時間が所定の閾値を超えているか否かを判断する(ステップS5)。サーバ装置3は、タイマ332の計測時間が所定の閾値を超えていないと判断した場合(ステップS5:No)、パケットのコピーの受信の有無を判断する(ステップS6)。サーバ装置3は、パケットのコピーを受信していないと判断した場合(ステップS6:No)、ステップS5に戻り、計測時間と所定の閾値との比較判断を行う。
サーバ装置3は、パケットのコピーを受信したと判断した場合(ステップS6:Yes)、受信したパケットのコピーは、TCP SYNパケット及びTCP FINパケットのいずれであるかを判断する(ステップS7)。サーバ装置3は、受信したパケットのコピーが、TCP SYNパケットであると判断した場合(ステップS7:TCP SYN)、タイマ332の計測を開始し(ステップS8)、ステップS5に戻り、計測時間と所定の閾値との比較判断を行う。
一方、サーバ装置3は、受信したパケットのコピーは、TCP FINパケットであると判断した場合(ステップS7:TCP FIN)、タイマ332の計測を終了する(ステップS9)。そして、サーバ装置3は、ステップS5に戻り、計測時間と所定の閾値との比較判断を行う。
サーバ装置3は、タイマ332の計測時間が所定の閾値を超えていると判断した場合(ステップS5:Yes)、この計測時間に対応するフローへの攻撃の疑いを検知し(ステップS10)、該フローのパケットを、攻撃被疑フローのパケットとしてセキュリティ装置4に転送するように指示する(ステップS11)。転送装置2Bは、この攻撃被疑フローのパケットをセキュリティ装置4に転送する(ステップS12)。なお、サーバ装置3は、攻撃被疑フローを示す情報を送信して、転送装置2Bで攻撃被疑フロー自体をセキュリティ装置4に引き込んでいる。
セキュリティ装置4は、受信した攻撃被疑フローのパケットを基に攻撃被疑フローの内容を解析して(ステップS13)、攻撃の内容を解析し、該解析結果に基づいて攻撃対処を行う。
[実施の形態の効果]
このように、本実施の形態に係る攻撃検知システムでは、攻撃検知対象の所定サーバへのTCP SYNパケットが到達してから、TCP SYNパケットに対応するフローでのTCP FINパケットが到達するまでの期間を、所定の閾値と比較することによって、所定サーバに対する攻撃を検知する。言い換えると、本実施の形態では、TCP SYNパケットが到達してからTCP FINパケットが到達するまでの期間が所定の閾値を超えていた場合に、該TCP SYNパケットに対応するフローに攻撃が流れていることを検知する。
このため、本実施の形態では、従来のように、監視対象フローの帯域を用いて攻撃を検知するのではなく、TCP SYNパケットが到達してから、TCP SYNパケットに対応するフローのTCP FINパケットが到達するまでの期間を用いて、攻撃を検知する。したがって、本実施の形態によれば、TCP SYNパケットが到達してからTCP FINパケットが到達するまでの期間を計測し、該計測した期間に基づいて攻撃を検知するため、低い通信量で、時間をかけて接続を張り続けることでサーバを攻撃する攻撃を適切に検知することができる。
そして、本実施の形態では、サーバ装置3が検知した攻撃被疑フローのみをセキュリティ装置4に引き込んで、攻撃を解析し、通常通信に対しては、攻撃の解析は行わないため、セキュリティ装置4に要するコストを低減することができる。
また、本実施の形態では、サーバ装置3がSlow Dos攻撃の検知を行うため、Webサーバ5の設定を何ら変更する必要がなく、通常通信(通常ユーザ)のQoSを低下させることもない。もちろん、本実施の形態によれば、サーバ装置3がSlow Dos攻撃の検知を行うため、Webサーバ5においてSlow Dos検知アルゴリズムを動作させる必要もないため、Webアプリケーションの性能に影響を及ぼすこともない。
[他の実施の形態]
[システム構成等]
図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部又は一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
図11は、プログラムが実行されることにより、攻撃検知システムのサーバ装置3が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、サーバ装置3の各処理を規定するプログラムは、コンピュータ1000により実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、サーバ装置3における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN、WAN等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例及び運用技術等は全て本発明の範疇に含まれる。
2A〜2D 転送装置
3 サーバ装置
4 セキュリティ装置
5 Webサーバ
6A 通常ユーザ端末
6B 攻撃者端末
10 ネットワーク
21,31,41 記憶部
22,32,42 通信部
23,33,43 制御部
211 抽出パケット設定テーブル
231 抽出部
232 パケットコピー部
233 転送制御部
331 パケット取得部
332 タイマ
333 計測部
334 攻撃検知部
335 通信制御部
336 閾値設定部
411 解析用テーブル
431 攻撃解析部

Claims (5)

  1. 通過するパケットの中から所定サーバへの接続要求パケット及び前記所定サーバへの切断要求パケットを抽出する転送装置から、該転送装置が抽出したパケットのコピーを取得する取得部と、
    前記取得部が取得したパケットのコピーを基に、前記接続要求パケットが到達してから、前記接続要求パケットに対応するフローでの切断要求パケットが到達するまでの期間を計測する計測部と、
    前記計測部が計測した期間と所定の閾値とを比較し、比較結果に基づいて、前記接続要求パケットに対応するフローに対する攻撃の疑いを検知し、該フローについて攻撃の疑いを検知した場合には、該フローのパケットを、攻撃被疑フローのパケットとして、攻撃の解析を行う攻撃解析装置に転送するように前記転送装置に指示する攻撃検知部と、
    を有することを特徴とする攻撃検知装置。
  2. 前記攻撃検知部は、前記計測部によって計測された期間が前記所定の閾値を超えている場合に、前記接続要求パケットに対応するフローに対する攻撃の疑いがあることを検知することを特徴とする請求項1に記載の攻撃検知装置。
  3. 前記接続要求パケットが到達してから、前記接続要求パケットに対応するフローでの切断要求パケットが到達するまでの期間の度数分布を一定期間作成し、該作成した度数分布を基に前記所定の閾値を設定する設定部をさらに有することを特徴とする請求項1または2に記載の攻撃検知装置。
  4. 複数の転送装置を含むネットワークへの攻撃の疑いを検知する攻撃検知装置と、前記ネットワークへの攻撃を解析する攻撃解析装置と、を有する攻撃検知システムであって、
    前記転送装置は、
    当該転送装置を通過するパケットの中から、所定サーバへの接続要求パケット及び前記所定サーバへの切断要求パケットを抽出する抽出部と、
    前記抽出部が抽出したパケットのコピーを前記攻撃検知装置に送信する送信部と、
    を有し、
    前記攻撃検知装置は、
    前記転送装置から、該転送装置が抽出したパケットのコピーを取得する取得部と、
    前記取得部が取得したパケットのコピーを基に、前記接続要求パケットが到達してから、前記接続要求パケットに対応するフローでの切断要求パケットが到達するまでの期間を計測する計測部と、
    前記計測部が計測した期間と所定の閾値とを比較し、比較結果に基づいて、前記接続要求パケットに対応するフローに対する攻撃の疑いを検知し、該フローについて攻撃の疑いを検知した場合には、該フローのパケットを、攻撃被疑フローのパケットとして、前記攻撃解析装置に転送するように前記転送装置に指示する攻撃検知部と、
    を有し、
    前記攻撃解析装置は、
    前記攻撃被疑フローのパケットを受信した場合に、該攻撃被疑フローの内容を解析する解析部
    を有することを特徴とする攻撃検知システム。
  5. パケットの抽出機能を有する複数の転送装置を含むネットワークのトラフィックへの攻撃の疑いを検知する攻撃検知装置が行う攻撃検知方法であって、
    前記攻撃検知装置が、前記転送装置によって抽出された該転送装置を通過するパケットの中から所定サーバへの接続要求パケット及び前記所定サーバへの切断要求パケットのコピーを取得する取得工程と、
    前記攻撃検知装置が、前記取得工程において取得したパケットのコピーを基に、前記接続要求パケットが到達してから、前記接続要求パケットに対応するフローでの切断要求パケットが到達するまでの期間を計測する計測工程と、
    前記攻撃検知装置が、前記計測工程において計測した期間と所定の閾値とを比較し、比較結果に基づいて、前記接続要求パケットに対応するフローに対する攻撃の疑いを検知する検知工程と、
    前記攻撃検知装置が、前記検知工程において、前記接続要求パケットに対応するフローについて攻撃の疑いを検知した場合には、該フローのパケットを、攻撃被疑フローのパケットとして、攻撃の解析を行う攻撃解析装置に転送するように前記転送装置に指示する指示工程と、
    を含んだことを特徴とする攻撃検知方法。
JP2016158578A 2016-08-12 2016-08-12 攻撃検知装置、攻撃検知システムおよび攻撃検知方法 Active JP6502902B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016158578A JP6502902B2 (ja) 2016-08-12 2016-08-12 攻撃検知装置、攻撃検知システムおよび攻撃検知方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016158578A JP6502902B2 (ja) 2016-08-12 2016-08-12 攻撃検知装置、攻撃検知システムおよび攻撃検知方法

Publications (2)

Publication Number Publication Date
JP2018026747A JP2018026747A (ja) 2018-02-15
JP6502902B2 true JP6502902B2 (ja) 2019-04-17

Family

ID=61194349

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016158578A Active JP6502902B2 (ja) 2016-08-12 2016-08-12 攻撃検知装置、攻撃検知システムおよび攻撃検知方法

Country Status (1)

Country Link
JP (1) JP6502902B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6923809B2 (ja) * 2018-08-23 2021-08-25 日本電信電話株式会社 通信制御システム、ネットワークコントローラ及びコンピュータプログラム
WO2020060231A1 (ko) * 2018-09-19 2020-03-26 주식회사 맥데이타 네트워크 보안 모니터링 방법, 네트워크 보안 모니터링 장치 및 시스템
KR102163280B1 (ko) 2018-09-19 2020-10-08 주식회사 맥데이타 엣지 컴퓨팅 기반 네트워크 모니터링 방법, 장치 및 시스템
JP6825610B2 (ja) * 2018-10-02 2021-02-03 セイコーエプソン株式会社 偏光素子、液晶装置、および電子機器
JP2020136888A (ja) 2019-02-19 2020-08-31 日本電信電話株式会社 検知装置および検知方法
CN114244786B (zh) * 2021-11-30 2024-05-10 深圳市飞速创新技术股份有限公司 安全防护方法、装置、设备和存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10240687A (ja) * 1997-02-28 1998-09-11 Tec Corp ネットワークシステム
JP2007072738A (ja) * 2005-09-07 2007-03-22 Junko Takeuchi 健康管理支援システム及び健康管理支援方法
US9614853B2 (en) * 2015-01-20 2017-04-04 Enzoo, Inc. Session security splitting and application profiler

Also Published As

Publication number Publication date
JP2018026747A (ja) 2018-02-15

Similar Documents

Publication Publication Date Title
JP6502902B2 (ja) 攻撃検知装置、攻撃検知システムおよび攻撃検知方法
EP3144839A1 (en) Detection device, detection method and detection program
EP2289221B1 (en) Network intrusion protection
US10505952B2 (en) Attack detection device, attack detection method, and attack detection program
EP2961111A1 (en) Network monitoring device, network monitoring method, and network monitoring program
US10257213B2 (en) Extraction criterion determination method, communication monitoring system, extraction criterion determination apparatus and extraction criterion determination program
JP2006352831A (ja) ネットワーク制御装置およびその制御方法
JPWO2014119669A1 (ja) ログ分析装置、情報処理方法及びプログラム
JP6086423B2 (ja) 複数センサの観測情報の突合による不正通信検知方法
KR101250899B1 (ko) 응용계층 분산 서비스 거부 공격 탐지 및 차단 장치 및 그 방법
JP2011035932A (ja) ネットワーク制御装置およびその制御方法
JP6592196B2 (ja) 悪性イベント検出装置、悪性イベント検出方法および悪性イベント検出プログラム
JP6470201B2 (ja) 攻撃検知装置、攻撃検知システムおよび攻撃検知方法
WO2019159989A1 (ja) 監視システム、監視方法及び監視プログラム
US20230318956A1 (en) Testing device, testing method, and testing program
JP5926413B1 (ja) 情報処理装置、情報処理方法及びプログラム
JP6476853B2 (ja) ネットワーク監視システム及び方法
JP5925287B1 (ja) 情報処理装置、方法およびプログラム
JP6563872B2 (ja) 通信システム、および、通信方法
JP6145588B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP5992643B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2013255196A (ja) ネットワーク監視装置及びネットワーク監視方法
US9742699B2 (en) Network apparatus and selective information monitoring method using the same
Tesliuk Monitoring network traffic and detecting attacks using eBPF
JPWO2018143096A1 (ja) リクエスト制御装置、リクエスト制御方法、および、リクエスト制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180620

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190306

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190319

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190322

R150 Certificate of patent or registration of utility model

Ref document number: 6502902

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150