JP2012083849A - Malware detector, and method and program for the same - Google Patents

Malware detector, and method and program for the same Download PDF

Info

Publication number
JP2012083849A
JP2012083849A JP2010227656A JP2010227656A JP2012083849A JP 2012083849 A JP2012083849 A JP 2012083849A JP 2010227656 A JP2010227656 A JP 2010227656A JP 2010227656 A JP2010227656 A JP 2010227656A JP 2012083849 A JP2012083849 A JP 2012083849A
Authority
JP
Japan
Prior art keywords
false positive
malware
file
cluster
sample
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2010227656A
Other languages
Japanese (ja)
Inventor
Nobutaka Kawaguchi
信隆 川口
Kazuya Okochi
一弥 大河内
Tadashi Kaji
忠司 鍛
Ryunoshin Kawaguchi
龍之進 川口
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 JP2010227656A priority Critical patent/JP2012083849A/en
Publication of JP2012083849A publication Critical patent/JP2012083849A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To reduce an arithmetic load and a network load on a malware analysis system.SOLUTION: A malware detector includes: a cluster construction unit for clustering false positive files found in a computer such as a user PC and having a possibility of being malware to construct a cluster including the false positive files; a transmission target sample selection unit for selecting, as a sample to be transmitted to a malware analysis system, a false positive file in the cluster including the false positive files; a sample transmission unit for transmitting the selected sample to the malware analysis system; and an analytical report analysis unit for analyzing an analytical report corresponding to the transmitted sample and obtained from the malware analysis system to classify the false positive files included in the cluster into "malware" and "non-malware".

Description

本発明は、マルウェア検知技術に関し、特に、ユーザPCからマルウェア解析システムへ検体を送信する技術に関する。。   The present invention relates to malware detection technology, and more particularly to technology for transmitting a specimen from a user PC to a malware analysis system. .

マルウェアは、コンピュータプログラムの一種であり、コンピュータ端末内で実行されるとファイルの削除や情報漏洩といった、ユーザにとって有害な活動を行うものである。   Malware is a type of computer program that, when executed in a computer terminal, performs activities harmful to the user, such as file deletion and information leakage.

これまでのマルウェア対策は、ユーザPC内にインストールしたアンチウイルスソフトが、既知のマルウェアの特徴情報(シグネチャ)を用いてマルウェアを検知し、駆除するのが一般的であったが、日々数千から数万の新種のマルウェアが出現する今日では、特徴情報の更新が間に合わず、検知率が低下してきている。   In the past, anti-malware measures were generally performed by anti-virus software installed in the user's PC using the characteristic information (signatures) of known malware to remove malware. Today, when tens of thousands of new types of malware appear, feature information cannot be updated in time, and the detection rate is decreasing.

この問題を解決するために、マルウェアの挙動を分析して、マルウェアであるかどうかを判定する、マルウェア解析システムの研究が進んでいる。マルウェア解析システムを用いたマルウェア検知では、先ずユーザPC内にある擬陽性ファイル発見プログラムが、ユーザPC内を検査して、マルウェアである可能性があるファイル(擬陽性ファイル)を抽出する。次に、擬陽性ファイルを検体として、ユーザPCからマルウェア解析システムに送信する。検体を受信したマルウェア解析システムは分析を行い、検体がマルウェアであるかどうかの判定結果および検体の挙動が記された、マルウェア解析レポートをユーザPCに返答する。ユーザPCでは、マルウェアであると判定されたファイルを駆除する。しかし、大量の擬陽性ファイルがユーザPC上で発見された場合、多数の検体がマルウェア解析システムに送信されるため、マルウェア解析システムの演算負荷及びネットワーク負荷が高くなる問題がある。   In order to solve this problem, research on malware analysis systems that analyze malware behavior and determine whether it is malware or not is in progress. In malware detection using a malware analysis system, a false positive file discovery program in a user PC first inspects the user PC and extracts a file (false positive file) that may be malware. Next, a false positive file is sent as a sample from the user PC to the malware analysis system. The malware analysis system that has received the sample performs analysis, and returns a malware analysis report in which the determination result of whether the sample is malware and the behavior of the sample are recorded to the user PC. The user PC disinfects the file determined to be malware. However, when a large number of false positive files are found on the user PC, a large number of specimens are transmitted to the malware analysis system, which causes a problem that the computation load and the network load of the malware analysis system increase.

このため、マルウェア解析システムの負荷を軽減する試みがなされている。非特許文献1には、マルウェア解析システムにおいて、既に解析済みの検体のハッシュ値及びその解析レポートのデータベースを保持し、ユーザPCから新たに受信した検体のハッシュ値がデータベースに含まれない場合に限って新たに解析を行うことで、解析システムの演算負荷を低減する技術が開示されている。   For this reason, attempts have been made to reduce the load on the malware analysis system. Non-Patent Document 1 holds a hash value of a sample already analyzed and a database of the analysis report in the malware analysis system, and only when the hash value of a sample newly received from the user PC is not included in the database. A technique for reducing the calculation load of the analysis system by performing a new analysis is disclosed.

“Improving the Efficiency of Dynamic Malware Analysis”, Proceedings of ACM 25th Symposium on Applied Computing, 2010.“Improving the Efficiency of Dynamic Malware Analysis”, Proceedings of ACM 25th Symposium on Applied Computing, 2010.

しかしながら、非特許文献1に開示された技術では、全ての擬陽性ファイルが検体として、ユーザPCからマルウェア解析システムに送信されるため、マルウェア解析システムのネットワーク負荷は改善されない。また、マルウェア解析システムは、受信した検体が既に解析済みのものであるかを確認するために、検体のハッシュ値の演算をするなどの処理を行うため、これに伴う負荷が発生する。   However, in the technique disclosed in Non-Patent Document 1, since all false positive files are transmitted as samples from the user PC to the malware analysis system, the network load of the malware analysis system is not improved. In addition, since the malware analysis system performs processing such as calculation of the hash value of the sample in order to confirm whether the received sample has already been analyzed, a load associated with this is generated.

開示するマルウェア検知装置、検知方法、及びそのプログラムは、次のような構成を有する。マルウェア検知装置は、ユーザPCのような計算機内で発見された、マルウェアである可能性がある擬陽性ファイルをクラスタリングし、擬陽性ファイルを含むクラスタを構築するクラスタ構築部、擬陽性ファイルを含むクラスタから、マルウェア解析システムに送信する1つの検体として擬陽性ファイルを選別する送信検体選択部、選別した検体をマルウェア解析システムへ送信する検体送信部、及び、送信した検体に対応して、マルウェア解析システムから取得した解析レポートを分析して、クラスタに含まれる擬陽性ファイルを、「マルウェア」及び「非マルウェア」のいずれかに分類する解析レポート分析部を有する。マルウェア検知方法及びそのプログラムは、マルウェア検知装置による手順を実行し、または、マルウェア検知装置の機能をプログラムとして計算機が実行する。   The disclosed malware detection device, detection method, and program thereof have the following configurations. The malware detection device clusters a false positive file that may be malware, which is found in a computer such as a user PC, and constructs a cluster including a false positive file. A transmission sample selection unit that selects a false positive file as one sample to be transmitted to the analysis system, a sample transmission unit that transmits the selected sample to the malware analysis system, and an analysis acquired from the malware analysis system corresponding to the transmitted sample An analysis report analysis unit that analyzes the report and classifies false positive files included in the cluster into either “malware” or “non-malware”. The malware detection method and the program thereof execute a procedure by the malware detection device, or the computer executes the function of the malware detection device as a program.

さたに望ましいマルウェア検知装置の態様は、送信検体選択部は、擬陽性ファイルが生成された生成時刻が、クラスタに含まれる中で最も古い擬陽性ファイルを、検体として選別される擬陽性ファイルとする。   Furthermore, in a desirable aspect of the malware detection device, the transmission specimen selection unit sets the oldest false positive file that is included in the cluster as the generation time when the false positive file is generated as a false positive file selected as a specimen.

本発明によれば、ユーザPCからマルウェア解析システムへの検体の送信が、効率化される。   According to the present invention, the transmission of the specimen from the user PC to the malware analysis system is made efficient.

実施形態のシステムの構成を示す図である。It is a figure which shows the structure of the system of embodiment. ユーザPCの物理構成を示す図である。It is a figure which shows the physical structure of user PC. ユーザPCの論理構成を示す図である。It is a figure which shows the logical structure of user PC. クラスタ構築部の論理構成を示す図である。It is a figure which shows the logical structure of a cluster construction part. 擬陽性ファイルDBの構成例を示す図である。It is a figure which shows the structural example of false positive file DB. 解析レポートDBの構成例を示す図である。It is a figure which shows the structural example of analysis report DB. プロセス実行DBの構成例を示す図である。It is a figure which shows the structural example of process execution DB. 解析レポートの一例である。It is an example of an analysis report. 解析レポートの一例である。It is an example of an analysis report. 擬陽性ファイル検出部の処理フローチャートである。It is a process flowchart of a false positive file detection part. クラスタ構築部の統括部の処理フローチャートである。It is a process flowchart of the control part of a cluster construction part. クラスタモジュールAの処理フローチャートである。It is a processing flowchart of cluster module A. クラスタモジュールBの処理フローチャートである。It is a processing flowchart of cluster module B. 送信検体選択部の処理フローチャートである。It is a process flowchart of a transmission sample selection part. 検体送信部の処理フローチャートである。It is a process flowchart of a sample transmission part. レポート受信部の処理フローチャートである。It is a process flowchart of a report receiving part. レポート分析部の処理フローチャートである。It is a process flowchart of a report analysis part. 擬陽性ファイルレコード判定処理のフローチャートである。It is a flowchart of a false positive file record determination process.

図1は、本実施形態のシステムの構成を示す図である。ユーザPC100はパーソナルコンピュータなどの計算機である。マルウェア解析システム200はパーソナルコンピュータやサーバのような計算機である。ユーザPC100とマルウェア解析システムはインターネットなどのネットワーク300を介して接続されている。   FIG. 1 is a diagram illustrating a configuration of a system according to the present embodiment. The user PC 100 is a computer such as a personal computer. The malware analysis system 200 is a computer such as a personal computer or a server. The user PC 100 and the malware analysis system are connected via a network 300 such as the Internet.

図2は、ユーザPC100の物理構成を示す図である。ユーザPC100は、ユーザPC本体110と入出力装置170から構成される計算機装置である。   FIG. 2 is a diagram illustrating a physical configuration of the user PC 100. The user PC 100 is a computer device that includes a user PC main body 110 and an input / output device 170.

ユーザPC本体110には、CPU120、メモリ130、インタフェース140、外部記憶装置150、及びこれらを接続するバス160を備えた計算機装置である。一般にパーソナルコンピュータなどと呼ばれる装置がこれに該当する。   The user PC main body 110 is a computer device including a CPU 120, a memory 130, an interface 140, an external storage device 150, and a bus 160 for connecting them. An apparatus generally called a personal computer corresponds to this.

CPU120は処理を実行するための演算装置である。メモリ130は、CPU120で実行する処理プログラムおよびプログラムが使用するデータを記憶する。   The CPU 120 is an arithmetic device for executing processing. The memory 130 stores a processing program executed by the CPU 120 and data used by the program.

メモリ130は、処理プログラムとしてマルウェア検出プログラム131を記憶している。そして、このマルウェア検出プログラムがCPU120によって実行されることによって、マルウェアを検出する。CPU120が実行する具体的な処理については後述する。   The memory 130 stores a malware detection program 131 as a processing program. And this malware detection program is run by CPU120, and a malware is detected. Specific processing executed by the CPU 120 will be described later.

インタフェース140は、ユーザPC100をネットワークと接続するための、LANカードなどの通信装置である。ユーザPC100はインタフェース140を通じてネットワーク300と接続されている。インタフェース140は、図中においてIFと記述することがある。   The interface 140 is a communication device such as a LAN card for connecting the user PC 100 to a network. The user PC 100 is connected to the network 300 through the interface 140. The interface 140 may be described as IF in the figure.

外部記憶装置150は、HDD(Hard Disk Drive)等から構成され、擬陽性ファイルDB151、解析レポートDB152、プロセス実行DB153を記憶する。これらのDBの具体的な内容については後述する。   The external storage device 150 is configured by an HDD (Hard Disk Drive) or the like, and stores a false positive file DB 151, an analysis report DB 152, and a process execution DB 153. Specific contents of these DBs will be described later.

入出力装置170は、ユーザPCに対してデータの入力・出力を行うための装置である。入出力装置の一例としては、キーボードやマウス、ディスプレイがある。   The input / output device 170 is a device for inputting / outputting data to / from the user PC. Examples of input / output devices include a keyboard, a mouse, and a display.

図3は、ユーザPC100の機能的な構成、および物理的な各装置との関係を示す図である。CPU120は、擬陽性ファイル検出部121、クラスタ構築部122、送信検体選択部123、検体送信部124、レポート受信部125、レポート分析部126の処理を含むマルウェア検出プログラム131を実行する。   FIG. 3 is a diagram illustrating a functional configuration of the user PC 100 and a relationship with each physical device. The CPU 120 executes a malware detection program 131 including processing of a false positive file detection unit 121, a cluster construction unit 122, a transmission sample selection unit 123, a sample transmission unit 124, a report reception unit 125, and a report analysis unit 126.

擬陽性ファイル検出部121は、外部記憶装置150内のファイルを検索して、マルウェアである可能性がある擬陽性ファイルを発見する。擬陽性ファイルを発見した場合、ファイルの情報を擬陽性ファイルDB151に登録する。   The false positive file detection unit 121 searches for a file in the external storage device 150 and finds a false positive file that may be malware. When a false positive file is found, the file information is registered in the false positive file DB 151.

クラスタ構築部122は、擬陽性ファイルDB151に含まれるレコードのうちファイル種類506(図5)が「未定」であるものを対象に、対象のレコードを複数のグループに分類するクラスタリングを行う。図4にクラスタ構築部124の論理的な構成を示す。クラスタ構築部122は、統括部401、クラスタモジュールA402、クラスタモジュールB403を含んでいる。クラスタモジュールA402、クラスタモジュールB403には、クラスタリングを行うためのプログラムが含まれている。これは、具体的には、擬陽性ファイルDB151に含まれている各レコードにクラスタID505を付与する機能である。クラスタモジュールA402とクラスタモジュールB403は、種別が異なり、実行するクラスタリングのアルゴリズムが異なる。本実施形態ではクラスタモジュールをAとBの2つ記述しているが、実際はクラスタモジュールを1つ以上含む任意の構成がありうる。統括部401はこれらのクラスタモジュールの中から一つを選択して実行するためのプログラムである。どのクラスタモジュールを選択するかはシステムの使用者が入出力装置170などを通じてマルウェア解析システム200に予め入力しておく。ここでは、クラスタモジュールA402は、ハッシュ値が同一である擬陽性ファイルを同一のクラスタに分類する。クラスタモジュールB403は、プロセスの親子関係に基づいてクラスタリングを行う。クラスタリングには、後述するプロセス実行DB153を用いる。   The cluster construction unit 122 performs clustering to classify the target records into a plurality of groups for the records included in the false positive file DB 151 whose file type 506 (FIG. 5) is “undecided”. FIG. 4 shows a logical configuration of the cluster construction unit 124. The cluster construction unit 122 includes a supervision unit 401, a cluster module A402, and a cluster module B403. The cluster module A 402 and the cluster module B 403 include a program for performing clustering. Specifically, this is a function of assigning a cluster ID 505 to each record included in the false positive file DB 151. The cluster module A 402 and the cluster module B 403 are different in type and different in the clustering algorithm to be executed. In the present embodiment, two cluster modules A and B are described, but there may actually be any configuration including one or more cluster modules. The supervising unit 401 is a program for selecting and executing one of these cluster modules. Which cluster module is selected is input in advance to the malware analysis system 200 by the system user through the input / output device 170 or the like. Here, the cluster module A 402 classifies false positive files having the same hash value into the same cluster. The cluster module B403 performs clustering based on the parent-child relationship of processes. For clustering, a process execution DB 153 described later is used.

図5は、擬陽性ファイルDB151の構成を示す図である。ID501は、各ファイルにユニークな値(識別子)である。ファイルパス502は、ファイルのルートディレクトリからのフルパスを示す文字列である。検出時刻503は、ID501によって特定されるファイルが擬陽性ファイルとして、ユーザPC100において検出された時刻である。生成時刻504は、ID501によって特定されるファイルがユーザPC100において生成された時刻である。クラスタID505はID501によって特定されるファイルが属するクラスタのID(識別子)である。同一のクラスタに属するファイルには同一のクラスタID505が付与されている。   FIG. 5 is a diagram showing the configuration of the false positive file DB 151. The ID 501 is a value (identifier) unique to each file. A file path 502 is a character string indicating a full path from the root directory of the file. The detection time 503 is the time when the file specified by the ID 501 is detected by the user PC 100 as a false positive file. The generation time 504 is the time when the file specified by the ID 501 is generated in the user PC 100. The cluster ID 505 is an ID (identifier) of the cluster to which the file specified by the ID 501 belongs. The same cluster ID 505 is assigned to files belonging to the same cluster.

図5の例では、ID501が1,2,3である擬陽性ファイルはクラスタID505が1であるクラスタに属し、ID501が4,5,6である擬陽性ファイルはクラスタID505が2であるクラスタに属し、ID501が7である擬陽性ファイルはクラスタID505が3であるクラスタに属し、ID501が8である擬陽性ファイルは、クラスタID505が4であるクラスタに属する。   In the example of FIG. 5, a false positive file whose ID 501 is 1, 2, 3 belongs to a cluster whose cluster ID 505 is 1, a false positive file whose ID 501 is 4, 5, 6 belongs to a cluster whose cluster ID 505 is 2, The false positive file whose ID 501 is 7 belongs to the cluster whose cluster ID 505 is 3, and the false positive file whose ID 501 is 8 belongs to the cluster whose cluster ID 505 is 4.

ファイル種類506は、ファイルの派生元―派生先関係を示す情報である。ここで、派生元―派生先関係とは以下のように定義する。あるファイルが他のファイルから派生して生成されたものであると確認されたとき、生成されたあるファイルを派生先ファイルと呼ぶ。そうでない他のファイルを派生元ファイルと呼ぶ。ファイルと他のファイルから派生したあるファイルの関係は木構造で表現することができるが、木構造のルートにあるファイルを派生元ファイル、それ以外のファイルは、ノードにあってもリーフにあっても、派生先ファイルと呼ぶ。   The file type 506 is information indicating the derivation source-derivation destination relationship of the file. Here, the derivation source-derivation destination relationship is defined as follows. When it is confirmed that a certain file is derived from another file, the generated file is called a derivation destination file. Other files that are not are called derivation source files. The relationship between a file and a file derived from another file can be expressed in a tree structure, but the file at the root of the tree structure is the source file, and the other files are in the leaf even if they are nodes. Is also called a derivation destination file.

図5の例では、ID501が1である擬陽性ファイルc:\a1.exeは派生元ファイルであり、ID502が2、3である擬陽性ファイルc:\a2.exe、c:\a3.exeは、c:\a1.exeから派生した派生先ファイルである。   In the example of FIG. 5, the false positive file c: \ a1.exe whose ID 501 is 1 is a derivation source file, and the false positive files c: \ a2.exe and c: \ a3.exe whose ID 502 is 2 and 3 are It is a derivation destination file derived from c: \ a1.exe.

ステータス507はID501によって特定されるファイルがマルウェアと判定されたかどうかを示すフラグである。ステータス507は、「マルウェア」「非マルウェア」「判定不能」「解析中」「送信待ち」「クラスタ未構築」などの状態を取りうる。   The status 507 is a flag indicating whether or not the file specified by the ID 501 is determined to be malware. The status 507 can take states such as “malware”, “non-malware”, “determination not possible”, “analyzing”, “waiting to send”, “cluster not built”.

クラスタリングが未だ行われていない擬陽性ファイルでは、クラスタIDが0、ステータス507が「クラスタ未構築」となる。図5の例では、ID501が9である擬陽性ファイルはクラスタリングが行われておらず、ファイル種類506が「未定」、ステータス507が「クラスタ未構築」となっている。   For a false positive file for which clustering has not yet been performed, the cluster ID is 0, and the status 507 is “cluster not constructed”. In the example of FIG. 5, the false positive file whose ID 501 is 9 is not clustered, the file type 506 is “undecided”, and the status 507 is “cluster not built”.

図3に戻って、送信検体選択部123は、生成時刻504に基づいて、クラスタリングされた擬陽性ファイルを、派生元ファイルと派生先ファイルに分類する。検体送信部124は、ファイル種類506が派生先ファイルである擬陽性ファイルを、マルウェア解析システム200に送信する。レポート受信部125は、マルウェア解析システム200からマルウェア解析レポートを受信して、解析レポートDB152に保存する。   Returning to FIG. 3, the transmission specimen selection unit 123 classifies the clustered false positive files into a derivation source file and a derivation destination file based on the generation time 504. The sample transmission unit 124 transmits a false positive file whose file type 506 is a derivation destination file to the malware analysis system 200. The report receiving unit 125 receives a malware analysis report from the malware analysis system 200 and stores it in the analysis report DB 152.

図6は、解析レポートDB152の構成を示す図である。レポートID601はマルウェア解析レポートにユニークな値(識別子)である。受付時刻602は、レポートID601によって特定されるレポートを受信した時刻である。コンテンツ603は、レポートID601によって特定されるレポートの中身を示す文字列データであり、その詳細については図8および図9を用いて説明する。ステータス604は、レポートID601によって特定されるレポートのステータスを示しており、「分析済み」「分析待ち」などの値を取りうる。   FIG. 6 is a diagram showing the configuration of the analysis report DB 152. The report ID 601 is a unique value (identifier) for the malware analysis report. The reception time 602 is the time when the report specified by the report ID 601 is received. The content 603 is character string data indicating the contents of the report specified by the report ID 601, and details thereof will be described with reference to FIGS. 8 and 9. The status 604 indicates the status of the report specified by the report ID 601 and can take values such as “analyzed” and “waiting for analysis”.

図8および図9は、解析レポートの一例であり、コンテンツ603に含まれる文字列データの例である。この例ではデータを見やすくするために適宜改行している。コンテンツ608に含まれるデータはXML形式で記述されている。<レポート>タグはレポート全体を包含するタグである。<レポート>の中には、<日時>タグ、<検体>タグ、<派生先ファイル>タグを含む。   FIG. 8 and FIG. 9 are examples of analysis reports and are examples of character string data included in the content 603. In this example, line feeds are added as necessary to make the data easier to see. Data included in the content 608 is described in the XML format. The <Report> tag is a tag that includes the entire report. <Report> includes <Date> tag, <Sample> tag, and <Derived file> tag.

<日時>タグは検体が取得された日付と時刻を含んでいる。
<検体>タグは、解析を行ったファイルについての情報を記述するタグである。マルウェア解析システム200に送信された派生元ファイルに関する解析結果は、<検体タグ>内に含まれる。<検体>タグは、その内部に<ファイル>タグと<判定>タグを含む。<ファイル>タグには、<検体>タグに含まれるファイルのパスとファイル名が含まれている。<判定>タグには、<ファイル>タグに記述されたファイルがマルウェアであったか否かを示す文字列が格納される。
The <date / time> tag includes the date and time when the sample was acquired.
The <sample> tag is a tag describing information about the analyzed file. The analysis result regarding the derivation source file transmitted to the malware analysis system 200 is included in <specimen tag>. The <sample> tag includes a <file> tag and a <determination> tag. The <file> tag includes the path and file name of the file included in the <sample> tag. The <determination> tag stores a character string indicating whether or not the file described in the <file> tag is malware.

<派生先>タグは、<検体>タグで示される検体のファイルから派生したファイルの情報が含まれている。派生先ファイルはその内部に<ハッシュ値>タグ、<ファイル>タグ、<判定>タグを含む。<ハッシュ値>タグと<ファイル>タグはどちらかの一方のみを<派生先ファイル>タグの中に含むこともありうる。   The <derivation destination> tag includes information on a file derived from the sample file indicated by the <sample> tag. The derivation destination file includes a <hash value> tag, a <file> tag, and a <determination> tag. Only one of the <hash value> tag and the <file> tag may be included in the <derivation destination file> tag.

図8に示す解析レポートは、2010年7月7日10:00:55に、検体として送信された派生元ファイルc:\a1.exeはマルウェアであり、この検体の派生先ファイルでc:\a1.exeと同一のハッシュ値を持つあるファイルはマルウェアであるという解析結果を出力したことを示している。   The analysis report shown in Fig. 8 shows that the source file c: \ a1.exe sent as a sample on July 7, 2010 at 10:00:55 is malware, and the sample destination file c: \ This indicates that an analysis result indicating that a file with the same hash value as a1.exe is malware was output.

また、図9に示す解析レポートは、2010年7月7日10:00:55に、検体c:\b1.exeは非マルウェアであり、この検体から派生されたc:\b2.exeも非マルウェアであるという解析結果を出力したことを示している。   The analysis report shown in FIG. 9 shows that the sample c: \ b1.exe is non-malware at 10:00:55 on July 7, 2010, and c: \ b2.exe derived from this sample is also non-malware. It shows that the analysis result that it is malware was output.

図3に戻って、レポート分析部126は、受信した解析レポートを分析し、あるクラスタに含まれる派生元ファイルおよび派生先ファイルを、「マルウェア」「非マルウェア」「判定不能」に分類する。先ず、<検体>タグにより、マルウェア解析システム200に送信した派生元ファイルを特定する。次に、<派生先ファイル>タグ内の情報を基に、派生元ファイルが含まれるクラスタ内の派生先ファイルのステータス507を、「マルウェア」「非マルウェア」「判定不能」の何れかに設定する。   Returning to FIG. 3, the report analysis unit 126 analyzes the received analysis report, and classifies the derivation source file and the derivation destination file included in a certain cluster into “malware”, “non-malware”, and “determination impossible”. First, the derivation source file transmitted to the malware analysis system 200 is specified by the <sample> tag. Next, the status 507 of the derivation destination file in the cluster including the derivation source file is set to “malware”, “non-malware”, or “undecidable” based on the information in the <derivation destination file> tag. .

クラスタ内の派生先ファイルのうち、「マルウェア」「非マルウェア」の何れにも分類されなかったものについては、ファイル種類506を「未定」、ステータス507を「判定不能」に設定する。最後に、クラスタ構築部122を呼び出し、これらの擬陽性ファイルを対象に再度クラスタリングを行い、派生先ファイルをマルウェア解析システムに送信する。   Of the derivation destination files in the cluster, those that are not classified as “malware” or “non-malware” are set to “undecided” for the file type 506 and “undecidable” for the status 507. Finally, the cluster construction unit 122 is called, clustering is performed again on these false positive files, and the derivation destination file is transmitted to the malware analysis system.

図7は、プロセス実行DB153の構成を示す図である。プロセス701は、プロセスを実行しているファイルのパスを示す文字列である。親プロセス702は、プロセス701を生成したプロセスを実行しているファイルのパスを示す文字列である。実行日時703はプロセス701が実行された日付と時刻を示す文字列である。例えば、図7の最初のレコードでは、c:\downloader.exeを実行しているプロセスが、2010/07/07 10:50:00に、c:\b1.exeを実行するプロセスを起動したことを示している。   FIG. 7 is a diagram illustrating a configuration of the process execution DB 153. The process 701 is a character string indicating the path of the file executing the process. The parent process 702 is a character string that indicates the path of the file that is executing the process that generated the process 701. The execution date and time 703 is a character string indicating the date and time when the process 701 was executed. For example, in the first record in Fig. 7, the process executing c: \ downloader.exe started the process executing c: \ b1.exe at 2010/07/07 10:50:00. Is shown.

図10は、擬陽性ファイル検出部121の動作を示すフローチャートである。擬陽性ファイル検出部121は、ユーザPC100に含まれるファイルでこれまでに選択していなかったものの一つを選択し、そのファイルを検査する(S1001)。検査したファイルが擬陽性ファイルかどうかを判定し(S1002)、擬陽性ファイルであればS1003に、そうでなければS1004に分岐する。   FIG. 10 is a flowchart showing the operation of the false positive file detection unit 121. The false positive file detection unit 121 selects one of the files included in the user PC 100 that has not been selected so far, and inspects the file (S1001). It is determined whether the inspected file is a false positive file (S1002). If it is a false positive file, the process branches to S1003, and if not, the process branches to S1004.

ファイルパス502にS1001で検査したファイルのファイルパスを、検出時刻503に現在時刻を、生成時刻504にファイルの生成時刻を、クラスタID505に0を、ファイル種類506に「未定」を、ステータス507に「クラスタ未構築」をセットしたレコードを擬陽性ファイルDB151に保存し(S1003)、S1005に移る。   In the file path 502, the file path of the file checked in S1001, the current time at the detection time 503, the file creation time at the creation time 504, 0 for the cluster ID 505, “undecided” for the file type 506, and the status 507 The record in which “cluster not constructed” is set is stored in the false positive file DB 151 (S1003), and the process proceeds to S1005.

ユーザPC100に含まれるすべてのファイルの検査を終了したかを判定し(S1004)、終了していなかったらS1001に、していたらS1005に移る。   It is determined whether inspection of all files included in the user PC 100 has been completed (S1004). If not completed, the process proceeds to S1001, and if it has been completed, the process proceeds to S1005.

擬陽性ファイル検出部121は、クラスタ構築部122を呼び出す(S1005)。   The false positive file detection unit 121 calls the cluster construction unit 122 (S1005).

図11は、クラスタ構築部122の統括部401の動作を示すフローチャートである。統括部401は、擬陽性ファイルDB151より、ファイル種類506が「未定」であるレコードを全て取得する(S1101)。クラスタリングに用いるモジュールを選択する(S1102)。選択したクラスタモジュールに、取得した擬陽性ファイルのレコードを与え、実行する(S1103)。統括部401は、送信検体選択部123を呼び出す(S1104)。   FIG. 11 is a flowchart showing the operation of the overall unit 401 of the cluster construction unit 122. The supervising unit 401 acquires all the records whose file type 506 is “undecided” from the false positive file DB 151 (S1101). A module used for clustering is selected (S1102). A record of the acquired false positive file is given to the selected cluster module and executed (S1103). The overall unit 401 calls the transmission sample selection unit 123 (S1104).

図12は、クラスタモジュールA402の動作を示すフローチャートである。クラスタモジュールA402は、擬陽性ファイルDB151のクラスタID505の最大値+1を、変数Newidに格納する(S1201)。   FIG. 12 is a flowchart showing the operation of the cluster module A402. The cluster module A402 stores the maximum value +1 of the cluster ID 505 of the false positive file DB 151 in the variable Newid (S1201).

入力として与えられた擬陽性ファイルレコードの集合で、これまでに選択していなかったものの一つを選択し(S1202)、選択された擬陽性ファイルレコードのファイルパス502が示すファイルのハッシュ値を演算する(S1203)。   One of the sets of false positive file records given as input that has not been selected so far is selected (S1202), and the hash value of the file indicated by the file path 502 of the selected false positive file record is calculated (S1202). S1203).

入力として与えられた擬陽性ファイルレコードの集合の中に、演算したハッシュ値と同値のハッシュ値を持つファイルを、ファイルパス502で示すものが存在し、且つそのクラスタID505が0以外であるものが存在するかを判定し(S1204)、存在する場合はS1205に、存在しない場合はS1206に分岐する。   Among the set of false positive file records given as input, there is a file having a hash value equal to the calculated hash value, indicated by the file path 502, and a cluster ID 505 other than 0. If it exists, the process branches to S1205, and if it does not exist, the process branches to S1206.

選択された擬陽性ファイルレコードのクラスタID505に、ハッシュ値が一致したレコードのクラスタID505を設定する(S1205)。   The cluster ID 505 of the record with the matched hash value is set to the cluster ID 505 of the selected false positive file record (S1205).

選択された擬陽性ファイルレコードのクラスタID505に、変数Newidの値を設定する(S1206)。Newidの値を+1する(S1207)。   The value of the variable Newid is set to the cluster ID 505 of the selected false positive file record (S1206). The value of New is incremented by 1 (S1207).

クラスタモジュールA402は、全ての擬陽性ファイルレコードを選択したかを判定し(S1208)、選択していないものがない場合は処理を終了し、選択していないものがある場合はS1202に分岐する。   The cluster module A 402 determines whether all false positive file records have been selected (S1208). If there is no unselected file record, the process ends. If there is no unselected file record, the process branches to S1202.

図5、図8の例では、c:\a1.exe、c:\a2.exe、c:\a3.exeは、ハッシュ値が同一であるため、クラスタID506が1であるクラスタを構築する。   In the example of FIG. 5 and FIG. 8, c: \ a1.exe, c: \ a2.exe, and c: \ a3.exe have the same hash value, and thus a cluster having a cluster ID 506 of 1 is constructed.

図13はクラスタモジュールB403の動作を示すフローチャートである。クラスタモジュールB403は、擬陽性ファイルDB151のクラスタID505の最大値+1を、変数Newidに格納する(S1301)。   FIG. 13 is a flowchart showing the operation of the cluster module B403. The cluster module B403 stores the maximum value +1 of the cluster ID 505 of the false positive file DB 151 in the variable Newid (S1301).

プロセス実行DB153を参照し、未選択の擬陽性ファイルレコードのうち、ファイルパス502が示す擬陽性ファイルの実行日時703が最も古いものを選択する(S1302)。   With reference to the process execution DB 153, an unselected false positive file record is selected that has the oldest execution date 703 of the false positive file indicated by the file path 502 (S1302).

選択された擬陽性ファイルレコードのファイルパス502が示すファイルをプロセス701とするプロセス実行レコードが存在し、且つ擬陽性ファイルレコードの集合のうち、ファイルパス502が当該プロセス実行レコードの親プロセス702を示すものが存在するかを判定し(S1303)、存在する場合はS1304に、存在しない場合はS1305に分岐する。   There is a process execution record in which the file indicated by the file path 502 of the selected false positive file record is the process 701, and among the set of false positive file records, the file path 502 indicates the parent process 702 of the process execution record. It is determined whether it exists (S1303). If it exists, the process branches to S1304. If it does not exist, the process branches to S1305.

選択された擬陽性ファイルレコードのクラスタID505に、存在した親プロセス702を示す擬陽性ファイルレコードのクラスタID505を設定する(S1304)。   The cluster ID 505 of the false positive file record indicating the existing parent process 702 is set in the cluster ID 505 of the selected false positive file record (S1304).

選択されたレコードのクラスタIDに、変数Newidを設定する(S1305)。変数NewIdの値を+1する(S1306)。   A variable Newid is set to the cluster ID of the selected record (S1305). The value of the variable NewId is incremented by 1 (S1306).

クラスタモジュールB403は、全ての擬陽性ファイルレコードを選択したかを判定し(S1307)、選択していないものがない場合は処理を終了し、選択していないものがある場合はS1302に分岐する。   The cluster module B 403 determines whether all false positive file records have been selected (S1307). If there is no unselected one, the process ends. If there is no unselected one, the process branches to S1302.

図5、図7、図9の例では、c:\b1.exeを実行するプロセスが、c:\b2.exe、c:\b3.exeを実行している。よって、これら3つのファイルは、クラスタIDが2のクラスタを構築する。   In the example of FIGS. 5, 7, and 9, the process that executes c: \ b1.exe executes c: \ b2.exe and c: \ b3.exe. Therefore, these three files construct a cluster with a cluster ID of 2.

図14は、送信検体選択部123の動作を示すフローチャートである。送信検体選択部123は、擬陽性ファイルDB151から、ファイル種類506が「未定」である擬陽性ファイルレコードの集合を取得する(S1401)。取得したレコード集合を、クラスタID505ごとに、グループ化する(S1402)。   FIG. 14 is a flowchart showing the operation of the transmission sample selection unit 123. The transmission specimen selection unit 123 acquires a set of false positive file records whose file type 506 is “undecided” from the false positive file DB 151 (S1401). The acquired record set is grouped for each cluster ID 505 (S1402).

未だ選択されていないグループのうち1つを選択し(S1403)、選択されたグループ内の擬陽性ファイルレコードで、生成時刻504が最も古いもののファイル種類506を「派生元ファイル」に、それ以外のレコードのファイル種類506を「派生先ファイル」に設定する(S1404)。グループ内の全てのレコードのステータス507を「送信待ち」に設定する(S1405)。   One of the groups not yet selected is selected (S1403), and the file type 506 having the oldest generation time 504 among the false positive file records in the selected group is set as the “derived file”, and the other records. The file type 506 is set to “derived file” (S1404). The status 507 of all records in the group is set to “waiting for transmission” (S1405).

未だ選択していないグループが存在するかを判定し(S1406)、存在する場合はS1403に分岐し、存在しない場合はS1407に分岐する。処理S1407では、検体送信部124を呼び出し、処理を終了する(S1407)。   It is determined whether there is a group that has not yet been selected (S1406). If it exists, the process branches to S1403, and if it does not exist, the process branches to S1407. In process S1407, the sample transmitter 124 is called and the process ends (S1407).

図5の例では、クラスタIDが1であるクラスタではc:\a1.exeが、クラスタIDが2であるクラスタではc:\b1.exeが派生元ファイルとなり、その他のファイルは派生先ファイルとなる。   In the example of FIG. 5, c: \ a1.exe is a derivation source file in a cluster with a cluster ID of 1, c: \ b1.exe is a derivation source file in a cluster with a cluster ID of 2, and other files are derivation destination files. Become.

図15は、検体送信部124の動作を示すフローチャートである。検体送信部124は、擬陽性ファイルDB151から、ステータス507が「送信待ち」である擬陽性ファイルレコードの集合を取得する(S1501)。   FIG. 15 is a flowchart showing the operation of the sample transmitter 124. The sample transmission unit 124 acquires a set of false positive file records whose status 507 is “waiting for transmission” from the false positive file DB 151 (S1501).

まだ選択されていないレコードののうちの1つを選択し(S1502)、選択されたレコードの種類506が「派生元ファイル」であるかを判定し(S1503)、「派生元ファイル」である場合はS1504に分岐し、「派生先ファイル」である場合はS1505に分岐する。   When one of the records that have not yet been selected is selected (S1502), it is determined whether or not the type 506 of the selected record is a “derived file” (S1503). Branches to S1504, and if it is a “derived file”, branches to S1505.

レコードのファイルパス502が示す擬陽性ファイルを、マルウェア解析システム200に送信する(S1504)。   The false positive file indicated by the file path 502 of the record is transmitted to the malware analysis system 200 (S1504).

レコードのステータス507を「解析中」に設定し(S1505)、未だ選択していないレコードが存在するかを判定し(S1506)、存在する場合はS1502に分岐し、存在しない場合は処理を終了する。   The record status 507 is set to “analyzing” (S1505), and it is determined whether there is a record that has not been selected (S1506). If it exists, the process branches to S1502, and if not, the process ends. .

図16は、レポート受信部125の動作を示すフローチャートである。レポート受信部125は、マルウェア解析システム200より、マルウェア解析レポートを受信する(S1601)。現在時刻を受信時刻602に、マルウェア解析レポート本文をコンテンツ603に、「分析待ち」をステータス604にセットした、解析レポートレコードを、解析レポートDB152に保存する(S1602)。レポート受信部125は、レポート分析部を呼び出して、処理を終了する(S1603)。   FIG. 16 is a flowchart showing the operation of the report receiving unit 125. The report receiving unit 125 receives a malware analysis report from the malware analysis system 200 (S1601). An analysis report record in which the current time is set to the reception time 602, the malware analysis report body is set to the content 603, and “waiting for analysis” is set to the status 604 is stored in the analysis report DB 152 (S1602). The report receiving unit 125 calls the report analysis unit and ends the processing (S1603).

図17は、レポート分析部126の動作を示すフローチャートである。レポート分析部126は、解析レポートDB152からステータス604が「分析待ち」である解析レポートレコードの集合を取得する(S1701)。   FIG. 17 is a flowchart showing the operation of the report analysis unit 126. The report analysis unit 126 acquires a set of analysis report records whose status 604 is “waiting for analysis” from the analysis report DB 152 (S1701).

未だ選択されていない解析レポートレコードの中から1つを選択し(S1702)、選択された解析レポートレコードのコンテンツ603から、<検体>要素を取得する(S1703)。擬陽性ファイルDB151から、ファイルパス502が<検体>要素に対応するファイルを示すような、擬陽性ファイルレコードを取得する(S1704)。S1704で取得した擬陽性ファイルレコードのクラスタID505を変数Targetに設定する(S1705)。擬陽性ファイルDB151から、クラスタID505が変数Targetと等しい擬陽性ファイルレコードの集合を取得する(S1706)。   One analysis report record that has not been selected is selected (S1702), and the <sample> element is acquired from the content 603 of the selected analysis report record (S1703). A false positive file record is obtained from the false positive file DB 151 such that the file path 502 indicates a file corresponding to the <sample> element (S1704). The cluster ID 505 of the false positive file record acquired in S1704 is set in the variable Target (S1705). A set of false positive file records in which the cluster ID 505 is equal to the variable Target is acquired from the false positive file DB 151 (S1706).

取得した擬陽性ファイルレコードの集合のうち、未選択のものの1つを選択し(S1707)、解析レポートレコードと選択された擬陽性ファイルレコードを入力として、擬陽性ファイルレコード判定処理(図18)を実行する(S1708)。   From the acquired set of false positive file records, one of unselected ones is selected (S1707), and the analysis report record and the selected false positive file record are input to execute a false positive file record determination process (FIG. 18) (FIG. 18). S1708).

全ての擬陽性ファイルレコードを選択したかを判定し(S1709)、未選択のレコードがある場合はS1707に分岐し、全てのレコードを選択した場合はS1710に分岐する。全ての解析レポートレコードを選択したかを判定し(S1710)、未選択のレコードがある場合はS1702に分岐し、全てのレコードを選択した場合はS1711に分岐する。   It is determined whether all false positive file records have been selected (S1709). If there is an unselected record, the process branches to S1707, and if all records are selected, the process branches to S1710. It is determined whether all analysis report records have been selected (S1710). If there is an unselected record, the process branches to S1702, and if all records are selected, the process branches to S1711.

、S1701で取得した全解析レポートレコードのステータス507を「分析完了」に設定する(S1711)。レポート分析部126は、クラスタ構築部122を呼び出し、処理を終了する(S1712)。クラスタ構築部122は、擬陽性ファイルレコード判定処理で、「マルウェア」、「非マルウェア」の何れでもないと判定された擬陽性ファイルをクラスタリングし、再構築されたクラスタの派生元ファイルを、マルウェア解析システム200に送信する。   The status 507 of all analysis report records acquired in S1701 is set to “analysis completed” (S1711). The report analysis unit 126 calls the cluster construction unit 122 and ends the processing (S1712). The cluster construction unit 122 clusters the false positive files determined to be neither “malware” nor “non-malware” in the false positive file record determination process, and uses the reconstructed cluster derivation source file as the malware analysis system 200. Send to.

図18は、レポート分析部126の処理の一部(S1708)である、擬陽性ファイルレコード判定処理を示すフローチャートである。擬陽性ファイルレコード判定処理は、入力として与えられた擬陽性ファイルレコードのファイルパス502が示すファイルが、入力として与えられた解析レポートレコードのコンテンツ603において、「マルウェア」と判定されているかどうかを判定し(S1801)、「マルウェア」と判定されている場合はS1802に分岐し、「マルウェア」と判定されていない場合はS1804に分岐する。   FIG. 18 is a flowchart showing a false positive file record determination process, which is a part of the process of the report analysis unit 126 (S1708). The false positive file record determination process determines whether or not the file indicated by the file path 502 of the false positive file record given as input is determined as “malware” in the content 603 of the analysis report record given as input ( S1801), if “malware” is determined, the process branches to S1802, and if “malware” is not determined, the process branches to S1804.

擬陽性ファイルレコードのステータス507を「マルウェア」に設定し(S1802)、マルウェアと判定されたファイルを、ユーザPC100から駆除する(S1803)。   The status 507 of the false positive file record is set to “malware” (S1802), and the file determined to be malware is removed from the user PC 100 (S1803).

擬陽性ファイルレコードのファイルパス502が示すファイルが、解析レポートレコードのコンテンツ603において、「非マルウェア」と判定されているかどうかを判定し(S1804)、「非マルウェア」と判定されている場合はS1805に分岐し、「非マルウェア」と判定されていない場合はS1806に分岐する。   It is determined whether or not the file indicated by the file path 502 of the false positive file record is determined as “non-malware” in the content 603 of the analysis report record (S1804). If it is determined as “non-malware”, the process proceeds to S1805. If it is determined that it is not determined as “non-malware”, the process branches to S1806.

擬陽性ファイルレコードのステータス507を「非マルウェア」に設定し(S1805)、処理を終了する。擬陽性ファイルレコードのステータス507を「判定不能」に、ファイル種類を「未定」に設定し(処理S1806)、処理を終了する。   The status 507 of the false positive file record is set to “non-malware” (S1805), and the process ends. The status 507 of the false positive file record is set to “undecidable” and the file type is set to “undecided” (step S1806), and the processing is terminated.

図8の例では、派生元ファイルc:\a1.exe、派生先ファイルc:\a2.exe,c:\a3.exeは共に「マルウェア」と判定され、駆除される。図9の例では、派生元ファイルc:\b1.exeと派生先ファイルc:\b2.exeは「非マルウェア」と判断される。一方で、c:\b1.exeと同一のクラスタ(クラスタID505=2)である派生先c:\b3.exeは、解析レポート内で「マルウェア」とも「非マルウェア」とも判定されず、ファイル種類506が「未定」ステータス507が「判定不能」となる。   In the example of FIG. 8, the derivation source file c: \ a1.exe, the derivation destination files c: \ a2.exe, and c: \ a3.exe are both determined as “malware” and removed. In the example of FIG. 9, the derivation source file c: \ b1.exe and the derivation destination file c: \ b2.exe are determined to be “non-malware”. On the other hand, the derivation destination c: \ b3.exe, which is the same cluster (cluster ID 505 = 2) as c: \ b1.exe, is not determined as “malware” or “non-malware” in the analysis report. 506 is “undecided” status 507 is “determination impossible”.

本実施形態によれば、擬陽性ファイルを派生元ファイルと派生先ファイルに分類し、派生元ファイルのみをマルウェア解析システムに送信することで、マルウェア解析システムの演算負荷、及びネットワーク負荷を軽減する。   According to this embodiment, false positive files are classified into a derivation source file and a derivation destination file, and only the derivation source file is transmitted to the malware analysis system, thereby reducing the computation load and network load of the malware analysis system.

本実施形態の一部を変形して、次のように実施してもよい。   A part of the present embodiment may be modified and implemented as follows.

第一に、マルウェア解析システム200は、ユーザPC100に含まれてもよい。マルウェア解析システム200は、ユーザPC内で動作する1プログラムとなる。この変形例では、ユーザPC100、マルウェア解析システム200間で通信が行われないため、通信負荷が無くなるという利点がある。   First, the malware analysis system 200 may be included in the user PC 100. The malware analysis system 200 is one program that operates in the user PC. In this modification, since communication is not performed between the user PC 100 and the malware analysis system 200, there is an advantage that the communication load is eliminated.

第二に、クラスタモジュールA402、クラスタモジュールB403は、ユーザPC100内に含まれず、他の端末上に存在してもよい。ユーザPC100から、擬陽性ファイル及びクラスタリングに必要な情報が、クラスタモジュールA402、クラスタモジュール403を含む端末に送信され、クラスタリングの結果が受信される。この変形例では、ユーザPC100から、様々な端末上にあるクラスタモジュールを利用することが可能になる。   Secondly, the cluster module A 402 and the cluster module B 403 are not included in the user PC 100 and may exist on other terminals. The false positive file and information necessary for clustering are transmitted from the user PC 100 to a terminal including the cluster module A 402 and the cluster module 403, and the result of clustering is received. In this modification, the user PC 100 can use cluster modules on various terminals.

100…ユーザPC、110…ユーザPC本体、120…CPU、121…擬陽性ファイル検出部、122…クラスタ構築部、123…送信検体選択部、124…検体送信部、125…レポート受信部、126…レポート分析部、130…メモリ、131…マルウェア検出プログラム、140…IF、150…外部記憶装置、151…擬陽性ファイルDB、152…解析レポートDB、153…プロセス実行DB、160…バス、170…入出力装置、200…マルウェア解析システム、300…ネットワーク、401…統括部、402…クラスタモジュールA、403…クラスタモジュールB。   DESCRIPTION OF SYMBOLS 100 ... User PC, 110 ... User PC main body, 120 ... CPU, 121 ... False positive file detection part, 122 ... Cluster construction part, 123 ... Transmission specimen selection part, 124 ... Sample transmission part, 125 ... Report reception part, 126 ... Report Analyzing unit, 130 ... memory, 131 ... malware detection program, 140 ... IF, 150 ... external storage device, 151 ... false positive file DB, 152 ... analysis report DB, 153 ... process execution DB, 160 ... bus, 170 ... input / output device , 200 ... Malware analysis system, 300 ... Network, 401 ... Supervision unit, 402 ... Cluster module A, 403 ... Cluster module B.

Claims (13)

計算機内で発見された、マルウェアである可能性がある擬陽性ファイルをクラスタリングし、前記擬陽性ファイルを含むクラスタを構築するクラスタ構築部、
前記擬陽性ファイルを含む前記クラスタから、マルウェア解析システムに送信する1つの検体として前記擬陽性ファイルを選別する送信検体選択部、
選別した前記検体を前記マルウェア解析システムへ送信する検体送信部、及び、
送信した前記検体に対応して、前記マルウェア解析システムから取得した解析レポートを分析して、前記クラスタに含まれる前記擬陽性ファイルを、「マルウェア」及び「非マルウェア」のいずれかに分類する解析レポート分析部を有することを特徴とするマルウェア検知装置。
A cluster construction unit for clustering false positive files that may be malware detected in a computer and constructing a cluster including the false positive files;
A transmission sample selection unit that selects the false positive file as one sample to be transmitted to the malware analysis system from the cluster including the false positive file;
A sample transmission unit for transmitting the selected sample to the malware analysis system; and
Analysis report analysis for analyzing the analysis report obtained from the malware analysis system corresponding to the transmitted sample and classifying the false positive file included in the cluster as either “malware” or “non-malware” Malware detection device characterized by having a section.
前記送信検体選択部は、前記擬陽性ファイルが生成された生成時刻が、前記クラスタに含まれる中で最も古い擬陽性ファイルを、前記検体として選別される前記擬陽性ファイルとすることを特徴とする請求項1記載のマルウェア検知装置。 2. The transmission sample selection unit, wherein the generation time when the false positive file is generated includes the oldest false positive file included in the cluster as the false positive file selected as the sample. The malware detection device described. マルウェアである可能性がある擬陽性ファイルを計算機によって検知する方法であって、前記計算機は、該計算機内で発見された前記擬陽性ファイルをクラスタリングし、前記擬陽性ファイルを含むクラスタを構築し、
前記擬陽性ファイルを含む前記クラスタから、マルウェア解析システムに送信する1つの検体として前記擬陽性ファイルを選別し、
選別した前記検体を前記マルウェア解析システムへ送信し、
送信した前記検体に対応して、前記マルウェア解析システムから取得した解析レポートを分析して、前記クラスタに含まれる前記擬陽性ファイルを、「マルウェア」及び「非マルウェア」のいずれかに分類することを特徴とするマルウェア検知方法。
A method of detecting a false positive file that may be malware by a computer, the computer clustering the false positive files found in the computer, constructing a cluster including the false positive files,
From the cluster including the false positive file, the false positive file is selected as one specimen to be transmitted to the malware analysis system,
Send the selected sample to the malware analysis system,
The analysis report acquired from the malware analysis system is analyzed corresponding to the transmitted sample, and the false positive file included in the cluster is classified as either “malware” or “non-malware”. Malware detection method.
前記擬陽性ファイルが生成された生成時刻が、前記クラスタに含まれる中で最も古い擬陽性ファイルを、前記検体として選別する前記擬陽性ファイルとすることを特徴とする請求項5記載のマルウェア検知方法。 The malware detection method according to claim 5, wherein the generation time when the false positive file is generated is the false positive file that selects the oldest false positive file included in the cluster as the sample. 計算機内で発見された、マルウェアである可能性がある擬陽性ファイルをクラスタリングし、前記擬陽性ファイルを含むクラスタを構築するクラスタ構築機能、
前記擬陽性ファイルを含む前記クラスタから、マルウェア解析システムに送信する1つの検体として前記擬陽性ファイルを選別する送信検体選択機能、
選別した前記検体を前記マルウェア解析システムへ送信する検体送信機能、及び、
送信した前記検体に対応して、前記マルウェア解析システムから取得した解析レポートを分析して、前記クラスタに含まれる前記擬陽性ファイルを、「マルウェア」及び「非マルウェア」のいずれかに分類する解析レポート分析機能を、前記計算機に実現させるためのマルウェア検知プログラム。
A cluster construction function for clustering false positive files discovered in a computer that may be malware and constructing a cluster including the false positive files;
A transmission sample selection function for selecting the false positive file as one sample to be transmitted to the malware analysis system from the cluster including the false positive file;
A sample transmission function for transmitting the selected sample to the malware analysis system; and
Analysis report analysis for analyzing the analysis report obtained from the malware analysis system corresponding to the transmitted sample and classifying the false positive file included in the cluster as either “malware” or “non-malware” A malware detection program for causing a function to be realized by the computer.
前記擬陽性ファイルが生成された生成時刻が、前記クラスタに含まれる中で最も古い擬陽性ファイルを前記検体として選別される前記擬陽性ファイルとする前記送信検体選択機能を前記計算機に実現させるための請求項5記載のマルウェア検知プログラム。 6. The computer according to claim 5, wherein the computer is configured to realize the transmission sample selection function in which the generation time at which the false positive file is generated is the false positive file selected as the sample with the oldest false positive file included in the cluster. The described malware detection program. 前記擬陽性ファイルが生成された生成時刻が、前記クラスタに含まれる中で最も古い擬陽性ファイルを派生元ファイルとし、前記クラスタに含まれる他の擬陽性ファイルを派生先ファイルとし、前記派生元ファイルを前記検体として選別される前記擬陽性ファイルとする前記送信検体選択機能を前記計算機に実現させるための請求項6記載のマルウェア検知プログラム。 The generation time when the false positive file was generated is the oldest false positive file included in the cluster as a derivation source file, another false positive file included in the cluster is a derivation destination file, and the derivation source file is the sample. The malware detection program according to claim 6, for causing the computer to realize the transmission specimen selection function that sets the false positive file selected as. 種別の異なる複数のクラスタ構築モジュールを選択的に実行する前記クラスタ構築機能を前記計算機に実現させるための請求項6に記載のマルウェア検知プログラム。 The malware detection program according to claim 6 for causing the computer to realize the cluster construction function for selectively executing a plurality of cluster construction modules of different types. ハッシュ値が等しい前記擬陽性ファイルを一つのクラスタとする前記クラスタ構築モジュールを選択的に実行する前記クラスタ構築機能を前記計算機に実現させるための請求項8に記載のマルウェア検知プログラム。 The malware detection program according to claim 8 for causing the computer to realize the cluster construction function for selectively executing the cluster construction module that uses the false positive files having the same hash value as one cluster. 実行したプロセスが親子関係にある前記擬陽性ファイルを一つのクラスタとする前記クラスタ構築モジュールを選択的に実行する前記クラスタ構築機能を前記計算機に実現させるための請求項8に記載のマルウェア検知プログラム。 The malware detection program according to claim 8 for causing the computer to realize the cluster construction function for selectively executing the cluster construction module in which the executed process has a parent-child relationship with the false positive file as one cluster. 前記解析レポート分析手順が「判定不能」とした前記擬陽性ファイルを、再度クラスタリングする前記クラスタ構築機能を前記計算機に実現させるための請求項6に記載のマルウェア検知プログラム。 The malware detection program according to claim 6, wherein the computer is configured to realize the cluster construction function for clustering the false positive file that is determined as “indeterminate” in the analysis report analysis procedure. さらに、前記計算機の外部記憶装置に格納されているファイルを検査して、マルウェアである可能性がある前記擬陽性ファイルを前記ファイルの中から発見する擬陽性ファイル検出機能を前記計算機に実現させるための請求項6に記載のマルウェア検知プログラム。 Further, a request for causing the computer to realize a false positive file detection function for inspecting a file stored in the external storage device of the computer and finding the false positive file that may be malware from the file. Item 7. The malware detection program according to item 6. 「マルウェア」に分類した前記擬陽性ファイルを前記計算機から駆除する前記解析レポート分析機能を、前記計算機に実現させるための請求項5に記載のマルウェア検知プログラム。 The malware detection program according to claim 5 for causing the computer to realize the analysis report analysis function for removing the false positive file classified as "malware" from the computer.
JP2010227656A 2010-10-07 2010-10-07 Malware detector, and method and program for the same Pending JP2012083849A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010227656A JP2012083849A (en) 2010-10-07 2010-10-07 Malware detector, and method and program for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010227656A JP2012083849A (en) 2010-10-07 2010-10-07 Malware detector, and method and program for the same

Publications (1)

Publication Number Publication Date
JP2012083849A true JP2012083849A (en) 2012-04-26

Family

ID=46242670

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010227656A Pending JP2012083849A (en) 2010-10-07 2010-10-07 Malware detector, and method and program for the same

Country Status (1)

Country Link
JP (1) JP2012083849A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015001969A1 (en) * 2013-07-05 2015-01-08 日本電信電話株式会社 Unauthorized-access detection system and unauthorized-access detection method
JP2015132942A (en) * 2014-01-10 2015-07-23 エヌ・ティ・ティ・コミュニケーションズ株式会社 Connection destination information determination device, connection destination information determination method and program
JP2016091070A (en) * 2014-10-30 2016-05-23 日本電気株式会社 Information processing system, classifying method, and program therefor
JP2017168146A (en) * 2017-06-28 2017-09-21 エヌ・ティ・ティ・コミュニケーションズ株式会社 Connection destination information determination device, connection destination information determination method, and program
US10325094B2 (en) 2014-08-28 2019-06-18 Mitsubishi Electric Corporation Process analysis apparatus, process analysis method, and process analysis for determining input/output relation of a block of execution trace to detect potential malware
CN111797392A (en) * 2019-04-09 2020-10-20 国家计算机网络与信息安全管理中心 Method, device and storage medium for controlling infinite analysis of derivative file
US20220239672A1 (en) * 2013-03-15 2022-07-28 Palantir Technologies Inc. Malware data clustering

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008519532A (en) * 2004-11-05 2008-06-05 セキュアー コンピューティング コーポレイション Message profiling system and method
JP2010198054A (en) * 2009-02-23 2010-09-09 National Institute Of Information & Communication Technology Computer inspection system and computer inspection method
JP2011523748A (en) * 2008-05-28 2011-08-18 シマンテック コーポレーション Intelligent hash for centrally detecting malware

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008519532A (en) * 2004-11-05 2008-06-05 セキュアー コンピューティング コーポレイション Message profiling system and method
JP2011523748A (en) * 2008-05-28 2011-08-18 シマンテック コーポレーション Intelligent hash for centrally detecting malware
JP2010198054A (en) * 2009-02-23 2010-09-09 National Institute Of Information & Communication Technology Computer inspection system and computer inspection method

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CSNG200900502045; 安本幸希: 'コードの類似度判定を用いたマルウェア分類法' コンピュータセキュリティシンポジウム2008論文集[第二分冊] , 20081008, 869〜874頁, 社団法人 情報処理学会 *
CSNJ201010043083; 川口信隆: 'マルウェア対策ユーザサポートシステムの検討' 電子情報通信学会2010年総合大会講演論文集 通信2 , 20100302, 83頁, 社団法人 電子情報通信学会 *
JPN6014000833; 川口信隆: 'マルウェア対策ユーザサポートシステムの検討' 電子情報通信学会2010年総合大会講演論文集 通信2 , 20100302, 83頁, 社団法人 電子情報通信学会 *
JPN6014000835; 安本幸希: 'コードの類似度判定を用いたマルウェア分類法' コンピュータセキュリティシンポジウム2008論文集[第二分冊] , 20081008, 869〜874頁, 社団法人 情報処理学会 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220239672A1 (en) * 2013-03-15 2022-07-28 Palantir Technologies Inc. Malware data clustering
US11848760B2 (en) * 2013-03-15 2023-12-19 Palantir Technologies Inc. Malware data clustering
WO2015001969A1 (en) * 2013-07-05 2015-01-08 日本電信電話株式会社 Unauthorized-access detection system and unauthorized-access detection method
JP6001781B2 (en) * 2013-07-05 2016-10-05 日本電信電話株式会社 Unauthorized access detection system and unauthorized access detection method
US10142343B2 (en) 2013-07-05 2018-11-27 Nippon Telegraph And Telephone Corporation Unauthorized access detecting system and unauthorized access detecting method
JP2015132942A (en) * 2014-01-10 2015-07-23 エヌ・ティ・ティ・コミュニケーションズ株式会社 Connection destination information determination device, connection destination information determination method and program
US10325094B2 (en) 2014-08-28 2019-06-18 Mitsubishi Electric Corporation Process analysis apparatus, process analysis method, and process analysis for determining input/output relation of a block of execution trace to detect potential malware
JP2016091070A (en) * 2014-10-30 2016-05-23 日本電気株式会社 Information processing system, classifying method, and program therefor
US11250029B2 (en) 2014-10-30 2022-02-15 Nec Corporation Information processing system and classification method
JP2017168146A (en) * 2017-06-28 2017-09-21 エヌ・ティ・ティ・コミュニケーションズ株式会社 Connection destination information determination device, connection destination information determination method, and program
CN111797392A (en) * 2019-04-09 2020-10-20 国家计算机网络与信息安全管理中心 Method, device and storage medium for controlling infinite analysis of derivative file
CN111797392B (en) * 2019-04-09 2023-08-08 国家计算机网络与信息安全管理中心 Method, device and storage medium for controlling infinite analysis of derivative files

Similar Documents

Publication Publication Date Title
Fan et al. Dapasa: detecting android piggybacked apps through sensitive subgraph analysis
Arshad et al. SAMADroid: a novel 3-level hybrid malware detection model for android operating system
Alsaheel et al. {ATLAS}: A sequence-based learning approach for attack investigation
JP2012083849A (en) Malware detector, and method and program for the same
JP5656136B2 (en) Behavior signature generation using clustering
US8769676B1 (en) Techniques for identifying suspicious applications using requested permissions
US20150046512A1 (en) Dynamic collection analysis and reporting of telemetry data
US20150172303A1 (en) Malware Detection and Identification
KR101716564B1 (en) Malware Detection Method and System Based on Hadoop
CN110362994A (en) Detection method, equipment and the system of malicious file
EP3293664B1 (en) Software analysis system, software analysis method, and software analysis program
US9201754B2 (en) Recording application consumption details
US20200334208A1 (en) Rule-based collections of subset(s) of metadata in response to a trigger event occurring
US11831417B2 (en) Threat mapping engine
CN116595523A (en) Multi-engine file detection method, system, equipment and medium based on dynamic arrangement
Vahedi et al. Cloud based malware detection through behavioral entropy
CN113569256A (en) Vulnerability scanning method and device, vulnerability scanning system, electronic equipment and computer readable medium
Punn et al. Testing big data application
JP7302223B2 (en) Script detection device, method and program
KR102662965B1 (en) Apparatus and method for detecting ai based malignant code in structured document
KR101586482B1 (en) Method and System for Conversion of Search Result Suitable for User State
Alimardani et al. A taxonomy on recent mobile malware: Features, analysis methods, and detection techniques
Qin et al. LMHADC: Lightweight method for host based anomaly detection in cloud using mobile agents
Wilks ENABLING EFFICIENT AND STREAMLINED ACCESS TO LARGE SCALE GENOMIC EXPRESSION AND SPLICING DATA
Abbas et al. A Comparative Forensic Analysis of Android based Social Media Applications

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140114

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140520