JP2016508274A - クラスタ化を用いたサンプルの分類 - Google Patents

クラスタ化を用いたサンプルの分類 Download PDF

Info

Publication number
JP2016508274A
JP2016508274A JP2015552792A JP2015552792A JP2016508274A JP 2016508274 A JP2016508274 A JP 2016508274A JP 2015552792 A JP2015552792 A JP 2015552792A JP 2015552792 A JP2015552792 A JP 2015552792A JP 2016508274 A JP2016508274 A JP 2016508274A
Authority
JP
Japan
Prior art keywords
samples
features
cluster
labeled
unlabeled
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.)
Granted
Application number
JP2015552792A
Other languages
English (en)
Other versions
JP6388875B2 (ja
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.)
NortonLifeLock Inc
Original Assignee
Symantec 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 Symantec Corp filed Critical Symantec Corp
Publication of JP2016508274A publication Critical patent/JP2016508274A/ja
Application granted granted Critical
Publication of JP6388875B2 publication Critical patent/JP6388875B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/564Static detection by virus signature recognition

Landscapes

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

Abstract

ラベル付けされていないサンプルは、クラスタ化を用いて分類される。ラベル付けされたサンプル及びラベル付けされていないサンプルを含むサンプルのセットが確立される。特徴の値がデータセットに含まれるサンプルから収集され、特徴のサブセットが選択される。クラスタのセットを生成するために、選択された特徴のサブセットの収集された値の類似性に基づいて、ラベル付けされたサンプル及びラベル付けされていないサンプルが一緒にクラスタ化され、各クラスタは、サンプルのセットからのサンプルのサブセットを有する。少なくとも1つの停止条件に達するまで、クラスタのセット内の各クラスタ内のサンプルのサブセットにおいて選択する工程及びクラスタ化する工程が再帰的に反復される。反復は、ラベル付けされたサンプル及びラベル付けされていないサンプルを有するクラスタを生成する。ラベル付けされていないサンプルを分類するために、クラスタ内のラベル付けされたサンプルからクラスタ内のラベル付けされていないサンプルにラベルが伝播される。

Description

本発明は、概して、コンピュータセキュリティに関し、具体的には、コンピュータファイルのサンプル等のサンプルを分類する工程に関する。
現代のコンピュータを攻撃することができる多種多様な悪意のあるソフトウェア(マルウェア)が存在する。マルウェアの脅威には、コンピュータウイルス、ワーム、トロイの木馬プログラム、スパイウェア、アドウェア、クライムウェア、及びフィッシングウェブサイトが含まれる。マルウェアは、ログイン、パスワード、銀行口座識別子、及びクレジットカード番号等の重要な情報を不正に取り込むことができる。同様に、マルウェアは、攻撃者が感染しているコンピュータにアクセスしそれを制御することを可能にする。
現代のマルウェアは、多くの場合、標的が絞られており、関連した一握りのコンピュータにしか送られない。例えば、トロイの木馬プログラムは、特定の企業の特定の部門内のコンピュータを標的とするように設計され得る。更には、大量に分配されたマルウェアでさえも、マルウェアを経時的に変化させる多相性を含み得る。同じマルウェアのインスタンスが小数しか存在せず、セキュリティソフトウェアが、所定のコンピュータを感染させた特定のインスタンスを認識するように構成されない場合があるため、セキュリティソフトウェアがそのようなマルウェアを検出することは困難である。
しかしながら、多くの場合、マルウェアの異なるインスタンスは関連している。例えば、複数の見た目には異なるマルウェアファイルは、実際には、単一の種類のマルウェアの変形であり得る。これらの変形は、単一のマルウェア「ファミリー」を集合的に形成する。マルウェアのファミリー関係の知識を用いて、セキュリティソフトウェアの検出能力を改善することができる。
上術及び他の問題は、サンプルを分類するための方法、コンピュータ、及びコンピュータ可読記憶媒体によって対処される。方法は、ラベル付けされたサンプル及びラベル付けされていないサンプルを含むサンプルのセットを確立する工程を含む。特徴の値がラベル付けされたサンプル及びラベル付けされていないサンプルから収集され、特徴のサブセットが選択される。クラスタのセットを生成するために、選択された特徴のサブセットの収集された値の類似性に基づいて、ラベル付けされたサンプル及びラベル付けされていないサンプルが一緒にクラスタ化され、各クラスタは、サンプルのセットからのサンプルのサブセットを有する。少なくとも1つの停止条件に達するまで、クラスタのセット内の各クラスタ内のサンプルのサブセットにおいて選択する工程及びクラスタ化する工程が再帰的に反復される。反復は、ラベル付けされたサンプル及びラベル付けされていないサンプルを有するクラスタを生成する。ラベル付けされていないサンプルを分類するために、クラスタ内のラベル付けされたサンプルからクラスタ内のラベル付けされていないサンプルにラベルが伝播される。
コンピュータの実施形態は、工程を実施するために実行可能なコンピュータプログラムモジュールを記憶する非一時的コンピュータ可読記憶媒体を備える。工程は、ラベル付けされたサンプル及びラベル付けされていないサンプルを含むサンプルのセットを確立する。特徴の値がサンプルから収集され、特徴のサブセットが選択される。クラスタのセットを生成するために、選択された特徴のサブセットの収集された値の類似性に基づいて、ラベル付けされたサンプル及びラベル付けされていないサンプルが一緒にクラスタ化され、各クラスタは、サンプルのセットからのサンプルのサブセットを有する。少なくとも1つの停止条件に達するまで、クラスタのセット内の各クラスタ内のサンプルのサブセットにおいて選択する工程及びクラスタ化する工程が再帰的に反復される。反復は、ラベル付けされたサンプル及びラベル付けされていないサンプルを有するクラスタを生成する。ラベル付けされていないサンプルを分類するために、クラスタ内のラベル付けされたサンプルからクラスタ内のラベル付けされていないサンプルにラベルが伝播される。コンピュータは、コンピュータプログラムモジュールを実行するためのコンピュータプロセッサを更に備える。
本媒体の実施形態は、コンピュータファイルを分類するためのコンピュータプログラムモジュールを記憶する。コンピュータプログラムモジュールは、工程を実施するために実行可能である。工程は、ラベル付けされたサンプル及びラベル付けされていないサンプルを含むサンプルのセットを確立する。特徴の値がサンプルから収集され、特徴のサブセットが選択される。クラスタのセットを生成するために、選択された特徴のサブセットの収集された値の類似性に基づいて、ラベル付けされたサンプル及びラベル付けされていないサンプルが一緒にクラスタ化され、各クラスタは、サンプルのセットからのサンプルのサブセットを有する。少なくとも1つの停止条件に達するまで、クラスタのセット内の各クラスタ内のサンプルのサブセットにおいて選択する工程及びクラスタ化する工程が再帰的に反復される。反復は、ラベル付けされたサンプル及びラベル付けされていないサンプルを有するクラスタを生成する。ラベル付けされていないサンプルを分類するために、クラスタのラベル付けされたサンプルからクラスタのラベル付けされていないサンプルにラベルが伝播される。
一実施形態に従うコンピューティング環境のハイレベルブロック図である。 セキュリティサーバ又はクライアントとしての使用のための典型的なコンピュータを図解するハイレベルブロック図である。 一実施形態に従うセキュリティサーバの分類モジュールの詳細な図を図解するハイレベルブロック図である。 不明のコンピュータファイルを分類するためにセキュリティサーバの一実施形態によって実施される工程を図解するフロー図である。
これらの図は、図解の目的のみのために実施形態を描写する。当業者であれば、本明細書に記載の原理から逸脱することなく、本明細書に図解される構造及び方法の代替実施形態を用いることができることを以下の説明から容易に理解するであろう。
図1は、一実施形態に従うコンピューティング環境100のハイレベルブロック図である。図1は、ネットワーク114によって接続された1つのセキュリティサーバ110及び3つのクライアント112を図解する。説明を単純且つ明瞭にするために、図1において、3つのクライアント112のみが図解される。コンピューティング環境100の実施形態は、何千又は何百万ものクライアント112を有することができる。いくつかの実施形態は、複数のセキュリティサーバ110も有する。
クライアント112は、悪意のあるソフトウェアをホストすることができる電子デバイスである。一実施形態では、クライアント112は、例えば、Microsoft Windows(登録商標)互換オペレーティングシステム(OS)、Apple OS X、及び/又はLinux(登録商標)ディストリビューションを実行する従来のコンピュータシステムである。クライアント112はまた、タブレットコンピュータ、モバイル電話、ビデオゲームシステム等のコンピュータ機能性を有する別のデバイスであり得る。クライアント112は、典型的に、悪意のあるソフトウェアをホストできる多数のコンピュータファイルを記憶する。
「マルウェア」とも呼ばれる悪意のあるソフトウェアは、一般に、クライアント112上で不正に実行されるか、又は何らかの不正な機能性を有するソフトウェアとして定義される。マルウェアは、正当なファイルに付随する寄生ウイルス、コンピュータに感染して他のコンピュータに広がるためにコンピュータのセキュリティの弱さを悪用するワーム、正当に見えるが実際は隠れた悪意のあるコードを含むトロイの木馬プログラム、機密情報を捕捉するか、又は広告を表示させるためにコンピュータ上のキーストローク及び/又は他のアクションを監視するスパイウェア等の多くの形態をとることができる。
クライアント112は、クライアント上でマルウェアの存在を検出するためにセキュリティモジュール116を実行する。セキュリティモジュール116は、クライアント112のOS又は別個の包括的セキュリティパッケージの一部に組み込まれてもよい。一実施形態では、セキュリティモジュール116は、セキュリティサーバ110を動作する同じエンティティによって提供される。セキュリティモジュール116は、ネットワーク114を介してセキュリティサーバ110と通信し、クライアント112側でマルウェアを検出するための検出データを取得する。
セキュリティモジュール116によって取得された検出データは、マルウェアシグネチャを含む。マルウェアシグネチャは、クライアント112側でマルウェアのインスタンスを検出するために使用され得るマルウェアの属性を説明する。これらの属性は、コンピュータファイルにおいて見つかったマルウェアの特性であるデータの配列、及びクライアント112側で実行されるとマルウェアによって実施される挙動の配列を識別するストリングシグネチャを含み得る。検出データは、セキュリティモジュール116を使用して所与の1つのソフトウェアがマルウェアであるかを評価することができるレピュテーション、及び/又はマルウェア攻撃を示す可能性の高いクライアントの状態を識別するヒューリスティック等のクライアント112側でマルウェアを検出するための他の方法を説明するデータも含み得る。
一実施形態では、セキュリティモジュール116は、検出データを用いてクライアント112を監視し、それがマルウェアを検出した場合、報告書を生成する。報告書は、クライアント112のユーザ及び/又はクライアント112の管理者等の別のエンティティに検出されたマルウェアを通知する。セキュリティモジュール116は、悪意のある挙動のブロック、マルウェアの検疫、及びマルウェアの削除等のマルウェアを修復する1つ以上のアクションも実施することができる。
加えて、セキュリティモジュール116は、マルウェアのサンプル及びクライアント112側で検出された他のファイルをセキュリティサーバ110に提供(例えば、アップロード)し得る。一実施形態の「サンプル」は、関連付けられたコンピュータファイルを説明するデータである。サンプルは、ファイル全体、ファイルのサブセットを含む一部、又はファイルから抽出されたデータ若しくは得られたデータの収集物(例えば、ファイル内の情報のハッシュ)を含み得る。一実施形態では、セキュリティモジュール116は、セキュリティサーバ110に、ポータブル実行可能(PE)ファイルのみのサンプル等のクライアント112側で検出された特定の種類のファイルのみのサンプルを提供する。サンプルは、コンピュータファイル以外のデータも説明し得る。
セキュリティサーバ110は、検出データを生成してクライアント112に分配させるように構成されたハードウェアデバイス及び/又はソフトウェアモジュールである。セキュリティサーバ110の例は、クライアント112のセキュリティモジュール116にセキュリティソフトウェア及びサービスを提供するウェブベースのシステムである。実施形態に応じて、セキュリティサーバ110の機能のうちの1つ以上は、クラウドコンピューティング環境によって提供され得る。本明細書で使用されるとき、「クラウドコンピューティング」は、動的にスケーラブルであり、かつ多くの場合、仮想化されたリソースがネットワーク114上のサービスとして提供される、コンピューティングのスタイルを指す。クライアント112及びセキュリティモジュール116に属する機能は、クラウドコンピューティング環境によっても提供され得る。
セキュリティサーバ110の一実施形態は、マルウェア又はグッドウェア(即ち、悪意のないもの)のいずれかとして不明サンプルを分類するための分類モジュール118を含む。分類モジュール118は、類似の特徴を有するラベル付けされたサンプル及びラベル付けされていないサンプルを一緒にクラスタ化する反復型技術を使用する。初期クラスタ化反復は、類似の特徴を有するラベル付けされたサンプル及びラベル付けされていないサンプルのクラスタを生成する。その後の反復は、初期クラスタを再帰的に分解してより小さい子クラスタにする。サンプルの特徴の異なるサブセットは、クラスタ化の各反復中に異なるクラスタのために使用される。
結果として得られるクラスタは、フラットクラスタ化アプローチを用いても明らかにされ得ないサンプル間の階層関係を明らかにする。例えば、分類モジュール118によって実施される反復型クラスタ化は、ラベル付けされていないサンプルを有する子クラスタ及び既知のマルウェアとしてラベル付けされたサンプルを有する親クラスタを生成し得、それによって、子クラスタ内のラベル付けされていないサンプルが、親クラスタ内のラベル付けされたサンプルと同じマルウェアファミリーに属することを明らかにする。分類モジュール118は、クラスタ内のサンプル間でラベル及び他の情報を伝播し、それにより以前にラベル付けされていなかったサンプル及び関連付けられたコンピュータファイルを分類する。
セキュリティサーバ110は、新たな分類を使用して新たに分類されたコンピュータファイルに関する検出データを生成し得る。次いで、セキュリティサーバは、クライアント112のセキュリティモジュール116に検出データを分配し得る。一実施形態では、セキュリティサーバ110は、新たなデータが作成されたときにローリングベースで検出データを分配する。別の実施形態では、検出データは、所定のスケジュールで及び/又はセキュリティモジュール116による要求時に分配される。
ネットワーク114は、セキュリティサーバ110と、クライアント112と、ネットワーク上の任意の他のエンティティとの間の通信経路を表す。一実施形態では、ネットワーク114は、インターネットであり、標準的な通信技術及び/又はプロトコルを使用する。したがって、ネットワーク114は、イーサネット(登録商標)、802.11、ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMAX)、3G、デジタル加入者線(DSL)、非同期転送モード(ATM)、InfiniBand、PCIエキスプレス・アドバンスド・スイッチング等の技術を用いてリンクを含むことができる。同様に、ネットワーク114上で使用されるネットワーキングプロトコルは、マルチプロトコル・ラベル・スイッチング(MPLS)、伝送制御プロトコル/インターネットプロトコル(TCP/IP)、ユーザ・データグラム・プロトコル(UDP)、ハイパーテキスト転送プロトコル(HTTP)、簡易メール転送プロトコル(SMTP)、ファイル転送プロトコル(FTP)等を含むことができる。ネットワーク114上で交換されるデータは、ハイパーテキストマークアップ言語(HTML)、拡張マークアップ言語(XML)等を含む技術及び/又はフォーマットを用いて表され得る。加えて、リンクの全て又はリンクのうちのいくつかは、セキュアソケットレイヤ(SSL)、トランスポート層セキュリティ(TLS)、仮想プライベートネットワーク(VPN)、インターネットプロトコルセキュリティ(IPsec)等の従来の暗号化技術を用いて暗号化され得る。他の実施形態では、エンティティは、上に説明されたものの代わりに又はそれらのものに加えて、カスタム及び/又は専用のデータ通信技術を使用できる。
図2は、セキュリティサーバ110又はクライアント112としての使用のための典型的なコンピュータ200を図解するハイレベルブロック図である。チップセット204に連結される1つのプロセッサ202が図解される。メモリ206、記憶装置208、キーボード210、グラフィックスアダプタ212、ポインティングデバイス214、及びネットワークアダプタ216もチップセット204に連結される。ディスプレイ218がグラフィックスアダプタ212に連結される。一実施形態では、チップセット204の機能性は、メモリコントローラハブ220及び入出力コントローラハブ222によって与えられる。別の実施形態では、メモリ206は、チップセット204の代わりにプロセッサ202に直接連結される。
記憶装置208は、ハードドライブ、コンパクトディスク読出し専用メモリ(CD−ROM)、DVD、又はソリッドステートメモリデバイス等の非一時的コンピュータ可読記憶媒体である。メモリ206は、プロセッサ202によって使用される命令及びデータを保持する。ポインティングデバイス214は、マウス、トラックボール、又は他の種類のポインティングデバイスであり、コンピュータシステム200内にデータを入力するためにキーボード210と組み合わせて使用される。グラフィックスアダプタ212は、ディスプレイ218上に画像及び他の情報を表示する。ネットワークアダプタ216は、コンピュータシステム200をネットワーク116に連結する。
当技術分野で知られているように、コンピュータ200は、図2に示されるコンポーネントとは異なるコンポーネント及び/又は他のコンポーネントを有することができる。更に、コンピュータ200は、図解されるある特定のコンポーネントを欠いてもよい。一実施形態では、セキュリティサーバとして機能するコンピュータ200は、複数のブレードコンピュータで形成され、キーボード210、ポインティングデバイス214、グラフィックスアダプタ212、及び/又はディスプレイ218を欠く。更に、記憶装置208は、(ストレージエリアネットワーク(SAN)内に組み入れられる等の)ローカルであり、且つ/又はコンピュータ200から離れていてもよい。
この説明は、特定の機能性を提供するためのコンピュータプログラムロジックを指す「モジュール」という用語を使用する。モジュールは、ハードウェア、ファームウェア、及び/又はソフトウェアによって実装され得る。モジュールは、典型的に、記憶装置208等のコンピュータ可読記憶媒体に記憶され、メモリ206にロードされ、プロセッサ202によって実行される。
図3は、一実施形態に従う、セキュリティサーバ110の分類モジュール118の詳細図を図解するハイレベルブロック図である。図3に示されるように、分類モジュール118自体が複数のモジュールを含む。いくつかの実施形態では、機能は、本明細書に記載の様式とは異なる様式でこれらのモジュール間に分配される。
記憶モジュール310は、分類モジュール118によって使用されるデータを記憶する。そのようなデータの例としては、ファイルサンプル、分類プロセス中に作成され使用される中間データ、結果として得られる分類、及び検出データが挙げられる。記憶モジュール310は、リレーショナルデータベース又は別の種類のデータベースを含み得る。
図3に示されるように、記憶モジュール310の実施形態は、ラベル付けされたサンプルデータセット312及びラベル付けされていないサンプルデータセット314を含む、コンピュータファイルサンプルを保持するデータセットを記憶する。ラベル付けされたサンプルデータセット312(「ラベル付けされたデータセット」とも呼ばれる)は、既知のラベルを有するファイルのサンプルを含む。一実施形態では、ラベル付けされたデータセット312内の各サンプルは、グッドウェア又はマルウェアのいずれかとしてラベル付けされる。グッドウェアラベルは、サンプルと関連付けられたファイルが、悪意のないもの(即ち、悪意のないものであると既知である)として分類されることを示す。例えば、グッドウェアラベルは、クライアント112に頻繁に存在する共通及び/又は人気のソフトウェアプログラムからのファイルのサンプルに適用され得る。マルウェアラベルは、サンプルと関連付けられたファイルが、マルウェアとして分類されることを示す。
一実施形態では、サンプルは、人間のセキュリティアナリストによって明示的に識別され、ラベル付けされ、ラベル付けされたデータセット312に追加される。例えば、セキュリティアナリストは、クライアント112で見つかった最も共通のグッドウェア及びマルウェアの代表的な集団を説明するサンプルを含むデータセットを作成し得る。同様に、セキュリティアナリストは、既知の種類のグッドウェア及びマルウェア(例えば、最も共通のグッドウェア及びマルウェアである必要はない)の幅広い表示を説明するデータセットを作成し得る。他の実施形態では、サンプルは、セキュリティサーバ110によって実施される自動化技術を介する等の他の技術を用いて、ラベル付けされ、ラベル付けされたデータセット312に追加される。
対照的に、ラベル付けされていないサンプルデータセット314(「ラベル付けされていないデータセット」とも呼ばれる)は、ラベルが不明であるファイルのサンプルを含む。言い換えると、ラベル付けされていないデータセット314内のサンプルは、サンプルと関連付けられたコンピュータファイルがグッドウェアか又はマルウェアかどうか知られていないため、ラベル付けされない。したがって、ラベル付けされていないサンプルは、不明の分類となる。ラベル付けされていないデータセット314のサンプルは、クライアント112及び/又は他のソースから取得され得る。例えば、ラベル付けされていないサンプルは、クライアント112側で以前に不明であったファイルを検出するセキュリティモジュール116から受信され得る。同様に、ラベル付けされていないサンプルは、人間セキュリティアナリストによって追加され得る。
更には、記憶モジュール310は、ラベル付けされた及びラベル付けされていないファイルサンプルの特徴を識別する特徴辞書316を記憶する。一実施形態では、特徴辞書316は、ラベル付けされたデータセット312及びラベル付けされていないデータセット314において個別のサンプルを区別するように使用され得るサンプル(それ故に、関連付けられたファイル)の特徴を列挙する。したがって、「特徴」は、異なるサンプル間で変化し得る特性である。いくつかのサンプルは、所与の特徴に関して同じ値を有し得るが、他のサンプルは、特徴に関して異なる値を有する。ラベル付けされたデータセット312及びラベル付けされていないデータセット314におけるサンプルが、PEファイルと関連付けられた実施形態では、特徴辞書316は、異なるPEファイルを区別するように使用され得る特徴を列挙する。いくつかの実施形態には、何百又は何千もの列挙された特徴が存在し得る。
具体的には、PEファイルは、WINDOWS 7(「WINDOWS」は登録商標、以下同じ)又はWINDOWS 8等のMICROSOFT WINDOWSベースのオペレーティングシステム(OS)との使用を対象としたファイルである。典型的に、PEファイルは、ファイルが実行可能なファイルであることを示すファイル拡張子「.EXE」か又はファイルがダイナミックリンクライブラリ(DLL)であることを示す「.DLL」を有する。PEファイルは、コード又はデータのいずれかを含むセクションに分割される。これらのセクションは、ヘッダを含有するMS−DOSセクション、ファイルについての基本情報を含むデータ構造を保持するPEセクション、セクションの種類、サイズ、及びファイル内の場所を含む、ファイル内の各セクションについての情報を含むセクションテーブルを含む。更なるセクションとしては、コンパイラ又はアセンブラによって生成される汎用コードを保持するテキストセクション、並びにグローバル及び静的変数を保持するデータセクションを含む。更には、PEファイルは、他のプログラムによる使用のためのファイルによってエクスポートされる機能を識別するエクスポートテーブル、及びファイルによってインポートされるモジュールを識別するインポートセクションを含む。
PEファイルの場合、特徴辞書316によって列挙される特徴は、PEファイルの構造を説明する構造特徴を含み得る。これらの構造特徴は、ファイルがどのように構築されたかを反映し、例えば、ファイルの作成に使用されたリンカー、(存在する場合)ファイルの圧縮に使用されたパッカー、及びファイルによって使用されたライブラリに影響され得る。構造特徴は、ファイル内のセクションの名前、及びファイルによって参照されるインポートされたモジュールの名前を含む。更なる構造特徴は、ファイル内のセクションの数、ファイルによって参照されるインポートされたモジュールの数、及びファイル内で使用されるリソース種類の数を含む。これらの構造特徴のうちの多くには技術的制限が存在せず、それ故に、特徴の値は、異なるファイルにわたって変化し得る。
更には、特徴辞書316によって列挙される特徴は、PEファイル内のコンテンツを説明するコンテンツ特徴を含み得る。コンテンツ特徴は、ファイルが実行されるとファイルによって実施される機能性の種類及び拡張を反映する。したがって、異なる機能性を持つ2つのファイルのコンテンツ特徴は、ファイルの構造特徴が類似であった場合でも(例えば、同じパッカーを使用して各ファイルを圧縮したかのような結果をもたらし得る場合でも)変化し得る。コンテンツ特徴は、ファイルのサイズ及びファイル内の種々のセクションのサイズを含む。
上に説明される静的特徴に加えて、特徴辞書316は、ファイルの挙動特徴も列挙し得る。挙動特徴は、ファイルが実行されるとファイルが実施する挙動を説明する(例えば、ファイルのランタイム挙動)。挙動特徴は、導き出すのに静的特徴よりもコンピュータ的に高価である。しかしながら、特徴辞書316に挙動特徴を含むことは、いくつかの実施形態では有益であり得る。
特徴辞書の他の実施形態は、本明細書に考察されるものとは異なる特徴を説明し列挙し得る。更には、特徴辞書の実施形態は、Linux(登録商標)分配において使用される実行可能及びリンク可能なフォーマット(ELF)ファイル、及びOS Xにおいて使用されるMach Object (Mach−O)ファイル等の異なる種類のファイルの特徴を説明し得る。
ここで分類モジュール118内の他のモジュールを見てみると、特徴収集モジュール318は、ラベル付けされたデータセット312及びラベル付けされていないデータセット314の各サンプルから特徴辞書316によって列挙される特徴の値を収集する。例えば、ラベル付けされたデータセット312内の所与のサンプルについては、特徴収集モジュール318は、前述の構造特徴及びコンテンツ特徴を含む、サンプルから列挙された特徴のうちの各々の値を収集する。サンプルは、その関連付けられたファイルを説明するため、収集された値は、関連付けられたファイルの同じ特徴の値も説明する。特徴収集モジュール318は、記憶モジュール310内又は他の箇所に収集した特徴を記憶し得る。
クラスタ化モジュール320は、類似の特徴を有するサンプルが一緒にクラスタ化されるように、ラベル付けされたデータセット312及びラベル付けされていないデータセット314内のファイルサンプルをクラスタ化する。一実施形態では、クラスタ化モジュール320は、反復型及び再帰型技術を用いてクラスタ化を実施する。初期クラスタ化は、ラベル付けされたデータセット312及びラベル付けされていないデータセット314内のサンプルの全てに基づいて実施されてクラスタの初期セットを生成する。別のクラスタ化は、初期セット内の各クラスタにおいて実施され、各初期親クラスタから得られた子クラスタの新たなセットを生成する。再帰型クラスタ化は、各クラスタ化のための特徴の異なるサブセットを用いて、複数回反復されて、階層関係の複数のクラスタを生成する。したがって、ルート(初期)及びリーフ(最終)ノード内のそれらのものは別として各所与のクラスタは、親クラスタが得られたファイルサンプルのスーパーセットを含む親クラスタ、及び所与のクラスタ内のファイルサンプルのサブセットを含む子クラスタを有する。
クラスタ化モジュール320は、反復型クラスタ化を制御するための反復制御モジュール322を含む。一般的に、反復制御モジュール322は、1つ以上の停止条件に達するまで、反復型クラスタ化工程を繰り返す。反復制御モジュール322のいくつかの実施形態によって使用される停止条件が以下に説明される。反復制御モジュール322の異なる実施形態は、本明細書に説明される条件以外の更なる及び/又は異なる停止条件を使用してもよく、複数の停止条件の組み合わせを使用してもよい。
反復制御モジュール322は、クラスタ内のサンプルの数に基づく停止条件を使用してもよい。この実施形態では、反復制御モジュール322は、クラスタ内のサンプルの数が特定の閾値数を下回るまで反復的にクラスタ化する。所与のクラスタが、サンプルの閾値数より少ない数を有した時点で、反復型クラスタ化は、そのクラスタに関しては停止し、結果として得られるクラスタは、クラスタ階層のその部分に関して最終クラスタ化(即ち、リーフノード)を表す。
反復制御モジュール322は、クラスタの数に基づく停止条件を使用することもできる。この実施形態では、反復制御モジュール322は、クラスタの合計数が特定の閾値数を超えるまで反復的にクラスタ化する。合計クラスタの閾値数を上回って存在した場合、反復型クラスタ化は停止し、結果として得られるクラスタは、サンプルの最終クラスタ化を表す。
反復制御モジュール322は、クラスタ化が実施され得るサンプルの利用可能な特徴の数に基づく停止条件を更に使用し得る。この実施形態では、反復制御モジュール322は、クラスタ化が実施され得るサンプルの利用可能な特徴の数が特定の閾値数を下回るまで反復的にクラスタ化する。利用可能な特徴の数は、クラスタ内のサンプルが異なる値を有する特徴の数に基づき得る。例えば、1000の合計特徴が存在した場合、クラスタ内のサンプルは、990の特徴に関しては同じ値を有し、クラスタに関しては10の利用可能な特徴が存在する。
反復制御モジュール322は、所与のクラスタ内の特徴値の変動に基づく停止条件を使用することもできる。この実施形態では、反復制御モジュール322は、クラスタ内のサンプルに関して利用可能な特徴間で変動の量を決定する。クラスタに関する変動の量が閾値量内であった場合(例えば、クラスタ内のポイントがクラスタの重心と重複するか、又はある距離閾値内であるか)、反復制御モジュール322は、そのクラスタの反復型クラスタ化を停止する。
特徴選択モジュール324は、反復制御モジュール322によって有効化され、クラスタ化プロセスの反復において使用される特徴を選択する。一実施形態では、特徴選択モジュール324は、各反復中に各クラスタに関する特徴辞書316に列挙された特徴の異なるサブセットを選択する。加えて、特徴選択モジュール324は、そのような特徴がサンプルを排除するように機能しないため、クラスタ化されるサンプルの値が変動を有しない任意の特徴を選択から除外し得る。特徴選択モジュール324が選択する特徴の中からの特徴(例えば、クラスタ内のサンプルの値が異なる特徴)は、「利用可能な」又は「残っている」特徴と称される。
代替的な実施形態では、特徴選択モジュール324は、反復中のクラスタを伴う使用のためにサンプルの特徴のうちのいずれかの中から選択する。例えば、セキュリティアナリストは、特定のクラスタのクラスタ化反復に関する特徴を明示的に選択し得る。アナリストは、クラスタ内のサンプルが、特定の特徴の値において差異を有するかにかかわらず、全ての可能な特徴の中から選択し得る。
一実施形態の特徴選択モジュール324は、1回以上の初期クラスタ化反復に関する構造特徴を選択する。構造特徴は、ファイルがどのように構築されたかを反映するため、同じ技術を用いて構築された異なるファイルは、同じ構造特徴を有する傾向がある。例えば、ファイルパッカー(即ち、他の実行可能なプログラムを圧縮するためのプログラム)は、パックされた(圧縮された)ファイルの構造特徴を均質化する傾向がある。したがって、同じファイルパッカーを用いてパックされたファイルは、共通の構造特徴を有する傾向がある。したがって、構造特徴に基づく初期クラスタ化は、同じ技術(例えば、同じパッカー)を用いて作成されるファイルと関連付けられたサンプルを一緒にクラスタ化する傾向がある。次いで、異なる技術を用いて作成されるファイルと関連付けられたサンプルは、異なるクラスタとなる傾向がある。
データセット312、314内のサンプルが構造特徴に基づいてクラスタ化されたとき、特徴選択モジュール324は、その後のクラスタ化反復に関してコンテンツ特徴の中から選択する。コンテンツ特徴に基づくクラスタ化は、構造的類似性を無視し、代わりにファイル内のコンテンツの類似性に基づいてクラスタ化する(例えば、実行されたときにファイルによって実施される機能性を反映する特徴に基づいて)。したがって、コンテンツ特徴に基づくクラスタ化は、同じクラスタ内の同じマルウェアファミリーからのファイルサンプルを設置する傾向がある。同じパッカーを使用する異なるマルウェアファミリー、及びまたパッカーを使用する任意の合法的ソフトウェアは、(構造特徴に基づく初期クラスタの子である)異なるクラスタとなって終わる傾向がある。
特徴選択モジュール324は、1つ以上の様々な技術を用いてコンテンツ特徴を選択し得る。特徴選択モジュール324は、次のクラスタ化反復に関する利用可能な特徴のランダムサブセットを選択し得る。加えて、特徴選択モジュール324は、利用可能な特徴に関するクラスタ内のサンプルの値における差異の量を決定し得、次いで、「n」が整数であるとき、次のクラスタ化反復に関する最小差異を有するn特徴を選択し得る。他の実施形態の特徴選択モジュール324は、異なる及び/又は更なる技術を使用して利用可能なコンテンツ特徴の中から選択し得る。
クラスタ生成モジュール326は、反復制御モジュール322によって有効化され、特徴選択モジュール324によって選択される特徴を用いてファイルサンプルをクラスタ化する。クラスタ生成モジュール326によってクラスタ化されるサンプルは、どのクラスタ化の反復が実施されているかに依存する。初期反復について、クラスタ生成モジュール326は、ラベル付けされたデータセット312もラベル付けされていないデータセット314もいずれもにおいてサンプルの全てをクラスタ化する。その後の反復中、クラスタ生成モジュール326は、前の反復中に生成された所与のクラスタ内に存在するサンプルのみをクラスタ化する。
所与のサンプルのセット及び選択された特徴のセットについては、クラスタ生成モジュール326は、各々が選択された特徴に関して類似の値を有する1つ以上のサンプルを有する、複数のクラスタを生成する。このプロセスの一環として、クラスタ生成モジュール326は、セット内の各サンプルに関する選択された特徴の値を比較して、どのサンプルがどの他のサンプルに類似しているかを決定する。少なくとも1つの類似性の閾値量を有するサンプルは、一緒にクラスタ化される。一実施形態では、クラスタ生成モジュール326は、類似性の指標として編集距離を使用し、編集の閾値数内に存在する選択された特徴に関する値を有するサンプルを一緒にクラスタ化する。加えて、異なる実施形態のクラスタ生成モジュール326は、異なる及び/又は更なる類似性指標を使用し得る。
類似性閾値は、実施形態によって異なり得る。一実施形態では、クラスタ生成モジュール326は、異なるクラスタ化反復に対しては、異なる類似性閾値を使用する。具体的には、クラスタ生成モジュール326は、初期クラスタ化反復に対しては、低類似性閾値(即ち、疎性類似性閾値)を使用する。低類似性閾値は、比較的異種のファイルサンプルを一緒にクラスタ化させ、各々がより多くのサンプルを含むより少ないクラスタをもたらす。その後のクラスタ化反復については、クラスタ生成モジュール326は、ますますより高い類似性閾値を使用する(即ち、より厳密な類似性閾値を増加させる)。より高い類似性閾値は、比較的類似のファイルサンプルを一緒にクラスタ化させ、各々がより少ないサンプルを含むより多くのクラスタをもたらす。
情報伝播モジュール328は、クラスタ内のサンプル間及び/又はクラスタ間にラベル及び他の情報を伝播する。一実施形態では、情報伝播モジュール328は、反復制御モジュール322が停止条件に達し反復を停止させた後、有効化される。この時点で、複数のクラスタが存在し、その各クラスタは、1つ以上のサンプルを含む。クラスタは、ラベル付けされたデータセット312とラベル付けされていないデータセット314との組み合わせから最初に得られるため、所与のクラスタ内のサンプルは、全てのラベル付けされたサンプル、全てのラベル付けされていないサンプル、又はラベル付けされたサンプルとラベル付けされていないサンプルとの混合を含み得る。この後者の場合では、情報伝播モジュール328は、クラスタ内のラベル付けされたサンプルからクラスタ内のラベル付けされていないサンプルにラベル及び他の情報を伝播し得る。
典型的に、クラスタ化プロセスは、同じマルウェアファミリー内のサンプル等の関連するサンプルを一緒にクラスタ化することができる。クラスタ内のサンプルのうちの少なくとも1つが、ラベル付けされた場合(例えば、マルウェアとして)、情報伝播モジュール328は、このラベルをクラスタ内の他のサンプルに伝播する。したがって、この伝播は、伝播されたラベルに従って他のサンプルに関連付けられたファイルを分類する。伝播モジュール328は、マルウェアが表すマルウェアの種類についての情報、マルウェアの重大度、及びマルウェアの修復の仕方等の伝播されたラベルを有するファイルについて既知の他の情報もまた伝播し得る。
例えば、クラスタ化は、マルウェアとしてサンプルを識別するラベルを有する1つのサンプル、及び不明のラベルを有する4つのサンプルを含むクラスタを生成し得る。ラベル付けされたサンプルは、既知の種類のマルウェアを含むファイルと関連付けられる。他の4つのサンプルは、クラスタ内のファイルが全て、類似の特徴を有するため、既知のマルウェアにおいて見つかった同じ悪意のあるコードを含む可能性が高い。したがって、伝播モジュール328は、ラベル付けされたサンプルから4つのラベル付けされていないサンプル、及び転じてラベル付けされていないファイルと関連付けられたファイルに、ラベル及び他の情報を伝播する。この様式では、(以前に)ラベル付けされていないファイルと関連付けられたファイルは、マルウェアとして分類される。加えて、サンプルのクラスタは、マルウェアファミリーを説明する。
情報伝播モジュール328は、ラベル及びクラスタの階層内の他の情報も伝播し得る。特に、情報伝播モジュール328は、子クラスタ内のラベル付けされていないサンプルに、所与の親クラスタ内のラベル付けされたサンプルに関連付けられた情報を伝播し得る。親クラスタ内の1つ以上のサンプルがラベル付けされる(例えば、マルウェアとして)一実施例を考慮するが、親クラスタの子内のサンプルは、どれも全くラベル付けされていない。この場合では、子クラスタ内のラベル付けされていないサンプルは、定義によるサンプルが、親クラスタ内のマルウェアとラベル付けされたサンプルと共通の特徴を有するため、以前に未検出であったマルウェアファミリーの変形を表す可能性が高い。したがって、情報伝播モジュール328は、ラベル付けされたサンプルから子クラスタ内のラベル付けされていないサンプルに、ラベル及び他の情報を伝播し得る。
情報伝播モジュール328は、他の技術を使用してラベルを伝播し得る。例えば、完了したクラスタ化プロセスから得られるクラスタが、異なるラベルを持つサンプルを含んだ(例えば、マルウェアとラベル付けされたサンプル及びグッドウェアとラベル付けされたサンプルを含む)場合、実施形態の情報伝播モジュール328は、大多数のラベルか又はクラスタ内のラベル付けされていないサンプルに統計的に有意であるとして識別された他のラベルを伝播し得る。情報伝播モジュール328はまた、伝播されたラベルとは異なるラベルを有する任意のサンプルをセキュリティアナリストに報告し得る。2つのサンプルが、異なるラベルを有するにもかかわらず一緒にクラスタ化されたという事実は、ラベル付けされたデータセット312内のサンプルが誤ってラベル付けされていることを示し得る。セキュリティアナリストは、情報伝播モジュール328からの報告書を調査することができ、誤ってラベル付けされているサンプルを修復することができる。
図4は、不明のコンピュータファイルを分類するためにセキュリティサーバ110の一実施形態によって実施される工程を図解するフロー図である。他の実施形態は、異なる及び/又は更なる工程を実施することができる。更には、他の実施形態は、異なる順序で工程を実施することができる。更には、工程のうちの一部又は全ては、セキュリティサーバ110以外のエンティティによって実施され得る。
最初に、コンピュータファイルサンプルデータセットが、確立される410。サンプルデータセットは、ラベル付けされたデータセット312及びラベル付けされていないデータセット314を含む。集合的に、ラベル付けされたデータセット312及びラベル付けされていないデータセット内のサンプルは、ラベル付けされたサンプル及びラベル付けされていないサンプルを含むサンプルのセットを形成する。セキュリティサーバ110は、構造特徴もコンテンツ特徴もいずれも含む、データセット312、314内のサンプルから特徴辞書316に列挙された特徴の値を収集する412。例えば、特徴辞書316が、特徴としてファイル内のセクションの数を列挙した場合、セキュリティサーバ110は、ファイルサンプルラベル付けされたデータセット312及びラベル付けされていないデータセット314内の各ファイルサンプルからセクションの数を収集する。
セキュリティサーバ110は、反復的且つ再帰的に、ラベル付けされたデータセット312及びラベル付けされていないデータセット314内のファイルサンプルをクラスタ化する。セキュリティサーバ110は、クラスタ化反復における使用のための特徴辞書316に列挙される特徴のサブセットを選択する414。したがって、第1の反復については、セキュリティサーバ110は、ラベル付けされたデータセット312及びラベル付けされていないデータセット314内のサンプルの全てをクラスタ化する際の使用のための特徴のサブセットを選択する414。その後のクラスタ化反復については、セキュリティサーバ110は、前の反復において作成されたクラスタ内のサンプルをクラスタ化する際の使用のための特徴のサブセットを選択する。
実施形態のセキュリティサーバ110は、利用可能な特徴のセットの中から特徴を選択する414。一実施形態では、利用可能な特徴は、クラスタ内の更にクラスタ化されるサンプルの値が変動を有する、特徴である。セキュリティサーバ110は、1回以上の初期クラスタ化反復に関するファイルの構造特徴を選択し得る414。したがって、第1のクラスタ化反復については、セキュリティサーバ110は、ファイルセクションの名前及びインポートされたモジュールの数等の構造特徴を選択し得る414。初期クラスタ化反復の後、実施形態のセキュリティサーバ110は、ファイルのコンテンツ特徴の中から選択する414。
セキュリティサーバ110は、選択された特徴を用いてファイルサンプルをクラスタ化する416。一般的に、セキュリティサーバ110は、選択された特徴に関する類似の値を有するファイルサンプルを一緒にクラスタ化する416。サンプルを一緒にクラスタ化するのに必要とされる類似性の閾値量は、異なる実施形態において様々であり得る。一実施形態では、セキュリティサーバ110は、クラスタ化の初期反復に関しては、低類似性閾値を使用し、その後の反復に関しては、より高い類似性閾値を使用する。
各クラスタ化反復は、クラスタのセットを生成する。初期クラスタ化反復は、ラベル付けされたデータセット312及びラベル付けされていないデータセット314内のサンプルを、初期クラスタのセットにクラスタ化する。その後のクラスタ化反復は、各初期クラスタを子クラスタのセットにクラスタ化し、その各子クラスタは、その親クラスタ内のクラスタのサブセットを含む。セキュリティサーバ110は、先行の反復によって生成された各クラスタに関する利用可能な特徴のセットの中から選択される特徴を用いてクラスタ化を反復的に繰り返して、クラスタの階層を生成する。階層の一番上では、単一のクラスタが、組み合わされたラベル付けされたデータセット312及びラベル付けされていないデータセット314(ルートクラスタ)を表す。階層の一番下では、クラスタが、最終クラスタ化(リーフクラスタ)を表す。ルートクラスタとリーフクラスタとの間には、中間クラスタがあり、各々が、親クラスタと複数の子クラスタと、を有する。
セキュリティサーバ110は、停止条件が存在するまで、特徴選択414及びクラスタ化416工程を再帰的且つ反復的に繰り返す。一実施形態では、セキュリティサーバ110は、前のクラスタ化反復中に生成された各クラスタに関する停止条件に達したかを決定する418。停止条件は、例えば、前の反復によって生成されたクラスタの数、クラスタ内のサンプルの数、クラスタ化が実施され得る利用可能な特徴の数、及びクラスタ内の特徴の変動の量、に基づき得る。停止条件が存在しなかった418場合、セキュリティサーバ110は、特徴選択414及びクラスタ化416工程を繰り返す。
セキュリティサーバ110が、クラスタに関する停止条件に達したと決定する418と、セキュリティサーバは、任意に、クラスタ内のサンプルの間においてラベル及び他の情報を伝播する420。セキュリティサーバ110は、そのクラスタに関する停止条件に達するとき各クラスタ上で伝播420を実施し得るか、全てのクラスタに関する停止条件に達した後に伝播420を実施し得るか、又は他の時に伝播を実施し得る。
一実施形態では、セキュリティサーバ110は、クラスタが、少なくとも1つのラベル付けされたサンプル及び少なくとも1つのラベル付けされていないサンプルを含んだ場合、クラスタ内のラベルを伝播する420。この場合では、セキュリティサーバ110は、ラベル付けされたサンプルのラベルをラベル付けされていないサンプルに伝播し得110、それにより(以前に)ラベル付けされていないサンプルと関連付けられたファイルを分類する。セキュリティサーバ110は、ラベル付けされたサンプルと関連付けられたファイル及びラベル付けされていないサンプルと関連付けられたファイルについての他の情報も伝播し得る。セキュリティサーバ110は、ラベル及びクラスタ階層内の他の情報を、親クラスタ内のサンプルのラベルを伝播する工程等によって、子クラスタ内のラベル付けされていないサンプルに更に伝播し得る。
次いで、セキュリティサーバ110は、上述のクラスタ化技術を介して分類されたファイル上で他の動作を実施し得る。例えば、セキュリティアナリストは、マルウェアとして新たに分類されるファイルを分析して、ファイルに関する検出データを生成し得る。次いで、検出データは、クライアント側でマルウェアの検出を改善するために、クライアント112のセキュリティモジュール116に供給され得る。
クラスタ化技術が、コンピュータファイルと関連付けられたサンプルをクラスタ化するコンテクストにおいて主として上に説明されるが、その技術は、他の環境においてもまた使用され得る。その技術は、データが階層関係を有するという予測が存在する任意のデータ及びドメインに対する適用である。例えば、学術科目についてのテキスト文書は、科学、財政学、数学等に関連しているとして高いレベルでクラスタ化され得る。次いで、高いレベルのクラスタは、科目の具体的な態様に関連しているより低いレベルのクラスタにクラスタ化され得る。例えば、科学クラスタ内の文書は、物理学、生物学、及び化学に関連するサブクラスタにクラスタ化され得る。
上記の説明は、特定の実施形態の動作を図解するために含まれており、本発明の範囲を限定するようには意図されていない。本発明の範囲は、以下の特許請求の範囲によってのみ限定される。上記の考察から、多くの変形形態が、本発明の趣旨及び範囲によってなおも包含されるであろうことが、当業者にとっては明らかである。

Claims (20)

  1. サンプルを分類するコンピュータ実装方法であって、
    ラベル付けされたサンプル及びラベル付けされていないサンプルを含むサンプルのセットを確立する工程と、
    前記ラベル付けされたサンプル及びラベル付けされていないサンプルから特徴の値を収集する工程と、
    前記特徴のサブセットを選択する工程と、
    クラスタのセットを生成するために、前記選択された特徴のサブセットの前記収集された値の類似性に基づいて、前記ラベル付けされたサンプル及びラベル付けされていないサンプルを一緒にクラスタ化する工程であって、各クラスタが、前記サンプルのセットからのサンプルのサブセットを有する、クラスタ化する工程と、
    少なくとも1つの停止条件に達するまで、前記クラスタのセット内の各クラスタ内の前記サンプルのサブセットにおいて前記選択する工程及びクラスタ化する工程を再帰的に反復する工程であって、前記反復が、ラベル付けされたサンプル及びラベル付けされていないサンプルを有するクラスタを生成する、反復する工程と、
    前記ラベル付けされていないサンプルを分類するために、前記クラスタの前記ラベル付けされたサンプルから前記クラスタの前記ラベル付けされていないサンプルにラベルを伝播する工程と、を含む、方法。
  2. 特徴の値を収集する工程が、
    前記ラベル付けされたサンプル及びラベル付けされていないサンプルを区別することができる特徴を列挙する特徴辞書にアクセスする工程と、
    前記ラベル付けされたサンプル及びラベル付けされていないサンプルから前記列挙された特徴の値を収集する工程と、を含む、請求項1に記載の方法。
  3. 前記列挙された特徴が、ポータブル実行可能(PE)コンピュータファイルの特徴を含み、前記ラベル付けされたサンプルが、ラベル付けされたコンピュータファイルと関連付けられ、前記ラベル付けされていないファイルが、ラベル付けされていないコンピュータファイルと関連付けられる、請求項2に記載の方法。
  4. 特徴のサブセットを選択する工程が、
    利用可能な特徴の中から前記特徴のサブセットを選択する工程を含み、前記利用可能な特徴が、前記反復時にクラスタ化されるサンプルの値が変動を有する特徴から成る、請求項1に記載の方法。
  5. 前記特徴が、前記ラベル付けされたサンプル及びラベル付けされていないサンプルの構造を説明する構造特徴と、前記ラベル付けされたサンプル及びラベル付けされていないサンプル内のコンテンツを説明するコンテンツ特徴と、を含み、特徴のサブセットを選択する工程が、
    1回以上の初期反復のために前記構造特徴のみの中から前記サブセットを選択する工程と、
    前記初期反復後に生じる1回以上のその後の反復のために前記構造特徴及び前記コンテンツ特徴の中から前記サブセットを選択する工程と、を含む、請求項1に記載の方法。
  6. 前記選択された特徴のサブセットの前記収集された値の類似性に基づいて、前記ラベル付けされたサンプル及びラベル付けされていないサンプルを一緒にクラスタ化する工程が、
    前記選択された特徴のサブセットの前記収集された値の中の少なくとも1つの類似性閾値測度を有するラベル付けされたサンプル及びラベル付けされていないサンプルを一緒にクラスタ化する工程を含み、異なる類似性閾値測度が、異なる反復のために使用される、請求項1に記載の方法。
  7. 前記少なくとも1つの停止条件が、前記クラスタ内のサンプルの数、クラスタの合計数、前記クラスタ内の前記サンプルが更にクラスタ化され得ることを用いた利用可能な特徴の数、及び前記クラスタ内の前記サンプルの特徴値の変動のうちの少なくとも1つに基づく停止条件を含む、請求項1に記載の方法。
  8. 前記反復が、階層内に前記クラスタと前記クラスタの下の子クラスタとを含む階層クラスタのセットを生成し、
    前記クラスタ内の前記ラベル付けされたサンプルから前記子クラスタ内のラベル付けされていないサンプルに前記ラベルを伝播する工程を更に含む、請求項1に記載の方法。
  9. サンプルを分類するためのコンピュータであって、
    非一時的コンピュータ可読記憶媒体であって、
    ラベル付けされたサンプル及びラベル付けされていないサンプルを含むサンプルのセットを確立する工程と、
    前記ラベル付けされたサンプル及びラベル付けされていないサンプルから特徴の値を収集する工程と、
    前記特徴のサブセットを選択する工程と、
    クラスタのセットを生成するために、前記選択された特徴のサブセットの前記収集された値の類似性に基づいて、前記ラベル付けされたサンプル及びラベル付けされていないサンプルを一緒にクラスタ化する工程であって、各クラスタが、前記サンプルのセットからのサンプルのサブセットを有する、クラスタ化する工程と、
    少なくとも1つの停止条件に達するまで、前記クラスタのセット内の各クラスタ内の前記サンプルのサブセットにおいて前記選択する工程及びクラスタ化する工程を再帰的に反復する工程であって、前記反復が、ラベル付けされたサンプル及びラベル付けされていないサンプルを有するクラスタを生成する、反復する工程と、
    前記ラベル付けされていないサンプルを分類するために、前記クラスタの前記ラベル付けされたサンプルから前記クラスタの前記ラベル付けされていないサンプルにラベルを伝播する工程と、を含む工程を実施するように実行可能なコンピュータプログラムモジュールを記憶する、非一時的コンピュータ可読記憶媒体と、
    前記コンピュータプログラムモジュールを実行するためのコンピュータプロセッサと、を備える、コンピュータ。
  10. 特徴の値を収集する工程が、
    前記ラベル付けされたサンプル及びラベル付けされていないサンプルを区別することができる特徴を列挙する特徴辞書にアクセスする工程と、
    前記ラベル付けされたサンプル及びラベル付けされていないサンプルから前記列挙された特徴の値を収集する工程と、を含む、請求項9に記載のコンピュータ。
  11. 特徴のサブセットを選択する工程が、
    利用可能な特徴の中から前記特徴のサブセットを選択する工程を含み、前記利用可能な特徴が、前記反復時にクラスタ化されるサンプルの値が変動を有する特徴から成る、請求項9に記載のコンピュータ。
  12. 前記特徴が、前記ラベル付けされたサンプル及びラベル付けされていないサンプルの構造を説明する構造特徴と、前記ラベル付けされたサンプル及びラベル付けされていないサンプル内のコンテンツを説明するコンテンツ特徴と、を含み、特徴のサブセットを選択する工程が、
    1回以上の初期反復のために前記構造特徴のみの中から前記サブセットを選択する工程と、
    前記初期反復後に生じる1回以上のその後の反復のために前記構造特徴及び前記コンテンツ特徴の中から前記サブセットを選択する工程と、を含む、請求項9に記載のコンピュータ。
  13. 前記選択された特徴のサブセットの前記収集された値の類似性に基づいて、前記ラベル付けされたサンプル及びラベル付けされていないサンプルを一緒にクラスタ化する工程が、
    前記選択された特徴のサブセットの前記収集された値の中の少なくとも1つの類似性閾値測度を有するラベル付けされたサンプル及びラベル付けされていないサンプルを一緒にクラスタ化する工程を含み、異なる類似性閾値測度が、異なる反復のために使用される、請求項9に記載のコンピュータ。
  14. 前記反復が、階層内に前記クラスタと前記クラスタの下の子クラスタとを含む階層クラスタのセットを生成し、前記実行可能なコンピュータプログラムモジュールが、前記クラスタの前記ラベル付けされたサンプルから前記子クラスタのラベル付けされていないサンプルに前記ラベルを伝播するように更に実行可能である、請求項9に記載のコンピュータ。
  15. サンプルを分類するためのコンピュータプログラムモジュールを記憶する非一時的コンピュータ可読記憶媒体であって、前記コンピュータプログラムモジュールが、
    ラベル付けされたサンプル及びラベル付けされていないサンプルを含むサンプルのセットを確立する工程と、
    前記ラベル付けされたサンプル及びラベル付けされていないサンプルから特徴の値を収集する工程と、
    前記特徴のサブセットを選択する工程と、
    クラスタのセットを生成するために、前記選択された特徴のサブセットの前記収集された値の類似性に基づいて、前記ラベル付けされたサンプル及びラベル付けされていないサンプルを一緒にクラスタ化する工程であって、各クラスタが、前記サンプルのセットからのサンプルのサブセットを有する、クラスタ化する工程と、
    少なくとも1つの停止条件に達するまで、前記クラスタのセット内の各クラスタ内の前記サンプルのサブセットにおいて前記選択する工程及びクラスタ化する工程を再帰的に反復する工程であって、前記反復が、ラベル付けされたサンプル及びラベル付けされていないサンプルを有するクラスタを生成する、反復する工程と、
    前記ラベル付けされていないサンプルを分類するために、前記クラスタの前記ラベル付けされたサンプルから前記クラスタの前記ラベル付けされていないサンプルにラベルを伝播する工程と、を含む、工程を実施するように実行可能である、コンピュータ可読記憶媒体。
  16. 特徴の値を収集する工程が、
    前記ラベル付けされたサンプル及びラベル付けされていないサンプルを区別することができる特徴を列挙する特徴辞書にアクセスする工程と、
    前記ラベル付けされたサンプル及びラベル付けされていないサンプルから前記列挙された特徴の値を収集する工程と、を含む、請求項15に記載のコンピュータ可読媒体。
  17. 特徴のサブセットを選択する工程が、
    利用可能な特徴の中から前記特徴のサブセットを選択する工程を含み、前記利用可能な特徴が、前記反復時にクラスタ化されるサンプルの値が変動を有する特徴から成る、請求項15に記載のコンピュータ可読媒体。
  18. 前記特徴が、前記ラベル付けされたサンプル及びラベル付けされていないサンプルの構造を説明する構造特徴と、前記ラベル付けされたサンプル及びラベル付けされていないサンプル内のコンテンツを説明するコンテンツ特徴と、を含み、特徴のサブセットを選択する工程が、
    1回以上の初期反復のために前記構造特徴のみの中から前記サブセットを選択する工程と、
    前記初期反復後に生じる1回以上のその後の反復のために前記構造特徴及び前記コンテンツ特徴の中から前記サブセットを選択する工程と、を含む、請求項15に記載のコンピュータ可読媒体。
  19. 前記選択された特徴のサブセットの前記収集された値の類似性に基づいて、前記ラベル付けされたサンプル及びラベル付けされていないサンプルを一緒にクラスタ化する工程が、
    前記選択された特徴のサブセットの前記収集された値の中の少なくとも1つの類似性閾値測度を有するラベル付けされたサンプル及びラベル付けされていないサンプルを一緒にクラスタ化する工程を含み、異なる類似性閾値が、異なる反復のために使用される、請求項15に記載のコンピュータ可読媒体。
  20. 前記反復が、階層内に前記クラスタと前記親クラスタの下の子クラスタとを含む階層クラスタのセットを生成し、
    前記クラスタ内の前記ラベル付けされたサンプルから前記子クラスタ内のラベル付けされていないサンプルに前記ラベルを伝播するためのモジュールを更に含む、請求項15に記載のコンピュータ可読媒体。
JP2015552792A 2013-01-15 2014-01-10 クラスタ化を用いたサンプルの分類 Expired - Fee Related JP6388875B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/742,218 2013-01-15
US13/742,218 US20140201208A1 (en) 2013-01-15 2013-01-15 Classifying Samples Using Clustering
PCT/US2014/010981 WO2014113281A1 (en) 2013-01-15 2014-01-10 Classifying samples using clustering

Publications (2)

Publication Number Publication Date
JP2016508274A true JP2016508274A (ja) 2016-03-17
JP6388875B2 JP6388875B2 (ja) 2018-09-12

Family

ID=51166033

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015552792A Expired - Fee Related JP6388875B2 (ja) 2013-01-15 2014-01-10 クラスタ化を用いたサンプルの分類

Country Status (4)

Country Link
US (1) US20140201208A1 (ja)
EP (1) EP2946331B1 (ja)
JP (1) JP6388875B2 (ja)
WO (1) WO2014113281A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018063694A (ja) * 2016-10-10 2018-04-19 エーオー カスペルスキー ラボAO Kaspersky Lab Webページの悪意のある要素を検出するシステム及び方法
WO2020075485A1 (ja) * 2018-10-11 2020-04-16 富士フイルム株式会社 データ処理装置、方法、プログラム、及びシステム

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130179252A1 (en) * 2012-01-11 2013-07-11 Yahoo! Inc. Method or system for content recommendations
EP3014534A4 (en) * 2013-06-28 2017-03-22 D-Wave Systems Inc. Systems and methods for quantum processing of data
US9569617B1 (en) 2014-03-05 2017-02-14 Symantec Corporation Systems and methods for preventing false positive malware identification
US9805115B1 (en) 2014-03-13 2017-10-31 Symantec Corporation Systems and methods for updating generic file-classification definitions
US9684705B1 (en) * 2014-03-14 2017-06-20 Symantec Corporation Systems and methods for clustering data
US20150324459A1 (en) * 2014-05-09 2015-11-12 Chegg, Inc. Method and apparatus to build a common classification system across multiple content entities
US9762593B1 (en) 2014-09-09 2017-09-12 Symantec Corporation Automatic generation of generic file signatures
US10275396B1 (en) * 2014-09-23 2019-04-30 Symantec Corporation Techniques for data classification based on sensitive data
US10693896B2 (en) 2015-01-14 2020-06-23 Virta Laboratories, Inc. Anomaly and malware detection using side channel analysis
US9813437B2 (en) 2015-06-15 2017-11-07 Symantec Corporation Systems and methods for determining malicious-download risk based on user behavior
US10089465B2 (en) 2015-07-24 2018-10-02 Bitdefender IPR Management Ltd. Systems and methods for tracking malicious behavior across multiple software entities
JP6039768B1 (ja) * 2015-08-12 2016-12-07 日本電信電話株式会社 調整装置、調整方法および調整プログラム
US10198576B2 (en) * 2015-12-10 2019-02-05 AVAST Software s.r.o. Identification of mislabeled samples via phantom nodes in label propagation
US9836603B2 (en) 2015-12-30 2017-12-05 Symantec Corporation Systems and methods for automated generation of generic signatures used to detect polymorphic malware
CN106997367B (zh) * 2016-01-26 2020-05-08 华为技术有限公司 程序文件的分类方法、分类装置和分类系统
US10230749B1 (en) * 2016-02-29 2019-03-12 Palo Alto Networks, Inc. Automatically grouping malware based on artifacts
US10200390B2 (en) * 2016-02-29 2019-02-05 Palo Alto Networks, Inc. Automatically determining whether malware samples are similar
US10333948B2 (en) * 2016-02-29 2019-06-25 Palo Alto Networks, Inc. Alerting and tagging using a malware analysis platform for threat intelligence made actionable
US10200389B2 (en) * 2016-02-29 2019-02-05 Palo Alto Networks, Inc. Malware analysis platform for threat intelligence made actionable
US10831785B2 (en) * 2016-04-11 2020-11-10 International Business Machines Corporation Identifying security breaches from clustering properties
CN106682507B (zh) * 2016-05-19 2019-05-14 腾讯科技(深圳)有限公司 病毒库的获取方法及装置、设备、服务器、系统
JP7057913B2 (ja) * 2016-06-09 2022-04-21 株式会社島津製作所 ビッグデータ解析方法及び該解析方法を利用した質量分析システム
US10181035B1 (en) * 2016-06-16 2019-01-15 Symantec Corporation System and method for .Net PE file malware detection
US10116680B1 (en) 2016-06-21 2018-10-30 Symantec Corporation Systems and methods for evaluating infection risks based on profiled user behaviors
KR102593690B1 (ko) 2016-09-26 2023-10-26 디-웨이브 시스템즈, 인코포레이티드 샘플링 서버로부터 샘플링하기 위한 시스템들, 방법들 및 장치
US10489589B2 (en) * 2016-11-21 2019-11-26 Cylance Inc. Anomaly based malware detection
US11531852B2 (en) 2016-11-28 2022-12-20 D-Wave Systems Inc. Machine learning systems and methods for training with noisy labels
JP6740184B2 (ja) * 2017-07-07 2020-08-12 日本電信電話株式会社 付与装置、付与方法および付与プログラム
US10432648B1 (en) 2017-08-28 2019-10-01 Palo Alto Networks, Inc. Automated malware family signature generation
CN108021931A (zh) * 2017-11-20 2018-05-11 阿里巴巴集团控股有限公司 一种数据样本标签处理方法及装置
US11586915B2 (en) 2017-12-14 2023-02-21 D-Wave Systems Inc. Systems and methods for collaborative filtering with variational autoencoders
CN108564102A (zh) * 2018-01-04 2018-09-21 百度在线网络技术(北京)有限公司 图像聚类结果评价方法和装置
US10917421B2 (en) 2018-02-19 2021-02-09 Cisco Technology, Inc. Refining synthetic malicious samples with unlabeled data
US11023580B1 (en) * 2018-03-21 2021-06-01 NortonLifeLock Inc. Systems and methods for cross-product malware categorization
US11386346B2 (en) 2018-07-10 2022-07-12 D-Wave Systems Inc. Systems and methods for quantum bayesian networks
US11461644B2 (en) 2018-11-15 2022-10-04 D-Wave Systems Inc. Systems and methods for semantic segmentation
US11468293B2 (en) 2018-12-14 2022-10-11 D-Wave Systems Inc. Simulating and post-processing using a generative adversarial network
US11900264B2 (en) 2019-02-08 2024-02-13 D-Wave Systems Inc. Systems and methods for hybrid quantum-classical computing
US11625612B2 (en) 2019-02-12 2023-04-11 D-Wave Systems Inc. Systems and methods for domain adaptation
JP2020140452A (ja) 2019-02-28 2020-09-03 富士通株式会社 ノード情報推定方法、ノード情報推定プログラムおよび情報処理装置
US11704431B2 (en) * 2019-05-29 2023-07-18 Microsoft Technology Licensing, Llc Data security classification sampling and labeling
US12013937B1 (en) * 2019-06-04 2024-06-18 Trend Micro Incorporated Detection and identification of malware using a hierarchical evolutionary tree
US20210117448A1 (en) * 2019-10-21 2021-04-22 Microsoft Technology Licensing, Llc Iterative sampling based dataset clustering
RU2728497C1 (ru) 2019-12-05 2020-07-29 Общество с ограниченной ответственностью "Группа АйБи ТДС" Способ и система определения принадлежности программного обеспечения по его машинному коду
RU2728498C1 (ru) 2019-12-05 2020-07-29 Общество с ограниченной ответственностью "Группа АйБи ТДС" Способ и система определения принадлежности программного обеспечения по его исходному коду
RU2743619C1 (ru) 2020-08-06 2021-02-20 Общество с ограниченной ответственностью "Группа АйБи ТДС" Способ и система генерации списка индикаторов компрометации
US11799904B2 (en) * 2020-12-10 2023-10-24 Cisco Technology, Inc. Malware detection using inverse imbalance subspace searching
US11620263B2 (en) * 2020-12-17 2023-04-04 EMC IP Holding Company LLC Data compression using dictionaries
US11947572B2 (en) 2021-03-29 2024-04-02 Group IB TDS, Ltd Method and system for clustering executable files
CN113052494A (zh) * 2021-04-20 2021-06-29 南京理工大学 基于蚁群优化算法的组串选配技术

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008310626A (ja) * 2007-06-15 2008-12-25 Nippon Telegr & Teleph Corp <Ntt> 自動タグ付与装置、自動タグ付与方法、自動タグ付与プログラムおよびそのプログラムを記録した記録媒体
JP2009151390A (ja) * 2007-12-18 2009-07-09 Fuji Xerox Co Ltd 情報分析装置、及び情報分析プログラム
JP2011501275A (ja) * 2007-10-11 2011-01-06 本田技研工業株式会社 異種データセットからの知識移転を伴うテキスト分類
JP2011145951A (ja) * 2010-01-15 2011-07-28 Nippon Telegr & Teleph Corp <Ntt> コンテンツ自動分類装置、コンテンツ自動分類方法およびコンテンツ自動分類プログラム
WO2012054339A1 (en) * 2010-10-19 2012-04-26 3M Innovative Properties Company Computer-aided assignment of ratings to digital samples of a manufactured web product

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5675711A (en) * 1994-05-13 1997-10-07 International Business Machines Corporation Adaptive statistical regression and classification of data strings, with application to the generic detection of computer viruses
US6907436B2 (en) * 2000-10-27 2005-06-14 Arizona Board Of Regents, Acting For And On Behalf Of Arizona State University Method for classifying data using clustering and classification algorithm supervised
EP1384155A4 (en) * 2001-03-01 2007-02-28 Health Discovery Corp SPECTRAL KNIVES FOR LEARNING MACHINES
US6801917B2 (en) * 2001-11-13 2004-10-05 Koninklijke Philips Electronics N.V. Method and apparatus for partitioning a plurality of items into groups of similar items in a recommender of such items
US8473532B1 (en) * 2003-08-12 2013-06-25 Louisiana Tech University Research Foundation Method and apparatus for automatic organization for computer files
US7366705B2 (en) * 2004-04-15 2008-04-29 Microsoft Corporation Clustering based text classification
US8055597B2 (en) * 2006-05-16 2011-11-08 Sony Corporation Method and system for subspace bounded recursive clustering of categorical data
US7917540B2 (en) * 2007-02-22 2011-03-29 Colorado State University Research Foundation Nonlinear set to set pattern recognition
US20090013405A1 (en) * 2007-07-06 2009-01-08 Messagelabs Limited Heuristic detection of malicious code
US8515193B1 (en) * 2011-04-08 2013-08-20 Google Inc. Image compression using exemplar dictionary based on hierarchical clustering

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008310626A (ja) * 2007-06-15 2008-12-25 Nippon Telegr & Teleph Corp <Ntt> 自動タグ付与装置、自動タグ付与方法、自動タグ付与プログラムおよびそのプログラムを記録した記録媒体
JP2011501275A (ja) * 2007-10-11 2011-01-06 本田技研工業株式会社 異種データセットからの知識移転を伴うテキスト分類
JP2009151390A (ja) * 2007-12-18 2009-07-09 Fuji Xerox Co Ltd 情報分析装置、及び情報分析プログラム
JP2011145951A (ja) * 2010-01-15 2011-07-28 Nippon Telegr & Teleph Corp <Ntt> コンテンツ自動分類装置、コンテンツ自動分類方法およびコンテンツ自動分類プログラム
WO2012054339A1 (en) * 2010-10-19 2012-04-26 3M Innovative Properties Company Computer-aided assignment of ratings to digital samples of a manufactured web product

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018063694A (ja) * 2016-10-10 2018-04-19 エーオー カスペルスキー ラボAO Kaspersky Lab Webページの悪意のある要素を検出するシステム及び方法
WO2020075485A1 (ja) * 2018-10-11 2020-04-16 富士フイルム株式会社 データ処理装置、方法、プログラム、及びシステム
JPWO2020075485A1 (ja) * 2018-10-11 2021-10-28 富士フイルム株式会社 データ処理装置、方法、プログラム、及びシステム
JP7134245B2 (ja) 2018-10-11 2022-09-09 富士フイルム株式会社 データ処理装置、方法、プログラム、及びシステム

Also Published As

Publication number Publication date
EP2946331A4 (en) 2016-08-17
WO2014113281A1 (en) 2014-07-24
US20140201208A1 (en) 2014-07-17
EP2946331B1 (en) 2019-08-28
JP6388875B2 (ja) 2018-09-12
EP2946331A1 (en) 2015-11-25

Similar Documents

Publication Publication Date Title
JP6388875B2 (ja) クラスタ化を用いたサンプルの分類
US10972493B2 (en) Automatically grouping malware based on artifacts
US10972495B2 (en) Methods and apparatus for detecting and identifying malware by mapping feature data into a semantic space
EP2564341B1 (en) Behavioral signature generation using clustering
US10200390B2 (en) Automatically determining whether malware samples are similar
US20210182387A1 (en) Automated semantic modeling of system events
US8401982B1 (en) Using sequencing and timing information of behavior events in machine learning to detect malware
US8413235B1 (en) Malware detection using file heritage data
US8190647B1 (en) Decision tree induction that is sensitive to attribute computational complexity
US9038184B1 (en) Detection of malicious script operations using statistical analysis
CN114679329B (zh) 用于基于赝象对恶意软件自动分组的系统
US9317679B1 (en) Systems and methods for detecting malicious documents based on component-object reuse
US8321942B1 (en) Selecting malware signatures based on malware diversity
US9171253B1 (en) Identifying predictive models resistant to concept drift
JP5715693B2 (ja) マルウェア検出に使用するカスタマイズされた信頼帯を作成するシステム及び方法
Cohen et al. Detection of malicious webmail attachments based on propagation patterns
Baychev et al. Spearphishing malware: Do we really know the unknown?
US9276947B2 (en) Identifying misuse of legitimate objects
US10929532B1 (en) Detecting malware in mobile applications via static analysis
Preetam Behavioural analytics for threat detection
Han Data-Driven Malware Detection Based on Dynamic Behavioral Features
Ireland Dynamic Analyses of Malware

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170106

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20170127

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170127

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171107

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171127

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20171205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20171208

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20171208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20171205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180208

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180717

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180815

R150 Certificate of patent or registration of utility model

Ref document number: 6388875

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees