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

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

Info

Publication number
JP6111067B2
JP6111067B2 JP2012288756A JP2012288756A JP6111067B2 JP 6111067 B2 JP6111067 B2 JP 6111067B2 JP 2012288756 A JP2012288756 A JP 2012288756A JP 2012288756 A JP2012288756 A JP 2012288756A JP 6111067 B2 JP6111067 B2 JP 6111067B2
Authority
JP
Japan
Prior art keywords
name resolution
communication
message
response message
dns
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
JP2012288756A
Other languages
English (en)
Other versions
JP2014131230A (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.)
NTT Data 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 JP2012288756A priority Critical patent/JP6111067B2/ja
Publication of JP2014131230A publication Critical patent/JP2014131230A/ja
Application granted granted Critical
Publication of JP6111067B2 publication Critical patent/JP6111067B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、特定のサーバ装置へのアクセスを制御する通信制御装置、通信制御方法、及びプログラムに関する。
パソコンなどの端末(通信装置)から、通信ネットワークを介してサーバ装置に接続して、サーバ装置が提供する各種通信サービスを利用可能とする通信システムが構築されている。通信ネットワークに接続される各装置は、それぞれ付与されたアドレス情報に基づいて識別される。ただし、ユーザーがアドレス情報を直接指定する場合は少なく、多くの場合、アドレス情報に代えてUniform Resource Locator(URL)情報などによって指定している。このように、URL情報を指定するだけで、対応するサーバ装置に容易に接続できる。
その通信システムにおける通信サービスの安全性を高めるため、必要に応じて特定のサーバ装置にアクセスすることを制限するなどの各種対策がそれぞれ講じられている(例えば、特許文献1参照)。特許文献1によれば、通信を中継するプロキシ装置(HTTP Proxy)のアクセスコントロール機能により、特定のサーバ装置(悪性ホスト)へのアクセスを制限する技術が示されている。上記のアクセスコントロール機能は、特定のURLに対するアクセスを制限する機能であり、アクセスを制限する対象のURLのURL情報に基づいて、特定のURLに対する通信を制御する。アクセスを制限する対象を示すURL情報は、アクセス制限リストとして記憶されており、プロキシ装置は、アクセス制限リストとして記憶されているURL情報に基づいて、当該URL情報に対応するサーバ装置に対する通信を遮断する。
特開2012−522295号公報
しかしながら、各種対策をそれぞれ講じても、通信装置がマルウェアに侵される場合が生じうる。マルウェアには、コンピュータウイルスやワームなどが含まれる。例えば、特定のサーバ装置(悪性ホスト)がマルウェアを保持している場合がある。サーバ装置がマルウェアを保持していることを知らずにアクセスしてしまうと、通信装置は、サーバ装置のマルウェアに侵される。このようなマルウェアの配信元となりうる悪性ホストへのアクセスを制限する技術が、例えば、特許文献1に示されている。この特許文献1の技術を適用した通信システムにおいては、プロキシ装置のアクセスコントロール機能の有効性は、アクセス制限リストに記憶された情報の良否によって左右される。それゆえ、このアクセス制限リストは、安全に通信可能な範囲を定めるものであるがゆえ、通信システムにおける重要な情報(構成情報)として扱われている。
このようにアクセス制限リストは、重要な情報として扱われるため、自動で逐次更新するように運用している場合は少なく、アクセス制限リストに追加することが望ましいという情報の要否をシステム管理者が判定し、その判定結果に応じて当該情報をアクセス制限リストに反映する場合が多い。そのため、アクセス制限リストが更新されるまでの間は、更新前のアクセス制限リストに基づいてアクセスを制限することから、新たに追加された制限対象の装置に対するアクセスを制限できない状況が生じてしまう。
このように、通信を中継するプロキシ装置のアクセスコントロール機能による対策を講じても、アクセス制限リストを更新するまでの間に制限対象の装置へのアクセスを許してしまい、端末(通信装置)がウィルスなどに感染することを防ぐことができなかった。
本発明は、このような状況に鑑みてなされたもので、特定のサーバ装置へのアクセスを制御することができる通信制御装置、通信制御方法、及びプログラムを提供する。
上述した課題を解決するために、本発明の一態様は、名前解決を要求する通信装置から、名前解決を実施する名前解決装置に対して送出された名前解決を要求するメッセージが前記名前解決装置と通信可能な経路上の観測ポイントを通過して、前記観測ポイントにおいて前記名前解決を要求するメッセージからコピーされたメッセージを検出し、前記検出したメッセージに、予め定められている所定の情報が含まれていることを検出した場合に、前記名前解決を要求するメッセージに対する応答であって、前記名前解決装置が送出する応答メッセージと異なる擬似応答メッセージを、前記メッセージの検出から予め定められた時間の範囲に収まるように前記擬似応答メッセージを生成し、前記名前解決を要求するメッセージに対する前記名前解決装置からの応答メッセージが前記通信装置に到来する前に前記擬似応答メッセージが前記通信装置に届くように、前記生成した擬似応答メッセージを前記通信装置に対して送出させて、前記通信装置における名前解決を要求する処理を前記擬似応答メッセージの内容に従って完了させる制御部を備えることを特徴とする通信制御装置である。
また、本発明の一態様は、上記の通信制御装置において、前記制御部は、前記検出したメッセージに、予め定められている所定のドメイン名を示す文字列が含まれたDNSクエリを検出した場合に、前記検出したDNSクエリに応じて前記名前解決装置が応答する接続先とは異なる接続先を解とする前記擬似応答メッセージを生成し、前記生成した擬似応答メッセージを前記通信装置に対して送出させて、前記通信装置における前記名前解決を要求する処理を前記擬似応答メッセージの内容に従って完了させることを特徴とする。
また、本発明の一態様は、上記の通信制御装置において、前記擬似応答メッセージには、前記名前解決装置が応答する接続先とは異なる接続先に接続されたことを示す情報を前記通信装置に送信して当該情報を前記通信装置に表示させる装置のアドレス情報が、前記検出したDNSクエリの解として含まれていることを特徴とする。
また、本発明の一態様は、上記の通信制御装置において、前記制御部は、前記名前解決を要求するメッセージを検出するための検出条件が複数に分割され、前記分割された検出条件に対応する前記予め定められている所定の情報を検出する、ことを特徴とする。
また、本発明の一態様は、名前解決を要求する通信装置から、名前解決を実施する名前解決装置に対して送出された名前解決を要求するメッセージが前記名前解決装置と通信可能な経路上の観測ポイントを通過して、前記観測ポイントにおいて前記名前解決を要求するメッセージからコピーされたメッセージを検出するステップと、前記検出したメッセージに、予め定められている所定の情報が含まれているか否かを判定するステップと、前記検出したメッセージに、予め定められている所定の情報が含まれていることを検出した場合に、前記名前解決を要求するメッセージに対する応答であって、前記名前解決装置が送出する応答メッセージと異なる擬似応答メッセージを、前記メッセージの検出から予め定められた時間の範囲に収まるように前記擬似応答メッセージを生成し、前記名前解決を要求するメッセージに対する前記名前解決装置からの応答メッセージが前記通信装置に到来する前に前記擬似応答メッセージが前記通信装置に届くように、前記生成した擬似応答メッセージを前記通信装置に対して送出させて、前記通信装置における名前解決を要求する処理を前記擬似応答メッセージの内容に従って完了させるステップと、を備えることを特徴とする通信制御方法である。
また、本発明の一態様は、通信制御装置のコンピュータに、名前解決を要求する通信装置から、名前解決を実施する名前解決装置に対して送出された名前解決を要求するメッセージが前記名前解決装置と通信可能な経路上の観測ポイントを通過して、前記観測ポイントにおいて前記名前解決を要求するメッセージからコピーされたメッセージを検出するステップと、前記検出したメッセージに、予め定められている所定の情報が含まれているか否かを判定するステップと、前記検出したメッセージに、予め定められている所定の情報が含まれていることを検出した場合に、前記名前解決を要求するメッセージに対する応答であって、前記名前解決装置が送出する応答メッセージと異なる擬似応答メッセージを、前記メッセージの検出から予め定められた時間の範囲に収まるように前記擬似応答メッセージを生成し、前記名前解決を要求するメッセージに対する前記名前解決装置からの応答メッセージが前記通信装置に到来する前に前記擬似応答メッセージが前記通信装置に届くように、前記生成した擬似応答メッセージを前記通信装置に対して送出させて、前記通信装置における名前解決を要求する処理を前記擬似応答メッセージの内容に従って完了させるステップと、を実行させるためのプログラムである。
以上説明したように、本発明によれば、特定のサーバ装置へのアクセスを制御することができる。
本発明の実施形態による通信システムの構成を示す概略ブロック図である。 本実施形態による通信制御装置の構成を示す概略ブロック図である。 名前解決の処理のシーケンス図である。 本実施形態の通信制御処理のシーケンス図である。 本実施形態の擬似応答メッセージを示す説明図である。 本実施形態における通信制御処理のフローチャートである。 本実施形態における名前解決を要求する処理を擬似応答メッセージの内容に従って完了させる処理を示すフローチャートである。 本実施形態におけるサーバ装置400の情報提供処理を示すフローチャートである。
以下、本発明の一実施形態について、図面を参照して説明する。
図1は、本実施形態による通信システムの概略構成図である。
この図1に示される通信システム1は、通信装置100、DNS装置200、通信制御装置300、サーバ装置400、ファイヤウォール(FW)500、600、プロキシ装置900を備える。通信システム1における名前解決について、DNS(Domain Name System)を例に挙げて説明する(詳細は、RFC1034,RFC1035などを参照する)。本実施形態におけるDNSは、DNS装置200とDNS装置700などの複数のDNSサーバから構成される。なお、DNS装置700は、DNSにおける下位のDNS装置200からの名前解決の要求に応じるDNSサーバである。
サーバ装置800は、一般に公開されているサーバである。
通信装置100、DNS装置200、通信制御装置300、サーバ装置400、ファイヤウォール500、600、DNS装置700、サーバ装置800、プロキシ装置900は、図示されないルータやL2(L3)スイッチ、HUB(ハブ)などの通信ノードを含む通信ネットワークを介して所定の通信が行えるように接続されている。
ファイヤウォール500、600は、通信ネットワークをセキュリティレベルの異なる3つの領域に分ける。その3つの領域は、領域Z1(内部環境の領域)、領域Z3(外部環境の領域)、領域Z2(DMZ)である。このように領域を分けることにより、領域Z1に配される装置と領域Z3に配される装置とが、直接通信できないようにする。通信装置100とサーバ装置400は、ファイヤウォール500によって分けられた領域Z1に配されている。DNS装置700、サーバ装置800は、ファイヤウォール600によって分けられた領域Z3に配されている。DNS装置200、通信制御装置300、プロキシ装置900は、ファイヤウォール500、600によって分けられた領域Z2に配されている。
プロキシ装置900は、領域Z1に配された通信装置100と、領域Z3に配されるサーバ装置800などの各サーバ装置との間で、予め定められたプロトコルの通信を中継する。例えば、予め定められた所定のプロトコルがHTTP(Hypertext Transfer Protocol))である場合、プロキシ装置900は、HTTPによる通信を中継し、領域Z1に配された装置と領域Z3に配された装置との間で、HTTPによる通信を可能とする。その際、プロキシ装置900は、アクセス制限リストに基づいたアクセス制限を実施して、アクセス制限リストにない宛先に対する通信を許可するようにしてもよい。
プロキシ装置900は、通信装置100から名前解決を要求するメッセージ(DNSクエリ)を受信した場合、そのDNSクエリをDNS装置200に転送する。また、そのDNSクエリに対するレスポンスを受信した場合、そのレスポンスを通信装置100に転送する。
通信装置100は、各種サーバ装置と通信を行う。通信装置100は、各種サーバ装置のうち領域Z3に配される各サーバ装置(例えば、サーバ装置800)と通信する場合には、プロキシ装置900を介して通信する。通信装置100は、必要に応じて、DNS装置200に対して特定のサーバ装置の名前解決を要求するリクエストを送信し、DNS装置200からリクエストに対するレスポンスを受信する。受信するレスポンスには、要求した名前解決に対する解としてのアドレス情報が含まれる。通信装置100は、要求した名前解決に対する解を得て、解として得たアドレス情報に基づいて、上記の特定のサーバ装置に対する通信を開始する。
DNS装置200は、通信装置100からの名前解決の要求に応じるDNSサーバである。DNS装置200、DNS装置700は、DNSキャッシュサーバとしての機能を備えるものとする。
サーバ装置400は、通信の接続先がサーバ装置400に変更されたことにより、サーバ装置400に接続されたことを示す情報を通信装置100に送信して、その情報を通信装置100において表示させる。なお、本実施形態において、通信の接続先がサーバ装置400に変更されたことを換言すれば、通信装置100が発したDNSクエリに応じてDNS装置200が応答する接続先とは異なる接続先が、通信制御装置300から出力される似応答メッセージにより指示されたこととして示すことができる。
サーバ装置400は、通信の安全性が担保された装置として利用できるように、セキュリティ性を高めるように構成されている。このようなサーバ装置400は、通信の安全性が担保されているとみなすことができる。以下の説明においては、例えば、サーバ装置400は、Webサーバであって、サーバ装置400に接続された各通信装置からの要求に応じて、例えば、HTML(HyperText Markup Language)で記述した情報を、当該通信装置に対し送信する。例えば、サーバ装置400は、当該通信装置に表示させる情報として、以下のような情報を当該通信装置に対して送信する。
「通信を試みたXX装置は、接続が禁止されている装置です。そのため、通信を試みた装置に接続するができません。この案内は、通信の安全が確保されている○○装置から提供しております。」このような表示をユーザーが視認することにより、ユーザーが要求した通信先に接続されず、安全なサーバに接続されていると判断することができる。
通信制御装置300は、領域Z3に配されるサーバ装置800などの各サーバ装置に対する通信を制御する。
図2は、本実施形態による通信制御装置の概略構成図である。この図2には、通信制御装置300と、通信制御装置300が接続される通信ノード350と、通信装置100と、DNS装置200との接続が模式的示されている。この図2においては、ファイヤウォール500、600、プロキシ装置900などの一部の装置の記載を省略する。通信ノード350は、通信装置100とDNS装置200との通信を中継するとともに、当該通信を通信制御装置300からモニタできるように、通信装置100とDNS装置200との通信に係る何れかの通信ポートをミラーリングするように設定されている。
通信制御装置300は、通信処理部310、記憶部320、制御部330を備える。
通信処理部310は、名前解決を要求する通信装置100から、DNS装置200(名前解決を実施する名前解決装置)に対して送出される情報を含むフレームを検出する。通信処理部310は、通信ネットワークを介して通信装置100と通信する。なお、通信制御装置300を通信ノード350を介して通信ネットワークに接続して稼働させる場合に、通信装置100とDNS装置200との間の物理的な通信経路を変更することなく通信装置100と通信できる。
通信処理部310は、例えば、リンク層(データリンク層)のプロトコルにMAC(media access control)、インターネット層(ネットワーク層)のプロトコルにIP(Internet Protocol)、トランスポート層のプロトコルにUDP(User Datagram Protocol)を適用したフレームの送受信を可能とする。通信処理部310は、例えば、IEEE802.3などの規格に準じた少なくとも1つの通信ポートを備える。通信処理部310は、この通信ポートを介して通信ネットワークに接続して、通信装置100からDNS装置200に対する通信を、フレーム(又はIPパケット)を単位として検出する。通信処理部310は、フレームヘッダー、IPパケットヘッダー、UDPパケットヘッダーの各種情報を検出し、検出した情報を制御部330に供給する。通信処理部310は、検出したフレームに含まれるUDPパケットのペイロード部の情報を制御部330に供給する。また、通信処理部310は、制御部330から供給される情報を含むフレームを、制御部330からの指示に応じて生成して送出する。
記憶部320は、半導体メモリー等を備えて構成され、通信制御装置300の各部に当該各部の処理を実行させるためのプログラムや各種情報を記憶する。記憶部320は、誘導先情報記憶部322、DNSアドレス情報記憶部324、検出対象情報記憶部326を備える。
誘導先情報記憶部322は、アクセス制限を実施する通信を検出した場合に、当該通信の接続先として指定する装置のアドレス情報(IPアドレス)を記憶する。
DNSアドレス情報記憶部324は、一般に公開されているDNS装置(DNS装置700など)のアドレス情報を記憶する。
検出対象情報記憶部326は、通信処理部310が検出したフレームに含まれる検出対象とする所定の情報を記憶する。当該所定の情報は、予め定められているものとする。例えば、当該所定の情報は、アクセスを禁止する装置に係る情報として、所定のドメイン名を示す文字列の情報又は予め定められている文字列の情報、DNSクエリに含まれるビットパターンなどの情報などを含む。
制御部330は、通信処理部310が検出したフレーム(又はIPパケット等)に含まれる情報から、通信装置100からDNS装置200に対して送出される名前解決を要求するメッセージを検出する。制御部330は、ヘッダ情報検出部332、判定処理部334、及び通信処理制御部336を備える。
ヘッダ情報検出部332は、通信処理部310が検出したフレームに含まれるIPパケットのヘッダ情報から送信元アドレス(SA)と宛先アドレス(DA)のアドレス情報を取得する。ヘッダ情報検出部332は、IPパケットに含まれるUDPパケットから、DNS装置200(名前解決装置)宛のポート番号を取得する。ヘッダ情報検出部332は、UDPパケットに含まれるメッセージにおいて、予め定められている所定の情報を検出する。予め定められている所定の情報は、例えば、検出したメッセージがDNSクエリのリクエストであるかレスポンスであるか否かを示す情報であってもよい。
判定処理部334は、検出したフレーム(又はIPパケット等)に含まれる情報に、予め定められている所定の情報が含まれているか否かを判定する。例えば、判定処理部334は、通信処理部310が検出したフレームに含まれるIPパケットのヘッダ情報の宛先アドレス(DA)のアドレス情報がDNS装置200であるか否かを判定する。判定処理部334は、ヘッダ情報検出部332が検出したフレーム(又はIPパケット等)に含まれるUDPパケットから、DNS装置200(名前解決装置)宛のポート番号が設定されているか否かを判定する。判定処理部334は、ヘッダ情報検出部332が検出したフレーム(又はIPパケット等)に含まれる情報に、予め定められている所定の情報が含まれているか否かを判定する。
通信処理制御部336は、通信処理部310が検出したフレーム(又はIPパケット等)において、予め定められている所定の情報が含まれていることを検出した場合に、通信装置100におけるDNS装置200に対して要求している名前解決を要求する処理を擬似応答メッセージの内容に従って完了させる。なお、予め定められている所定の情報は、検出対象情報記憶部326に記憶されている情報のうちの何れかの情報とする。また、上記の似応答メッセージは、検出したDNS装置200へのリクエストに対する応答であって、DNS装置200が上記リクエストに対して応答する応答メッセージと異なるものである。
上記のように名前解決を要求する処理を擬似応答メッセージの内容に従って完了させる場合について説明する。例えば、通信処理制御部336は、検出したメッセージにおいて、予め定められている所定のドメイン名を示す文字列が含まれたDNSクエリを検出したと判定処理部334が判定した場合に、ヘッダ情報検出部332が検出したメッセージに含まれるDNSクエリに応じた擬似応答メッセージを生成する。この擬似応答メッセージは、記憶部320(誘導先情報記憶部322)に記憶されている通信の安全性が担保された装置のアドレス情報をDNSクエリの解として含むものとする。なお、通信処理制御部336は、この擬似応答メッセージを生成する際には、検出したDNSクエリに応じた応答メッセージを通信装置100がDNS装置200から受信する前に、上記の擬似応答メッセージを通信装置100が受信するように、DNSクエリの検出から擬似応答メッセージの生成まで時間を、予め定められた時間の範囲に収まるように生成する。例えば、予め定められた時間は、DNS装置200がDNSクエリに対して応答するまでの応答時間とする。通信処理制御部336は、生成した擬似応答メッセージを通信装置100に対して送出させて、通信装置100における名前解決を要求する処理を擬似応答メッセージの内容に従って完了させる。
なお、上記の変形例として、例えば、通信処理制御部336は、検出したメッセージにおいて、予め定められている文字列と一致する文字列の情報を検出した場合に、名前解決を要求する処理を擬似応答メッセージの内容に従って完了させる条件としてもよい。
以下の説明においては、通信装置100は、サーバ装置800に対する通信を開始するために、DNS装置200に対して名前解決を要求する場合を例に挙げて説明する。以下の説明において、ファイヤウォール500、600、プロキシ装置900、通信ノード350などの一部の装置が実施する処理を省略する場合がある。
(原理の説明)
図3から図4を参照して、本実施形態の名前解決の処理について説明する。
最初に、本実施形態の説明に先立って、DNSによる一般的な名前解決の処理について説明する。
図3は、名前解決の処理のシーケンス図である。この図3には、通信装置100がDNS装置200に対して要求する名前解決の処理の流れが示されている。DNSによる名前解決の処理において、次の2つのステップが順に実施される。
(1)通信装置100が、サーバ装置800に対する通信を開始する要求に起因して、通信装置100からDNS装置200へのリクエスト(名前解決を要求するメッセージM11)を送信するステップ。
(2)通信装置100が、DNS装置200から上記リクエスト(メッセージM11)に応じたレスポンス(応答メッセージM12)を受信するステップ。
このように、DNSによる名前解決の処理においては、通信装置100からDNS装置200に送信するリクエスト(メッセージM11)と、DNS装置200からのレスポンス(応答メッセージM12)とが対になっている。通信装置100は、サーバ装置800に対する通信を開始する要求に起因して、名前解決を要求する処理Proc110Aを開始する。通信装置100は、DNS装置200からのレスポンス(応答メッセージM12)を受信して、名前解決を要求する処理Proc110Aを終了する。これにより、通信装置100は、DNS装置200からのレスポンス(応答メッセージM12)に応じて、サーバ装置800に対する通信を開始する。このように、通信装置100は、名前解決を要求する処理Proc110Aを正常に終了しており、アクセス制限を実施すべき対象のサーバ装置800にアクセスしてしまう。
以上に示すように、DNS装置200のアクセス制御リストのメンテナンスが不完全な状況では、アクセス制限を行いたいサーバ装置800に対する通信を許可してしまうことがわかる。
また、以上の通信処理の過程で、DNS装置200は、通信装置100からのリクエスト(メッセージM11)に応じて名前解決処理Proc200を実施して、名前解決処理Proc200の結果をDNS装置200からのレスポンス(応答メッセージM12)に含めて生成する。DNS装置200は、生成した応答メッセージM12からなるレスポンスを通信装置100に送出して、名前解決処理Proc200を終了させる。
なお、DNS装置200は、リクエスト(メッセージM11)に対する解を保持していない場合には、さらに上位のDNS装置(例えば、DNS装置700)に対する問い合わせを行う。このように、各DNS装置は、階層的に配置され、必要に応じて、より上位のDNS装置に対して問い合わせるように多層化されている。そのため、DNS装置200がリクエスト(メッセージM11)の解を保持していない場合には、上位のDNS装置に対して順次問い合わせ処理を実施することから、名前解決処理Proc200の時間が長くなる。要するに、通信装置100がリクエスト(メッセージM11)を送出してから、通信装置100がレスポンス(応答メッセージM12)を受信するまでの応答時間が長くなり、通信装置100における名前解決を要求する処理Proc110Aの時間も長くなる。
一方、通信装置100がリクエスト(メッセージM11)を送出してから、通信装置100がレスポンス(応答メッセージM12)を受信するまでの応答時間が最も短くなる場合は、通信装置100からネットワーク的に近いDNS装置200が、解であるアドレス情報を保持している場合である。このような場合には、DNS装置200における名前解決処理Proc200の時間が、解を保持していない場合に比べて比較的短くなり、それに応じて、通信装置100における名前解決を要求する処理Proc110Aの時間も比較的短くなる。
なお、通信装置100は、DNS装置200が送信するレスポンスを受信するまでに、真のレスポンスを模した疑似レスポンスを受信した場合に、受信した疑似レスポンスが所定の条件を満たすものであれば、すでにDNS装置200に要求している名前解決を要求する処理を終了(完了)する。
ここで、上記の通信装置100の動作に基づいた、本実施形態の通信制御処理について説明する。
図4は、本実施形態の通信制御処理のシーケンス図である。この図4には、図3と同様の条件で通信装置100がDNS装置200に対して要求する名前解決の処理の流れが示されている。通信装置100、DNS装置200、サーバ装置800は、図3の場合と同様のものとする。図4には、本実施形態の通信制御装置300、サーバ装置400が追加されている。以下、図3と異なる点を中心に説明を行う。
通信装置100が送出したDNS装置200へのリクエスト(名前解決を要求するメッセージM11)は、通信ノード350にてコピーされてメッセージM11’として通信制御装置300に届く。通信制御装置300は、検出対象のメッセージM11’として受信して、判定処理Proc300を開始する。
通信制御装置300は、判定の結果、アクセス制限の対象とする名前解決を要求するメッセージであると認定し、疑似レスポンス(擬似応答メッセージM13)を通信ノード350を介して通信装置100に送出する。
通信装置100は、通信制御装置300からの疑似レスポンス(擬似応答メッセージM13)を受信して、あたかも真のレスポンス(応答メッセージM12)を受信したかのように、名前解決を要求する処理Proc110を終了(完了)する。
一方で、DNS装置200は、図3と同様にレスポンス(応答メッセージM12)を通信装置100に対して送出する。ただし、通信装置100は、DNS装置200からのレスポンス(応答メッセージM12)を受信する前に、すでに名前解決を要求する処理Proc110を終了(完了)している。そのため、通信装置100は、レスポンス(応答メッセージM12)を不要な情報と判断して破棄する。通信装置100は、上記のように処理することにより、サーバ装置800に対する通信を開始するためのアドレス情報を受信せずに済む。
このように、通信装置100は、名前解決を要求する処理Proc110を正常に終了していながら、アクセス制限を必要とするサーバ装置800への通信が規制されて、アクセスが制限された状態になる。
さらに、通信制御装置300は、通信装置100に受信させる疑似レスポンス(擬似応答メッセージM13)に、通信装置100の通信先を所望の装置に誘導させる情報を設定することができる。例えば、通信制御装置300は、通信装置100の通信先を誘導する所望の装置のアドレス情報を前述の名前解決の要求に対する解として含ませた擬似応答メッセージM13にする。ここでは、通信装置100の通信先を誘導する所望の装置をサーバ装置400とする。
これにより、擬似応答メッセージM13に従って通信を開始する通信装置100は、擬似応答メッセージM13に含まれたアドレス情報に応じて、サーバ装置400との通信を開始する(メッセージM15)。サーバ装置400は、通信装置100からの要求に応じて、例えば、通信先の変更を示す情報を送信する処理(Proc400)を実施する。その結果、サーバ装置400からの情報をメッセージM16として受信する。
(擬似応答メッセージ)
次に図5を参照して、擬似応答メッセージの例について示す。
図5は、擬似応答メッセージを示す説明図である。この図5に示されるように、受信するDNSクエリと、DNSクエリに対する疑似レスポンスのいずれもが、UDPパケットをカプセル化したIPパケットとして形成される。
図5(a)は、受信したDNSクエリを含むメッセージM11’を示し、図5(b)は、DNSクエリに対する疑似レスポンス含む擬似応答メッセージM13を示す。
擬似応答メッセージM13の生成に当たり、IPアドレスについては、受信したメッセージM11’のIPヘッダに含まれる送信元アドレス(SA)と宛先アドレス(DA)を入れ替えて、擬似応答メッセージM13のIPヘッダに含まれる送信元アドレス(SA)と宛先アドレス(DA)にする。
UDPのポート番号については、受信したメッセージM11’のUDPヘッダに含まれる送信元ポート番号をコピーして、擬似応答メッセージM13のUDPヘッダに含まれる宛先ポート番号にする。擬似応答メッセージM13のUDPヘッダに含まれる送信元ポート番号は、例えば、既定の番号(「53」)にする。
DNSクエリの識別番号(ID)については、受信したメッセージM11’のDNSクエリの識別番号(ID)をコピーして、擬似応答メッセージM13のDNSクエリに対するレスポンスの識別番号(ID)にする。
DNSクエリに対する解は、例えば、記憶部320に記憶されている通信の安全性が担保された装置(例えば、サーバ装置400など)のアドレス情報(IPアドレス)にする。
上記の説明ではチェックサムなどについての説明を省略しているが、一般的な手法に準じて生成したものを充当する。
(通信制御処理)
次に、本実施形態における通信制御処理について説明する。本実施形態における通信制御処理は、次のステップに大別される。
(1)検出したフレームに含まれるDNS装置200へのリクエストをモニタするステップ。
(2)DNS装置200へのリクエストのうちから、アクセス制限の対象となるホスト(例えば、サーバ装置800)の名前解決のリクエストであることを検出するステップ。
(3)アクセス制限の対象となるホスト(例えば、サーバ装置800)の名前解決のリクエストだった場合に、DNS装置200に対する名前解決のリクエストの処理を通信装置100において擬似応答メッセージの内容に従って完了させるステップ。
以下、図6を参照して、本実施形態における通信制御処理の一例を、上記ステップに対応させて説明する。図6は、本実施形態における通信制御処理のフローチャートである。
(検出したフレームに含まれるDNS装置200へのリクエストをモニタするステップ)
通信装置100からDNS装置200に対して送出されるフレームを、通信処理部310が検出する。
通信処理部310が検出したフレームに含まれるIPパケットのヘッダ情報から送信元アドレス(SA)と宛先アドレス(DA)のアドレス情報を、制御部330のヘッダ情報検出部332が取得する(ステップS10)。
通信処理部310が検出したフレーム(IPパケット)に含まれるUDPパケットから、DNS装置200(名前解決装置)宛のポート番号を、ヘッダ情報検出部332が取得する(ステップS20)。
ヘッダ情報検出部332は、検出したUDPパケットに含まれるメッセージにおいて、予め定められている所定の情報を検出する(ステップS30)。予め定められている所定の情報は、例えば、検出したメッセージがDNSクエリのリクエストであることを識別するための情報であればよく、より具体的には、DNSクエリのリクエストかレスポンスであるか否かを示す情報であってもよい。
制御部330の判定処理部334は、取得した宛先アドレス(DA)がDNS装置200のIPアドレスであるか否かを判定する(ステップS40)。ステップS40における判定により、取得した宛先アドレス(DA)がDNS装置200のIPアドレスではないと判定した場合(ステップS40:No)、検出した情報の解析処理を終了する。
ステップS40における判定により、取得した宛先アドレス(DA)がDNS装置200のIPアドレスであると判定した場合(ステップS40:Yes)、判定処理部334は、通信処理部310が検出したフレーム(IPパケット)に含まれるUDPパケットから、宛先のポート番号がDNSを指定する番号(例えば、「53」)であるか否かを判定する(ステップS50)。ステップS50における判定により、宛先のポート番号がDNSを指定する番号(例えば、「53」)でないと判定した場合(ステップS50:No)、検出した情報の解析処理を終了する。
ステップS50における判定により、宛先のポート番号がDNSを指定する番号(例えば、「53」)であると判定した場合(ステップS50:Yes)、判定処理部334は、検出したUDPパケットに含まれるメッセージにおいて、予め定められている所定の情報が含まれているか否かを判定する(ステップS60)。上記の判定により、判定処理部334は、予め定められている所定の情報が含まれているメッセージをDNS装置200へのリクエストと判定する。
ステップS60における判定により、検出したメッセージにおいて、予め定められている所定の情報が含まれていないと判定した場合(ステップS60:No)、検出した情報の解析処理を終了する。
以上の処理により、検出したフレームに含まれるDNS装置200へのリクエストを検出することができる。
(DNS装置200へのリクエストから、アクセスブロック対象となるホストの名前解決のリクエストを検出するステップ)
ステップS60における判定により、予め定められている所定の情報が含まれていると判定した場合(ステップS60:Yes)、即ち、DNS装置200へのリクエストと判定した場合、通信処理制御部336は、名前解決の対象のサーバ装置を特定する文字列を、検出対象情報記憶部326を参照して検索する(ステップS70)。
通信処理制御部336は、名前解決の対象のサーバ装置を特定する文字列が検出対象情報記憶部326に記憶されている情報に存在するか否かを判定する(ステップS80)。ステップS80の判定により、名前解決の対象のサーバ装置を特定する文字列が検出対象情報記憶部326に記憶されている情報に存在しないと判定した場合(ステップS80:No)、検出した情報の解析処理を終了する。
以上の処理により、DNS装置200へのリクエストから、アクセスブロック対象となるホストの名前解決のリクエストを検出することができる。
(アクセス制限の対象となるホストの名前解決のリクエストだった場合に、DNS装置200に対する名前解決のリクエストの処理を通信装置100において擬似応答メッセージの内容に従って完了させるステップ)
ステップS80の判定により、名前解決の対象のサーバ装置を特定する文字列が検出対象情報記憶部326に記憶されている情報に存在すると判定した場合(ステップS80:Yes)、通信処理制御部336は、通信装置100における名前解決を要求する処理を擬似応答メッセージM13の内容に従って完了させ(ステップS90)、検出した情報の解析処理を終了する。なお、似応答メッセージM13は、検出したDNS装置200へのリクエストに対する応答であって、DNS装置200が上記リクエストに対して応答する応答メッセージと異なるものである。
以上の処理により、DNS装置200に対する名前解決のリクエストの処理を通信装置100において擬似応答メッセージの内容に従って完了させることができる。
次に、図7を参照して、ステップ90の名前解決を要求する処理を擬似応答メッセージの内容に従って完了させる、より具体的な処理について説明する。図7は、ステップ90の名前解決を要求する処理を擬似応答メッセージの内容に従って完了させる処理を示すフローチャートである。この図7に示す処理の前提条件は、アクセス制限の対象となるホスト(サーバ装置800)の名前解決のリクエストを通信制御装置300が検出した段階にあり、通信制御装置300は以下の処理を行う。
まず、制御部330の通信処理制御部336は、検出したメッセージM11’に応じて、DNSクエリの擬似応答メッセージM13を生成する(ステップS92)。通信処理制御部336は、生成した擬似応答メッセージM13を、通信処理部310を介して送出する(ステップS94)。この擬似応答メッセージM13には、DNS装置200が応答する接続先とは異なる接続先に接続されたことを示す情報を通信装置100に送信して当該情報を通信装置100に表示させる装置のアドレス情報が、前記検出したDNSクエリの解として含まれている。
以上の処理により、アクセス制限の対象となるホスト(例えば、サーバ装置800)の名前解決のリクエストだった場合に、DNS装置200に対する名前解決のリクエストの処理を通信装置100に擬似応答メッセージの内容に従って完了させるように制御することができる。
なお、一度レスポンスを返却された通信装置100(クライアント)は、当該レスポンスの結果を、DNSのフォーマットにおいて規定されている「レコードのTTL(生存時間)」に応じて通信装置100内に保持する。このように、アクセス制限を実施する時間をTTLとして設定することで、通信装置100は、一定の時間、当該ホスト(サーバ装置800)にアクセスするためのリクエストを送信しなくなる。
なお、本実施形態においては、DNS装置200が応答する接続先とは異なる接続先に接続されたことを示す情報を通信装置100に送信して当該情報を通信装置100に表示させる装置を、サーバ装置400とする場合を例示する。以下、サーバ装置400が通信装置100に表示させる情報について説明する。
次に、図8を参照して、サーバ装置400の情報提供処理について説明する。図8は、サーバ装置400の情報提供処理を示すフローチャートである。この図8に示す処理の前提条件は、通信装置100の通信がサーバ装置400に誘導された段階にある。
サーバ装置400は、通信装置100からの通信要求を受け付けて、通信装置100に対して、通信先の変更を示す情報を送信する(ステップS410)。
通信装置100は、上記の情報を備える表示部に表示して、ユーザーに接続先が変更されていることを認知させるようにする。例えば、サーバ装置400は、通信装置100に対し、サーバ装置400に接続されたこと(接続先が変更されていること)を示す画面情報を送信して、通信装置100において、同画面情報を表示させるようにする。
以上のように、本実施形態に示す通信制御方法では、単に、接続要求を破棄したり、通信を遮断したりするだけに留めることなく、通信が行えない状況をユーザーに認知させることも容易に行うことができる。
<通信制御装置300を適用することの有利性について>
以下、本実施形態の通信制御装置300を適用することの有用性について説明する。
(HTTP以外の通信プロトコルについての適用性)
DNSは、HTTP以外の通信プロトコルを利用するサーバ装置に対してアクセスする際にも利用されている。例えば、DNSを利用する例として、電子メールサービスを実施するMXサーバ(例えば、通信プロトコルにSMTPを利用するメールサーバ。例えば、サーバ装置800に相当。)に対してアクセスする場合が挙げられる。電子メールの宛先は、通常「(固有の文字列)@(ドメイン名)」のように表記される電子メールアドレスによって指定する。このように、電子メールアドレスにも「ドメイン名」が含まれており、送付先のMXサーバの検索に、その「ドメイン名」に対する名前解決が必要とされることから、DNSが利用されている。
そこで、上記のようにアクセス制限を実施するMXサーバに対するアクセス要求がある場合、アクセス要求(リクエスト)に対しても、本実施形態に示すように、リクエストに応じた擬似応答メッセージ(疑似レスポンス)を通信装置100に返すようにする。
このように、通信装置100は、要求に応じた擬似応答メッセージ(疑似レスポンス)を検出して、アクセス制限を実施すべきMXサーバ(サーバ装置800)に対するアクセス要求を終了させるとともに、擬似応答メッセージ(疑似レスポンス)に応じた接続先のMXサーバ(例えば、サーバ装置400に相当。)に対して通信を開始する。
また、同様の手法により、通信ネットワークにおける外部環境に設けるMXサーバでなく、内部環境に設けるMXサーバ(例えば、サーバ装置400)に一時的にトラフィックを向けることができる。例えば、このような利用形態によって、外部環境に設けたMXサーバ(サーバ装置800)の通信履歴を残すことができない場合であっても、一時的にトラフィックが向けられた内部環境に設けるMXサーバ(サーバ装置400)に、通信の履歴情報を記録させることが可能になる。本実施形態の構成を応用することにより、外部環境に設けたMXサーバ(サーバ装置800)の通信履歴を取得することができない場合であっても、MXサーバの通信履歴を容易に取得することが可能になる。
(上位のプロトコルに依存しない対策の共通化)
上位プロトコルに依存しない共通の機能を対策の対象にしていることから、各種上位プロトコルの共通する対策を講じるだけで、各種上位プロトコルに対する対策を実施できる。
ここで、プロキシ装置(プロキシ装置900)におけるアクセス制限と対比する。プロキシ装置においてHTTPに基づいたアクセス制限を実施しても、HTTP以外のプロトコルについてはアクセス制限を実施できない。そのため、HTTP以外のプロトコルについては他の対策を別途実施することが必要になる。
一方、本実施形態によれば、名前解決の段階でアクセス制限を実施できるので、名前解決を必要とするプロトコルについては、共通の対策を適用できる。
(DNSクエリを検出する機能を独立させる優位性)
本実施形態においては、フレームの中継処理や、リクエストに対する正規の応答をするDNSなどの処理と、本実施形態のアクセス制限の処理とを分離して、ハードウェアリソースを独立させる。これによりDNSクエリの検出の即時性を容易に確保することができる。
なお、本実施形からの変形として、上記の中継処理や正規のDNSなどの処理の少なくとも何れかの処理と、本実施形態のアクセス制限の処理とを、共通のハードウェアリソースのもとで並列に実施する場合、処理が集中して、処理の負荷が重くなることにより検出の即時性が低下することがある。共通のハードウェアリソースのもとで並列に実施する場合には、十分な処理能力を有するように構成することを推奨する。
(トラフィックを中継させないことの優位性)
本実施形態からの変形として、共通のハードウェアリソースのもとで、検出を行う回線の全てのメッセージを中継するように構成した場合(インライン型の場合)には、全てのメッセージについて中継する処理が必要になる。このような場合、トラフィック量が増大することによりプロトコルの各階層の処理の負荷がそれぞれ重くなる。そのため、中継処理の遅延時間が生じたり、トラフィックが集中する場合にパフォーマンスが低下したりすることがある。
一方、本実施形態に示す構成では、検出を行う回線の全てのメッセージを中継する上記のインライン型のようにメッセージを中継することはない。本実施形態に示す構成では、単に、接続された回線から取得するメッセージをモニタするだけでよいので、メッセージを中継する処理の負荷に影響されることがない。また、あくまで必要な情報を取得できればよく、必要な情報を検出可能とする範囲まで、検出機能(各プロトコルの実装)を縮退させることも可能である。
さらに、トラフィックを中継させない構成にしていることにより、以下の点で優位性がある。
通信処理部310は、通信システム1に接続して稼働させる場合に、通信装置100とDNS装置200との間の物理的な通信経路を変更せずに、接続された回線から取得するメッセージをモニタするように通信ネットワークに接続することができる。例えば、通信ネットワークに接続する際には、通信ポートを接続する通信ノードのポートミラーリング機能を利用して、通信装置100とDNS装置200との間の回線をモニタできるようにするとよい。
(処理能力を向上させるための構成について)
DNS装置(例えば、DNS装置200)は、名前解決された解を複数保持することができる。DNS装置は、複数保持している名前解決された解の中に、名前解決の要求に対応する解が含まれているかを判定する際に検索処理を行う。そのため、保持する名前解決された解の数(レコード数)が多くなると、一致の判定が下されるまでの平均時間が長くなる。
そこで、通信制御装置300では、1台あたりが検出する対象の数を制限することで、検索に掛る時間を短縮させることができる。
なお、検出する対象の数が、自装置1台あたりの通信制御装置300が対象とする数を超える場合には、通信制御装置300の台数を複数設けることにしてもよい。
その場合、それぞれの通信制御装置300は、検出する対象が異なるように設定することにより、1台の通信制御装置300で検出する対象の数を制限して、検索に掛る時間を短縮させることができる。
(処理を分散させるための構成について)
DNS装置200に直接接続される回線を検出対象の回線としている場合、DNS装置200に対するすべてのトラフィックが集中する。このような場合には、DNSクエリが存在する確率が高くなる。このような場合には、トラフィックを集約させる前の回線にそれぞれ、通信制御装置を配することにより、通信制御装置が実施する処理を複数の装置に分散させることができる。
(DNSの仕組みを悪用するウィルスなどに対する対策について)
DNSの仕組みを悪用して、ホストのアドレスを頻繁に切り替えるタイプのウィルスに対して、本実施形態の通信制御装置300は、有効な対策となる。
<変形例(その1)>
以上、実施形態に示した構成は、Webサーバとして稼働しているサーバ装置800を対象に、通信装置100からのアクセスを制限する場合(通信妨害)を想定したものである。
一方、ウィルスが情報持ち出しを行うタイプであり、その持ち出し先のアドレス情報を名前解決によって得る手順を踏むものであれば、持ち出し先(例えば、サーバ装置800)を特定して、当該持ち出し先についての名前解決を制限してもよい。
<変形例(その2):要求メッセージの検出方法について>
以上の実施形態に示した説明では、DNS装置200宛のメッセージM11’を検出する際に、IPアドレスを参照する方法を例示したが、MACアドレスを参照してDNS装置200宛のメッセージ11’を検出可能である場合には、検出したフレームのMACヘッダに含まれるMACアドレスを参照するようにしてもよい。
<変形例(その3):要求メッセージの検出方法について>
以上の実施形態に示した説明では、DNSクエリを正確に検出する場合を例示して説明した。本実施形態の変形として、DNSクエリが含まれているメッセージを検出するように構成する場合も想定できる。例えば、DNSのフォーマット中の「OPCODE」として規定されている情報から、DNSクエリを特定することができる。OPCODEは、4ビットの情報であるが、定義されている値は「0(0000b(ビット表記))」、「1(0001b)」、「2(0010b)」である。要するに、4ビットのうち下位の2ビットしか利用していないため、検出対象のビットを下位の2ビットにしてもよい。この場合、厳密に「0」を特定したことにならないが、実質的にDNSクエリであることを判定することができる。このように、メッセージ中の所定の位置に特定の情報(ビットパターン)が含まれていることを検出するように、本実施形態の検出方法を変形してもよい。
同様に、DNSクエリのUDPにおけるポート番号が「53」に規定されているが、DNSに対するメッセージの判定条件をポート番号の全ビットの完全一致を一部のビットの一致に変更してもよい。
また、本発明の実施形態は、上述の例に限るものではなく、本発明の範囲内で様々な形態をとることができる。例えば、上述した通信システム1が備える各構成は、任意のコンピュータ装置に分散または集約して配置することができる。例えば、通信制御装置300は、クラウド環境やネットワーク環境、ユーザー数の規模、通信システム1を構成するために用意されたハードウェアの数やスペック等に応じて、任意のコンピュータ装置に分散または集約して配置することができる。
なお、本発明における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりメッセージの表示制御を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、CD−ROM等の非一過性の記録媒体であってもよい。また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部または外部に設けられた記録媒体も含まれる。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後に通信装置100で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
また、上述した機能の一部または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
1 通信システム、
100 通信装置、
200、700 DNS装置、
300 通信制御装置、
310 通信処理部、
320 記憶部、
322 誘導先情報記憶部、324 DNSアドレス情報記憶部、326 検出対象情報記憶部、
330 制御部、
332 ヘッダ情報検出部、334 判定処理部、336 通信処理制御部、
350 通信ノード、
400、800 サーバ装置、
500、600 ファイヤウォール、
900 プロキシ装置

Claims (6)

  1. 名前解決を要求する通信装置から、名前解決を実施する名前解決装置に対して送出された名前解決を要求するメッセージが前記名前解決装置と通信可能な経路上の観測ポイントを通過して、前記観測ポイントにおいて前記名前解決を要求するメッセージからコピーされたメッセージを検出し、
    前記検出したメッセージに、予め定められている所定の情報が含まれていることを検出した場合に、前記名前解決を要求するメッセージに対する応答であって、前記名前解決装置が送出する応答メッセージと異なる擬似応答メッセージを、前記メッセージの検出から予め定められた時間の範囲に収まるように前記擬似応答メッセージを生成し、
    前記名前解決を要求するメッセージに対する前記名前解決装置からの応答メッセージが前記通信装置に到来する前に前記擬似応答メッセージが前記通信装置に届くように、前記生成した擬似応答メッセージを前記通信装置に対して送出させて、前記通信装置における名前解決を要求する処理を前記擬似応答メッセージの内容に従って完了させる制御部
    を備えることを特徴とする通信制御装置。
  2. 前記制御部は、
    前記検出したメッセージに、予め定められている所定のドメイン名を示す文字列が含まれたDNSクエリを検出した場合に、前記検出したDNSクエリに応じて前記名前解決装置が応答する接続先とは異なる接続先を解とする前記擬似応答メッセージを生成し、前記生成した擬似応答メッセージを前記通信装置に対して送出させて、前記通信装置における前記名前解決を要求する処理を前記擬似応答メッセージの内容に従って完了させる
    ことを特徴とする請求項1に記載の通信制御装置。
  3. 前記似応答メッセージには、前記名前解決装置が応答する接続先とは異なる接続先に接続されたことを示す情報を前記通信装置に送信して当該情報を前記通信装置に表示させる装置のアドレス情報が、前記検出したDNSクエリの解として含まれている
    ことを特徴とする請求項2に記載の通信制御装置。
  4. 前記制御部は、
    前記名前解決を要求するメッセージを検出するための検出条件が複数に分割され、前記分割された検出条件に対応する前記予め定められている所定の情報を検出する、
    ことを特徴とする請求項1から請求項3の何れか1項に記載の通信制御装置。
  5. 名前解決を要求する通信装置から、名前解決を実施する名前解決装置に対して送出された名前解決を要求するメッセージが前記名前解決装置と通信可能な経路上の観測ポイントを通過して、前記観測ポイントにおいて前記名前解決を要求するメッセージからコピーされたメッセージを検出するステップと、
    前記検出したメッセージに、予め定められている所定の情報が含まれているか否かを判定するステップと、
    前記検出したメッセージに、予め定められている所定の情報が含まれていることを検出した場合に、前記名前解決を要求するメッセージに対する応答であって、前記名前解決装置が送出する応答メッセージと異なる擬似応答メッセージを、前記メッセージの検出から予め定められた時間の範囲に収まるように前記擬似応答メッセージを生成し、前記名前解決を要求するメッセージに対する前記名前解決装置からの応答メッセージが前記通信装置に到来する前に前記擬似応答メッセージが前記通信装置に届くように、前記生成した擬似応答メッセージを前記通信装置に対して送出させて、前記通信装置における名前解決を要求する処理を前記擬似応答メッセージの内容に従って完了させるステップと、
    を備えることを特徴とする通信制御方法。
  6. 通信制御装置のコンピュータに、
    名前解決を要求する通信装置から、名前解決を実施する名前解決装置に対して送出された名前解決を要求するメッセージが前記名前解決装置と通信可能な経路上の観測ポイントを通過して、前記観測ポイントにおいて前記名前解決を要求するメッセージからコピーされたメッセージを検出するステップと、
    前記検出したメッセージに、予め定められている所定の情報が含まれているか否かを判定するステップと、
    前記検出したメッセージに、予め定められている所定の情報が含まれていることを検出した場合に、前記名前解決を要求するメッセージに対する応答であって、前記名前解決装置が送出する応答メッセージと異なる擬似応答メッセージを、前記メッセージの検出から予め定められた時間の範囲に収まるように前記擬似応答メッセージを生成し、前記名前解決を要求するメッセージに対する前記名前解決装置からの応答メッセージが前記通信装置に到来する前に前記擬似応答メッセージが前記通信装置に届くように、前記生成した擬似応答メッセージを前記通信装置に対して送出させて、前記通信装置における名前解決を要求する処理を前記擬似応答メッセージの内容に従って完了させるステップと、
    を実行させるためのプログラム。
JP2012288756A 2012-12-28 2012-12-28 通信制御装置、通信制御方法、及びプログラム Active JP6111067B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012288756A JP6111067B2 (ja) 2012-12-28 2012-12-28 通信制御装置、通信制御方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012288756A JP6111067B2 (ja) 2012-12-28 2012-12-28 通信制御装置、通信制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2014131230A JP2014131230A (ja) 2014-07-10
JP6111067B2 true JP6111067B2 (ja) 2017-04-05

Family

ID=51409226

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012288756A Active JP6111067B2 (ja) 2012-12-28 2012-12-28 通信制御装置、通信制御方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP6111067B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR0014773A (pt) * 1999-10-15 2002-06-11 Thomson Licensing Sa Sistema de comunicação bidirecional compatìvel com internet segura e interface de usuário
CN101371246A (zh) * 2006-01-20 2009-02-18 派克斯费尔有限公司 用于辨识并控制通信业务的系统和方法
US9467421B2 (en) * 2011-05-24 2016-10-11 Palo Alto Networks, Inc. Using DNS communications to filter domain names

Also Published As

Publication number Publication date
JP2014131230A (ja) 2014-07-10

Similar Documents

Publication Publication Date Title
US12010135B2 (en) Rule-based network-threat detection for encrypted communications
US20200007494A1 (en) Incompatible network gateway provisioned through dns
CN108667730B (zh) 基于负载均衡的报文转发方法、装置、存储介质和设备
US8073936B2 (en) Providing support for responding to location protocol queries within a network node
US20170034174A1 (en) Method for providing access to a web server
US11165805B2 (en) Guard system for automatic network flow controls for internet of things (IoT) devices
US20130227167A1 (en) Distributing transmission of requests across multiple ip addresses of a proxy server in a cloud-based proxy service
US9578126B1 (en) System and method for automatically discovering wide area network optimized routes and devices
JP2002232446A (ja) ダイナミック・ロード・バランサ
JP6737610B2 (ja) 通信装置
JP6793056B2 (ja) 通信装置及びシステム及び方法
US10348687B2 (en) Method and apparatus for using software defined networking and network function virtualization to secure residential networks
US11658995B1 (en) Methods for dynamically mitigating network attacks and devices thereof
US11874845B2 (en) Centralized state database storing state information
EP2963880B1 (en) Data sending and processing method and router
CN105763666A (zh) 管理服务器上的通信量过载
JP2008118599A (ja) 通信装置、通信制御方法、及び通信制御プログラム
JP4895793B2 (ja) ネットワーク監視装置及びネットワーク監視方法
JP6111067B2 (ja) 通信制御装置、通信制御方法、及びプログラム
US20070147376A1 (en) Router-assisted DDoS protection by tunneling replicas
WO2014125708A1 (ja) 受信装置、受信装置制御方法、受信装置制御プログラム、ネットワークシステム、ネットワークシステム制御方法、及びネットワークシステム制御プログラム
JP5267893B2 (ja) ネットワーク監視システム、ネットワーク監視方法、及びネットワーク監視プログラム
WO2016170598A1 (ja) 情報処理装置、方法およびプログラム
EP3185510B1 (en) Method for data packet inspection, related device and computer-program product
JP2004289260A (ja) 動的アドレス付与サーバを利用したクライアントの安全性検診システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151007

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160817

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161031

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: 20170214

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170313

R150 Certificate of patent or registration of utility model

Ref document number: 6111067

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250