WO2015141560A1 - トラヒック特徴情報抽出方法、トラヒック特徴情報抽出装置及びトラヒック特徴情報抽出プログラム - Google Patents

トラヒック特徴情報抽出方法、トラヒック特徴情報抽出装置及びトラヒック特徴情報抽出プログラム Download PDF

Info

Publication number
WO2015141560A1
WO2015141560A1 PCT/JP2015/057370 JP2015057370W WO2015141560A1 WO 2015141560 A1 WO2015141560 A1 WO 2015141560A1 JP 2015057370 W JP2015057370 W JP 2015057370W WO 2015141560 A1 WO2015141560 A1 WO 2015141560A1
Authority
WO
WIPO (PCT)
Prior art keywords
traffic
feature information
unit
regular expression
traffic log
Prior art date
Application number
PCT/JP2015/057370
Other languages
English (en)
French (fr)
Inventor
大紀 千葉
毅 八木
佐藤 徹
和憲 神谷
健介 中田
Original Assignee
日本電信電話株式会社
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 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to JP2016508686A priority Critical patent/JP6053091B2/ja
Priority to US15/120,933 priority patent/US10721244B2/en
Publication of WO2015141560A1 publication Critical patent/WO2015141560A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1491Countermeasures against malicious traffic using deception as countermeasure, e.g. honeypots, honeynets, decoys or entrapment

Definitions

  • Measures to be implemented on the terminal and measures to be implemented on the network are being examined as cyber attack countermeasures.
  • measures to be implemented on the terminal methods using anti-virus software and methods using host type IDS (Intrusion Detection System) and host type IPS (Intrusion Prevention System) are being studied.
  • the measures implemented on the terminal are implemented by installing software on the terminal.
  • information on communications related to attacks is collected for both measures implemented on these terminals and measures implemented on the network.
  • a decoy system called a honeypot collects communication partners and communication contents of malware infection attacks and other cyber attacks, or a malware analysis system called a sandbox actually operates malware to communicate with malware communication partners and communications. Collect contents.
  • the communication partner and the communication content of communication determined as an attack by the spam mail countermeasure system or the DDoS countermeasure system are collected.
  • feature information is extracted from communication information related to the attack. At this time, in many cases, feature information is automatically extracted from communication information related to an attack using existing techniques such as machine learning.
  • the communication information related to the attack is obtained from the date and time, the IP (Internet Protocol) address of the communication partner, the port number used during communication, and the communication within a certain time.
  • the number of times and the amount of communication are classified for each predetermined item and aggregated. At this time, observed values are often input for the date and port number, but statistical values such as average values, standard deviations, and variance values may be input for the number of communication times and the communication amount.
  • the classified and aggregated values are calculated, for example, when a statistical outlier is searched and an outlier is found, the communication related to the value is determined as an attack, and the outlier of the item is attacked.
  • the value in the item is specified as characteristic information found in an attack.
  • FIG. 1 is a diagram illustrating a configuration example of a network system including an information collection and distribution server according to the first embodiment.
  • FIG. 2 is a diagram illustrating an example of traffic log items according to the first embodiment.
  • FIG. 3 is a diagram illustrating an example of a traffic log item according to the first embodiment.
  • FIG. 4 is a diagram illustrating an example of items in the regular expression pattern table according to the first embodiment.
  • FIG. 5 is a diagram illustrating an example of items in the word list table according to the first embodiment.
  • FIG. 6 is a diagram illustrating an example of items in the destination information table according to the first embodiment.
  • FIG. 7 is a flowchart showing the flow of overall processing by the information collection and distribution server according to the first embodiment.
  • FIG. 1 is a diagram illustrating a configuration example of a network system including an information collection and distribution server according to the first embodiment.
  • FIG. 2 is a diagram illustrating an example of traffic log items according to the first embodiment.
  • FIG. 3 is a diagram
  • the network 2 is a network provided for analyzing a malware infection attack, and includes, for example, a trap server 14, a trap terminal 15, a terminal sandbox 16, and a server sandbox 17.
  • a trap server 14 and the cocoon terminal 15 an open source honeypot provided by the honeynet project or an independently developed honeypot can be applied.
  • an open source honeypot provided by the honeynet project or an independently developed honeypot can be applied.
  • the terminal type sandbox 16 and the server type sandbox 17 open source software from a product represented by FireEye or a sandbox developed independently can be applied.
  • the communication monitoring unit 22 and the communication monitoring unit 23 have specific information and have a function of detecting communication that matches the information, or block the communication or transfer it to another additional function. May be provided.
  • the attack characteristics are stored as specific information and the communication that matches the information is used as an attack, the attack detection function is provided, or the attack is blocked or another addition called quarantine. There is a case where a function to transfer to a function is provided.
  • the traffic log collected by the communication monitoring unit 24 may be applicable as a benign traffic log.
  • the notation method of each item may differ depending on the devices and software. Security Information and Event Management) Technology that aggregates log information indicated in different notation into a unified notation method has become widespread.
  • FIG. 2 is a diagram illustrating an example of traffic log items according to the first embodiment.
  • FIG. 2 shows an example of traffic log items generated by malware.
  • the traffic logs that can be collected vary depending on the software and equipment. For example, when pcap data can be stored, a large amount of information can be collected. On the proxy server, HTTP header data can be recorded. However, data that can be normally observed in network devices such as routers and switches are IP addresses, In many cases, it is limited to the number of frames and packets for each port number.
  • Serial number indicates the order of entries recorded as a traffic log. For example, “serial number” stores a data value such as “1” indicating that the entry is recorded first and “2” indicating that the entry is recorded second.
  • the “malware identifier” indicates an identifier indicating which malware specimen is causing the traffic. As this malware identifier, there is a case where a hash value uniquely determined for the malware specimen is given, or information from a separate management table is given. For example, data values such as “M1” and “M2” are stored in the “malware identifier”.
  • “Communication source IP address” indicates the IP address of the communication source of the packet. For example, data values such as “10.0.0.1” and “10.0.0.2” are stored in “communication source IP address”. “Communication destination IP address” indicates the IP address of the communication destination of the packet. For example, data values such as “198.51.100.98” and “192.0.2.100” are stored in “communication destination IP address”.
  • source port indicates the source port that transmitted the packet. For example, data values such as “51234” and “50032” are stored in “transmission source port”.
  • destination port indicates the destination port of the packet. For example, data values such as “80” and “60320” are stored in “destination port”.
  • the entry of the traffic log whose “serial number” is “1” is a traffic log generated by the malware identifier “M1”, and the IP address “10.0.0. 1 ”is the communication source, and the IP address“ 198.51.100.98 ”is the communication destination.
  • each item recorded as a traffic log in the protection target network is the same as each item recorded as a traffic log generated by malware.
  • the recorded item examples are not limited to those shown in FIG.
  • “sequential number”, “malware identifier”, “source IP address”, “destination IP address”, “source port”, “destination port”, and “URL” Other items that can specify the communication destination may be recorded.
  • “sequential number”, “malware identifier”, “source IP address”, “destination IP address”, “source port”, “destination port”, “URL”, source and destination Any of other identifiable items may be recorded.
  • the information collection / distribution server 30 includes a log collection unit 31, a traffic feature information extraction / contrast unit 32, a feature information collection / distribution unit 33, and a storage unit 34.
  • the storage unit 34 is, for example, a storage device such as a semiconductor memory element or a hard disk, and includes a regular expression pattern table 34a, a word list table 34b, and a destination information table 34c.
  • the word list table 34b stores information in which “serial numbers” and “words” are associated with each other.
  • the “sequential number” stored in the word list table 34b indicates identification information of an entry stored in the word list table 34b. For example, data values such as “1” and “2” are stored in “serial number”.
  • the specifying unit 32e outputs the comparison result between the traffic characteristic information and the traffic log of the protection target network (step S705).
  • the specifying unit 32e outputs the result shown in FIG. 21 as a result of specifying the transmission source host.
  • the word list table 34b calculates a statistical value of an item used in the communication protocol stack in a traffic log generated by malware, and extracts an arbitrary character string included in an item for which the calculated statistical value is equal to or greater than a threshold value. It is generated by doing.
  • FIG. 22 is a flowchart showing a procedure of word list generation processing by the regular expression unit 32a of the information collection / delivery server 30 according to the first embodiment.
  • FIG. 22 shows an example of creating a word list from the traffic log shown in FIG.
  • the regular expression unit 32a inputs a traffic log generated by the malware shown in FIG. 2 (step S201).
  • the regular expression unit 32a determines whether or not this statistical value is equal to or greater than a predetermined threshold value (step S204). Here, if the regular expression unit 32a does not determine that the statistical value is equal to or greater than a predetermined threshold value (No in step S204), the regular expression unit 32a ends the process. On the other hand, if the regular expression unit 32a determines that the statistical value is equal to or greater than a predetermined threshold (Yes in step S204), the regular expression unit 32a extracts the character string as a word (step S205) and outputs the extracted word as a word list. (Step S206). For example, the regular expression unit 32a extracts the serial numbers 1, 3, and 233 in FIG. 2 as words.
  • each component of each illustrated apparatus is functionally conceptual and does not necessarily need to be physically configured as illustrated. That is, the specific form of distribution / integration of each device is not limited to the one shown in the figure, and all or a part of the distribution / integration may be functionally or physically distributed in arbitrary units according to various loads or usage conditions. Can be integrated and configured.
  • FIG. 23 is a diagram illustrating a computer 1000 that executes a traffic feature information extraction program.
  • the computer 1000 includes, for example, a memory 1010, a CPU 1020, a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These units are connected by a bus 1080.
  • the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM 1012.
  • the ROM 1011 stores a boot program such as BIOS (Basic Input Output System).
  • BIOS Basic Input Output System
  • the hard disk drive interface 1030 is connected to the hard disk drive 1031.
  • the disk drive interface 1040 is connected to the disk drive 1041.
  • a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1041.
  • a mouse 1051 and a keyboard 1052 are connected to the serial port interface 1050.
  • a display 1061 is connected to the video adapter 1060.
  • the hard disk drive 1031 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094.
  • the traffic feature information extraction program described in the above embodiment is stored in the hard disk drive 1031 or the memory 1010, for example.
  • program module 1093 and the program data 1094 related to the traffic feature information extraction program are not limited to being stored in the hard disk drive 1031, but are stored in a removable storage medium, for example, and the CPU 1020 via the disk drive 1041 or the like. May be read.
  • the program module 1093 and the program data 1094 related to the traffic feature information extraction program are stored in another computer connected via a network such as a LAN or a WAN (Wide Area Network), and are executed by the CPU 1020 via the network interface 1070. It may be read out.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Virology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

 トラヒック特徴情報抽出方法は、正規表現化工程(32a)と、クラスタリング工程(32b)と、特徴情報抽出工程(32c)とを含んだことを特徴とする。正規表現化工程(32a)は、トラヒックログから予め設定した項目を抽出し、項目に含まれる部分文字列について、所定の規則に基づいて正規表現化する。クラスタリング工程(32b)は、正規表現化したトラヒックログのエントリをクラスタリングする。特徴情報抽出工程(32c)は、クラスタリングしたトラヒックログに含まれるエントリ間の距離の総和が最小となるエントリを各クラスタのトラヒック特徴情報として抽出する。

Description

トラヒック特徴情報抽出方法、トラヒック特徴情報抽出装置及びトラヒック特徴情報抽出プログラム
 本発明は、トラヒック特徴情報抽出方法、トラヒック特徴情報抽出装置及びトラヒック特徴情報抽出プログラムに関する。
 インターネットの普及に伴い、DDoS(Distributed Denial of Service)攻撃やスパムメール送信などのサイバー攻撃が急増している。これらの攻撃のほとんどは、マルウェアと呼ばれる悪意あるソフトウェアに起因している。攻撃者は、一般ユーザの端末やサーバをマルウェアに感染させ、マルウェアを操作することで端末やサーバを不正に制御し、情報収集や新たな攻撃を実施している。これらの攻撃は近年社会問題化している。このため、マルウェア感染を中心としたサイバー攻撃への対策が急務となっている。
 サイバー攻撃対策としては、端末上で実施する対策と、ネットワーク上で実施する対策とが検討されている。端末上で実施する対策としては、アンチウィルスソフトを用いる手法や、ホスト型IDS(Intrusion Detection System)やホスト型IPS(Intrusion Prevention System)を用いる手法が検討されている。端末上で実施する対策では、端末にソフトウェアをインストールすることで実施される。
 一方、ネットワーク上で実施する対策としては、ネットワーク型のIDSやIPS、ファイアウォール(Firewall)やWAF(Web Application Firewall)などを用いる手法が検討されている。ネットワーク上で実施する対策では、ネットワークの接続箇所に検査装置を配置する。また、近年では、端末や装置のログを分析して攻撃の痕跡を発見するSIEM(Security Information and Event Management)サービスなども実施されている。端末上で実施する対策及びネットワーク上で実施する対策のいずれにおいても、予め用意した既知の攻撃の特徴情報に基づいて対策を講じている。
 また、これらの端末上で実施する対策及びネットワーク上で実施する対策のいずれにおいても、攻撃に関わる通信の情報を収集する。例えば、ハニーポットと呼ばれるおとりのシステムでマルウェア感染攻撃やその他のサイバー攻撃の通信相手や通信内容を収集したり、サンドボックスと呼ばれるマルウェア解析システムでマルウェアを実際に動作させてマルウェアの通信相手や通信内容を収集したりする。また、スパムメール対策システムやDDoS対策システムで攻撃と判定された通信の通信相手や通信内容を収集したりする。さらに、攻撃に関わる通信の情報から、特徴情報を抽出する。この際、機械学習を初めとした既存の技術を用いて、攻撃に関わる通信の情報から特徴情報を自動的に抽出する場合が多い。
 攻撃に関わる通信の情報から特徴情報を自動的に抽出する手法では、攻撃に関わる通信の情報を、日時や通信相手のIP(Internet Protocol)アドレスや通信時に使用したポート番号や一定時間内の通信回数および通信量など、予め定めた項目毎に分類して集計する。この際、日時やポート番号には観測した値が入力されることが多いが、通信回数や通信量については平均値や標準偏差や分散値などの統計値が入力されることがある。分類され集計値が算出された後、例えば、統計的な外れ値を探索し、外れ値を発見した際には、当該値に関わる通信を攻撃と判定するとともに、当該項目の当該外れ値を攻撃検知のための規則とし、当該項目における当該値を、攻撃に見られる特徴情報であると特定する。
 さらに、発見した攻撃に関して、例えばIPアドレスをブラックリスト化し、当該IPアドレスを相手とした通信を攻撃と判定するための特徴情報とする場合もある。なお、通信相手の統一資源位置指定子(URL:Uniform Resource Locator)をブラックリスト化する場合もあるが、この際は、URLを正規表現でブラックリスト化する場合もある。
 なお、通常異なる装置やソフトウェアからトラヒックログやアラートを収集して通信相手や通信内容の情報を抽出する際、装置やソフトウェアに応じて各項目の表記方法が異なる場合がある。また、近年では、SIEM(Security Information and Event Management)製品として異なる表記で示されたログ情報を統一的な表記方法に変換して集計する技術も普及している。
R. Perdisci, W. Lee, and N. Feamster, "Behavioral Clustering of HTTP-Based Malware and Signature Generation Using Malicious Network Traces.," NSDI, p.26, Apr. 2010. Y. Xie, F. Yu, K. Achan, R. Panigrahy, G. Hulten, and I. Osipkov, "Spamming Botnets: Signatures and Characteristics," Proceedings of the ACM SIGCOMM 2008 conference on Data communication - SIGCOMM ’08, vol.38, no. 4, p.171, Aug. 2008.
 しかしながら、上記の従来技術では、精度の高い攻撃の特徴情報を抽出するにはコストがかかるという問題がある。
 具体的には、攻撃に関わる通信の情報を収集した際に、良性な通信が混在した場合に、良性な通信の特徴情報を誤って抽出し、当該情報を抽出した規則を悪性トラヒックログ特定のための規則と誤判定してしまう危険性があるという問題がある。
 例えば、マルウェアは、解析の妨害やインターネットへの接続確認を目的として、正規のWebサイトなどにアクセスする場合が多い。このため、サンドボックスを用いて収集したマルウェアの通信相手や通信内容に正規のWebサイトへの正常なアクセスが混在する可能性がある。
 攻撃に関わる通信の内容を精査する手法として、インターネット上の情報を収集して通信相手のレピュテーションを実施する手法や、収集した通信内容をアンチウィルスソフトやIDS・IPS・WAFなどに対して再現して攻撃と判定されるかを検査する手法が検討されている。しかし、各手法でも検知漏れや誤検知が発生する可能性があり、攻撃に関わる通信の情報から攻撃の通信情報を自動的に、かつ、正確に抽出することは困難である。特に、他の手段でも発見できない攻撃を発見できないことを意味する検知漏れは許容されることがあるが、誤検知については、検知後に発生する対処や調査などのオペレーションコスト発生を回避するために、可能な限り抑制しなければならない。
 このため、現在では、攻撃を発見するための規則を特定して攻撃の特徴情報を抽出する場合、ほぼ多くの場合において解析者が手動で内容を分析する必要が生じる。この結果、攻撃の特徴情報を抽出するための時間的なコストと人的なコストが必要となり、攻撃が多種多様化している近年では、これらのコストがセキュリティベンダやサービスプロバイダにおいて大きなボトルネックとなっている。
 開示の技術は、上述に鑑みてなされたものであって、精度の高い攻撃の特徴情報を低コストで抽出することを目的とする。
 本願の開示するトラヒック特徴情報抽出方法は、正規表現化工程と、クラスタリング工程と、特徴情報抽出工程とを含んだことを特徴とする。正規表現化工程は、トラヒックログから予め設定した項目を抽出し、当該項目に含まれる部分文字列について、所定の規則に基づいて正規表現化する。クラスタリング工程は、前記正規表現化したトラヒックログのエントリをクラスタリングする。特徴情報抽出工程は、前記クラスタリングしたトラヒックログに含まれるエントリ間の距離の総和が最小となるエントリを各クラスタのトラヒック特徴情報として抽出する。
 開示するトラヒック特徴情報抽出方法、トラヒック特徴情報抽出装置及びトラヒック特徴情報抽出プログラムの一つの態様によれば、精度の高い攻撃の特徴情報を低コストで抽出することができるという効果を奏する。
図1は、第1の実施形態に係る情報収集配信サーバを含んだネットワークシステムの構成例を示す図である。 図2は、第1の実施形態に係るトラヒックログの項目例を示す図である。 図3は、第1の実施形態に係るトラヒックログの項目例を示す図である。 図4は、第1の実施形態に係る正規表現パターンテーブルの項目例を示す図である。 図5は、第1の実施形態に係る単語リストテーブルの項目例を示す図である。 図6は、第1の実施形態に係る宛先情報テーブルの項目例を示す図である。 図7は、第1の実施形態に係る情報収集配信サーバによる全体処理の流れを示すフローチャートである。 図8は、第1の実施形態に係る情報収集配信サーバの正規表現化部によるトラヒックログの正規表現化処理の手順を示すフローチャートである。 図9は、第1の実施形態に係る正規表現化トラヒックログの項目例を示す図である。 図10は、第1の実施形態に係る正規表現化トラヒックログの項目例を示す図である。 図11は、第1の実施形態に係る情報収集配信サーバのクラスタリング部によるクラスタリング処理の手順を示すフローチャートである。 図12は、第1の実施形態に係るクラスタリング結果の一例を示す図である。 図13は、第1の実施形態に係るクラスタリング結果の他の一例を示す図である。 図14は、第1の実施形態に係る情報収集配信サーバの特徴情報抽出部によるトラヒック特徴情報の抽出処理の手順を示すフローチャートである。 図15は、第1の実施形態に係る特徴情報抽出部による各クラスタからトラヒック特徴情報を抽出する処理動作を説明するための図である。 図16は、第1の実施形態に係る情報収集配信サーバの絞り込み部による統計値算出処理の手順を示すフローチャートである。 図17は、第1の実施形態に係る絞り込み部による正規表現化トラヒックログからトラヒックログ内での統計値を算出する処理動作を説明するための図である。 図18は、第1の実施形態に係る情報収集配信サーバの絞り込み部によるトラヒック特徴情報とトラヒックログの統計値とを突合する処理の手順を示すフローチャートである。 図19は、第1の実施形態に係る絞り込み部による突合処理の結果の一例を示す図である。 図20は、第1の実施形態に係る情報収集配信サーバの特定部による対象処理の手順を示すフローチャートである。 図21は、第1の実施形態に係る対照結果の一例を示す図である。 図22は、第1の実施形態に係る情報収集配信サーバの正規表現化部による単語リスト生成処理の手順を示すフローチャートである。 図23は、トラヒック特徴情報抽出プログラムを実行するコンピュータを示す図である。
 以下に、開示するトラヒック特徴情報抽出方法、トラヒック特徴情報抽出装置及びトラヒック特徴情報抽出プログラムの実施形態について、図面に基づいて詳細に説明する。なお、本実施形態により開示する発明が限定されるものではない。
(第1の実施形態)
 図1は、第1の実施形態に係る情報収集配信サーバ30を含んだネットワークシステムの構成例を示す図である。図1に示すように、第1の実施形態に係る情報収集配信サーバ30は、ネットワーク1を介して、ネットワーク2からネットワーク5に接続される。なお、情報収集配信サーバ30のことを「トラヒック特徴情報抽出装置」とも言う。
 ネットワーク1は、インターネットのように広域なネットワーク網であってもよく、また、企業内ネットワークのように比較的狭域なネットワーク網であってもよい。このネットワーク1は、ネットワーク2~5を収容する。ネットワーク2~5のそれぞれの間は、後述するパケット転送部6~9によって互いに通信可能に接続されている。なお以下では、ネットワーク2及びネットワーク3のことを「防御対象ネットワーク」と記載し、ネットワーク4及びネットワーク5のことを「攻撃側ネットワーク」と記載する。
 ネットワーク2は、マルウェア感染攻撃を解析するために設けられたネットワークであり、例えば、囮サーバ14、囮端末15、端末型サンドボックス16及びサーバ型サンドボックス17を有する。囮サーバ14や囮端末15としては、ハニーネットプロジェクトが提供しているオープンソースのハニーポットや、独自に開発されたハニーポットが適用できる。また、端末型サンドボックス16及びサーバ型サンドボックス17としては、FireEyeに代表される製品からオープンソースのソフトウェア、または、独自に開発されたサンドボックスが適用できる。
 また、図1に示すように、ネットワーク2は、パケット転送部6、パケット転送部10、パケット転送部11、通信監視部22及び通信監視部23を有する。パケット転送部6は、ネットワーク2と他のネットワークとの間のパケットの送受信の制御や、ネットワーク2内のパケットの送受信を制御する。パケット転送部10は、ネットワーク2において、囮サーバ14と囮端末15とを接続するとともに、パケット転送部6を介して囮サーバ14及び囮端末15を、端末型サンドボックス16やサーバ型サンドボックス17及び他のネットワークと接続する。また、パケット転送部11は、ネットワーク2において、端末型サンドボックス16とサーバ型サンドボックス17とを接続するとともに、パケット転送部6を介して端末型サンドボックス16とサーバ型サンドボックス17を、囮サーバ14や囮端末15及び他のネットワークと接続する。なお、パケット転送部6、パケット転送部10及びパケット転送部11としては、スイッチやルータまたはスイッチ機能やルータ機能やポートフォワーディングやハイパーテキスト転送プロトコル(以下、HTTP:Hypertext Transfer Protocol)転送機能など、MAC(Media Access Control)アドレスやIP(Internet Protocol)アドレスやポート番号やHTTPヘッダなどのヘッダの情報を参照して転送先を決定してパケットを出力する機能が該当する。
 通信監視部22は、トラヒックログを収集する。通信監視部23は、トラヒックログを収集する。ここで、トラヒックログとしては、各通信監視部が収集可能なログ情報やアラート情報、パケットをキャプチャしたpcap(packet capture)情報やサーバのsyslog情報など、多くの情報が想定できる。囮サーバ14や囮端末15、端末型サンドボックス16やサーバ型サンドボックス17で収集したログ情報は攻撃に関する悪性トラヒックログとして適用できる可能性がある。なお、通信監視部22及び通信監視部23は、転送に用いる情報およびパケットペイロードを監視する機能であり、セキュリティアプライアンスやプロキシやアンチウィルスソフトなどに加え、転送したパケットを装置内外に保存するパケット転送部が該当する。
 また、通信監視部22及び通信監視部23は、特定の情報を保有し、当該情報と一致する通信を検知する機能を具備する場合や、当該通信を遮断したり、別の付加機能に転送したりする機能を具備する場合がある。特に、特定の情報として攻撃の特徴を記憶し、当該情報と一致する通信を攻撃とした場合は、攻撃を検知する機能を具備する場合や、当該攻撃を遮断する機能や検疫と呼ばれる別の付加機能に転送する機能を具備する場合がある。
 ネットワーク3は、例えば、ユーザサーバ18、ユーザサーバ19、ユーザ端末20及びユーザ端末21を有する。このネットワーク3に配置されているユーザサーバ18、ユーザサーバ19、ユーザ端末20及びユーザ端末21のすべて又は一部は、特定種類の通信の送受信の確認対象となる。
 また、図1に示すように、ネットワーク3は、パケット転送部7、パケット転送部12及びパケット転送部13を有する。パケット転送部7は、ネットワーク3と他のネットワークとの間のパケットの送受信の制御や、ネットワーク3内のパケットの送受信を制御する。パケット転送部12は、ネットワーク3において、ユーザ端末20とユーザ端末21とを接続するとともに、パケット転送部7を介してユーザ端末20及びユーザ端末21を、ユーザサーバ18やユーザサーバ19及び他のネットワークと接続する。パケット転送部13は、ネットワーク3において、ユーザサーバ18とユーザサーバ19とを接続するとともに、パケット転送部7を介してユーザサーバ18及びユーザサーバ19を、ユーザ端末20やユーザ端末21及び他のネットワークと接続する。
 また、パケット転送部7は、通信監視部24を有する。この通信監視部24は、装置としてネットワーク2内に配置される通信監視部22や通信監視部23とは異なり、パケット転送部7内の一機能として配置される。通信監視部24は、トラヒックログを収集する。
 また、ユーザ端末20及びユーザ端末21には、端末用攻撃検知ソフトウェア25がインストールされる。また、ユーザサーバ18及びユーザサーバ19には、サーバ用攻撃検知ソフトウェア26がインストールされる。この端末用攻撃検知ソフトウェア25及びサーバ用攻撃検知ソフトウェア26は、例えば、アンチウィルスソフトやホスト型IDS/IPSであり、トラヒックログを収集する。すなわち、端末用攻撃検知ソフトウェア25やサーバ用攻撃検知ソフトウェア26も通信監視部に含まれる。
 ここで、トラヒックログとしては、各通信監視部が収集可能なログ情報やアラート情報、パケットをキャプチャしたpcap情報やサーバのsyslog情報など、多くの情報が想定できる。端末用攻撃検知ソフトウェア25やサーバ用攻撃検知ソフトウェア26を含む通信監視部が攻撃だと判定したトラヒックのログも悪性トラヒックログとして適用できる可能性がある。
 また、例えばネットワーク3に配置された通信監視部24が攻撃を検知しなかった場合、通信監視部24で収集したトラヒックログは良性トラヒックログとして適用できる可能性がある。なお、通常異なる装置やソフトウェアからトラヒックログやアラートを収集して通信相手や通信内容の情報を抽出する際、装置やソフトウェアに応じて各項目の表記方法が異なる場合があるが、近年ではSIEM(Security Information and Event Management)製品として異なる表記で示されたログ情報を統一的な表記方法に変換して集計する技術が普及している。
 ネットワーク4は、特定種類の通信を攻撃する攻撃者端末27を有する。図1に示すように、ネットワーク4は、パケット転送部8を有する。パケット転送部8は、ネットワーク4と他のネットワークとの間のパケットの送受信を制御する。
 ネットワーク5は、アクセスしたユーザ端末を攻撃のために他のサーバに転送する悪性サーバ29や、アクセスしたユーザサーバやユーザ端末にマルウェアを配布するマルウェア配布サーバ28を有する。図1に示すように、ネットワーク5は、パケット転送部9を有する。パケット転送部9は、ネットワーク5と他のネットワークとの間のパケットの送受信を制御する。
 情報収集配信サーバ30は、マルウェアが発生させるトラヒックログ及び防御対象の任意のトラヒックログの少なくともいずれか一方からトラヒック特徴情報を抽出する。また、情報収集配信サーバ30は、抽出したトラヒック特徴情報を防御対象の任意のトラヒックログと対照する。以下では、情報収集配信サーバ30の詳細な構成を説明する。
 ここで、情報収集配信サーバ30の詳細な構成を説明する前に、情報収集配信サーバ30により収集されるトラヒックログについて、図2及び図3を用いて説明する。図2は、第1の実施形態に係るトラヒックログの項目例を示す図である。図2では、マルウェアが発生させるトラヒックログの項目例を示す。なお、収集可能なトラヒックログは、ソフトウェアや機器によって異なる。例えば、pcapデータなどを保存できる場合は多くの情報を収集できる一方で、proxyサーバなどではHTTPヘッダのデータが記録できるが、ルータやスイッチなどのネットワーク機器において標準的に観測できるデータはIPアドレスやポート番号毎のフレーム・パケット数などに限定される場合が多い。
 図2に示すように、マルウェアが発生させるトラヒックログは、「通番」、「マルウェア識別子」、「通信元IPアドレス」、「通信先IPアドレス」、「送信元ポート」、「宛先ポート」及び「URL」を対応付けて記録される。なお、記録される項目例は、図2に示すものに限られるものではない。例えば、トラヒックログとして、「通番」、「マルウェア識別子」、「通信元IPアドレス」、「通信先IPアドレス」、「送信元ポート」、「宛先ポート」及び「URL」に加えて、通信元や通信先を特定可能な他の項目が記録されてもよい。或いは、トラヒックログとして、「通番」、「マルウェア識別子」、「通信元IPアドレス」、「通信先IPアドレス」、「送信元ポート」、「宛先ポート」、「URL」及び通信元や通信先を特定可能な他の項目のうちいずれかが記録されてもよい。
 ここで、「通番」は、トラヒックログとして記録されたエントリの順序を示す。例えば、「通番」には、エントリが1番目に記録されたことを示す「1」、エントリが2番目に記録されたことを示す「2」などのデータ値が格納される。また、「マルウェア識別子」は、当該トラヒックがどのマルウェア検体によって発生しているかを示す識別子を示す。このマルウェア識別子としては、マルウェア検体に対して一意に定まるハッシュ値を付与する場合や、別途管理用テーブルからの情報を付与する場合がある。例えば、「マルウェア識別子」には、「M1」、「M2」などのデータ値が格納される。
 「通信元IPアドレス」は、パケットの通信元のIPアドレスを示す。例えば、「通信元IPアドレス」には、「10.0.0.1」、「10.0.0.2」などのデータ値が格納される。また、「通信先IPアドレス」は、パケットの通信先のIPアドレスを示す。例えば、「通信先IPアドレス」には、「198.51.100.98」、「192.0.2.100」などのデータ値が格納される。
 また、「送信元ポート」は、パケットを送信した送信元ポートを示す。例えば、「送信元ポート」には、「51234」、「50032」などのデータ値が格納される。また、「宛先ポート」は、パケットの宛先ポートを示す。例えば、「宛先ポート」には、「80」、「60320」などのデータ値が格納される。また、「URL」は、アクセス先のURLを示す。例えば、「URL」には、「http://www.example.com/abcdef/index.php?test=123」、「http://www.example.com/test/image.php」などのデータ値が格納される。
 一例をあげると、図2に示すトラヒックログは、「通番」が「1」であるトラヒックログのエントリは、マルウェア識別子「M1」によって発生したトラヒックログであり、IPアドレス「10.0.0.1」を通信元とし、IPアドレス「198.51.100.98」を通信先とすることを示す。また、図2に示すトラヒックログは、「通番」が「1」であるトラヒックログのエントリは、ポート「51234」を送信元とし、ポート「80」を宛先とし、URL情報として「http://www.example.com/abcdef/index.php?test=123」が含まれることを示す。
 なお、トラヒックログとしては、アクセス毎のデータが記録される場合や、受信フレーム・パケットごとにデータが記録される場合や、マルチセッションのデータが記録される場合がある。第1の実施形態では、マルウェアが発生させるトラヒックログとして、ハニーポットで収集したデータや、サンドボックスで収集したデータや、既存技術で悪性トラヒックログと判定されたデータに含まれるトラヒックのログを示す。
 図3は、第1の実施形態に係るトラヒックログの項目例を示す図である。図3では、防御対象ネットワークでのトラヒックログの項目例を示す。なお、図2と同様に、収集可能なトラヒックログは、ソフトウェアや機器によって異なる。
 図3に示すように、防御対象ネットワークでのトラヒックログは、「通番」、「通信元IPアドレス」、「通信先IPアドレス」、「送信元ポート」、「宛先ポート」及び「URL」を対応付けて記録される。
 ここで、防御対象ネットワークでのトラヒックログとして記録される各項目は、マルウェアが発生させるトラヒックログとして記録される各項目と同様である。なお、記録される項目例は、図3に示すものに限られるものではない。例えば、トラヒックログとして、「通番」、「マルウェア識別子」、「通信元IPアドレス」、「通信先IPアドレス」、「送信元ポート」、「宛先ポート」及び「URL」に加えて、通信元や通信先を特定可能な他の項目が記録されてもよい。或いは、トラヒックログとして、「通番」、「マルウェア識別子」、「通信元IPアドレス」、「通信先IPアドレス」、「送信元ポート」、「宛先ポート」、「URL」及び通信元や通信先を特定可能な他の項目のうちいずれかが記録されてもよい。
 一例をあげると、図3に示すトラヒックログは、「通番」が「1」であるトラヒックログのエントリは、IPアドレス「10.0.0.1」を通信元とし、IPアドレス「198.51.100.98」を通信先とすることを示す。また、図2に示すトラヒックログは、「通番」が「1」であるトラヒックログのエントリは、ポート「51234」を送信元とし、ポート「80」を宛先とし、URL情報として「http://www.example.com/ghijkl/index.php?test=456」が含まれることを示す。
 続いて、図1を用いて、情報収集配信サーバ30の構成について説明する。図1に示すように、情報収集配信サーバ30は、ログ収集部31と、トラヒック特徴情報抽出・対照部32と、特徴情報収集配信部33と、記憶部34とを有する。
 記憶部34は、例えば、半導体メモリ素子又はハードディスクなどの記憶装置であり、正規表現パターンテーブル34aと、単語リストテーブル34bと、宛先情報テーブル34cとを有する。
 正規表現パターンテーブル34aは、トラヒックログを正規表現する所定の規則を示す情報を記憶する。図4は、第1の実施形態に係る正規表現パターンテーブル34aの項目例を示す図である。図4に示すように、正規表現パターンテーブル34aは、「通番」と、「文字種別」と、「正規表現パターン」とを対応付けた情報を記憶する。ここで、正規表現パターンテーブル34aが記憶する「通番」は、正規表現パターンテーブル34aが記憶するエントリの識別情報を示す。例えば、「通番」には、「1」、「2」などのデータ値が格納される。
 また、正規表現パターンテーブル34aが記憶する「文字種別」は、トラヒック特徴情報に存在する文字列の種別を示す。例えば、「文字種別」には、「英文字」、「整数」、「16進数」、「Base64」などのデータ値が格納される。なお、「文字種別」は、図4に示す例に限定されるものではない。
 また、正規表現パターンテーブル34aが記憶する「正規表現パターン」は、文字列を正規表現する規則を示す。例えば、「正規表現パターン」には、「[a-zA-Z]」、「[0-9]」などのデータ値が格納される。
 一例をあげると、図4に示す正規表現パターンテーブル34aは、英文字が5つ連続する文字列を正規表現パターンで置換する場合には、[a-zA-Z]{5}と表記することを示す。なお、かかる場合、中括弧内の数字が文字数となる。なお、トラヒック特徴情報の項目の中には、非印字可能文字が含まれる場合がある。非印字可能文字については正規表現パターンでの置換の対象としない場合もあるが、別途定める手順にしたがって非印字可能文字を印字可能文字に一意に変換した上で、正規表現パターンに置換してもよい。
 単語リストテーブル34bは、トラヒックログから抽出した項目に含まれる部分文字列を正規表現化するか否かを示す情報を記憶する。言い換えると、単語リストテーブル34bは、正規表現化しない部分文字列を示す情報を記憶する。図5は、第1の実施形態に係る単語リストテーブル34bの項目例を示す図である。本項目例では、図2に示すマルウェアが発生させるトラヒックのURLに現れる文字列から単語を抽出し、単語リストを作成した例を示す。なお、単語リストテーブル34bの作成手順については、図22を用いて後述する。
 図5に示すように、単語リストテーブル34bは、「通番」と「単語」とを対応付けた情報を記憶する。ここで、単語リストテーブル34bが記憶する「通番」は、単語リストテーブル34bが記憶するエントリの識別情報を示す。例えば、「通番」には、「1」、「2」などのデータ値が格納される。
 また、単語リストテーブル34bが記憶する「単語」は、トラヒックログから抽出した項目に含まれる部分文字列を示す。例えば、「単語」には、「index」、「php」、「test」などのデータ値が格納される。
 一例をあげると、図5に示す単語リストテーブル34bは、トラヒックログから抽出した項目に「index」、「php」、「test」が含まれる場合、これらの部分文字列を正規表現化しないことを示す。
 宛先情報テーブル34cは、通信の宛先を示す情報又は通信の宛先に対応する宛先情報を記憶する。図6は、第1の実施形態に係る宛先情報テーブル34cの項目例を示す図である。図6に示すように、宛先情報テーブル34cは、「通番」と、「IPアドレス」と、「アドレスプレフィックス」と、「AS番号」と、「組織名」とを対応付けた情報を記憶する。
 ここで、宛先情報テーブル34cが記憶する「通番」は、宛先情報テーブル34cが記憶するエントリの識別情報を示す。例えば、「通番」には、「1」、「2」などのデータ値が格納される。また、宛先情報テーブル34cが記憶する「IPアドレス」は、通信先のIPアドレスを示す。例えば、「IPアドレス」には、「192.0.2.100」、「198.51.100.98」などのデータ値が格納される。
 また、宛先情報テーブル34cが記憶する「アドレスプレフィックス」は、IPアドレスの中におけるネットワークアドレスの部分を示す。ここで、アドレスプリフィックスは、「/(スラッシュ)」を伴ってプリフィックス長とともに表記される。例えば、「アドレスプレフィックス」には、先頭から24ビットまでをアドレスプリフィックスとする「192.0.2.0/24」、「198.51.100.0/24」などのデータ値が格納される。
 また、宛先情報テーブル34cが記憶する「AS番号」は、インターネットなどの大規模IPネットワーク内にある、各組織が保有・運用する自立したネットワーク(AS(Autonomous System))を識別する番号を示す。例えば、「AS番号」には、「64500」、「64501」などのデータ値が格納される。また、宛先情報テーブル34cが記憶する「組織名」は、ASを保有・運用する組織を示す。例えば、「組織名」には、「TEST-NET-1」、「TEST-NET-2」などのデータ値が格納される。
 図6に示す例では、あるIPアドレスに対応するアドレスプレフィックス情報、AS(自律システム)番号、組織名を宛先情報の項目として抽出した場合を示しているが、これらの項目に限るものではない。また、宛先情報テーブル34cが記憶する「アドレスプレフィックス」と、「AS番号」と、「組織名」とは、公知の情報であり、例えば、本宛先情報はMaxMind社のGeoIPサービスを利用して入手する場合や、独自に情報収集を行って作成する場合がある。
 一例をあげると、図6に示す宛先情報テーブル34cは、IPアドレス「192.0.2.100」は、アドレスプリフィックスが「192.0.2.0/24」であり、AS番号が「64500」であり、組織名が「TEST-NET-1」を宛先とすることを示す。
 図1に戻る。ログ収集部31は、各通信監視部からトラヒックログを収集する。例えば、ログ収集部31は、ネットワーク2の通信監視部22及び通信監視部23や、ネットワーク3の通信監視部24、端末用攻撃検知ソフトウェア25及びサーバ用攻撃検知ソフトウェア26などからトラヒックログを収集する。また、ログ収集部31は、オペレータによる操作でトラヒックログを入力されてもよい。
 トラヒック特徴情報抽出・対照部32は、正規表現化部32aと、クラスタリング部32bと、特徴情報抽出部32cと、絞り込み部32dと、特定部32eとを有し、トラヒック特徴情報抽出・対照手法を実行する。
 正規表現化部32aは、マルウェアが発生させるトラヒックログ及び防御対象の任意のトラヒックログの少なくともいずれか一方から予め設定した項目を抽出し、当該項目に含まれる部分文字列について、所定の規則に基づいて正規表現化する。
 クラスタリング部32bは、正規表現化したトラヒックログのエントリをクラスタリングする。例えば、クラスタリング部32bは、通信の宛先または通信の宛先に対応する宛先情報の項目を用いて、予め設定した項目と粒度に従ってトラヒックログをクラスタリングする手法(手法A)を用いる。また、クラスタリング部32bは、通信のプロトコルスタックで利用されるプロトコルの組合せに含まれるヘッダ情報またはデータ情報の各項目を予め設定した項目に従ってトラヒックログをクラスタリングする手法(手法B)を用いる。クラスタリング部32bは、手法A及び手法Bの少なくともいずれか一つの手法を用いて、正規表現化したトラヒックログをクラスタリングする。
 特徴情報抽出部32cは、クラスタリングしたトラヒックログに含まれるエントリ間の距離を予め指定した方法で定義し、各クラスタ内に含まれるエントリと、当該エントリ以外の各エントリとの距離の総和が最小となるエントリを各クラスタのトラヒック特徴情報として抽出する。
 絞り込み部32dは、正規表現化したトラヒックログから予め設定した指標に従って当該トラヒックログ内での統計値を算出し、クラスタリングしたトラヒックログから抽出した特徴情報と、統計値とに基づいて、特徴量を絞り込む。
 特定部32eは、絞り込んだ特徴情報と、防御対象ネットワークの任意のトラヒックログとを対照して、予め設定した指標を用いてスコアを算出し、当該スコアが閾値以上となるトラヒックログ内のエントリを特定することで、当該エントリの送信元ホスト及び送信先のすくなくともいずれか一つを特定する。
 特徴情報収集配信部33は、新たな特徴情報を監視対象リストとして各通信監視部に配信する。例えば、特徴情報収集配信部33は、ネットワーク2の通信監視部22及び通信監視部23や、ネットワーク3の通信監視部24、端末用攻撃検知ソフトウェア25及びサーバ用攻撃検知ソフトウェア26などに新たな特徴情報を監視対象リストとして配信する。
 なお、特徴情報収集配信部33による監視対象リストの配信の仕組みは、特定種類の通信を攻撃とした場合、セキュリティベンダが、シグネチャをセキュリティアプライアンスやアンチウィルスソフトに配信する仕組みと同じである。かかる場合、セキュリティベンダは、自身の保有する囮サーバや囮端末やセキュリティアプライアンスやアンチウィルスソフトから情報を収集し、シグネチャを生成する。
 以下では、図7から図22を用いて、情報収集配信サーバ30による処理手順について処理を説明する。図7は、第1の実施形態に係る情報収集配信サーバ30による全体処理の流れを示すフローチャートである。
 図7に示すように、情報収集配信サーバ30の正規表現化部32aは、トラヒックログを正規化する正規表現化処理を実行する(ステップS1)。
 続いて、情報収集配信サーバ30のクラスタリング部32bは、正規表現化したトラヒックログをクラスタリングするクラスタリング処理を実行する(ステップS2)。そして、情報収集配信サーバ30の特徴情報抽出部32cは、クラスタリングしたトラヒックログから特徴情報を抽出する特徴情報抽出処理を実行する(ステップS3)。
 また、情報収集配信サーバ30の絞り込み部32dは、抽出した特徴情報を絞り込む特徴情報絞り込み処理を実行する(ステップS4)。そして、情報収集配信サーバ30の特定部32eは、絞り込んだ特徴情報と、防御対象のネットワークの任意のトラヒックログとを対照し、例えばマルウェア感染端末を特定する特定処理を実行する(ステップS5)。
 次に、情報収集配信サーバ30が実行する各処理に詳細について説明する。図8は、第1の実施形態に係る情報収集配信サーバ30の正規表現化部32aによるトラヒックログの正規表現化処理の手順を示すフローチャートである。図8に示すように、正規表現化部32aは、マルウェアが発生させるトラヒックログ又は防御対象ネットワークのトラヒックログを入力する(ステップS101)。
 次に、正規表現化部32aは、トラヒックログから情報抽出項目の選択を行う(ステップS102)。例えば、正規表現化部32aは、トラヒックログから抽出する項目を選択する。第1の実施形態では、正規表現化部32aが、通信元IPアドレス、通信先IPアドレス、URL、FQDN、URLパス部、URLクエリ部及びUserAgentを選択する例を説明する。なお、正規表現化部32aは、トラヒックログ中の任意の項目を選択可能である。
 そして、正規表現化部32aは、正規表現化項目の選択を行う(ステップS103)。正規表現化部32aは、抽出項目のすべてを正規表現化することも可能であるが、第1の実施形態では、正規表現化部32aが、URLパス部、URLクエリ部及びUserAgentを正規表現化する項目として選択する例を説明する。
 続いて、正規表現化部32aは、各項目中に含まれる各部分文字列に単語リストテーブル34bに記載された単語が存在するか否かを判定する(ステップS104)。ここで、正規表現化部32aは、各項目中に含まれる各部分文字列に単語リストテーブル34bに記載された単語が存在すると判定した場合(ステップS104、Yes)、当該部分文字列を変更しない(ステップS105)。一方、正規表現化部32aは、各項目中に含まれる各部分文字列に単語リストテーブル34bに記載された単語が存在すると判定しなかった場合(ステップS104、No)、正規表現パターンテーブル34aを参照して当該部分文字列を正規表現パターンに置換する(ステップS106)。
 正規表現化部32aは、ステップS105又はステップS106を実行した結果を正規表現化トラヒックログとしてクラスタリング部32bに出力する(ステップS107)。例えば、正規表現化部32aは、図9及び図10に示す正規表現化トラヒックログをクラスタリング部32bに出力する。
 図9は、第1の実施形態に係る正規表現化トラヒックログの項目例を示す図である。図9では、図2に示すマルウェアが発生させるトラヒックログを正規表現化した例を示す。なお、図9では、TCP/IPのプロトコルスタックで利用される通信元IPアドレス、通信先IPアドレス、URLとURLの部分文字列に相当するFQDNとURLパス部とURLクエリ部、UserAgentとを予め設定する項目として指定した場合を示す。また、図9では、図4の正規表現化パターンと図5の単語リストとを利用して正規表現化した場合の項目例を示す。なお、項目例と項目の順序は図9に示す例に限定されるものではない。
 図10は、第1の実施形態に係る正規表現化トラヒックログの項目例を示す図である。図10では、図3に示す防御対象ネットワークでのトラヒックログを正規表現化した例を示す。なお、図10では、TCP/IPのプロトコルスタックで利用される通信元IPアドレス、通信先IPアドレス、URLとURLの部分文字列に相当するFQDNとURLパス部とURLクエリ部、UserAgentとを予め設定する項目として指定した場合を示す。また、図10では、図4の正規表現化パターンと図5の単語リストを利用して正規表現化した場合の項目例を示す。なお、項目例と項目の順序は図10に示すところに限るものではない。
 図11は、第1の実施形態に係る情報収集配信サーバ30のクラスタリング部32bによるクラスタリング処理の手順を示すフローチャートである。図11に示すように、クラスタリング部32bは、正規表現化トラヒックログを入力する(ステップS301)。
 続いて、クラスタリング部32bは、クラスタリング手法の選択を行う(ステップS302)。なお、図11に示す例では、クラスタリング部32bは、通信宛先クラスタリングとプロトコルクラスタリングの両方を選択し、通信宛先クラスタリング、プロトコルクラスタリングの順でクラスタリング処理を実施する場合について説明する。
 クラスタリング部32bは、通信宛先に応じたクラスタリングを実施する(ステップS303)。ここでは、クラスタリング部32bは、通信先IPアドレスが同一であるエントリを同一クラスタとして取り扱い、図12に示すクラスタリング結果を得る。
 図12は、第1の実施形態に係るクラスタリング結果の一例を示す図である。図12では、通信の宛先または通信の宛先に対応する宛先情報の項目を用いたトラヒックログのクラスタリング結果の例を示す。図12では、正規表現化トラヒックログのうち通信先IPアドレスが同一のトラヒック特徴情報を同一のクラスタとした場合の例を示している。なお、クラスタリング部32bは、図12に示すように、完全に同一の宛先情報を持つトラヒック特徴情報を同一クラスタと扱うだけでなく、図6に示した宛先情報テーブル34cを用いたクラスタリングや、宛先情報間の距離を定義し、ある距離以下の宛先情報同士を同一とみなしてクラスタリングを行ってもよい。なお、図12に示す例では、同一クラスタとしたトラヒック特徴情報を白色のエントリで示している。すなわち、図12の通番1と通番2と通番4とが同一クラスタに該当する。
 図11に戻る。クラスタリング部32bは、図12に示すクラスタリング結果を入力とし、プロトコルに応じたクラスタリングを実施する(ステップS304)。ここでは、クラスタリング部32bは、正規表現化トラヒックログのうちFQDNが同一かつURLパス部が同一かつURLクエリ部が同一かつUserAgentが同一の場合に、同一のクラスタに分類するものとする。クラスタリング部32bは、例えば、図13に示すクラスタリング結果を特徴情報抽出部32cに出力する(ステップS305)。
 図13は、第1の実施形態に係るクラスタリング結果の他の一例を示す図である。図13では、通信プロトコルのヘッダ情報又はデータ情報の各項目を用いたクラスタリングの例を示す。図13では、通信プロトコルとしてHTTP、項目としてHTTPヘッダを利用する際に正規表現化トラヒックログをクラスタリングする例を示す。図13では、特にFQDNが同一かつURLパス部が同一かつURLクエリ部が同一かつUserAgentが同一の場合に、トラヒックログを同一のクラスタに分類する例を示す。なお、クラスタリング部32bは、図13に示すように、選択したヘッダ情報あるいはデータ情報が完全に同一のトラヒックログを同一クラスタと扱うだけでなく、各ヘッダ情報あるいは各データ情報間の距離を定義し、ある距離以下のトラヒックログ同士を同一とみなしてクラスタリングを行ってもよい。なお、図13に示す例では、同一クラスタとしたトラヒックログを白色のエントリで示している。すなわち、図13の通番1と通番2と通番5が同一クラスタに該当する。
 図14は、第1の実施形態に係る情報収集配信サーバ30の特徴情報抽出部32cによるトラヒック特徴情報の抽出処理の手順を示すフローチャートである。図14に示すように、特徴情報抽出部32cは、正規表現化トラヒックログのクラスタリング結果を入力する(ステップS401)。例えば、特徴情報抽出部32cは、図13に示すクラスタリング結果を入力する。
 次に、特徴情報抽出部32cは、同一クラスタに含まれるエントリごとに、各エントリから当該エントリ以外のすべてのエントリまでの距離の総和を計算する(ステップS402)。
 そして、特徴情報抽出部32cは、総和が最小となるエントリを各クラスタの代表点とみなし、当該エントリをトラヒック特徴情報として抽出する(ステップS403)。また、特徴情報抽出部32cは、抽出したトラヒック特徴情報を出力する(ステップS404)。例えば、特徴情報抽出部32cは、図15に示すトラヒック特徴情報を出力する。
 図15は、第1の実施形態に係る特徴情報抽出部32cによる各クラスタからトラヒック特徴情報を抽出する処理動作を説明するための図である。図15では、図12や図13で示すクラスタが形成されている場合に、特徴情報抽出部32cが、クラスタ内からトラヒック特徴情報を抽出する例を示す。ここでは、特徴情報抽出部32cが、URLクエリ部の正規表現の文字数の差分を距離と定義する場合を例に説明する。この場合、特徴情報抽出部32cは、通番「3」のエントリと、それ以外の各通番のエントリとの距離の総和が最小となると判定する。このため、特徴情報抽出部32cは、通番「3」をトラヒック特徴情報として抽出する。なお、図15では、通番「3」で識別されるエントリがトラヒック特徴情報に該当し、抽出されたトラヒック特徴情報を白色のエントリで示している。
 図16は、第1の実施形態に係る情報収集配信サーバ30の絞り込み部32dによる統計値算出処理の手順を示すフローチャートである。絞り込み部32dは、防御対象ネットワークでの正規表現化トラヒックログの図10を入力する(ステップS501)。次に、絞り込み部32dは、当該トラヒックログの中から、統計値を算出する項目を選択する(ステップS502)。図16では、絞り込み部32dは、通信元IPアドレス数、通信先FQDN数を選択するものとする。
 そして、絞り込み部32dは、統計値を算出する(ステップS503)。図16では、絞り込み部32dは、通信元IPアドレス数、通信先FQDN数から、通信先IPアドレス人気度、通信先FQDN人気度、稀少度を算出するのものとする。続いて、絞り込み部32dは、正規表現化トラヒックログの統計値を出力する(ステップS504)。例えば、絞り込み部32dは、図17に示す各統計値を出力する。
 図17は、第1の実施形態に係る絞り込み部32dによる正規表現化トラヒックログからトラヒックログ内での統計値を算出する処理動作を説明するための図である。図17では、正規表現化トラヒックログに含まれる各項目を当該トラヒックログ内で集計した際の、通信元IPアドレス数、通信先FQDN数、通信元IPアドレス人気度、通信先FQDN人気度、稀少度という5つの統計値を算出する例を示す。なお、統計値は、これらの項目に限定されるものではない。また、通信元IPアドレス人気度は、「(通信元IPアドレス人気度)=(通信元IPアドレス数)/(通信元IPアドレス数の最大値)」、また、通信先FQDN数人気度は、「(通信先FQDN人気度)=(通信先FQDN数)/(通信先FQDN数の最大値)」と定義する。
 また稀少度は、通信元IPアドレス人気度と通信先FQDN人気度とを使って、例えば、次のように定義される。すなわち、稀少度は、「(稀少度)=1-(通信先IPアドレス人気度と通信先FQDN人気度のうちの最小値)」である。例えば、絞り込み部32dは、通番1のデータについて今回例示する統計値を算出する場合、通番1のデータの通信を行った通信元IPアドレス数が100、通信先FQDN数が100であることを算出し、当該トラヒック内での通信元IPアドレス数の最大値が1000、通信先FQDN数の最大値が1000であることを算出すると、以下の統計値を算出する。すなわち、絞り込み部32dは、「(通番1の通信元IPアドレス人気度)=100/1000=0.1」、「(通番1の通信先FQDN人気度)=100/1000=0.1」及び「(通番1の稀少度)=1-0.1=0.9」であると算出する。
 図18は、第1の実施形態に係る情報収集配信サーバ30の絞り込み部32dによるトラヒック特徴情報とトラヒックログの統計値とを突合する処理の手順を示すフローチャートである。図18に示すように、絞り込み部32dは、トラヒック特徴情報とトラヒックログの統計値とを入力する(ステップS601)。例えば、絞り込み部32dは、図15に示すトラヒック特徴情報と図17に示すトラヒックログの統計値とを入力する。
 次に、絞り込み部32dは、トラヒック特徴情報と、トラヒックログ統計値の対応する項目を突合する(ステップS602)。例えば、絞り込み部32dは、トラヒック特徴情報に含まれる各URLパス部、URLクエリ部、UserAgentについて、当該項目のトラヒックログの統計値を図17との突合によって付与する。
 そして、絞り込み部32dは、統計値が閾値以上であるか否かを判定する(ステップS603)。例えば、絞り込み部32dは、トラヒック特徴情報のうち、URLパス部、URLクエリ部、UserAgentの各統計値について、予め定めた閾値以上になるか否かを判定する。ここで、絞り込み部32dは、統計値が閾値以上であると判定しなかった場合(ステップS603、No)、処理を終了する。
 一方、絞り込み部32dは、統計値が閾値以上であると判定した場合(ステップS603、Yes)、トラヒック特徴情報から抽出する(ステップS604)。そして、絞り込み部32dは、トラヒック特徴情報の抽出結果を出力する(ステップS605)。例えば、絞り込み部32dは、トラヒック特徴情報のうち、URLパス部、URLクエリ部、UserAgentの各統計値について、予め定めた閾値以上になる場合のみを抽出して、図19として出力する。
 図19は、第1の実施形態に係る絞り込み部32dによる突合処理の結果の一例を示す図である。図19では、クラスタリングの結果得られた図15に示すトラヒック特徴情報と、図17に示すトラヒックログ統計値とを突合し、統計値が閾値以上になるトラヒック特徴情報を抽出した例を示す。図19に示すように、絞り込み部32dは、図15から抽出したクラスタのトラヒック特徴情報と、それ以外のクラスタから抽出されたトラヒック特徴情報に対し、図17に示したトラヒックログ統計値のうち、URLパス部稀少度、URLクエリ部稀少度、UserAgent稀少度を付与し、それぞれの稀少度の閾値が0.9以上のものを抽出する。なお、図19に示す例では、抽出されたトラヒック特徴情報を白色のエントリで示しており、通番1が抽出されたトラヒック特徴情報に該当する。また、閾値は一例であり、任意に変更可能である。
 図20は、第1の実施形態に係る情報収集配信サーバ30の特定部32eによる対象処理の手順を示すフローチャートである。図20に示すように、特定部32eは、統計値突合済トラヒック特徴情報と、防御対象ネットワークのトラヒックログとを入力する(ステップS701)。例えば、特定部32eは、図19に示す統計値突合済トラヒック特徴情報と図3に示す防御対象ネットワークのトラヒックログとを入力する。
 次に、特定部32eは、防御対象ネットワークのトラヒックログに含まれる各エントリと、統計値突合済トラヒック特徴情報とを対照し、スコアを算出する(ステップS702)。例えば、特定部32eは、防御対象ネットワークのトラヒックログに含まれる各エントリに対し、統計値突合済トラヒック特徴情報に含まれるURLパス部とURLクエリ部の対照を行い、スコアを算出する。なお、スコアは任意に定義可能であるが、図20ではトラヒック特徴情報とトラヒックログのURLのうちFQDN、URLパス部、URLクエリ部が完全に一致する場合のみ、スコアが閾値以上となるように定義する。また、スコアの定義方法の別例としては、トラヒック特徴情報に共通に含まれる項目同士の類似度の平均と定義することが考えられる。また、図20では、各項目には文字列のみが含まれており、文字列同士の類似度の計算は先行技術を利用することが可能である。
 特定部32eは、算出したスコアが予め指定した閾値以上であるか否かを判定する(ステップS703)。ここで、特定部32eは、算出したスコアが予め指定した閾値以上であると判定しなかった場合(ステップS703、No)、処理を終了する。一方、特定部32eは、算出したスコアが予め指定した閾値以上であると判定した場合(ステップS703、Yes)、防御対象ネットワークの当該エントリの送信元ホストを特定する(ステップS704)。ここで、算出したスコアが予め指定した閾値以上である場合、エントリはトラヒック特徴情報と類似していることを意味する。特に、図20に示す場合、マルウェアによるトラヒックから生成されたトラヒック特徴情報と類似していることから、その送信元ホストを特定することで、マルウェア感染端末を発見することが可能となる。
 そして、特定部32eは、トラヒック特徴情報と防御対象ネットワークのトラヒックログの対照結果を出力する(ステップS705)。例えば、特定部32eは、送信元ホストを特定した結果として図21に示す結果を出力する。
 図21は、第1の実施形態に係る対照結果の一例を示す図である。図21では、図3で示した防御対象ネットワークでのトラヒックログと図19で示した統計値突合済トラヒック特徴情報とを対照して、URLのうちFQDN、URLパス部、URLクエリ部が完全に一致する場合に、当該URLの通信元IPアドレスより、送信元ホストを特定する例を示す。なお、図21では、特定された送信元ホストを含むトラヒックログを白色のエントリで示しており、通番1が該当する。
 なお、単語リストテーブル34bは、マルウェアが発生させるトラヒックログにおいて通信のプロトコルスタックで利用される項目の統計値を算出し、算出した統計値が閾値以上となる項目に含まれる任意の文字列を抽出することにより生成される。
 例えば、正規表現化部32aは、同種類または複数種類のマルウェアが発生させるトラヒックログを通信のプロトコルスタックで利用される1つのプロトコル又は複数のプロトコルの組合せに含まれるヘッダ情報またはデータ情報の各項目の統計値を算出する。そして、正規表現化部32aは、特定の項目で統計値が閾値以上となるヘッダ情報またはデータ情報に含まれる任意の文字列を抽出する。
 図22は、第1の実施形態に係る情報収集配信サーバ30の正規表現化部32aによる単語リスト生成処理の手順を示すフローチャートである。図22では、図2に示すトラヒックログから単語リストを作成する例を示す。正規表現化部32aは、図2で示すマルウェアが発生させるトラヒックログを入力する(ステップS201)。
 次に、正規表現化部32aは、プロトコルスタックを選択する(ステップS202)。なお、ここでは、プロトコルスタックとしてHTTPを選択する場合について説明する。そして、正規表現化部32aは、HTTPのヘッダ情報に含まれるURLの統計値(出現頻度)を算出する(ステップS203)。
 正規表現化部32aは、この統計値が予め定めた閾値以上となるか否かを判定する(ステップS204)。ここで、正規表現化部32aは、統計値が予め定めた閾値以上となると判定しなかった場合(ステップS204、No)、処理を終了する。一方、正規表現化部32aは、統計値が予め定めた閾値以上となると判定した場合(ステップS204、Yes)、文字列を単語として抽出し(ステップS205)、抽出された単語を単語リストとして出力する(ステップS206)。例えば、正規表現化部32aは、図2の通番1、通番3、通番233を単語として抽出する。選択するプロトコルスタックと情報の選択、この統計値と閾値は任意に選択可能とする。閾値以上となったURLのパス部とクエリ部に含まれる二文字以上の文字列を選択して単語として抽出する。これにより、正規表現化部32aは、例えば図5に示す単語リストテーブル34bを生成する。
 上述したように、第1の実施形態では、正規表現化したトラヒックログのエントリをクラスタリングし、クラスタリングしたトラヒックログに含まれるエントリ間の距離の総和が最小となるエントリを各クラスタのトラヒック特徴情報として抽出する。これにより、第1の実施形態によれば、精度の高い攻撃の特徴情報を低コストで抽出することができる。
 また、第1の実施形態では、マルウェアが発生させるトラヒックログから作成したトラヒック特徴情報と、防御対象ネットワークでのトラヒックログ統計値とを両方を用いて、トラヒック特徴情報を抽出する。これにより、防御対象ネットワークのトラヒックログ内で、トラヒック特徴情報に類似し、かつ防御対象ネットワークで稀少なトラヒックを効率的に抽出することが可能となる。また、第1の実施形態によれば、このようなトラヒックの送信元ホストを特定することで、マルウェア感染端末を効率的に発見可能である。
 なお、第1の実施形態では、情報収集配信サーバ30は、ネットワーク1に接続され、独立に設けられるものとして説明したが、実施形態はこれに限定されるものではない。例えば、情報収集配信サーバ30がトラヒック特徴情報抽出・対照部32として有する機能(正規表現化部32aと、クラスタリング部32bと、特徴情報抽出部32cと、絞り込み部32dと、特定部32e)を、ネットワーク2内やネットワーク3内に設けてもよい。かかる場合、情報収集配信サーバ30は、オペレータが個々の機器やソフトウェアから個別にトラヒックログを収集してトラヒック特徴情報抽出・対照手法を実施する。
 また、上述した実施形態では、情報収集配信サーバ30は、トラヒックログを収集してトラヒック特徴情報抽出し、抽出したトラヒック特徴情報を防御対象の任意のトラヒックログと対照するものとして説明したが実施形態はこれに限定されるものではない。例えば、情報収集配信サーバ30は、抽出したトラヒック特徴情報をトラヒックログと対照する処理を実行しなくてもよい。すなわち、情報収集配信サーバ30は、図7に示すステップS4及びステップS5の処理を実行しなくてもよい。かかる場合、情報収集配信サーバ30は、トラヒックログを収集してトラヒック特徴情報抽出する。また、情報収集配信サーバ30は、特徴情報の抽出のみが必要である場合、特徴情報収集配信部33を有さずに構成されてもよい。
(第2の実施形態)
 さて、これまで本発明の実施形態について説明したが、本発明は上述した実施形態以外にも、その他の実施形態にて実施されてもよい。そこで、以下では、その他の実施形態を示す。
(システム構成)
 また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上述の文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については(例えば、図1~図22)、特記する場合を除いて任意に変更することができる。
 また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
(プログラム)
 また、上記第1の実施形態に係る情報収集配信サーバ30が実行する処理をコンピュータが実行可能な言語で記述したトラヒック特徴情報抽出プログラムを生成することもできる。この場合、コンピュータがトラヒック特徴情報抽出プログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるオンラインサインアップ制御プログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたトラヒック特徴情報抽出プログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。以下に、図1などに示した情報収集配信サーバ30と同様の機能を実現するトラヒック特徴情報抽出プログラムを実行するコンピュータの一例を説明する。
 図23は、トラヒック特徴情報抽出プログラムを実行するコンピュータ1000を示す図である。図23に示すように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。
 メモリ1010は、ROM(Read Only Memory)1011およびRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)などのブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1031に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1041に接続される。ディスクドライブ1041には、例えば、磁気ディスクや光ディスクなどの着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1051およびキーボード1052が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1061が接続される。
 ここで、図23に示すように、ハードディスクドライブ1031は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。上記実施形態で説明したトラヒック特徴情報抽出プログラムは、例えばハードディスクドライブ1031やメモリ1010に記憶される。
 また、トラヒック特徴情報抽出プログラムは、例えば、コンピュータ1000によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ1031に記憶される。具体的には、上記実施形態で説明した正規表現化部32aと同様の情報処理を実行する正規表現化手順と、クラスタリング部32bと同様の情報処理を実行するクラスタリング手順と、特徴情報抽出部32cと同様の情報処理を実行する特徴情報抽出手順とが記述されたプログラムモジュール1093が、ハードディスクドライブ1031に記憶される。
 また、トラヒック特徴情報抽出プログラムによる情報処理に用いられるデータは、プログラムデータ1094として、例えば、ハードディスクドライブ1031に記憶される。そして、CPU1020が、ハードディスクドライブ1031に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。
 なお、トラヒック特徴情報抽出プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1031に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1041などを介してCPU1020によって読み出されてもよい。あるいは、トラヒック特徴情報抽出プログラムに係るプログラムモジュール1093やプログラムデータ1094は、LANやWAN(Wide Area Network)などのネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
(その他)
 なお、本実施形態で説明したトラヒック特徴情報抽出プログラムは、インターネットなどのネットワークを介して配布することができる。また、特定プログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
1~5  ネットワーク
6~13  パケット転送部
14   囮サーバ
15   囮端末
16   端末型サンドボックス
17   サーバ型サンドボックス
18~19 ユーザサーバ
20~21 ユーザ端末
22~24 通信監視部
25   端末用攻撃検知ソフトウェア
26   サーバ用攻撃検知ソフトウェア
27   攻撃者端末
28   マルウェア配布サーバ
29   悪性サーバ
30   情報収集配信サーバ
31   ログ収集部
32   トラヒック特徴情報抽出・対照部
32a  正規表現化部
32b  クラスタリング部
32c  特徴情報抽出部
32d  絞り込み部
32e  特定部
33   特徴情報収集配信部
34   記憶部
34a  正規表現パターンテーブル
34b  単語リストテーブル
34c  宛先情報テーブル
1000  コンピュータ
1010  メモリ
1011  ROM
1012  RAM
1020  CPU
1030  ハードディスクドライブインタフェース
1031  ハードディスクドライブ
1040  ディスクドライブインタフェース
1041  ディスクドライブ
1050  シリアルポートインタフェース
1051  マウス
1052  キーボード
1060  ビデオアダプタ
1061  ディスプレイ
1070  ネットワークインタフェース
1080  バス
1091  OS
1092  アプリケーションプログラム
1093  プログラムモジュール
1094  プログラムデータ

