WO2022239147A1 - 抽出装置、抽出方法、および、抽出プログラム - Google Patents

抽出装置、抽出方法、および、抽出プログラム Download PDF

Info

Publication number
WO2022239147A1
WO2022239147A1 PCT/JP2021/018049 JP2021018049W WO2022239147A1 WO 2022239147 A1 WO2022239147 A1 WO 2022239147A1 JP 2021018049 W JP2021018049 W JP 2021018049W WO 2022239147 A1 WO2022239147 A1 WO 2022239147A1
Authority
WO
WIPO (PCT)
Prior art keywords
log
longest
log group
common subsequence
signatures
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.)
Ceased
Application number
PCT/JP2021/018049
Other languages
English (en)
French (fr)
Inventor
勇貴 越智
裕介 久田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2023520655A priority Critical patent/JP7509318B2/ja
Priority to PCT/JP2021/018049 priority patent/WO2022239147A1/ja
Priority to US18/558,361 priority patent/US20240220611A1/en
Publication of WO2022239147A1 publication Critical patent/WO2022239147A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures

Definitions

  • the present invention relates to an extraction device, an extraction method, and an extraction program for extracting logs showing traces of attacks.
  • Non-Patent Document 1 In recent years, in computer forensics investigations, signatures that indicate the characteristics of attacks have been used to extract traces of attacks from PC (Personal Computer) logs (see Non-Patent Document 1).
  • the present invention provides a log collection unit that collects logs of a computer to be investigated, and a rule that arranges a plurality of signatures indicating an attack on the computer in an order characteristic of the attack.
  • a first extraction unit that extracts a log group matching any signature indicated in the rule from the collected logs; and a time-series arrangement of signatures that match each log of the extracted log group and a second extraction unit for extracting a log group having the longest longest common subsequence with a sequence of a plurality of signatures indicated in the rule;
  • a calculation unit that calculates the variance value of the time difference between each log that is adjacent in chronological order in the group, and an output processing unit that outputs the longest common subsequence in the log group with the minimum calculated variance value as an attack candidate.
  • traces of attacks can be extracted with high accuracy.
  • FIG. 1 is a diagram for explaining an outline of an extraction device.
  • FIG. 2 is a diagram for explaining the outline of the extraction device.
  • FIG. 3 is a diagram showing a configuration example of an extraction device.
  • FIG. 4 is a diagram showing examples of signatures used in the rules of FIG.
  • FIG. 5 is a diagram showing an example of the rules of FIG.
  • FIG. 6 is a flow chart showing an example of a processing procedure of the extraction device.
  • FIG. 7 is a diagram showing an example of a computer that executes an extraction program.
  • the extraction device prepares in advance a rule (see reference numeral 101 in FIG. 1) in which a plurality of signatures indicating attacks on computers are arranged in an order characteristic of the attacks.
  • the extraction device arranges the log group of the computer to be investigated in chronological order, and extracts the log group (see reference numeral 102) that matches each signature indicated in the rule.
  • the extraction device extracts a log group in which the longest common subsequence between the sequence of signatures matching the logs of the extracted log group and the sequence of signatures indicated by the rule is the longest (see reference numerals 103 to 105). ).
  • the extraction device when there are a plurality of log groups having the longest longest common subsequence with the sequence of signatures indicated in the rule, the extraction device, for each log group, A variance value of the time difference between each log that is adjacent in time series in the log group is calculated.
  • the extraction device calculates variance values of "2:00, 1:00, 3:00". For example, the extractor converts "2:00, 1:00, 3:00" into seconds and calculates the variance of the converted values into seconds ("120, 60, 180").
  • the extraction device also calculates the above variance value for other log groups having the longest longest common subsequence with the sequence of signatures indicated in the rule, and finds the longest common subsequence in the log group with the smallest variance value. is output as an attack candidate. For example, when the variance value of the log group indicated by reference numeral 103 among the log groups indicated by reference numerals 103 to 105 in FIG. Match B ⁇ Match with signature C ⁇ Match with signature D) is output as an attack trace candidate.
  • an extraction device it is possible to extract, as attack candidates, a series of attacks that have the longest longest common subsequence with a series of signatures indicated in the rule, from the logs of the computer being investigated.
  • the extraction device can accurately extract candidates for traces of attacks from the log of the computer to be investigated.
  • the extraction device 10 includes an input/output unit 11 , a storage unit 12 and a control unit 13 .
  • the input/output unit 11 is an interface that controls input/output of various data.
  • the input/output unit 11 receives input of a log of a computer to be investigated, and outputs candidates for traces of attacks.
  • the storage unit 12 stores rules. This rule is obtained by arranging a plurality of signatures indicating an attack on a computer in an order characteristic of the attack (see reference numeral 101 in FIG. 1).
  • a signature indicates the characteristics of a log recorded by a computer when it is attacked. For example, a signature describes the behavior of malware on a computer (see Figure 4).
  • each signature a value that indicates the order characteristic of the attack.
  • the values indicating the order assigned to each signature may have the same value.
  • the storage unit 12 includes a DB.
  • Logs registered by the DB registration unit 133 (logs of computers to be investigated are arranged in chronological order) are stored in this DB.
  • the control unit 13 controls the extraction device 10 as a whole.
  • the control unit 13 includes a log collection unit 131, a time-serialization unit 132, a DB registration unit 133, a rule conversion unit 134, a DB search unit (first extraction unit) 135, and an extraction unit (second an extraction unit) 136 , a determination unit 137 , a calculation unit 138 , and a narrowing unit (output processing unit) 139 .
  • the log collection unit 131 collects logs from computers to be investigated. For example, the log collection unit 131 collects event logs, registries, file operation histories, and the like from the investigation target computer. For example, the log collection unit 131 collects the above logs by CDIR-C (Cyber Defense Institute Incident Response Collector) or the like.
  • CDIR-C Chemical Defense Institute Incident Response Collector
  • the time-serializing unit 132 rearranges the logs collected by the log collecting unit 131 in chronological order.
  • the DB registration unit 133 registers the logs chronologically rearranged by the time-serialization unit 132 in the DB.
  • the rule conversion unit 134 converts the signature described in the rule into a search query for searching for logs that match the signature.
  • the DB search unit 135 uses the search query converted by the rule conversion unit 134 to search logs in the DB. That is, the DB search unit 135 extracts from the DB a log group that matches the signature indicated by the rule. For example, the DB search unit 135 extracts from the DB a log group that matches each signature indicated by reference numeral 101 in FIG. 1 (see reference numeral 102 in FIG. 1).
  • the extraction unit 136 extracts from the log group searched by the DB search unit 135 the longest common subsequence with the sequence of signatures indicated in the rule based on the time-series sequence of signatures that match each log in the log group. Extract the log group that becomes . For example, the extraction unit 136 extracts from the log group indicated by reference numeral 102 of FIG. Reference numeral 105).
  • the determining unit 137 determines whether or not there are a plurality of log groups having the longest longest common subsequence extracted by the extracting unit 136 .
  • the calculation unit 138 determines each of the log groups having the longest longest common subsequence to be adjacent in chronological order in the log group. Calculate the variance of the time difference between each log.
  • the calculating unit 138 calculates the variance value of the time difference between each log that is adjacent in chronological order in the log group with the longest longest common subsequence indicated by reference numeral 103 in FIG. 2, reference numeral 201). Similarly, the calculating unit 138 calculates the variance value of the time difference between adjacent logs in time series in the log group indicated by reference numerals 104 and 105 in FIG.
  • the narrowing-down unit 139 narrows down the candidates for traces of attack. For example, the narrowing unit 139 selects the longest common subsequence in the log group with the smallest variance value calculated by the calculation unit 138, among the log groups with the longest longest common subsequence extracted by the extraction unit 136, as an attack are output as trace candidates (attack candidates).
  • the narrowing unit 139 selects the longest common subsequence in the log group extracted by the extraction unit 136 as an attack candidate. output as According to the extraction device 10 described above, attack candidates can be extracted with high accuracy.
  • the log collection unit 131 collects logs to be processed from a computer to be investigated via the input/output unit 11 (S101).
  • the time series unit 132 arranges the logs collected in S101 in time series (S102).
  • the DB registration unit 133 registers the logs rearranged in S102 in the DB (S103).
  • the rule conversion unit 134 reads out the rule in the storage unit 12 and converts the rule into a DB query (S104). Then, the DB search unit 135 extracts a log group from the DB using the query converted in S104 (S105). That is, the DB search unit 135 extracts from the DB a log group that matches the signature indicated by the rule.
  • the extracting unit 136 extracts from the log group extracted in S105 the longest common subsequence between the sequence of signatures corresponding to the logs constituting the log group and the sequence of signatures indicated in the rule.
  • a log group is extracted (S106).
  • the determination unit 137 determines whether or not there are a plurality of log groups having the longest longest common subsequence extracted in S106 (S107). The longest common subsequence in the obtained log group is output as an attack candidate (S108).
  • the calculation unit 138 calculates the log groups extracted in S106. For each log group, the variance value of the time difference between each log in the log group is calculated (S109). Then, the narrowing-down unit 139 outputs, as an attack candidate, the longest common subsequence in the log group with the smallest variance calculated in S109 among the log groups extracted in S106 (S110). By doing so, the extraction device 10 can accurately extract attack candidates.
  • the narrowing unit 139 outputs, as an attack candidate, the longest common subsequence in the log group having the longest longest common subsequence with the sequence of signatures indicated in the rule, but is not limited to this.
  • the narrowing-down unit 139 may output not only the above longest common subsequence but also a log group (including time information of each log) having the longest longest common subsequence as an attack candidate. By doing so, the user of the extraction device 10 can analyze the content of the attack candidate in more detail.
  • the extraction device 10 arranges the logs acquired from the computer in chronological order, and then extracts the log group having the longest longest common subsequence with the sequence of signatures indicated in the rule. is not limited to this.
  • the extraction device 10 extracts a group of logs that match one of the signatures indicated in the rule from among the logs acquired from the computer, and then rearranges them in chronological order. Then, the extraction device 10 may extract a log group having the longest longest common subsequence between the sequence of signatures matching the chronologically rearranged logs and the sequence of signatures indicated in the rule.
  • each constituent element of each part shown in the figure is functionally conceptual, and does not necessarily need to be physically configured as shown in the figure.
  • the specific form of distribution and integration of each device is not limited to the illustrated one, and all or part of them can be functionally or physically distributed and integrated in arbitrary units according to various loads and usage conditions. Can be integrated and configured.
  • all or any part of each processing function performed by each device can be implemented by a CPU and a program executed by the CPU, or implemented as hardware based on wired logic.
  • the extraction device 10 described above can be implemented by installing a program as package software or online software on a desired computer.
  • the information processing device can function as the extraction device 10 by causing the information processing device to execute the above program.
  • the information processing apparatus referred to here includes a desktop or notebook personal computer.
  • information processing devices include mobile communication terminals such as smartphones, mobile phones and PHS (Personal Handyphone Systems), and terminals such as PDAs (Personal Digital Assistants).
  • the extraction device 10 can also be implemented as a server device that uses a terminal device used by a user as a client and provides the client with services related to the above processing.
  • the server device may be implemented as a web server, or may be implemented as a cloud that provides services related to the above processing by outsourcing.
  • FIG. 7 is a diagram showing an example of a computer that executes an extraction program.
  • the computer 1000 has a memory 1010 and a CPU 1020, for example.
  • Computer 1000 also has hard disk drive interface 1030 , disk drive interface 1040 , serial port interface 1050 , video adapter 1060 and network interface 1070 . These units are connected by a bus 1080 .
  • the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM (Random Access Memory) 1012 .
  • the ROM 1011 stores a boot program such as BIOS (Basic Input Output System).
  • BIOS Basic Input Output System
  • Hard disk drive interface 1030 is connected to hard disk drive 1090 .
  • a disk drive interface 1040 is connected to the disk drive 1100 .
  • a removable storage medium such as a magnetic disk or optical disk is inserted into the disk drive 1100 .
  • Serial port interface 1050 is connected to mouse 1110 and keyboard 1120, for example.
  • Video adapter 1060 is connected to display 1130, for example.
  • the hard disk drive 1090 stores, for example, an OS 1091, application programs 1092, program modules 1093, and program data 1094. That is, the program defining each process executed by the extraction device 10 is implemented as a program module 1093 in which computer-executable code is described. Program modules 1093 are stored, for example, on hard disk drive 1090 .
  • the hard disk drive 1090 stores a program module 1093 for executing processing similar to the functional configuration of the extraction device 10 .
  • the hard disk drive 1090 may be replaced by an SSD (Solid State Drive).
  • the data used in the processes of the above-described embodiments are stored as program data 1094 in the memory 1010 or the hard disk drive 1090, for example. Then, the CPU 1020 reads out the program modules 1093 and program data 1094 stored in the memory 1010 and the hard disk drive 1090 to the RAM 1012 as necessary and executes them.
  • the program modules 1093 and program data 1094 are not limited to being stored in the hard disk drive 1090, but may be stored in a removable storage medium, for example, and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program modules 1093 and program data 1094 may be stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.). Program modules 1093 and program data 1094 may then be read by CPU 1020 through network interface 1070 from other computers.
  • LAN Local Area Network
  • WAN Wide Area Network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

抽出装置(10)は、調査対象のコンピュータのログ群を収集する。そして、抽出装置(10)は、コンピュータへの攻撃を示す複数のシグネチャを攻撃に特徴的な順序に並べたルールを参照して、上記の収集したデータから、いずかのシグネチャにマッチするログ群を抽出する。次に、抽出装置(10)は、抽出されたログ群の各ログがマッチするシグネチャの時系列での並びとルールに示されるシグネチャの並びとの最長共通部分列が最長となるログ群を抽出する。その後、抽出装置(10)は、ルールに示されるシグネチャの並びとの最長共通部分列が最長となるログ群それぞれについて、当該ログ群における時系列で隣接する各ログ間の時刻差の分散値を算出する。そして、抽出装置(10)は、抽出したログ群のうち、上記の分散値が最も小さいログ群における最長共通部分列を攻撃の痕跡の候補として出力する。

Description

抽出装置、抽出方法、および、抽出プログラム
 本発明は、攻撃の痕跡を示すログを抽出するための、抽出装置、抽出方法、および、抽出プログラムに関する。
 近年、コンピュータフォレンジック調査において、攻撃の特徴を示すシグネチャを用いて、PC(Personal Computer)のログから攻撃の痕跡を示すログを抽出することが行われている(非特許文献1参照)。
Sigma-Generic Signatures for SIEM Systems、[2021年4月22日検索]、インターネット<URL:https://www.slideshare.net/secret/gvgxeXoKblXRcA>
 しかし、従来のシグネチャを用いて攻撃の痕跡を示すログを抽出する方法は、攻撃以外の通常の操作で出力されるようなログが抽出されることもある。そこで、本発明は、前記した問題を解決し、攻撃の痕跡を精度よく抽出することを課題とする。
 前記した課題を解決するため、本発明は、調査対象のコンピュータのログを収集するログ収集部と、コンピュータへの攻撃を示す複数のシグネチャを攻撃に特徴的な順序に並べたルールを参照して、前記収集したログから、前記ルールに示されるいずれかのシグネチャにマッチするログ群を抽出する第1の抽出部と、前記抽出されたログ群の各ログがマッチするシグネチャの時系列での並びと、前記ルールに示される複数のシグネチャの並びとの最長共通部分列が最長となるログ群を抽出する第2の抽出部と、前記最長共通部分列が最長となるログ群それぞれについて、前記ログ群において時系列で隣接する各ログ間の時刻差の分散値を算出する算出部と、前記算出した分散値が最小となるログ群における前記最長共通部分列を攻撃の候補として出力する出力処理部とを備えることを特徴とする。
 本発明によれば、攻撃の痕跡を精度よく抽出することができる。
図1は、抽出装置の概要を説明するための図である。 図2は、抽出装置の概要を説明するための図である。 図3は、抽出装置の構成例を示す図である。 図4は、図3のルールに用いられるシグネチャの例を示す図である。 図5は、図3のルールの例を示す図である。 図6は、抽出装置の処理手順の例を示すフローチャートである。 図7は、抽出プログラムを実行するコンピュータの例を示す図である。
 以下、図面を参照しながら、本発明を実施するための形態(実施形態)について説明する。本発明は以下に説明する実施形態に限定されない。
[概要]
 まず、図1および図2を用いて、本実施形態の抽出装置の概要を説明する。まず、抽出装置は、事前にコンピュータへの攻撃を示す複数のシグネチャを、攻撃に特徴的な順序に並べたルール(図1の符号101参照)を用意しておく。
 次に、抽出装置は、調査対象のコンピュータのログ群を時系列に並べ、ルールに示される各シグネチャにマッチするログ群(符号102参照)を抽出する。次に、抽出装置は、抽出したログ群のログがマッチするシグネチャの並びと、ルールに示されるシグネチャの並びとの最長共通部分列が最長となるログ群を抽出する(符号103~符号105参照)。
 ここで、図1の符号103~符号105に示すように、ルールに示されるシグネチャの並びとの最長共通部分列が最長となるログ群が複数である場合、抽出装置は、ログ群それぞれについて、当該ログ群において時系列で隣接する各ログ間の時刻差の分散値を算出する。
 例えば、抽出装置は、ルールに示されるシグネチャの並びとの最長共通部分列が最長となるログ群が、図2の符号103に示すログ群である場合、当該ログ群において時系列で隣接する各ログ間の時刻差は「2:00、1:00、3:00」である(符号201参照)。よって、抽出装置は、「2:00、1:00、3:00」の分散値を算出する。例えば、抽出装置は、「2:00、1:00、3:00」を秒に変換し、秒に変換した値(「120、60、180」)の分散値を算出する。
 抽出装置は、上記の分散値の算出を、ルールに示されるシグネチャの並びとの最長共通部分列が最長となる他のログ群についても実行し、分散値が最小のログ群における最長共通部分列を攻撃の候補として出力する。例えば、図1の符号103~105に示すログ群のうち、符号103に示すログ群の分散値が最小である場合、抽出装置は、当該ログ群における最長共通部分列(シグネチャAにマッチ→シグネチャBにマッチ→シグネチャCにマッチ→シグネチャDにマッチ)を攻撃の痕跡の候補として出力する。
 このような抽出装置によれば、調査対象のコンピュータのログから、ルールに示される一連のシグネチャとの最長共通部分列が最長となる一連の攻撃を、攻撃の候補として抽出することができる。これにより、抽出装置は、調査対象のコンピュータのログから、攻撃の痕跡の候補を精度よく抽出することができる。
[構成例]
 次に、図3を用いて抽出装置10の構成例を説明する。抽出装置10は、入出力部11と、記憶部12と、制御部13とを備える。
 入出力部11は、各種データの入出力を司るインタフェースである。例えば、入出力部11は、調査対象となるコンピュータのログの入力を受け付けたり、攻撃の痕跡の候補を出力したりする。
 記憶部12は、ルールを記憶する。このルールは、コンピュータへの攻撃を示す複数のシグネチャを、攻撃に特徴的な順序に並べたものである(図1の符号101参照)。
 シグネチャは、コンピュータが攻撃を受けた際に、当該コンピュータにより記録されるログの特徴を示したものである。例えば、シグネチャは、コンピュータにおけるマルウェアの動作を示したものである(図4参照)。
 ルールは、例えば、図5に示すように、各シグネチャに対し、攻撃に特徴的な順序を示す値を付与することにより記述される。ここで各シグネチャに付与される順序を示す値は、同じ値のものがあってもよい。また、シグネチャの中に順序を示す値が付与されていないシグネチャがあってもよい。
 図3の説明に戻る。また、記憶部12はDBを備える。このDBには、DB登録部133により登録されたログ(調査対象のコンピュータのログを時系列で並べたもの)が記憶される。
 制御部13は、抽出装置10全体の制御を司る。この制御部13は、ログ収集部131と、時系列化部132と、DB登録部133と、ルール変換部134と、DB検索部(第1の抽出部)135と、抽出部(第2の抽出部)136と、判定部137と、算出部138と、絞り込み部(出力処理部)139とを備える。
 ログ収集部131は、調査対象のコンピュータからログを収集する。例えば、ログ収集部131は、調査対象のコンピュータからイベントログ、レジストリ、ファイル操作履歴等を収集する。例えば、ログ収集部131は、CDIR-C(Cyber Defense Institute Incident Response Collector)等により、上記のログを収集する。
 時系列化部132は、ログ収集部131により収集されたログを時系列に並べ替える。DB登録部133は、時系列化部132により時系列に並べ替えられたログをDBに登録する。
 ルール変換部134は、ルールに記載されたシグネチャを、当該シグネチャにマッチするログを検索するための検索クエリに変換する。DB検索部135は、ルール変換部134により変換された検索クエリを用いて、DB内のログを検索する。つまり、DB検索部135は、ルールに示されるシグネチャにマッチするログ群をDBから抽出する。例えば、DB検索部135は、図1の符号101に示す各シグネチャにマッチするログ群を、DBから抽出する(図1の符号102参照)。
 図3の説明に戻る。抽出部136は、DB検索部135により検索されたログ群から、当該ログ群における各ログがマッチするシグネチャの時系列での並びに基づき、ルールに示されるシグネチャの並びとの最長共通部分列が最長となるログ群を抽出する。例えば、抽出部136は、図1の符号102に示すログ群から、図1の符号101に示すシグネチャの並びとの最長部分文字列が最長となるログ群を抽出する(図1の符号103~符号105参照)。
 図3の説明に戻る。判定部137は、抽出部136により抽出された、最長共通部分列が最長となるログ群が複数あるか否かを判定する。判定部137により、最長共通部分列が最長となるログ群が複数あると判定された場合、算出部138は、最長共通部分列が最長となるログ群それぞれについて、当該ログ群において時系列で隣接する各ログ間の時刻差の分散値を算出する。
 例えば、算出部138は、図1の符号103に示す、最長共通部分列が最長となるログ群について、当該ログ群において時系列で隣接する各ログ間の時刻差の分散値を算出する(図2の符号201参照)。また、算出部138は、図1の符号104,105に示すログ群についても同様に、当該ログ群において時系列で隣接する各ログ間の時刻差の分散値を算出する。
 図3の説明に戻る。絞り込み部139は、攻撃の痕跡の候補の絞り込みを行う。例えば、絞り込み部139は、抽出部136により抽出された、最長共通部分列が最長となるログ群のうち、算出部138により算出された分散値が最も小さいログ群における最長共通部分列を、攻撃の痕跡の候補(攻撃の候補)として出力する。
 なお、抽出部136により抽出された最長共通部分列が最長となるログ群が1つのみである場合、絞り込み部139は、抽出部136により抽出されたログ群における最長共通部分列を攻撃の候補として出力する。以上説明した抽出装置10によれば、攻撃の候補を精度よく抽出することができる。
[処理手順の例]
 次に、図6を用いて、抽出装置10の処理手順の例を説明する。まず、ログ収集部131は、入出力部11経由で、調査対象のコンピュータから処理対象のログを収集する(S101)。次に、時系列化部132は、S101で収集されたログを時系列に並べる(S102)。そして、DB登録部133は、S102で並べ替えられたログをDBに登録する(S103)。
 また、ルール変換部134は、記憶部12のルールを読み出し、当該ルールをDBのクエリに変換する(S104)。そして、DB検索部135は、S104で変換されたクエリでDBからログ群を抽出する(S105)。つまり、DB検索部135は、ルールに示されるシグネチャにマッチするログ群をDBから抽出する。
 S105の後、抽出部136は、S105で抽出されたログ群から、当該ログ群を構成するログに対応するシグネチャの並びと、ルールに示されるシグネチャの並びとの最長共通部分列が最長となるログ群を抽出する(S106)。
 S106の後、判定部137は、S106で抽出された最長共通部分列が最長となるログ群が複数あるか否かを判定し(S107)、複数ない場合(S107でNo)、S106で抽出されたログ群における最長共通部分列を攻撃の候補として出力する(S108)。
 一方、S107で、判定部137が、S106で抽出された最長共通部分列が最長となるログ群が複数あると判定した場合(S107でYes)、算出部138は、S106で抽出されたログ群ごとに、当該ログ群の各ログ間の時刻差の分散値を算出する(S109)。そして、絞り込み部139は、S106で抽出されたログ群のうち、S109で算出した分散値が最小のログ群における最長共通部分列を、攻撃の候補として出力する(S110)。このようにすることで抽出装置10は、攻撃の候補を精度よく抽出することができる。
[その他の実施形態]
 なお、絞り込み部139は、ルールに示されるシグネチャの並びとの最長共通部分列が最長となるログ群における最長共通部分列を攻撃の候補として出力することとしたが、これに限定されない。例えば、絞り込み部139は、攻撃の候補として、上記の最長共通部分列のみならず、最長共通部分列が最長となるログ群(各ログの時刻情報を含む)も出力してもよい。このようにすることで、抽出装置10のユーザは、攻撃の候補の内容を、より詳細に分析することができる。
 また、前記した実施形態において、抽出装置10は、コンピュータから取得したログを時系列に並べてから、ルールに示されるシグネチャの並びとの最長共通部分列が最長となるログ群を抽出することとしたがこれに限定されない。
 例えば、抽出装置10は、コンピュータから取得したログのうち、ルールに示されるいずれかのシグネチャにマッチするログ群を抽出した後、時系列に並べ替える。そして、抽出装置10は、時系列に並べ替えたログがマッチするシグネチャの並びと、ルールに示されるシグネチャの並びとの最長共通部分列が最長となるログ群を抽出してもよい。
[システム構成等]
 また、図示した各部の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
 また、前記した実施形態において説明した処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
 前記した抽出装置10は、パッケージソフトウェアやオンラインソフトウェアとしてプログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記のプログラムを情報処理装置に実行させることにより、情報処理装置を抽出装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等の端末等がその範疇に含まれる。
 また、抽出装置10は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の処理に関するサービスを提供するサーバ装置として実装することもできる。この場合、サーバ装置は、Webサーバとして実装することとしてもよいし、アウトソーシングによって上記の処理に関するサービスを提供するクラウドとして実装することとしてもかまわない。
 図7は、抽出プログラムを実行するコンピュータの例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
 メモリ1010は、ROM(Read Only Memory)1011及びRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
 ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記の抽出装置10が実行する各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、抽出装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
 また、上述した実施形態の処理で用いられるデータは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
 なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続される他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10 抽出装置
11 入出力部
12 記憶部
13 制御部
131 ログ収集部
132 時系列化部
133 DB登録部
134 ルール変換部
135 DB検索部
136 抽出部
137 判定部
138 算出部
139 絞り込み部

Claims (7)

  1.  調査対象のコンピュータのログを収集するログ収集部と、
     コンピュータへの攻撃を示す複数のシグネチャを攻撃に特徴的な順序に並べたルールを参照して、前記収集したログから、前記ルールに示されるいずれかのシグネチャにマッチするログ群を抽出する第1の抽出部と、
     前記抽出されたログ群の各ログがマッチするシグネチャの時系列での並びと、前記ルールに示される複数のシグネチャの並びとの最長共通部分列が最長となるログ群を抽出する第2の抽出部と、
     前記最長共通部分列が最長となるログ群それぞれについて、前記ログ群において時系列で隣接する各ログ間の時刻差の分散値を算出する算出部と、
     前記算出した分散値が最小となるログ群における前記最長共通部分列を攻撃の痕跡の候補として出力する出力処理部と
    を備えることを特徴とする抽出装置。
  2.  前記最長共通部分列の長さは、
     前記ルールに示されるいずれかのシグネチャにマッチするログ群を時系列に並び替えたときのシグネチャの並びと、前記ルールに示される複数のシグネチャの並びとの最長共通部分列の長さ
     であることを特徴とする請求項1に記載の抽出装置。
  3.  前記最長共通部分列が最長となるログ群が複数あるか否かを判定する判定部をさらに備え、
     前記判定部により、前記最長共通部分列が最長となるログ群が複数あると判定された場合、前記算出部は、前記最長共通部分列が最長となるログ群それぞれについて、前記ログ群において時系列で隣接する各ログ間の時刻差の分散値を算出する
     ことを特徴とする請求項1に記載の抽出装置。
  4.  前記判定部により、前記最長共通部分列が最長となるログ群が複数ないと判定された場合、
     前記出力処理部は、前記最長共通部分列が最長となるログ群における前記最長共通部分列を攻撃の痕跡の候補として出力する
     ことを特徴とする請求項3に記載の抽出装置。
  5.  前記出力処理部は、さらに、
     前記算出した分散値が最小となるログ群を出力する
     ことを特徴とする請求項1に記載の抽出装置。
  6.  抽出装置により実行される抽出方法であって、
     調査対象のコンピュータのログを収集する工程と、
     コンピュータへの攻撃を示す複数のシグネチャを攻撃に特徴的な順序に並べたルールを参照して、前記収集したログから、前記ルールに示されるいずれかのシグネチャにマッチするログ群を抽出する工程と、
     前記抽出されたログ群の各ログがマッチするシグネチャの時系列での並びと、前記ルールに示される複数のシグネチャの並びとの最長共通部分列が最長となるログ群を抽出する工程と、
     前記最長共通部分列が最長となるログ群それぞれについて、前記ログ群において時系列で隣接する各ログ間の時刻差の分散値を算出する工程と、
     前記算出した分散値が最小となるログ群における前記最長共通部分列を攻撃の痕跡の候補として出力する工程と
    を含むことを特徴とする抽出方法。
  7.  調査対象のコンピュータのログを収集する工程と、
     コンピュータへの攻撃を示す複数のシグネチャを攻撃に特徴的な順序に並べたルールを参照して、前記収集したログから、前記ルールに示されるいずれかのシグネチャにマッチするログ群を抽出する工程と、
     前記抽出されたログ群の各ログがマッチするシグネチャの時系列での並びと、前記ルールに示される複数のシグネチャの並びとの最長共通部分列が最長となるログ群を抽出する工程と、
     前記最長共通部分列が最長となるログ群それぞれについて、前記ログ群において時系列で隣接する各ログ間の時刻差の分散値を算出する工程と、
     前記算出した分散値が最小となるログ群における前記最長共通部分列を攻撃の痕跡の候補として出力する工程と
     をコンピュータに実行させるための抽出プログラム。
PCT/JP2021/018049 2021-05-12 2021-05-12 抽出装置、抽出方法、および、抽出プログラム Ceased WO2022239147A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2023520655A JP7509318B2 (ja) 2021-05-12 2021-05-12 抽出装置、抽出方法、および、抽出プログラム
PCT/JP2021/018049 WO2022239147A1 (ja) 2021-05-12 2021-05-12 抽出装置、抽出方法、および、抽出プログラム
US18/558,361 US20240220611A1 (en) 2021-05-12 2021-05-12 Extracting device, extracting method, and extracting program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/018049 WO2022239147A1 (ja) 2021-05-12 2021-05-12 抽出装置、抽出方法、および、抽出プログラム

Publications (1)

Publication Number Publication Date
WO2022239147A1 true WO2022239147A1 (ja) 2022-11-17

Family

ID=84028027

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/018049 Ceased WO2022239147A1 (ja) 2021-05-12 2021-05-12 抽出装置、抽出方法、および、抽出プログラム

Country Status (3)

Country Link
US (1) US20240220611A1 (ja)
JP (1) JP7509318B2 (ja)
WO (1) WO2022239147A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016147944A1 (ja) * 2015-03-18 2016-09-22 日本電信電話株式会社 マルウェア感染端末の検出装置、マルウェア感染端末の検出システム、マルウェア感染端末の検出方法およびマルウェア感染端末の検出プログラム
WO2018159362A1 (ja) * 2017-03-03 2018-09-07 日本電信電話株式会社 ログ分析装置、ログ分析方法およびログ分析プログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120137367A1 (en) * 2009-11-06 2012-05-31 Cataphora, Inc. Continuous anomaly detection based on behavior modeling and heterogeneous information analysis
TWI419003B (zh) * 2010-11-12 2013-12-11 Univ Nat Chiao Tung 自動化分析與分類惡意程式之方法及系統
US8839435B1 (en) * 2011-11-04 2014-09-16 Cisco Technology, Inc. Event-based attack detection
JP5946423B2 (ja) * 2013-04-26 2016-07-06 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation システム・ログの分類方法、プログラム及びシステム
US9344441B2 (en) * 2014-09-14 2016-05-17 Cisco Technology, Inc. Detection of malicious network connections
US9043894B1 (en) * 2014-11-06 2015-05-26 Palantir Technologies Inc. Malicious software detection in a computing system
US10230744B1 (en) * 2016-06-24 2019-03-12 EMC IP Holding Company LLC Detecting periodic behavior in a communication session using clustering
JP6719492B2 (ja) * 2018-02-26 2020-07-08 三菱電機株式会社 ルール生成装置およびルール生成プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016147944A1 (ja) * 2015-03-18 2016-09-22 日本電信電話株式会社 マルウェア感染端末の検出装置、マルウェア感染端末の検出システム、マルウェア感染端末の検出方法およびマルウェア感染端末の検出プログラム
WO2018159362A1 (ja) * 2017-03-03 2018-09-07 日本電信電話株式会社 ログ分析装置、ログ分析方法およびログ分析プログラム

Also Published As

Publication number Publication date
JPWO2022239147A1 (ja) 2022-11-17
US20240220611A1 (en) 2024-07-04
JP7509318B2 (ja) 2024-07-02

Similar Documents

Publication Publication Date Title
RU2722692C1 (ru) Способ и система выявления вредоносных файлов в неизолированной среде
EP2998884B1 (en) Security information management system and security information management method
US9621571B2 (en) Apparatus and method for searching for similar malicious code based on malicious code feature information
JP6106340B2 (ja) ログ分析装置、攻撃検知装置、攻撃検知方法およびプログラム
US9003529B2 (en) Apparatus and method for identifying related code variants in binaries
JP6697123B2 (ja) プロファイル生成装置、攻撃検知装置、プロファイル生成方法、および、プロファイル生成プログラム
CN106503558A (zh) 一种基于社团结构分析的Android恶意代码检测方法
RU2728497C1 (ru) Способ и система определения принадлежности программного обеспечения по его машинному коду
JPWO2017018377A1 (ja) 分析方法、分析装置、および分析プログラム
KR102289408B1 (ko) 해시 코드 기반의 검색 장치 및 검색 방법
KR102289395B1 (ko) 자카드 모델 기반의 문서 검색 장치 및 방법
JP6691240B2 (ja) 判定装置、判定方法、および、判定プログラム
CN113886821A (zh) 基于孪生网络的恶意进程识别方法、装置、电子设备及存储介质
JP7509318B2 (ja) 抽出装置、抽出方法、および、抽出プログラム
CN114048136A (zh) 测试类型确定方法、装置、服务器、介质及产品
JP2019175334A (ja) 情報処理装置、制御方法、及びプログラム
JP7652253B2 (ja) 判定装置、判定方法および判定プログラム
WO2022219792A1 (ja) 収集装置、収集方法、および、収集プログラム
JP6518000B2 (ja) 分析装置、分析方法および分析プログラム
US12609948B2 (en) Extracting device, extracting method, and extracting program
US20210344697A1 (en) Detection device and detection program
Xiao et al. Matching similar functions in different versions of a malware
JP5477139B2 (ja) 情報検索システム、情報検索方法およびプログラム
JP6386415B2 (ja) ログ管理方法、および、ログ管理システム
WO2025182920A1 (ja) 判定装置、判定方法、および、判定プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21941881

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023520655

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 18558361

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21941881

Country of ref document: EP

Kind code of ref document: A1