JP5933797B1 - ログ情報生成装置及びプログラム並びにログ情報抽出装置及びプログラム - Google Patents

ログ情報生成装置及びプログラム並びにログ情報抽出装置及びプログラム Download PDF

Info

Publication number
JP5933797B1
JP5933797B1 JP2015199588A JP2015199588A JP5933797B1 JP 5933797 B1 JP5933797 B1 JP 5933797B1 JP 2015199588 A JP2015199588 A JP 2015199588A JP 2015199588 A JP2015199588 A JP 2015199588A JP 5933797 B1 JP5933797 B1 JP 5933797B1
Authority
JP
Japan
Prior art keywords
information
log
event
log information
unit
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.)
Expired - Fee Related
Application number
JP2015199588A
Other languages
English (en)
Other versions
JP2017072993A (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.)
Soliton Systems KK
Original Assignee
Soliton Systems KK
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
Priority to JP2015199588A priority Critical patent/JP5933797B1/ja
Application filed by Soliton Systems KK filed Critical Soliton Systems KK
Priority to CA3001282A priority patent/CA3001282C/en
Priority to EP16853290.1A priority patent/EP3223159B1/en
Priority to CN201680058728.7A priority patent/CN108351827A/zh
Priority to KR1020187012912A priority patent/KR102095334B1/ko
Priority to PL16853290T priority patent/PL3223159T3/pl
Priority to ES16853290T priority patent/ES2870926T3/es
Priority to PCT/JP2016/063488 priority patent/WO2017061134A1/ja
Priority to DK16853290.1T priority patent/DK3223159T3/da
Application granted granted Critical
Publication of JP5933797B1 publication Critical patent/JP5933797B1/ja
Priority to US15/224,382 priority patent/US9875353B2/en
Publication of JP2017072993A publication Critical patent/JP2017072993A/ja
Priority to US15/877,242 priority patent/US10289837B2/en
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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • 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/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • 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/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2101Auditing as a secondary aspect

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】任意の時刻、実行環境で実行されたプロセスを容易に特定する。【解決手段】クライアント端末10は、関連する一連のイベントを実行するプロセスの開始時に、当該プロセスを時間的及び空間的に一意に識別するプロセスGIDを含んだプロセス情報を生成し、さらに、プロセスが実行するイベント毎に、イベント種を含んだイベント情報をプロセス監視部11から受信するプロセス監視制御部13と、プロセスが実行するイベント毎に、プロセス監視制御部13から提供されたプロセス情報とイベント情報とを有するプロセス動作ログレコードを生成するログ情報生成部14と、を備えている。【選択図】図2

Description

本発明は、ログ情報生成装置及びプログラム並びにログ情報抽出装置及びプログラムに関する。
近年、サイバー攻撃により、コンピュータ等の各種の情報処理装置において、悪意のあるプログラムコードが実行され、その結果、個人情報や機密情報が流出する事件が後をたたず、大きな社会問題となっている。この悪意のあるプログラムコードを含むアプリケーションプログラムのことを「マルウェア」という。サイバー攻撃は日々巧妙化し、マルウェアの中には既知のみならず未知の手法を使って攻撃する種類もまた存在することから、マルウェアに対する完全な防御方法は解明されていない。
特開2013−222422号公報では、アプリケーションプログラムに関する情報をオペレーションシステム(OS)へ提供するためのマニフェストファイルに記載された各機能の使用許可情報に基づいて、アプリケーションプログラムのマルウェアらしさを解析する技術が開示されている(特許文献1参照)。
特開2010−182194号公報では、入退出ログ、PC操作ログ、複合機操作ログを記録して、それらのログデータを関連付けた統合ログを生成することが開示されている(特許文献2参照)。
特開2013−222422号公報 特開2010−182194号公報
特許文献1の技術は、アプリケーションプログラムに含まれたマニフェストファイルに基づき、今まさにインストールしようとするアプリケーションプログラムがマルウェアか否かを解析するに過ぎない。つまり、特許文献1の技術は、ソフトウェアをインストールするタイミングのみで、マルウェアの有無を検出することができるが、そのソフトウェアのインストール前又はインストール後では、マルウェアの有無を検出できない問題がある。
また、特許文献1の技術は、マニフェストファイルに既に記載された情報に基づき、アプリケーションプログラムがマルウェアか否かを解析するので、既知のマルウェアのみ解析することができ、未知のマルウェアを検出することができない問題がある。
特許文献2の技術は、ログデータとして記録する情報として、PC識別するためのホスト名、操作主体を示すログオンユーザ名、操作内容を示す操作項目、操作対象を示すファイル名等の情報があるが、その操作を実行する際に関わったアプリケーションプログラムの情報が不足している。つまり、あるアプリケーションプログラムの動作が、正規のアプリケーションプログラムによる行為か、マルウェアによる行為かの判断ができない問題がある。
また、特許文献2の技術は、情報漏えい対策を目的としたシステムであり、ログオンユーザ操作を起点としたPC操作ログを記録する仕組みである。しかしながら、ある種のマルウェアは、定常的に隠密行動をするために自発的に動作するアプリケーションプログラムとして動作し、明示的なユーザインターフェースを持たない場合も多い。この点を考慮すれば、マルウェアを検出するためには、ユーザインターフェースの有無、PC利用ユーザのアプリケーションの実行意図の有無に関係なく、すべてのアプリケーションプログラムの動作をログとして記録する必要がある。
また、コンピュータ等の各種の情報処理装置においては、アプリケーションプログラムだけでなく、ネットワーク通信単位やログインユーザ単位でも、一連の動作で構成されるタスクを記録したいという要請もある。
本発明は、このような実情を鑑みて提案されたものであり、任意の時刻、実行環境におけるタスクを容易に特定するためのログ情報を生成するログ情報生成装置及びプログラムを提供することを目的とする。
さらに、本発明は、生成されたログ情報から、任意の時刻、実行環境で実行されたタスクを容易に特定できるログ情報を抽出するログ情報抽出装置及びプログラムを提供することを目的とする。
本発明に係るログ情報生成装置は、複数のコンピュータを有するシステムの空間で、アプリケーションプログラムの実行主体であるプロセスの一連のイベントで構成されるプロセス動作の開始時に、前記プロセスを時間的及び空間的に一意に識別する第1の識別情報を生成し、当該第1の識別情報を含んだプロセス情報を生成するプロセス情報生成部と、前記イベント毎に、当該イベントの種別を示すイベント種別情報を生成し、当該イベント種別情報を含んだイベント情報を生成するイベント情報生成部と、前記イベント毎に、前記プロセス情報生成部により生成された前記プロセス情報と、前記イベント情報生成部により生成された前記イベント情報と、を有するログ情報を生成するログ情報生成部と、を備えている。
本発明に係るログ情報抽出装置は、複数のコンピュータを有するシステムの空間で、時間情報及び実行環境情報が入力される入力部と、時間情報と、実行環境情報と、アプリケーションプログラムの実行主体であるプロセスの一連のイベントで構成されるプロセス動作の開始時に生成されたものであって前記プロセスを時間的及び空間的に一意に識別する第1の識別情報を含んだプロセス情報と、イベントの種別を示すイベント種別情報を含んだイベント情報と、を前記イベント毎に有するログ情報を記憶するログ情報記憶部と、前記ログ情報記憶部に記憶された前記ログ情報から、前記入力部に入力された前記時間情報及び前記実行環境情報に対応するログ情報に含まれる第1の識別情報を特定し、特定した前記第1の識別情報を有する全部又は一部のログ情報を抽出するログ情報抽出部と、を備えている。
本発明は、任意の時刻、実行環境で起動されたプロセスを容易に特定するためのログ情報を効率よく抽出することができる。



マルウェア特定システム全体の概略構成を示す図である。 クライアント端末の機能的な構成を示すブロック図である。 プロセス動作ログレコードの構造を示す図である。 プロセス開始からプロセス終了までのプロセス動作ログの構成を示す図である。 クライアント端末の動作ルーチンを示すフローチャートである。 クライアント端末の動作ルーチンを示すフローチャートである。 ステップS7及びステップS10におけるプロセス監視制御部の動作ルーチンを示すフローチャートである。 ステップS7及びステップS10におけるログ情報生成部の動作ルーチンを示すフローチャートである。 マルウェア(ドロッパー)の実行状況を表すプロセス動作ログを示す図である。 マルウェア(ドロッパー)の実行状況を表すタイムチャートである。 マルウェア(RAT)の実行状況を表すプロセス動作ログを示す図である。 マルウェア(RAT)の実行状況を表すタイムチャートである。 ログ情報解析部の処理を示すフローチャートである。 ログ情報解析部の処理を示すフローチャートである。 ログ情報解析部の処理を示すフローチャートである。
以下、本発明を実施するための形態について、図面を参照しながら詳細に説明する。
図1は、マルウェア特定システム1全体の概略構成を示す図である。
マルウェア特定システム1は、各々のユーザによって直接操作される複数のクライアント端末10と、クライアント端末10から送信されるログ情報を一旦保存する複数のスプール装置20と、スプール装置20から送信されるログ情報を解析してマルウェアを特定するためのログ情報を抽出するログ情報抽出装置30と、を備えている。
クライアント端末10は、アプリケーションプログラムの実行主体としてのプロセスが実行される毎に、そのプロセスの動作を示すログであるプロセス動作ログを生成する。また、クライアント端末10は、ユーザログオン等、プロセスに依存しない操作も操作ログとして生成する。これらクライアント端末10で生成されるプロセス動作ログ及び操作ログを含むすべてのログをログ情報と呼ぶ。そして、クライアント端末10は、定期的あるいはログ情報のデータサイズが所定の値に達した段階で、当該ログ情報を所定のスプール装置20へ送信する。
図2は、クライアント端末10の機能的な構成を示すブロック図である。クライアント端末10は、例えば、記録媒体に記録されたプログラム又は外部から送信されたプログラムをコンピュータにインストールすることにより実現される。
クライアント端末10は、システムが稼動するために割り当てられたメモリ空間であるシステム領域と、各々のユーザがアプリケーションプログラムの稼動に利用できるメモリ空間である1つ以上のユーザ領域と、に分けられる。1つのクライアント端末10には、システム領域は1つだけあるが、ユーザ領域はログオンしているユーザの数だけある。
クライアント端末10は、当該クライアント端末10において実行中のプロセスの動作を監視するプロセス監視部11と、デバイスドライバの動作を監視するドライバ監視部12と、プロセス監視部11を制御し、その出力情報を利用するプロセス監視制御部13と、を備えている。
なお、デバイスドライバとは、クライアント端末10にインストールされたOSが、当該クライアント端末10に接続された周辺装置(デバイス)を制御するためのプログラムをいう。デバイスドライバは、例えばファイル入出力ドライバの場合、OSからの制御に基づいて、新規ファイルの生成、既存ファイルを開く、既存ファイルの削除等、後述するファイル操作関連の動作(イベント)を行う。
これより、あるプロセスがファイル操作関連の動作などを実施する場合は、最初に、当該プロセスがOSに所望の処理を依頼し、次に、OSが所定のデバイスドライバを制御して当該処理を実施する。このため、デバイスドライバは、依頼元のプロセスを直接には把握することなく、当該プロセスが所望する処理を行う。
さらに、クライアント端末10は、プロセス監視部11及びドライバ監視部12の監視結果並びに後述の全体制御部16からのプロセスに依存しない操作ログ関連情報の受信に基づいてログ情報を生成するログ情報生成部14と、定期的あるいはログ情報のデータサイズが所定の値に達した段階で、当該ログ情報をスプール装置20に送信するログ情報送信部15と、クライアント端末10におけるプロセス及びデバイスドライバ動作の監視並びにログ情報の生成に関する全体的な制御を行う全体制御部16と、を備えている。また、全体制御部16は、ユーザログオン等、プロセスに依存しない操作に起因した操作ログに関する情報も生成する。
プロセス監視部11は、システム領域及びユーザ領域内の監視対象となるすべてのプロセスに対して設けられている。プロセス監視制御部13は、システム領域に1つ、各々のユーザ領域に1つずつ設けられている。
図1に示すスプール装置20は、クライアント端末10から出力されたログ情報をログ情報抽出装置30へ送信するための中継サーバとして動作する。スプール装置20は、1つ以上のクライアント端末10から送信されたログ情報を受信して一旦蓄積し、所定のタイミングにおいて、蓄積したログ情報をまとめてログ情報抽出装置30へ送信する。
ログ情報抽出装置30は、例えば、記録媒体に記録されたプログラム又は外部から送信されたプログラムをコンピュータにインストールすることにより実現される。
ログ情報抽出装置30は、全てのクライアント端末10からスプール装置20を介してログ情報を収集する。オペレータは、マルウェア感染等のセキュリティインシデントの発生の疑いを警告するサイバー攻撃アラートの発生を確認すると、図示しないオペレータ端末を介して、サイバー攻撃アラートの情報(発生日時、端末情報等)をログ情報抽出装置30へ出力する。ログ情報抽出装置30は、サイバー攻撃アラートの情報が入力されると、マルウェアの特定に必要なログ情報を抽出する。
なお、ログ情報抽出装置30は、サイバー攻撃アラートの情報(発生日時、端末情報等)を受信して、受信した発生日時及び端末情報等に基づいて、マルウェアの特定に必要なログ情報を自動的に抽出することも可能である。
具体的には、ログ情報抽出装置30は、スプール装置20からプロセス動作ログを受信するログ情報受信部31と、受信したログ情報を格納する記憶媒体であるデータベース32と、オペレータの操作入力に応じた情報を出力する操作部33と、マルウェア特定のために必要とされるログ情報を解析の上、抽出するログ情報解析部34と、ログ情報の解析結果及びその他の情報を表示する表示部35と、を備えている。
データベース32には、マルウェア特定システム1内の各クライアント端末10から送信されたログ情報の他、例えば既知のマルウェアに関する各種の属性等、ログ情報の解析に必要とされる他の情報が蓄積される。
図3は、プロセス動作ログレコードの構造を示す図である。
プロセス動作ログは、1つ以上のプロセス動作ログレコードから構成されている。プロセス動作ログレコードは、当該プロセス動作ログレコード生成の元となったプロセス動作が発生した順番を示す「シーケンス番号」と、当該プロセス動作が発生した日時を示す「発生日時」と、当該プロセスが動作した実行環境を示す「端末情報」と、当該プロセスを特定するための「プロセス情報」と、当該プロセスがその動作として何を実行したのかを示す「イベント情報」と、で構成されている。
プロセス情報は、任意の時刻、実行環境において動作したプロセスを一意に識別する「プロセスGID(prsGID)」と、プロセスに関する様々な属性を記述した「プロセス属性情報」と、で構成されている。また、イベント情報は、プロセスが実行した動作の種類を表す「イベント種」と、イベント種が表したプロセス動作に関する様々な属性を記述した「イベント属性情報」と、で構成されている。
シーケンス番号は、ログ情報生成部14で生成される。発生日時は、プロセス監視部11又はドライバ監視部12で生成される。端末情報は、ログ情報生成部14で生成される。プロセス情報は、プロセス監視制御部13で生成される。イベント情報は、プロセス監視部11又はドライバ監視部12で生成される。
なお、本実施形態では、ログ情報生成部14が複数のプロセス監視制御部13からプロセス動作ログの構成要素を受信し、それらにまとめてシーケンス番号を生成する。しかし、シーケンス番号の生成は、この例に限定されるものではない。
例えば、あるプロセスにおけるプロセス動作ログの生成順の厳密な保証が求められる場合、プロセス監視部11が、当該プロセスにおけるプロセス動作順を示した仮のシーケンス番号を発生日時と共に生成することが可能である。この場合、ログ情報生成部14が、複数のプロセス監視部11からプロセス監視制御部13を通じて当該発生日時及び仮のシーケンス番号を受信して、当該発生日時を手掛かりに当該仮のシーケンス番号をソートして、クライアント端末10全体としてのログ情報に対するシーケンス番号を改めて生成する。
一方、プロセスに依存しない操作ログは、図3のプロセス動作ログレコードから、プロセス情報が省略された構造をとる。操作ログにおけるイベント情報は、全体制御部16で生成される。
図4は、ある時刻、実行環境において動作したプロセスのプロセス開始からプロセス終了までの一連の動作に関するプロセス動作ログの構成を示す図である。
あるプロセスが開始されると、図4(A)に示すように、シーケンス番号1、発生日時1、端末情報1、当該プロセスを大域的(時間的及び空間的)一意に識別するprsGID、当該プロセスに関するプロセス属性情報、プロセス開始を表すイベント種であるprsStartで構成されたプロセス動作ログレコードが生成される。ここでは、プロセス開始に関するイベント属性情報に相当する全ての情報はまとめてプロセス属性情報に記述されることから、イベント属性情報は省略されている。
このプロセスが次の動作を実行すると、図4(B)に示すように、シーケンス番号2、発生日時2、端末情報2、図4(A)で用いられたのと同じprsGID、当該動作を表すイベント種であるイベント2、当該動作に関する様々な属性を記述したイベント属性情報2、で構成されたプロセス動作ログレコードが生成される。つまり、このプロセス動作ログレコードでは、プロセス属性情報が省略されている。
このプロセスが終了すると、図4(C)に示すように、シーケンス番号N、発生日時N、端末情報N、図4(A)で用いられたのと同じprsGID、プロセス終了を表すイベント種であるprsStopで構成されたプロセス動作ログレコードが生成される。つまり、このプロセス動作ログレコードでも、プロセス属性情報が省略されている。また、本実施例では、プロセス終了に関するイベント属性情報は存在しないことから、イベント属性情報も省略されている。
以上のように、プロセス属性情報は、プロセス開始時のプロセス動作ログレコードにはあるが、プロセス開始時以降のプロセス動作ログレコードでは省略されている。その理由は、プロセス属性情報は、prsGIDと1対1に対応する情報であり、プロセスの開始から終了に至るまで共通するパラメータであるため、プロセス開始時だけ存在すれば十分だからである。
ただし、prsGIDは、理解しにくい文字列で構成されている。そこで、prsGIDが何のプロセスを示しているのかを容易に理解できるように、テキストで記述された当該プロセスのプロセス実行ファイルの名称がprsGIDに付加されることもある。
ここで、発生日時の書式は、例えば次の通りである。
「MM/DD/YYYY hh:mm:ss.sss ±hhmm」
そして、当該書式の各パラメータは次の通りである。
MM:月
DD:日
YYYY:西暦
hh:時
mm:分
ss.sss:秒(msecオーダー)
hhmm:協定世界時との時差(hhは時間、mmは分)
これより、例えば日本標準時(JST)において2015年7月15日20時52分18.033秒に発生したプロセス動作において、その発生日時の記述例は次の通りである。
「07/15/2015 20:52:18.033 +0900」
シーケンス番号は、発生日時から独立したパラメータである。例えば、発生日時が同じであった場合でも、シーケンス番号は決して重複することはない。これより、シーケンス番号によって、結果的にmsec以下のプロセス動作の発生順を示すことができる。さらにシーケンス番号は、仮にOSの時刻設定に変更が発生したとしても、時刻設定の変更に影響されることなく、プロセス動作の絶対的な発生順を示すことができる。
端末情報は、例えば、「user:(ログオン)ユーザ名」が該当する。端末情報は、他に、コンピュータ名、コンピュータドメイン名、端末管理ID、ホストのIPアドレス、MACアドレス等が該当する。
端末情報は、プロセスから独立したパラメータである。端末情報は、一般的にはプロセス動作ログレコード毎に大きく変化することはない。しかし、例えばDHCP(Dynamic Host Configuration Protocol)を用いてホストのIPアドレスを動的に変更した場合等、プロセスの動作とは独立して、端末情報が変化する可能性がある。これより、全てのプロセス動作ログレコードに対して、端末情報が付与されている。
prsGID(プロセスGID)は、任意の時刻、実行環境で生成、動作したプロセスに対して一意に割り当てられる識別子である。prsGIDは、例えば、マイクロソフト社のWindows(登録商標)で用いられるGUID(Globally Unique Identifier)や、ISO/IEC 11578で規定されたUUID(Universally Unique Identifier)等が該当する。
prsGIDは、例えば、「F6C32025−DC83−4126−A1B7−7D6E6FCBB10C」等と記述される。
プロセス属性情報は、任意の動作の実行主体であるプロセスに関する様々な属性を記述する。プロセス属性情報は、例えば次の通りである。
name:プロセス実行ファイルの名称(フルパス)
hash:プロセス実行ファイルのハッシュ値
parentGID:本プロセスを起動した親プロセスのprsGID
pid:システムが本プロセスに付与したシステム(実行環境)内一意な識別子
parentPid:本プロセスを起動した親プロセスのpid
productName:プロセスが所属するソフトウェア製品の製品名
プロセス属性情報には、他に、当該親プロセスのプロセス実行ファイルの名称、当該プロセスのバージョン番号、当該プロセス実行ファイルのファイルサイズ、当該プロセス実行ファイルの著作権者名、当該ソフトウェア製品の製造元、製品説明や証明書関連情報等がある。
イベント種及びそのイベント属性情報は、例えば次の通りである。
1.プロセス関連のイベント種
(1)prsStart(プロセスの起動)
なお、prsStartは、イベント属性情報を持たない。
(2)prsStop(プロセスの終了)
なお、prsStopは、イベント属性情報を持たない。
(3)その他
プロセス関連のその他のイベント種としては、例えば毎00:00時に、prsGIDで識別されたプロセスが実行中であることを示すprsRun、等がある。
2.ネットワーク関連のイベント種
(1)tcpOpen(TCP(Transmission Control Protocol)ネットワーク接続の開始)
tcpOpenのイベント属性情報は、例えば次の通りである。
dstIP:接続先IPアドレス
tcpGID:任意の時刻、実行環境で開始したネットワーク接続に対して一意に割り当てられる識別子
tcpOpenのイベント属性情報には、他に、接続先ホスト名、ポート番号、等がある。
(2)tcpClose(TCPネットワーク接続の終了)
tcpCloseのイベント属性情報は、例えば次の通りである。
tcpGID:対応するtcpOpenにて付与されたtcpGID
tcpCloseのイベント属性情報には、他に、接続開始日時等がある。
(3)その他
ネットワーク関連のその他のイベント種としては、例えば毎00:00時に、prsGID及びtcpGIDの少なくとも一方で識別されたプロセスのTCPネットワーク接続が継続していることを示すtcpRun、当該プロセスがTCPネットワーク接続の受付待ち状態になったことを示すtcpListen、TCPネットワーク接続においてデータ送信が実施されたことを示すtcpSend、同データ受信が実施されたことを示すtcpReceive、等がある。さらに、UDP(User Datagram Protocol)関連での同様のイベント種等もある。
3.ファイル操作関連のイベント種
(1)fileCreate(新規ファイルの生成)
fileCreateのイベント属性情報は、例えば次の通りである。
file:生成ファイル名
pid:依頼元プロセスのpid
fileCreateのイベント属性情報には、他に、生成先のデバイス名、同ドライブ名等がある。
(2)fileOpen(既存ファイルを開く)
fileOpenのイベント属性情報は、例えば次の通りである。
file:対象ファイル名
pid:依頼元プロセスのpid
fileOpenのイベント属性情報には、他に、対象ファイルが存在するデバイス名、同ドライブ名等がある。
(3)fileClose(読み書き後、ファイルを閉じる)
fileCloseのイベント属性情報は、例えば次の通りである。
file:対象ファイル名
hash:対象ファイルを閉じた時の当該対象ファイルのハッシュ値
rByte:読み込み総バイト数
wByte:書き出し総バイト数
pid:依頼元プロセスのpid
fileCloseのイベント属性情報には、他に、対象ファイルのファイルサイズ、同ファイルの生成日時等がある。
(4)fileDelete(既存ファイルの削除)
fileDeleteのイベント属性情報は、例えば次の通りである。
file:対象ファイル名
pid:依頼元プロセスのpid
fileDeleteのイベント属性情報には、他に、対象ファイルが存在していたデバイス名、同ドライブ名等がある。
(5)その他
ファイル操作関連のその他のイベント種としては、例えばprsGIDで識別されたプロセスによる既存ファイルのファイル名変更を示すfileRename、当該プロセスによる既存ファイルのコピー動作を示すfileCopy等がある。さらに、フォルダ関連での同様のイベント種等もある。
4.レジストリ操作関連のイベント種
(1)regValSet(指定したサブキーへの(何らかの値を持つ)所定のエントリの設定)
regValSetのイベント属性情報は、例えば次の通りである。
key:エントリ設定対象サブキー名
entry:設定されるエントリ名
(2)その他
レジストリ操作関連のその他のイベント種としては、例えばprsGIDで識別されたプロセスによる所定のエントリ削除を示すregValReset、当該プロセスによるサブキーの新規生成を示すregKeyCreate、当該プロセスによる所定サブキーの削除を示すregKeyDelete等がある。
5.ユーザセッション関連のイベント種
(1)logon(ユーザのログオン検出)
logonのイベント属性情報は、例えば次の通りである。
user:ログオンユーザ名
usrGID:任意の時刻、実行環境で開始したユーザセッションに対して一意に割り当てられる識別子
logonのイベント属性情報には、他に、ログオンユーザドメイン名、システムが当該ユーザセッションに付与したシステム内一意なユーザセッションID等がある。
なお、logonログレコードは、OSからの通知を受けて生成されるもので、厳密にはプロセス動作ログレコードではない。
(2)その他
ユーザセッション関連のその他のイベント種としては、ユーザのログオフを検出したlogoff、ユーザセッションがロック状態に入ったことを検出したlock、ユーザセッションのロック状態が解除されたことを検出したunlock等がある。さらに、リモートログオン関連での同様のイベント種等もある。
6.その他のイベント種
その他のイベント種としては、ログ情報生成部動作関連、OSメンテナンス関連、接続デバイス(周辺機器)関連のイベント種等がある。
図5及び図6は、クライアント端末10の動作ルーチンを示すフローチャートである。
ステップS1では、クライアント端末10のOSが起動する。
ステップS2では、デバイスドライバへ図2に示すドライバ監視部12を読み込ませる。
ステップS3では、ログ情報送信部15が起動する。ログ情報送信部15は、起動後、他の部位からは独立して動作する。具体的には、ログ情報送信部15は、定期的あるいはログ情報のデータサイズが所定の値に達した段階で、当該ログ情報をスプール装置20に送信する。
ステップS4では、図2に示す全体制御部16が起動する。
ステップS5では、図2に示す全体制御部16が、システム領域におけるプロセス監視制御部13を起動する。
ステップS6では、ログ情報生成部14が起動する。
ステップS7では、システム領域におけるプロセスの動作が監視され、プロセス動作ログが生成される。なお、ステップS7の詳細については後述する。
図6に示すステップS8では、全体制御部16は、あるユーザからのログオンを検出したかを判定し、ログオンを検出した場合はその旨をログ情報生成部14へ通知後、ステップS9へ進み、ログオンを検出していない場合はステップS11へ進む。
ステップS9では、全体制御部16は、ログオンが検出されたユーザのユーザ領域におけるプロセス監視制御部13を起動する。
ステップS10では、ログオンが検出されたユーザのユーザ領域におけるプロセスの動作が監視され、プロセス動作ログが生成される。なお、ステップS10の詳細については後述する。そして、ステップS8へ戻る。
一方、ステップS11では、全体制御部16は、あるユーザからのログオフを検出したかを判定し、ログオフを検出した場合はその旨をログ情報生成部14へ通知後、ステップS12へ進み、ログオフを検出していない場合はステップS13へ進む。
ステップS12では、全体制御部16は、ログオフが検出されたユーザのユーザ領域におけるプロセス監視制御部13を停止させる。そして、ステップS8へ戻る。
ステップS13では、全体制御部16は、システムのシャットダウンを検出したかを判定し、シャットダウンを検出した場合はステップS14へ進み、シャットダウンを検出していない場合はステップS8へ戻る。
ステップS14では、ログ情報生成部14が停止する。
ステップS15では、全体制御部16は、システム領域におけるプロセス監視制御部13を停止させる。
ステップS16では、全体制御部16が停止する。
ステップS17では、ログ情報送信部15が停止する。
ステップS18では、OSが停止する。そして、本ルーチンが終了する。
図7は、ステップS7及びステップS10におけるプロセス監視制御部13の動作ルーチンを示すフローチャートである。
ステップS21では、プロセス監視制御部13は、OSから、あるプロセス(以下「本プロセス」という。)が起動されたことを示すプロセス起動信号を受信したかを判定し、プロセス起動信号を受信したと判定した場合はステップS22へ進み、プロセス起動信号を受信していないと判定した場合はステップS28へ進む。
ステップS22では、プロセス監視制御部13は、本プロセスにプロセス監視部11を読み込ませる。これにより、プロセス監視部11は、本プロセスを監視して、本プロセスの動作状況に応じたイベント情報等をプロセス監視制御部13へ出力する。
ステップS23では、プロセス監視制御部13は、プロセス起動信号から、本プロセスをシステム内で一意に識別したpid(プロセスID)及び当該プロセスを起動した親プロセスをシステム内一意に識別したparentPid(親プロセスID)を抽出する。
ステップS24では、プロセス監視制御部13は、本プロセスが起動した日時を示す「発生日時」を取得する。
ステップS25では、プロセス監視制御部13は、本プロセスを大域的一意に識別するためのpreGID(プロセスGID)を生成する。
ステップS26では、プロセス監視制御部13は、本プロセスのプロセス実行ファイルのハッシュ値を生成する。
なお、本実施形態では、ステップS26において、1つのハッシュ値が生成されているが、後述する脅威データベースでのマルウェア照合において、異なる複数の脅威データベースで照合できるように、生成アルゴリズムの異なる複数のハッシュ値が生成されてもよい。つまり、例えばMD5、SHA1、及びSHA256等の異なるハッシュ値生成アルゴリズムに基づいて、複数のハッシュ値が生成されてもよい。
ステップS27では、プロセス監視制御部13は、発生日時、プロセス情報(prsGID、pid及びparentPid等を含む)と、prsStartなるイベント種を含むイベント情報とをログ情報生成部14へ送信する。そして、ステップS21へ戻る。
ステップS28では、プロセス監視制御部13は、あるプロセス(以下、「本プロセス」という。)のプロセス監視部11から発生日時及びイベント情報を受信したかを判定し、受信したと判定したときはステップS29へ進み、受信していないと判定したときはステップS31へ進む。
ステップS29では、プロセス監視制御部13は、本プロセスの起動時に自らが生成した本プロセスのprsGIDを取得する。
ステップS30では、プロセス監視制御部13は、発生日時、本プロセスのprsGID、イベント情報をログ情報生成部14へ送信する。そして、ステップS21へ戻る。
ステップS31では、プロセス監視制御部13は、OSから、あるプロセス(以下、「本プロセス」という。)が終了したことを示すプロセス停止信号を受信したかを判定し、プロセス停止信号を受信したと判定した場合はステップS32へ進み、プロセス停止信号を受信していないと判定した場合はステップS21へ戻る。
ステップS32では、プロセス監視制御部13は、本プロセスの起動時に自らが生成した本プロセスのprsGIDを取得する。
ステップS33では、プロセス監視制御部13は、発生日時、本プロセスのprsGID、prsStopなるイベント種を含むイベント情報をログ情報生成部14へ送信する。そして、ステップS21へ戻る。
図8は、ステップS7及びステップS10におけるプロセス動作ログの生成に関するログ情報生成部14の動作ルーチンを示すフローチャートである。
ステップS41では、ログ情報生成部14は、ドライバ監視部12又はプロセス監視制御部13から、発生日時及びイベント情報を受信する。またプロセス監視制御部13からは、プロセス情報も併せて受信する。
すなわち、ログ情報生成部14は、プロセス監視制御部13からは、図7に示すステップS21〜S33までの処理を経た発生日時、プロセス情報及びイベント情報を受信する。また、ログ情報生成部14は、ドライバ監視部12から、発生日時及びイベント情報を受信する。
ステップS42では、ログ情報生成部14は、ステップS41で受信したイベント情報に含まれるイベント種がprsStartであるかを判定し、prsStartであると判定した場合はステップS43へ進み、prsStartではないと判定した場合はステップS46へ進む。
ステップS43では、ログ情報生成部14は、ステップS41で受信したプロセス情報内のプロセス属性情報から、このプロセスを起動した親プロセスのparentPidを抽出してステップS44へ進む。
ステップS44では、ログ情報生成部14は、当該親プロセスの対応表を参照して、ステップS44で抽出したparentPidに対応する当該親プロセスのprsGIDを取り出し、取り出したprsGIDを当該プロセス情報内のプロセス属性情報のparentGIDに設定し、ステップS45へ進む。
ここで、親プロセスは、このプロセスよりも先に開始され、このプロセスのプロセス開始に伴うステップ44の処理の時点では終了していない。このため、parentPidと親プロセスのprsGIDとの対応関係を示す当該親プロセスの対応表は必ず存在する。
ステップS45では、ログ情報生成部14は、プロセス情報に含まれるprsGIDと、当該プロセス情報内のプロセス属性情報に含まれるpidの対応関係を一時的に対応表に保存して、ステップS46へ進む。
ステップS46では、ログ情報生成部14は、ステップS41においてプロセス情報を受信したかを判定し、プロセス情報を受信したと判定した場合はステップS49へ、受信していないと判定した場合はステップS47へ進む。つまり、ログ情報生成部14は、ステップS41において、ドライバ監視部12からイベント情報等を受信した場合は、ステップS47へ進む。
ドライバ監視部12から送信されたイベント情報内のイベント属性情報には、デバイスドライバに処理を依頼したプロセスのpidが含まれている。そこで、ステップS47では、ログ情報生成部14は、ステップS41で受信したイベント情報内のイベント属性情報からpidを抽出してステップS48へ進む。
ステップS48では、ログ情報生成部14は、このプロセスの対応表を参照して、ステップS47で抽出したpidに対応するprsGIDを取り出し、取り出したprsGIDをこのイベントのプロセス情報に設定して、ステップS49へ進む。すなわち、このプロセスがデバイスドライバに処理を依頼した場合は、このプロセスの対応表が用いられて、デバイスドライバに処理を依頼した当該イベント情報の実行主体であるこのプロセスのpidから、このプロセスを大域的一意に特定するprsGIDが得られる。
ステップS49では、ログ情報生成部14は、OSから端末情報を取得して、ステップS50へ進む。
ステップS50では、ログ情報生成部14は、これから生成するプロセス動作ログレコードのシリアル番号を生成して、ステップS51へ進む。
ステップS51では、ログ情報生成部14は、ステップS41で受信した各種情報、ステップS49で取得した端末情報、ステップS50で生成したシリアル番号、ステップS44、ステップS48で設定された情報を用いて、プロセス動作ログレコードを所定のログフォーマットに基づいて整形し、既存のプロセス動作ログ(ファイル)に追加出力し、ステップS52へ進む。
ここで、プロセス動作ログレコードの改ざんを検出できるようにすべく、ログ情報生成部14は、整形された1つあるいは複数のプロセス動作ログレコードが生成される度に、1つあるいは複数のプロセス動作ログレコードのハッシュ値を生成することも可能である。生成されたハッシュ値は、例えばシーケンス番号、生成日時、端末情報等と対応付けて、安全な場所に保存される。なお、ログ情報生成部14の代わりに、スプール装置20が、ログ情報を受信した段階で、整形された1つあるいは複数のプロセス動作ログレコードのハッシュ値を生成することも可能である。
なお、ログ情報送信部15は、ステップS3での起動後、他の部位からは独立して動作する。具体的には、ログ情報送信部15は、定期的あるいはログ情報のデータサイズが所定の値に達した段階で、当該ログ情報をスプール装置20に送信する。
ステップS52では、ログ情報生成部14は、ステップS41で受信したイベント情報に含まれるイベント種がprsStopであるかを判定し、prsStopであると判定した場合はステップS53へ進み、prsStopではないと判定した場合はステップS41へ戻る。
ステップS53では、ログ情報生成部14は、ステップS44の処理を考慮し、本プロセスが起動したすべての子プロセスの開始を示すプロセス動作ログレコードの生成を確認後、対応表から、ステップS45で一時的に保存したprsGIDとpidの対応関係を削除して、ステップS41へ戻る。
ところで、ログ情報生成部14は、ここまで説明したプロセス動作ログの生成に加えて、プロセスに依存しない操作に起因した操作ログも生成する。具体的には、ログ情報生成部14は、ステップS41において、ドライバ監視部12やプロセス監視制御部13の替わりに全体制御部16から、操作ログを構成する発生日時及びイベント情報を受信した場合、ステップS49以降の処理を実施する。
以上のように、図5から図8に示すルーチンが実行されることによって、クライアント端末10は、プロセス動作ログ及び操作ログ等から構成されるログ情報を生成して、スプール装置20へ送信する。
図9は、マルウェア(ドロッパー)の実行状況を表すプロセス動作ログを示す図である。図10は、マルウェア(ドロッパー)の実行状況を表すタイムチャートである。
ドロッパーとは、マルウェアの中でも、特に別のマルウェア、例えばRAT型のマルウェアを作成・実行してユーザのシステムに感染させる機能をもつプログラムをいう。また、RAT(Remote Access Trojan)とは、サイバー攻撃において、外部からネットワーク経由でコンピュータに接続し任意の操作を行うことができるプログラムをいう。
図9に示すプロセス動作ログの内容は次の通りである。
時刻t10:User1が、例えばスパムメールの添付ファイルを誤ってクリックして、マルウェア(ドロッパー)であるReadMe.txt.exeを起動する。
時刻t11:ReadMe.txt.exeは、C&C(Command&Control)サーバ(サイバー攻撃において、クライアント端末に侵入させたマルウェアに対して、外部から情報を提供したり命令を出したりする役割を担うサーバコンピュータ)から、カムフラージュのためのReadMe.txtのダウンロードを開始する。
時刻t14:ReadMe.txt.exeが、当該ReadMe.txtのダウンロードを終了する。
時刻t40:ReadMe.txt.exeは、ダウンロードしたReadMe.txtを指定して、その内容を表示するアプリケーションプログラムであるNOTEPAD.EXE(「メモ帳」)を、カムフラージュのために起動する。
時刻t41:NOTEPAD.EXEが、当該ReadMe.txtを開く。これよりUser1は、NOTEPAD.EXEによって当該ReadMe.txtを閲覧する。
時刻t15:ReadMe.txt.exeは、C&Cサーバから、マルウェア(RAT)の一種であるtrHorse.exeのダウンロードを開始する。
時刻t18:ReadMe.txt.exeが、当該trHorse.exeのダウンロードを終了する。
時刻t19:ReadMe.txt.exeは、システムの立上げ時にtrHorse.exeが自動的に起動するよう、レジストリのRunサブキーに当該trHorse.exeを登録する。
時刻t20:ReadMe.txt.exeは、User1が再度のログオンの際にtrHorse.exeが自動的に起動するよう、User1のStartupフォルダに、当該trHorse.exeのリンクファイルの生成を開始する。
時刻t21:ReadMe.txt.exeは、当該リンクファイルの生成を終了する。
時刻t22:ReadMe.txt.exeは、Tempフォルダ内にあった自らのプロセス実行ファイルであるReadMe.txt.exeファイルを削除する。
時刻t23:ReadMe.txt.exeが終了する。
時刻t42:User1は、ReadMe.txtの閲覧後、これを閉じる。
時刻t43:User1が、NOTEPAD.EXEを終了する。
図11は、マルウェア(RAT)の実行状況を表すプロセス動作ログを示す図である。図12は、マルウェア(RAT)の実行状況を表すタイムチャートである。図11に示すプロセス動作ログの内容は次の通りである。
時刻t60:User1が、trHorse.exeに感染したクライアント端末にログオンする。
時刻t70:ユーザセッションの実行環境構築の一環としてタスクマネージャであるExplorer.EXE(「エクスプローラ」)が起動する。
時刻t80:Explorer.EXEが、ユーザセッション開始時の自動起動プロセス(スタートアップ・プロセス)としてtrHorse.exeを起動する。
時刻t81:trHorse.exeは、前出とは異なるC&Cサーバとの制御ネットワーク接続を開始する。
時刻t82:trHorse.exeは、前出の二者とはさらに異なるC&Cサーバへ、Documentsフォルダに格納されていた機密情報ファイルである「決算情報.docx」のアップロードを開始する。
時刻t85:trHorse.exeが、当該「決算情報.docx」のアップロードを終了する。
時刻t86:trHorse.exeは、前出と同じC&Cサーバへ、Documentsフォルダに格納されていた機密情報ファイルである「顧客リスト.xlsx」のアップロードを開始する。
時刻t89:trHorse.exeが、当該「顧客リスト.xlsx」のアップロードを終了する。
時刻t90:trHorse.exeが、制御ネットワーク接続を終了する。
時刻t91:trHorse.exeが終了する。
図13及び図14は、マルウェア特定を目的に、データベース32に蓄積された膨大なログ情報の中から直接の解析対象とすべきプロセス動作ログレコードの抽出と、そこで検出されたプロセスが既知のマルウェアか否かを特定するための脅威データベースへの照会とを実施するための、ログ情報解析部34の処理を示すフローチャートである。
ステップS51では、ログ情報解析部34は、図示しないサイバー攻撃アラート信号受信部を介してサイバー攻撃アラート信号を受信したかを判定し、サイバー攻撃アラート信号を受信するまで待機する。そして、ログ情報解析部34は、サイバー攻撃アラート信号を受信したと判定すると、ステップS52へ進む。
ここで、サイバー攻撃アラート信号とは、例えばマルウェア特定システム1の振る舞いをモニタリングする外部のモニタリング部(図示しない)によって、マルウェア特定システム1がサイバー攻撃を受けた蓋然性が高いと判断されたときに発信される信号をいう。サイバー攻撃アラート信号は、サイバー攻撃を受けたときの時刻であるインシデント発生日時、サイバー攻撃を受けた端末のホストIPアドレス、当該端末の通信先のIPアドレス(dstIP)等の情報を有している。
ステップS52では、ログ情報解析部34は、データベース32に記憶されているプロセス動作ログと、サイバー攻撃アラート信号に含まれる情報とを用いて、サイバー攻撃を受けたクライアント端末10で動作していた、インシデント発生元の蓋然性が高いプロセスのprsGIDを特定し、当該プロセスの任意のプロセス動作ログレコードを抽出する。
例えば、サイバー攻撃アラート信号に含まれるインシデント発生時刻がt81、dstIPが“55...201”である場合、図11に示すシーケンス番号622におけるプロセス動作ログレコードのprsGID=“gid4”が特定され、当該プロセス動作ログレコードが抽出される。
ステップS53では、ログ情報解析部34は、ステップS52で特定したprsGIDを変数gidVarに設定する。
ステップS54では、ログ情報解析部34は、変数gidVarと同じ値のprsGIDを含んだすべてのプロセス動作ログレコードを抽出する。例えば、変数gidVar←“gid4”の場合、prsGID=“gid4”である、シーケンス番号621から632のすべてのプロセス動作ログレコードが抽出される。
ステップS55では、ログ情報解析部34は、抽出されたプロセス動作ログレコードの中からイベント種がprsStartであるプロセス動作ログレコードを抽出する。例えば、prsGID=“gid4”の場合、prsStartを含んだシーケンス番号621のプロセス動作ログレコードが抽出される。
ステップS56では、ログ情報解析部34は、ステップS55で抽出したプロセス動作ログレコードのプロセス属性情報から、当該プロセスのプロセス実行ファイルのハッシュ値を抽出して、脅威データベースと照合する。
脅威データベースとは、過去に発見されたマルウェアの名称、種類、発見日、危険度、実行ファイルのハッシュ値等の脅威情報を記憶しているデータベース装置である。脅威データベースは、クライアント端末10からハッシュ値の照合要求があった際、そのハッシュ値をもつマルウェアが記憶されていた場合には当該マルウェアの脅威情報をクライアント端末10へ送信する。
例えば、シーケンス番号621では、マルウェア(RAT)であるプロセス“trHorse.exe”のハッシュ値“hsh11”が抽出される。脅威データベースは、クライアント端末10からハッシュ値“hsh11”の照合要求があった場合、マルウェア(RAT)“trHorse.exe”の脅威情報を保持していれば、その脅威情報をクライアント端末10へ送信する。
なお、脅威データベースが異なれば、異なる生成アルゴリズムに基づくプロセス実行ファイルのハッシュ値が求められる。このため、プロセス属性情報に生成アルゴリズムの異なる複数のハッシュ値が保持されていた場合は、対象となる脅威データベースが求めるアルゴリズムに基づいて生成されたハッシュ値が選択され、照合されてもよい。
ステップS57では、ログ情報解析部34は、ステップS55で抽出したプロセス動作ログレコードのプロセス属性情報から、当該プロセスのプロセス実行ファイルの名称であるnameを抽出する。
ステップS58では、ログ情報解析部34は、ステップS57で抽出したプロセス実行ファイルの名称が所定の名称に一致するか否かを判定し、一致した場合は図14に示すステップS61へ進む。一方、ステップS58の否定判定、つまり、当該プロセス実行ファイルの名称が所定の名称に一致していない場合は、ステップS59へ進む。
ここで所定の名称には、例えばプロセス起動の親子関係を表した一連のプロセス起動ツリーの最上位に位置付けられるルートプロセス等の名称等が指定される。本実施形態の場合では、所定の名称は“Explorer.EXE”である。
ステップS59では、ログ情報解析部34は、当該プロセスを起動した親プロセスのプロセス動作ログを調べるために、ステップS55で抽出したプロセス動作ログレコードのプロセス属性情報から、parentGIDを抽出する。例えば、シーケンス番号621のプロセス属性情報から、ParentGID=“gid3”が抽出される。
ステップS60では、ログ情報解析部34は、ステップS59で抽出したparentGIDを変数gidVarに設定して、ステップS54へ戻る。そして、再びステップS54以降の処理が実行される。
例えば、ステップS60において、変数gidVarにparentGID=“gid3”が設定された場合、ステップS54以降の処理を通じて、ステップS57ではプロセスのnameとして“Explorer.EXE”が抽出される。そこで、ステップ58にてそれが所定の名称であると判定されることから、本ループを抜け出して、図14のステップ61へと進む。
なお、図13では、ステップS51において、サイバー攻撃アラート信号は外部のモニタリング部から発信された場合を前提としたが、このような前提に限定されることはない。例えばログ情報解析部34が、ログ情報受信部31で受信されるプロセス動作ログを受信する毎に解析を実行し、過去のインシデント発生パターンと照合して、照合結果が所定の条件と一致した場合に、自らがサイバー攻撃アラート信号を発信することも可能である。
図14に示すステップS61では、ログ情報解析部34は、OS再起動あるいはユーザログオン前のプロセス動作ログから、“trHorse.exe”に関連するマルウェアの疑いがあるプロセスのプロセス動作ログを特定すべく、ステップS56で抽出したプロセス実行ファイルのハッシュ値と同じ値のハッシュ値をいずれかに含むプロセス動作ログレコードを抽出する。
例えば、シーケンス番号621のプロセス属性情報には、parentGID=“gid3”がある。そこで、prsGID=“gid3”であるプロセス動作ログの中でそのイベント種がprsStartであるプロセス動作ログレコード(シーケンス番号520)をみると、時刻t70において、name=“...¥Explore.EXE”なるプロセスが起動されていることから、ユーザがログオンして、新たなユーザセッションが開始されたことが分かる。
そこで、ログ情報解析部34は、ユーザログオン前、つまり時刻t60以前のプロセス動作ログの中から、ステップS56で抽出済みのハッシュ値“hsh11”と同じ値のハッシュ値をイベント属性情報に含む、シーケンス番号110のプロセス動作ログレコードを抽出する。
ステップS62では、ログ情報解析部34は、ハッシュ値が“hsh11”であるファイルのダウンロードを実行したプロセスのprsGIDを特定する。例えば、ステップS61でシーケンス番号110のプロセス動作ログレコードが抽出された場合、シーケンス番号110の発生日時t17、prsGID=“gid1”及びイベント属性情報(ダウンロードされたファイルのファイル名である“trHorse.exe”等)が特定される。
ステップS63では、ログ情報解析部34は、ステップS62で特定したprsGIDを変数gidVarに設定する。
ステップS64では、ログ情報解析部34は、変数gidVarと同じ値のprsGIDを含んだすべてのプロセス動作ログレコードを抽出する。例えば、変数gidVar←“gid1”の場合、prsGID=“gid1”である、シーケンス番号101から116(但し、シーケンス番号106及び107を除く。)のすべてのプロセス動作ログレコードが抽出される。
ステップS65では、ログ情報解析部34は、ステップS64で抽出されたプロセス動作ログレコードの中からイベント種がprsStartであるプロセス動作ログレコードを抽出する。例えば、prsGID=“gid1”の場合、prsStartを含んだシーケンス番号101のプロセス動作ログレコードが抽出される。
ステップS66では、ログ情報解析部34は、ステップS65で抽出したプロセス動作ログレコードのプロセス属性情報から、当該プロセスのプロセス実行ファイルのハッシュ値を抽出して、脅威データベースと照合する。
例えば、シーケンス番号101では、マルウェア(ドロッパー)であるプロセス“ReadMe.txt.exe”のハッシュ値“hsh10”が抽出される。脅威データベースは、クライアント端末10からハッシュ値“hsh10”の照合要求があった場合、マルウェア(ドロッパー)“ReadMe.txt.exe”の脅威情報を保持していれば、その脅威情報をクライアント端末10へ送信する。
ステップS67では、ログ情報解析部34は、ステップS65で抽出したプロセス動作ログレコードのプロセス属性情報から、当該プロセスのプロセス実行ファイルの名称であるnameを抽出する。
ステップS68では、ログ情報解析部34は、ステップS67で抽出したプロセス実行ファイルの名称が所定の名称に一致するか否かを判定し、一致した場合は本ルーチンを終了する。一方、ステップS68の否定判定、つまり、当該プロセス実行ファイルの名称が所定の名称に一致していない場合は、ステップS69へ進む。
例えば、シーケンス番号101のプロセス属性情報では、nameは“Explorer.EXE”ではない。このため、ステップS68の否定判定を経て、ステップS69へ進む。
ステップS69では、ログ情報解析部34は、当該プロセスを起動した親プロセスのプロセス動作ログを調べるために、ステップS65で抽出したプロセス動作ログレコードのプロセス属性情報から、parentGIDを抽出する。
ステップS70では、ログ情報解析部34は、ステップS69で抽出したparentGIDを変数gidVarに設定して、ステップS64へ戻る。そして、再びステップS64以降の処理が実行される。その結果、ステップS67において、nameとして“Explorer.EXE”が抽出された場合、ステップS68にてそれが所定の名称であると判定されることから、本ループを抜け出して、本ルーチンを終了する。
なお、本処理では、ログ情報解析部34は、各々のプロセスをタスクと見立て、当該タスクを大域的一意に識別するprsGIDを手掛かりに、当該タスクを構成する一連の動作を記録したプロセス動作ログレコードを抽出する。そして、ログ情報解析部34は、抽出したプロセス動作ログレコードの中から、プロセスの開始を示す動作種別情報としてのイベント種であるprsStartを有するプロセス動作ログレコードを選択し、それに含まれるプロセス属性情報をタスク属性情報とみなして当該タスクを特定する。さらに、ログ情報解析部34は、抽出したプロセス動作ログレコードに含まれ、異なるタスクを大域的一意に識別した例えばparentGID等を手掛かりに、当該異なるタスクを構成する一連の動作を記録したプロセス動作ログレコードを抽出する。しかし、本発明はこれらの処理に限定されるものではない。
すなわち、ログ情報解析部34は、例えば各々のTCPネットワーク通信をタスクと見立て、当該タスクを大域的一意に識別するtcpGIDを手掛かりに、当該タスクを構成する一連の動作を示す動作種別情報としてのイベント種、例えばtcpOpen,tcpListen,tcpSend,tcpReceive、tcpClose等を有して記録されたプロセス動作ログレコードを抽出することも可能である。そして、ログ情報解析部34は、抽出したプロセス動作ログレコードの中から、TCPネットワーク通信の開始を示すイベント種であるtcpOpenを有するプロセス動作ログレコードを選択し、それに含まれるイベント属性情報から、当該tcpGID以外のイベント属性情報をタスク属性情報とみなして当該タスクを特定できる。さらに、ログ情報解析部34は、抽出したプロセス動作レコードに含まれ、異なるタスクを大域的一意に識別した例えばprsGID等を手掛かりに、当該異なるタスクを構成する一連の動作を記録したプロセス動作ログレコードを抽出してもよい。
また、プロセスに依存しない操作ログについても、例えば任意のユーザセッションを大域的一意に識別するusrGIDを手掛かりに類似の処理を実施しても良い。
図15は、ログ情報解析の一例として、抽出されたプロセス動作ログレコードからマルウェアのプロファイリングをおこなうための、ログ情報解析部34の処理を示すフローチャートである。
ステップS81では、ログ情報解析部34は、図13及び図14の処理によって、本ログ情報解析の直接の解析対象とすべきプロセス動作ログレコードを抽出する。
ステップS82では、ログ情報解析部34は、ステップS81で抽出されたすべてのプロセス動作ログレコードからイベント種を抽出する。
ステップS83では、ログ情報解析部34は、ステップS81で抽出されたプロセス動作ログレコードのいずれかにおいてファイルを作成したものがあるかを判定する。
ここでは、ログ情報解析部34は、ステップS82で抽出されたイベント種の中に、ファイルの作成を示す“fileCreate”がある場合にファイルを作成したと判定して、ステップS84へ進む。また、ログ情報解析部34は、上記のイベント種の中に、“fileCreate”がない場合にファイルを作成していないと判定して、ステップS86へ進む。
例えば、シーケンス番号101から116(但し、シーケンス番号106及び107を除く。)までにおいては、シーケンス番号103、109及び113のプロセス動作ログレコードに “fileCreate”がある。したがって、ステップS84へ進む。
ステップS84では、ログ情報解析部34は、ファイルを作成したことを示すプロセス動作ログレコードを抽出する。例えば、“fileCreate”があるのはシーケンス番号103、109及び113のプロセス動作ログレコードであるので、シーケンス番号103、109及び113のプロセス動作ログレコードが抽出される。
ステップS85では、ログ情報解析部34は、抽出したプロセス動作ログレコードから、生成したファイル名を同定する。
この結果、発生日時t12でReadMe.txtなるファイルが作成され、発生日時t16でtrHorse.exeなるファイルが作成され、さらに、発生日時t20でtrHorse.exeのショートカットファイルが作成されていたことが分かる。
ステップS86では、ログ情報解析部34は、ステップS81で抽出されたプロセス動作ログレコードのいずれかにおいてレジストリを操作したものがあるかを判定する。
ここでは、ログ情報解析部34は、ステップS82で抽出されたイベント種の中に、レジストリの操作を示す“regValSet”がある場合にレジストリを操作したと判定して、ステップS87へ進む。また、ログ情報解析部34は、上記のイベント種の中に、“regValSet”がない場合にレジストリを操作していないと判定して、ステップS89へ進む。
例えば、シーケンス番号101から116(但し、シーケンス番号106及び107を除く。)までにおいては、シーケンス番号112のプロセス動作ログレコードに、“regValSet”がある。したがって、ステップS87へ進む。
ステップS87では、ログ情報解析部34は、レジストリを操作したことを示すプロセス動作ログレコードを抽出する。例えば、“regValSet”があるのはシーケンス番号112のプロセス動作ログレコードであるので、シーケンス番号112のプロセス動作ログレコードが抽出される。
ステップS88では、ログ情報解析部34は、抽出したプロセス動作ログレコードから、レジストリ操作の対象となったサブキー等を同定する。
この結果、発生日時t19でレジストリのRunサブキーに、システムの起動時にtrHorse.exeを自動起動させるためのエントリが作成されたことが分かる。
ステップS89では、ログ情報解析部34は、ステップS81で抽出されたプロセス動作ログレコードのいずれかにおいて外部とのネットワーク通信をおこなったものがあるかを判定する。
ここでは、ログ情報解析部34は、ステップS82で抽出されたイベント種の中に、TCPネットワーク接続の開始を示す“tcpOpen”がある場合に外部とのネットワーク通信があったと判定して、ステップS90へ進む。また、ログ情報解析部34は、上記のイベント種の中に、“tcpOpen”がない場合に外部とのネットワーク通信がなかったと判定して、ステップS93へ進む。
例えば、シーケンス番号621から632までにおいては、シーケンス番号622、623及び627のプロセス動作ログレコードに、“tcpOpen”がある。したがって、ステップS90へ進む。
ステップS90では、ログ情報解析部34は、外部とのネットワーク通信をおこなったことを示すプロセス動作ログレコードを抽出する。例えば、シーケンス番号621から632までにおいては、“tcpOpen”があるのはシーケンス番号622、623及び627のプロセス動作ログレコードであるので、シーケンス番号622、623及び627のプロセス動作ログレコードが抽出される。
ステップS91では、ログ情報解析部34は、抽出したプロセス動作ログレコードのイベント属性情報からtcpGIDの値を抽出し、同じtcpGIDの値を持つ他の全てのプロセス動作ログレコードを抽出してグループ化をおこなう。
例えば、シーケンス番号621から632までにおいては、シーケンス番号622、623及び627のプロセス動作ログレコードの各々のイベント属性情報から、tcpGIDの値として、“gid101”、“gid102”及び“gid103”が抽出される。そこで、その各々と同じtcpGIDの値を持つ他の全てのプロセス動作ログレコードとして、それぞれ、シーケンス番号631、626及び630のプロセス動作ログレコードが抽出されるから、その各々が、シーケンス番号622、623及び627のプロセス動作ログレコードと、それぞれグループ化される。
ステップS92では、ログ情報解析部34は、グループ化されたプロセス動作ログレコードから発生日時及びdstIPの値を抽出し、各ネットワーク通信の通信時間帯及び接続先IPアドレスを同定する。
この結果、tcpGIDが“gid101”として識別されるネットワーク通信は、発生日時t81からt90の時間帯においてIPアドレス“55...201”を接続先としておこなわれ、tcpGIDが“gid102”として識別されるネットワーク通信は、発生日時t82からt85の時間帯においてIPアドレス“55...202”を接続先としておこなわれ、そしてtcpGIDが“gid103”として識別されるネットワーク通信は、発生日時t86からt89の時間帯において前出と同じくIPアドレス“55...202”を接続先としておこなわれていたことが分かる。
なお、ステップS83、S86及びS89で挙げたイベントは、一例に過ぎない。すなわち、ログ情報解析部34は、マルウェアの一連の動作を調べるために、その他のイベントの有無を判定することも可能である。
ステップS93では、ログ情報解析部34は、ステップS84、ステップS87あるいはステップS90で抽出されたプロセス動作ログレコードがあるかを判定し、抽出されたプロセス動作ログレコードがある場合はステップS94へ進み、抽出されたプロセス動作ログレコードがない場合は本ルーチンを終了する。
ステップS94では、ログ情報解析部34は、ステップS85で同定された生成ファイル名、ステップS88で同定されたレジストリ操作対象サブキー、ステップS92で同定された外部ネットワーク通信の通信時間帯及び接続先IPアドレス等を用いてマルウェアのプロファイリングを実施して、本ルーチンを終了する。
ここでプロファイリングとは、サイバー攻撃におけるマルウェアの調査において、侵入、諜報、拡散、攻撃(情報漏洩、破壊工作)といったマルウェアの動作を同定したり、未知のマルウェアの動き方の特徴を推論したりすることをいう。本実施形態では、プロファイリングは、ステップS84、ステップS87及びステップS90等で得られたプロセス動作ログレコードを、ステップS85、ステップS88及びステップS92等で同定された情報を手掛かりにマルウェアの動作を統計的に推論したり、当該プロセス動作ログレコードの、シーケンス番号419のログオンに代表される操作ログや過去のマルウェア情報等との相互参照によって必要な情報を整理したりすることで、マルウェアの動作を同定等することである。
なお、本実施形態では、アプリケーションプログラムの実行主体としてのプロセスの動作に関するプロセス動作ログの収集、分析から、いわゆる悪意のあるアプリケーションプログラムとしてのマルウェアを特定することを中心に説明した。しかし、本発明は、上述した実施形態に限定されることはない。
本発明は、プロセスに限らず、ユーザの端末操作、記録媒体の接続等の一連の動作で構成される任意のタスクにも適用可能である。つまり、本発明は、プログラム(プロセス)単位・ユーザ単位・コンピュータ単位ですべてのタスクのログ情報を生成して、その中から、解析に必要なログ情報を効率よく抽出することができる。
例えば、ユーザによるログオン、記録媒体の接続、OSの設定時刻の変更等もログ情報として記録される。このため、悪意のあるユーザを特定することや、ユーザの無実を証明することが可能になる。さらに、所望のアプリケーションプログラムの実行主体としてのプロセスのプロセス動作ログレコードに着目すれば、当該アプリケーションプログラムの利用状況を、ユーザあるいは端末単位で把握するも可能になる。
その他、本発明は、機密ファイル(特定のファイル)の保持調査、コンピュータ利用状況から業務遂行ノウハウの可視化、クラウドサービスにアップロードされたファイルのリスト化、誤操作で行方不明になったファイルの発見、プログラムの動作確認(デバッグ的なもの)、勤怠管理(労務管理)、勤務状況の調査(業務外アプリケーション、業務外Webサイトの利用状況)、ファイル持ち出し監査に利用することも可能である。
1 マルウェア特定システム
10 クライアント端末
11 プロセス監視部
12 ドライバ監視部
13 プロセス監視制御部
14 ログ情報生成部
15 ログ情報送信部
16 全体制御部
20 スプール装置
30 ログ情報抽出装置

