JP6454617B2 - Malware operating environment estimation method, apparatus and system thereof - Google Patents

Malware operating environment estimation method, apparatus and system thereof Download PDF

Info

Publication number
JP6454617B2
JP6454617B2 JP2015152662A JP2015152662A JP6454617B2 JP 6454617 B2 JP6454617 B2 JP 6454617B2 JP 2015152662 A JP2015152662 A JP 2015152662A JP 2015152662 A JP2015152662 A JP 2015152662A JP 6454617 B2 JP6454617 B2 JP 6454617B2
Authority
JP
Japan
Prior art keywords
malware
operating environment
estimation
information
environment
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.)
Expired - Fee Related
Application number
JP2015152662A
Other languages
Japanese (ja)
Other versions
JP2017033286A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2015152662A priority Critical patent/JP6454617B2/en
Publication of JP2017033286A publication Critical patent/JP2017033286A/en
Application granted granted Critical
Publication of JP6454617B2 publication Critical patent/JP6454617B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、マルウェア動作環境推定方法、その装置およびシステムに関するものである。   The present invention relates to a malware operating environment estimation method, an apparatus thereof, and a system.

近年、企業等の組織において、コンピュータウイルス等のマルウェアの脅威が増大しており、組織の機密情報等を守るためにもマルウェアへの対策が急務となっている。マルウェアは日々新しいものが出現しており、組織の入口でマルウェアの侵入を防止することは難しく、マルウェアが組織内に侵入している前提での対策が重要になる。このような対策として、マルウェアの挙動を明らかにし、その挙動に応じて対策を行うというものがある。   In recent years, the threat of malware such as computer viruses has increased in organizations such as corporations, and countermeasures against malware are urgently required to protect confidential information of organizations. New malware appears every day, and it is difficult to prevent the intrusion of malware at the entrance of the organization, and it is important to take measures on the premise that the malware has entered the organization. As such a measure, there is a method of clarifying the behavior of malware and taking a measure according to the behavior.

マルウェアの挙動を明らかにする技術としては、特許文献1に記載されているような動的解析技術がある。これは、マルウェアを解析環境で実際に動作させ、ファイルアクセスやネットワークアクセス、API(Application Interface)呼び出し等の活動を記録することでその挙動を明らかにする技術である。特許文献1に記載の技術では、動的解析を行ったプログラムがマルウェアであるか、悪意のある活動を行ったかどうかを判定し、出力する機能を有している。   As a technique for clarifying the behavior of malware, there is a dynamic analysis technique as described in Patent Document 1. This is a technique for clarifying the behavior of malware by actually operating it in an analysis environment and recording activities such as file access, network access, and API (Application Interface) calls. The technique described in Patent Literature 1 has a function of determining whether a program that has been subjected to dynamic analysis is malware or performing a malicious activity, and outputting it.

特開2010−198054号公報JP 2010-198054 A

特許文献1に記載の技術を用いれば、ある環境でマルウェアが悪意のある活動を行ったことは特定できる。しかしながら、マルウェアが悪意のある活動を行う要因となった環境の情報を特定することはできない。このため、多くのコンピュータを有する組織において、対策対象のコンピュータを絞ることによりマルウェア対策の費用を削減できるが、どのような環境のコンピュータを対策対象とすればよいかが特定できない。   If the technique described in Patent Document 1 is used, it is possible to specify that malware has performed a malicious activity in a certain environment. However, it is not possible to identify information on the environment that caused malware to perform malicious activities. For this reason, in an organization having a large number of computers, it is possible to reduce the cost of malware countermeasures by narrowing down the countermeasure target computers.

そこで、本発明の目的は、マルウェアの動作環境を推定することにある。   Therefore, an object of the present invention is to estimate the operating environment of malware.

本発明に係る代表的なマルウェア動作環境推定方法は、複数の解析システムのそれぞれから前記マルウェアの挙動に関する情報を取得して、前記取得した情報に関連する動作環境の要素を抽出し、前記複数の解析システムの全てに対して、前記抽出した動作環境の要素の組み合わせを生成し、前記複数の解析システムの全てに対して、前記マルウェアの稼動状況の情報を取得し、前記動作環境の要素の組み合わせの1つを前記複数の解析システムのそれぞれが含むか否かの情報と、前記複数の解析システムのそれぞれで前記マルウェアが稼働したか否かの情報とに基づいて、前記マルウェアの動作環境を推定することを特徴とする。   A typical malware operating environment estimation method according to the present invention acquires information on the behavior of the malware from each of a plurality of analysis systems, extracts elements of the operating environment related to the acquired information, and A combination of elements of the extracted operating environment is generated for all of the analysis systems, information on the operating status of the malware is acquired for all of the plurality of analysis systems, and a combination of the elements of the operating environment is obtained. Based on information on whether each of the plurality of analysis systems includes one of the above and information on whether the malware has been operated on each of the plurality of analysis systems, the operating environment of the malware is estimated It is characterized by doing.

本発明によれば、マルウェアの動作環境を推定することができる。   According to the present invention, the operating environment of malware can be estimated.

ネットワークシステムの例を示す図である。It is a figure which shows the example of a network system. マルウェア動作環境推定装置のハードウェアの例を示す図である。It is a figure which shows the example of the hardware of a malware operation environment estimation apparatus. マルウェア動作環境推定装置の構成の例を示す図である。It is a figure which shows the example of a structure of the malware operating environment estimation apparatus. 環境要素抽出部の処理の例を示すフローチャートである。It is a flowchart which shows the example of a process of an environmental element extraction part. 環境要素抽出ロジックDBの例を示す図である。It is a figure which shows the example of environmental element extraction logic DB. 環境情報生成部の処理の例を示すフローチャートであるIt is a flowchart which shows the example of a process of an environment information generation part. 解析環境情報DBの例を示す図である。It is a figure which shows the example of analysis environment information DB. 動作環境推定処理部の処理の例を示すフローチャートである。It is a flowchart which shows the example of a process of an operating environment estimation process part. 処理モジュールDBの例を示す図である。It is a figure which shows the example of processing module DB. 表示画面の例を示す図である。It is a figure which shows the example of a display screen. マルウェア動作環境履歴DBの例を示す図である。It is a figure which shows the example of malware operating environment log | history DB. 動作環境履歴情報を取得する環境要素抽出部の処理の例を示すフローチャートである。It is a flowchart which shows the example of a process of the environment element extraction part which acquires operation | movement environment historical information.

以下、本発明を実施するための形態(実施例)を、図を参照して詳細に説明する。   DESCRIPTION OF EMBODIMENTS Hereinafter, modes (examples) for carrying out the present invention will be described in detail with reference to the drawings.

図1はネットワークシステム100の例を示す図である。ネットワークシステム100はマルウェア動作環境推定装置101、クライアント端末102、マルウェア解析システム104から構成され、それぞれネットワーク103を介して接続される。クライアント端末102はネットワークシステム100内に複数存在していてもよい。   FIG. 1 is a diagram illustrating an example of a network system 100. The network system 100 includes a malware operating environment estimation device 101, a client terminal 102, and a malware analysis system 104, which are connected via a network 103, respectively. A plurality of client terminals 102 may exist in the network system 100.

マルウェア解析システム104は、ネットワークシステム100内でマルウェアを解析するシステムであり、ネットワーク103を介して解析レポートをマルウェア動作環境推定装置101へ送信する。マルウェア解析システム104は複数存在し、複数のマルウェア解析システム104の中のそれぞれは解析環境を有する。解析環境は複数の環境から構成されており、OS(Operating System)の種類や実行しているアプリケーションプログラム等であって、図7を用いて後で説明する。   The malware analysis system 104 is a system that analyzes malware in the network system 100, and transmits an analysis report to the malware operating environment estimation apparatus 101 via the network 103. There are a plurality of malware analysis systems 104, and each of the plurality of malware analysis systems 104 has an analysis environment. The analysis environment is composed of a plurality of environments, which are the types of OS (Operating System), application programs being executed, and the like, which will be described later with reference to FIG.

複数のマルウェア解析システム104の中のそれぞれの解析環境は、その解析環境の一部が同じであってもよいし、その解析環境の一部が異なってもよい。ただし、複数のマルウェア解析システム104のそれぞれの解析環境は、その解析環境の一部が少しずつ異なり、解析環境のバリエーションの多い方が、マルウェアの動作環境の推定の精度が向上する。   Each analysis environment in the plurality of malware analysis systems 104 may have the same analysis environment or a part of the analysis environment. However, each of the analysis environments of the plurality of malware analysis systems 104 is slightly different, and the accuracy of the estimation of the malware operating environment is improved when there are more variations of the analysis environment.

解析レポートは、マルウェアのファイル名等のマルウェアそのものに関するマルウェア情報、特定のAPIを呼び出した等のマルウェアの挙動の情報、解析レポートを生成したマルウェア解析システム104の解析環境の情報を含んでもよい。解析レポートは、マルウェアの動作しなかった環境である情報を含んでもよい。これらのマルウェア情報と解析環境の情報とマルウェアの動作しなかった環境である情報とは、特定の環境におけるマルウェアの稼動を表すため、マルウェアの稼動判定結果とみなすことができる。   The analysis report may include malware information related to the malware itself such as the file name of the malware, information on the behavior of the malware such as calling a specific API, and information on the analysis environment of the malware analysis system 104 that generated the analysis report. The analysis report may include information that is an environment in which malware did not operate. The malware information, the analysis environment information, and the information that is the environment in which the malware did not operate represent the operation of the malware in a specific environment, and thus can be regarded as a malware operation determination result.

解析レポートは、解析環境の情報として、具体的なOSの種類等の情報はなくてもよく、解析環境を識別するための情報である解析環境識別子を含んでもよい。マルウェア情報については図11を用いて後で説明し、マルウェアの挙動の情報は図5を用いて後で説明し、解析環境の情報は図7を用いて後で説明する。複数のマルウェア解析システム104は解析レポートをそれぞれ送信するため、まとめると解析レポート群となる。   The analysis report may not include specific information such as the type of OS as the analysis environment information, and may include an analysis environment identifier that is information for identifying the analysis environment. The malware information will be described later with reference to FIG. 11, the behavior information of the malware will be described later with reference to FIG. 5, and the analysis environment information will be described later with reference to FIG. Since the plurality of malware analysis systems 104 transmit analysis reports, respectively, they are combined into an analysis report group.

図示を省略するが、マルウェア動作環境推定装置101を運用する組織内のその他のコンピュータ機器やネットワーク装置、マルウェア動作環境推定装置101を管理する管理者が利用するコンピュータ等がネットワーク103に接続されていてもよい。   Although not shown, other computer devices or network devices in the organization that operates the malware operating environment estimation apparatus 101, computers used by an administrator who manages the malware operating environment estimation apparatus 101, and the like are connected to the network 103. Also good.

図2は、マルウェア動作環境推定装置101のハードウェアの例を示す図である。マルウェア動作環境推定装置101は、通信装置201、入力装置202、表示装置203、演算装置204、メモリ205、および、記憶装置206を備える。   FIG. 2 is a diagram illustrating an example of hardware of the malware operating environment estimation apparatus 101. As illustrated in FIG. The malware operating environment estimation device 101 includes a communication device 201, an input device 202, a display device 203, an arithmetic device 204, a memory 205, and a storage device 206.

通信装置201は、ネットワークカード等のネットワークインタフェースである。通信装置201は、ネットワーク103を介して他の装置からデータを受信し、受信したデータを演算装置204へ送る。そして、通信装置201は、演算装置204によって生成されたデータを、ネットワーク103を介して他の装置へ送信する。   The communication device 201 is a network interface such as a network card. The communication device 201 receives data from other devices via the network 103 and sends the received data to the arithmetic device 204. Then, the communication device 201 transmits the data generated by the arithmetic device 204 to another device via the network 103.

入力装置202は、キーボードまたはマウス等の装置であり、管理者による情報の入力を受け付けるための装置である。表示装置203は、LCD(Liquid Crystal Display)等の装置であり、管理者に情報を出力するための装置である。   The input device 202 is a device such as a keyboard or a mouse, and is a device for accepting input of information by an administrator. The display device 203 is a device such as an LCD (Liquid Crystal Display), and is a device for outputting information to an administrator.

記憶装置206は、ハードディスク等の装置であり、演算装置204が実行するプログラムおよび演算装置204が使用するデータ等を格納する。メモリ205は、一時的にデータ等が読み出される記憶領域であり、記憶装置206に格納されたプログラムやデータ等がメモリ205に読み出されてもよいし、メモリ205に格納されたデータ等が記憶装置206に書き込まれてもよい。   The storage device 206 is a device such as a hard disk, and stores a program executed by the arithmetic device 204, data used by the arithmetic device 204, and the like. The memory 205 is a storage area from which data or the like is temporarily read, and a program or data stored in the storage device 206 may be read into the memory 205 or data stored in the memory 205 may be stored. It may be written to the device 206.

演算装置204は、記憶装置206あるいはメモリ205に格納されたプログラムを実行し、マルウェア動作環境推定装置101に備わる各装置を制御する。演算装置204は、入力装置202および表示装置203を制御し、入力装置202から入力されたデータを受け付け、表示装置203へデータを出力する。記憶装置206に格納されるプログラムは、演算装置204によって、記憶装置206からメモリ205に読み出され、メモリ205に格納されて実行されてもよい。   The arithmetic device 204 executes a program stored in the storage device 206 or the memory 205, and controls each device provided in the malware operation environment estimation device 101. The arithmetic device 204 controls the input device 202 and the display device 203, receives data input from the input device 202, and outputs the data to the display device 203. The program stored in the storage device 206 may be read out from the storage device 206 to the memory 205 by the arithmetic device 204, stored in the memory 205, and executed.

演算装置204は、プログラムを記憶装置206から読み出すが、他の例として、CD(Compact Disc)もしくはDVD(Digital Versatile Disc)等の光学記録媒体、MO(Magneto−Optical Disc)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または、半導体メモリ等の記録媒体からプログラムを読み出してもよい。また他の例として、他の装置から、通信媒体を介して、プログラムを読み出してもよい。通信媒体とは、ネットワークまたはこれらを伝搬するディジタル信号または搬送波を示す。   The arithmetic unit 204 reads the program from the storage device 206. As another example, the arithmetic unit 204 is an optical recording medium such as a CD (Compact Disc) or a DVD (Digital Versatile Disc), or a magneto-optical recording medium such as an MO (Magneto-Optical Disc). The program may be read from a recording medium such as a tape medium, a magnetic recording medium, or a semiconductor memory. As another example, a program may be read from another device via a communication medium. A communication medium refers to a network or a digital signal or carrier wave that propagates through the network.

図1に示すクライアント端末102のハードウェアは、図2に示すマルウェア動作環境推定装置101と同じハードウェアであるか、それに相当するハードウェアを有する。このため、クライアント端末102のハードウェアの具体的な説明は省略する。   The hardware of the client terminal 102 shown in FIG. 1 is the same hardware as the malware operating environment estimation apparatus 101 shown in FIG. Therefore, a specific description of the hardware of the client terminal 102 is omitted.

図3は、マルウェア動作環境推定装置101の構成の例を示す図である。マルウェア動作環境推定装置101は、環境要素抽出部301、環境要素抽出ロジックDB(Data Base)302、環境情報生成部303、解析環境情報DB304、動作環境推定処理部305、処理モジュールDB306、出力処理部307、マルウェア動作環境履歴DB308から構成される。これらの各部は、演算装置204がプログラムを実行することにより実現されてもよい。   FIG. 3 is a diagram illustrating an example of the configuration of the malware operating environment estimation apparatus 101. The malware operation environment estimation device 101 includes an environment element extraction unit 301, an environment element extraction logic DB (Data Base) 302, an environment information generation unit 303, an analysis environment information DB 304, an operation environment estimation processing unit 305, a processing module DB 306, and an output processing unit. 307, the malware operating environment history DB 308. Each of these units may be realized by the arithmetic device 204 executing a program.

環境要素抽出部301は、1以上のマルウェアの解析レポートからなるマルウェアの解析レポート群を入力とし、環境要素抽出ロジックDB302に格納されている抽出ロジックと入力された解析レポート群とのマッチングを行い、マッチする際には環境要素抽出ロジックDB302内の情報に従って、解析環境情報DB304内に格納された情報から抽出すべき要素を抽出要素として出力する。   The environment element extraction unit 301 receives a malware analysis report group including one or more malware analysis reports as input, and performs matching between the extraction logic stored in the environment element extraction logic DB 302 and the input analysis report group, When matching, according to the information in the environment element extraction logic DB 302, the element to be extracted from the information stored in the analysis environment information DB 304 is output as an extraction element.

ここで、マルウェアの解析レポートとは、例えば特許文献1に記載されているような技術でマルウェアを解析した結果得られる、既に説明したマルウェアの挙動に関する情報であり、解析対象の環境内におけるマルウェアのファイルアクセス(読み込み、書き込み、作成、削除等)の記録、レジストリアクセス(読み込み、書き込み、追加、削除等)の記録、ネットワークアクセス(アクセス先、送受信情報等)の記録、API呼出記録(呼び出したAPI、与えられたパラメータ、返り値等)の情報のうち1種類以上の情報を含むものである。   Here, the malware analysis report is information on the behavior of malware already described, which is obtained as a result of analyzing the malware using a technique such as that described in Patent Document 1, for example. File access (read, write, create, delete, etc.) record, registry access (read, write, add, delete, etc.) record, network access (access destination, send / receive information, etc.) record, API call record (API called) Including one or more types of information of the given parameter, return value, etc.).

環境情報生成部303は、環境要素抽出部301の出力である抽出要素を入力として呼び出され、抽出要素に含まれる情報と解析環境情報DB304に格納されている情報をもとに動作環境の推定処理で使用する動作環境推定用解析環境情報を生成して出力する。   The environment information generation unit 303 is called with the extraction element that is the output of the environment element extraction unit 301 as an input, and the operation environment estimation process based on the information included in the extraction element and the information stored in the analysis environment information DB 304 Generates and outputs the analysis environment information for estimating the operating environment used in.

動作環境推定処理部305は、環境情報生成部303の出力である動作環境推定用解析環境情報およびマルウェアの稼動判定結果を入力として呼び出され、処理モジュールDB306に格納された処理モジュールに従って入力された情報を処理し、マルウェアが動作する環境の推定結果を動作環境推定結果としてマルウェア動作環境履歴DB308に記録するとともに、動作環境推定結果を出力する。   The operating environment estimation processing unit 305 is called with the operating environment estimation analysis environment information output from the environment information generating unit 303 and the malware operation determination result as input, and is input according to the processing module stored in the processing module DB 306. Are recorded in the malware operation environment history DB 308 as the operation environment estimation result, and the operation environment estimation result is output.

動作環境推定処理部305で使用するマルウェアの稼動判定結果は、解析環境情報DB304で環境情報が定義されている環境のうち複数の環境におけるマルウェアの稼動判定結果である。ある環境でマルウェアが稼動したかどうかの判定は、例えば特許文献1に記載の技術に代表されるマルウェアの動的解析の結果として出力される判定結果を利用してもよいし、動的解析の結果得られるマルウェアの挙動レポートを別途解析して取得してもよい。   The malware operation determination result used in the operation environment estimation processing unit 305 is the operation determination result of malware in a plurality of environments among the environments in which environment information is defined in the analysis environment information DB 304. The determination of whether or not the malware is operating in a certain environment may use, for example, a determination result output as a result of the dynamic analysis of malware represented by the technique described in Patent Document 1, The resulting malware behavior report may be separately analyzed and acquired.

マルウェアの稼動判定結果の取得の処理はこれらに限定されず、ネットワーク103を介して受信した解析レポートから直接に取得してもよいし、ネットワーク103を介して受信した解析レポートから環境情報生成部303経由で取得してもよいし、他の処理により取得してもよい。   The process of acquiring the malware operation determination result is not limited to these, and may be acquired directly from the analysis report received via the network 103, or may be acquired from the analysis report received via the network 103. It may be acquired via or may be acquired by other processing.

出力処理部307では、動作環境推定処理部305の出力である動作環境推定結果を入力として、マルウェア動作環境推定装置101の利用者(管理者)に動作環境推定結果を表示する、動作環境推定結果をシステム管理者にメールで連絡する、他のシステムに対して動作環境推定結果を自動的に入力する、といった処理を実施する。   The output processing unit 307 receives the operating environment estimation result output from the operating environment estimation processing unit 305 as an input, and displays the operating environment estimation result to the user (administrator) of the malware operating environment estimation apparatus 101. The system administrator is notified by e-mail, and the operation environment estimation result is automatically input to other systems.

図4は、環境要素抽出部301の処理の例を示すフローチャートである。環境要素抽出部301は、解析レポートに含まれるマルウェアの挙動等の情報から、それに関連する具体的な動作環境の要素を特定して抽出するものである。まず、環境要素抽出部301はステップS401で、入力として解析レポート群を取得する。続いてステップS402で全ての解析レポートを処理したかどうか判定し、全ての解析レポートを処理していないと判定した場合にはステップS403に進み、未処理の解析レポートを一つ取得して、対象の解析レポートとする。   FIG. 4 is a flowchart illustrating an example of processing performed by the environment element extraction unit 301. The environment element extraction unit 301 identifies and extracts specific elements of the operating environment from information such as malware behavior included in the analysis report. First, the environmental element extraction unit 301 acquires an analysis report group as an input in step S401. Subsequently, in step S402, it is determined whether all analysis reports have been processed. If it is determined that all analysis reports have not been processed, the process proceeds to step S403, where one unprocessed analysis report is acquired, and the target Analysis report.

環境要素抽出部301はステップS404で、環境要素抽出ロジックDB302から抽出ロジックのリストを取得する。ステップS405で全ての抽出ロジックを処理済みかどうか判定し、全ての抽出ロジック処理済みであると判定しない場合には、ステップS406に進む。ステップS406では、未処理の抽出ロジックを一つ取得して、対象の抽出ロジックとする。   In step S404, the environment element extraction unit 301 acquires a list of extraction logics from the environment element extraction logic DB 302. In step S405, it is determined whether all the extraction logics have been processed. If it is not determined that all the extraction logics have been processed, the process proceeds to step S406. In step S406, one unprocessed extraction logic is acquired and set as a target extraction logic.

環境要素抽出部301はステップS407で、対象解析レポート内に対象抽出ロジックの条件にマッチする挙動が存在しているかどうか判定する。存在していると判定した場合にはステップS408に進み、抽出要素に対象抽出ロジックの追加要素および優先度の情報を追加しステップS409に進む。ステップS407で対象抽出ロジックの条件にマッチする挙動が対象解析レポート内に存在しない場合には、ステップS409に進む。ステップS409では対象抽出ロジックを処理済みと設定し、ステップS405に戻る。   In step S407, the environment element extraction unit 301 determines whether a behavior that matches the target extraction logic condition exists in the target analysis report. If it is determined that it exists, the process proceeds to step S408, and the additional element and priority information of the target extraction logic are added to the extracted element, and the process proceeds to step S409. If no behavior matching the condition of the target extraction logic exists in the target analysis report in step S407, the process proceeds to step S409. In step S409, the target extraction logic is set as processed, and the process returns to step S405.

環境要素抽出部301はステップS405で、全ての環境要素抽出ロジックが処理済みに設定されていると判定した場合には、ステップS410に進み対象解析レポートを処理済みと設定し、ステップS402に戻る。ステップS402で全ての解析レポートが処理済みであると判定した場合には、ステップS411で抽出要素を出力して処理を終了する。   If the environment element extraction unit 301 determines in step S405 that all the environment element extraction logics are set to processed, the process proceeds to step S410, sets the target analysis report as processed, and returns to step S402. If it is determined in step S402 that all analysis reports have been processed, the extracted element is output in step S411, and the process ends.

また、環境要素抽出部301の処理で出力の際、抽出要素に含まれなかった環境要素について何らかの形で優先度を設定し出力させるような構成としてもよい。これにより、例えば、マルウェアの動作に影響を与えるが解析レポートには現れない要素がある場合に、これを動作環境の候補とすることができる。その際の優先度は、事前に設定しておいてもよいし、抽出要素に含まれる環境要素とその優先度から機械的に決定してもよい。   Moreover, it is good also as a structure which sets and outputs a priority with respect to the environmental element which was not contained in the extraction element at the time of output by the process of the environmental element extraction part 301. FIG. Thereby, for example, when there is an element that affects the operation of the malware but does not appear in the analysis report, it can be set as a candidate for the operation environment. The priority at that time may be set in advance, or may be determined mechanically from the environmental elements included in the extraction elements and their priorities.

図5は、環境要素抽出ロジックDB302の例を示す説明図である。環境要素抽出ロジックDB302は番号欄501、条件欄502、追加要素欄503、優先度欄504から構成される。番号欄501の情報は抽出ロジックを一意に定めるための識別子であり、図5の例では表の1行が1つの抽出ロジックである。条件欄502の情報は追加要素欄503および優先度欄504の情報を環境要素抽出部301の出力に加えるかどうかを判定するためのマルウェアの解析レポートに含まれる情報の条件を示している。   FIG. 5 is an explanatory diagram showing an example of the environment element extraction logic DB 302. The environment element extraction logic DB 302 includes a number field 501, a condition field 502, an additional element field 503, and a priority field 504. The information in the number column 501 is an identifier for uniquely determining the extraction logic. In the example of FIG. 5, one row of the table is one extraction logic. Information in the condition column 502 indicates a condition of information included in the malware analysis report for determining whether or not to add the information in the additional element column 503 and the priority column 504 to the output of the environment element extraction unit 301.

ここで、条件欄502の情報には、図5に示すような、特定のAPIを呼び出したか否か、特定のファイルにアクセスしたか否か、特定のファイルを実行したか否か、ネットワークアクセスを行ったか否か、特定の設定に関係する情報を参照したか否か、といった情報が含まれる。また、複数の条件を全て満たしているか否か(AND条件)や複数の条件のうちいずれか一つが満たされたか否か(OR条件)といった情報が設定されてもよい。   Here, in the information in the condition column 502, as shown in FIG. 5, whether or not a specific API is called, whether or not a specific file is accessed, whether or not a specific file is executed, network access is included. Information such as whether or not it has been performed and whether or not information related to a specific setting has been referred to is included. Information such as whether or not all of a plurality of conditions are satisfied (AND condition) and whether or not any one of the plurality of conditions is satisfied (OR condition) may be set.

なお、図5の例は説明のために、条件欄502の情報を文章で表現したが、例えばログファイルの文字コード列や、特定のコード等であってもよく、マルウェア解析システム104と環境要素抽出部301との間で共通する情報の形式であればよい。   In the example of FIG. 5, the information in the condition column 502 is expressed by text for explanation, but may be a character code string of a log file, a specific code, or the like. Any information format common to the extraction unit 301 may be used.

追加要素欄503および優先度欄504の情報は、マルウェア解析レポートに含まれるマルウェアの挙動が条件欄502の条件を満たした場合に使われる情報であり、追加要素欄503の情報は環境要素抽出部301の出力情報に追加する環境要素であり、優先度欄504の情報は、追加要素欄503の情報に対する優先度である。なお、追加要素欄503は、1つだけでなく複数の情報が含まれてもよい。環境要素抽出ロジックDB302の情報は事前に設定されていてもよい。   The information in the additional element column 503 and the priority column 504 is information used when the behavior of the malware included in the malware analysis report satisfies the condition in the condition column 502. The information in the additional element column 503 is the environment element extraction unit. It is an environmental element to be added to the output information 301, and the information in the priority column 504 is the priority for the information in the additional component column 503. Note that the additional element field 503 may include not only one but a plurality of pieces of information. Information in the environment element extraction logic DB 302 may be set in advance.

図6は、環境情報生成部303の処理の例を示すフローチャートである。環境情報生成部303は、環境要素抽出部301で抽出された動作環境が実際にマルウェアの記録された動作環境に限定されるため、その限定された動作環境のパターンを拡張した動作環境の情報を生成する。まず、環境情報生成部303はステップS601で、環境要素抽出部301の出力である抽出要素を取得し、ステップS602で解析環境情報DB304から解析環境情報を取得する。取得した抽出要素には、既に説明したように追加要素欄503の情報が含まれる。   FIG. 6 is a flowchart illustrating an example of processing of the environment information generation unit 303. Since the operating environment extracted by the environment element extracting unit 301 is limited to the operating environment where the malware is actually recorded, the environment information generating unit 303 obtains information on the operating environment obtained by extending the limited operating environment pattern. Generate. First, in step S601, the environment information generation unit 303 acquires an extraction element that is an output of the environment element extraction unit 301. In step S602, the environment information generation unit 303 acquires analysis environment information from the analysis environment information DB 304. The acquired extracted element includes the information of the additional element column 503 as described above.

環境情報生成部303はステップS603で、解析環境情報DB304から取得した解析環境情報のうち、解析環境識別子と、取得した抽出要素に一致する列の情報を抽出し、それらにより動作環境推定用解析環境情報を生成する。解析環境識別子と列については図7を用いて後で説明する。ステップS603により、実際にマルウェアの記録された動作環境の情報が生成される。   In step S603, the environment information generation unit 303 extracts the analysis environment identifier and the information of the column that matches the acquired extraction element from the analysis environment information acquired from the analysis environment information DB 304, and uses them to analyze the analysis environment for estimating the operating environment. Generate information. The analysis environment identifier and the column will be described later with reference to FIG. Through step S603, information on the operating environment where the malware is actually recorded is generated.

マルウェアの動作する環境が、例えば特定のOSと特定のアプリケーションの両方がそろった環境であるかもしれないし、特定のOSか特定のアプリケーションのいずれか一方の環境であるかもしれないし、これら以外であるかもしないため、以下のステップS604からステップS606では、実際にマルウェアの記録された動作環境の情報に基づいて、可能な限り多くの環境情報を生成する。   The environment in which the malware operates may be, for example, an environment having both a specific OS and a specific application, or may be an environment of either a specific OS or a specific application, or any other environment. Therefore, in the following steps S604 to S606, as much environment information as possible is generated based on the information of the operating environment where the malware is actually recorded.

環境情報生成部303はステップS604で、動作環境推定用解析環境情報の解析環境識別子以外の各列に対して、NOT演算を行った列を新たに動作環境推定用解析環境情報の列として追加する。ステップS605で動作環境推定用解析環境情報の解析環境識別子以外の列に関し、全ての2つの列の組み合わせのAND演算を行った結果を新たに動作環境推定用解析環境情報の列として追加する。   In step S604, the environment information generation unit 303 newly adds a column for which a NOT operation is performed to each column other than the analysis environment identifier of the analysis environment information for operation environment estimation as a column of analysis environment information for operation environment estimation. . In step S605, with respect to the columns other than the analysis environment identifier of the analysis environment information for estimating the operating environment, a result of performing an AND operation on all combinations of the two columns is newly added as a column of the analysis environment information for estimating the operating environment.

さらに、環境情報生成部303はステップS606で、動作環境推定用解析環境情報の解析環境識別子以外の列に関し、全ての2つの列の組み合わせのOR演算を行った結果を新たに動作環境推定用解析環境情報の列として追加する。最後にステップS607で、生成した動作環境推定用解析環境情報を環境情報生成部303から出力して終了する。   Further, in step S606, the environment information generation unit 303 newly analyzes the result of OR operation of combinations of all two columns for columns other than the analysis environment identifier of the analysis environment information for operation environment estimation. Add as a column of environment information. Finally, in step S607, the generated analysis environment information for estimating the operating environment is output from the environment information generation unit 303 and the process ends.

図6に示した環境情報生成部303の処理フローの例において、列のNOT演算、列同士のAND演算およびOR演算を行っているが、これら全ての演算を行う構成に制限されるものではなく、これらのうち一部の演算のみを行ってもよいし、また、これらの演算を全く行わなくてもよい。また、これらの演算を動作環境推定用解析環境情報の全ての列または全ての2つの列の組み合わせに対して行うのではなく、一部の列にのみ演算を行ってもよい。   In the example of the processing flow of the environment information generation unit 303 shown in FIG. 6, column NOT operations, column AND operations and OR operations are performed, but the configuration is not limited to performing all these operations. Only some of these operations may be performed, or these operations may not be performed at all. Further, these calculations may not be performed on all the columns of the analysis environment information for estimating the operating environment or a combination of all the two columns, but may be performed only on some columns.

また、AND演算やOR演算に関しては2つの列の組み合わせに限定されるものではなく、3つ以上の列の組み合わせに対して演算を行った結果を追加してもよい。また、NOT演算、AND演算、OR演算を行う順番は図6の例に示した順番のみに制限されるものではなく、任意の順番で演算を行ってもよい。また、これらの演算は1度のみ行うことに制限されるものではなく、同じ演算を2度以上行ってもよい。   Further, the AND operation and the OR operation are not limited to the combination of two columns, and a result obtained by performing an operation on a combination of three or more columns may be added. Further, the order in which the NOT operation, the AND operation, and the OR operation are performed is not limited to the order shown in the example of FIG. 6, and the operation may be performed in an arbitrary order. Further, these operations are not limited to being performed only once, and the same operation may be performed twice or more.

また、OR演算、AND演算、NOT演算によって追加された列に対応する優先度の設定は、事前に設定した特定の値に設定してもよいし、演算を行う対象の列の優先度に応じて算出して設定してもよい。   In addition, the priority setting corresponding to the column added by the OR operation, the AND operation, and the NOT operation may be set to a specific value set in advance, or according to the priority of the target column on which the operation is performed. May be calculated and set.

環境情報生成部303は、環境要素抽出部301の出力する抽出要素に含まれる優先度すなわち優先度欄504の情報に基づいて、各列に優先度を付与してもよい。複数の列の演算により追加された列には、演算のもととなった列の複数の優先度へ、演算の種類ごとに事前に設定された計算を適用して算出した優先度を付与してもよい。   The environment information generation unit 303 may give priority to each column based on the priority included in the extraction element output from the environment element extraction unit 301, that is, the information in the priority column 504. Columns added by operations of multiple columns are given priorities calculated by applying calculations set in advance for each type of operation to the multiple priorities of the column that was the basis of the operation. May be.

AND演算により追加された列には、AND演算のもととなった列の優先度より高い優先度が付与されてもよい。OR演算により追加された列には、OR演算のもととなった列の優先度より低い優先度が付与されてもよい。動作環境推定用解析環境情報は、これらの付与された優先度を含んでもよい。   The column added by the AND operation may be given a priority higher than the priority of the column that is the basis of the AND operation. The column added by the OR operation may be given a priority lower than the priority of the column that is the basis of the OR operation. The analysis environment information for operating environment estimation may include these assigned priorities.

図7は、解析環境情報DB304の例を示す図である。解析環境情報DB304は解析環境識別子欄701と環境情報欄702から構成される。解析環境識別子欄701は、解析環境を一意に定める識別子である。解析環境の識別子はマルウェア解析システム104ごとに割当てられるため、識別子の個数はマルウェア解析システム104の個数となる。   FIG. 7 is a diagram illustrating an example of the analysis environment information DB 304. The analysis environment information DB 304 includes an analysis environment identifier column 701 and an environment information column 702. The analysis environment identifier column 701 is an identifier that uniquely defines the analysis environment. Since the identifier of the analysis environment is assigned to each malware analysis system 104, the number of identifiers is the number of malware analysis systems 104.

環境情報欄702は、解析環境識別子欄701で一意に識別される解析環境それぞれに関する情報である。環境情報欄702に含まれる情報は、解析環境の「Platform」に関する情報(物理マシンか仮想マシンか等)、「OS」に関する情報(メジャーバージョン、サービスパック等)、「App」(アプリケーション)に関する情報(アプリケーション名、バージョン等)、どのような「通信環境」かに関する情報(外部接続なし、直接外部接続可能、プロキシサーバ経由で外部接続可能、外部接続をエミュレートする擬似環境等)、OSの「パッチ」に関する情報(特定のパッチが当たっているか等)、OSやアプリケーションの「設定」に関する情報(特定の設定がなされているか等)、「ファイル」に関する情報(特定のファイルが解析環境内に存在しているか等)といった情報が含まれる。   The environment information column 702 is information regarding each analysis environment uniquely identified in the analysis environment identifier column 701. Information included in the environment information column 702 includes information related to “Platform” of the analysis environment (physical machine or virtual machine, etc.), information related to “OS” (major version, service pack, etc.), and information related to “App” (application). (Application name, version, etc.), information about what “communication environment” (no external connection, direct external connection possible, external connection possible via proxy server, simulated environment emulating external connection, etc.), “ Information about “patches” (whether a specific patch has been applied, etc.), information about “settings” of the OS and applications (whether specific settings have been made, etc.), information about “files” (specific files exist in the analysis environment) Information, etc.).

環境情報欄702には、各解析環境に環境情報欄702を構成する解析環境のプラットフォームに関する情報の有無について、有の場合に「1」、無の場合に「0」が格納される。具体的には、図7に示すように、解析環境識別子が「A」の「Platform」が物理環境の場合には「物理」の列に「1」が設定され、「仮想」の列に「0」が設定される。また、解析環境識別子が「A」に搭載された「OS」が「OS A」である場合には、「OS A」の列に「1」が、それ以外のOSの列に「0」が設定される。なお、解析環境情報DB304の情報は事前に設定されていてもよい。   In the environment information column 702, “1” is stored when there is information regarding the platform of the analysis environment configuring the environment information column 702 in each analysis environment, and “0” is stored when there is no information. Specifically, as shown in FIG. 7, when the “Platform” with the analysis environment identifier “A” is a physical environment, “1” is set in the “Physical” column, and “ “0” is set. Further, when the “OS” installed in the analysis environment identifier “A” is “OS A”, “1” is displayed in the “OS A” column, and “0” is displayed in the other OS columns. Is set. Note that the information in the analysis environment information DB 304 may be set in advance.

図7の例では、解析環境情報DB304は「0」と「1」の情報を格納した表となっているが、そのように構成することに限定するものではなく、例えば、解析環境情報としてOSやアプリケーションの情報を文字列で保持しておき、環境情報生成部303において0と1の表に変換する、といった構成としていてもよい。   In the example of FIG. 7, the analysis environment information DB 304 is a table storing information of “0” and “1”. However, the configuration is not limited to such a configuration. Alternatively, the configuration may be such that information on the application is stored as a character string and converted into a table of 0 and 1 in the environment information generation unit 303.

図8は、動作環境推定処理部305の処理の例を示すフローチャートである。動作環境推定処理部305は、動作環境推定用解析環境情報と、複数のマルウェア解析システム104すなわち解析環境でマルウェアが動作したかの稼動判定結果との関連に基づき、マルウェアの動作する環境を絞り込み、推定する。   FIG. 8 is a flowchart illustrating an example of processing of the operating environment estimation processing unit 305. The operation environment estimation processing unit 305 narrows down the environment in which the malware operates based on the relationship between the analysis environment information for operation environment estimation and the operation determination result indicating whether the malware has operated in the plurality of malware analysis systems 104, that is, the analysis environment, presume.

まず、動作環境推定処理部305はステップS801で、環境情報生成部303から出力された動作環境推定用解析環境情報と、複数の環境におけるマルウェアの稼動判定結果とを取得する。ステップS802で処理モジュールDB306から全ての処理モジュールを取得する。   First, in step S801, the operation environment estimation processing unit 305 acquires the operation environment estimation analysis environment information output from the environment information generation unit 303 and the operation determination result of malware in a plurality of environments. In step S802, all processing modules are acquired from the processing module DB 306.

動作環境推定処理部305はステップS803で、全ての処理モジュールで処理済みかどうかの判定を行い、全ての処理モジュールで処理済みと判定しない場合にはステップS804に進み、未処理の処理モジュールを一つ取得して対象処理モジュールに設定する。   In step S803, the operating environment estimation processing unit 305 determines whether all the processing modules have been processed. If it is not determined that all the processing modules have been processed, the process proceeds to step S804. Are obtained and set in the target processing module.

動作環境推定処理部305はステップS805で、ステップS801で取得した動作環境推定用解析環境情報と稼動判定結果を、対象処理モジュール内の処理ロジックを用いて処理し、処理結果を得る。ステップS806にて、得られた処理結果が対象処理モジュール内の終了条件を満たすかどうかの判定を行う。終了条件を満たすと判定した場合にはステップS807に進み、得られた処理結果(推定結果)を対象処理モジュールの出力として出力し、対象処理モジュールを処理済と設定し、ステップS803に戻る。   In step S805, the operating environment estimation processing unit 305 processes the operating environment estimation analysis environment information and the operation determination result acquired in step S801 using processing logic in the target processing module, and obtains a processing result. In step S806, it is determined whether the obtained processing result satisfies an end condition in the target processing module. If it is determined that the end condition is satisfied, the process proceeds to step S807, the obtained processing result (estimation result) is output as the output of the target processing module, the target processing module is set as processed, and the process returns to step S803.

動作環境推定処理部305は、ステップS806の判定の結果、終了条件を満たしていないと判定された場合にはステップS808に進み、対象処理モジュール内の条件未達時処理を実施し、ステップS805に戻り、再度処理モジュール内の処理ロジックによる処理を実施する。ステップS803で全ての分析モジュールで処理済であると判定した場合、ステップS809に進み、処理モジュールで得られた動作環境推定結果をマルウェア動作環境履歴DB308に追加するとともに、ステップS810で動作環境推定結果を出力して終了する。   If it is determined that the end condition is not satisfied as a result of the determination in step S806, the operating environment estimation processing unit 305 proceeds to step S808, performs the process when the condition is not reached in the target processing module, and proceeds to step S805. Returning, the processing by the processing logic in the processing module is performed again. If it is determined in step S803 that all the analysis modules have been processed, the process advances to step S809 to add the operation environment estimation result obtained by the processing module to the malware operation environment history DB 308, and in step S810, the operation environment estimation result. And exit.

図9は、処理モジュールDB306の例を示す図である。処理モジュールDB306は、モジュール識別子欄901、処理ロジック欄902、終了条件欄903、条件未達時処理欄904から構成される。モジュール識別子欄901は処理モジュールを一意に識別する識別子である。処理ロジック902欄は、識別子で識別される処理モジュールで行う動作環境推定処理の内容である。   FIG. 9 is a diagram illustrating an example of the processing module DB 306. The processing module DB 306 includes a module identifier column 901, a processing logic column 902, an end condition column 903, and a condition unachieved processing column 904. A module identifier column 901 is an identifier for uniquely identifying a processing module. The processing logic 902 column is the content of the operating environment estimation processing performed by the processing module identified by the identifier.

終了条件欄903は、識別子で識別される処理モジュールによる動作環境推定処理の終了条件を示す情報である。条件未達時処理欄904は、識別子で識別される処理モジュールによる動作環境推定処理において、終了条件欄903の終了条件を満たさなかった場合に行う処理を示している。終了条件を満たさない場合には条件未達時処理欄904に示される処理を行い、処理ロジック902欄に示される処理が再度実施される。   The end condition column 903 is information indicating the end condition of the operating environment estimation process by the processing module identified by the identifier. The condition unachieved processing column 904 indicates processing performed when the end condition in the end condition column 903 is not satisfied in the operation environment estimation processing by the processing module identified by the identifier. If the end condition is not satisfied, the process shown in the condition unachieved processing column 904 is performed, and the process shown in the processing logic 902 column is performed again.

なお、図9の例は説明のために、各欄の情報を文章で表現したが、各文章の内容を表す特定のコードであってもよく、動作環境推定処理部305の実行可能なプログラムやマクロ等であってもよい。処理モジュールDB306の情報は事前に設定されてもよい。   In the example of FIG. 9, the information in each column is expressed by text for explanation. However, a specific code indicating the content of each text may be used, and the executable program of the operating environment estimation processing unit 305 It may be a macro or the like. Information in the processing module DB 306 may be set in advance.

図10は、出力処理部307による表示画面の例を示す図である。図10は、あるマルウェアの動作環境推定結果の表示例であり、表示対象のマルウェアの動作環境推定結果をマルウェア動作環境履歴DB308から取得して表示する、あるいは動作環境推定処理部305の出力を表示する。マルウェアを特定する情報は、マルウェアを識別する何らかの識別情報でもよいし、図11を用いて説明するアンチウイルスソフトスキャン結果で特定されたマルウェアの名称等でもよい。   FIG. 10 is a diagram illustrating an example of a display screen by the output processing unit 307. FIG. 10 is a display example of the operating environment estimation result of a certain malware. The operating environment estimation result of the malware to be displayed is acquired from the malware operating environment history DB 308 and displayed, or the output of the operating environment estimation processing unit 305 is displayed. To do. The information for identifying the malware may be some identification information for identifying the malware, or the name of the malware identified by the anti-virus software scan result described with reference to FIG.

表示1001はマルウェアの動作環境推定結果に含まれる動作環境情報であり、表示1002は推定された動作環境条件を見たす環境が組織内に存在するかどうかを確認するための外部システムへのリンクである。表示1003は詳細な動作環境推定結果であり、動作環境推定処理を行った処理モジュールおよびその処理の結果得られた情報を表示する。動作環境情報や動作環境推定結果は、図11を用いて説明する推定処理結果や動作環境であってもよい。   A display 1001 is operation environment information included in the operation environment estimation result of malware, and a display 1002 is a link to an external system for confirming whether an environment that satisfies the estimated operation environment condition exists in the organization. It is. A display 1003 is a detailed operation environment estimation result, and displays a processing module that has performed the operation environment estimation processing and information obtained as a result of the processing. The operating environment information and the operating environment estimation result may be an estimation processing result and an operating environment described with reference to FIG.

図11は、マルウェア動作環境履歴DB308の例を示す図である。マルウェア動作環境履歴DB308は、マルウェア識別子欄1101、ハッシュ値欄1102、マルウェア情報欄1103、推定処理結果欄1104、動作環境欄1105とから構成される。マルウェア識別子欄1101は、マルウェア動作環境推定装置101で動作環境推定の対象としたマルウェアを一意に識別する識別子である。   FIG. 11 is a diagram illustrating an example of the malware operating environment history DB 308. The malware operating environment history DB 308 includes a malware identifier column 1101, a hash value column 1102, a malware information column 1103, an estimation processing result column 1104, and an operating environment column 1105. The malware identifier column 1101 is an identifier for uniquely identifying malware targeted for the operation environment estimation by the malware operation environment estimation apparatus 101.

ハッシュ値欄1102は、マルウェア識別子1101で識別されるマルウェアのファイルを暗号学的ハッシュ関数の入力として得られる出力の値である。ここで、暗号学的ハッシュ関数はMD5やSHA1、SHA256等であるが、ハッシュ値欄1102の情報はこれらの暗号学的ハッシュ関数に限定されるものではない。   The hash value column 1102 is an output value obtained from the malware file identified by the malware identifier 1101 as an input of the cryptographic hash function. Here, the cryptographic hash function is MD5, SHA1, SHA256, or the like, but the information in the hash value column 1102 is not limited to these cryptographic hash functions.

マルウェア情報欄1103は、マルウェア識別子欄1101で識別されるマルウェアに関する情報である。マルウェア情報欄1103に含まれる情報は、例えば、マルウェアのファイル名、ファイルサイズ、アンチウイルスソフトでのスキャン結果である。アンチウイルスソフトのスキャン結果にマルウェアの名称が含まれてもよい。マルウェア情報1103の情報は、これらの情報に限定されるものではなく、他にも、マルウェア本体から抽出した文字列情報やマルウェアを特定のツールに入力した結果等を含んでいてもよい。   The malware information column 1103 is information regarding the malware identified in the malware identifier column 1101. The information included in the malware information column 1103 is, for example, a malware file name, a file size, and a scan result with anti-virus software. The name of the malware may be included in the scan result of the anti-virus software. The information of the malware information 1103 is not limited to these pieces of information, and may include character string information extracted from the malware main body, results of inputting the malware into a specific tool, and the like.

推定処理結果欄1104および動作環境欄1105は、マルウェア動作環境推定装置101においてマルウェア識別子1101で識別されるマルウェアの動作環境を推定して得られた動作環境を保持するものである。動作環境欄1105の情報は、過去に動作環境の推定を行った結果に限られるものではなく、マルウェア識別子1101で識別されるマルウェアの詳細な解析や外部からの情報提供により判明した動作環境情報がさらに格納されもよい。   The estimation process result column 1104 and the operation environment column 1105 hold the operation environment obtained by estimating the malware operation environment identified by the malware identifier 1101 in the malware operation environment estimation device 101. The information in the operating environment column 1105 is not limited to the results of estimating the operating environment in the past, but the operating environment information found by detailed analysis of the malware identified by the malware identifier 1101 and external information provision Further, it may be stored.

以上が、マルウェア動作環境推定装置101の動作である。上述した動作はあくまで一例であり、本発明の実施形態を限定するものではない。   The above is the operation of the malware operation environment estimation apparatus 101. The above-described operation is merely an example, and does not limit the embodiment of the present invention.

マルウェア動作環境推定装置101の構成の例は図3に示した通りであるが、構成はこれに限ったものではなく、環境要素抽出部301、環境要素抽出ロジックDB302、環境要素生成部303、解析環境情報DB304、動作環境推定処理部305、処理モジュールDB306、出力処理部307、マルウェア動作環境履歴DB308がそれぞれ別の装置上で動作し、それぞれの部、DB間がネットワークで接続されるようなネットワークシステムとして構成されていてもよく、また、それらの部、DBのうちの複数が1台の装置上で動作するような構成となっていてもよい。   An example of the configuration of the malware operating environment estimation apparatus 101 is as shown in FIG. 3, but the configuration is not limited to this, and the environment element extraction unit 301, environment element extraction logic DB 302, environment element generation unit 303, analysis A network in which the environment information DB 304, the operation environment estimation processing unit 305, the processing module DB 306, the output processing unit 307, and the malware operation environment history DB 308 operate on different devices, and the units and DBs are connected by a network. It may be configured as a system, or may be configured such that a plurality of those units and DBs operate on one apparatus.

以上で説明したように、マルウェアの動作環境を推定することができる。これにより、マルウェア対策するコンピュータを特定して、効率よく対策することが可能になる。   As described above, the operating environment of malware can be estimated. As a result, it is possible to identify a computer for anti-malware and efficiently take measures.

また、マルウェアの動的環境を構成する要素は、プラットフォームやOS、アプリケーション、パッチ、設定、ファイルの有無等多岐にわたり、OSやアプリケーションのマイナーバージョン、数あるパッチの有無や設定項目の値による変化を細かく表現すると、要素数が非常に膨大な数になる。   In addition, the elements that make up the dynamic environment of malware vary widely, including the presence of platforms, OSs, applications, patches, settings, and files, and changes depending on the OS and application minor versions, the presence of numerous patches, and the values of setting items. When expressed in detail, the number of elements becomes very large.

これらの要素の中にはマルウェアの動作に無関係の要素も数多くあり、統計処理等によりマルウェアの動作要因となった要素を特定しようとしても無関係な要素がノイズとなって正しく特定できない場合がある。また、要素数が多い場合分析処理の計算量が多くなってしまうという問題がある。   Among these elements, there are many elements that are unrelated to the operation of the malware. Even if an attempt is made to identify an element that has caused the malware to operate by statistical processing or the like, the unrelated element may become noise and cannot be correctly identified. In addition, there is a problem that when the number of elements is large, the amount of calculation for analysis processing increases.

これに対して、環境要素抽出ロジックDB302の条件欄502にマッチする追加要素欄503の情報に解析環境情報DB304の環境情報欄702の要素を絞ることができ、優先度に基づいて動作環境推定用解析環境情報の列を絞ることができるため、計算量を削減することが可能になる。   On the other hand, the elements of the environment information column 702 of the analysis environment information DB 304 can be narrowed down to the information of the additional element column 503 that matches the condition column 502 of the environment element extraction logic DB 302. Since the analysis environment information column can be narrowed down, the amount of calculation can be reduced.

実施例1のマルウェア動作環境推定装置101では、マルウェアの動作環境の推定結果を、マルウェア動作環境履歴DB308に記録し、出力処理部307で表示する際に用いている。この推定結果の履歴情報をフィードバックすることにより漏れのない推定を可能にするため、実施例2では、環境要素抽出部301からマルウェア動作環境履歴DB308にアクセス可能とし(図示省略)、環境要素抽出部301の処理フローを変更して、マルウェア動作環境履歴DB308の情報を使うようにする。   In the malware operating environment estimation apparatus 101 according to the first embodiment, the malware operating environment estimation result is recorded in the malware operating environment history DB 308 and used when the output processing unit 307 displays the result. In order to enable estimation without omission by feeding back the history information of the estimation result, in the second embodiment, the environment element extraction unit 301 can access the malware operation environment history DB 308 (not shown), and the environment element extraction unit The processing flow 301 is changed so that the information in the malware operating environment history DB 308 is used.

図12は、動作環境履歴情報を取得する環境要素抽出部301の処理の例を示すフローチャートである。図12では、図4と共通する処理のステップS402からステップS411については同じ符号を付けて、その説明を省略する。まず、環境要素抽出部301はステップS1201で、マルウェアの解析レポート群および対象マルウェア情報を取得する。ここで、対象マルウェアの情報は解析レポートに含まれる情報であってもよいし、マルウェア解析システム104にて解析されたマルウェアの情報を他から取得してもよい。   FIG. 12 is a flowchart illustrating an example of processing of the environment element extraction unit 301 that acquires operating environment history information. In FIG. 12, the same reference numerals are assigned to steps S402 to S411 of the process common to FIG. 4, and the description thereof is omitted. First, in step S1201, the environment element extraction unit 301 acquires a malware analysis report group and target malware information. Here, the information on the target malware may be information included in the analysis report, or information on the malware analyzed by the malware analysis system 104 may be obtained from others.

環境要素抽出部301はステップS402で、全ての解析レポートが処理済みであると判定した場合にステップS1202に進み、マルウェア動作環境履歴DB308からマルウェアの動作環境履歴情報を取得する。ステップS1203において、ステップS1201で取得した対象マルウェア情報と、ステップS1202で取得したマルウェアの動作環境履歴情報に含まれる各履歴のマルウェア情報(マルウェア情報欄1103の情報)との類似判定を行い、対象マルウェア情報に類似したマルウェア情報を持った履歴が存在するかどうか判定する。   If it is determined in step S402 that all analysis reports have been processed, the environment element extraction unit 301 proceeds to step S1202 and acquires malware operation environment history information from the malware operation environment history DB 308. In step S1203, similarity determination is performed between the target malware information acquired in step S1201 and the malware information (information in the malware information column 1103) of each history included in the operation environment history information of the malware acquired in step S1202. Determine if there is a history with malware information similar to the information.

環境要素抽出部301は、履歴が存在すると判定した場合にはステップS1204に進み、環境要素抽出部301の出力である抽出要素に、類似すると判定されたマルウェア情報を含む履歴の動作環境(動作環境欄1105の情報)を追加してステップS411に進む。ステップS1203において類似する履歴が存在していないと判定した場合には、そのままステップS411に進む。   If it is determined that the history exists, the environment element extraction unit 301 proceeds to step S1204, and the history operation environment (operation environment including the malware information determined to be similar to the extraction element output from the environment element extraction unit 301). Information in the column 1105) is added, and the process proceeds to step S411. If it is determined in step S1203 that there is no similar history, the process proceeds to step S411.

なお、ステップS1203における類似判定は、例えば、ファイル名が一致しているかもしくは似たファイル名になっているかどうかで判定してもよいし、ファイルサイズが一致しているかもしくは近いファイルサイズであるかどうかで判定してもよいし、アンチウイルスソフトスキャン結果が似た文字列になっているかどうかで判定してもよい。ただし、ステップS1203における類似判定はこれらに限定されるものではない。   Note that the similarity determination in step S1203 may be performed based on, for example, whether the file names match or have similar file names, and whether the file sizes match or are close to each other. It may be determined by whether or not, and whether or not the anti-virus software scan result is a similar character string. However, the similarity determination in step S1203 is not limited to these.

また、過去の履歴から類似するマルウェアの動作環境情報を取得できた場合、すなわちステップS1203の判定がYesの場合、ステップS402からステップS410で生成した抽出要素を破棄し、環境要素抽出部301の出力として、履歴から取得した動作環境のみを抽出要素として出力するようにしてもよい。   If similar operating environment information of malware can be obtained from the past history, that is, if the determination in step S1203 is Yes, the extraction element generated in steps S402 to S410 is discarded, and the output of the environment element extraction unit 301 is output. As an alternative, only the operating environment acquired from the history may be output as the extraction element.

以上で説明したように、過去のマルウェア動作環境推定結果、もしくは外部から得られたマルウェアの動作環境情報を有効に活用した、より精度の高いマルウェアの動作環境推定が実施でき、より効率的なマルウェアへの対策を実現できる。   As explained above, more efficient malware can be used to estimate the operating environment of the malware with higher accuracy by effectively using the past malware operating environment estimation results or the malware operating environment information obtained from the outside. Can be implemented.

101 マルウェア動作環境推定装置
301 環境要素抽出部
302 環境要素抽出ロジックDB
303 環境情報生成部
304 解析環境情報DB
305 動作環境推定処理部
306 処理モジュールDB
307 出力処理部
308 マルウェア動作環境履歴DB
101 Malware Operating Environment Estimation Device 301 Environmental Element Extraction Unit 302 Environmental Element Extraction Logic DB
303 Environment information generation unit 304 Analysis environment information DB
305 Operating environment estimation processing unit 306 Processing module DB
307 Output processing unit 308 Malware operating environment history DB

Claims (15)

抽出部と、生成部と、推定部を有する装置による、マルウェアの動作環境を推定するマルウェア動作環境推定方法であって、
前記抽出部により複数の解析システムのそれぞれから前記マルウェアの挙動に関する情報を取得して、前記取得した情報に関連する動作環境の要素を抽出し、
前記生成部により前記複数の解析システムの全てに対して、前記抽出した動作環境の要素の組み合わせを生成し、
前期推定部により前記複数の解析システムの全てに対して、前記マルウェアの稼動状況の情報を取得し、前記動作環境の要素の組み合わせの1つを前記複数の解析システムのそれぞれが含むか否かの情報と、前記複数の解析システムのそれぞれで前記マルウェアが稼働したか否かの情報とに基づいて、前記マルウェアの動作環境を推定すること
を特徴とするマルウェア動作環境推定方法。
A malware operation environment estimation method for estimating an operation environment of malware by an apparatus having an extraction unit, a generation unit, and an estimation unit ,
Obtaining information on the behavior of the malware from each of a plurality of analysis systems by the extraction unit, and extracting elements of the operating environment related to the obtained information,
Generate a combination of elements of the extracted operating environment for all of the plurality of analysis systems by the generation unit ,
Whether or not each of the plurality of analysis systems includes one of the combinations of elements of the operation environment, by acquiring information on the operation status of the malware for all of the plurality of analysis systems by the first-term estimation unit A malware operating environment estimation method that estimates the operating environment of the malware based on information and information on whether or not the malware has been operated in each of the plurality of analysis systems.
請求項1に記載のマルウェア動作環境推定方法であって、
前記抽出部により
前記マルウェアの挙動に関する情報と前記動作環境の要素とを対応付けて記憶された情報から前記動作環境の要素を抽出すること
を特徴とするマルウェア動作環境推定方法。
The malware operating environment estimation method according to claim 1,
By the extraction unit ,
A method for estimating a malware operating environment, comprising: extracting an element of the operating environment from information stored by associating information related to the behavior of the malware and an element of the operating environment.
請求項2に記載のマルウェア動作環境推定方法であって、
前記生成部により
前記抽出した動作環境の要素の中の第1の要素または前記抽出した動作環境の要素の中の第2の要素のいずれかを前記複数の解析システムが含むか否かの情報、あるいは前記第1の要素と前記第2の要素の両方を前記複数の解析システムが含むか否かの情報を生成することにより、前記抽出した動作環境の要素の組み合わせを生成すること
を特徴とするマルウェア動作環境推定方法。
The malware operating environment estimation method according to claim 2,
By the generation unit ,
Information on whether or not the plurality of analysis systems include either the first element in the extracted operating environment element or the second element in the extracted operating environment element, or the first A malware operating environment estimation characterized in that a combination of the extracted operating environment elements is generated by generating information as to whether or not the plurality of analysis systems include both of the second element and the second element Method.
請求項3に記載のマルウェア動作環境推定方法であって、
前記推定部により
1つ以上の推定により1つ以上の推定結果を出力すること
を特徴とするマルウェア動作環境推定方法。
The malware operating environment estimation method according to claim 3,
By the estimation unit ,
A malware operating environment estimation method, wherein one or more estimation results are output by one or more estimations.
請求項4に記載のマルウェア動作環境推定方法であって、
前記推定部により
推定を実行し、終了条件を満たさないと判定すると条件未達時処理を実行して、前記終了条件を満たすまで推定を繰り返し、前記終了条件を満たすと推定結果を出力すること
を特徴とするマルウェア動作環境推定方法。
The malware operating environment estimation method according to claim 4,
By the estimation unit ,
Malware that performs estimation, executes a process when the condition is not met if it is determined that the termination condition is not satisfied, repeats estimation until the termination condition is satisfied, and outputs an estimation result when the termination condition is satisfied Operating environment estimation method.
マルウェアの動作環境を推定する装置であって、
複数の解析システムのそれぞれから前記マルウェアの挙動に関する情報を取得して、前記取得した情報に関連する動作環境の要素を抽出する抽出部と、
前記複数の解析システムの全てに対して、前記抽出した動作環境の要素の組み合わせを生成する生成部と、
前記複数の解析システムの全てに対して、前記マルウェアの稼動状況の情報を取得し、前記動作環境の要素の組み合わせの1つを前記複数の解析システムのそれぞれが含むか否かの情報と、前記複数の解析システムのそれぞれで前記マルウェアが稼働したか否かの情報とに基づいて、前記マルウェアの動作環境を推定する推定部と
を有することを特徴とするマルウェア動作環境推定装置。
A device for estimating the operating environment of malware,
An extraction unit that acquires information on the behavior of the malware from each of a plurality of analysis systems, and extracts elements of the operating environment related to the acquired information;
For all of the plurality of analysis systems, a generation unit that generates a combination of elements of the extracted operating environment;
For all of the plurality of analysis systems, obtain information on the operating status of the malware, information on whether each of the plurality of analysis systems includes one of the combinations of elements of the operating environment, and A malware operating environment estimation apparatus comprising: an estimation unit configured to estimate an operating environment of the malware based on information indicating whether or not the malware has been operated in each of a plurality of analysis systems.
請求項6に記載のマルウェア動作環境推定装置であって、 前記抽出部は、
前記マルウェアの挙動に関する情報と前記動作環境の要素とを対応付けて記憶された情報から前記動作環境の要素を抽出すること
を特徴とするマルウェア動作環境推定装置。
The malware operation environment estimation device according to claim 6, wherein the extraction unit includes:
A malware operating environment estimation device that extracts elements of the operating environment from information stored by associating information related to the behavior of the malware and elements of the operating environment.
請求項7に記載のマルウェア動作環境推定装置であって、
前記生成部は、
前記抽出した動作環境の要素の中の第1の要素または前記抽出した動作環境の要素の中の第2の要素のいずれかを前記複数の解析システムが含むか否かの情報、あるいは前記第1の要素と前記第2の要素の両方を前記複数の解析システムが含むか否かの情報を生成することにより、前記抽出した動作環境の要素の組み合わせを生成すること
を特徴とするマルウェア動作環境推定装置。
The malware operation environment estimation device according to claim 7,
The generator is
Information on whether or not the plurality of analysis systems include either the first element in the extracted operating environment element or the second element in the extracted operating environment element, or the first A malware operating environment estimation characterized in that a combination of the extracted operating environment elements is generated by generating information as to whether or not the plurality of analysis systems include both of the second element and the second element apparatus.
請求項8に記載のマルウェア動作環境推定装置であって、
前記推定部は、
1つ以上の推定により1つ以上の推定結果を出力すること
を特徴とするマルウェア動作環境推定装置。
The malware operation environment estimation device according to claim 8,
The estimation unit includes
A malware operating environment estimation device that outputs one or more estimation results by one or more estimations.
請求項9に記載のマルウェア動作環境推定装置であって、
前記推定部は、
推定を実行し、終了条件を満たさないと判定すると条件未達時処理を実行して、前記終了条件を満たすまで推定を繰り返し、前記終了条件を満たすと推定結果を出力すること
を特徴とするマルウェア動作環境推定装置。
The malware operation environment estimation device according to claim 9,
The estimation unit includes
Malware that performs estimation, executes a process when the condition is not met if it is determined that the termination condition is not satisfied, repeats estimation until the termination condition is satisfied, and outputs an estimation result when the termination condition is satisfied Operating environment estimation device.
複数の装置を含み、マルウェアの動作環境を推定するシステムであって、
前記複数の装置の中のいずれかの装置が、
複数の解析システムのそれぞれから前記マルウェアの挙動に関する情報を取得して、前記取得した情報に関連する動作環境の要素を抽出する抽出部を有し、
前記複数の装置の中のいずれかの装置が、
前記複数の解析システムの全てに対して、前記抽出した動作環境の要素の組み合わせを生成する生成部を有し、
前記複数の装置の中のいずれかの装置が、
前記複数の解析システムの全てに対して、前記マルウェアの稼動状況の情報を取得し、前記動作環境の要素の組み合わせの1つを前記複数の解析システムのそれぞれが含むか否かの情報と、前記複数の解析システムのそれぞれで前記マルウェアが稼働したか否かの情報とに基づいて、前記マルウェアの動作環境を推定する推定部を有すること
を特徴とするマルウェア動作環境推定システム。
A system that includes a plurality of devices and estimates the operating environment of malware,
One of the plurality of devices is
Obtaining information on the behavior of the malware from each of a plurality of analysis systems, and having an extraction unit that extracts elements of the operating environment related to the obtained information,
One of the plurality of devices is
A generator that generates a combination of elements of the extracted operating environment for all of the plurality of analysis systems;
One of the plurality of devices is
For all of the plurality of analysis systems, obtain information on the operating status of the malware, information on whether each of the plurality of analysis systems includes one of the combinations of elements of the operating environment, and A malware operating environment estimation system comprising an estimation unit configured to estimate an operating environment of the malware based on information indicating whether or not the malware has been operated in each of a plurality of analysis systems.
請求項11に記載のマルウェア動作環境推定システムであって、
前記抽出部は、
前記マルウェアの挙動に関する情報と前記動作環境の要素とを対応付けて記憶された情報から前記動作環境の要素を抽出すること
を特徴とするマルウェア動作環境推定システム。
The malware operating environment estimation system according to claim 11,
The extraction unit includes:
A malware operating environment estimation system that extracts elements of the operating environment from information stored by associating information related to the behavior of the malware and elements of the operating environment.
請求項12に記載のマルウェア動作環境推定システムであって、
前記生成部は、
前記抽出した動作環境の要素の中の第1の要素または前記抽出した動作環境の要素の中の第2の要素のいずれかを前記複数の解析システムが含むか否かの情報、あるいは前記第1の要素と前記第2の要素の両方を前記複数の解析システムが含むか否かの情報を生成することにより、前記抽出した動作環境の要素の組み合わせを生成することを特徴とするマルウェア動作環境推定システム。
The malware operating environment estimation system according to claim 12,
The generator is
Information on whether or not the plurality of analysis systems include either the first element in the extracted operating environment element or the second element in the extracted operating environment element, or the first A malware operating environment estimation characterized in that a combination of the extracted operating environment elements is generated by generating information as to whether or not the plurality of analysis systems include both of the second element and the second element system.
請求項13に記載のマルウェア動作環境推定システムであって、
前記推定部は、
1つ以上の推定により1つ以上の推定結果を出力すること
を特徴とするマルウェア動作環境推定システム。
The malware operation environment estimation system according to claim 13,
The estimation unit includes
A malware operating environment estimation system, wherein one or more estimation results are output by one or more estimations.
請求項14に記載のマルウェア動作環境推定システムであって、
前記推定部は、
推定を実行し、終了条件を満たさないと判定すると条件未達時処理を実行して、前記終了条件を満たすまで推定を繰り返し、前記終了条件を満たすと推定結果を出力すること
を特徴とするマルウェア動作環境推定システム。
The malware operation environment estimation system according to claim 14,
The estimation unit includes
Malware that performs estimation, executes a process when the condition is not met if it is determined that the termination condition is not satisfied, repeats estimation until the termination condition is satisfied, and outputs an estimation result when the termination condition is satisfied Operating environment estimation system.
JP2015152662A 2015-07-31 2015-07-31 Malware operating environment estimation method, apparatus and system thereof Expired - Fee Related JP6454617B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015152662A JP6454617B2 (en) 2015-07-31 2015-07-31 Malware operating environment estimation method, apparatus and system thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015152662A JP6454617B2 (en) 2015-07-31 2015-07-31 Malware operating environment estimation method, apparatus and system thereof

Publications (2)

Publication Number Publication Date
JP2017033286A JP2017033286A (en) 2017-02-09
JP6454617B2 true JP6454617B2 (en) 2019-01-16

Family

ID=57988855

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015152662A Expired - Fee Related JP6454617B2 (en) 2015-07-31 2015-07-31 Malware operating environment estimation method, apparatus and system thereof

Country Status (1)

Country Link
JP (1) JP6454617B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020246011A1 (en) * 2019-06-06 2020-12-10 日本電気株式会社 Rule generation device, rule generation method, and computer readable storge medium
WO2021240770A1 (en) * 2020-05-29 2021-12-02 Nec Corporation Knowledge generation apparatus, control method, and storage device
JPWO2022195737A1 (en) * 2021-03-16 2022-09-22

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5225942B2 (en) * 2009-07-01 2013-07-03 日本電信電話株式会社 Analysis system, analysis method, and analysis program

Also Published As

Publication number Publication date
JP2017033286A (en) 2017-02-09

Similar Documents

Publication Publication Date Title
US10936717B1 (en) Monitoring containers running on container host devices for detection of anomalies in current container behavior
US10121000B1 (en) System and method to detect premium attacks on electronic networks and electronic devices
US9928364B2 (en) Detecting malicious files
US10474826B2 (en) Methods and apparatuses for improved app security testing
US11089038B2 (en) Safe sharing of sensitive data
EP2610776B1 (en) Automated behavioural and static analysis using an instrumented sandbox and machine learning classification for mobile security
US11356467B2 (en) Log analysis device, log analysis method, and log analysis program
Ntantogian et al. Evaluating the privacy of Android mobile applications under forensic analysis
CN112567367A (en) Similarity-based method for clustering and accelerating multiple accident surveys
RU2573265C2 (en) Method of detecting false positive results of scanning files for malware
US20190354690A1 (en) Systems, devices and methods for application and privacy compliance monitoring and security threat analysis processing
JP6711000B2 (en) Information processing apparatus, virus detection method, and program
US10440050B1 (en) Identifying sensitive data on computer networks
JP6454617B2 (en) Malware operating environment estimation method, apparatus and system thereof
JP2013242633A (en) Tag application device and tag application method
CN111183620A (en) Intrusion investigation
CN110100423A (en) The generation using licence list for machine
JP6395986B2 (en) Key generation source identification device, key generation source identification method, and key generation source identification program
US20220237302A1 (en) Rule generation apparatus, rule generation method, and computer-readable recording medium
US10893090B2 (en) Monitoring a process on an IoT device
JP6018344B2 (en) Dynamic reading code analysis apparatus, dynamic reading code analysis method, and dynamic reading code analysis program
CN115552401A (en) Fast application detection method, device, equipment and storage medium
US10831883B1 (en) Preventing application installation using system-level messages
JP7424395B2 (en) Analytical systems, methods and programs
EP3799367B1 (en) Generation device, generation method, and generation program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180828

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180911

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181005

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181127

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181217

R150 Certificate of patent or registration of utility model

Ref document number: 6454617

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees