(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-15
(45)【発行日】2024-10-23
(54)【発明の名称】判定装置、判定方法および判定プログラム
(51)【国際特許分類】
G06F 21/56 20130101AFI20241016BHJP
【FI】
G06F21/56
(21)【出願番号】P 2023506454
(86)(22)【出願日】2021-03-16
(86)【国際出願番号】 JP2021010691
(87)【国際公開番号】W WO2022195732
(87)【国際公開日】2022-09-22
【審査請求日】2023-07-20
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】碓井 利宣
(72)【発明者】
【氏名】幾世 知範
(72)【発明者】
【氏名】川古谷 裕平
(72)【発明者】
【氏名】岩村 誠
(72)【発明者】
【氏名】三好 潤
【審査官】高橋 克
(56)【参考文献】
【文献】特表2013-529335(JP,A)
【文献】特表2015-535115(JP,A)
【文献】国際公開第2016/080232(WO,A1)
【文献】中国特許出願公開第110521177(CN,A)
【文献】米国特許第10250621(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/56
(57)【特許請求の範囲】
【請求項1】
マルウェアを収集する収集部と、
前記マルウェアの特徴を抽出する抽出部と、
前記抽出部によって抽出された前記特徴に基づいてクラスタリングし、前記マルウェアを所定のクラスタに分類する分類部と、
前記分類部によって分類された前記クラスタに基づいて、前記マルウェアの攻撃の傾向を判定する攻撃傾向判定部と、
前記攻撃傾向判定部によって判定された結果に基づいて、前記マルウェアの活動痕跡から生成された痕跡情報の有効性を判定する有効性判定部と
を備え
、
前記分類部は、前記収集部によって前記マルウェアが収集された場合には、前記クラスタを新たなマルウェアが収集されるごとに更新し、
前記攻撃傾向判定部は、前記クラスタの更新履歴に基づいて、前記クラスタごとの未更新期間を計算し、該未更新期間から前記攻撃の継続性を判定し、
前記有効性判定部は、前記未更新期間が所定値以上の場合には、前記クラスタに分類される前記マルウェアの前記痕跡情報を無効と判定し、
前記攻撃傾向判定部は、過去に前記攻撃が終了したと判定された前記クラスタであっても、新たに更新された前記クラスタが存在する場合には、該当する前記クラスタに分類される前記マルウェアの前記攻撃が再開され、前記攻撃が継続していると判定する
ことを特徴とする判定装置。
【請求項2】
前記抽出部は、前記特徴として、前記マルウェアから、亜種間で類似性の高い特徴を抽出することを特徴とする請求項1に記載の判定装置。
【請求項3】
前記抽出部は、前記特徴として、前記マルウェアのAPIトレースまたはメタデータを所定の方法で抽出し、
前記分類部は、前記マルウェアをファミリーまたは攻撃キャンペーンごとのクラスタに分類し、
前記攻撃傾向判定部は、前記攻撃の傾向として、前記マルウェアの攻撃の継続性を判定することを特徴とする請求項1に記載の判定装置。
【請求項4】
前記
有効性判定部によって判定された前記有効性に基づいて、前記マルウェアの有効な痕跡情報を生成する生成部をさらに備えることを特徴とする請求項1から
3のいずれか1項に記載の判定装置。
【請求項5】
判定装置によって実行される判定方法であって、
マルウェアを収集する収集工程と、
前記マルウェアの特徴を抽出する抽出工程と、
前記抽出工程によって抽出された前記特徴に基づいてクラスタリングし、前記マルウェアを所定のクラスタに分類する分類工程と、
前記分類工程によって分類された前記クラスタに基づいて、前記マルウェアの攻撃の傾向を判定する攻撃傾向判定工程と、
前記攻撃傾向判定工程によって判定された結果に基づいて、前記マルウェアの活動痕跡から生成された痕跡情報の有効性を判定する有効性判定工程と
を含み
、
前記分類工程は、前記収集工程によって前記マルウェアが収集された場合には、前記クラスタを新たなマルウェアが収集されるごとに更新し、
前記攻撃傾向判定工程は、前記クラスタの更新履歴に基づいて、前記クラスタごとの未更新期間を計算し、該未更新期間から前記攻撃の継続性を判定し、
前記有効性判定工程は、前記未更新期間が所定値以上の場合には、前記クラスタに分類される前記マルウェアの前記痕跡情報を無効と判定し、
前記攻撃傾向判定工程は、過去に前記攻撃が終了したと判定された前記クラスタであっても、新たに更新された前記クラスタが存在する場合には、該当する前記クラスタに分類される前記マルウェアの前記攻撃が再開され、前記攻撃が継続していると判定する
ことを特徴とする判定方法。
【請求項6】
マルウェアを収集する収集ステップと、
前記マルウェアの特徴を抽出する抽出ステップと、
前記抽出ステップによって抽出された前記特徴に基づいてクラスタリングし、前記マルウェアを所定のクラスタに分類する分類ステップと、
前記分類ステップによって分類された前記クラスタに基づいて、前記マルウェアの攻撃の傾向を判定する攻撃傾向判定ステップと、
前記攻撃傾向判定ステップによって判定された結果に基づいて、前記マルウェアの活動痕跡から生成された痕跡情報の有効性を判定する有効性判定ステップと
をコンピュータに実行させ
、
前記分類ステップは、前記収集ステップによって前記マルウェアが収集された場合には、前記クラスタを新たなマルウェアが収集されるごとに更新し、
前記攻撃傾向判定ステップは、前記クラスタの更新履歴に基づいて、前記クラスタごとの未更新期間を計算し、該未更新期間から前記攻撃の継続性を判定し、
前記有効性判定ステップは、前記未更新期間が所定値以上の場合には、前記クラスタに分類される前記マルウェアの前記痕跡情報を無効と判定し、
前記攻撃傾向判定ステップは、過去に前記攻撃が終了したと判定された前記クラスタであっても、新たに更新された前記クラスタが存在する場合には、該当する前記クラスタに分類される前記マルウェアの前記攻撃が再開され、前記攻撃が継続していると判定する
ことを特徴とする判定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、判定装置、判定方法および判定プログラムに関する。
【背景技術】
【0002】
近年、マルウェアの巧妙化に伴い、シグネチャに基づいて検出する従来型のアンチウイルスソフトウェアでは検出の難しいマルウェアが増加してきている。また、送受信されたファイルを隔離された解析用の環境で動作させ、観測された挙動の悪性度からマルウェアを検出する動的解析サンドボックスによる検出も存在するが、一般的なユーザ環境との乖離度を見る方法等により、解析用の環境であることが感知され、回避されるようになってきた。
【0003】
このような背景から、EDR(Endpoint Detection and Response)と呼ばれるマルウェア対策技術が用いられるようになってきた。EDRでは、解析用に用意した環境ではなく、ユーザの端末にインストールされるエージェントを用いて、端末の挙動を継続的に監視する。そして、あらかじめ用意された、マルウェアが活動した際に残す痕跡を検出するためのいわば挙動のシグネチャである痕跡情報(IOC:Indicator of Compromise)を用いて、マルウェアを検出する。具体的には、EDRは、端末で観測された挙動とIOCを照合し、一致する場合はマルウェアに感染した疑いがあるとして検出する。
【0004】
したがって、EDRによるマルウェアの検出の可否は、あるマルウェアの検出に有用なIOCが保持されているかに依存する。一方、IOCがマルウェアのみならず正規のソフトウェアの活動の痕跡にも一致してしまうような場合には、誤検知に繋がるという問題がある。それゆえに、ただ闇雲にマルウェアの痕跡をIOCにして数を増やすのではなく、検出に有用な痕跡を選択的に抽出してIOCにしていく必要がある。
【0005】
また、EDRが一度に照合できるIOCの観点からも、検出に有用な痕跡を選択的に抽出してIOCにしていく必要が生じる。すなわち、EDRは一般に多くのIOCを持つほど照合に時間がかかるため、より少ない数のIOCでより多くの種類のマルウェアを検出するIOCの組み合わせを持つことが望ましい。その際に、検出に有用でない活動痕跡からIOCを生成してしまうと、無用に照合の時間をかけてしまうことに繋がる。
【0006】
現在では、日々新しいマルウェアが生み出されており、それに対応したIOCも変化し続ける。そのため、それらに対して継続的に対応するためには、マルウェアを自動的に解析して活動の痕跡を抽出し、IOCを生成していく必要がある。IOCは、マルウェアを解析して得られた活動痕跡に基づいて生成される。一般に、マルウェアの挙動を監視しながら実行して得られた痕跡を収集し、それに正規化を施したり、検知に適した組み合わせ選択したりすることで、IOCとする。以上から、マルウェアの検出に有用な活動痕跡を、選択的かつ自動的に抽出する技術が希求される。
【0007】
例えば、非特許文献1では、複数のマルウェア間で繰り返し観測される痕跡のパターンを抽出し、IOCとして用いる手法を提案している。また、非特許文献2では、同一ファミリーのマルウェア間で共起する痕跡の集合を抽出し、集合の最適化手法によってIOCの複雑度が高まるのを防ぐことで、人間が理解しやすいIOCを自動で生成する手法を提案している。これらの手法によれば、実行トレースログからマルウェアの検出に貢献し得るIOCを自動的に抽出することが可能である。
【0008】
ここで、実行トレースとは、実行時に様々な観点からの挙動を順に記録していくことで、プログラムの実行状況を追跡するものである。また、これを実現するために、挙動を監視して記録する機能を備えたプログラムを、トレーサと呼ぶ。たとえば、実行されたAPI(Application Programming Interface)を順に記録したものをAPIトレースと呼び、それを実現するためのプログラムをAPIトレーサと呼ぶ。
【先行技術文献】
【非特許文献】
【0009】
【文献】Christian Doll et al. "Automated Pattern Inference Based on Repeatedly Observed Malware Artifacts." Proceedings of the 14th International Conference on Availability, Reliability and Security. 2019.
【文献】Yuma Kurogome et al. "EIGER: Automated IOC Generation for Accurate and Interpretable Endpoint Malware Detection." Proceedings of the 35th Annual Computer Security Applications Conference. 2019.
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、上述した従来技術では、生成されたIOCがどの期間では有効にすべきで、どの期間では無効にすべきなのかが決定されないという課題があった。EDRは、保持しているIOCを1つずつ順に照合していくことで、マルウェアを検出する。そのため、IOCの数が多くなればなるほど、照合にかかる時間も長くなる。一方、マルウェアの検出にかけられる時間や計算資源は、ユーザの端末上でランタイムで検査をするという観点から、一定の範囲に限られる。そのため、検査に同時に用いられるIOCの数は有限であり、検知に寄与しない無効なIOCは、可能な限り除外したい。
【0011】
IOCが対応するマルウェアには、主にそのファミリーごとに趨勢が存在し、多くは特定の攻撃キャンペーンやアクターに紐付いて用いられる。そして、攻撃キャンペーンの終了後や、アクターがそのマルウェアの運用をやめた後は、IOCの有効性は失われる場合が多い。一方、一定期間活動を停止していたアクターが活動を再開したことにより、それまであまり見られなくなっていたマルウェアが再び活発化するという場合もある。したがって、こうしたマルウェアの流行にあわせて、EDRが用いるIOCを無効化および有効化することは、EDRを効果的に運用する上での重要な課題である。
【課題を解決するための手段】
【0012】
上述した課題を解決し、目的を達成するために、本発明に係る判定装置は、マルウェアの特徴を抽出する抽出部と、前記抽出部によって抽出された前記特徴に基づいてクラスタリングし、前記マルウェアを所定のクラスタに分類する分類部と、前記分類部によって分類された前記クラスタに基づいて、前記マルウェアの攻撃の傾向を判定する攻撃傾向判定部と、前記攻撃傾向判定部によって判定された結果に基づいて、前記マルウェアの活動痕跡から生成された痕跡情報の有効性を判定する有効性判定部とを備えることを特徴とする。
【0013】
また、本発明に係る判定方法は、判定装置によって実行される判定方法であって、マルウェアの特徴を抽出する抽出工程と、前記抽出工程によって抽出された前記特徴に基づいてクラスタリングし、前記マルウェアを所定のクラスタに分類する分類工程と、前記分類工程によって分類された前記クラスタに基づいて、前記マルウェアの攻撃の傾向を判定する攻撃傾向判定工程と、前記攻撃傾向判定工程によって判定された結果に基づいて、前記マルウェアの活動痕跡から生成された痕跡情報の有効性を判定する有効性判定工程とを含むことを特徴とする。
【0014】
また、本発明に係る判定プログラムは、マルウェアの特徴を抽出する抽出ステップと、 前記抽出ステップによって抽出された前記特徴に基づいてクラスタリングし、前記マルウェアを所定のクラスタに分類する分類ステップと、前記分類ステップによって分類された前記クラスタに基づいて、前記マルウェアの攻撃の傾向を判定する攻撃傾向判定ステップと、前記攻撃傾向判定ステップによって判定された結果に基づいて、前記マルウェアの活動痕跡から生成された痕跡情報の有効性を判定する有効性判定ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【0015】
本発明では、生成されたIOCの有効性を判定することにより、EDRをより効果的に運用することができる。
【図面の簡単な説明】
【0016】
【
図1】
図1は、第1の実施形態に係る痕跡情報判定システムの構成例を示す図である。
【
図2】
図2は、第1の実施形態に係る痕跡情報判定装置の構成例を示すブロック図である。
【
図3】
図3は、第1の実施形態に係るクラスタリング処理の概要を示す図である。
【
図4】
図4は、第1の実施形態に係る痕跡情報有効性判定処理の概要を示す図である。
【
図5】
図5は、第1の実施形態に係る痕跡情報判定処理全体の流れの一例を示すフローチャートである。
【
図6】
図6は、第1の実施形態に係る攻撃傾向判定処理の流れの一例を示すフローチャートである。
【
図7】
図7は、第1の実施形態に係る痕跡情報有効性判定処理の流れの一例を示すフローチャートである。
【
図8】
図8は、プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【0017】
以下に、本発明に係る痕跡情報判定装置(適宜、判定装置)、痕跡情報判定方法(適宜、判定方法)および痕跡情報判定プログラム(適宜、判定プログラム)の実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
【0018】
〔第1の実施形態〕
以下に、本実施形態に係る痕跡情報判定システムの構成、痕跡情報判定装置の構成、クラスタリング処理の概要、痕跡情報有効性判定処理の概要、痕跡情報判定処理の全体の流れ、攻撃傾向判定処理の流れ、痕跡情報有効性判定処理の流れを順に説明し、最後に本実施形態の効果を説明する。
【0019】
[痕跡情報判定システムの構成]
図1を用いて、本実施形態に係る痕跡情報判定システム(適宜、本システム)100の構成を詳細に説明する。
図1は、第1の実施形態に係る痕跡情報判定システムの構成例を示す図である。本システム100は、痕跡情報判定装置10、センサとして機能するマルウェア収集装置20、SOC(Security Operation Center)やCSIRT(Computer Security Incident Response Team)等のセキュリティ対策組織30(30A、30B、30C)および痕跡情報データベース40を有する。ここで、痕跡情報判定装置10とマルウェア収集装置20とセキュリティ対策組織30と痕跡情報データベース40とは、図示しない所定の通信網を介して、有線または無線により通信可能に接続される。なお、
図1に示した痕跡情報判定システム100には、複数台の痕跡情報判定装置10、複数台のマルウェア収集装置20、複数台の痕跡情報データベース40が含まれてもよい。
【0020】
まず、痕跡情報判定装置10は、マルウェア収集装置20からマルウェアの入力を受け付ける(ステップS1)。ここで、マルウェア収集装置20は、VirusTotal等の研究用のマルウェア共有サービス、組織内のCSIRT、ハニーポット等のマルウェアの情報を収集する専用の機器であるが、特に限定されない。マルウェア収集装置20は、一般的なネットワーク等の利用者が所有するPC(Personal Computer)、スマートフォン、タブレット端末等であってもよい。
【0021】
次に、痕跡情報判定装置10は、入力を受け付けたマルウェアを解析し、マルウェアの分類に寄与する特徴(適宜、「マルウェアの特徴」または「マルウェア特徴」)を取り出す(ステップS2)。このとき、痕跡情報判定装置10は、亜種間で類似性の高い特徴(例:APIトレースやファイルのメタデータ)を取り出す。なお、痕跡情報判定装置10による詳細なマルウェアの収集処理およびマルウェアの特徴取得処理については、[痕跡情報判定処理全体の流れ]にて後述する。
【0022】
APIトレースやメタデータ等の特徴は、一般に亜種のマルウェア間での類似性が高い。そのため、そうした特徴に基づいてクラスタリングすることで、亜種のマルウェア同士が同じクラスタに分類されることが期待できる。攻撃キャンペーンや同一のアクターによる攻撃では、亜種のマルウェアが継続的に用いられるため、前述の得られたクラスタを継続的に見ることで、攻撃キャンペーンや同一のアクターによる攻撃の傾向(例えば、攻撃の継続状況等)を知ることができる。
【0023】
続いて、痕跡情報判定装置10は、得られたマルウェアの特徴からマルウェアを分類する(ステップS3)。このとき、痕跡情報判定装置10は、マルウェアの特徴に基づいてクラスタリングを行い、特徴ごとのクラスタを作成する。なお、痕跡情報判定装置10による詳細なクラスタリング処理については、[クラスタリング処理の概要]にて後述する。
【0024】
また、痕跡情報判定装置10は、マルウェアによる攻撃の継続を判定する(ステップS4)。このとき、痕跡情報判定装置10は、作成したクラスタの時系列変化に基づいて、クラスタに分類されるマルウェアの攻撃が継続しているかの傾向を判定する。なお、痕跡情報判定装置10による詳細な攻撃傾向判定処理については、[攻撃傾向判定処理の流れ]にて後述する。
【0025】
一方、痕跡情報判定装置10は、痕跡情報データベース40から痕跡情報(IOC)を受け取る(ステップS5)。ここで、痕跡情報判定装置10が受け取るIOCは、過去にマルウェア収集装置20が収集したマルウェアの活動痕跡から生成したIOCであるが、特に限定されない。
【0026】
そして、痕跡情報判定装置10は、マルウェアの攻撃の状態からIOCの有効性を判定する(ステップS6)。このとき、痕跡情報判定装置10は、マルウェアの攻撃の継続および終了の状態に基づいて、IOCの有効性を判定する。痕跡情報判定装置10による詳細なIOC有効性判定処理については、[痕跡情報有効性判定処理の流れ]にて後述する。
【0027】
最後に、痕跡情報判定装置10は、IOCの有効性の判定や有効なIOCをセキュリティ対策組織30に送信する(ステップS7)。痕跡情報判定装置10が判定やIOCを送信する端末等は、特に限定されない。
【0028】
本実施形態に係る痕跡情報判定システム100では、攻撃の流行を反映したマルウェアを収集し、その解析によって分類に有効な情報を取得する。そして、その情報に基づいてマルウェアをクラスタリングし、作成されたクラスタの時系列変化に基づいてそのマルウェアによる攻撃が継続しているかを判定する。さらに、攻撃の継続及び終了の状態に基づいてIOCの有効性を判定する。これによって、本システム100では、マルウェアによる攻撃の流行が継続中か否かを判定し、そのマルウェアのIOCの適切な無効化や有効化を実現できる。
【0029】
また、本システム100では、マルウェアの攻撃の流行を加味した有効なIOCの選択に有用であり、攻撃に用いられることがなくなり、陳腐化したIOCをEDRによる検知から除外することで、検知を効率化するのに適している。このため、本システム100を用いて、EDRに入力するIOCを選択することで、EDRをより効果的に運用し、SOCやCSIRT等で有効なマルウェアに対策を講じることが可能である。
【0030】
[痕跡情報判定装置の構成]
図2を用いて、本実施形態に係る痕跡情報判定装置10の構成を詳細に説明する。
図2は、本実施形態に係る痕跡情報判定装置の構成例を示すブロック図である。痕跡情報判定装置10は、入力部11、出力部12、通信部13、記憶部14および制御部15を有する。
【0031】
入力部11は、当該痕跡情報判定装置10への各種情報の入力を司る。入力部11は、例えば、マウスやキーボード等であり、当該痕跡情報判定装置10への設定情報等の入力を受け付ける。また、出力部12は、当該痕跡情報判定装置10からの各種情報の出力を司る。出力部12は、例えば、ディスプレイ等であり、当該痕跡情報判定装置10に記憶された設定情報等を出力する。
【0032】
通信部13は、他の装置との間でのデータ通信を司る。例えば、通信部13は、各通信装置との間でデータ通信を行う。また、通信部13は、図示しないオペレータの端末との間でデータ通信を行うことができる。
【0033】
記憶部14は、制御部15が動作する際に参照する各種情報や、制御部15が動作した際に取得した各種情報を記憶する。記憶部14は、マルウェア特徴記憶部14aおよびクラスタ記憶部14bを有する。ここで、記憶部14は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置等である。なお、
図2の例では、記憶部14は、痕跡情報判定装置10の内部に設置されているが、痕跡情報判定装置10の外部に設置されてもよいし、複数の記憶部が設置されていてもよい。
【0034】
マルウェア特徴記憶部14aは、制御部15の抽出部15bによって抽出されたマルウェアの特徴を記憶する。例えば、マルウェア特徴記憶部14aは、マルウェアのファミリー名、攻撃キャンペーンの名称等を記憶する。また、クラスタ記憶部14bは、制御部15の分類部15cの処理によって生成されたクラスタを記憶する。例えば、クラスタ記憶部14bは、クラスタリング処理によってマルウェアのファミリーや攻撃キャンペーンごとに分類されたクラスタに関する情報を記憶する。
【0035】
制御部15は、当該痕跡情報判定装置10全体の制御を司る。制御部15は、収集部15a、抽出部15b、分類部15c、攻撃傾向判定部15d、有効性判定部15eおよび生成部15fを有する。ここで、制御部15は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の電子回路やASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路である。
【0036】
収集部15aは、マルウェアを収集する。例えば、収集部15aは、流行しているファミリーのマルウェアや進行中の攻撃キャンペーンのマルウェアを検体として収集する。また、収集部15aは、マルウェア共有サービス、CSIRT、ハニーポット等によって収集されたマルウェアの情報を検体として収集する。
【0037】
抽出部15bは、マルウェアの特徴を抽出する。例えば、抽出部15bは、マルウェアの特徴として、マルウェアから、亜種間で類似性の高い特徴を抽出する。また、抽出部15bは、所定の方法でマルウェアのAPIトレースまたはメタデータを抽出する。なお、抽出部15bがマルウェアの特徴を抽出するための処理は、特に限定されない。一方、抽出部15bは、抽出したマルウェアの特徴をマルウェア特徴記憶部14aに格納する。
【0038】
分類部15cは、抽出部15bによって抽出されたマルウェアの特徴に基づいてクラスタリングし、マルウェアを所定のクラスタに分類する。例えば、分類部15cは、マルウェアをマルウェアのファミリーまたは攻撃キャンペーンごとのクラスタに分類する。また、分類部15cは、収集部15aによってマルウェアが収集された場合には、分類したクラスタを新たなマルウェアが収集されるごとに更新する。一方、分類部15cは、分類したクラスタ、更新したクラスタの情報をクラスタ記憶部14bに格納する。
【0039】
攻撃傾向判定部15dは、分類部15cによって分類されたクラスタに基づいて、マルウェアの攻撃の傾向を判定する。例えば、攻撃傾向判定部15dは、マルウェアの攻撃の傾向として、マルウェアの攻撃の継続性を判定する。また、検知部15dは、クラスタの更新履歴に基づいて、クラスタごとの未更新期間を計算し、未更新期間からマルウェアの攻撃の継続性を判定する。なお、攻撃傾向判定部15dによる詳細な攻撃傾向判定処理については、[攻撃傾向判定処理の流れ]にて後述する。
【0040】
有効性判定部15eは、攻撃傾向判定部15dによって判定された結果に基づいて、マルウェアの活動痕跡から生成された痕跡情報の有効性を判定する。例えば、有効性判定部15eは、未更新期間が所定値以上の場合には、クラスタに分類されるマルウェアの痕跡情報を無効と判定する。なお、有効性判定部15eによる詳細な痕跡情報有効性判定処理については、[痕跡情報有効性判定処理の流れ]にて後述する。
【0041】
生成部15fは、有効性判定部15eによって判定された痕跡情報の有効性に基づいて、マルウェアの有効な痕跡情報を生成する。例えば、生成部15fは、判定部15eによって無効と判定された痕跡情報を除外し、有効と判定された痕跡情報のみから痕跡情報を生成する。また、判定部15eによって有効と判定された痕跡情報に、クラスタの未更新期間に基づく優先度を付与し、痕跡情報を生成してもよい。
【0042】
[クラスタリング処理の概要]
図3を用いて、本実施形態に係るクラスタリング処理の概要を説明する。
図3は、第1の実施形態に係るクラスタリング処理の概要を示す図である。
【0043】
まず、痕跡情報判定装置10は、マルウェア収集装置20のセンサ等を介して、マルウェアを収集する(
図3(1)参照)。ここで、痕跡情報判定装置10が収集するマルウェアは、IOC適応対象の組織を含んだ攻撃の傾向を反映している必要がある。例えば、「ばらまき型攻撃」であれば、全世界での攻撃の傾向があり、「標的型攻撃」であれば、IOCを適応する組織に対する攻撃の傾向がある。
【0044】
次に、痕跡情報判定装置10は、収集したマルウェアを解析し、クラスタリングする(
図3(2)参照)。そして、痕跡情報判定装置10は、クラスタリングの結果、マルウェアの特徴ごとに分類された複数のクラスタを生成する(
図3(3)参照)。
図3では、痕跡情報判定装置10がクラスタA、クラスタBおよびクラスタCを生成している。それぞれのクラスタに含まれるマルウェアの挙動の特徴には、マルウェアファミリーや攻撃キャンペーン等の共通性が見られることとなる(
図3(4)参照)。
【0045】
なお、クラスタリングには、ウォード法のような階層的手法を用いてもよいし、K-meansのように非階層的手法を用いてもよい。亜種のマルウェアをまとめることができるものであれば、その手法はこれらに限定されない。
【0046】
[痕跡情報有効性判定処理の概要]
図4を用いて、本実施形態に係る痕跡情報有効性判定処理の概要を説明する。
図4は、第1の実施形態に係る痕跡情報有効性判定処理の概要を示す図である。
【0047】
まず、痕跡情報判定装置10は、センサとして機能するマルウェア収集装置20等を介して、マルウェアを継続的に収集する(
図4(1)参照)。次に、痕跡情報判定装置10は、収集したマルウェアを解析し、クラスタリングする(
図4(2)参照)。そして、痕跡情報判定装置10は、クラスタリングの結果、マルウェアの特徴ごとに分類された複数のクラスタを生成し、新たなマルウェアを収集するごとに、クラスタを更新していく。そして、痕跡情報判定装置10は、一定期間、新たにマルウェアが分類されなくなったクラスタが出てきた場合は、そのクラスタのマルウェアによる攻撃が終了したと見て、IOCの無効化をしたり、優先度を下げたりする(
図4(3)参照)。
図4では、痕跡情報判定装置10がクラスタA、クラスタBおよびクラスタCを生成し、また更新しており、クラスタCに一定期間新たなマルウェアが分類されなかったため、クラスタCに分類されたマルウェアのIOCは無効なものと判断されている。
【0048】
[痕跡情報判定処理全体の流れ]
図5を用いて、本実施形態に係る痕跡情報判定処理全体の流れを詳細に説明する。
図5は、第1の実施形態に係る痕跡情報判定処理全体の流れの一例を示すフローチャートである。
【0049】
まず、痕跡情報判定装置10の収集部15aは、マルウェア収集装置20から、痕跡情報(IOC)の有効性を判定する対象となるマルウェアの入力を受け付ける(ステップS101)。このとき、収集部15aは、マルウェア収集装置20以外の機器からマルウェアの情報を収集してもよい。また、収集部15aは、入力部11を介して直接入力されたマルウェアの情報を収集してもよい。
【0050】
(特徴抽出処理)
抽出部15bは、マルウェアの分類に寄与する特徴(マルウェアの特徴)を取り出すために、マルウェアを解析する(ステップS102)。ここで、マルウェアの特徴とは、APIトレースやファイルのメタデータ等であり、亜種を反映した分類に寄与する特徴であるが、特に限定されない。抽出部15bは、例えば、マルウェアを隔離環境で実行し、呼び出されたAPIを引数や返り値とともに記録したAPIトレースから、マルウェアの特徴を抽出する。また、抽出部15bは、マルウェアのファイルのヘッダ部分が持つ値を調査するメタデータ抽出を行い、マルウェアの特徴を抽出する。
【0051】
(クラスタリング処理)
分類部15cは、抽出部15bによって抽出されたマルウェアの特徴(例:APIトレースやファイルのメタデータ)に基づいてクラスタリングし、マルウェアをクラスタに分類する(ステップS103)。また、分類部15cは、収集部15aによってマルウェアが収集された場合には、分類したクラスタを新たなマルウェアが収集されるごとに更新する。
【0052】
(攻撃傾向判定処理)
攻撃傾向判定部15dは、分類部15cによって分類されたクラスタに基づいて、マルウェアの攻撃の傾向を判定する(ステップS104)。ここで、マルウェアの攻撃の傾向とは、例えば、マルウェアの攻撃の継続性等であるが、特に限定されず、マルウェアの総数、攻撃の対象、攻撃の種類等であってもよい。また、攻撃傾向判定部15dは、クラスタの更新履歴に基づいて、クラスタごとの未更新期間を計算し、未更新期間からマルウェアの攻撃の継続性を判定する。なお、攻撃傾向判定部15dによる詳細な攻撃傾向判定処理については、[攻撃傾向判定処理の流れ]にて後述する。
【0053】
このとき、攻撃傾向判定部15dは、攻撃の継続性等の攻撃の傾向が変化したマルウェアが見られた場合(ステップS105:Yes)、ステップS106のIOC有効性判定処理へ移行する。一方、攻撃傾向判定部15dは、攻撃の継続性が変化したマルウェアが見られない場合(ステップS105:No)、処理を終了する。
【0054】
(IOC有効性判定処理)
有効性判定部15eは、ステップS104で判定された攻撃の傾向に基づいて、マルウェアの痕跡情報(IOC)の有効性を判定する(ステップS106)。このとき、有効性判定部15eは、通信部13を介して判定した結果をセキュリティ対策組織30に送信してもよい。なお、有効性判定部15eによる詳細なIOC有効性判定処理については、[痕跡情報有効性判定処理の流れ]にて後述する。
【0055】
最後に、生成部15fは、ステップS106で判定されたIOCの有効性に基づいて、有効化すべきIOC、無効化すべきIOCを出力し(ステップS107)、処理を終了する。このとき、生成部15fは、出力部12を介して生成したIOCを表示してもよい。また、生成部15fは、通信部13を介して生成したIOCをセキュリティ対策組織30に送信してもよい。
【0056】
[攻撃傾向判定処理の流れ]
図6を用いて、本実施形態に係る攻撃傾向判定処理の流れを詳細に説明する。
図6は、第1の実施形態に係る攻撃傾向判定処理の流れの一例を示すフローチャートである。まず、痕跡情報判定装置10の攻撃傾向判定部15dは、クラスタ記憶部14bからクラスタの情報と、クラスタごとの最終更新履歴を取得する(ステップS201)。このとき、攻撃傾向判定部15dは、クラスタ記憶部14b以外から、上記のクラスタの情報、クラスタごとの最終更新履歴を取得してもよい。また、攻撃傾向判定部15dは、入力部11を介して直接入力された上記のクラスタの情報、クラスタごとの最終更新履歴を取得してもよい。
【0057】
次に、攻撃傾向判定部15dは、分類部15cから新規に分類された検体情報を取得する(ステップS202)。ここで、検体情報とは、新たに収集されたマルウェアがどのクラスタに属するかの情報であるが、特に限定されない。このとき、攻撃傾向判定部15dは、クラスタ記憶部14bから新規の検体情報を取得してもよい。
【0058】
続いて、攻撃傾向判定部15dは、各クラスタの未更新期間を計算し(ステップS203)、未更新期間が閾値以上のクラスタが存在する場合(ステップS204:Yes)、マルウェアの攻撃が終了したと判定し、該当するクラスタを返り値として出力する(ステップS205)。一方、攻撃傾向判定部15dは、未更新期間が閾値以上のクラスタが存在しない場合(ステップS204:No)、ステップS206に移行する。
【0059】
最後に、攻撃傾向判定部15dは、過去に攻撃が終了したと判定されたクラスタであっても、新たに更新されたクラスタが存在する場合(ステップS206:Yes)、該当するクラスタに分類されるマルウェアの攻撃が再開され、攻撃が継続していると判定し、該当するクラスタを返り値として出力し(ステップS207)、処理を終了する。一方、攻撃傾向判定部15dは、過去に攻撃が終了したと判定されたクラスタの中に、新たに更新されたクラスタが存在しない場合(ステップS206:No)、処理を終了する。
【0060】
[痕跡情報有効性判定処理の流れ]
図7を用いて、本実施形態に係る痕跡情報有効性判定処理の流れを詳細に説明する。
図7は、第1の実施形態に係る痕跡情報有効性判定処理の流れの一例を示すフローチャートである。まず、痕跡情報判定装置10の有効性判定部15eは、攻撃傾向判定部15dから、攻撃が継続しているクラスタと、攻撃が終了しているクラスタとの情報を取得する(ステップS301)。また、有効性判定部15eは、痕跡情報データベース40から痕跡情報(IOC)の入力を受け付ける(ステップS302)。このとき、有効性判定部15eは、痕跡情報データベース40以外から、IOCの入力を受け付けてもよい。なお、ステップS301とステップS302の処理は同時に行われてもよい。また、ステップS302の処理がステップS301の処理より先に行われてもよい。
【0061】
次に、有効性判定部15eは、攻撃が継続しているクラスタのIOCを有効と判定し、該当するIOCを返り値として出力する(ステップS303)。また、有効性判定部15eは、攻撃が終了したクラスタのIOCを無効と判定し、該当するIOCを返り値として出力し(ステップS304)、処理を終了する。なお、ステップS303とステップS304の処理は同時に行われてもよい。また、ステップS304の処理がステップS303の処理より先に行われてもよい。
【0062】
[第1の実施形態の効果]
第1に、上述した本実施形態に係る痕跡情報判定処理では、マルウェアの特徴を抽出し、抽出したマルウェアの特徴に基づいてクラスタリングし、マルウェアを所定のクラスタに分類し、分類したクラスタに基づいて、マルウェアの攻撃の傾向を判定し、判定した結果に基づいて、マルウェアの活動痕跡から生成された痕跡情報(IOC)の有効性を判定する。このため、本処理では、生成されたIOCの有効性を判定することにより、EDRをより効果的に運用することができる。
【0063】
第2に、上述した本実施形態に係る痕跡情報判定処理では、マルウェアの特徴として、マルウェアから、亜種間で類似性の高い特徴を抽出する。このため、本処理では、マルウェアの類似性を考慮して、生成されたIOCの有効性を判定することにより、EDRをより効果的に運用することができる。
【0064】
第3に、上述した本実施形態に係る痕跡情報判定処理では、マルウェアの特徴として、マルウェアのAPIトレースまたはメタデータを抽出し、マルウェアをマルウェアのファミリーまたは攻撃キャンペーンごとのクラスタに分類し、マルウェアの攻撃の傾向として、マルウェアの攻撃の継続性を判定する。このため、本処理では、マルウェアの流行を考慮して、生成されたIOCの有効性を判定することにより、EDRをより効果的に運用することができる。
【0065】
第4に、上述した本実施形態に係る痕跡情報判定処理では、マルウェアを収集し、マルウェアが収集された場合には、分類したクラスタを新たなマルウェアを収集するごとに更新し、クラスタの更新履歴に基づいて、クラスタごとの未更新期間を計算し、未更新期間から攻撃の継続性を判定し、未更新期間が所定値以上の場合には、クラスタに分類されるマルウェアの痕跡情報を無効と判定する。本処理では、マルウェアの流行を考慮して、生成されたIOCの有効性をより迅速に判定することにより、EDRをより効果的に運用することができる。
【0066】
第5に、上述した本実施形態に係る痕跡情報判定処理では、判定したIOCの有効性に基づいて、マルウェアの有効な痕跡情報を生成する。本処理では、マルウェアの流行を考慮して、生成されたIOCの有効性をより迅速に判定し、有効なIOCを生成することにより、EDRをより効果的に運用することができる。
【0067】
〔システム構成等〕
上記実施形態に係る図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のごとく構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0068】
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【0069】
〔プログラム〕
また、上記実施形態において説明した痕跡情報判定装置10が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。この場合、コンピュータがプログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。
【0070】
図8は、プログラムを実行するコンピュータを示す図である。
図8に例示するように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有し、これらの各部はバス1080によって接続される。
【0071】
メモリ1010は、
図8に例示するように、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、
図8に例示するように、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、
図8に例示するように、ディスクドライブ1100に接続される。例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、
図8に例示するように、例えば、マウス1110、キーボード1120に接続される。ビデオアダプタ1060は、
図8に例示するように、例えばディスプレイ1130に接続される。
【0072】
ここで、
図8に例示するように、ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記のプログラムは、コンピュータ1000によって実行される指令が記述されたプログラムモジュールとして、例えば、ハードディスクドライブ1090に記憶される。
【0073】
また、上記実施形態で説明した各種データは、プログラムデータとして、例えば、メモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出し、各種処理手順を実行する。
【0074】
なお、プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してCPU1020によって読み出されてもよい。あるいは、プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
【0075】
上記の実施形態やその変形は、本願が開示する技術に含まれると同様に、請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0076】
10 痕跡情報判定装置(判定装置)
11 入力部
12 出力部
13 通信部
14 記憶部
14a マルウェア特徴記憶部
14b クラスタ記憶部
15 制御部
15a 収集部
15b 抽出部
15c 分類部
15d 攻撃傾向判定部
15e 有効性判定部
15f 生成部
20 マルウェア収集装置
30、30A、30B、30C セキュリティ対応組織
40 痕跡情報データベース
100 痕跡情報判定システム