Claims (12)

  1. 複数のコンピュータを有するシステムの空間で、アプリケーションプログラムの実行主体であるプロセスの一連のイベントで構成されるプロセス動作の開始時に、前記プロセスを時間的及び空間的に一意に識別する第1の識別情報を生成し、当該第1の識別情報を含んだプロセス情報を生成するプロセス情報生成部と、
    前記イベント毎に、当該イベントの種別を示すイベント種別情報を生成し、当該イベント種別情報を含んだイベント情報を生成するイベント情報生成部と、
    前記イベント毎に、前記プロセス情報生成部により生成された前記プロセス情報と、前記イベント情報生成部により生成された前記イベント情報と、を有するログ情報を生成するログ情報生成部と、
    を備えたログ情報生成装置。
  2. 前記プロセス情報生成部は、前記プロセス動作の開始時に、前記プロセスの属性を示すプロセス属性情報を更に生成し、前記第1の識別情報と当該プロセス属性情報とを含んだ前記プロセス情報を生成し、
    前記イベント情報生成部は、前記プロセス動作の開始時以降のイベント毎に、当該イベントの属性を示すイベント属性情報を更に生成し、前記イベント種別情報と当該イベント属性情報とを含んだ前記イベント情報を生成し、
    前記ログ情報生成部は、前記プロセス動作の開始時のイベントについては、前記第1の識別情報と前記プロセス属性情報との両方を含んだ前記プロセス情報と、前記イベント情報と、を有するログ情報を生成し、前記プロセス動作の開始時以外のイベントについては、前記第1の識別情報のみを含んだ前記プロセス情報と、前記イベント情報と、を有するログ情報を生成する
    請求項1に記載のログ情報生成装置。
  3. 前記ログ情報生成部は、前記プロセスの親のプロセスを時間的及び空間的に一意に識別する第2の識別情報を取得し、当該第2の識別情報を更に含んだ前記ログ情報を生成する
    請求項1又は請求項2に記載のログ情報生成装置。
  4. 前記プロセスの前記第1の識別情報と、単一のコンピュータにおいて前記プロセスを一意に識別するための第3の識別情報と、の対応関係を記憶する記憶部と、
    前記プロセスが所望の依頼先へ所定のイベントを依頼した際、当該所望の依頼先から前記プロセスの前記第3の識別情報のみが出力された場合に、前記記憶部に記憶された対応関係に基づいて、前記所望の依頼先から出力された前記第3の識別情報に対応する第1の識別情報を取得する取得部と、を更に備え、
    前記ログ情報生成部は、当該取得部で取得された前記第1の識別情報を含むプロセス情報を用いて、前記ログ情報を生成する
    請求項1又は請求項2に記載のログ情報生成装置。
  5. 前記ログ情報生成部は、前記イベント毎に、コンピュータの状態を示す実行環境情報を更に有する前記ログ情報を生成する
    請求項1から請求項4のいずれか1項に記載のログ情報生成装置。
  6. 前記プロセス情報生成部は、1つ以上の異なるハッシュ値生成アルゴリズムに基づいて、前記第1の識別情報が示すプロセスのプロセス実行ファイルの1つ以上のハッシュ値を生成し、生成した1つ以上のハッシュ値を更に含んだ前記プロセス情報を生成する
    請求項1から請求項5のいずれか1項に記載のログ情報生成装置。
  7. 前記プロセス情報生成部は、前記第1の識別情報が示すプロセスのプロセス実行ファイルの名称を更に含んだ前記プロセス情報を生成する
    請求項1から請求項5のいずれか1項に記載のログ情報生成装置。
  8. 前記ログ情報生成部は、前記プロセスの開始から終了までのすべてのログ情報の全体又は一部のハッシュ値を生成する
    請求項1から請求項7のいずれか1項に記載のログ情報生成装置。
  9. コンピュータを請求項1から請求項8のいずれか1項に記載のログ情報生成装置として機能させるためのプログラム。
  10. 複数のコンピュータを有するシステムの空間で、時間情報及び実行環境情報が入力される入力部と、
    時間情報と、実行環境情報と、アプリケーションプログラムの実行主体であるプロセスの一連のイベントで構成されるプロセス動作の開始時に生成されたものであって前記プロセスを時間的及び空間的に一意に識別する第1の識別情報を含んだプロセス情報と、イベントの種別を示すイベント種別情報を含んだイベント情報と、を前記イベント毎に有するログ情報を記憶するログ情報記憶部と、
    前記ログ情報記憶部に記憶された前記ログ情報から、前記入力部に入力された前記時間情報及び前記実行環境情報に対応するログ情報に含まれる第1の識別情報を特定し、特定した前記第1の識別情報を有する全部又は一部のログ情報を抽出するログ情報抽出部と、
    を備えたログ情報抽出装置。
  11. 前記ログ情報記憶部に記憶された前記ログ情報は、前記プロセスの親のプロセスを時間的及び空間的に一意に識別する第2の識別情報を更に含み、
    前記ログ情報抽出部は、特定した前記第1の識別情報を有する全部又は一部のログ情報を抽出し、抽出したログ情報の中から、前記親のプロセスの前記第2の識別情報を抽出し、抽出した前記第2の識別情報を有する全部又は一部のログ情報を更に抽出する
    請求項10に記載のログ情報抽出装置。
  12. コンピュータを請求項10又は請求項11に記載のログ情報抽出装置として機能させるためのプログラム。
JP2015199588A 2015-10-07 2015-10-07 ログ情報生成装置及びプログラム並びにログ情報抽出装置及びプログラム Expired - Fee Related JP5933797B1 (ja)

Priority Applications (11)

Application Number Priority Date Filing Date Title
JP2015199588A JP5933797B1 (ja) 2015-10-07 2015-10-07 ログ情報生成装置及びプログラム並びにログ情報抽出装置及びプログラム
DK16853290.1T DK3223159T3 (da) 2015-10-07 2016-04-28 Anordning til generering af logoplysninger og registreringsmedium og anordning til udtrækning af logoplysninger og registreringsmedium
CN201680058728.7A CN108351827A (zh) 2015-10-07 2016-04-28 日志信息生成设备与存储介质以及日志信息抽取设备与存储介质
KR1020187012912A KR102095334B1 (ko) 2015-10-07 2016-04-28 로그 정보 생성장치 및 기록매체와 로그 정보 추출장치 및 기록매체
PL16853290T PL3223159T3 (pl) 2015-10-07 2016-04-28 Urządzenie do generowania informacji o rejestrze i nośnik zapisu, oraz urządzenie do pozyskiwania informacji o rejestrze i nośnik zapisu
ES16853290T ES2870926T3 (es) 2015-10-07 2016-04-28 Dispositivo de generación de información de anotaciones y medio de registro, y dispositivo de extracción de información de anotaciones y medio de registro
CA3001282A CA3001282C (en) 2015-10-07 2016-04-28 Log information generation apparatus and recording medium, and log information extraction apparatus and recording medium
EP16853290.1A EP3223159B1 (en) 2015-10-07 2016-04-28 Log information generation device and recording medium, and log information extraction device and recording medium
PCT/JP2016/063488 WO2017061134A1 (ja) 2015-10-07 2016-04-28 ログ情報生成装置及び記録媒体並びにログ情報抽出装置及び記録媒体
US15/224,382 US9875353B2 (en) 2015-10-07 2016-07-29 Log information generation apparatus and recording medium, and log information extraction apparatus and recording medium
US15/877,242 US10289837B2 (en) 2015-10-07 2018-01-22 Log information generation apparatus and recording medium, and log information extraction apparatus and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015199588A JP5933797B1 (ja) 2015-10-07 2015-10-07 ログ情報生成装置及びプログラム並びにログ情報抽出装置及びプログラム

Publications (2)

Publication Number Publication Date
JP5933797B1 true JP5933797B1 (ja) 2016-06-15
JP2017072993A JP2017072993A (ja) 2017-04-13

Family

ID=56120513

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015199588A Expired - Fee Related JP5933797B1 (ja) 2015-10-07 2015-10-07 ログ情報生成装置及びプログラム並びにログ情報抽出装置及びプログラム

Country Status (10)

Country Link
US (2) US9875353B2 (ja)
EP (1) EP3223159B1 (ja)
JP (1) JP5933797B1 (ja)
KR (1) KR102095334B1 (ja)
CN (1) CN108351827A (ja)
CA (1) CA3001282C (ja)
DK (1) DK3223159T3 (ja)
ES (1) ES2870926T3 (ja)
PL (1) PL3223159T3 (ja)
WO (1) WO2017061134A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019527429A (ja) * 2016-07-19 2019-09-26 2236008 オンタリオ インコーポレイテッド システム呼び出しのシーケンスを用いた異常検出

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6380537B2 (ja) * 2014-08-22 2018-08-29 日本電気株式会社 分析装置、分析方法及びコンピュータ読み取り可能な記録媒体
JP5933797B1 (ja) 2015-10-07 2016-06-15 株式会社ソリトンシステムズ ログ情報生成装置及びプログラム並びにログ情報抽出装置及びプログラム
EP3283996B1 (en) * 2016-01-21 2021-03-03 Hewlett-Packard Enterprise Development LP Software validation for untrusted computing systems
KR101883713B1 (ko) * 2016-09-22 2018-07-31 주식회사 위드네트웍스 콘텐츠 파일 접근 제어를 이용한 랜섬웨어 차단 장치 및 차단 방법
US11205102B1 (en) * 2017-04-25 2021-12-21 EMC IP Holding Company LLC Tamper proof logging for automated processes
CN108255631B (zh) * 2017-12-28 2022-04-19 努比亚技术有限公司 移动终端重启定位方法、移动终端及计算机可读存储介质
US10769001B2 (en) * 2018-03-21 2020-09-08 Didi Research America, Llc System and method for process state processing
CN109446167A (zh) * 2018-10-10 2019-03-08 北京北信源软件股份有限公司 一种日志数据存储、提取方法及装置
US20220147630A1 (en) * 2019-02-26 2022-05-12 Nec Corporation Information processing apparatus, information processing method, and computer readable medium
RU2739864C1 (ru) * 2019-07-17 2020-12-29 Акционерное общество "Лаборатория Касперского" Система и способ корреляции событий для выявления инцидента информационной безопасности
CN110516156B (zh) * 2019-08-29 2023-03-17 深信服科技股份有限公司 一种网络行为监控装置、方法、设备和存储介质
US11144418B2 (en) 2019-09-23 2021-10-12 International Business Machines Corporation Mutation event detection for integrity monitoring
CN110704375B (zh) * 2019-09-26 2020-10-23 深圳前海大数金融服务有限公司 文件管理方法、装置、设备及计算机存储介质
US11977636B2 (en) * 2021-09-14 2024-05-07 Hitachi, Ltd. Storage transaction log
CN117118824B (zh) * 2023-10-20 2024-02-27 成都卓拙科技有限公司 一种日志数据收集方法及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030110416A1 (en) * 2001-06-01 2003-06-12 Microsoft Corporation Methods and systems for creating and communicating with computer processes
JP2003233521A (ja) * 2002-02-13 2003-08-22 Hitachi Ltd ファイル保護システム
JP2005527008A (ja) * 2001-09-19 2005-09-08 ヒューレット・パッカード・カンパニー コンポーネントベースシステムのランタイム監視
JP2010146457A (ja) * 2008-12-22 2010-07-01 Kddi Corp 情報処理システムおよびプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0985995B1 (en) * 1998-09-09 2003-08-13 International Business Machines Corporation Method and apparatus for intrusion detection in computers and computer networks
US20070156786A1 (en) * 2005-12-22 2007-07-05 International Business Machines Corporation Method and apparatus for managing event logs for processes in a digital data processing system
US8065728B2 (en) * 2007-09-10 2011-11-22 Wisconsin Alumni Research Foundation Malware prevention system monitoring kernel events
JP5452030B2 (ja) 2009-02-06 2014-03-26 三菱電機株式会社 統合ログ生成装置及び統合ログ生成プログラム及び記録媒体
RU2454705C1 (ru) * 2011-04-19 2012-06-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ защиты компьютерного устройства от вредоносных объектов, использующих сложные схемы заражения
US10185822B2 (en) * 2012-03-14 2019-01-22 Carbon Black, Inc. Systems and methods for tracking and recording events in a network of computing systems
JP5441043B2 (ja) 2012-04-19 2014-03-12 株式会社Ffri プログラム、情報処理装置、及び情報処理方法
US8990948B2 (en) * 2012-05-01 2015-03-24 Taasera, Inc. Systems and methods for orchestrating runtime operational integrity
CN104937886B (zh) * 2013-01-30 2017-10-24 日本电信电话株式会社 日志分析装置、信息处理方法
CN103268448B (zh) * 2013-05-24 2016-04-20 北京网秦天下科技有限公司 动态检测移动应用的安全性的方法和系统
US9210183B2 (en) * 2013-12-19 2015-12-08 Microsoft Technology Licensing, Llc Detecting anomalous activity from accounts of an online service
JP5933797B1 (ja) 2015-10-07 2016-06-15 株式会社ソリトンシステムズ ログ情報生成装置及びプログラム並びにログ情報抽出装置及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030110416A1 (en) * 2001-06-01 2003-06-12 Microsoft Corporation Methods and systems for creating and communicating with computer processes
JP2005527008A (ja) * 2001-09-19 2005-09-08 ヒューレット・パッカード・カンパニー コンポーネントベースシステムのランタイム監視
JP2003233521A (ja) * 2002-02-13 2003-08-22 Hitachi Ltd ファイル保護システム
JP2010146457A (ja) * 2008-12-22 2010-07-01 Kddi Corp 情報処理システムおよびプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019527429A (ja) * 2016-07-19 2019-09-26 2236008 オンタリオ インコーポレイテッド システム呼び出しのシーケンスを用いた異常検出

Also Published As

Publication number Publication date
KR20180066161A (ko) 2018-06-18
ES2870926T3 (es) 2021-10-28
US10289837B2 (en) 2019-05-14
CN108351827A (zh) 2018-07-31
US20170103200A1 (en) 2017-04-13
EP3223159A4 (en) 2018-02-14
US20180211032A1 (en) 2018-07-26
DK3223159T3 (da) 2021-05-25
EP3223159A1 (en) 2017-09-27
WO2017061134A1 (ja) 2017-04-13
CA3001282A1 (en) 2017-04-13
EP3223159B1 (en) 2021-03-03
CA3001282C (en) 2020-06-30
PL3223159T3 (pl) 2021-08-02
KR102095334B1 (ko) 2020-03-31
US9875353B2 (en) 2018-01-23
JP2017072993A (ja) 2017-04-13

Similar Documents

Publication Publication Date Title
JP5933797B1 (ja) ログ情報生成装置及びプログラム並びにログ情報抽出装置及びプログラム
US11727333B2 (en) Endpoint with remotely programmable data recorder
US9767280B2 (en) Information processing apparatus, method of controlling the same, information processing system, and information processing method
US8984331B2 (en) Systems and methods for automated memory and thread execution anomaly detection in a computer network
CN106687971B (zh) 用来减少软件的攻击面的自动代码锁定
US9853994B2 (en) Attack analysis system, cooperation apparatus, attack analysis cooperation method, and program
US10142343B2 (en) Unauthorized access detecting system and unauthorized access detecting method
US11706237B2 (en) Threat detection and security for edge devices
WO2020246227A1 (ja) ルール生成装置、ルール生成方法、及びコンピュータ読み取り可能な記録媒体
US9037608B1 (en) Monitoring application behavior by detecting file access category changes
US11763004B1 (en) System and method for bootkit detection
Delgado Developing an adaptive threat hunting solution: The elasticsearch stack
US11368377B2 (en) Closed loop monitoring based privileged access control
EP3913486A1 (en) Closed loop monitoring based privileged access control
JP2019008568A (ja) ホワイトリスト管理システムおよびホワイトリスト管理方法
CN116975860A (zh) 清理方法、装置、设备、可读存储介质及程序产品
CN117389678A (zh) 一种有效拦截容器编排系统应用部署的方法及系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151102

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20151106

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20151113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160329

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160329

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160502

R150 Certificate of patent or registration of utility model

Ref document number: 5933797

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees