JP2022049717A - Communication device - Google Patents
Communication device Download PDFInfo
- Publication number
- JP2022049717A JP2022049717A JP2019015817A JP2019015817A JP2022049717A JP 2022049717 A JP2022049717 A JP 2022049717A JP 2019015817 A JP2019015817 A JP 2019015817A JP 2019015817 A JP2019015817 A JP 2019015817A JP 2022049717 A JP2022049717 A JP 2022049717A
- Authority
- JP
- Japan
- Prior art keywords
- server
- name resolution
- server device
- terminal
- communication
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、ネットワークにおける不正な通信を検知する技術に関する。 The present invention relates to a technique for detecting unauthorized communication in a network.
近年、ネットワークサービスに対して個人や組織を狙ったサイバー攻撃が行われ、甚大な被害が発生している。これらの攻撃からネットワークに接続されたWebサーバーなどの通信機器を防御するために種々の攻撃検知方法が提案されているが、攻撃者は攻撃手法を頻繁に変更したり、巧妙化したりすることで検知を困難にしていた。従来の攻撃検知方法は、過去に攻撃を受けた手法を検知するものであり、新たな手法による攻撃を検知することは困難であった。 In recent years, cyber attacks targeting individuals and organizations have been carried out against network services, causing enormous damage. Various attack detection methods have been proposed to protect communication devices such as Web servers connected to the network from these attacks, but attackers frequently change or refine the attack methods. It was difficult to detect. The conventional attack detection method detects a method that has been attacked in the past, and it is difficult to detect an attack by a new method.
そこで、大規模なトラフィックデータから異常な通信を行う端末のIPアドレス群を検知することによって攻撃を行っているホスト(悪性ホスト)を特定する技術などが提案されている(例えば、特許文献1参照)。 Therefore, a technique for identifying a host (malignant host) attacking by detecting an IP address group of a terminal performing abnormal communication from a large-scale traffic data has been proposed (see, for example, Patent Document 1). ).
しかしながら、サイバー攻撃の検知はできるだけ早期に行う必要があるが、大規模なトラフィックデータを解析するためには多くの処理時間を必要とした。特に、未知の攻撃を検知するために、通信されるパケットを機械学習によりリアルタイムで攻撃の検知を行うことは困難であった。 However, although it is necessary to detect cyber attacks as soon as possible, it takes a lot of processing time to analyze large-scale traffic data. In particular, in order to detect an unknown attack, it has been difficult to detect an attack in real time by machine learning on the packet to be communicated.
本発明は、上記事情に鑑みなされたもので、サイバー攻撃をリアルタイムに検知する技術の提供を目的とする。 The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a technique for detecting a cyber attack in real time.
本発明の代表的な一形態によれば、ネットワークに接続された端末からサーバー装置にアクセスする場合に当該サーバー装置が悪性ホストであるか否かを判定する通信装置であって、前記端末は、前記サーバー装置の絶対ドメイン名を含む名前解決要求を、当該絶対ドメイン名に対応するIPアドレスを特定するDNSサーバーに送信し、前記DNSサーバーは、前記名前解決要求に含まれる絶対ドメイン名に対応するIPアドレスを特定し、当該特定されたIPアドレスを含む名前解決結果を前記端末に送信し、前記端末は、前記DNSサーバーから送信された名前解決結果に基づいて、前記サーバー装置との通信を開始し、前記通信装置は、前記端末から送信されたデータを、当該データの送信先にかかわらず受信するデータ受信部と、前記サーバー装置が悪性ホストであるか否かを判定する判定部と、前記データ受信部が受信したデータを、当該データの送信先に送信するデータ送信部と、を備え、前記データ受信部が前記DNSサーバーに送信する名前解決要求を受信した場合には、前記判定部が、当該名前解決要求に含まれる絶対ドメイン名に基づいて、前記サーバー装置が悪性ホストであるか否かを判定し、前記データ送信部は、前記サーバー装置が悪性ホストであるか否かの判定結果が導出されたか否かに関わらず前記名前解決要求を前記DNSサーバーに送信し、前記データ受信部が前記DNSサーバーから前記名前解決結果を受信した場合には、前記判定部が、当該名前解決結果に対応する名前解決要求による判定結果に基づいて、前記サーバー装置が悪性ホストであるか否かを判定することを特徴とする。 According to a typical embodiment of the present invention, when accessing a server device from a terminal connected to a network, the server device is a communication device for determining whether or not the server device is a malicious host, and the terminal is a communication device. A name resolution request including the absolute domain name of the server device is sent to a DSN server that identifies an IP address corresponding to the absolute domain name, and the DSN server corresponds to the absolute domain name included in the name resolution request. The IP address is specified, the name resolution result including the specified IP address is transmitted to the terminal, and the terminal starts communication with the server device based on the name resolution result transmitted from the DNS server. However, the communication device includes a data receiving unit that receives data transmitted from the terminal regardless of the destination of the data, a determination unit that determines whether the server device is a malicious host, and the above. The determination unit includes a data transmission unit that transmits the data received by the data reception unit to the transmission destination of the data, and when the data reception unit receives a name resolution request to be transmitted to the DNS server, the determination unit Based on the absolute domain name included in the name resolution request, the server device determines whether or not the server device is a malicious host, and the data transmission unit determines whether or not the server device is a malicious host. When the name resolution request is transmitted to the DNS server regardless of whether or not is derived, and the data receiving unit receives the name resolution result from the DSN server, the determination unit determines the name resolution result. It is characterized in that it is determined whether or not the server device is a malicious host based on the determination result of the name resolution request corresponding to.
本発明の代表的な実施形態によると、通信速度の低下を利用者に感じさせることなくサイバー攻撃をリアルタイムで検知可能となる。 According to a typical embodiment of the present invention, it is possible to detect a cyber attack in real time without making the user feel a decrease in communication speed.
ネットワークに接続された端末から別のネットワークに接続されたサーバー装置(例えば、WEBサーバー)にアクセスする場合、まず、接続先のサーバー名(絶対ドメイン名)によってDNSサーバーから接続先のIPアドレスを特定する(名前解決)。本実施形態では、名前解決を行っている間に接続先のサーバー装置が悪性ホスト(サイバー攻撃を行う計算機)であるか否かを判定する。接続先のサーバー装置を悪性ホストでない(良性ホスト)と判定した場合にはそのまま通信を継続し、悪性ホストと判定された場合には通信を遮断する。名前解決を行うための時間は通常の通信に必要な時間であるため、この間に悪性ホストを検知するための処理を行っても利用者は遅延を体感させる可能性は少ない。以下、添付図面を参照しながら本発明の実施形態について説明する。 When accessing a server device connected to another network (for example, a WEB server) from a terminal connected to the network, first, the IP address of the connection destination is specified from the DNS server by the server name (absolute domain name) of the connection destination. (Name resolution). In the present embodiment, it is determined whether or not the server device to be connected is a malicious host (computer that performs a cyber attack) while performing name resolution. If it is determined that the server device to be connected is not a malicious host (benign host), communication is continued as it is, and if it is determined to be a malicious host, communication is cut off. Since the time for name resolution is the time required for normal communication, it is unlikely that the user will experience a delay even if processing for detecting a malicious host is performed during this time. Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.
図1は、本発明の実施形態の悪性ホストへのアクセスをリアルタイムに検知するパケット分類装置(通信装置)を含む通信システムの概要を説明する図である。本実施形態ではTCP/IPによる通信を対象とするが、他のプロトコルによる通信でも本発明を適用可能である。また、本実施形態では、利用者が端末を操作し、外部のネットワークに接続されたサーバー装置(例えば、Webサーバー)にアクセスする場合を想定している。 FIG. 1 is a diagram illustrating an outline of a communication system including a packet classification device (communication device) that detects access to a malicious host according to the embodiment of the present invention in real time. Although the present embodiment targets communication by TCP / IP, the present invention can also be applied to communication by other protocols. Further, in the present embodiment, it is assumed that the user operates the terminal and accesses a server device (for example, a Web server) connected to an external network.
利用者が端末を操作して外部のネットワークに接続されたWebサーバーにアクセスする場合、まず、接続先のWebサーバーのIPアドレスをDNSサーバーに問い合わせて特定し、その後、特定されたIPアドレスに基づいてWebサーバーとの通信を開始する。このとき、利用者が端末の操作から指定したサイトを参照するまで待機する時間は、名前解決に要する時間、Webサーバーとの通信時間、及び、Webサーバーから受信したデータを端末で処理する時間となる。したがって、名前解決が完了し、接続先のWebサーバーとの通信を開始するまでの間に接続先のWebサーバーが悪性ホストであるか否かを判定することで悪性ホストへのアクセスを阻止することができる。 When a user operates a terminal to access a Web server connected to an external network, first the IP address of the Web server to be connected is queried to the DSN server to identify it, and then based on the specified IP address. And start communication with the Web server. At this time, the time for the user to wait from the operation of the terminal to the reference to the specified site is the time required for name resolution, the communication time with the Web server, and the time for processing the data received from the Web server on the terminal. Become. Therefore, it is necessary to prevent access to the malicious host by determining whether the connection destination Web server is a malicious host before the name resolution is completed and the communication with the connection destination Web server is started. Can be done.
続いて、本発明の実施形態における悪性ホストの検知方法を適用するネットワーク構成例について説明する。図2は、本発明の実施形態のネットワーク構成の一例を示す図である。本実施形態では、外部ネットワーク(第1ネットワーク)10に接続されたWebサーバー11と、内部ネットワーク(第2ネットワーク)20に接続された端末21との間で通信が行われる。
Subsequently, an example of a network configuration to which the method for detecting a malicious host in the embodiment of the present invention is applied will be described. FIG. 2 is a diagram showing an example of a network configuration according to an embodiment of the present invention. In the present embodiment, communication is performed between the
外部ネットワーク10と内部ネットワーク20との間には、各ネットワークを相互接続する通信機器(ルーター40)が配置される。さらに、端末21が接続しようとするWebサーバー11が悪性ホストであるか否かを判定するパケット分類装置(通信装置)100がルーター40と内部ネットワーク20との間に配置されている。なお、パケット分類装置100は、内部ネットワーク20の内部に設置してもよい。本実施形態では、端末21から外部ネットワーク10に接続されたWebサーバー11等の計算機に接続する場合、パケット分類装置100を経由してDNSキャッシュサーバー(DNSサーバー)30に接続し、通信先の計算機のIPアドレスを特定する。DNSキャッシュサーバー30が接続先のサーバー名(絶対ドメイン名)を特定できなかった場合には、ネットワーク経由で複数の権威DNSサーバー60に再帰的に問い合わせて絶対ドメイン名を解決する。以降、DNSキャッシュサーバー30と権威DNSサーバー60を合わせてDNSサーバーとする。
A communication device (router 40) for interconnecting each network is arranged between the
パケット分類装置100は、端末21の接続先(Webサーバー11)を悪性ホストと判定した(悪性ホストに分類した)場合には、外部ネットワーク10に接続されたWebサーバー11との通信を遮断する。このとき、ルーター40、パケット分類装置100等のネットワーク機器を管理するための管理計算機(図示せず)に分類結果(警報)を通知し、警告メッセージを表示するなどして管理者に報知するようにしてもよい。また、パケット分類装置100が通信を遮断せずに、ルーター40に指示して悪性ホストとの通信を遮断するようにしてもよい。
When the
また、本実施形態では、悪性ホストであるか否かを択一的に判定するものでなくてもよい。例えば、悪性ホストの判定値を100、良性ホストの判定値を0とし、0から100の判定値で悪性ホストである可能性を判定するのであれば、判定値が所定の閾値以上の場合には通信を遮断し、判定値が所定範囲内であれば警告メッセージを表示して利用者の判断で接続するか否かを選択するようにしてもよい。この場合、パケット分類装置100に悪性ホストの判定結果のログを記録し、実際に悪性ホストであったか否かを判定可能としておくとよい。また、管理計算機に通知し、管理計算機がログを記録するようにしてもよい。さらに、パケット分類装置100で通信ログを記録し、悪性ホストの可能性がある場合のみ管理計算機に通知するようにしてもよい。
Further, in the present embodiment, it is not necessary to selectively determine whether or not the host is a malignant host. For example, if the judgment value of a malignant host is 100, the judgment value of a benign host is 0, and the possibility of being a malignant host is judged by a judgment value of 0 to 100, if the judgment value is equal to or higher than a predetermined threshold value. Communication may be cut off, and if the determination value is within a predetermined range, a warning message may be displayed and the user may decide whether or not to connect. In this case, it is preferable to record a log of the determination result of the malicious host in the
パケット分類装置100は、悪性ホストの接続を阻止するために、外部のネットワークにアクセスする場合に必ずパケットが通過する箇所に配置される。また、ネットワーク内に配置されるパケット分類装置100は単一であってもよいし、複数であってもよい。複数配置する場合には、トラフィックの増大を防ぐために、パケットが複数のパケット分類装置100を通過することを避けるように配置するとよい。
The
続いて、パケット分類装置100のハードウェア及びソフトウェアの構成について説明する。図3は、本発明の実施形態のパケット分類装置100のハードウェア構成及びソフトウェアの構成の一例を示す図である。パケット分類装置100は、通信インターフェース(IF)101、プロセッサ(CPU)110、メモリ120及び記憶装置160を備え、各構成はバスによって接続される。
Subsequently, the hardware and software configurations of the
通信インターフェース(IF)101は、端末21、DNSキャッシュサーバー30などから転送されたパケットを受信したり、管理計算機からの命令入力を受け付けたりする。プロセッサ(CPU)110は、メモリ120に記憶された各種プログラムを実行することによって各種機能を提供し、例えば、端末21の接続先(Webサーバー11)が悪性ホストであるか否かを判定する機能を提供する。メモリ120は、プロセッサ110によって実行される各種プログラムを記憶したり、プログラムの実行に必要なデータを一時的に記憶したりする。記憶装置160は、通信インターフェース(IF)101を介して受信したパケットの情報(例えば、名前解決要求に含まれる接続先(Webサーバー11)の絶対ドメイン名、名前解決結果に含まれる接続先(Webサーバー11)のIPアドレス等)を蓄積したり、プログラムによる処理結果(端末21の接続先が悪性ホストであるか否かの判定結果等)を格納したりする。
The communication interface (IF) 101 receives the packet transferred from the terminal 21, the
次に、メモリ120及び記憶装置160の構成について説明する。メモリ120には、パケットの通信制御を行う通信制御部121と、端末21と通信する計算機が悪性ホストであるか否かを判定する検知部(判定部)130を記憶する。本実施形態では、悪性ホストを判定(分類)する手法は任意の方法でよいが、パケットの送信先となるサーバー装置の絶対ドメイン名、IPアドレスなどの情報を蓄積し、学習することによって悪性ホストであるか否かを判定する手法を採用している。また、メモリ120は、悪性ホストを検知する精度を向上させるために学習データを収集及び生成する学習部140を記憶する。検知部130及び学習部140は、プログラム及び当該プログラムを実行するためのデータによって構成される。記憶装置160は、パケットデータ格納部161及び学習データ格納部162を提供する。以下、各構成について説明する。
Next, the configurations of the
検知部130は、端末21の接続先が悪性ホストであるか否かを判定する。検知部130は、解析部131、特徴抽出部132及び分類部133を含む。解析部131は、通信IF101から取得したパケットを一時的に記憶し、受信したパケットから取得した情報を解析し、必要に応じてパケットデータ格納部161に解析結果を格納する。
The
特徴抽出部132は、解析部131による解析結果から特徴情報を抽出する。解析部131による解析結果は、解析部131から直接取得してもよいし、パケットデータ格納部161に記憶された解析結果を取得してもよい。
The
分類部133は、特徴抽出部132によって抽出された特徴情報をニューラルネットに入力し、学習データ格納部162に格納された学習データに基づいて端末21の接続先(パケットの送信先、Webサーバー11)が良性ホストであるか又は悪性ホストであるかを判定(分類)する。
The
学習部140は、分類部133による分類(判定)精度を向上させるために、収集された学習データに基づいてニューラルネットワークによる判定の精度を向上させるためのパラメータを調整し、学習結果を学習データ格納部162に反映させる。学習データ収集部141は、パケットデータ格納部161及び学習データ格納部162から学習データを収集する。ニューラルネット学習部142は、学習データ収集部141によって収集された学習データに基づいてニューラルネットワークの学習を実施する。このとき、学習データ格納部162から学習結果を反映する前の学習データを取得し、学習実施後、学習結果を反映させた学習データを学習データ格納部162に格納する。学習データは、ニューラルネットによって端末21の接続先を良性ホスト又は悪性ホストに分類するために必要なパラメータ及びデータである。
In order to improve the classification (judgment) accuracy by the
ニューラルネットワークの学習は、管理計算機からの実行指示に基づいて実行してもよいし、定期的に実行するようにしてもよい。また、未学習のデータがパケットデータ格納部161に所定量以上蓄積された場合に実行するようにしてもよい。
The learning of the neural network may be executed based on the execution instruction from the management computer, or may be executed periodically. Further, it may be executed when unlearned data is accumulated in the packet
分類部133は、ニューラルネットによって端末21の接続先を良性ホスト又は悪性ホストに分類(判定)する。本実施形態では、端末21の接続先を分類するアルゴリズムとしてTensorFlow、LIBSVMなどの機械学習ライブラリを利用する。
The
続いて、パケット分類装置100が受信したパケットを外部ネットワークに転送する手順について説明する。図4は、本実施形態のパケット分類装置100がパケットを転送するための構成の一例を示す図である。本実施形態のパケット分類装置100では、ネットワーク処理を高速化するためにインテル(登録商標)のデータプレーン開発キット(DPDK;Data Plane Development Kit)技術を利用している。DPDKは、特定のアプリケーションに対してカーネル機能をバイパスした専用機能を提供する。なお、同等の機能を有していればDPDK以外のソリューションを適用してもよい。
Subsequently, a procedure for transferring the received packet by the
通信IF101が受信したパケットは、DPDKによって提供される受信バッファRX(データ受信部)102に一旦格納され、検知部130に引き渡される。受信バッファRX(データ受信部)102は、キュー構造となっており、パケットを受信した順序で検知部130に送り出す。その後、解析部131、特徴抽出部132及び分類部133によって受信したパケットの送信先(端末21の接続先;Webサーバー11)を良性ホスト又は悪性ホストに分類(判定)する。
The packet received by the communication IF 101 is temporarily stored in the reception buffer RX (data receiving unit) 102 provided by the DPDK, and is delivered to the
さらに、送信バッファTX(データ送信部)103にパケットを格納し、通信IF101を介して外部ネットワーク10に送信する。このとき、パケットの送信先が悪性ホストであれば、送信バッファTX103にパケットを格納せずに破棄してもよい。このように構成することで、ルーター側で指定されたパケットを破棄する機能など、パケット分類装置100以外は一般的なネットワーク機器を使用することが可能となり、導入コストを軽減することができる。一方、外部ネットワーク10にパケットを転送するルーターに送信先が悪性ホストであることを通知し、ルーターがパケットを破棄するようにしてもよい。
Further, the packet is stored in the transmission buffer TX (data transmission unit) 103 and transmitted to the
続いて、本発明を適用したリアルタイム検知システムの適用例について具体的に説明する。前述したように、本実施形態で悪性ホストを検知する手法は、既存の技術を採用し、具体的には、TensorFlow、LIBSVMなどの機械学習ライブラリを利用している。これらの手法による悪性ホストの検知は、技術の進歩や学習データの蓄積などにより精度の向上が図られている。一方、受信したパケットから抜き出した情報に基づいて特徴量を抽出して解析するためには時間を要するため、悪性ホストをリアルタイムに検知することは困難であった。本実施形態では、実用的なパケット転送速度と高い攻撃検知精度を両立させることを目的としている。 Subsequently, an application example of the real-time detection system to which the present invention is applied will be specifically described. As described above, the method for detecting a malicious host in the present embodiment adopts an existing technique, specifically, a machine learning library such as TensorFlow or LIBSVM is used. The accuracy of detecting malicious hosts by these methods has been improved due to technological advances and the accumulation of learning data. On the other hand, it is difficult to detect a malicious host in real time because it takes time to extract and analyze the feature amount based on the information extracted from the received packet. The purpose of this embodiment is to achieve both a practical packet transfer speed and high attack detection accuracy.
一方、アルゴリズムの高速化、ハードウェア性能の向上などによって悪性ホストの検知精度を高めながら実用的なパケット転送速度を維持することは容易ではない。前述のように、悪性ホストの検知精度については既存技術を使用するため、本発明ではパケット転送速度の維持を目的としている。ここで、端末21から接続先のサーバー装置(Webサーバー11)との通信を開始する実行される各工程の処理時間を計測した結果を示す。 On the other hand, it is not easy to maintain a practical packet transfer speed while improving the detection accuracy of malicious hosts by increasing the speed of algorithms and improving hardware performance. As described above, since the existing technique is used for the detection accuracy of the malicious host, the present invention aims to maintain the packet transfer speed. Here, the result of measuring the processing time of each executed process for starting the communication from the terminal 21 to the connection destination server device (Web server 11) is shown.
図5は、本実施形態において端末21がWebサーバー11と通信を開始するまでの各工程の処理時間を示す図である。グラフは箱ひげ図とし、縦軸は処理時間(μ秒)で対数軸となっており、横軸は工程である。図5では、分類部133にLIBSVMを適用する場合(左)とTensorFlowを適用する場合(右)について、アルゴリズムごとに各工程の処理時間を示している。各工程は、受信(RX)、解析(パース、Parser)、特徴量抽出(Extractor Processing)、分類(Classifier parts)、合計(Total)となっている。
FIG. 5 is a diagram showing the processing time of each process until the terminal 21 starts communication with the
図5に示すように、分類(破線)が他の工程と比較して多くの処理時間を要している。また、分類以外の工程はアルゴリズムごとの処理時間の差は少ないが、分類の工程ではLIBSVMよりもTensorFlowを適用した方が高速に処理できる。なお、1パケット分の総処理時間は、悪性ホストを検知しない場合には0.4231μs(2.118Gbps)、LIBSVMを適用した場合には557.8μs(1.264Mbps)、TensorFlowを適用した場合には72.492μs(9.60Mbps)となっている。なお、分類のためのアルゴリズムは、要求される処理速度及び検知精度に応じて選択すればよい。 As shown in FIG. 5, the classification (broken line) requires a lot of processing time as compared with other steps. In addition, although the difference in processing time for each algorithm is small in processes other than classification, it is possible to process faster by applying TensorFlow than in LIBSVM in the classification process. The total processing time for one packet is 0.4231 μs (2.118 Gbps) when no malicious host is detected, 557.8 μs (1.264 Mbps) when LIBSVM is applied, and when TensorFlow is applied. Is 72.492 μs (9.60 Mbps). The algorithm for classification may be selected according to the required processing speed and detection accuracy.
以上のように、悪性ホストを検知する処理がパケット転送時にボトルネックとなってしまうため、実用的なパケット転送速度を実現するためには100~1000倍程度の高速化を必要とする。そこで、本発明では通信の手順に着目し、端末21が通信しようとする外部ネットワークに接続されたサーバー装置の名前解決を行っている間に接続先のサーバー装置が悪性ホストであるか良性ホストであるかを判定(分類)する。本発明の特徴は、端末21から送信される接続先のサーバー装置(Webサーバー11)の名前解決要求に含まれる情報(絶対ドメイン名等)に基づいて悪性ホストの検知を開始し、DNSサーバーによって接続先のサーバー装置のIPアドレスが特定されるまでの間に悪性ホストの検知を完了させることで実際に悪性ホストに端末21が接続することを阻止する。 As described above, since the process of detecting a malicious host becomes a bottleneck at the time of packet transfer, it is necessary to increase the speed by about 100 to 1000 times in order to realize a practical packet transfer speed. Therefore, in the present invention, paying attention to the communication procedure, the connection destination server device is a malicious host or a benign host while the terminal 21 is performing name resolution of the server device connected to the external network with which the terminal 21 communicates. Judge (classify) whether or not there is. The feature of the present invention is that the detection of a malicious host is started based on the information (absolute domain name, etc.) included in the name resolution request of the connection destination server device (Web server 11) transmitted from the terminal 21, and the DNS server starts the detection. By completing the detection of the malicious host before the IP address of the connection destination server device is specified, the terminal 21 is prevented from actually connecting to the malicious host.
図6は、本発明の実施の形態における悪性ホストを検知するタイミングを説明する図である。パケット分類装置100は、(1)端末21がDNSキャッシュサーバー30に名前解決要求を送信するタイミングT1、(2)DNSキャッシュサーバー30が名前解決の結果を端末21に送信するタイミングT2、(3)端末21がWebサーバー11との通信を開始するタイミングT3でWebサーバー11が悪性ホストであるか否かを判定する。タイミングT1、T2、T3で接続先(Webサーバー11)が悪性ホストであるか否かを判定することで悪性ホストに接続する前に(サイバー攻撃を受ける前に)通信を遮断できる。以下、各タイミングで悪性ホストを検知するための構成について説明する。
FIG. 6 is a diagram illustrating a timing for detecting a malignant host in the embodiment of the present invention. The
図7は、本発明の実施形態において端末21がDNSキャッシュサーバー30に名前解決要求を送信するタイミングT1で悪性ホストを検知するための構成を説明する図である。タイミングT1では、端末21がDNSキャッシュサーバー30に対して接続先(Webサーバー11)のIPアドレスを特定するための名前解決要求(DNSクエリ)を送信する。パケット分類装置100は、端末21から送信された名前解決要求を受信し、名前解決要求に含まれる情報に基づいて、接続先(Webサーバー11)が悪性ホストであるか否かを判定する。
FIG. 7 is a diagram illustrating a configuration for detecting a malicious host at the timing T1 when the terminal 21 transmits a name resolution request to the
パケット分類装置100は、端末21から名前解決要求を受信すると、通信IF101を介して受信バッファRX102に名前解決要求に対応するパケットを格納する。解析部131は、受信した名前解決要求の内容を参照し、絶対ドメイン名(FQDN)を抽出する。さらに、良性ホストの絶対ドメイン名が記録されたドメインホワイトリストを参照し、抽出された絶対ドメイン名がドメインホワイトリストに含まれているか否かを判定する。抽出された絶対ドメイン名がドメインホワイトリストに含まれている場合には(“legitimate”)、接続先が良性ホストであるため、送信バッファTX103に名前解決要求に対応するパケットを格納する。送信バッファTX103に格納されたパケットは、通信制御部121によってDNSキャッシュサーバー30に送信される。
When the
解析部131は、抽出された絶対ドメイン名がドメインホワイトリストに含まれていない場合には(“not matched”)、悪性ホストの絶対ドメイン名が記録されたドメインブラックリストを参照し、抽出された絶対ドメイン名がドメインブラックリストに含まれているか否かを判定する。抽出された絶対ドメイン名がドメインブラックリストに含まれている場合には(“malicious”)、接続先が悪性ホストであるため、送信するパケットを破棄する。このとき、端末21には接続できない旨のメッセージを端末21に応答するようにしてもよい。
When the extracted absolute domain name is not included in the domain whitelist (“not matched”), the
また、抽出された絶対ドメイン名がドメインブラックリストに含まれていない場合には(“not matched”)、接続先が悪性ホストであるか良性ホストであるかを特定できないため、特徴抽出部132によって名前解決要求に含まれる情報から特徴情報を抽出し、分類部133によって接続先を悪性ホスト又は良性ホストに分類する。また、悪性ホスト又は良性ホストの分類には処理時間を必要とするため、接続先へのアクセスの遅延を防ぐために、送信バッファTX103に名前解決要求に対応するパケットを格納する。これにより、DNSキャッシュサーバー30に名前解決要求が送信され、DNSキャッシュサーバー30が名前解決を行っている間に並行して接続先の分類を実行することができる。分類結果が導出されると、分類部133は、分類結果が良性ホストの場合にはドメインホワイトリストに反映し(“legitimate”)、悪性ホストの場合にはドメインブラックリストに反映する(“malicious”)。
In addition, when the extracted absolute domain name is not included in the domain blacklist (“not matched”), it is not possible to identify whether the connection destination is a malicious host or a benign host, so the
以上のように、端末21からDNSキャッシュサーバー30に名前解決要求が送信されると、パケット分類装置100が名前解決要求に含まれる絶対ドメイン名などの情報に基づいて接続先が良性ホストであるか悪性ホストであるかを判定する。絶対ドメイン名がドメインブラックリスト又はドメインホワイトリストに含まれておらず、良性ホストであるか悪性ホストであるかを特定できない場合には、検知部130が接続先の特徴情報及び学習データに基づいて接続先が悪性ホストであるか良性ホストであるかを分類(判定)する。このとき、名前解決要求をDNSキャッシュサーバー30に送信し、DNSキャッシュサーバー30が名前解決を行っている間に接続先を分類し、分類結果をドメインブラックリスト又はドメインホワイトリストに反映する。このように、DNSキャッシュサーバー30が名前解決を行っている間に接続先の絶対ドメイン名を分類することで通信の遅延を最小限に抑制できる。
As described above, when the name resolution request is transmitted from the terminal 21 to the
DNSキャッシュサーバー30は、端末21から送信された名前解決要求を受信すると、接続先のIPアドレスを特定し、特定されたIPアドレスを含む名前解決結果を端末21に送信する。パケット分類装置100は、DNSキャッシュサーバー30から名前解決結果を受信すると(タイミングT2)、再度接続先が悪性ホストであるか否かを判定する。以下、タイミングT2における処理について説明する。
When the
図8は、本発明の実施形態において端末21がDNSキャッシュサーバー30から名前解決結果を受信するタイミングT2で悪性ホストを検知するための構成を説明する図である。パケット分類装置100は、DNSキャッシュサーバー30から名前解決結果を受信すると、通信IF101を介して受信バッファRX102に名前解決結果に対応するパケットを格納する。
FIG. 8 is a diagram illustrating a configuration for detecting a malicious host at the timing T2 when the terminal 21 receives the name resolution result from the
解析部131は、名前解決要求の受信時(タイミングT1)に絶対ドメイン名を分類した結果が反映されたドメインブラックリスト及びドメインホワイトリストに基づいて再度接続先が悪性ホストであるか否かを判定する。さらに説明すると、まず、接続先の絶対ドメイン名がドメインホワイトリストに含まれているか否かを判定する。このとき、接続先の絶対ドメイン名がドメインホワイトリストに含まれている場合には(“legitimate”)、接続先が良性ホストであるため、送信バッファTX103に名前解決結果に対応するパケットを格納する。送信バッファTX103に格納されたパケットは、通信制御部121によって端末21に送信される。
The
解析部131は、絶対ドメイン名がドメインホワイトリストに含まれていない場合には(“not matched”)、絶対ドメイン名がドメインブラックリストに含まれているか否かを判定する。絶対ドメイン名がドメインブラックリストに含まれている場合には(“malicious”)、接続先が悪性ホストであるため、名前解決結果に対応するパケットを破棄する。さらに、名前解決結果に接続先のドメインのIPアドレスが含まれている場合には(“domain exist”)、悪性ホストのIPアドレスが記録されたIPブラックリストに追加(更新)する。
When the absolute domain name is not included in the domain whitelist (“not matched”), the
一方、プロセッサ110は、絶対ドメイン名がドメインブラックリストに含まれていない場合には(“not matched”)、送信バッファTX103に名前解決結果に対応するパケットを格納し、通信制御部121によって端末21に送信する。
On the other hand, when the absolute domain name is not included in the domain blacklist (“not matched”), the
以上のように、DNSキャッシュサーバー30から端末21に名前解決結果が送信されると、DNSキャッシュサーバー30が名前解決を実行している間に接続先ドメインの分類結果が反映されたドメインブラックリスト及びドメインホワイトリストに基づいて再度良性ホストであるか又は悪性ホストであるかを判定(分類)する。接続先ドメインの名前解決と並行して接続可否を判定するため、利用者は悪性ホストの判定に要する時間を意識することなく端末21を操作可能となる。なお、名前解決結果の応答時に接続先の分類が終了していない場合には、検知精度を優先して分類が終了するまで待機してもよいし、通信時間の遅延抑制を優先して悪性ホストの判定を省略してもよい。
As described above, when the name resolution result is transmitted from the
端末21は、DNSキャッシュサーバー30から名前解決結果を受信すると、名前解決結果に含まれる接続先のIPアドレスに基づいて接続先のWebサーバー11にアクセスする。パケット分類装置100は、Webサーバー11へのアクセス要求を受信すると(タイミングT3)、接続先のIPアドレスに対応する計算機が悪性ホストであるか否かを判定する。以下、タイミングT3における処理について説明する。
When the terminal 21 receives the name resolution result from the
図9は、本発明の実施形態において端末21が接続先のWebサーバー11にアクセスするタイミングT3で悪性ホストを検知するための構成を説明する図である。パケット分類装置100は、端末21から接続先のWebサーバー11へのアクセス要求(接続要求)を受信すると、通信IF101を介してアクセス要求に対応するパケットを受信バッファRX102に格納する。
FIG. 9 is a diagram illustrating a configuration for detecting a malicious host at the timing T3 when the terminal 21 accesses the connection
解析部131は、アクセス要求に含まれる接続先(Webサーバー11)のIPアドレスを抽出し、IPブラックリストに含まれるか否かを判定する。抽出されたIPアドレスがIPブラックリストに含まれている場合には(“domain exist”)、接続先が悪性ホストであるため、送信するパケット(アクセス要求)を破棄する。一方、抽出されたIPアドレスがIPブラックリストに含まれていない場合には(“not matched”)、送信バッファTX103に接続先へのアクセス要求に対応するパケットを格納し、通信制御部121によって接続先(Webサーバー11)に送信する。
The
以上のように、本発明の実施形態によれば、端末21がWebサーバー11と通信を開始する際に、名前解決を実行する間に接続先のWebサーバー11が悪性ホストであるか否かを判定することが可能となるため、通信速度の低下を利用者に感じさせることなくサイバー攻撃をリアルタイムで検知することが可能となる。
As described above, according to the embodiment of the present invention, when the terminal 21 starts communication with the
以上、本発明の実施形態について説明したが、上記実施形態は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を上記実施形態の具体的構成に限定する趣旨ではない。 Although the embodiments of the present invention have been described above, the above embodiments are only a part of the application examples of the present invention, and the technical scope of the present invention is limited to the specific configuration of the above embodiments. do not have.
10 外部ネットワーク(第1ネットワーク)
11 Webサーバー(サーバー装置)
20 内部ネットワーク(第2ネットワーク)
21 端末
30 DNSキャッシュサーバー(DNSサーバー)
40 ルーター
60 権威DNSサーバー
100 パケット分類装置(通信装置)
101 通信インターフェース(IF)
102 受信バッファRX(データ受信部)
103 送信バッファTX(データ送信部)
110 プロセッサ(CPU)
120 メモリ
121 通信制御部
130 検知部(判定部)
131 解析部
132 特徴抽出部
133 分類部
140 学習部
141 学習データ収集部
142 ニューラルネット学習部
160 記憶装置
161 パケットデータ格納部
162 学習データ格納部
10 External network (1st network)
11 Web server (server device)
20 Internal network (second network)
21
40
101 Communication interface (IF)
102 Receive buffer RX (data receiver)
103 Transmission buffer TX (data transmission unit)
110 processor (CPU)
120
131
Claims (7)
前記端末は、前記サーバー装置の絶対ドメイン名を含む名前解決要求を、当該絶対ドメイン名に対応するIPアドレスを特定するDNSサーバーに送信し、
前記DNSサーバーは、前記名前解決要求に含まれる絶対ドメイン名に対応するIPアドレスを特定し、当該特定されたIPアドレスを含む名前解決結果を前記端末に送信し、
前記端末は、前記DNSサーバーから送信された名前解決結果に基づいて、前記サーバー装置との通信を開始し、
前記通信装置は、
前記端末から送信されたデータを、当該データの送信先にかかわらず受信するデータ受信部と、
前記サーバー装置が悪性ホストであるか否かを判定する判定部と、
前記データ受信部が受信したデータを、当該データの送信先に送信するデータ送信部と、
を備え、
前記データ受信部が前記DNSサーバーに送信する名前解決要求を受信した場合には、前記判定部が、当該名前解決要求に含まれる絶対ドメイン名に基づいて、前記サーバー装置が悪性ホストであるか否かを判定し、
前記データ送信部は、前記サーバー装置が悪性ホストであるか否かの判定結果が導出されたか否かに関わらず前記名前解決要求を前記DNSサーバーに送信し、
前記データ受信部が前記DNSサーバーから前記名前解決結果を受信した場合には、前記判定部が、当該名前解決結果に対応する名前解決要求による判定結果に基づいて、前記サーバー装置が悪性ホストであるか否かを判定することを特徴とする通信装置。 A communication device that determines whether or not the server device is a malicious host when accessing the server device from a terminal connected to the network.
The terminal sends a name resolution request including the absolute domain name of the server device to the DSN server that identifies the IP address corresponding to the absolute domain name.
The DNS server identifies an IP address corresponding to an absolute domain name included in the name resolution request, and sends a name resolution result including the specified IP address to the terminal.
The terminal starts communication with the server device based on the name resolution result transmitted from the DNS server.
The communication device is
A data receiving unit that receives data transmitted from the terminal regardless of the destination of the data, and
A determination unit for determining whether or not the server device is a malicious host,
A data transmission unit that transmits the data received by the data reception unit to the destination of the data, and a data transmission unit.
Equipped with
When the data receiving unit receives the name resolution request to be transmitted to the DNS server, the determination unit determines whether or not the server device is a malicious host based on the absolute domain name included in the name resolution request. Judging whether
The data transmission unit transmits the name resolution request to the DNS server regardless of whether or not the determination result of whether or not the server device is a malicious host is derived.
When the data receiving unit receives the name resolution result from the DNS server, the determination unit determines that the server device is a malicious host based on the determination result of the name resolution request corresponding to the name resolution result. A communication device characterized by determining whether or not it is.
前記データ受信部が前記DNSサーバーから前記名前解決結果を受信したタイミングで前記名前解決要求による判定結果が導出されていない場合には、当該名前解決結果を前記端末に送信し、
前記データ受信部が前記端末から前記サーバー装置に対するアクセス要求を受信した場合には、前記判定部が、前記名前解決要求による判定結果に基づいて、前記サーバー装置が悪性ホストであるか否かを判定することを特徴とする通信装置。 In the communication device according to claim 1,
If the determination result by the name resolution request is not derived at the timing when the data receiving unit receives the name resolution result from the DNS server, the name resolution result is transmitted to the terminal.
When the data receiving unit receives an access request to the server device from the terminal, the determination unit determines whether or not the server device is a malicious host based on the determination result of the name resolution request. A communication device characterized by
前記端末と前記サーバー装置との通信を制御する通信制御部をさらに備え、
前記通信制御部は、前記サーバー装置が悪性ホストであると判定された場合には、前記端末と前記サーバー装置との通信を遮断することを特徴とする通信装置。 In the communication device according to claim 1 or 2.
A communication control unit that controls communication between the terminal and the server device is further provided.
The communication control unit is a communication device, characterized in that, when it is determined that the server device is a malicious host, the communication between the terminal and the server device is cut off.
前記判定部による判定結果に基づいて学習データを生成し、当該学習データを蓄積する学習部をさらに備え、
前記判定部は、前記蓄積された学習データに基づいて、前記サーバー装置が悪性ホストであるか否かを判定することを特徴とする通信装置。 The communication device according to any one of claims 1 to 3.
A learning unit that generates learning data based on the determination result by the determination unit and stores the learning data is further provided.
The determination unit is a communication device, characterized in that it determines whether or not the server device is a malignant host based on the accumulated learning data.
前記判定部は、
悪性ホストでないサーバー装置の絶対ドメイン名が記憶されたドメインホワイトリストを有し、
前記学習データに基づく判定結果を前記ドメインホワイトリストに反映し、
前記ドメインホワイトリストに基づいて、前記サーバー装置が悪性ホストでないことを判定することを特徴とする通信装置。 In the communication device according to claim 4,
The determination unit
It has a domain whitelist that stores the absolute domain names of server devices that are not malicious hosts.
The determination result based on the learning data is reflected in the domain whitelist, and
A communication device for determining that the server device is not a malicious host based on the domain whitelist.
前記判定部は、
悪性ホストであるサーバー装置の絶対ドメイン名が記憶されたドメインブラックリストを有し、
前記学習データに基づく判定結果を前記ドメインブラックリストに反映し、
前記ドメインブラックリストに基づいて、前記サーバー装置が悪性ホストであることを判定することを特徴とする通信装置。 In the communication device according to claim 4 or 5.
The determination unit
It has a domain blacklist that stores the absolute domain name of the server device that is the malicious host.
The determination result based on the learning data is reflected in the domain blacklist, and
A communication device for determining that the server device is a malicious host based on the domain blacklist.
前記判定部は、
悪性ホストであるサーバー装置のIPアドレスが記憶されたIPブラックリストを有し、
前記ドメインブラックリストに基づく判定結果を前記IPブラックリストに反映し、
前記IPブラックリストに基づいて、前記サーバー装置が悪性ホストであることを判定することを特徴とする通信装置。
In the communication device according to claim 6,
The determination unit
It has an IP blacklist that stores the IP address of the server device that is the malicious host.
The determination result based on the domain blacklist is reflected in the IP blacklist, and
A communication device for determining that the server device is a malicious host based on the IP blacklist.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019015817A JP2022049717A (en) | 2019-01-31 | 2019-01-31 | Communication device |
PCT/JP2020/003542 WO2020158896A1 (en) | 2019-01-31 | 2020-01-30 | Communication device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019015817A JP2022049717A (en) | 2019-01-31 | 2019-01-31 | Communication device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022049717A true JP2022049717A (en) | 2022-03-30 |
Family
ID=71842254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019015817A Pending JP2022049717A (en) | 2019-01-31 | 2019-01-31 | Communication device |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2022049717A (en) |
WO (1) | WO2020158896A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022264366A1 (en) * | 2021-06-17 | 2022-12-22 | 日本電信電話株式会社 | Probe device, probe range determination method, and probe range determination program |
-
2019
- 2019-01-31 JP JP2019015817A patent/JP2022049717A/en active Pending
-
2020
- 2020-01-30 WO PCT/JP2020/003542 patent/WO2020158896A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2020158896A1 (en) | 2020-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110445770B (en) | Network attack source positioning and protecting method, electronic equipment and computer storage medium | |
CN102487339B (en) | Attack preventing method for network equipment and device | |
US8886927B2 (en) | Method, apparatus and system for preventing DDoS attacks in cloud system | |
US9088605B2 (en) | Proactive network attack demand management | |
US20120005743A1 (en) | Internal network management system, internal network management method, and program | |
US20140047543A1 (en) | Apparatus and method for detecting http botnet based on densities of web transactions | |
CN105939231B (en) | Shared access detection method and device | |
US8904524B1 (en) | Detection of fast flux networks | |
CN108429761B (en) | DDoS attack detection and defense method for resource adaptation analysis server in intelligent cooperative network | |
CN101460983A (en) | Malicious attack detection system and an associated method of use | |
KR20060013491A (en) | Network attack signature generation | |
WO2014052756A2 (en) | Apparatus, system and method for identifying and mitigating malicious network threats | |
JPWO2008084729A1 (en) | Application chain virus and DNS attack source detection device, method and program thereof | |
CN111541670A (en) | Novel dynamic honeypot system | |
KR101045331B1 (en) | Method for analyzing behavior of irc and http botnet based on network | |
US20220263846A1 (en) | METHODS FOR DETECTING A CYBERATTACK ON AN ELECTRONIC DEVICE, METHOD FOR OBTAINING A SUPERVISED RANDOM FOREST MODEL FOR DETECTING A DDoS ATTACK OR A BRUTE FORCE ATTACK, AND ELECTRONIC DEVICE CONFIGURED TO DETECT A CYBERATTACK ON ITSELF | |
KR101045330B1 (en) | Method for detecting http botnet based on network | |
US10764307B2 (en) | Extracted data classification to determine if a DNS packet is malicious | |
CN112929376A (en) | Flow data processing method and device, computer equipment and storage medium | |
JP2018026747A (en) | Aggression detection device, aggression detection system and aggression detection method | |
CN111756713A (en) | Network attack identification method and device, computer equipment and medium | |
WO2020158896A1 (en) | Communication device | |
CN111953810B (en) | Method, device and storage medium for identifying proxy internet protocol address | |
JP5568344B2 (en) | Attack detection apparatus, attack detection method, and program | |
JP3760919B2 (en) | Unauthorized access prevention method, apparatus and program |