JP4755658B2 - Analysis system, analysis method and analysis program - Google Patents

Analysis system, analysis method and analysis program Download PDF

Info

Publication number
JP4755658B2
JP4755658B2 JP2008019701A JP2008019701A JP4755658B2 JP 4755658 B2 JP4755658 B2 JP 4755658B2 JP 2008019701 A JP2008019701 A JP 2008019701A JP 2008019701 A JP2008019701 A JP 2008019701A JP 4755658 B2 JP4755658 B2 JP 4755658B2
Authority
JP
Japan
Prior art keywords
communication
analysis
virtual network
malware
program
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
JP2008019701A
Other languages
Japanese (ja)
Other versions
JP2009181335A (en
Inventor
一史 青木
誠 岩村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2008019701A priority Critical patent/JP4755658B2/en
Publication of JP2009181335A publication Critical patent/JP2009181335A/en
Application granted granted Critical
Publication of JP4755658B2 publication Critical patent/JP4755658B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

この発明は、実インターネットに接続しない、または特定のプロトコルのみ接続する仮想ネットワーク上で、コンピュータ上で動作する悪意あるプログラムを実際に動作させることによりその挙動を解析するシステム、解析方法および解析プログラムに関する。   The present invention relates to a system, an analysis method, and an analysis program that analyze a behavior of a malicious program that runs on a computer on a virtual network that is not connected to the real Internet or that is connected only to a specific protocol. .

近年、情報漏洩や不正アクセス等の脅威をもたらすコンピュータウイルスやスパイウェア、ボットプログラムといった悪意のあるコンピュータプログラム(以下、このような不正に動作する不正プログラムを「マルウェア」と呼ぶ)が猛威を振るっている。   In recent years, malicious computer programs such as computer viruses, spyware, and bot programs that pose threats such as information leaks and unauthorized access (hereinafter referred to as “malware”, which operates illegally) are becoming increasingly popular. .

マルウェアにはそのソースコードがインターネット網に公開され、容易に新種や亜種を作成することが可能となっているものが存在し、一日に70種類程度の新種や亜種が出現している(非特許文献1参照。)。また、マルウェアにはインターネット網への接続確認を行い、正常に通信できない場合にはその動作を停止させるものが存在する(非特許文献2参照。)。   Some malware has its source code published on the Internet and it is possible to easily create new species and variants, and about 70 new species and variants appear each day. (Refer nonpatent literature 1.). In addition, there is malware that checks connection to the Internet network and stops its operation when communication cannot be performed normally (see Non-Patent Document 2).

このようなマルウェアによる脅威への対策を行うには、マルウェアがどのような通信を行い、またコンピュータ内部資源にどのような影響を及ぼすかを調べる必要がある。ここで、コンピュータ内部資源は、不揮発性記憶媒体、揮発性記憶媒体、及びそれらに記憶されるデータを指す。   In order to take measures against such threats caused by malware, it is necessary to investigate what kind of communication the malware performs and how it affects computer internal resources. Here, the computer internal resources indicate a nonvolatile storage medium, a volatile storage medium, and data stored in them.

マルウェアの動作を解析する手法としては、マルウェアのバイナリデータを逆アセンブルするものやデバッガを用いるものが一般的である(例えば非特許文献3参照。)。ただし、近年のマルウェアには逆アセンブルやデバッガによる解析を妨害する仕組みを備えたものが存在するため、解析における困難さは増大している(非特許文献4参照。)。   As a technique for analyzing the operation of the malware, a method for disassembling the binary data of the malware or a method using a debugger is generally used (see, for example, Non-Patent Document 3). However, recent malware has a mechanism that prevents disassembly and analysis by a debugger, and thus the difficulty in analysis is increasing (see Non-Patent Document 4).

また、逆アセンブルやデバッガによらない解析方法として、実際にマルウェアを動作させ、そのときの内部資源や通信を監視する方法(非特許文献5参照)も考えられるが、その場合、実インターネット上に存在する一般ユーザのコンピュータへ攻撃をせずに安全に解析を行うためには、実インターネットと接続しない環境で解析を行う必要がある。   Moreover, as an analysis method that does not rely on disassembly or a debugger, a method of actually operating malware and monitoring internal resources and communication at that time (see Non-Patent Document 5) can be considered. In order to perform analysis safely without attacking existing general user computers, it is necessary to perform analysis in an environment that is not connected to the actual Internet.

小山 覚(Telecom-ISAC Japan) 「ボットネット実態調査結果“Our security depends on your security.”」 Black Hat Japan 2005 BriefingsSatoshi Koyama (Telecom-ISAC Japan) “Our security depends on your security.” Black Hat Japan 2005 Briefings 「Web経由の感染が急増、バレる前に「消える」マルウェアも」 http://internet.watch.impress.co.jp/cda/news/2007/12/19/17941.html"Infection via the Web has increased rapidly, and malware that" disappears "before it hits. Http://internet.watch.impress.co.jp/cda/news/2007/12/19/17941.html Konstantin Rozinov 「REVERSE CODE ENGINEERING: An In-Depth Analysis of the Bagle Virus」 Lucent TechnologiesKonstantin Rozinov “REVERSE CODE ENGINEERING: An In-Depth Analysis of the Bagle Virus” Lucent Technologies Mark Vincent Yason 「The Art of Unpacking」 Black Hat USA 2007 BriefingsMark Vincent Yason “The Art of Unpacking” Black Hat USA 2007 Briefings Capture BAT http://www.nz-honeynet.org/capture-standalone.html The NewZealand Honeynet ProjectCapture BAT http://www.nz-honeynet.org/capture-standalone.html The NewZealand Honeynet Project

しかしながら、上述した逆アセンブルやデバッガによる解析手法は、高度な知識と技術を必要とし、解析に数時間から数日程度の時間を必要とする。また、マルウェアに存在する逆アセンブルやデバッガによる解析の妨害手法のため、より解析が困難になり、必要とされる解析時間も増大している。   However, the disassembly and debugger analysis methods described above require advanced knowledge and techniques, and the analysis requires time from several hours to several days. In addition, the disassembly method existing in malware and the analysis obstruction method using a debugger make analysis more difficult, and the required analysis time is also increasing.

そのため、新種・亜種が一日に70種類程度出現する現状に、逆アセンブルやデバッガを用いた従来手法では完全に対応することができないという問題点があった。さらに、実インターネットへ接続しない環境でマルウェアを動作させ、その挙動を観測する手法の場合、外部インターネット網への接続確認ができないと正常に動作しないマルウェアの解析を行うことができないという問題点があった。   For this reason, there is a problem that the conventional method using disassembly or a debugger cannot completely cope with the current situation in which about 70 new species / subspecies appear per day. Furthermore, the method of operating malware in an environment that is not connected to the actual Internet and observing its behavior has the problem that malware that does not operate normally cannot be analyzed unless the connection to the external Internet network can be confirmed. It was.

本発明は、上述した従来技術における問題点を解決し、課題を解決するためになされたものであり、逆アセンブルやデバッガを用いた解析の困難さを回避し、解析に要する時間を削減し、さらにネットワークの接続確認を行うマルウェアについても挙動に関する情報を収集して正確な解析を実現する解析システム、解析方法、および解析プログラムを提供することを目的とする。   The present invention was made to solve the above-described problems in the prior art and to solve the problems, avoids the difficulty of analysis using disassembly and a debugger, reduces the time required for analysis, Furthermore, it aims at providing the analysis system, the analysis method, and the analysis program which collect the information regarding a behavior also about the malware which performs a network connection confirmation, and implement | achieves an exact analysis.

上述した課題を解決し、目的を達成するため、本発明にかかる解析システム、解析方法および解析プログラムは、コンピュータ内で不正な動作を行う不正プログラムの挙動を解析するにあたり、不正プログラムを実行させる実行環境を提供し、前記実行環境と接続された仮想ネットワークを構築して前記不正プログラムを前記仮想ネットワークにアクセスさせ、前記実行環境における前記不正プログラムの動作に関する情報および/または前記仮想ネットワークと前記不正プログラムとの通信に関する情報を当該不正プログラムの挙動情報として収集することを特徴とする。   In order to solve the above-described problems and achieve the object, an analysis system, an analysis method, and an analysis program according to the present invention execute an unauthorized program when analyzing the behavior of an unauthorized program that performs an unauthorized operation in a computer. Providing an environment, constructing a virtual network connected to the execution environment, allowing the unauthorized program to access the virtual network, and information regarding the operation of the unauthorized program in the execution environment and / or the virtual network and the unauthorized program And collecting information related to communication with the behavior information of the malicious program.

また、本発明によれば、不正プログラムが関与する通信の通信プロトコル、通信ペイロード、通信先および呼び出されるシステムコール、API(Application Program Interface)、内部資源に関する情報を前記挙動情報として収集する。   Further, according to the present invention, information related to communication protocols, communication payloads, communication destinations and called system calls, API (Application Program Interface), and internal resources for communication involving unauthorized programs is collected as the behavior information.

また、本発明によれば、外部の実ネットワークに接続する実ネットワーク接続手段と、前記不正プログラムが関与する通信の一部を前記実ネットワークに接続することを特徴とする。   In addition, according to the present invention, a real network connection means for connecting to an external real network and a part of communication involving the unauthorized program are connected to the real network.

また、本発明によれば、通信ペイロードと予め登録したパターンとのパターンマッチングを行って通信プロトコルを同定する。   Further, according to the present invention, a communication protocol is identified by performing pattern matching between a communication payload and a pattern registered in advance.

また、本発明によれば、同定した通信プロトコルに応じた擬似サーバ応答を生成して前記不正プログラムに送信する。   According to the present invention, a pseudo server response corresponding to the identified communication protocol is generated and transmitted to the unauthorized program.

また、本発明によれば、不正プログラムが関与する通信の通信プロトコルを通信ペイロードと予め登録したパターンとのパターンマッチングによって同定し、当該同定結果に基づいて前記実ネットワークに前記通信を接続するか否かを判定し、前記実ネットワークに接続する通信については当該通信を代理実行し、代理実行によって得られた応答を前記不正プログラムに渡すことを特徴とする。   According to the present invention, the communication protocol of communication involving the malicious program is identified by pattern matching between the communication payload and a pre-registered pattern, and whether or not to connect the communication to the real network based on the identification result The communication is connected to the real network, the communication is executed by proxy, and the response obtained by the proxy execution is passed to the malicious program.

また、本発明によれば、HTTP(Hypertext Transfer Protocol)による通信を実ネットワークに代理実行する際に、GETリクエストURLのパラメータ部を削除して実ネットワークに接続することを特徴とする。   In addition, according to the present invention, when performing communication by HTTP (Hypertext Transfer Protocol) on a real network, the parameter part of the GET request URL is deleted and connected to the real network.

本発明にかかる解析システム、解析方法および解析プログラムは、不正プログラムの解析において、解析対象となる不正プログラムを実際に実行する手法を取ることによって、逆アセンブルやデバッガを用いた解析の困難さを回避し、解析に要する時間を削減し、さらにネットワークの接続確認を行うマルウェアについても挙動に関する情報を収集して正確な解析を実現する解析システム、解析方法、および解析プログラムを得ることができるという効果を奏する。   The analysis system, analysis method, and analysis program according to the present invention avoid the difficulty of analysis using a disassembler or debugger by taking a method of actually executing a malicious program to be analyzed in analyzing a malicious program. The analysis system, analysis method, and analysis program can be obtained to reduce the time required for analysis and to collect accurate information on the behavior of malware that checks network connections. Play.

以下に添付図面を参照して、この発明に係る解析システム、解析方法および解析プログラムの好適な実施例について詳細に説明する。   Exemplary embodiments of an analysis system, an analysis method, and an analysis program according to the present invention will be described below in detail with reference to the accompanying drawings.

図1は、本発明の実施例1における解析システムの概要構成を示す概要構成図である。同図に示したように、本発明にかかる解析システムでは、実インターネットに接続しない仮想ネットワークを用いた動的解析システム1においてマルウェアを実行し、通信データ及び呼び出されるAPIやシステムコール、内部資源へのアクセスを監視する。   FIG. 1 is a schematic configuration diagram showing a schematic configuration of an analysis system in Embodiment 1 of the present invention. As shown in the figure, in the analysis system according to the present invention, malware is executed in the dynamic analysis system 1 using a virtual network that is not connected to the real Internet, and communication data, APIs to be called, system calls, and internal resources are executed. Monitor access.

マルウェアを実際に動作させることによる解析(以下、「動的解析」と呼ぶ)によって得られたデータは、マルウェア解析結果データベース2へ保存される。保存されたデータは解析結果分析・出力モジュール3を介し、必要なデータを図表により可視化して表示する。この解析システムは、複数のマルウェアを連続して解析する場合についても同様に適用できる。   Data obtained by analysis by actually operating malware (hereinafter referred to as “dynamic analysis”) is stored in the malware analysis result database 2. The stored data is visualized and displayed as necessary data via the analysis result analysis / output module 3. This analysis system can be similarly applied to the case of analyzing a plurality of malware continuously.

図2は、本実施例1における解析システムの具体的な構成例である。本実施例1では、実インターネットに接続しない仮想ネットワークにおいてマルウェアを実行し、その挙動及び通信内容を収集することにより、短時間での解析を実現する。   FIG. 2 is a specific configuration example of the analysis system according to the first embodiment. In the first embodiment, analysis is performed in a short time by executing malware in a virtual network that is not connected to the real Internet and collecting its behavior and communication contents.

図2に示したように、本実施例1にかかる解析システムは動的解析コントロールモジュール4、マルウェア実行環境10と仮想ネットワーク部20からなる動的解析システム1、マルウェア解析結果データベース2、解析結果分析・出力モジュール3により構成される。なお、一つの動的解析システム1に、複数のマルウェア実行環境及び仮想ネットワーク部が存在するように構成してもよい。   As shown in FIG. 2, the analysis system according to the first embodiment includes a dynamic analysis control module 4, a dynamic analysis system 1 including a malware execution environment 10 and a virtual network unit 20, a malware analysis result database 2, and an analysis result analysis. Consists of an output module 3 A single dynamic analysis system 1 may be configured to include a plurality of malware execution environments and virtual network units.

動的解析コントロールモジュール4は、動的解析システム1の初期化、解析終了シグナルの送信、マルウェア実行環境10への解析対象マルウェア投入、マルウェア実行環境10及び仮想ネットワーク部20からのログの受信及びマルウェア解析結果データベース2への登録を行う。   The dynamic analysis control module 4 initializes the dynamic analysis system 1, transmits an analysis end signal, inputs malware to be analyzed into the malware execution environment 10, receives logs from the malware execution environment 10 and the virtual network unit 20, and malware Registration in the analysis result database 2 is performed.

マルウェア実行環境10は、動的解析コントロールモジュール4から投入されたマルウェアを実行するための環境である。仮想ネットワーク部20はマルウェア実行環境10からの通信を受け取り、保存すると同時に通信のプロトコルを判別し、プロトコルに応じたデータを生成し、応答としてマルウェア実行環境10に送信する。仮想ネットワークはこのプロトコルに応じたサーバ応答の生成により実現される。   The malware execution environment 10 is an environment for executing malware input from the dynamic analysis control module 4. The virtual network unit 20 receives and stores the communication from the malware execution environment 10, and simultaneously determines the communication protocol, generates data according to the protocol, and transmits the data to the malware execution environment 10 as a response. The virtual network is realized by generating a server response according to this protocol.

マルウェア解析結果データベース2には、解析対象マルウェア、及びその解析の状況(未解析・解析済み・解析中)、動的解析で収集された通信データ、APIやシステムコール、内部資源へのアクセス結果が保存される。   The malware analysis result database 2 includes analysis target malware, analysis status (unanalyzed / analyzed / under analysis), communication data collected by dynamic analysis, API and system calls, and access results to internal resources. Saved.

解析結果分析・出力モジュール3では、マルウェア解析結果データベース2からマルウェアの通信先、通信プロトコル、API呼び出しシーケンスなどが整理され、自動的に図表に加工し、表示する。   The analysis result analysis / output module 3 organizes malware communication destinations, communication protocols, API call sequences, and the like from the malware analysis result database 2 and automatically processes and displays them in a chart.

図3は、本発明の動的解析コントロールモジュール4の処理動作を表すフローチャートである。同図にしめしたように、解析が開始されると、まずマルウェア解析結果データベース2に問い合わせ、未解析のマルウェアが存在しているかを確かめる(ステップS101)。   FIG. 3 is a flowchart showing the processing operation of the dynamic analysis control module 4 of the present invention. As shown in the figure, when the analysis is started, the malware analysis result database 2 is first inquired to confirm whether or not unanalyzed malware exists (step S101).

その結果、未解析のマルウェアが存在しない場合(ステップS101,No)には解析を終了する。一方、未解析のマルウェアが存在している場合(ステップS101,Yes)には、マルウェア実行環境10の初期化(ステップS102)と仮想ネットワーク部20(ステップS103)の初期化が行われる。   As a result, when there is no unanalyzed malware (step S101, No), the analysis is terminated. On the other hand, when unanalyzed malware exists (step S101, Yes), the malware execution environment 10 is initialized (step S102) and the virtual network unit 20 (step S103) is initialized.

マルウェア実行環境10の初期化では、マルウェア実行前のクリーンな状態にロールバックする作業が行われる。仮想ネットワーク部20の初期化では、仮想ネットワーク内のペイロードデータベース25の初期化を実施する。   In the initialization of the malware execution environment 10, an operation of rolling back to a clean state before the malware execution is performed. In the initialization of the virtual network unit 20, the payload database 25 in the virtual network is initialized.

次に、初期化された動的解析システム1のマルウェア実行環境10に解析対象となるマルウェアが送信される(ステップS104)。マルウェア実行モジュール11では、その実行が成功したか否かの結果を受け取り(ステップS105)、マルウェア解析結果データベース2に登録する(ステップS106)。   Next, the malware to be analyzed is transmitted to the malware execution environment 10 of the initialized dynamic analysis system 1 (step S104). The malware execution module 11 receives a result indicating whether or not the execution is successful (step S105) and registers it in the malware analysis result database 2 (step S106).

マルウェアの実行に成功した場合(ステップS107,Yes)には、設定した解析時間が経過するまで動的解析コントロールモジュール4は待機する。設定時間が経過した(ステップS108,Yes)ところで動的解析システム1へ解析完了のシグナルを送信し(ステップS109)、仮想ネットワーク部20のペイロードデータベース25よりデータを取得し(ステップS110)、取得したデータをマルウェア解析結果データベース2に登録する(ステップS111)。これら一連の処理を、未解析マルウェアがなくなるまで繰り返す。   If the execution of the malware is successful (step S107, Yes), the dynamic analysis control module 4 waits until the set analysis time elapses. When the set time has elapsed (step S108, Yes), an analysis completion signal is transmitted to the dynamic analysis system 1 (step S109), and data is acquired from the payload database 25 of the virtual network unit 20 (step S110). Data is registered in the malware analysis result database 2 (step S111). This series of processing is repeated until there is no unanalyzed malware.

図4は、マルウェア実行モジュール11の処理動作を表すフローチャートである。マルウェア実行モジュール11では、動的解析コントロールモジュール4からマルウェアを受け取り(ステップS201,Yes)、実行される(ステップS202)。実行に成功したか否かのステータスは動的解析コントロールモジュールへ送信される(ステップS203)。   FIG. 4 is a flowchart showing the processing operation of the malware execution module 11. The malware execution module 11 receives malware from the dynamic analysis control module 4 (step S201, Yes) and executes it (step S202). The status indicating whether or not the execution is successful is transmitted to the dynamic analysis control module (step S203).

マルウェアの実行に成功した場合(ステップS204,Yes)には、API、システムコール、内部資源へのアクセスを監視した状態(ステップS205)で解析終了のシグナルを受信する(ステップS206,Yes)までマルウェアはその実行を継続する。   If the execution of the malware is successful (step S204, Yes), the malware until the analysis end signal is received (step S206, Yes) in a state where the access to the API, system call, and internal resources is monitored (step S205). Continues its execution.

図5は、マルウェアの挙動監視(API、システムコール、内部資源アクセス監視)に関する処理動作のフローチャートである。この処理動作では、マルウェアがどのようなAPIを呼び出したか(ステップS301)、どのようなシステムコールを呼び出したか(ステップS302)、またOSによっては(例えばWindows(登録商標)の場合など)レジストリのアクセス(読み込み・書き込み・削除)を監視する(ステップS303)。さらにファイルへのアクセス(読み込み・書き込み・削除)についても監視を行う(ステップS304)。   FIG. 5 is a flowchart of processing operations related to malware behavior monitoring (API, system call, internal resource access monitoring). In this processing operation, what API is called by the malware (step S301), what system call is called (step S302), and registry access depending on the OS (for example, in the case of Windows (registered trademark)) (Read / write / delete) is monitored (step S303). Furthermore, the access (read / write / delete) to the file is also monitored (step S304).

そして、監視結果についてはログをとり、動的解析コントロールモジュールを介してマルウェア解析結果データベースに登録される(ステップS305)。   Then, the monitoring result is logged and registered in the malware analysis result database via the dynamic analysis control module (step S305).

図6は、仮想ネットワーク部20における処理動作を表すフローチャートである。仮想ネットワーク部20は、マルウェア実行環境10からの通信を受け取り、プロトコルに応じた応答を返す。まず、仮想ネットワーク部20では、マルウェア実行環境10から通信データを受け取り(ステップS401)、そのプロトコル判別が行われる(ステップS402)。   FIG. 6 is a flowchart showing the processing operation in the virtual network unit 20. The virtual network unit 20 receives communication from the malware execution environment 10 and returns a response corresponding to the protocol. First, the virtual network unit 20 receives communication data from the malware execution environment 10 (step S401), and performs its protocol discrimination (step S402).

同時に、受け取ったペイロードをペイロードデータベース25に保存する(ステップS403。ここで保存するペイロードの例として、IPパケットの発信元IPアドレス、宛先IPアドレス、データ部が挙げられる。解析時に取得できる具体的なデータ例として、ボットプログラムが接続を試みるC&Cサーバ(Command and Control Server)のFQDN(Full Qualified Domain Name)やニックネーム、C&Cサーバ接続リクエストが挙げられる。例えば、ここで取得できたC&CサーバのFQDNを利用し、ネットワーク上のボット感染端末の調査を行うことができる。   At the same time, the received payload is saved in the payload database 25 (step S403. Examples of the payload to be saved here include the source IP address, the destination IP address, and the data part of the IP packet. Examples of data include FQDN (Full Qualified Domain Name), nickname, and C & C server connection request of the C & C server (Command and Control Server) to which the bot program tries to connect. And survey of bot-infected terminals on the network.

さらに、判定されたプロトコルに応じて、サーバ応答が生成され(ステップS403)、マルウェア実行環境10への応答が行われる。このプロトコルに応じたサーバ応答により、仮想ネットワークが実現されている。これらの処理は、解析終了シグナルを受信するまで繰り返され、解析終了シグナルを受信したら(ステップS405,Yes)ペイロードデータベース25のデータを動的解析コントロールモジュール4を介してマルウェア解析結果データベース2へ転送し、解析を終了する。   Furthermore, a server response is generated according to the determined protocol (step S403), and a response to the malware execution environment 10 is performed. A virtual network is realized by a server response according to this protocol. These processes are repeated until an analysis end signal is received. When the analysis end signal is received (step S405, Yes), data in the payload database 25 is transferred to the malware analysis result database 2 via the dynamic analysis control module 4. End the analysis.

なお、ペイロードデータは動的解析が行われている間、随時動的解析コントロールモジュール4を介してマルウェア解析結果データベース2へ保存されるよう構成してもよい。   The payload data may be stored in the malware analysis result database 2 via the dynamic analysis control module 4 at any time during the dynamic analysis.

図7はプロトコル判別処理の詳細を表すフローチャートである。まず、仮想ネットワーク部20で受け取った通信の送信先アドレス、送信先ポート番号がプロトコル判別データベース23の送信先アドレス・送信先ポート番号のリストに含まれているかを調べる(ステップS501)。   FIG. 7 is a flowchart showing details of the protocol discrimination process. First, it is checked whether the destination address and destination port number of the communication received by the virtual network unit 20 are included in the list of destination address and destination port number in the protocol discrimination database 23 (step S501).

送信先アドレス・送信先ポート番号のリスト例を図8に示す。リスト内でこれらの一致が確認された場合(ステップS501,Yes)には、リストに登録されているプロトコルの通信であったと判定される(ステップS504)。   FIG. 8 shows an example of a list of transmission destination addresses and transmission destination port numbers. When these matches are confirmed in the list (step S501, Yes), it is determined that the communication is a protocol registered in the list (step S504).

また、送信先アドレス・送信先ポート番号の一致が確認できなかった場合(ステップS501,No)には仮想ネットワーク部20で受信したペイロードをプロトコル判別データベース23のシグネチャリストと比較する(ステップS502)。シグネチャリストの例を図9に示す。なお、図に例示されていないプロトコルについて、追加することもできる。   If the match between the transmission destination address and the transmission destination port number cannot be confirmed (step S501, No), the payload received by the virtual network unit 20 is compared with the signature list of the protocol discrimination database 23 (step S502). An example of the signature list is shown in FIG. Note that a protocol not illustrated in the figure can be added.

シグネチャにマッチした場合(ステップS503)には登録されていたプロトコルによる通信であると判定し(ステップS506)、マッチしなかった場合(ステップS503)にはプロトコル判定できなかった(ステップS505)旨を返す。   If the signature matches (step S503), it is determined that the communication is based on the registered protocol (step S506). If the signature does not match (step S503), the protocol cannot be determined (step S505). return.

図10はサーバ応答生成処理の詳細を説明するフローチャートである。プロトコル判別モジュール21によりプロトコル判別に成功した場合(ステップS601,Yes)には、各プロトコルに応じた応答が定義されているかどうかを確かめる(ステップS602)。   FIG. 10 is a flowchart for explaining the details of the server response generation process. If the protocol discrimination module 21 succeeds in the protocol discrimination (step S601, Yes), it is confirmed whether a response corresponding to each protocol is defined (step S602).

その結果、サーバ応答が定義されている場合(ステップS602,Yes)には、定義されている通りの応答を返す(ステップS603)。応答の定義の例を図11に示す。DNS(Domain Name System)の応答例として、問い合わせのあったFQDNに対し、仮想ネットワーク内の任意のアドレスを対応付け、そのアドレスをマルウェア実行環境に返すものが考えられる。定義によっては、応答は返さない処理も含めることができる。   As a result, when the server response is defined (step S602, Yes), the response as defined is returned (step S603). An example of response definition is shown in FIG. As an example of DNS (Domain Name System) response, it is possible to associate an arbitrary address in the virtual network with the FQDN requested, and return the address to the malware execution environment. Depending on the definition, processing that does not return a response can also be included.

図12は、本発明の実施例2おける解析システムの概要構成を示す概要構成図である。同図に示したように、本実施例にかかる解析システムでは、特定のプロトコルによる通信のみが実インターネット網に接続可能な仮想ネットワークを用いた動的解析システム1aにおいてマルウェアを実行し、通信データ及び呼び出されるAPIやシステムコール、内部資源へのアクセスを監視する。   FIG. 12 is a schematic configuration diagram illustrating a schematic configuration of the analysis system according to the second embodiment of the present invention. As shown in the figure, in the analysis system according to this embodiment, malware is executed in the dynamic analysis system 1a using a virtual network that can be connected to a real Internet network only by communication using a specific protocol, and communication data and Monitors APIs to be called, system calls, and access to internal resources.

動的解析によって得られたデータは、マルウェア解析結果データベース2へ保存される。保存されたデータは解析結果分析・出力モジュール3を介し、必要なデータを図表により可視化する。複数のマルウェアを連続して実行する構成としてもよい。   Data obtained by the dynamic analysis is stored in the malware analysis result database 2. The stored data is visualized by a chart through the analysis result analysis / output module 3. It is good also as a structure which performs several malware continuously.

図13は本実施例2における解析システムの具体的な構成例である。本実施例2では、特定のプロトコルによる通信のみが実インターネットに接続可能な仮想ネットワークにおいてマルウェアを実行し、その挙動及び通信内容を収集することにより、短時間での解析を実現する。   FIG. 13 shows a specific configuration example of the analysis system according to the second embodiment. In the second embodiment, malware is executed in a virtual network in which only communication using a specific protocol can be connected to the real Internet, and its behavior and communication contents are collected, thereby realizing analysis in a short time.

図13に示したように、本実施例2にかかる解析システムでは、動的解析コントロールモジュール4、マルウェア実行環境10と仮想ネットワーク部20aからなる動的解析システム1a、マルウェア解析結果データベース2、解析結果分析・出力モジュール3により構成される。なお、一つの動的解析システム1に、複数のマルウェア実行環境及び仮想ネットワーク部が存在するように構成してもよい。   As shown in FIG. 13, in the analysis system according to the second embodiment, the dynamic analysis control module 4, the dynamic analysis system 1a including the malware execution environment 10 and the virtual network unit 20a, the malware analysis result database 2, and the analysis results It comprises an analysis / output module 3. A single dynamic analysis system 1 may be configured to include a plurality of malware execution environments and virtual network units.

動的解析コントロールモジュール4は、動的解析システム1aの初期化、解析終了シグナルの送信、マルウェア実行環境10への解析対象マルウェア投入、マルウェア実行環境10及び仮想ネットワーク部20aからのログの受信及びマルウェア解析結果データベース2への登録を行う。   The dynamic analysis control module 4 initializes the dynamic analysis system 1a, transmits an analysis end signal, inputs malware to be analyzed into the malware execution environment 10, receives logs from the malware execution environment 10 and the virtual network unit 20a, and malwares Registration in the analysis result database 2 is performed.

マルウェア実行環境10は、動的解析コントロールモジュール4から投入されたマルウェアを実行するための環境である。仮想ネットワーク部20aはマルウェア実行環境10からの通信を受け取り、保存すると同時にプロトコル判別が行なう。そして、プロトコル判別後、マルウェア実行モジュール11から受け取った通信の通信先アドレス、通信先ポート番号、プロトコル、ペイロードを参照し、外部接続コントロールモジュール26が実インターネットに接続して通信を行うのか、または仮想ネットワーク内部でプロトコルに応じたデータを生成し、応答としてマルウェア実行環境11に送信するかをコントロールする。   The malware execution environment 10 is an environment for executing malware input from the dynamic analysis control module 4. The virtual network unit 20a receives and stores the communication from the malware execution environment 10, and simultaneously performs protocol discrimination. Then, after determining the protocol, referring to the communication destination address, communication destination port number, protocol, and payload received from the malware execution module 11, the external connection control module 26 communicates by connecting to the real Internet, or virtual It controls whether data corresponding to the protocol is generated inside the network and sent to the malware execution environment 11 as a response.

マルウェア解析結果データベース2では、解析対象マルウェア、解析の状況(未解析・解析済み・解析中)、動的解析で収集された通信データ、APIやシステムコール、内部資源へのアクセス結果が保存される。ここで、動的解析で収集された通信データには、マルウェア実行モジュール11からの通信に加え、外部インターネット網との通信結果も保存される。   The malware analysis result database 2 stores analysis target malware, analysis status (unanalyzed / analyzed / under analysis), communication data collected by dynamic analysis, API and system calls, and access results to internal resources. . Here, in the communication data collected by the dynamic analysis, in addition to the communication from the malware execution module 11, the communication result with the external Internet network is also stored.

解析結果分析・出力モジュール3では、マルウェア解析結果データベース2からマルウェアの通信先、通信プロトコル、API呼び出しシーケンスなどが整理され、自動的に図表に加工し、表示する。   The analysis result analysis / output module 3 organizes malware communication destinations, communication protocols, API call sequences, and the like from the malware analysis result database 2 and automatically processes and displays them in a chart.

図13の動的解析コントロールモジュールの具体的な処理動作は実施例1において図3を参照して説明した処理動作と同様であるので、ここでは説明を省略する。また、図13のマルウェア実行モジュール11、及びその内部で行われるAPI、システムコール、内部資源アクセスについても実施例1において図4,図5を参照して説明した処理動作と同様であるので、ここでは説明を省略する。   The specific processing operation of the dynamic analysis control module in FIG. 13 is the same as the processing operation described with reference to FIG. Further, the malware execution module 11 of FIG. 13 and the API, system call, and internal resource access performed therein are the same as the processing operations described with reference to FIGS. 4 and 5 in the first embodiment. Then, explanation is omitted.

図14は仮想ネットワーク部20aにおける処理動作を表すフローチャートである。仮想ネットワーク部20aは、マルウェア実行環境10からの通信を受け取り、通信内容に応じ、内部のサーバ応答生成モジュール24もしくは実インターネットから受け取った通信データを返す。   FIG. 14 is a flowchart showing the processing operation in the virtual network unit 20a. The virtual network unit 20a receives communication from the malware execution environment 10, and returns communication data received from the internal server response generation module 24 or the real Internet according to the communication content.

まず、仮想ネットワーク部20aではマルウェア実行環境10から通信データを受け取り(ステップS701)、そのプロトコル判別が行われる(ステップS702)。同時に、受け取ったペイロードをペイロードデータベースに保存する(ステップS703)。ここで保存するペイロードの例として、IPパケット発信元IPアドレス、宛先IPアドレス、データ部が挙げられる。また、解析時に取得できる具体的なデータ例として、ボットプログラムが接続を試みるC&CサーバのFQDNやニックネーム、C&Cサーバ接続リクエストが挙げられる。   First, the virtual network unit 20a receives communication data from the malware execution environment 10 (step S701), and the protocol is determined (step S702). At the same time, the received payload is stored in the payload database (step S703). Examples of the payload stored here include an IP packet source IP address, a destination IP address, and a data part. Specific examples of data that can be acquired at the time of analysis include the FQDN and nickname of the C & C server that the bot program attempts to connect to, and a C & C server connection request.

その後、外部接続コントロールモジュール26により、実インターネット上に存在するサーバへ接続するか、それとも仮想ネットワーク内のサーバ応答生成モジュール24により応答するかが決定される(ステップS704)。プロトコル判別モジュール21及びサーバ応答生成モジュール24の処理については、実施例1において図7及び図8を参照して説明したのでここでは省略する。   Thereafter, it is determined by the external connection control module 26 whether to connect to a server existing on the real Internet or to respond by the server response generation module 24 in the virtual network (step S704). The processing of the protocol discrimination module 21 and the server response generation module 24 has been described with reference to FIG. 7 and FIG.

これらの処理は、解析終了シグナルを受信するまで繰り返され、シグナルを受信したら(ステップS705,Yes)ペイロードデータベース25のデータを動的解析コントロールモジュール4を介してマルウェア解析結果データベース2へ転送し(ステップS707)、解析を終了する。   These processes are repeated until an analysis end signal is received. When a signal is received (step S705, Yes), data in the payload database 25 is transferred to the malware analysis result database 2 via the dynamic analysis control module 4 (step S705). S707), the analysis is terminated.

なお、ペイロードデータは動的解析が行われている間、随時動的解析コントロールモジュール4を介してマルウェア解析結果データベース2へ保存されるよう構成してもよい。   The payload data may be stored in the malware analysis result database 2 via the dynamic analysis control module 4 at any time during the dynamic analysis.

図15は外部接続コントロールモジュール26の処理を表すフローチャートである。外部接続コントロールモジュール26では、マルウェア実行環境10から受け取った通信データを接続管理用シグネチャデータベース27を基に、実インターネット上のサーバに接続するか、それとも仮想ネットワーク内のサーバ応答生成モジュール24により応答するかを決定する。   FIG. 15 is a flowchart showing the processing of the external connection control module 26. The external connection control module 26 connects the communication data received from the malware execution environment 10 to a server on the real Internet based on the connection management signature database 27 or responds by the server response generation module 24 in the virtual network. To decide.

実インターネット上のサーバに接続するか否かを決定するにあたっては、まず、事前に判別されたプロトコルが、接続管理リストに含まれているかを確認する(ステップS801)。含まれていた場合(ステップS802,Yes)には、その通信の実際の接続先アドレス(ステップS803)・ペイロード(ステップS804)・ペイロード長(ステップS805)をリストのパターンと比較する。なお、接続先アドレス・ペイロードの比較では正規表現によるものを含む。接続管理リストは例えば図16に示したように作成しておけばよい。   In determining whether or not to connect to a server on the real Internet, first, it is confirmed whether or not the protocol determined in advance is included in the connection management list (step S801). If it is included (step S802, Yes), the actual connection destination address (step S803), payload (step S804), and payload length (step S805) of the communication are compared with the list pattern. The comparison of the connection destination address and the payload includes a regular expression. For example, the connection management list may be created as shown in FIG.

接続先アドレス・ペイロード・ペイロード長のうち、一つでもマッチしないものが存在した場合(ステップS803〜805のいずれかがNo)には仮想ネットワーク内で生成される応答がマルウェア実行モジュールへ送信される(ステップS813)。   If any one of the connection destination address / payload / payload length does not match (No in steps S803 to S805), a response generated in the virtual network is transmitted to the malware execution module. (Step S813).

また、上記の比較が行われた結果、その通信が実インターネットへの接続を許可しないものとして接続管理リストに登録されていた場合(ステップS806,No)にも、仮想ネットワーク内部で応答を生成する(ステップS813)。   Further, as a result of the above comparison, even when the communication is registered in the connection management list as not permitting connection to the real Internet (step S806, No), a response is generated inside the virtual network. (Step S813).

一方、実インターネットへ接続すると判定された場合(ステップS807)で、ペイロード加工が不要な場合(ステップS808)には外部接続コントロールモジュール26が実インターネット上のサーバに接続し、仮想ネットワークで受け取った通信データを送信する(ステップS810)。   On the other hand, if it is determined to connect to the real Internet (step S807) and payload processing is unnecessary (step S808), the external connection control module 26 connects to a server on the real internet and receives the communication received through the virtual network. Data is transmitted (step S810).

ペイロード加工を必要とする場合(ステップS808,Yes)には、仮想ネットワークで受け取ったペイロードを加工した(ステップS809)上で、外部インターネット上のサーバにデータを送信する(ステップS811)。   When payload processing is necessary (step S808, Yes), after processing the payload received by the virtual network (step S809), the data is transmitted to a server on the external Internet (step S811).

ペイロードの加工は、一般ユーザに攻撃を行わせないための仕組みである。HTTPで外部に接続した場合、GETリクエストURI(Uniform Resource Identifier)におけるパラメータ部(http://www.example.com/index.php?name=hoge?pass=fugaの場合“?”の後方部分)を削除してアクセスすることにより、HTTPサーバアプリケーションの脆弱性をついた攻撃や、掲示板等へのスパム活動を防ぐ。   Payload processing is a mechanism for preventing general users from attacking. When connecting to the outside with HTTP, the parameter part in the GET request URI (Uniform Resource Identifier) (the back part of “?” In the case of http://www.example.com/index.php?name=hoge?pass=fuga) By deleting the URL, it is possible to prevent attacks with vulnerabilities in HTTP server applications and spam activities on bulletin boards.

このように、実行環境10からのセッションは仮想ネットワーク内部で終端され、実インターネットに接続するのは外部接続コントロールモジュール26である。外部接続コントロールモジュール26が外部から受け取ったデータはペイロードデータベース25に保存され、動的解析コントロールモジュール4を介してマルウェア解析結果データベース2に保存される(ステップS812)。   As described above, the session from the execution environment 10 is terminated inside the virtual network, and the external connection control module 26 connects to the real Internet. Data received from the outside by the external connection control module 26 is stored in the payload database 25 and stored in the malware analysis result database 2 via the dynamic analysis control module 4 (step S812).

外部接続コントロールモジュールを介して得られたペイロードに含まれるデータ例として、攻撃者がボットに対して送り込んだ命令が挙げられ、その命令を受けたボットの挙動を分析することにより、攻撃者がボットネットを利用して行おうとしている攻撃行動を把握することが可能になる。   An example of data included in the payload obtained via the external connection control module is the command sent by the attacker to the bot. By analyzing the behavior of the bot that received the command, the attacker It becomes possible to grasp the attacking behavior that is going to be performed using the Internet.

以上説明してきたように、本発明では、仮想ネットワーク上でマルウェアを実行し、そのときの通信及び呼び出されるAPI、システムコール、内部資源へのアクセス状況を監視することで、マルウェアに見られる特徴的な挙動を短時間で収集することが可能である。   As described above, according to the present invention, malware is executed on a virtual network, and the communication at that time and the access status to the API, system call, and internal resource to be called are monitored, and the characteristic seen in the malware It is possible to collect various behaviors in a short time.

実施例1に示した構成では、実インターネットへ接続しない仮想ネットワーク上でマルウェアを実行するため、実インターネットに存在するコンピュータに対して攻撃を実施してしまうリスクを回避する。また、逆アセンブルやデバッグといった手法をとらない手法であるため、解析の困難さを解決している。   In the configuration shown in the first embodiment, since malware is executed on a virtual network that is not connected to the real Internet, the risk of performing an attack on a computer existing on the real Internet is avoided. In addition, since it is a technique that does not take techniques such as disassembly and debugging, it solves the difficulty of analysis.

実施例2に示した構成では、特定のプロトコルのみ実インターネットに接続可能な仮想ネットワーク上でマルウェアを実行することで、攻撃者がマルウェアに対して指令を出し、コントロールする場合の挙動解析を実現する。外部へ接続するプロトコルを一部に制限する(例えば、外部の攻撃者からの命令を仮想ネットワークに取り込むようにものに、外部との接続を制限する)ことにより、外部インターネット網へ攻撃を実施するリスクを低減することが可能である。   In the configuration shown in the second embodiment, malware is executed on a virtual network that can connect only to a specific protocol to the real Internet, thereby realizing behavior analysis when an attacker issues a command and controls the malware. . Perform attacks on the external Internet network by restricting some of the protocols that connect to the outside (for example, restricting connections to the outside so that commands from external attackers are taken into the virtual network) Risk can be reduced.

そして、実インターネットに接続しない(実施例1)、または一部接続する(実施例2)仮想ネットワークを用いた解析で得られたデータをマルウェアの脅威対策に適用するために、本発明で取得した解析結果から必要なデータ、例えば通信先アドレスや通信内容、API コールシーケンスを自動的に抽出し、図表に加工した上で表示する。これによりネットワークオペレータはマルウェアの解析結果を瞬時に把握することが可能になり、通信制御による攻撃活動抑止、感染者の特定を実施することが可能になる。   Then, the data obtained by the analysis using the virtual network that is not connected to the real Internet (Example 1) or partly connected (Example 2) was obtained by the present invention in order to apply to malware threat countermeasures. Necessary data such as the communication destination address, communication content, and API call sequence are automatically extracted from the analysis result, processed into a chart, and displayed. As a result, the network operator can immediately grasp the analysis result of the malware, and it is possible to suppress the attack activity by the communication control and to identify the infected person.

すなわち、本発明によって得られる効果は、短時間でマルウェアの挙動解析結果を収集できることである。従来はマルウェアのバイナリデータを逆アセンブルやデバッガにより解析していたが、この手法は高度な専門性を必要とすると同時に、解析に数時間から数日程度の時間を必要とする点が課題であった。特に近年、マルウェアに逆アセンブルやデバッガによる解析をより困難にする仕組みを備えたものが出現しており、解析の困難さ、解析に必要な時間が増大していた。これに対して本発明では、これらの解析における困難さを軽減し、容易にかつ安全にマルウェアの挙動を知ることが可能になった。   That is, the effect obtained by the present invention is that malware behavior analysis results can be collected in a short time. Previously, malware binary data was analyzed by disassembly or a debugger. However, this method requires a high level of expertise, and at the same time, the analysis requires time from several hours to several days. It was. In particular, in recent years, malware with a mechanism that makes disassembly and debugger analysis more difficult has appeared, and the difficulty of analysis and the time required for analysis have increased. On the other hand, in the present invention, it is possible to reduce the difficulty in these analyzes and to know the behavior of malware easily and safely.

さらに、インターネット上に存在する攻撃者からマルウェアに対する命令のやり取りに関する通信のみをマルウェアに受け渡すことによって、どのような命令を攻撃者が出し、またその命令を受けてマルウェアがどのような挙動を示すかをリアルタイムで把握することが可能になった。これにより、ネットワークオペレータがマルウェアに感染したユーザの通信をいち早く検知することが可能になる。   In addition, by passing only communication related to the exchange of instructions to the malware from the attacker on the Internet, the attacker issues what instructions and the behavior of the malware in response to the instructions. It became possible to grasp in real time. As a result, the network operator can quickly detect the communication of the user infected with malware.

なお、実施例1および2に示したシステム構成は、複数のコンピュータを接続して形成してもよいし、単一のコンピュータ上で動作するプログラムとして構成してもよい。また、システムの構成要素の一部、もしくは全てを専用のハードウェアによって実現することもできる。   The system configuration shown in the first and second embodiments may be formed by connecting a plurality of computers, or may be configured as a program that operates on a single computer. Also, some or all of the components of the system can be realized by dedicated hardware.

以上のように、本発明に係る解析システム、解析方法および解析プログラムは、不正プログラムの解析に有用であり、特にネットワーク接続に基づいて動作する不正プログラムの情報収集に適している。   As described above, the analysis system, the analysis method, and the analysis program according to the present invention are useful for analyzing a malicious program, and are particularly suitable for collecting information on a malicious program that operates based on network connection.

本発明の実施例1における解析システムの概要構成を示す概要構成図である。It is a schematic block diagram which shows the schematic structure of the analysis system in Example 1 of this invention. 実施例1における解析システムの具体的な構成図である。1 is a specific configuration diagram of an analysis system in Example 1. FIG. 動的解析コントロールモジュール4の処理動作を表すフローチャートである。4 is a flowchart showing processing operations of a dynamic analysis control module 4. マルウェア実行モジュール11の処理動作を表すフローチャートである。4 is a flowchart showing a processing operation of a malware execution module 11. マルウェアの挙動監視の処理動作を説明するフローチャートである。It is a flowchart explaining the processing operation | movement of malware behavior monitoring. 仮想ネットワーク部20における処理動作を表すフローチャートである。3 is a flowchart showing processing operations in a virtual network unit 20. プロトコル判別処理の詳細を表すフローチャートである。It is a flowchart showing the detail of a protocol discrimination | determination process. 送信先アドレス・送信先ポート番号のリストについて説明する説明図である。It is explanatory drawing explaining the list | wrist of a transmission destination address and a transmission destination port number. シグネチャリストについて説明する説明図である。It is explanatory drawing explaining a signature list. サーバ応答生成処理の詳細を説明するフローチャートである。It is a flowchart explaining the detail of a server response production | generation process. サーバ応答の定義について説明する説明図である。It is explanatory drawing explaining the definition of a server response. 本発明の実施例2おける解析システムの概要構成を示す概要構成図である。It is a schematic block diagram which shows the schematic structure of the analysis system in Example 2 of this invention. 実施例2における解析システムの具体的な構成図である。It is a specific block diagram of the analysis system in Example 2. 仮想ネットワーク部20aにおける処理動作を表すフローチャートである。It is a flowchart showing the processing operation in the virtual network part 20a. 外部接続コントロールモジュール26の処理を表すフローチャートである。4 is a flowchart showing processing of an external connection control module 26. 接続管理リストについて説明する説明図である。It is explanatory drawing explaining a connection management list.

符号の説明Explanation of symbols

1,1a 動的解析システム
2 マルウェア解析結果データベース
3 解析結果分析・出力モジュール
4 動的解析コントロールモジュール
10 マルウェア実行環境
11 マルウェア実行モジュール
20,20a 仮想ネットワーク部
21 プロトコル判別モジュール
23 プロトコル判別データベース
24 サーバ応答生成モジュール
25 ペイロードデータベース
26 外部接続コントロールモジュール
27 接続管理用シグネチャデータベース
DESCRIPTION OF SYMBOLS 1,1a Dynamic analysis system 2 Malware analysis result database 3 Analysis result analysis and output module 4 Dynamic analysis control module 10 Malware execution environment 11 Malware execution module 20, 20a Virtual network part 21 Protocol discrimination module 23 Protocol discrimination database 24 Server response Generation module 25 Payload database 26 External connection control module 27 Connection management signature database

Claims (9)

コンピュータ内で不正な動作を行う不正プログラムの挙動を解析する解析システムであって、
前記不正プログラムを実行させる実行環境を提供する実行環境提供手段と、
前記実行環境と接続された仮想ネットワークを構築し、前記不正プログラムを前記仮想ネットワークにアクセスさせる仮想ネットワーク提供手段と、
前記実行環境における前記不正プログラムの動作に関する情報および/または前記仮想ネットワークと前記不正プログラムとの通信に関する情報を当該不正プログラムの挙動情報として収集する情報収集手段と、
外部の実ネットワークに接続する実ネットワーク接続手段と、
前記不正プログラムが関与する通信の一部を前記実ネットワークに接続する接続制御手段と、
を備え、
前記接続制御手段は、前記不正プログラムが関与する通信の通信プロトコルを通信ペイロードと予め登録したパターンとのパターンマッチングによって同定し、当該同定結果に基づいて前記実ネットワークに前記通信を接続するか否かを判定し、前記実ネットワークに接続する通信については当該通信を代理実行し、代理実行によって得られた応答を前記不正プログラムに渡し、HTTP(Hypertext Transfer Protocol)による通信を実ネットワークに代理実行する際に、GETリクエストURLのパラメータ部を削除して実ネットワークに接続することを特徴とする解析システム。
An analysis system that analyzes the behavior of a malicious program that performs unauthorized operations in a computer.
Execution environment providing means for providing an execution environment for executing the malicious program;
A virtual network providing means for constructing a virtual network connected to the execution environment and allowing the unauthorized program to access the virtual network;
Information collecting means for collecting information on the operation of the malicious program in the execution environment and / or information on communication between the virtual network and the malicious program as behavior information of the malicious program;
A real network connection means for connecting to an external real network;
Connection control means for connecting a part of communication involving the unauthorized program to the real network;
Bei to give a,
The connection control means identifies a communication protocol of communication involving the malicious program by pattern matching between a communication payload and a pre-registered pattern, and determines whether to connect the communication to the real network based on the identification result When the communication connected to the real network is proxy-executed, the response obtained by the proxy execution is passed to the unauthorized program, and the HTTP (Hypertext Transfer Protocol) communication is proxy-executed to the real network. In addition, the analysis system is characterized in that the parameter part of the GET request URL is deleted and connected to the real network .
前記仮想ネットワーク提供手段は、通信ペイロードと予め登録したパターンとのパターンマッチングを行って通信プロトコルを同定することを特徴とする請求項1に記載の解析システム。 The analysis system according to claim 1 , wherein the virtual network providing unit identifies a communication protocol by performing pattern matching between a communication payload and a pattern registered in advance . 前記仮想ネットワーク提供手段は、前記同定した通信プロトコルに応じた擬似サーバ応答を生成して前記不正プログラムに送信することを特徴とする請求項1又は2に記載の解析システム。 The analysis system according to claim 1, wherein the virtual network providing unit generates a pseudo server response corresponding to the identified communication protocol and transmits the pseudo server response to the malicious program . 前記情報収集手段は、前記不正プログラムが関与する通信の通信プロトコル、通信ペイロード、通信先に関する情報を前記挙動情報として収集することを特徴とする請求項1〜3のいずれか一つに記載の解析システム。 The analysis according to any one of claims 1 to 3, wherein the information collecting unit collects information related to a communication protocol, a communication payload, and a communication destination of communication involving the malicious program as the behavior information. system. コンピュータ内で不正な動作を行う不正プログラムの挙動を解析する解析方法であって、An analysis method for analyzing the behavior of a malicious program that performs unauthorized operations in a computer,
前記不正プログラムを実行させる実行環境を提供する実行環境提供工程と、An execution environment providing step for providing an execution environment for executing the malicious program;
前記実行環境と接続された仮想ネットワークを構築し、前記不正プログラムを前記仮想ネットワークにアクセスさせる仮想ネットワーク提供工程と、A virtual network providing step of constructing a virtual network connected to the execution environment and allowing the unauthorized program to access the virtual network;
前記実行環境における前記不正プログラムの動作に関する情報および/または前記仮想ネットワークと前記不正プログラムとの通信に関する情報を当該不正プログラムの挙動情報として収集する情報収集工程と、An information collecting step of collecting information on the operation of the malicious program in the execution environment and / or information on communication between the virtual network and the malicious program as behavior information of the malicious program;
外部の実ネットワークに接続する実ネットワーク接続工程と、A real network connection process for connecting to an external real network;
前記不正プログラムが関与する通信の一部を前記実ネットワークに接続する接続制御工程と、A connection control step of connecting a part of communication involving the malicious program to the real network;
を含み、Including
前記接続制御工程は、前記不正プログラムが関与する通信の通信プロトコルを通信ペイロードと予め登録したパターンとのパターンマッチングによって同定し、当該同定結果に基づいて前記実ネットワークに前記通信を接続するか否かを判定し、前記実ネットワークに接続する通信については当該通信を代理実行し、代理実行によって得られた応答を前記不正プログラムに渡し、HTTP(Hypertext Transfer Protocol)による通信を実ネットワークに代理実行する際に、GETリクエストURLのパラメータ部を削除して実ネットワークに接続することを特徴とする解析方法。The connection control step identifies the communication protocol of communication involving the malicious program by pattern matching between a communication payload and a pre-registered pattern, and whether to connect the communication to the real network based on the identification result When the communication connected to the real network is proxy-executed, the response obtained by the proxy execution is passed to the unauthorized program, and the HTTP (Hypertext Transfer Protocol) communication is proxy-executed to the real network. And an analysis method characterized by deleting the parameter part of the GET request URL and connecting to the real network.
前記仮想ネットワーク提供工程は、通信ペイロードと予め登録したパターンとのパターンマッチングを行って通信プロトコルを同定することを特徴とする請求項5に記載の解析方法。The analysis method according to claim 5, wherein the virtual network providing step identifies a communication protocol by performing pattern matching between a communication payload and a previously registered pattern. 前記仮想ネットワーク提供工程は、前記同定した通信プロトコルに応じた擬似サーバ応答を生成して前記不正プログラムに送信することを特徴とする請求項5又は6に記載の解析方法。The analysis method according to claim 5 or 6, wherein the virtual network providing step generates a pseudo server response according to the identified communication protocol and transmits the pseudo server response to the malicious program. 前記情報収集工程は、前記不正プログラムが関与する通信の通信プロトコル、通信ペイロード、通信先に関する情報を前記挙動情報として収集することを特徴とする請求項5〜7のいずれか一つに記載の解析方法。The analysis according to any one of claims 5 to 7, wherein the information collecting step collects information related to a communication protocol, a communication payload, and a communication destination of communication involving the malicious program as the behavior information. Method. コンピュータを請求項1〜4のいずれか一つに記載の解析システムとして機能させるための解析プログラム。The analysis program for functioning a computer as an analysis system as described in any one of Claims 1-4.
JP2008019701A 2008-01-30 2008-01-30 Analysis system, analysis method and analysis program Active JP4755658B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008019701A JP4755658B2 (en) 2008-01-30 2008-01-30 Analysis system, analysis method and analysis program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008019701A JP4755658B2 (en) 2008-01-30 2008-01-30 Analysis system, analysis method and analysis program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2011101872A Division JP5389855B2 (en) 2011-04-28 2011-04-28 Analysis system, analysis method and analysis program

Publications (2)

Publication Number Publication Date
JP2009181335A JP2009181335A (en) 2009-08-13
JP4755658B2 true JP4755658B2 (en) 2011-08-24

Family

ID=41035272

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008019701A Active JP4755658B2 (en) 2008-01-30 2008-01-30 Analysis system, analysis method and analysis program

Country Status (1)

Country Link
JP (1) JP4755658B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014185165A1 (en) 2013-05-16 2014-11-20 日本電信電話株式会社 Information processing device, and information processing method

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5823665B2 (en) * 2009-02-20 2015-11-25 株式会社大和化成研究所 Plating bath and plating method using the same
JP5389739B2 (en) * 2010-06-08 2014-01-15 日本電信電話株式会社 Analysis system, analysis apparatus, analysis method, and analysis program
TWI407328B (en) * 2010-09-15 2013-09-01 Chunghwa Telecom Co Ltd Network virus protection method and system
JP2013105366A (en) * 2011-11-15 2013-05-30 Hitachi Ltd Program analyzing system and method
JP5839967B2 (en) * 2011-12-01 2016-01-06 三菱電機株式会社 Malware analysis system
JP2013171556A (en) * 2012-02-23 2013-09-02 Hitachi Ltd Program analysis system and method
JP5892840B2 (en) * 2012-04-06 2016-03-23 株式会社日立製作所 Program analysis system
JP5876399B2 (en) * 2012-10-22 2016-03-02 日本電信電話株式会社 Unauthorized program execution system, unauthorized program execution method, and unauthorized program execution program
JP6050162B2 (en) * 2013-03-15 2016-12-21 エヌ・ティ・ティ・コミュニケーションズ株式会社 Connection destination information extraction device, connection destination information extraction method, and connection destination information extraction program
CN105874463A (en) * 2013-12-30 2016-08-17 诺基亚技术有限公司 Method and apparatus for malware detection
JP2015130008A (en) * 2014-01-06 2015-07-16 富士通株式会社 Dynamic analysis method and dynamic analyzer
EP3099024B1 (en) * 2014-03-19 2019-01-02 Nippon Telegraph and Telephone Corporation Analysis rule adjustment device, analysis rule adjustment system, analysis rule adjustment method, and analysis rule adjustment program
JP6314036B2 (en) * 2014-05-28 2018-04-18 株式会社日立製作所 Malware feature extraction device, malware feature extraction system, malware feature method and countermeasure instruction device
WO2016030927A1 (en) 2014-08-28 2016-03-03 三菱電機株式会社 Process analysis device, process analysis method, and process analysis program
CN106687974B (en) * 2014-09-17 2019-06-04 三菱电机株式会社 Attack observation device and attack observation method
JP6407311B2 (en) 2015-02-06 2018-10-17 三菱電機株式会社 Cryptographic block identification device, cryptographic block identification method, and cryptographic block identification program
CN104766006B (en) * 2015-03-18 2019-03-12 百度在线网络技术(北京)有限公司 A kind of method and apparatus of behavioural information corresponding to determining dangerous file
JP6791134B2 (en) * 2015-06-16 2020-11-25 日本電気株式会社 Analytical systems, analytical methods, analyzers and computer programs
JP6668390B2 (en) * 2015-06-27 2020-03-18 マカフィー, エルエルシー Malware mitigation
RU2628921C1 (en) * 2016-03-18 2017-08-22 Акционерное общество "Лаборатория Касперского" System and method for performing anti-virus scan of file on virtual machine
JP6395986B2 (en) * 2016-06-16 2018-09-26 三菱電機株式会社 Key generation source identification device, key generation source identification method, and key generation source identification program
JP6962374B2 (en) * 2017-08-30 2021-11-05 日本電気株式会社 Log analyzer, log analysis method and program
JP7045050B2 (en) * 2017-11-28 2022-03-31 国立研究開発法人情報通信研究機構 Communication monitoring system and communication monitoring method
JP6783261B2 (en) 2018-02-15 2020-11-11 日本電信電話株式会社 Threat information extraction device and threat information extraction system
WO2021059822A1 (en) * 2019-09-26 2021-04-01 日本電気株式会社 Learning device, discrimination system, learning method, and non-temporary computer readable medium
CN111506626B (en) * 2020-04-21 2023-09-26 武汉理工大学 Pass gate control system based on ship navigation behavior information analysis
JP7099566B2 (en) 2021-02-02 2022-07-12 日本電気株式会社 Malware analysis method, malware analysis device and malware analysis system
CN114051061A (en) * 2021-11-09 2022-02-15 武汉虹旭信息技术有限责任公司 Internet application protocol analysis method and system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005534092A (en) * 2002-07-23 2005-11-10 インターナショナル・ビジネス・マシーンズ・コーポレーション Method and apparatus for automatic determination of potentially worm-like behavior of a program
JP2007334536A (en) * 2006-06-14 2007-12-27 Securebrain Corp Behavior analysis system for malware

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005534092A (en) * 2002-07-23 2005-11-10 インターナショナル・ビジネス・マシーンズ・コーポレーション Method and apparatus for automatic determination of potentially worm-like behavior of a program
JP2007334536A (en) * 2006-06-14 2007-12-27 Securebrain Corp Behavior analysis system for malware

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014185165A1 (en) 2013-05-16 2014-11-20 日本電信電話株式会社 Information processing device, and information processing method
US10129275B2 (en) 2013-05-16 2018-11-13 Nippon Telegraph And Telephone Corporation Information processing system and information processing method

Also Published As

Publication number Publication date
JP2009181335A (en) 2009-08-13

Similar Documents

Publication Publication Date Title
JP4755658B2 (en) Analysis system, analysis method and analysis program
JP5389855B2 (en) Analysis system, analysis method and analysis program
US11381578B1 (en) Network-based binary file extraction and analysis for malware detection
CA2859415C (en) System for detecting, analyzing, and controlling infiltration of computer and network systems
JP5972401B2 (en) Attack analysis system, linkage device, attack analysis linkage method, and program
US8904558B2 (en) Detecting web browser based attacks using browser digest compute tests using digest code provided by a remote source
US8793787B2 (en) Detecting malicious network content using virtual environment components
RU2495486C1 (en) Method of analysing and detecting malicious intermediate nodes in network
EP3108401B1 (en) System and method for detection of malicious hypertext transfer protocol chains
JP6726429B2 (en) System and method for detecting domain generation algorithm (DGA) malware
CN111651757A (en) Attack behavior monitoring method, device, equipment and storage medium
JP2019021294A (en) SYSTEM AND METHOD OF DETERMINING DDoS ATTACKS
US20160373447A1 (en) Unauthorized access detecting system and unauthorized access detecting method
Mahboubi et al. Stochastic modeling of IoT botnet spread: A short survey on mobile malware spread modeling
JP2014179025A (en) Connection destination information extraction device, connection destination information extraction method, and connection destination information extraction program
Vetterl Honeypots in the age of universal attacks and the Internet of Things
Kim et al. Agent-based honeynet framework for protecting servers in campus networks
KR20200092508A (en) Large-scale honeypot system IoT botnet analysis
WO2015178002A1 (en) Information processing device, information processing system, and communication history analysis method
KR20200011702A (en) Apparatus and method for diagnosing network security system
CN112039895B (en) Network cooperative attack method, device, system, equipment and medium
Wu et al. A novel approach to trojan horse detection by process tracing
JP6286314B2 (en) Malware communication control device
CN112005234A (en) Context profiling for malware detection
CN116418554A (en) Internet of things security gateway protection method and system based on honeypot network

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110301

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110428

TRDD Decision of grant or rejection written
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110520

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110520

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110524

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110527

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140603

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4755658

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350