JP2015176579A - 通信制御装置、通信制御方法、及びプログラム - Google Patents

通信制御装置、通信制御方法、及びプログラム Download PDF

Info

Publication number
JP2015176579A
JP2015176579A JP2014055078A JP2014055078A JP2015176579A JP 2015176579 A JP2015176579 A JP 2015176579A JP 2014055078 A JP2014055078 A JP 2014055078A JP 2014055078 A JP2014055078 A JP 2014055078A JP 2015176579 A JP2015176579 A JP 2015176579A
Authority
JP
Japan
Prior art keywords
packet
communication
computer
connection
communication control
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.)
Granted
Application number
JP2014055078A
Other languages
English (en)
Other versions
JP6220709B2 (ja
Inventor
久仁男 宮本
Kunio Miyamoto
久仁男 宮本
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.)
NTT Data Group Corp
Original Assignee
NTT Data 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 NTT Data Corp filed Critical NTT Data Corp
Priority to JP2014055078A priority Critical patent/JP6220709B2/ja
Publication of JP2015176579A publication Critical patent/JP2015176579A/ja
Application granted granted Critical
Publication of JP6220709B2 publication Critical patent/JP6220709B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】不正な通信に対する対策を行う。【解決手段】通信制御装置は、送信元及び送信先の2つのコンピュータ装置との間の応答速度よりも送信元のコンピュータ装置と自装置との間の応答速度が速くなるように配置される通信制御装置であって、ネットワークで通信されるTCPパケットを監視し、ネットワークを介して接続された少なくとも2つのコンピュータ装置の間で通信される通信パケットを検知するパケット検知部と、パケット検知部が通信パケットを検知した場合に、当該通信パケットに対する送信先のコンピュータ装置からの返信パケットを無効にするように生成された疑似パケットを、送信元のコンピュータ装置に向けて、返信パケットよりも早く送信させる制御部とを備える。【選択図】図1

Description

本発明は、通信制御装置、通信制御方法、及びプログラムに関する。
ネットワークを介して接続されたコンピュータ端末等の通信装置にアクセスし、不正に情報を取得することを試みる攻撃が存在する。例えば、企業等の組織の内部LAN(Local Area Network)等に接続された通信装置に外部のネットワークから情報を送信し、その応答によって内部LANの状況や通信装置の情報等を不正に解析するなどの攻撃が考えられる。このような攻撃への対策として、例えば内部LANに囮となる通信装置を用意してその通信装置に攻撃させ、そこに攻撃してくる通信を解析したり、内部LAN内の重要な部分に攻撃させないように目を逸らせたりするハニーポットなどともよばれる手法が存在する(例えば、特許文献1参照)。
特開2012−212391号公報
しかしながら、上述のような手法は、外部から内部へのアクセスに対する対策としてはある程度有効であるものの、内部から外部へのアクセスについての対策にはならない。例えば、内部LAN内の通信装置にスパイウェアのような不正プログラムをインストールさせ、その不正プログラムによって内部の通信装置から外部にアクセスさせるような攻撃に対しては、上述のような手法をそのまま適用することはできない。また近年では、このような不正プログラムは、内部LANの情報を一度に外部に対して送信するのではなく、一見すると通常の通信であるような送信情報を、長期間に亘って外部に送信し続けるような攻撃も存在する。そこで、このように内部の通信装置から外部に対して意図しない送信情報が送信されることに対する有効な対策を行うことが望ましい。
本発明は、このような状況に鑑みてなされたもので、その目的は、不正な通信に対する対策を行うことができる通信制御装置、通信制御方法、及びプログラムを提供することにある。
上記問題を解決するために、本発明の一態様は、送信元及び送信先の2つのコンピュータ装置との間の応答速度よりも送信元のコンピュータ装置と自装置との間の応答速度が速くなるように配置される通信制御装置であって、ネットワークで通信されるTCPパケットを監視し、前記ネットワークを介して接続された少なくとも2つのコンピュータ装置の間で通信される通信パケットを検知するパケット検知部と、前記パケット検知部が前記通信パケットを検知した場合に、当該通信パケットに対する送信先のコンピュータ装置からの返信パケットを無効にするように生成された疑似パケットを、送信元のコンピュータ装置に向けて送信させる制御部とを備えることを特徴とする通信制御装置である。
また、本発明の一態様は、上記の通信制御装置において、前記制御部は、前記2つのコンピュータ装置の間でコネクションを確立する際に前記疑似パケットの送信を開始する場合に、シーケンス番号が前記送信先のコンピュータ装置からの前記返信パケットと異なるように生成した前記疑似パケットを、前記送信元のコンピュータ装置に向けて送信させることを特徴とする。
また、本発明の一態様は、上記の通信制御装置において、前記制御部は、前記2つのコンピュータ装置の間でコネクションを確立した後に前記疑似パケットの送信を開始する場合に、ペイロードのデータ数が前記送信先のコンピュータ装置からの前記返信パケットと異なるように生成した前記疑似パケットを、前記送信元のコンピュータ装置に向けて送信させることを特徴とする。
また、本発明の一態様は、上記の通信制御装置において、前記2つのコンピュータ装置には、被攻撃側のコンピュータ装置と、攻撃側のコンピュータ装置とが含まれ、前記制御部は、前記被攻撃側のコンピュータ装置から前記攻撃側のコンピュータ装置に送信された第1の通信パケットに対する前記攻撃側のコンピュータ装置からの第1の返信パケットを無効にするように、第1の疑似パケットを生成し、生成した前記第1の疑似パケットを前記被攻撃側のコンピュータ装置に向けて送信させて、自装置と前記被攻撃側のコンピュータ装置との間の第1のコネクションを確立し、前記攻撃側のコンピュータ装置から前記被攻撃側のコンピュータ装置に送信された第2の通信パケットに対する前記被攻撃側のコンピュータ装置からの第2の返信パケットを無効にするように、第2の疑似パケットを生成し、生成した前記第2の疑似パケットを前記攻撃側のコンピュータ装置に向けて送信させて、自装置と前記攻撃側のコンピュータ装置との間の第2のコネクションを確立することを特徴とする。
また、本発明の一態様は、上記の通信制御装置において、前記制御部は、前記第1のコネクション及び前記第2のコネクションを確立した後に、前記第1のコネクションによって前記被攻撃側のコンピュータ装置から送信された第3の通信パケットのペイロードをダミーデータに変更するとともに、当該第3の通信パケットを前記第2のコネクションにおけるシーケンス番号及び確認応答番号に変更して、前記攻撃側のコンピュータ装置に向けて送信させ、前記第1のコネクション及び前記第2のコネクションを確立した後に、前記第2のコネクションによって前記攻撃側のコンピュータ装置から送信された第4の通信パケットのペイロードをダミーデータに変更するとともに、当該第4の通信パケットを前記第1のコネクションにおけるシーケンス番号及び確認応答番号に変更して、前記被攻撃側のコンピュータ装置に向けて送信させることを特徴とする。
また、本発明の一態様は、上記の通信制御装置において、前記第1のコネクション及び前記第2のコネクションを確立した後に、予め定められたルールに基づいて、前記第3の通信パケット及び前記第4の通信パケットのそれぞれのペイロードをダミーデータに変更するか否かを判定する判定部を備え、前記制御部は、前記判定部が判定した判定結果に基づいて、前記第3の通信パケット及び前記第4の通信パケットのそれぞれのペイロードを、ダミーデータに変更するか否かを切り替えることを特徴とする。
また、本発明の一態様は、送信元及び送信先の2つのコンピュータ装置との間の応答速度よりも送信元のコンピュータ装置と自装置との間の応答速度が速くなるように配置される通信制御装置が、ネットワークで通信されるTCPパケットを監視し、前記ネットワークを介して接続された少なくとも2つのコンピュータ装置の間で通信される通信パケットを検知するパケット検知ステップと、前記通信制御装置が、前記パケット検知ステップにて前記通信パケットを検知した場合に、当該通信パケットに対する送信先のコンピュータ装置からの返信パケットを無効にするように生成された疑似パケットを、送信元のコンピュータ装置に向けて送信する制御ステップとを含むことを特徴とする通信制御方法である。
また、本発明の一態様は、送信元及び送信先の2つのコンピュータ装置との間の応答速度よりも送信元のコンピュータ装置と自装置との間の応答速度が速くなるように配置される通信制御装置のコンピュータに、ネットワークで通信されるTCPパケットを監視し、前記ネットワークを介して接続された少なくとも2つのコンピュータ装置の間で通信される通信パケットを検知するパケット検知ステップと、前記パケット検知ステップにて前記通信パケットを検知した場合に、当該通信パケットに対する送信先のコンピュータ装置からの返信パケットを無効にするように生成された疑似パケットを、送信元のコンピュータ装置に向けて送信させる制御ステップとを実行させるためのプログラムである。
本発明によれば、不正な通信に対する対策を行うことができる。
第1の実施形態による通信制御装置の一例を示す機能ブロック図である。 第1の実施形態における検知対象記憶部のデータ例を示す図である。 第1の実施形態におけるシーケンス管理情報記憶部のデータ例を示す図である。 第1の実施形態における通信制御装置が被攻撃側コンピュータ装置とのコネクションを確立する動作の一例を示す図である。 第1の実施形態における通信制御装置が攻撃側コンピュータ装置とのコネクションを確立する動作の一例を示す図である。 第1の実施形態における通信制御装置の動作の一例を示す図である。 第1の実施形態における通信制御装置が、ダミーデータを転送する場合の動作の一例を示す図である。 第1の実施形態における通信制御装置が、生データを転送する場合の動作一例を示す図である。 第2の実施形態による通信制御装置の一例を示す機能ブロック図である。 第2の実施形態における通信制御装置の動作の一例を示す図である。 第3の実施形態による通信制御装置の一例を示す機能ブロック図である。 第3の実施形態における通信制御装置の動作の一例を示す図である。
以下、本発明の一実施形態による通信制御装置について、図面を参照して説明する。
[第1の実施形態]
図1は、第1の実施形態による通信制御装置1の一例を示す機能ブロック図である。
この図に示すように、本実施形態による通信制御装置1は、ネットワーク機器4を介して、被攻撃側のコンピュータ装置である被攻撃側コンピュータ装置2と、攻撃側のコンピュータ装置である攻撃側コンピュータ装置3とに接続されている。
被攻撃側コンピュータ装置2は、通信制御装置1による監視対象のコンピュータ装置である。被攻撃側コンピュータ装置2は、例えば、企業等の組織内の内部LAN(Local Area Network)に接続されているPC(Personal Computer)である。ここでは、1台の被攻撃側コンピュータ装置2を図示して説明するが、内部LANには複数台の被攻撃側コンピュータ装置2が接続されていてよく、通信制御装置1は、複数台の被攻撃側コンピュータ装置2を監視対象としてよい。また、ここでは、被攻撃側コンピュータ装置2には、何らかの方法により不正プログラム(例えば、マルウェア)がインストールされており、その不正プログラムは、インターネット等のネットワークNWを介して接続された攻撃側コンピュータ装置3を宛先として送信情報(例えば、通信パケット)を送信する。
ネットワーク機器4は、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との通信経路上の転送装置である。ネットワーク機器4としては、例えば、スイッチングハブやルータ等が適用できる。例えば、ネットワーク機器4は、被攻撃側コンピュータ装置2が接続されている内部LANと、攻撃側コンピュータ装置3が接続されている外部のネットワークNWとを接続する。
攻撃側コンピュータ装置3は、不正プログラムがインストールされた被攻撃側コンピュータ装置2からネットワークNWを介して送信される通信パケットを受信して、被攻撃側コンピュータ装置2や、被攻撃側コンピュータ装置2が接続される内部LAN等についての情報を不正に取得しようとするコンピュータ装置である。
通信制御装置1は、通信部10と、記憶部20と、制御部30とを備えている。なお、通信制御装置1及びネットワーク機器4は、被攻撃側コンピュータ装置2と、攻撃側コンピュータ装置3との間の通信経路上に配置されている。すなわち、通信制御装置1は、通信制御装置1と被攻撃側コンピュータ装置2との間の通信に要する時間が、攻撃側コンピュータ装置3と被攻撃側コンピュータ装置2との間の通信に要する時間より短くなるように、配置されているものとする。ここで、通信に要する時間が短くなる(つまり、早く応答できる)ようにする方法としては、例えば、攻撃側コンピュータ装置3と被攻撃側コンピュータ装置2との間の通信回線での応答速度よりも、通信制御装置1と被攻撃側コンピュータ装置2との間の通信回線での応答速度が速くなるように、回線の帯域やネットワーク内での配置位置を決める方法がある。通信制御装置1は、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間の接続(例えば、TCPのコネクション)を乗っ取って、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間での直接通信を行わせずに、双方からの情報を収集する情報収集装置である。
ところで、通信制御装置1が攻撃側コンピュータ装置3と被攻撃側コンピュータ装置2との間の通信を監視する方法としては、例えば、ネットワーク機器4が監視用の機能を備え、攻撃側コンピュータ装置3と被攻撃側コンピュータ装置2との間の通信を含む通信情報を通信制御装置1にも送るようにしてもよい。また、他の方法としては、通信制御装置1を(ネットワーク機器4と同様に)攻撃側コンピュータ装置3と被攻撃側コンピュータ装置2との間の経路上に設置することとしてもよい。具体的には、ネットワーク機器4をシェアードハブや、ネットワークタップとする方法や、ネットワーク機器4がスイッチングハブの場合には被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間の通信が通信制御装置1にも転送されるようにスイッチングハブにポートミラーリングの設定を行う方法がある。
また、通信制御装置1が「接続を乗っ取る」とは、以下に説明する手順で実行される。ます、あるコンピュータ装置(送信元)が他のコンピュータ装置(送信先)に向けてTCPコネクションを確立するための要求パケット(「SYN」パケット)を送信したことを通信制御装置1が検知する。そして、通信制御装置1が、任意のシーケンス番号を含み、ソースアドレスが送信先のコンピュータ装置のIPアドレスの「SYN+ACK」パケットを送信元コンピュータに送信する。なお、この「SYN+ACK」パケットは、通信制御装置1の配置及び回線による応答速度の違いから、送信先のコンピュータ装置からの応答よりも早く送信元のコンピュータ装置に届くことになる。
また、送信元のコンピュータ装置では、送信先のコンピュータ装置とのTCPコネクションの確立に向けた手順が進んだと判定され、通信制御装置1と送信元のコンピュータ装置との間でTCPの通信相手を特定するためのIPアドレス、ポート番号、及びシーケンス番号が共有される。このため、通信制御装置1は、“送信元のコンピュータ装置が送信先のコンピュータ装置に対してTCP手順に基づき送ったパケット”をTCP手順に基づき受け入れ可能な状態となる。しかし、送信先のコンピュータ装置と送信元のコンピュータ装置との間では、シーケンス番号が共有されないため、送信元のコンピュータ装置から送信先のコンピュータ装置に対して、TCP手順に基づきパケット送っても、送信先のコンピュータ装置では、パケットを受領しない状態となる。つまり、送信元のコンピュータ装置から送信先のコンピュータ装置に対して送られたパケットは、TCP手順に基づくと無効なパケットとして扱われる。
このように、送信元のコンピュータ装置から送信先のコンピュータ装置に対して送られたパケットは無効となるが、通信制御装置1は、送信元のコンピュータ装置から送信先のコンピュータ装置に対して送られたTCPパケットを受け取ることができる状態を、「通信制御装置が送信元から送信先のコンピュータ装置に対する接続要求に基づき確立される接続(コネクション)を乗っ取っている」と表現する。
また、通信制御装置1は、上述の乗っ取りに加えて、送信元から送信先のコンピュータ装置への接続要求に対する応答も乗っ取ることができる。
具体的には、通信制御装置1は、送信先のコンピュータ装置から送信元のコンピュータ装置への応答である「SYN+ACK」パケットを検知して、送信先のコンピュータ装置に対して、ソースアドレスが送信元のコンピュータ装置のIPで応答を返す。次に、送信先のコンピュータ装置から送信元のコンピュータ装置に向けた通信についても、通信制御装置1と送信先のコンピュータ装置との間でTCPの通信相手を特定するためのIPアドレス、ポート番号、及びシーケンス番号が共有される。
このため、通信制御装置1は、“送信先のコンピュータ装置が送信元のコンピュータ装置に対してTCP手順に基づき送ったパケット”をTCP手順に基づき受け入れ可能な状態となる。しかし、送信元のコンピュータ装置と送信先のコンピュータ装置との間ではシーケンス番号が共有されないため、送信先のコンピュータ装置から送信元のコンピュータ装置に対してTCP手順に基づきパケット送っても送信元のコンピュータ装置ではパケットを受領しない状態となる。つまり、送信先のコンピュータ装置から送信元のコンピュータ装置に対して送られたパケットは無効なパケットとして扱われる。
以下の説明において、単に「乗っ取る」との表現は、送信元から送信先のコンピュータ装置に対する接続要求に基づき確立される接続(コネクション)を乗っ取る場合、あるいは、その応答についても乗っ取る場合の双方を示すものとする。
通信部10は、ネットワーク機器4を介して、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3との通信を行う。通信部10は、例えば、TCP(Transmission Control Protocol)/IP(Internet Protocol)パケットにより、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3との通信を行う。
記憶部20は、通信制御装置1が実行する各種処理に利用される情報を記憶する。記憶部20は、検知対象記憶部21と、判定ルール記憶部22と、シーケンス管理情報記憶部23と、通信履歴記憶部24とを備えている。
検知対象記憶部21は、検知(監視)対象である被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3に関する情報を記憶する。具体的に、検知対象記憶部21は、被攻撃側コンピュータ装置2のIPアドレスと、攻撃側コンピュータ装置3のIPアドレスとを関連付けて記憶する。ここで、図2を参照して、検知対象記憶部21が記憶するデータ例について説明する。
図2は、本実施形態における検知対象記憶部21のデータ例を示す図である。
この図において、検知対象記憶部21は、「攻撃側IP」と、「被攻撃側IP」とを関連付けて記憶する。ここで、「攻撃側IP」は、攻撃側コンピュータ装置3のIPアドレスを示し、「被攻撃側IP」は、被攻撃側コンピュータ装置2のIPアドレスを示している。
図2に示す例では、「攻撃側IP」が“192.168.0.1”であり、このIPアドレスに対応する攻撃側コンピュータ装置3の攻撃目標となる「被攻撃側IP」が“XXX.0.0.3”及び“XXX.0.0.4”であることを示している。すなわち、“XXX.0.0.3”及び“XXX.0.0.4”のそれぞれに対応するコンピュータ装置が、被攻撃側コンピュータ装置2であることを示している。
図1の説明に戻り、判定ルール記憶部22は、受信したパケットを判定するルール情報を記憶する。判定ルール記憶部22は、例えば、受信したパケットの内容(例えば、ヘッダ部の内容やペイロードの内容など)と、受信したパケットに対する処理とを対応付けて記憶する。判定ルール記憶部22は、例えば、送信元のIPアドレスと、ペイロードの内容を識別するためにペイロードのデータの一部又は全部に基づいて算出されたハッシュデータと、対応する処理を識別する識別情報とを関連付けたルール情報を記憶するようにしてもよい。また、ペイロードの内容を識別するために、ハッシュデータとペイロードのサイズ情報とを利用してもよい。
ここで、ペイロードとは、TCPパケットのうち、ヘッダ部分を除いた、本来転送したいデータ部分のことを示す。また、「対応する処理」とは、受信したパケットに対して通信制御装置1が実行する処理のことであり、例えば、ペイロードのデータをダミーデータに変更して転送する処理、ペイロードのデータをそのまま転送する処理などである。
判定ルール記憶部22には、予め定められたルール情報が記憶されていてもよいし、後述する通信履歴記憶部24に記憶される通信履歴に基づいて、ルール情報が記憶されてもよい。
シーケンス管理情報記憶部23は、被攻撃側コンピュータ装置2や攻撃側コンピュータ装置3との間の接続を通信制御装置1が乗っ取るコネクションの情報を記憶する。シーケンス管理情報記憶部23は、送信元からのコネクション、及び送信先からのコネクションの双方を乗っ取った場合、2つの乗っ取ったコネクションの情報を対応付けて記憶する。シーケンス管理情報記憶部23は、例えば、被攻撃側管理情報と、攻撃側管理情報とを記憶する。ここで、被攻撃側管理情報とは、被攻撃側コンピュータ装置2との間のコネクション(第1のコネクション)に利用する管理情報である。
ここで、コネクションとは、TCPのコネクションのことであり、以下の説明において、「TCPのコネクション」を単に「コネクション」と称して説明する。シーケンス管理情報記憶部23は、例えば、被攻撃側コンピュータ装置2のIPアドレス及びポート番号と、被攻撃側コンピュータ装置2のシーケンス番号(N)と、第1のコネクションにおける通信制御装置1のシーケンス番号(DM)とを関連付けて被攻撃側管理情報として記憶する。
通信制御装置1から被攻撃側コンピュータ装置2に向けて送信するTCPパケットにおいて、シーケンス番号(DM)がシーケンス番号として利用され、シーケンス番号(N)が確認応答番号として利用される。また、被攻撃側コンピュータ装置2から通信制御装置1に向けて送信するTCPパケットにおいて、シーケンス番号(N)がシーケンス番号として利用され、シーケンス番号(DM)が確認応答番号として利用される。
なお、「シーケンス番号」とは、TCPのプロトコルにおける送信側(送信元)のデータの先頭番号を示している。また、「確認応答番号」とは、送信先に対して次に受信予定のデータの先頭番号を示している。「シーケンス番号」及び「確認応答番号」は、TCPパケットのヘッダ部に含まれており、コネクションが確立された正当なTCPパケットであるか否かは、この「シーケンス番号」及び「確認応答番号」を利用して判定される。
また、攻撃側管理情報とは、攻撃側コンピュータ装置3との間のコネクション(第2のコネクション)に利用する管理情報である。シーケンス管理情報記憶部23は、例えば、攻撃側コンピュータ装置3のIPアドレス及びポート番号と、攻撃側コンピュータ装置3のシーケンス番号(M)と、第2のコネクションにおける通信制御装置1のシーケンス番号(DN)とを関連付けて攻撃側管理情報として記憶する。
通信制御装置1から攻撃側コンピュータ装置3に向けて送信するTCPパケットにおいて、シーケンス番号(DN)がシーケンス番号として利用され、シーケンス番号(M)が確認応答番号として利用される。また、攻撃側コンピュータ装置3から通信制御装置1に向けて送信するTCPパケットにおいて、シーケンス番号(M)がシーケンス番号として利用され、シーケンス番号(DN)が確認応答番号として利用される。
ここで、図3を参照して、シーケンス管理情報記憶部23が記憶するデータ例について説明する。
図3は、本実施形態におけるシーケンス管理情報記憶部23のデータ例を示す図である。
この図において、シーケンス管理情報記憶部23は、「IP」と、「ポート番号」と、「SeqNO(N)」と、「SeqNO(DM)」とを関連付けた「被攻撃側管理情報」を記憶する。また、シーケンス管理情報記憶部23は、「IP」と、「ポート番号」と、「SeqNO(M)」と、「SeqNO(DN)」とを関連付けた「攻撃側管理情報」を記憶する。
ここで、「被攻撃側管理情報」の「IP」及び「ポート番号」は、被攻撃側コンピュータ装置2のIPアドレス及びポート番号を示し、「攻撃側管理情報」の「IP」及び「ポート番号」は、被攻撃側コンピュータ装置2のIPアドレス及びポート番号を示している。また、「SeqNO(N)」は、被攻撃側コンピュータ装置2のTCPにおけるシーケンス番号を示し、「SeqNO(DM)」は、通信制御装置1が攻撃側コンピュータ装置3に成りすます際に用いる第1のコネクションにおけるシーケンス番号を示している。また、「SeqNO(M)」は、攻撃側コンピュータ装置3のTCPにおけるシーケンス番号を示し、「SeqNO(DN)」は、通信制御装置1が被攻撃側コンピュータ装置2に成りすます際に用いる第2のコネクションにおけるシーケンス番号を示している。
図3に示す例では、「被攻撃側管理情報」の「IP」及び「ポート番号」が、“XXX.0.0.3”及び“YY”であることを示している。また、この「被攻撃側管理情報」の「IP」に対応する被攻撃側コンピュータ装置2の「SeqNO(N)」が“2”であり、「SeqNO(DM)」が“100”であることを示している。
また、「攻撃側管理情報」の「IP」及び「ポート番号」が、“192.168.0.1”及び“ZZ”であることを示している。また、この「攻撃側管理情報」の「IP」に対応する攻撃側コンピュータ装置3の「SeqNO(M)」が“200”であり、「SeqNO(DN)」が“10”であることを示している。
再び、図1の説明に戻り、通信履歴記憶部24は、被攻撃側コンピュータ装置2と通信制御装置1との間の通信パケット、及び通信制御装置1と攻撃側コンピュータ装置3との間の通信パケットを通信履歴として記憶する。ここで、通信履歴記憶部24が、通信履歴を記憶することにより、攻撃側コンピュータ装置3及び被攻撃側コンピュータ装置2の不正プログラムの動作を解析することが可能になる。
制御部30は、例えば、CPU(Central Processing Unit)などを含むプロセッサであり、通信制御装置1を統括的に制御する。制御部30は、例えば、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間でコネクションを確立する際に、当該コネクションを乗っ取って、自装置と被攻撃側コンピュータ装置2との間の第1のコネクションと、自装置と攻撃側コンピュータ装置3との間の第2のコネクションとを確立する。
具体的には、通常はTCPコネクションが確立している両端の端末、つまり、攻撃側コンピュータ装置3と被攻撃側コンピュータ装置2との間でTCPのシーケンス番号が共有されるが、通信制御装置1がセッションを乗っ取る場合、攻撃側コンピュータ装置3と通信制御装置1の間、被攻撃側コンピュータ装置2と通信制御装置1との間で別のシーケンス番号が共有される。つまり、両端の端末の間では、シーケンス番号が共有されない。
例えば、攻撃側コンピュータ装置3と通信制御装置1の間で共有されるシーケンス番号がDMであり、被攻撃側コンピュータ装置2と通信制御装置1との間共有されるシーケンス番号がDNである。この場合、両端の端末ではTCPのシーケンス番号が共有されていないために直接通信することはできないが、攻撃側コンピュータ装置3と通信制御装置1との間、被攻撃側コンピュータ装置2と通信制御装置1との間では、それぞれシーケンス番号が共有されている。そのため、通信制御装置1は、例えば、攻撃側コンピュータ装置3が被攻撃側コンピュータ装置2に対して送信したTCPパケットに対して応答を返すことができる。また、被攻撃側コンピュータ装置2が攻撃側コンピュータ装置3に対して送信したTCPパケットに対しても、通信制御装置1は、共有しているシーケンス番号を使って応答することができる。なお、受信したTCPパケットのシーケンス番号が、共有しているシーケンス番号とは異なる値である場合には、受信されたTCPパケットは、無効なパケットとして扱われる。
このように、制御部30は、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3の通信状態を維持しつつ、被攻撃側コンピュータ装置2との攻撃側コンピュータ装置3と直接の通信を禁止する。
制御部30は、パケット検知部31と、パケット判定部32と、疑似応答制御部33とを備えている。
パケット検知部31(判定部)は、ネットワーク(例えば、内部LAN内)で通信されるTCPパケットを監視し、ネットワークを介して接続された少なくとも2つのコンピュータ装置の間で通信される通信パケットを検知する。なお、ここでの2つのコンピュータ装置は、例えば、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3とのことである。パケット検知部31は、ネットワーク機器4及び通信部10を介して、TCPパケットを受信し、受信したTCPパケットのうち、例えば、検知対象記憶部21が記憶する情報に基づいて、検知(監視)対象である通信パケットを検知する。ここで、通信パケットには、被攻撃側コンピュータ装置2から攻撃側コンピュータ装置3に向けて送信されたTCPパケットと、攻撃側コンピュータ装置3から被攻撃側コンピュータ装置2に向けて送信されたTCPパケットとが含まれる。
なお、以下の説明において、第1のコネクション及び第2のコネクションを確立する前に、被攻撃側コンピュータ装置2から攻撃側コンピュータ装置3に向けて送信されたTCPパケットを第1の通信パケットと称することがある。また、第1のコネクション及び第2のコネクションを確立する前に、攻撃側コンピュータ装置3から被攻撃側コンピュータ装置2に向けて送信されたTCPパケットを第2の通信パケットと称することがある。さらに、第1のコネクション及び第2のコネクションを確立した後に、被攻撃側コンピュータ装置2から攻撃側コンピュータ装置3に向けて送信されたTCPパケットを第3の通信パケットと称することがある。また、第1のコネクション及び第2のコネクションを確立した後に、攻撃側コンピュータ装置3から被攻撃側コンピュータ装置2に向けて送信されたTCPパケットを第4の通信パケットと称することがある。
パケット判定部32は、パケット検知部31が検知した通信パケットを、判定ルール記憶部22が記憶するルール情報に基づいて判定し、判定結果に応じた処理を決定する。パケット判定部32は、例えば、上述した第1のコネクション及び第2のコネクションを確立する前に、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3とのコネクションを乗っ取り、第1のコネクション及び第2のコネクションを確立する処理を開始するための所定の通信パケットであるか否かを判定する。なお、本実施形態では、パケット判定部32は、通信パケットが被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3とのコネクションを確立するための「SYN」パケットである場合に、上述の所定の通信パケットでると判定する。
また、パケット判定部32は、第1のコネクション及び第2のコネクションを確立した後に、判定ルール記憶部22が記憶するルール情報に基づいて、通信パケットのペイロードをダミーデータに変更するか否かを判定する。すなわち、パケット判定部32は、第1のコネクション及び第2のコネクションを確立した後に、予め定められたルールに基づいて、第3の通信パケット及び第4の通信パケットのそれぞれのペイロードをダミーデータに変更するか否かを判定する。
疑似応答制御部33(制御部)は、パケット検知部31が通信パケットを検知した場合に、当該通信パケットに対する送信先のコンピュータ装置からの返信パケットを無効にするように生成された(つまり、疑似応答制御部33で独自に生成したシーケンス番号を含む)疑似パケットを、送信元のコンピュータ装置に向けて、返信パケットよりも早く送信させる。なお、通信制御装置1と送信元のコンピュータ装置との間の応答速度は、送信先のコンピュータ装置と送信元のコンピュータ装置との間の応答速度よりも速くなるように通信制御装置1を設置している。そのため、通信制御装置1で生成された疑似パケットは、送信先のコンピュータ装置からの応答よりも早く送信元のコンピュータ装置に到着する。ここで、疑似パケットとは、送信先のコンピュータ装置に成りすました偽装された返信パケットであり、この疑似パケットにより通信制御装置1は、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間のコネクションを乗っ取る。
疑似応答制御部33は、例えば、被攻撃側コンピュータ装置2から攻撃側コンピュータ装置3に送信された第1の通信パケットに対する攻撃側コンピュータ装置3からの第1の返信パケットを無効にするように、第1の疑似パケットを生成する。ここで、疑似応答制御部33は、独自に生成したシーケンス番号を含む第1の疑似パケットを生成する。そして、疑似応答制御部33は、生成した第1の疑似パケットを被攻撃側コンピュータ装置2に向けて送信させて、自装置(通信制御装置1)と被攻撃側コンピュータ装置2との間の第1のコネクションを確立する。なお、通信制御装置1と被攻撃側コンピュータ装置2との間の応答速度は、攻撃側コンピュータ装置3と被攻撃側コンピュータ装置2との間の応答速度よりも速くなるように通信制御装置1を設置している。そのため、第1の疑似パケットは、攻撃側コンピュータ装置3からの応答(第1の返信パケット)よりも早く被攻撃側コンピュータ装置2に到着する。
また、疑似応答制御部33は、例えば、攻撃側コンピュータ装置3から被攻撃側コンピュータ装置2に送信された第2の通信パケットに対する被攻撃側コンピュータ装置2からの第2の返信パケットを無効にするように、第2の疑似パケットを生成する。ここで、疑似応答制御部33は、攻撃側コンピュータ装置3にとって正当なTCPパケットとなる第1の疑似パケットを生成する。疑似応答制御部33は、生成した第2の疑似パケットを攻撃側コンピュータ装置3に向けて送信させて、自装置と攻撃側コンピュータ装置3との間の第2のコネクションを確立する。なお、通信制御装置1と攻撃側コンピュータ装置3との間の応答速度は、攻撃側コンピュータ装置3と被攻撃側コンピュータ装置2との間の応答速度よりも速くなるように通信制御装置1を設置している。そのため、第2の疑似パケットは、被攻撃側コンピュータ装置2からの応答(第2の返信パケット)よりも早く被攻撃側コンピュータ装置2に到着する。
なお、本実施形態では、疑似応答制御部33は、2つのコンピュータ装置(被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3)の間でコネクションを確立する際に疑似パケットの送信を開始する。疑似応答制御部33は、この場合に、シーケンス番号が送信先のコンピュータ装置からの返信パケットと異なるように生成した疑似パケットを、送信元のコンピュータ装置に向けて送信させる。
なお、コネクションの確立の際には、2つのコンピュータ装置それぞれでシーケンス番号を独自に生成することとなっている。そのため、例えば、疑似応答制御部33が乱数を用いてシーケンス番号を生成し、生成したシーケンス番号を含む疑似パケットを生成すれば、シーケンス番号が送信先のコンピュータ装置からの返信パケットと異なるように疑似パケットを生成することができる。本来のコンピュータ装置で生成されるシーケンス番号と、疑似応答制御部33が生成するシーケンス番号とが衝突する確率はきわめて低いため、疑似応答制御部33が、任意にシーケンス番号を生成しても支障ない。
また、疑似応答制御部33は、第1のコネクション及び第2のコネクションを確立した後に、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3に成りすまして、双方の通信を維持しつつ、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3から情報を引き出す制御を行う。
疑似応答制御部33は、例えば、第1のコネクションによって被攻撃側コンピュータ装置2から攻撃側コンピュータ装置3に向けて送信された第3の通信パケットを通信履歴として、通信履歴記憶部24に記憶させる。そして、疑似応答制御部33は、シーケンス管理情報記憶部23が記憶する管理情報に基づいて、第3の通信パケットを第2のコネクション用のシーケンス番号及び確認応答番号に変更して、第1の転送パケットとして攻撃側コンピュータ装置3に向けて送信(転送)する。また、疑似応答制御部33は、この第3の通信パケットのペイロードをダミーデータに変更して転送する。
また、同様に、疑似応答制御部33は、例えば、第2のコネクションによって攻撃側コンピュータ装置3から被攻撃側コンピュータ装置2に向けて送信された第4の通信パケットを通信履歴として、通信履歴記憶部24に記憶させる。そして、疑似応答制御部33は、シーケンス管理情報記憶部23が記憶する管理情報に基づいて、第4の通信パケットを第1のコネクション用のシーケンス番号及び確認応答番号に変更して、第2の転送パケットとして被攻撃側コンピュータ装置2に向けて送信(転送)する。また、疑似応答制御部33は、この第3の通信パケットのペイロードをダミーデータに変更して転送する。
なお、第1の転送パケットと第2の転送パケットとを総称して転送パケットと称する。
なお、疑似応答制御部33は、例えば、ペイロードの内容が安全であると予め判明している場合や、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3から情報を引き出す場合には、第3の通信パケットのペイロードをダミーデータに変更せずに転送する。また、自装置が成りすましていることを、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3に検知される可能性がある場合には、疑似応答制御部33は、所定の頻度で、第3の通信パケットのペイロードをダミーデータに変更せずに転送してもよい。
ここで、ペイロードをダミーデータに変更するか否かは、上述したパケット判定部32が、判定ルール記憶部22が記憶するルール情報に基づいて判定する。すなわち、疑似応答制御部33は、パケット判定部32が判定した判定結果に基づいて、第3の通信パケット及び第4の通信パケットのそれぞれのペイロードをダミーデータに変更するか否かを切り替える。
また、疑似応答制御部33は、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3の双方との通信を維持するために、通信制御装置1から被攻撃側コンピュータ装置2又は攻撃側コンピュータ装置3に向けて所定の送信パケットを送信する。また、疑似応答制御部33は、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3の双方との通信を維持するために、被攻撃側コンピュータ装置2又は攻撃側コンピュータ装置3から受信した通信パケットに対して、通信制御装置1から送信元に所定の返信パケットを送信する。
また、疑似応答制御部33は、応答生成部331と、送信制御部332とを備えている。
応答生成部331は、上述した疑似パケット、転送パケット、送信パケット、及び返信パケットなどの通信制御装置1から他装置に向けて送信するTCPパケットを生成する。応答生成部331は、例えば、シーケンス管理情報記憶部23が記憶する攻撃側管理情報又は被攻撃側管理情報に基づくTCPのヘッダ部を含むTCPパケットを生成する。例えば、応答生成部331は、第1のコネクションにより、被攻撃側コンピュータ装置2に向けたTCPパケットを生成する場合には、シーケンス管理情報記憶部23が記憶する被攻撃側管理情報に基づくシーケンス番号及び確認応答番号を含むTCPパケットを生成する。また、応答生成部331は、第2のコネクションにより、攻撃側コンピュータ装置3に向けたTCPパケットを生成する場合には、シーケンス管理情報記憶部23が記憶する攻撃側管理情報に基づくシーケンス番号及び確認応答番号を含むTCPパケットを生成する。
また、応答生成部331は、パケット判定部32の判定結果に基づいて、疑似パケット、転送パケット、及び返信パケットなどのTCPパケットを生成する。また、転送パケットを生成する場合には、応答生成部331は、パケット判定部32の判定結果に基づいて、ペイロードをダミーデータに変更するか否かを切り替えて、転送パケットを生成する。
また、応答生成部331は、例えば、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3の情報収集のために、通信制御装置1を管理する管理者からの指令に基づいて、送信パケットなどのTCPパケットを生成する。
なお、応答生成部331は、第1のコネクション用のシーケンス番号(DM)と、第2のコネクション用のシーケンス番号(M)との差が所定の閾値分以上になるように、TCPパケットのペイロードのデータ数を調整してTCPパケットを生成してもよい。また、応答生成部331は、第1のコネクション用のシーケンス番号(N)と、第2のコネクション用のシーケンス番号(DN)との差が所定の閾値分以上になるように、TCPパケットのペイロードのデータ数を調整してTCPパケットを生成してもよい。
送信制御部332は、応答生成部331が生成したTCPパケットを被攻撃側コンピュータ装置2又は攻撃側コンピュータ装置3に向けて通信部10を介して送信させる制御を行う。
次に、本実施形態による通信制御装置1の動作について、図面を参照して説明する。
図4は、本実施形態における通信制御装置1が被攻撃側コンピュータ装置2とのコネクションを確立する動作の一例を示す図である。
この図では、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間のコネクションを確立する際に、通信制御装置1が、確立しようとしている当該コネクションを乗っ取って、通信制御装置1と被攻撃側コンピュータ装置2との間の第1のコネクションを確立する場合の一例を示している。
なお、図4において、“SegNO”は、TCPのシーケンス番号を示し、“Ack”は、TCPの確認応答番号を示す。
図4の(1)に示すように、まず、被攻撃側コンピュータ装置2が、「SYN」パケット(SegNO=n)を攻撃側コンピュータ装置3に向けて送信する(ステップS101)。
次に、通信制御装置1は、「SYN」パケット(SegNO=n)に対して、「SYN+ACK」パケット(SeqNO(=DM)=dm、Ack=n+1)を被攻撃側コンピュータ装置2に向けて送信する(図4の(2)、ステップS102)。すなわち、通信制御装置1は、ネットワーク機器4を介して、この「SYN」パケット(SeqNO=n)を受信する。通信制御装置1の疑似応答制御部33は、受信した「SYN」パケットに含まれる、被攻撃側コンピュータ装置2の「IP」及び「ポート番号」と、「SeqNO(N=n)」とを関連付けてシーケンス管理情報記憶部23に記憶させる。
また、疑似応答制御部33は、例えば、乱数生成器(付図示)などにより生成した乱数に基づいて、シーケンス番号(DM)を生成する。なお、疑似応答制御部33は、このシーケンス番号(DM)を攻撃側コンピュータ装置3のシーケンス番号(M)と一致しないように、乱数に基づいて生成する。なお、ここでは、各装置のシーケンス番号の初期値は、「SeqNO(DM)」が“dm”、「SeqNO(N)」が“n”、「SeqNO(M)」が“m”、及び「SeqNO(DN)」が“n”であるものとして説明する。
疑似応答制御部33は、生成したシーケンス番号(DM)を「SeqNO(DM)」として、シーケンス管理情報記憶部23に記憶させる。そして、疑似応答制御部33の応答生成部331は、生成したシーケンス番号(DM)を含む「SYN+ACK」パケット(SeqNO(=DM)=dm、Ack=n+1)を疑似パケットとして生成する。
疑似応答制御部33の送信制御部332は、「SYN+ACK」パケット(SeqNO(=DM)=dm、Ack=n+1)を被攻撃側コンピュータ装置2に向けて通信部10を介して送信させる。なお、「SYN」パケット(SeqNO=n)は、攻撃側コンピュータ装置3に送信されているが、送信制御部332は、攻撃側コンピュータ装置3が送信する返信パケット(「SYN+ACK」パケット)よりも早くに(先に)、被攻撃側コンピュータ装置2に向けて「SYN+ACK」パケット(SeqNO(=DM)=dm、Ack=n+1)を送信させる。すなわち、疑似応答制御部33は、後述する攻撃側コンピュータ装置3からの「SYN+ACK」パケット(図5の(4)、ステップS201)とシーケンス番号が異なるように生成した疑似パケットを、攻撃側コンピュータ装置3より先に被攻撃側コンピュータ装置2に向けて送信する。
なお、通信制御装置1は、例えば、乱数に基づいてシーケンス番号(DM)を生成すので、攻撃側コンピュータ装置3で生成されるシーケンス番号(M)と番号が一致する確率がきわめて低い。そのため、通信制御装置1は、実質的に支障が生じることがない。また、通信制御装置1は、生成した疑似パケットを被攻撃側コンピュータ装置2に送信した場合に、通信制御装置1の配置により攻撃側コンピュータ装置3からの応答(返信パケット)よりも疑似パケットが先に攻撃側コンピュータ装置3に到着する.
次に、被攻撃側コンピュータ装置2は、「SYN+ACK」パケットに対して、「ACK」パケット(SeqNO=n+1、Ack=dm+1)を送信する(図4の(3)、ステップS103)。この「ACK」パケットは、通信制御装置1により受信され、第1のコネクションが確立される。なお、この「ACK」パケットは、攻撃側コンピュータ装置3においても受信されるが、シーケンス番号(M=m)と異なるため、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間でコネクションを確立することができない。すなわち、通信制御装置1は、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間のコネクションを乗っ取り、第1のコネクションを確立する。
また、図5は、本実施形態における通信制御装置1が攻撃側コンピュータ装置3とのコネクションを確立する動作の一例を示す図である。
この図では、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間のコネクションを確立する際に、通信制御装置1が、確立しようとしている当該コネクションを乗っ取って、通信制御装置1と攻撃側コンピュータ装置3との間の第2のコネクションを確立する場合の一例を示している。ここでは、図4に示すステップS101の処理に続く処理を示している。
「SYN」パケット(SegNO=n)(図4の(1)、ステップS101)に対して、図5の(4)に示すように、攻撃側コンピュータ装置3が、「SYN+ACK」パケット(SeqNO=m、Ack=n+1)を被攻撃側コンピュータ装置2に向けて送信する(ステップS201)。
通信制御装置1は、この「SYN+ACK」パケット(SeqNO=m、Ack=n+1)に対して、「ACK」パケット(SeqNO(=DN)=n+1、Ack=m+1)を攻撃側コンピュータ装置3に向けて送信する(図5の(5)、ステップS202)。すなわち、通信制御装置1は、ネットワーク機器4を介して、この「SYN+ACK」パケット(SeqNO=m、Ack=n+1)を受信する。通信制御装置1の疑似応答制御部33は、受信した「SYN+ACK」パケットに含まれる、攻撃側コンピュータ装置3の「IP」及び「ポート番号」と、「SeqNO(M=m)」と、「SeqNO(DN=n+1)」とを関連付けてシーケンス管理情報記憶部23に記憶させる。ここでは、疑似応答制御部33は、受信したシーケンス番号(DN=n+1)を「SeqNO(DN)」として、シーケンス管理情報記憶部23に記憶させる。そして、疑似応答制御部33の応答生成部331は、生成したシーケンス番号(DN)を含む「ACK」パケット(SeqNO(=DN)=n+1、Ack=m+1)を疑似パケットとして生成する。
疑似応答制御部33の送信制御部332は、応答生成部331が生成した「ACK」パケット(SeqNO(=DN)=n+1、Ack=m+1)を攻撃側コンピュータ装置3に向けて通信部10を介して送信させる。なお、通信制御装置1は、生成した疑似パケット(「ACK」パケット(SeqNO(=DN)=n+1、Ack=m+1))を攻撃側コンピュータ装置3に送信した場合に、通信制御装置1の配置により被攻撃側コンピュータ装置2からの応答(返信パケット)よりも疑似パケットが先に被攻撃側コンピュータ装置2に到着する。攻撃側コンピュータ装置3が、通信制御装置1からの「ACK」パケット(SeqNO(=DN)=n+1、Ack=m+1)を受信することで、第2のコネクションが確立される。
このように、通信制御装置1は、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間のコネクションを乗っ取り、第2のコネクションを確立する。
なお、第1のコネクション及び第2のコネクションを確立した後は、送信制御部332は、第1のコネクション及び第2のコネクションによる通信に応じて、シーケンス管理情報記憶部23のシーケンス番号(N)、シーケンス番号(DM)、シーケンス番号(M)、及びシーケンス番号(DN)を更新させる。
次に、図6を参照して、コネクションの乗っ取りからその後の通信までの通信制御装置1の動作について説明する。
図6は、本実施形態における通信制御装置1の動作の一例を示す図である。
この図において、まず、被攻撃側コンピュータ装置2が「SYN」パケット(SeqNO=n)を攻撃側コンピュータ装置3に向けて送信する(ステップS101)。この「SYN」パケット(SeqNO=n)は、通信制御装置1及び攻撃側コンピュータ装置3により受信される。
次に、通信制御装置1は、「SYN」パケット(SeqNO=n)に対して、上述の図4で説明したように、「SYN+ACK」パケット(SeqNO(=DM)=dm、Ack=n+1)を攻撃側コンピュータ装置3よりも先に被攻撃側コンピュータ装置2に向けて送信する(ステップS102)。
被攻撃側コンピュータ装置2は、「SYN+ACK」パケット(SeqNO(=DM)=dm、Ack=n+1)に対して、「ACK」パケット(SeqNO=n+1、Ack=dm+1)を送信する(ステップS103)。このパケットを通信制御装置1が受信することで、第1のコネクションが確立される。これにより、通信制御装置1は、被攻撃側コンピュータ装置2に対して、攻撃側コンピュータ装置3に成りすまして通信を行うことが可能になる。
また、一方で、攻撃側コンピュータ装置3は、「SYN」パケット(SeqNO=n)に対して、上述の図5で説明したように、「SYN+ACK」パケット(SeqNO=m、Ack=n+1)を被攻撃側コンピュータ装置2に向けて送信する(ステップS201)。
次に、通信制御装置1は、「SYN+ACK」パケット(SeqNO=m、Ack=n+1)に対して、上述の図5で説明したように、「ACK」パケット(SeqNO(=DN)=n+1、Ack=m+1)を被攻撃側コンピュータ装置2よりも先に攻撃側コンピュータ装置3に向けて送信する(ステップS202)。このパケットを攻撃側コンピュータ装置3が受信することで、第2のコネクションが確立される。これにより、通信制御装置1は、攻撃側コンピュータ装置3に対して、攻撃側コンピュータ装置3に成りすまして通信を行うことが可能になる。
また、被攻撃側コンピュータ装置2は、ステップS201により送信された「SYN+ACK」パケット(SeqNO=m、Ack=n+1)に対して、「RST+ACK」パケット(SeqNO=n+1、Ack=m+1)を攻撃側コンピュータ装置3に向けて送信する(ステップS104)。すなわち、被攻撃側コンピュータ装置2は、コネクションを確立していない攻撃側コンピュータ装置3からの「SYN+ACK」パケット(SeqNO=m、Ack=n+1)を不正なパケットと判定し、「RST+ACK」パケット(SeqNO=n+1、Ack=m+1)を攻撃側コンピュータ装置3に向けて送信する。攻撃側コンピュータ装置3は、被攻撃側コンピュータ装置2との間のコネクションが確立していない状態(接続されていない状態)であるため、この「RST+ACK」パケットを廃棄する。
また、攻撃側コンピュータ装置3は、ステップS103により送信された「ACK」パケット(SeqNO=n+1、Ack=dm+1)に対して、「RST+ACK」パケット(SeqNO=m+1、Ack=n+1)を被攻撃側コンピュータ装置2に向けて送信する(ステップS203)。すなわち、攻撃側コンピュータ装置3は、コネクションを確立していない被攻撃側コンピュータ装置2からの「ACK」パケット(SeqNO=n+1、Ack=dm+1)を不正なパケットと判定し、「RST+ACK」パケット(SeqNO=m+1、Ack=n+1)を被攻撃側コンピュータ装置2に向けて送信する。被攻撃側コンピュータ装置2は、攻撃側コンピュータ装置3との間のコネクションが確立していない状態(接続されていない状態)であるため、この「RST+ACK」パケットを廃棄する。
次に、被攻撃側コンピュータ装置2から例えば、Xバイトのデータを送信する場合の一例を説明する。この場合、被攻撃側コンピュータ装置2は、第1のコネクションにより、「ACK」パケット(SeqNO=n+1、Ack=m+1、Xバイト)を送信する(ステップS105)。なお、この場合の「ACK」パケットには、ペイロードにXバイトのデータが含まれる。
通信制御装置1は、「ACK」パケット(SeqNO=n+1、Ack=m+1、Xバイト)に対して、第1のコネクションにより、「ACK」パケット(SeqNO(=DM)=dm+1、Ack(=N)=n+1+X)を被攻撃側コンピュータ装置2に向けて送信する(ステップS106)。すなわち、通信制御装置1の疑似応答制御部33は、受信した「ACK」パケット(SeqNO=n+1、Ack=m+1、Xバイト)を通信履歴として通信履歴記憶部24に記憶させる。また、疑似応答制御部33は、受信した「ACK」パケット(SeqNO=n+1、Ack=m+1、Xバイト)に基づいて、シーケンス管理情報記憶部23の被攻撃側管理情報を更新する。
そして、疑似応答制御部33の応答生成部331は、この被攻撃側管理情報に基づくTCPのヘッダ部を含む生成した「ACK」パケット(SeqNO(=DM)=dm+1、Ack(=N)=n+1+X)を生成する。疑似応答制御部33の送信制御部332は、応答生成部331が生成した「ACK」パケット(SeqNO(=DM)=dm+1、Ack(=N)=n+1+X)を被攻撃側コンピュータ装置2に向けて送信させる。
また、攻撃側コンピュータ装置3は、ステップS105により送信された「ACK」パケット(SeqNO=n+1、Ack=m+1、Xバイト)に対して、「RST+ACK」パケット(SeqNO=m+1、Ack=n+1)を被攻撃側コンピュータ装置2に向けて送信する(ステップS204)。なお、被攻撃側コンピュータ装置2は、攻撃側コンピュータ装置3との間のコネクションが確立していない状態(接続されていない状態)であるため、この「RST+ACK」パケットを廃棄する。
次に、攻撃側コンピュータ装置3から例えば、Yバイトのデータを送信する場合の一例を説明する。この場合、攻撃側コンピュータ装置3は、第2のコネクションにより、「ACK」パケット(SeqNO=m+1、Ack=n+1、Yバイト)を送信する(ステップS205)。なお、この場合の「ACK」パケットには、ペイロードにYバイトのデータが含まれる。
通信制御装置1は、「ACK」パケット(SeqNO=m+1、Ack=n+1、Yバイト)に対して、第2のコネクションにより、「ACK」パケット(SeqNO(=DN)=n+1、Ack(=M)=m+1+Y)を攻撃側コンピュータ装置3に向けて送信する(ステップS206)。すなわち、通信制御装置1の疑似応答制御部33は、受信した「ACK」パケット(SeqNO=m+1、Ack=n+1、Yバイト)を通信履歴として通信履歴記憶部24に記憶させる。また、疑似応答制御部33は、受信した「ACK」パケット(SeqNO=m+1、Ack=n+1、Yバイト)に基づいて、シーケンス管理情報記憶部23の攻撃側管理情報を更新する。
そして、疑似応答制御部33の応答生成部331は、この攻撃側管理情報に基づくTCPのヘッダ部を含む生成した「ACK」パケット(SeqNO(=DN)=n+1、Ack(=M)=m+1+Y)を生成する。疑似応答制御部33の送信制御部332は、応答生成部331が生成した「ACK」パケット(SeqNO(=DN)=n+1、Ack(=M)=m+1+Y)を攻撃側コンピュータ装置3に向けて送信させる。
また、被攻撃側コンピュータ装置2は、ステップS205により送信された「ACK」パケット(SeqNO=m+1、Ack=n+1、Yバイト)に対して、「RST+ACK」パケット(SeqNO=n+1+X、Ack=dm+1)を攻撃側コンピュータ装置3に向けて送信する(ステップS107)。なお、攻撃側コンピュータ装置3は、被攻撃側コンピュータ装置2との間のコネクションが確立していない状態(接続されていない状態)であるため、この「RST+ACK」パケットを廃棄する。
このように、第1のコネクション及び第2のコネクションを確立した後に、通信制御装置1は、被攻撃側コンピュータ装置2と通信制御装置1との間の通信、及び攻撃側コンピュータ装置3と通信制御装置1との間の通信の制御を行う。
なお、上述した図4〜図6に示す例では、コネクションの確立が被攻撃側コンピュータ装置2から開始される場合について説明したが、コネクションの確立が攻撃側コンピュータ装置3から開始される場合についても同様である。但し、その場合には、通信制御装置1は、疑似パケットにおいて、第2のコネクションにおけるシーケンス番号(DN)を生成することになる。
次に、図7を参照して、通信制御装置1が、被攻撃側コンピュータ装置2と通信制御装置1との間でデータをダミーデータに置き換えて転送する場合の一例について説明する。
図7は、本実施形態における通信制御装置1が、ダミーデータを転送する場合の動作の一例を示す図である。
この図において、第1のコネクション及び第2のコネクションを確立した後の状態であり、各装置のシーケンス番号の初期値は、「SeqNO(DM)」が“dm+1”、「SeqNO(N)」が“n+1”、「SeqNO(DN)」が“n+1”、及び「SeqNO(M)」が“m+1”であるものとして説明する。
図7において、まず、攻撃側コンピュータ装置3は、第2のコネクションにより、「ACK」パケット(SeqNO=m+1、Ack=n+1、DATA1)を送信する(ステップS211)。なお、この場合の「ACK」パケットには、例えば、αバイトのデータ(DATA1)が含まれているものとする。
次に、通信制御装置1は、「ACK」パケット(SeqNO=m+1、Ack=n+1、DATA1)に対して、第1のコネクションにより、「ACK」パケット(SeqNO(=DM)=dm+1、Ack(=N)=n+1、DMYD1)を被攻撃側コンピュータ装置2に向けて送信(転送)する(ステップS111)。すなわち、通信制御装置1の疑似応答制御部33は、受信した「ACK」パケット(SeqNO=m+1、Ack=n+1、DATA1)のペイロードをダミーデータ(DMYD1)に変更するとともに、第1のコネクションにおけるシーケンス番号及び確認応答番号に変更した転送パケットを被攻撃側コンピュータ装置2に向けて送信する。なお、疑似応答制御部33は、パケット判定部32が判定した判定結果に基づいて、ペイロードをダミーデータに変更するか否かを切り替える。また、ダミーデータ(DMYD1)のサイズは、データ(DATA1)と等しく、αバイトとする。
この場合、通信制御装置1は、無害化したダミーデータ(DMYD1)を被攻撃側コンピュータ装置2に送信するので、攻撃側コンピュータ装置3から被攻撃側コンピュータ装置2を不正に操作することを防止することができる。
また、被攻撃側コンピュータ装置2は、ステップS211により送信された「ACK」パケット(SeqNO=m+1、Ack=n+1、DATA1)に対して、「RST+ACK」パケット(SeqNO=n+1、Ack=dm+1)を攻撃側コンピュータ装置3に向けて送信する(ステップS112)。なお、攻撃側コンピュータ装置3は、被攻撃側コンピュータ装置2との間のコネクションが確立していない状態(接続されていない状態)であるため、この「RST+ACK」パケットを廃棄する。
また、被攻撃側コンピュータ装置2は、例えば、ステップS111により送信された「ACK」パケット(SeqNO(=DM)=m+1、Ack(=N)=n+1、DMYD1)に対して、第1のコネクションにより、「ACK」パケット(SeqNO=n+1、Ack=dm+1+α、DATA2)を攻撃側コンピュータ装置3に向けて送信する(ステップS113)。なお、この場合の「ACK」パケットには、例えば、βバイトのデータ(DATA2)が含まれているものとする。
次に、通信制御装置1は、「ACK」パケット(SeqNO=n+1、Ack=dm+1+α、DATA2)に対して、第2のコネクションにより、「ACK」パケット(SeqNO(=DN)=n+1、Ack(=M)=m+1+α、DMYD2)を攻撃側コンピュータ装置3に向けて送信(転送)する(ステップS212)。すなわち、通信制御装置1の疑似応答制御部33は、受信した「ACK」パケット(SeqNO=n+1、Ack=dm+1+α、DATA2)のペイロードをダミーデータ(DMYD2)に変更するとともに、第2のコネクションにおけるシーケンス番号及び確認応答番号に変更した転送パケットを攻撃側コンピュータ装置3に向けて送信する。なお、疑似応答制御部33は、パケット判定部32が判定した判定結果に基づいて、ペイロードをダミーデータに変更するか否かを切り替える。また、ダミーデータ(DMYD2)のサイズは、データ(DATA2)と等しく、βバイトとする。
この場合、通信制御装置1は、無害化したダミーデータ(DMYD2)を攻撃側コンピュータ装置3に送信するので、被攻撃側コンピュータ装置2から攻撃側コンピュータ装置3に秘匿情報が流出することを防止することができる。
また、攻撃側コンピュータ装置3は、ステップS113により送信された「ACK」パケット(SeqNO=n+1、Ack=dm+1+α、DATA2)に対して、「RST+ACK」パケット(SeqNO=m+1、Ack=n+1)を被攻撃側コンピュータ装置2に向けて送信する(ステップS213)。なお、被攻撃側コンピュータ装置2は、攻撃側コンピュータ装置3との間のコネクションが確立していない状態(接続されていない状態)であるため、この「RST+ACK」パケットを廃棄する。
また、攻撃側コンピュータ装置3は、例えば、ステップS212により送信された「ACK」パケット(SeqNO(=DM)=n+1、Ack(=M)=m+1+α、DMYD2)に対して、第2のコネクションにより、「ACK」パケット(SeqNO=m+1+α、Ack=n+1+β)を被攻撃側コンピュータ装置2に向けて送信する(ステップS214)。
次に、図8を参照して、通信制御装置1が、被攻撃側コンピュータ装置2と通信制御装置1との間で生データを転送する場合の一例について説明する。
図8は、本実施形態における通信制御装置1が、生データを転送する場合の動作の一例を示す図である。
この図において、第1のコネクション及び第2のコネクションを確立した後の状態であり、各装置のシーケンス番号の初期値は、「SeqNO(DM)」が“dm+1”、「SeqNO(N)」が“n+1”、「SeqNO(DN)」が“n+1”、及び「SeqNO(M)」が“m+1”であるものとして説明する。
図8において、まず、攻撃側コンピュータ装置3は、第2のコネクションにより、「ACK」パケット(SeqNO=m+1、Ack=n+1、DATA1)を送信する(ステップS221)。なお、この場合の「ACK」パケットには、例えば、αバイトのデータ(DATA1)が含まれているものとする。
次に、通信制御装置1は、「ACK」パケット(SeqNO=m+1、Ack=n+1、DATA1)に対して、第1のコネクションにより、「ACK」パケット(SeqNO(=DM)=dm+1、Ack(=N)=n+1、DATA1)を被攻撃側コンピュータ装置2に向けて送信(転送)する(ステップS121)。すなわち、通信制御装置1の疑似応答制御部33は、受信した「ACK」パケット(SeqNO=m+1、Ack=n+1、DATA1)を、第1のコネクションにおけるシーケンス番号及び確認応答番号に変更した転送パケットを被攻撃側コンピュータ装置2に向けて送信する。
また、被攻撃側コンピュータ装置2は、ステップS221により送信された「ACK」パケット(SeqNO=m+1、Ack=n+1、DATA1)に対して、「RST+ACK」パケット(SeqNO=n+1、Ack=dm+1)を攻撃側コンピュータ装置3に向けて送信する(ステップS122)。なお、攻撃側コンピュータ装置3は、被攻撃側コンピュータ装置2との間のコネクションが確立していない状態(接続されていない状態)であるため、この「RST+ACK」パケットを廃棄する。
また、被攻撃側コンピュータ装置2は、例えば、ステップS121により送信された「ACK」パケット(SeqNO(=DM)=dm+1、Ack(=N)=n+1、DATA1)に対して、第1のコネクションにより、「ACK」パケット(SeqNO=n+1、Ack=dm+1+α、DATA2)を攻撃側コンピュータ装置3に向けて送信する(ステップS123)。なお、この場合の「ACK」パケットには、例えば、βバイトのデータ(DATA2)が含まれているものとする。
次に、通信制御装置1は、「ACK」パケット(SeqNO=n+1、Ack=dm+1+α、DATA2)に対して、第2のコネクションにより、「ACK」パケット(SeqNO(=DN)=n+1、Ack(=M)=m+1+α、DATA2)を攻撃側コンピュータ装置3に向けて送信(転送)する(ステップS222)。すなわち、通信制御装置1の疑似応答制御部33は、受信した「ACK」パケット(SeqNO=n+1、Ack=dm+1+α、DATA2)を、第2のコネクションにおけるシーケンス番号及び確認応答番号に変更した転送パケットを攻撃側コンピュータ装置3に向けて送信する。
また、攻撃側コンピュータ装置3は、ステップS123により送信された「ACK」パケット(SeqNO=n+1、Ack=dm+1+α、DATA2)に対して、「RST+ACK」パケット(SeqNO=m+1、Ack=n+1)を被攻撃側コンピュータ装置2に向けて送信する(ステップS223)。なお、被攻撃側コンピュータ装置2は、攻撃側コンピュータ装置3との間のコネクションが確立していない状態(接続されていない状態)であるため、この「RST+ACK」パケットを廃棄する。
また、攻撃側コンピュータ装置3は、例えば、ステップS222により送信された「ACK」パケット(SeqNO(=DM)=n+1、Ack(=M)=m+1+α、DATA2)に対して、第2のコネクションにより、「ACK」パケット(SeqNO=m+1+α、Ack=n+1+β)を被攻撃側コンピュータ装置2に向けて送信する(ステップS224)。
このように、通信制御装置1は、ペイロードの内容が安全であると予め判明している場合や、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3から情報を引き出す場合には、パケットのペイロードをダミーデータに変更せずに生データを転送する。
以上説明したように、本実施形態による通信制御装置1は、送信元及び送信先の2つのコンピュータ装置との間の応答速度よりも送信元のコンピュータ装置と自装置との間の応答速度が速くなるように配置され、パケット検知部31と、疑似応答制御部33とを備えている。パケット検知部31は、ネットワークで通信されるTCPパケットを監視し、ネットワークを介して接続された少なくとも2つのコンピュータ装置(例えば、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3)の間で通信される通信パケットを検知する。そして、疑似応答制御部33は、パケット検知部31が通信パケットを検知した場合に、当該通信パケットに対する送信先のコンピュータ装置からの返信パケットを無効にするように生成された疑似パケットを、送信元のコンピュータ装置に向けて、返信パケットよりも早く送信させる。
これにより、本実施形態による通信制御装置1は、2つのコンピュータ装置の間のTCPのコネクションを無効にするとともに、送信元のコンピュータ装置とのTCPのコネクションを確立することができる。そのため、本実施形態による通信制御装置1は、2つのコンピュータ装置との接続状態を維持しつつ、情報を収集することができる。よって、本実施形態による通信制御装置1は、不正な通信に対する対策を行うことができる。
例えば、内部LAN内の被攻撃側コンピュータ装置2にスパイウェアのような不正プログラムをインストールされて、内部の被攻撃側コンピュータ装置2から外部の攻撃側コンピュータ装置3にアクセスして不正に攻撃者が情報を取得するような場合が考えられる。本実施形態による通信制御装置1は、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との直接の通信を禁止しつつ、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3の双方と通信可能であるので、このような場合であっても、安全を確保しつつ、情報を収集することができる。
すなわち、本実施形態による通信制御装置1は、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3の間のコネクションを乗っ取るとともに、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3の双方に成りすますことで、双方から攻撃に関する有効な情報を収集することができる。また、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との直接の通信を禁止するので、本実施形態による通信制御装置1は、不正プログラムに感染した被攻撃側コンピュータ装置2が、内部LAN内の他のコンピュータ装置に対して攻撃を実施することを防ぐことができる。
また、本実施形態では、疑似応答制御部33は、2つのコンピュータ装置の間でコネクションを確立する際に疑似パケットの送信を開始する場合に、シーケンス番号が送信先のコンピュータ装置からの返信パケットと異なるように生成した疑似パケットを、送信元のコンピュータ装置に向けて送信させる。
これにより、本実施形態による通信制御装置1は、簡易な手法により、2つのコンピュータ装置の間でコネクションを無効にして、2つのコンピュータ装置の双方に成りすますことができる。また、本実施形態による通信制御装置1は、コネクションを確立する際にコネクションを無効にするので、2つのコンピュータ装置の間の通信の開始時点から安全を確保しつつ、情報を収集することができる。
また、本実施形態では、2つのコンピュータ装置には、被攻撃側コンピュータ装置2(被攻撃側のコンピュータ装置)と、攻撃側コンピュータ装置3(攻撃側のコンピュータ装置)とが含まれる。そして、疑似応答制御部33は、被攻撃側コンピュータ装置2から攻撃側コンピュータ装置3に送信された第1の通信パケットに対する攻撃側コンピュータ装置3からの第1の返信パケットを無効にするように、第1の疑似パケットを生成する。疑似応答制御部33は、生成した第1の疑似パケットを被攻撃側コンピュータ装置2に向けて送信させて、自装置と被攻撃側コンピュータ装置2との間の第1のコネクションを確立する。また、疑似応答制御部33は、攻撃側コンピュータ装置3から被攻撃側コンピュータ装置2に送信された第2の通信パケットに対する被攻撃側コンピュータ装置2からの第2の返信パケットを無効にするように、第2の疑似パケットを生成する。疑似応答制御部33は、生成した第2の疑似パケットを攻撃側コンピュータ装置3に向けて送信させて、自装置と攻撃側コンピュータ装置3との間の第2のコネクションを確立する。
これにより、本実施形態による通信制御装置1は、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間のコネクションを乗っ取って、双方のコンピュータ装置に成りすますことができる。
また、本実施形態では、疑似応答制御部33は、第1のコネクション及び第2のコネクションを確立した後に、第1のコネクションによって被攻撃側コンピュータ装置2から送信された第3の通信パケットのペイロードをダミーデータに変更するとともに、当該第3の通信パケットを第2のコネクションにおけるシーケンス番号及び確認応答番号に変更して、攻撃側コンピュータ装置3に向けて送信させる。また、疑似応答制御部33は、第1のコネクション及び第2のコネクションを確立した後に、第2のコネクションによって攻撃側コンピュータ装置3から送信された第4の通信パケットのペイロードをダミーデータに変更するとともに、当該第4の通信パケットを第1のコネクションにおけるシーケンス番号及び確認応答番号に変更して、被攻撃側コンピュータ装置2に向けて送信させる。
これにより、本実施形態による通信制御装置1は、ペイロードの内容を無害化しつつ、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3との通信状態を維持することができる。よって、本実施形態による通信制御装置1は、より安全を確保しつつ、情報を収集することができる。
また、本実施形態による通信制御装置1は、パケット判定部32を備えている。パケット判定部32は、第1のコネクション及び第2のコネクションを確立した後に、予め定められたルールに基づいて、第3の通信パケット及び第4の通信パケットのそれぞれのペイロードをダミーデータに変更するか否かを判定する。そして、疑似応答制御部33は、パケット判定部32が判定した判定結果に基づいて、上述した第3の通信パケット及び第4の通信パケットのそれぞれのペイロードを、ダミーデータに変更するか否かを切り替えて処理する。
これにより、本実施形態による通信制御装置1は、例えば、ペイロードの内容が安全であると予め判明している場合に、被攻撃側コンピュータ装置2及び攻撃側コンピュータ装置3の双方のコンピュータ装置に生データを転送することができる。そのため、本実施形態による通信制御装置1は、双方のコンピュータ装置が通信制御装置1にコネクションを乗っ取られたことを検知する確率を低減することができる。
なお、本実施形態による通信制御装置1は、例えば、安全が確保できる所定の頻度以下で、双方のコンピュータ装置に生データを転送するようにしてもよい。
また、本実施形態では、パケット判定部32は、第1のコネクション及び第2のコネクションを確立した後に、ペイロードの内容を判定ルール記憶部22が記憶する判定ルールに基づいて判定する。そして、疑似応答制御部33は、パケット判定部32が判定した判定結果に基づいて、ペイロードの内容を変更する。
これにより、本実施形態による通信制御装置1は、疑似パケット、転送パケット、送信パケット、及び返信パケットなどを、ペイロードの内容に応じた適切に生成することができる。
また、本実施形態による通信制御装置1は、通信履歴を記憶する通信履歴記憶部24を備えている。
これにより、本実施形態による通信制御装置1は、2つのコンピュータ装置の間の通信を記録しておくことが可能になる。よって、本実施形態による通信制御装置1は、通信履歴記憶部24が記憶する通信履歴を解析することにより、効率よく不正な通信に対する対策を行うことができる。
また、本実施形態による通信制御方法は、パケット検知ステップと、制御ステップとを含んでいる。パケット検知ステップにおいて、通信制御装置1が、ネットワークで通信されるTCPパケットを監視し、ネットワークを介して接続された少なくとも2つのコンピュータ装置の間で通信される通信パケットを検知する。そして、制御ステップにおいて、通信制御装置1が、パケット検知ステップにて通信パケットを検知した場合に、当該通信パケットに対する送信先のコンピュータ装置からの返信パケットを無効にするように生成された疑似パケットを、送信元のコンピュータ装置に向けて、返信パケットよりも早く送信する。
これにより、本実施形態による通信制御方法は、上述した通信制御装置1と同様に、2つのコンピュータ装置との接続状態を維持しつつ、情報を収集することができるので、不正な通信に対する対策を行うことができる。
[第2の実施形態]
次に、第2の実施形態による通信制御装置1aについて、図面を参照して説明する。
図9は、第2の実施形態による通信制御装置1aの一例を示す機能ブロック図である。
図9に示すように、通信制御装置1aは、通信部10と、記憶部20と、制御部30aとを備えている。なお、通信制御装置1a及びネットワーク機器4は、第1の実施形態と同様に、被攻撃側コンピュータ装置2と、攻撃側コンピュータ装置3との間の通信経路上に配置されている。
なお、この図において、図1に示す構成と同一の構成については同一の符号を付し、その説明を省略する。
また、上述した第1の実施形態の通信制御装置1は、コネクションの乗っ取りを開始するタイミングがコネクションの確立する際であるのに対して、本実施形態の通信制御装置1aは、コネクションが確立された後に開始する点が異なる。すなわち、本実施形態では、制御部30aの一部の機能が、第1の実施形態の制御部30と異なり、この異なる機能について以下説明する。
制御部30aは、例えば、CPUなどを含むプロセッサであり、通信制御装置1aを統括的に制御する。また、制御部30aは、パケット検知部31と、パケット判定部32と、疑似応答制御部33aとを備えている。
疑似応答制御部33aは、コネクションの乗っ取りを開始するタイミングが異なる点を除いて、第1の実施形態の疑似応答制御部33と同様の機能を有する。疑似応答制御部33aは、例えば、2つのコンピュータ装置の間でコネクションを確立した後に疑似パケットの送信を開始する場合に、ペイロードのデータ数が送信先のコンピュータ装置からの返信パケットと異なるように生成した疑似パケットを、送信元のコンピュータ装置に向けて送信させる。
疑似応答制御部33aは、例えば、コネクションの乗っ取りを開始する前に、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間の通信に応じて、シーケンス管理情報記憶部23のシーケンス番号(N)、シーケンス番号(DM)、シーケンス番号(M)、及びシーケンス番号(DN)を記憶及び更新させる。なお、この場合、コネクションの乗っ取りを開始する前であるので、シーケンス番号(DM)とシーケンス番号(M)とは等しい値が記憶され、シーケンス番号(N)とシーケンス番号(DN)とは、等しい値が記憶される。そして、疑似応答制御部33aは、コネクションの乗っ取りを開始する際に、シーケンス番号(DM)とシーケンス番号(M)とが異なる値になるように、ペイロードのデータ数を変更した疑似パケットを、被攻撃側コンピュータ装置2に向けて送信させる。また、疑似応答制御部33aは、コネクションの乗っ取りを開始する際に、シーケンス番号(N)とシーケンス番号(DN)とが異なる値になるように、ペイロードのデータ数を変更した疑似パケットを、攻撃側コンピュータ装置3に向けて送信させる。
具体的に、疑似応答制御部33aは、被攻撃側コンピュータ装置2に向けた疑似パケットのペイロードのデータ数を例えば、“8バイト”にして送信させ、攻撃側コンピュータ装置3に向けた疑似パケットのペイロードのデータ数を例えば、“4バイト”にして送信させる。
なお、疑似応答制御部33aは、シーケンス番号(DM)と、シーケンス番号(M)との差が所定の閾値分以上になるように、ペイロードのデータ数を調整してTCPパケットを生成してもよい。また、疑似応答制御部33aは、シーケンス番号(N)と、シーケンス番号(DN)との差が所定の閾値分以上になるように、ペイロードのデータ数を調整してTCPパケットを生成してもよい。
また、疑似応答制御部33aは、応答生成部331aと、送信制御部332とを備えている。
応答生成部331aは、第1の実施形態の応答生成部331が有する機能の他に、上述した疑似パケットなどのTCPパケットを生成する。
次に、本実施形態による通信制御装置1aの動作について、図10を参照して説明する。
図10は、本実施形態における通信制御装置1aの動作の一例を示す図である。
この図では、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間のコネクションを確立した後に、通信制御装置1aが、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間の当該コネクションを乗っ取る場合の一例を示している。すなわち、この図では、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間のコネクションを確立した後に、通信制御装置1aが、通信制御装置1aと被攻撃側コンピュータ装置2との間の第1のコネクションと、通信制御装置1aと攻撃側コンピュータ装置3との間の第2のコネクションとを確立する場合の一例を示している。
図10において、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3とは、まず、コネクションを確立する。
被攻撃側コンピュータ装置2が、「SYN」パケット(SeqNO=n)を攻撃側コンピュータ装置3に向けて送信する(ステップS301)。
次に、攻撃側コンピュータ装置3は、「SYN」パケット(SeqNO=n)に対して、「SYN+ACK」パケット(SeqNO=m、Ack=n+1)を被攻撃側コンピュータ装置2に向けて送信する(ステップS401)。
次に、被攻撃側コンピュータ装置2が、「ACK」パケット(SeqNO=n+1、Ack=m+1)を攻撃側コンピュータ装置3に向けて送信する(ステップS302)。
これにより、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間のコネクションが確立される。
なお、通信制御装置1aは、この間に、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3との間で通信されるTCPパケットに基づいて、シーケンス管理情報記憶部23のシーケンス番号(N)、シーケンス番号(DM)、シーケンス番号(M)、及びシーケンス番号(DN)を記憶及び更新させる。
次に、通信制御装置1aは、コネクションの乗っ取りを開始する所定の条件を満足した場合に、コネクションの乗っ取りを開始する。このコネクションの乗っ取りを開始する所定の条件は、例えば、予め定められた所定のTCPパケットを受信した場合であってもよいし、通信制御装置1aを管理する管理者からの指令に基づいて、コネクションの乗っ取りを開始してもよい。
この図に示す例では、被攻撃側コンピュータ装置2が、「ACK」パケット(SeqNO=n+1、Ack=m+1)を送信した後に開始するものとして説明する。
被攻撃側コンピュータ装置2が、「ACK」パケット(SeqNO=n+1、Ack=m+1)を攻撃側コンピュータ装置3に向けて送信する(ステップS303)。この「ACK」パケット(SeqNO=n+1、Ack=m+1)は、通信制御装置1a及び攻撃側コンピュータ装置3により受信される。
次に、通信制御装置1aは、「ACK」パケット(SeqNO=n+1、Ack=m+1)に対して、「ACK」パケット(SeqNO(=DM)=m+1、Ack(=N)=n+1、8バイト)を攻撃側コンピュータ装置3よりも先に被攻撃側コンピュータ装置2に向けて送信する(ステップS304)。この「ACK」パケット(SeqNO(=DM)=m+1、Ack(=N)=n+1、8バイト)には、ペイロードに8バイトのデータが含まれる。
次に、被攻撃側コンピュータ装置2は、「ACK」パケット(SeqNO(=DM)=m+1、Ack(=N)=n+1、8バイト)に対して、「ACK」パケット(SeqNO=n+1、Ack=m+9)を送信する(ステップS305)。このパケットを通信制御装置1aが受信することで、第1のコネクションが確立される。これにより、通信制御装置1aは、被攻撃側コンピュータ装置2に対して、攻撃側コンピュータ装置3に成りすまして通信を行うことが可能になる。
また、一方で、攻撃側コンピュータ装置3は、「ACK」パケット(SeqNO=n+1、Ack=m+1)に対して、「ACK」パケット(SeqNO=m+1、Ack=n+1)を被攻撃側コンピュータ装置2に向けて送信する(ステップS402)。
次に、通信制御装置1aは、「ACK」パケット(SeqNO=m+1、Ack=n+1)に対して、「ACK」パケット(SeqNO(=DN)=n+1、Ack(=M)=m+1,4バイト)を被攻撃側コンピュータ装置2よりも先に攻撃側コンピュータ装置3に向けて送信する(ステップS403)。このパケットを攻撃側コンピュータ装置3が受信することで、第2のコネクションが確立される。これにより、通信制御装置1aは、攻撃側コンピュータ装置3に対して、攻撃側コンピュータ装置3に成りすまして通信を行うことが可能になる。
また、被攻撃側コンピュータ装置2は、ステップS402により送信された「ACK」パケット(SeqNO=m+1、Ack=n+1)に対して、「RST+ACK」パケット(SeqNO=n+1、Ack=m+9)を攻撃側コンピュータ装置3に向けて送信する(ステップS306)。攻撃側コンピュータ装置3は、被攻撃側コンピュータ装置2との間のコネクションが確立していない状態(接続されていない状態)であるため、この「RST+ACK」パケットを廃棄する。
また、攻撃側コンピュータ装置3は、ステップS305により送信された「ACK」パケット(SeqNO=n+1、Ack=m+9)に対して、「RST+ACK」パケット(SeqNO=m+1、Ack=n+5)を被攻撃側コンピュータ装置2に向けて送信する(ステップS404)。被攻撃側コンピュータ装置2は、攻撃側コンピュータ装置3との間のコネクションが確立していない状態(接続されていない状態)であるため、この「RST+ACK」パケットを廃棄する。
また、以降の処理は、第1の実施形態における通信制御装置1と同様であるので、ここではその説明を省略する。
なお、上述した図10に示す例では、コネクションの乗っ取りを被攻撃側コンピュータ装置2からのTCPパケットに対して開始される場合について説明したが、攻撃側コンピュータ装置3からのTCPパケットに対して開始される場合についても同様である。
以上説明したように、本実施形態による通信制御装置1aは、疑似応答制御部33aを備えている。疑似応答制御部33aは、2つのコンピュータ装置の間でコネクションを確立した後に疑似パケットの送信を開始する場合に、送信先のコンピュータ装置からの返信パケットとペイロードのデータ数が異なるように生成した疑似パケットを、送信元のコンピュータ装置に向けて送信させる。
これにより、本実施形態による通信制御装置1aは、第1の実施形態と同様に、不正な通信に対する対策を行うことができる。また、本実施形態による通信制御装置1aは、簡易な手法により、2つのコンピュータ装置の間でコネクションを無効にして、2つのコンピュータ装置の双方に成りすますことができる。また、本実施形態による通信制御装置1aは、既にコネクションを確立している場合であっても、コネクションを無効にすることができる。
また、本実施形態では、疑似応答制御部33aは、第1のコネクションにおける通信制御装置1aのシーケンス番号(DM)と、攻撃側コンピュータ装置3のシーケンス番号(M)との差が所定の閾値分以上になるように、ペイロードのデータ数を変更(調整)してTCPパケットを生成する。また、疑似応答制御部33aは、被攻撃側コンピュータ装置2のシーケンス番号(N)と、第2のコネクションにおける通信制御装置1aのシーケンス番号(DN)との差が所定の閾値分以上になるように、ペイロードのデータ数を調整してTCPパケットを生成する。
これにより、本実施形態による通信制御装置1aは、被攻撃側コンピュータ装置2と攻撃側コンピュータ装置3とが、偶然にコネクションが確立されてしまう可能性を低減することができる。よって、本実施形態による通信制御装置1aは、よりより安全を確保しつつ、情報を収集することができる。
[第3の実施形態]
次に、第3の実施形態による通信制御装置1bについて、図面を参照して説明する。
図11は、第3の実施形態による通信制御装置1bの一例を示す機能ブロック図である。
図11に示すように、通信制御装置1bは、通信部10と、記憶部20と、制御部30bとを備えている。なお、通信制御装置1b及びネットワーク機器4は、第1及び第2の実施形態と同様に、被攻撃側コンピュータ装置2と、攻撃側コンピュータ装置3との間の通信経路上に配置されている。
なお、この図において、図1に示す構成と同一の構成については同一の符号を付し、その説明を省略する。
本実施形態の通信制御装置1bは、コネクションが確立された後に開始する点が異なる。すなわち、本実施形態では、制御部30bの一部の機能が、第1の実施形態の制御部30と異なり、この異なる機能について以下説明する。
制御部30bは、例えば、CPUなどを含むプロセッサであり、通信制御装置1bを統括的に制御する。また、制御部30aは、パケット検知部31と、パケット判定部32と、疑似応答制御部33と、駆除用処理部34とを備えている。なお、本実施形態における制御部30bは、駆除用処理部34を備えている点が、第1の実施形態における制御部30と異なる。
駆除用処理部34は、被攻撃側コンピュータ装置2の不正プログラムの危険な兆候を検知した場合に、被攻撃側コンピュータ装置2を隔離して、不正プログラムの駆除を行う処理を実行する。駆除用処理部34は、例えば、被攻撃側コンピュータ装置2から攻撃側コンピュータ装置3へのTCPパケットの内容に、“GET/HTTP/1.1”が含まれている場合に、不正プログラムの危険な兆候であると判定する。なお、駆除用処理部34は、パケットの内容に、“GET/HTTP/1.1”が含まるか否かの判定を、パケット判定部32の判定結果に基づいて判定する。
駆除用処理部34は、“GET/HTTP/1.1”が含まれている場合に、被攻撃側コンピュータ装置2に向けて、“HTTP/1.1 301 Moved Permanently”を含むTCPパケットを送信させる。これにより、被攻撃側コンピュータ装置2は、例えば、内部LAN内の安全なサーバ装置と強制的に接続させて隔離される。また、駆除用処理部34は、攻撃側コンピュータ装置3に向けて、“GET/HTTP/1.1”を含むTCPパケットを第2のコネクションにより送信させて、例えば、悪意のあるコンテンツを収集し、通信履歴記憶部24に通信履歴として記憶させる。
次に、本実施形態における通信制御装置1bの動作について、図12を参照して説明する。本実施形態における通信制御装置1bの基本的な動作は、第1の実施形態における通信制御装置1と同様なので、ここではその説明を省略する。ここでは、通信制御装置1bが、被攻撃側コンピュータ装置2の危険な兆候を検知した場合の動作の一例について説明する。
図12は、本実施形態における通信制御装置1bの動作の一例を示す図である。
なお、この図において、第1のコネクション及び第2のコネクションを確立した後の状態である。
図12に示す例では、被攻撃側コンピュータ装置2が、まず、「ACK」パケット(GET/HTTP/1.1 HOST:evik.example.com)を攻撃側コンピュータ装置3に向けて送信する(ステップS501)。ここでは、被攻撃側コンピュータ装置2が、危険なWebサイトである“evik.example.com”に接続しようとしている状態である。
次に、通信制御装置1bは、「ACK」パケット(GET/HTTP/1.1 HOST:evik.example.com)に対して、「ACK」パケット(HTTP/1.1 301 Moved Permanently Location:www.example.com)を、第1のコネクションにより被攻撃側コンピュータ装置2に向けて送信する(ステップS502)。すなわち、通信制御装置1bは、被攻撃側コンピュータ装置2を安全な内部LAN内のサーバ装置(www.example.com)に転送して隔離する。ここで、サーバ装置(www.example.com)が、例えば、不正プログラムの駆除ソフトを被攻撃側コンピュータ装置2にダウンロードさせることで、不正プログラムの駆除を行うことが可能である。
また、通信制御装置1bは、「ACK」パケット(GET/HTTP/1.1 HOST:evik.example.com)を、第2のコネクションにより攻撃側コンピュータ装置3に向けて送信する(ステップS601)。
攻撃側コンピュータ装置3は、「ACK」パケット(HTTP/1.1 200 OK)を第2のコネクションにより送信し(ステップS602)、さらに、「ACK」パケット(悪意のあるコンテンツ)を第2のコネクションにより送信する(ステップS603)。
通信制御装置1bは、攻撃側コンピュータ装置3からの「ACK」パケット(悪意のあるコンテンツ)を第2のコネクションにより受信し、悪意のあるコンテンツを収集する。
以上説明したように、本実施形態による通信制御装置1bは、被攻撃側コンピュータ装置2の不正プログラムの危険な兆候を検知した場合に、被攻撃側コンピュータ装置2を予め安全が確認されているコンピュータ装置に接続させて隔離する駆除用処理部34を備えている。
これにより、被攻撃側コンピュータ装置2が安全に隔離されるので、本実施形態による通信制御装置1bは、より安全を確保しつつ、攻撃側コンピュータ装置3からの情報を収集することができる。
なお、本発明は、上記の各実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で変更可能である。
例えば、上記の各実施形態において、それぞれの実施形態を単独で実施する場合を説明したが、これに限定されるものではなく、上記の各実施形態のうちの複数の実施形態を組み合わせて実施してもよい。
また、上記の各実施形態において、通信制御装置1(1a、1b)は、ネットワーク機器4を介してネットワークに接続する例を説明したが、通信制御装置1(1a、1b)が、ネットワーク機器4を含む構成であってもよい。
また、上記の各実施形態において、通信制御装置1(1a、1b)は、1台の被攻撃側コンピュータ装置2と1台の攻撃側コンピュータ装置3との間の通信を制御する例を説明したが、これに限定されるものではない。例えば、通信制御装置1(1a、1b)は、複数台の被攻撃側コンピュータ装置2と複数台の攻撃側コンピュータ装置3との間の通信を制御してもよい。
また、上記の各実施形態において、通信制御装置1(1a、1b)は、パケット検知部31及びパケット判定部32を疑似応答制御部33(33a)とは別の構成として備える例を説明したが、疑似応答制御部33(33a)が、パケット検知部31及びパケット判定部32いずれか一方又は両方を含む構成としてもよい。また、同様に、疑似応答制御部33が、駆除用処理部34を含む構成であってもよい。また、通信制御装置1(1a、1b)は、各機能部を複数の装置(例えば、複数台のコンピュータ装置など)に分散して構成してもよい。
また、上記の各実施形態において、ダミーデータに変更したTCPパケットを転送する場合に、変更前のデータと同一サイズのダミーデータに変更する例を説明したが、通信制御装置1(1a、1b)は、これに限定されるものではない。例えば、ダミーデータは、変更前のデータと異なるサイズであってもよい。この場合、ダミーデータには、0バイト(データなし)の場合も含まれる。
なお、上述した通信制御装置1(1a、1b)が備える各構成は、内部に、コンピュータシステムを有している。そして、上述した通信制御装置1(1a、1b)が備える各構成の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより上述した通信制御装置1(1a、1b)が備える各構成における処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、CD−ROM等の非一過性の記録媒体であってもよい。
また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部又は外部に設けられた記録媒体も含まれる。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後に通信制御装置1(1a、1b)が備える各構成で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
また、上述した機能の一部又は全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、又は全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、又は汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
1,1a、1b 通信制御装置
2 被攻撃側コンピュータ装置
3 攻撃側コンピュータ装置
4 ネットワーク機器
10 通信部
20 記憶部
21 検知対象記憶部
22 判定ルール記憶部
23 シーケンス管理情報記憶部
24 通信履歴記憶部
30、30a、30b 制御部
31 パケット検知部
32 パケット判定部
33、33a 疑似応答制御部
34 駆除用処理部
331、331a 応答生成部
332 送信制御部

Claims (8)

  1. 送信元及び送信先の2つのコンピュータ装置との間の応答速度よりも送信元のコンピュータ装置と自装置との間の応答速度が速くなるように配置される通信制御装置であって、
    ネットワークで通信されるTCPパケットを監視し、前記ネットワークを介して接続された少なくとも2つのコンピュータ装置の間で通信される通信パケットを検知するパケット検知部と、
    前記パケット検知部が前記通信パケットを検知した場合に、当該通信パケットに対する送信先のコンピュータ装置からの返信パケットを無効にするように生成された疑似パケットを、送信元のコンピュータ装置に向けて送信させる制御部と
    を備えることを特徴とする通信制御装置。
  2. 前記制御部は、
    前記2つのコンピュータ装置の間でコネクションを確立する際に前記疑似パケットの送信を開始する場合に、シーケンス番号が前記送信先のコンピュータ装置からの前記返信パケットと異なるように生成した前記疑似パケットを、前記送信元のコンピュータ装置に向けて送信させる
    ことを特徴とする請求項1に記載の通信制御装置。
  3. 前記制御部は、
    前記2つのコンピュータ装置の間でコネクションを確立した後に前記疑似パケットの送信を開始する場合に、ペイロードのデータ数が前記送信先のコンピュータ装置からの前記返信パケットと異なるように生成した前記疑似パケットを、前記送信元のコンピュータ装置に向けて送信させる
    ことを特徴とする請求項1又は請求項2に記載の通信制御装置。
  4. 前記2つのコンピュータ装置には、被攻撃側のコンピュータ装置と、攻撃側のコンピュータ装置とが含まれ、
    前記制御部は、
    前記被攻撃側のコンピュータ装置から前記攻撃側のコンピュータ装置に送信された第1の通信パケットに対する前記攻撃側のコンピュータ装置からの第1の返信パケットを無効にするように、第1の疑似パケットを生成し、生成した前記第1の疑似パケットを前記被攻撃側のコンピュータ装置に向けて送信させて、自装置と前記被攻撃側のコンピュータ装置との間の第1のコネクションを確立し、
    前記攻撃側のコンピュータ装置から前記被攻撃側のコンピュータ装置に送信された第2の通信パケットに対する前記被攻撃側のコンピュータ装置からの第2の返信パケットを無効にするように、第2の疑似パケットを生成し、生成した前記第2の疑似パケットを前記攻撃側のコンピュータ装置に向けて送信させて、自装置と前記攻撃側のコンピュータ装置との間の第2のコネクションを確立する
    ことを特徴とする請求項1から請求項3のいずれか一項に記載の通信制御装置。
  5. 前記制御部は、
    前記第1のコネクション及び前記第2のコネクションを確立した後に、前記第1のコネクションによって前記被攻撃側のコンピュータ装置から送信された第3の通信パケットのペイロードをダミーデータに変更するとともに、当該第3の通信パケットを前記第2のコネクションにおけるシーケンス番号及び確認応答番号に変更して、前記攻撃側のコンピュータ装置に向けて送信させ、
    前記第1のコネクション及び前記第2のコネクションを確立した後に、前記第2のコネクションによって前記攻撃側のコンピュータ装置から送信された第4の通信パケットのペイロードをダミーデータに変更するとともに、当該第4の通信パケットを前記第1のコネクションにおけるシーケンス番号及び確認応答番号に変更して、前記被攻撃側のコンピュータ装置に向けて送信させる
    ことを特徴とする請求項4に記載の通信制御装置。
  6. 前記第1のコネクション及び前記第2のコネクションを確立した後に、予め定められたルールに基づいて、前記第3の通信パケット及び前記第4の通信パケットのそれぞれのペイロードをダミーデータに変更するか否かを判定する判定部を備え、
    前記制御部は、
    前記判定部が判定した判定結果に基づいて、前記第3の通信パケット及び前記第4の通信パケットのそれぞれのペイロードを、ダミーデータに変更するか否かを切り替える
    ことを特徴とする請求項5に記載の通信制御装置。
  7. 送信元及び送信先の2つのコンピュータ装置との間の応答速度よりも送信元のコンピュータ装置と自装置との間の応答速度が速くなるように配置される通信制御装置が、ネットワークで通信されるTCPパケットを監視し、前記ネットワークを介して接続された少なくとも2つのコンピュータ装置の間で通信される通信パケットを検知するパケット検知ステップと、
    前記通信制御装置が、前記パケット検知ステップにて前記通信パケットを検知した場合に、当該通信パケットに対する送信先のコンピュータ装置からの返信パケットを無効にするように生成された疑似パケットを、送信元のコンピュータ装置に向けて送信する制御ステップと
    を含むことを特徴とする通信制御方法。
  8. 送信元及び送信先の2つのコンピュータ装置との間の応答速度よりも送信元のコンピュータ装置と自装置との間の応答速度が速くなるように配置される通信制御装置のコンピュータに、
    ネットワークで通信されるTCPパケットを監視し、前記ネットワークを介して接続された少なくとも2つのコンピュータ装置の間で通信される通信パケットを検知するパケット検知ステップと、
    前記パケット検知ステップにて前記通信パケットを検知した場合に、当該通信パケットに対する送信先のコンピュータ装置からの返信パケットを無効にするように生成された疑似パケットを、送信元のコンピュータ装置に向けて送信させる制御ステップと
    を実行させるためのプログラム。
JP2014055078A 2014-03-18 2014-03-18 通信制御装置、通信制御方法、及びプログラム Active JP6220709B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014055078A JP6220709B2 (ja) 2014-03-18 2014-03-18 通信制御装置、通信制御方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014055078A JP6220709B2 (ja) 2014-03-18 2014-03-18 通信制御装置、通信制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2015176579A true JP2015176579A (ja) 2015-10-05
JP6220709B2 JP6220709B2 (ja) 2017-10-25

Family

ID=54255665

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014055078A Active JP6220709B2 (ja) 2014-03-18 2014-03-18 通信制御装置、通信制御方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP6220709B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020054818A1 (ja) * 2018-09-14 2020-03-19 株式会社 東芝 通信制御装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312261A (ja) * 2001-04-09 2002-10-25 Nippon Telegr & Teleph Corp <Ntt> ネットワークサービス中継方法及び中継装置
JP2003309607A (ja) * 2002-04-17 2003-10-31 Ntt Data Corp アンチプロファイリング装置およびアンチプロファイリングプログラム
JP2007537617A (ja) * 2004-01-07 2007-12-20 アラジン ノゥリッジ システムズ リミテッド チェックポイントを介して実行ファイルの通過時間を高速化する方法
JP2010200300A (ja) * 2009-01-28 2010-09-09 Meidensha Corp Tcp通信方式

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312261A (ja) * 2001-04-09 2002-10-25 Nippon Telegr & Teleph Corp <Ntt> ネットワークサービス中継方法及び中継装置
JP2003309607A (ja) * 2002-04-17 2003-10-31 Ntt Data Corp アンチプロファイリング装置およびアンチプロファイリングプログラム
JP2007537617A (ja) * 2004-01-07 2007-12-20 アラジン ノゥリッジ システムズ リミテッド チェックポイントを介して実行ファイルの通過時間を高速化する方法
JP2010200300A (ja) * 2009-01-28 2010-09-09 Meidensha Corp Tcp通信方式

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020054818A1 (ja) * 2018-09-14 2020-03-19 株式会社 東芝 通信制御装置
JPWO2020054818A1 (ja) * 2018-09-14 2021-04-30 株式会社東芝 通信制御装置
JP7068482B2 (ja) 2018-09-14 2022-05-16 株式会社東芝 通信制御システム

Also Published As

Publication number Publication date
JP6220709B2 (ja) 2017-10-25

Similar Documents

Publication Publication Date Title
KR101263329B1 (ko) 네트워크 공격 방어 장치 및 방법, 이를 포함한 패킷 송수신 처리 장치 및 방법
US8677474B2 (en) Detection of rogue client-agnostic NAT device tunnels
JP5009244B2 (ja) マルウェア検知システム、マルウェア検知方法及びマルウェア検知プログラム
US10680893B2 (en) Communication device, system, and method
JP6364255B2 (ja) 通信制御装置、攻撃防御システム、攻撃防御方法、及びプログラム
US9800593B2 (en) Controller for software defined networking and method of detecting attacker
KR20080020584A (ko) 지능망 인터페이스 컨트롤러
JP2017204722A (ja) Sdnコントローラ
CN108270722B (zh) 一种攻击行为检测方法和装置
US20170070518A1 (en) Advanced persistent threat identification
KR20120060655A (ko) 서버 공격을 탐지할 수 있는 라우팅 장치와 라우팅 방법 및 이를 이용한 네트워크
JP2020017809A (ja) 通信装置及び通信システム
US7773540B1 (en) Methods, system and apparatus preventing network and device identification
JP2008054204A (ja) 接続装置及び端末装置及びデータ確認プログラム
JP2011154727A (ja) 解析システム、解析方法および解析プログラム
JP2008276457A (ja) ネットワーク保護プログラム、ネットワーク保護装置およびネットワーク保護方法
JP2008306610A (ja) 不正侵入・不正ソフトウェア調査システム、および通信振分装置
US20150326590A1 (en) Interdicting undesired service
JP6220709B2 (ja) 通信制御装置、通信制御方法、及びプログラム
JP5531064B2 (ja) 通信装置、通信システム、通信方法、および、通信プログラム
US11159533B2 (en) Relay apparatus
JP2018073397A (ja) 通信装置
KR20130009130A (ko) 좀비 피씨 및 디도스 대응 장치 및 방법
JP6635029B2 (ja) 情報処理装置、情報処理システム及び通信履歴解析方法
JP6101525B2 (ja) 通信制御装置、通信制御方法、通信制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161205

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170831

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170905

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171002

R150 Certificate of patent or registration of utility model

Ref document number: 6220709

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350