Claims (8)

  1.  トラヒック特徴情報抽出装置で実行されるトラヒック特徴情報抽出方法であって、
     トラヒックログから予め設定した項目を抽出し、当該項目に含まれる部分文字列について、所定の規則に基づいて正規表現化する正規表現化工程と、
     前記正規表現化したトラヒックログのエントリをクラスタリングするクラスタリング工程と、
     前記クラスタリングしたトラヒックログに含まれるエントリ間の距離の総和が最小となるエントリを各クラスタのトラヒック特徴情報として抽出する特徴情報抽出工程と
     を含んだことを特徴とするトラヒック特徴情報抽出方法。
  2.  前記正規表現化工程は、抽出した前記項目に含まれる部分文字列に、単語リストに記載された単語が存在するか否かを判定し、前記単語が存在する場合には、当該部分文字列を正規表現化せず、前記単語が存在しない場合には、当該部分文字列を所定の規則に基づいて正規表現化することを特徴とする請求項1に記載のトラヒック特徴情報抽出方法。
  3.  前記単語リストは、マルウェアが発生させるトラヒックログにおいて通信のプロトコルスタックで利用される項目の統計値を算出し、算出した前記統計値が閾値以上となる項目に含まれる任意の文字列を抽出することにより生成されることを特徴とする請求項2に記載のトラヒック特徴情報抽出方法。
  4.  前記クラスタリング工程は、通信の宛先を示す宛先情報を用いてトラヒックログをクラスタリングする手法、及び通信のプロトコルを用いてトラヒックログをクラスタリングする手法の少なくともいずれか一つの手法を用いることを特徴とする請求項1に記載のトラヒック特徴情報抽出方法。
  5.  前記正規表現化したトラヒックログから予め設定した指標に従って当該トラヒックログ内での統計値を算出し、前記クラスタリングしたトラヒックログから抽出した前記特徴情報と、前記統計値とに基づいて、特徴情報を絞り込む絞り込み工程を更に含んだことを特徴とする請求項1に記載のトラヒック特徴情報抽出方法。
  6.  絞り込んだ前記特徴情報と、防御対象ネットワークの任意のトラヒックログとを対照して、予め設定した指標を用いてスコアを算出し、当該スコアが閾値以上となるトラヒックログ内のエントリを特定する特定工程を更に含んだことを特徴とする請求項5に記載のトラヒック特徴情報抽出方法。
  7.  トラヒックログから予め設定した項目を抽出し、当該項目に含まれる部分文字列について、所定の規則に基づいて正規表現化する正規表現化部と、
     前記正規表現化したトラヒックログのエントリをクラスタリングするクラスタリング部と、
     前記クラスタリングしたトラヒックログに含まれるエントリ間の距離の総和が最小となるエントリを各クラスタのトラヒック特徴情報として抽出する特徴情報抽出部と
     を有することを特徴とするトラヒック特徴情報抽出装置。
  8.  トラヒックログから予め設定した項目を抽出し、当該項目に含まれる部分文字列について、所定の規則に基づいて正規表現化する正規表現化手順と、
     前記正規表現化したトラヒックログのエントリをクラスタリングするクラスタリング手順と、
     前記クラスタリングしたトラヒックログに含まれるエントリ間の距離の総和が最小となるエントリを各クラスタのトラヒック特徴情報として抽出する特徴情報抽出手順と
     をコンピュータに実行させるためのトラヒック特徴情報抽出プログラム。
PCT/JP2015/057370 2014-03-19 2015-03-12 トラヒック特徴情報抽出方法、トラヒック特徴情報抽出装置及びトラヒック特徴情報抽出プログラム WO2015141560A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016508686A JP6053091B2 (ja) 2014-03-19 2015-03-12 トラヒック特徴情報抽出方法、トラヒック特徴情報抽出装置及びトラヒック特徴情報抽出プログラム
US15/120,933 US10721244B2 (en) 2014-03-19 2015-03-12 Traffic feature information extraction method, traffic feature information extraction device, and traffic feature information extraction program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014056659 2014-03-19
JP2014-056659 2014-03-19

Publications (1)

Publication Number Publication Date
WO2015141560A1 true WO2015141560A1 (ja) 2015-09-24

Family

ID=54144530

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/057370 WO2015141560A1 (ja) 2014-03-19 2015-03-12 トラヒック特徴情報抽出方法、トラヒック特徴情報抽出装置及びトラヒック特徴情報抽出プログラム

Country Status (3)

Country Link
US (1) US10721244B2 (ja)
JP (1) JP6053091B2 (ja)
WO (1) WO2015141560A1 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017083947A (ja) * 2015-10-23 2017-05-18 日本電信電話株式会社 ホワイトリスト作成装置、ホワイトリスト作成方法およびホワイトリスト作成プログラム
JP2018133004A (ja) * 2017-02-16 2018-08-23 日本電信電話株式会社 異常検知システム及び異常検知方法
JP2019512133A (ja) * 2016-03-09 2019-05-09 シマンテック コーポレーションSymantec Corporation アプリケーションネットワークアクティビティの自動分類のためのシステム及び方法
JP2019521422A (ja) * 2016-05-20 2019-07-25 インフォマティカ エルエルシー 異常なユーザ行動関連アプリケーションデータを検出するための方法、装置、およびコンピュータ読み取り可能な媒体
US10394915B1 (en) * 2016-08-24 2019-08-27 Amazon Technologies, Inc. Architecture and techniques to search logging information
US10666675B1 (en) 2016-09-27 2020-05-26 Ca, Inc. Systems and methods for creating automatic computer-generated classifications
WO2022137883A1 (ja) * 2020-12-24 2022-06-30 日本電気株式会社 攻撃情報生成装置、制御方法、及び非一時的なコンピュータ可読媒体
JP2022533552A (ja) * 2019-05-07 2022-07-25 セキュアワークス コーポレーション システムレベルセキュリティのための階層的挙動行動のモデル化および検出システムおよび方法
US11546356B2 (en) 2018-02-15 2023-01-03 Nippon Telegraph And Telephone Corporation Threat information extraction apparatus and threat information extraction system
US11811800B2 (en) 2018-02-26 2023-11-07 Nippon Telegraph And Telephone Corporation Traffic feature information extraction device, traffic feature information extraction method, and traffic feature information extraction program

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015141560A1 (ja) * 2014-03-19 2015-09-24 日本電信電話株式会社 トラヒック特徴情報抽出方法、トラヒック特徴情報抽出装置及びトラヒック特徴情報抽出プログラム
US9912690B2 (en) * 2014-04-08 2018-03-06 Capital One Financial Corporation System and method for malware detection using hashing techniques
US9866576B2 (en) 2015-04-17 2018-01-09 Centripetal Networks, Inc. Rule-based network-threat detection
US9838407B1 (en) * 2016-03-30 2017-12-05 EMC IP Holding Company LLC Detection of malicious web activity in enterprise computer networks
US10681059B2 (en) * 2016-05-25 2020-06-09 CyberOwl Limited Relating to the monitoring of network security
KR101913141B1 (ko) * 2016-10-28 2019-01-14 주식회사 윈스 비용기반 최적화 기법을 통한 정규 표현식 탐색 성능 향상 장치 및 방법
US10567433B2 (en) * 2017-07-06 2020-02-18 Bank Of America Corporation Network device authorization for access control and information security
US10609064B2 (en) * 2017-07-06 2020-03-31 Bank Of America Corporation Network device access control and information security
JP6866322B2 (ja) * 2018-02-13 2021-04-28 日本電信電話株式会社 アクセス元分類装置、アクセス元分類方法及びプログラム
JP7020362B2 (ja) * 2018-10-10 2022-02-16 日本電信電話株式会社 探索装置、探索方法及び探索プログラム
CN111125693A (zh) * 2019-12-18 2020-05-08 杭州安恒信息技术股份有限公司 一种设备安全防护方法、装置及设备
US11606385B2 (en) * 2020-02-13 2023-03-14 Palo Alto Networks (Israel Analytics) Ltd. Behavioral DNS tunneling identification
US11811820B2 (en) * 2020-02-24 2023-11-07 Palo Alto Networks (Israel Analytics) Ltd. Malicious C and C channel to fixed IP detection
US20210344690A1 (en) * 2020-05-01 2021-11-04 Amazon Technologies, Inc. Distributed threat sensor analysis and correlation
US11582251B2 (en) * 2020-05-26 2023-02-14 Paypal, Inc. Identifying patterns in computing attacks through an automated traffic variance finder
CN111708860A (zh) * 2020-06-15 2020-09-25 北京优特捷信息技术有限公司 信息提取方法、装置、设备及存储介质
US11425162B2 (en) 2020-07-01 2022-08-23 Palo Alto Networks (Israel Analytics) Ltd. Detection of malicious C2 channels abusing social media sites
CN112511459B (zh) * 2020-11-23 2024-04-26 恒安嘉新(北京)科技股份公司 一种流量识别方法、装置、电子设备及存储介质
US11799904B2 (en) * 2020-12-10 2023-10-24 Cisco Technology, Inc. Malware detection using inverse imbalance subspace searching
US20220247750A1 (en) * 2021-01-29 2022-08-04 Paypal, Inc. Evaluating access requests using assigned common actor identifiers
US11968222B2 (en) 2022-07-05 2024-04-23 Palo Alto Networks (Israel Analytics) Ltd. Supply chain attack detection

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004312064A (ja) * 2003-02-21 2004-11-04 Intelligent Cosmos Research Institute ネットワーク異常検出装置、ネットワーク異常検出方法およびネットワーク異常検出プログラム
JP2010050939A (ja) * 2008-08-25 2010-03-04 Hitachi Information Systems Ltd 攻撃ノード群判定装置およびその方法、ならびに情報処理装置および攻撃対処方法、およびプログラム
JP2012222692A (ja) * 2011-04-12 2012-11-12 Nippon Telegr & Teleph Corp <Ntt> 監視点設定方法及び装置及びプログラム
JP2013085124A (ja) * 2011-10-11 2013-05-09 Nippon Telegr & Teleph Corp <Ntt> 攻撃情報管理システム、攻撃情報管理装置、攻撃情報管理方法及びプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8065722B2 (en) * 2005-03-21 2011-11-22 Wisconsin Alumni Research Foundation Semantically-aware network intrusion signature generator
US20100199345A1 (en) * 2009-02-04 2010-08-05 Breach Security, Inc. Method and System for Providing Remote Protection of Web Servers
WO2010105184A2 (en) * 2009-03-13 2010-09-16 Breach Security , Inc. A method and apparatus for phishing and leeching vulnerability detection
US8311956B2 (en) * 2009-08-11 2012-11-13 At&T Intellectual Property I, L.P. Scalable traffic classifier and classifier training system
US8554771B2 (en) * 2009-12-14 2013-10-08 Sandia Corporation Technique for fast and efficient hierarchical clustering
US8578497B2 (en) * 2010-01-06 2013-11-05 Damballa, Inc. Method and system for detecting malware
US8826438B2 (en) * 2010-01-19 2014-09-02 Damballa, Inc. Method and system for network-based detecting of malware from behavioral clustering
US8516586B1 (en) * 2011-09-20 2013-08-20 Trend Micro Incorporated Classification of unknown computer network traffic
US8549645B2 (en) * 2011-10-21 2013-10-01 Mcafee, Inc. System and method for detection of denial of service attacks
WO2015141560A1 (ja) * 2014-03-19 2015-09-24 日本電信電話株式会社 トラヒック特徴情報抽出方法、トラヒック特徴情報抽出装置及びトラヒック特徴情報抽出プログラム
US10083318B2 (en) * 2015-12-28 2018-09-25 Fortinet, Inc. Pattern matching for data leak prevention
US10212133B2 (en) * 2016-07-29 2019-02-19 ShieldX Networks, Inc. Accelerated pattern matching using pattern functions

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004312064A (ja) * 2003-02-21 2004-11-04 Intelligent Cosmos Research Institute ネットワーク異常検出装置、ネットワーク異常検出方法およびネットワーク異常検出プログラム
JP2010050939A (ja) * 2008-08-25 2010-03-04 Hitachi Information Systems Ltd 攻撃ノード群判定装置およびその方法、ならびに情報処理装置および攻撃対処方法、およびプログラム
JP2012222692A (ja) * 2011-04-12 2012-11-12 Nippon Telegr & Teleph Corp <Ntt> 監視点設定方法及び装置及びプログラム
JP2013085124A (ja) * 2011-10-11 2013-05-09 Nippon Telegr & Teleph Corp <Ntt> 攻撃情報管理システム、攻撃情報管理装置、攻撃情報管理方法及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MASAKI NARAHASHI ET AL.: "Detecting Hostile Accesses through Incremental Subspace Clustering for Web Access Log", THE 17TH ANNUAL CONFERENCE OF THE JAPANESE SOCIETY FOR ARTIFICIAL INTELLIGENCE, June 2003 (2003-06-01), pages 1 - 4, XP010663018 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017083947A (ja) * 2015-10-23 2017-05-18 日本電信電話株式会社 ホワイトリスト作成装置、ホワイトリスト作成方法およびホワイトリスト作成プログラム
JP2019512133A (ja) * 2016-03-09 2019-05-09 シマンテック コーポレーションSymantec Corporation アプリケーションネットワークアクティビティの自動分類のためのシステム及び方法
JP2019521422A (ja) * 2016-05-20 2019-07-25 インフォマティカ エルエルシー 異常なユーザ行動関連アプリケーションデータを検出するための方法、装置、およびコンピュータ読み取り可能な媒体
US10394915B1 (en) * 2016-08-24 2019-08-27 Amazon Technologies, Inc. Architecture and techniques to search logging information
US10666675B1 (en) 2016-09-27 2020-05-26 Ca, Inc. Systems and methods for creating automatic computer-generated classifications
JP2018133004A (ja) * 2017-02-16 2018-08-23 日本電信電話株式会社 異常検知システム及び異常検知方法
US11546356B2 (en) 2018-02-15 2023-01-03 Nippon Telegraph And Telephone Corporation Threat information extraction apparatus and threat information extraction system
US11811800B2 (en) 2018-02-26 2023-11-07 Nippon Telegraph And Telephone Corporation Traffic feature information extraction device, traffic feature information extraction method, and traffic feature information extraction program
JP2022533552A (ja) * 2019-05-07 2022-07-25 セキュアワークス コーポレーション システムレベルセキュリティのための階層的挙動行動のモデル化および検出システムおよび方法
JP7302019B2 (ja) 2019-05-07 2023-07-03 セキュアワークス コーポレーション システムレベルセキュリティのための階層的挙動行動のモデル化および検出システムおよび方法
WO2022137883A1 (ja) * 2020-12-24 2022-06-30 日本電気株式会社 攻撃情報生成装置、制御方法、及び非一時的なコンピュータ可読媒体

Also Published As

Publication number Publication date
US10721244B2 (en) 2020-07-21
JP6053091B2 (ja) 2016-12-27
JPWO2015141560A1 (ja) 2017-04-06
US20160366159A1 (en) 2016-12-15

Similar Documents

Publication Publication Date Title
JP6053091B2 (ja) トラヒック特徴情報抽出方法、トラヒック特徴情報抽出装置及びトラヒック特徴情報抽出プログラム
JP6159018B2 (ja) 抽出条件決定方法、通信監視システム、抽出条件決定装置及び抽出条件決定プログラム
JP6001689B2 (ja) ログ分析装置、情報処理方法及びプログラム
Lu et al. Clustering botnet communication traffic based on n-gram feature selection
JP5655191B2 (ja) 特徴情報抽出装置、特徴情報抽出方法および特徴情報抽出プログラム
Aoki et al. Controlling malware http communications in dynamic analysis system using search engine
Zarras et al. Automated generation of models for fast and precise detection of HTTP-based malware
JP2019021294A (ja) DDoS攻撃判定システムおよび方法
JP5832951B2 (ja) 攻撃判定装置、攻撃判定方法及び攻撃判定プログラム
JP6386593B2 (ja) 悪性通信パターン抽出装置、悪性通信パターン抽出システム、悪性通信パターン抽出方法、および、悪性通信パターン抽出プログラム
Shin et al. Unsupervised multi-stage attack detection framework without details on single-stage attacks
Le et al. Unsupervised monitoring of network and service behaviour using self organizing maps
JP6592196B2 (ja) 悪性イベント検出装置、悪性イベント検出方法および悪性イベント検出プログラム
JP5986340B2 (ja) Url選定方法、url選定システム、url選定装置及びurl選定プログラム
WO2005111805A1 (en) Method of network traffic signature detection
WO2017145843A1 (ja) 解析方法、解析装置および解析プログラム
Kheir et al. Behavioral fine-grained detection and classification of P2P bots
Chiba et al. Botprofiler: Profiling variability of substrings in http requests to detect malware-infected hosts
Zurutuza et al. A data mining approach for analysis of worm activity through automatic signature generation
JP5385867B2 (ja) データ転送装置及びアクセス解析方法
Heenan et al. A survey of Intrusion Detection System technologies
Kheir et al. Peerviewer: Behavioral tracking and classification of P2P malware
Saiyod et al. Improving intrusion detection on snort rules for botnet detection
US20230362176A1 (en) System and method for locating dga compromised ip addresses
Jeng et al. CC-Tracker: Interaction profiling bipartite graph mining for malicious network activity detection

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: 15765316

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2016508686

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15120933

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: 15765316

Country of ref document: EP

Kind code of ref document: A1