JP5892840B2 - Program analysis system - Google Patents
Program analysis system Download PDFInfo
- Publication number
- JP5892840B2 JP5892840B2 JP2012086942A JP2012086942A JP5892840B2 JP 5892840 B2 JP5892840 B2 JP 5892840B2 JP 2012086942 A JP2012086942 A JP 2012086942A JP 2012086942 A JP2012086942 A JP 2012086942A JP 5892840 B2 JP5892840 B2 JP 5892840B2
- Authority
- JP
- Japan
- Prior art keywords
- server
- analysis
- client
- record
- program
- 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
Links
Images
Description
本発明は、コンピュータプログラムの挙動を解析するプログラム解析システムに関する。 The present invention relates to program analysis system for analyzing the behavior of a computer program.
ソースコードを用いずに、コンピュータプログラムの挙動を解析する方法として、静的解析と動的解析の2種類が知られている。静的解析とは、プログラムのファイルに記述されている命令コードを分析することで、挙動を調査するものである。動的解析とは、プログラムを計算機上で実行し、当該実行時のプログラムの振る舞いを観測することで、挙動を調査するものである。 There are two known methods for analyzing the behavior of a computer program without using source code: static analysis and dynamic analysis. In static analysis, behavior is investigated by analyzing an instruction code described in a program file. In dynamic analysis, a program is executed on a computer, and the behavior is examined by observing the behavior of the program at the time of execution.
プログラムによっては、静的解析を阻止するために様々な防御策が講じられているものがある。特に、昨今のマルウェア(malware:コンピュータウイルスやスパイウェアなどの不正プログラム)は、静的解析を阻止するために、ファイルが難読化されている場合や、ファイルが暗号化されている場合が多い。そのため、静的解析による調査には、ファイル構造の解読や復号化に長い時間と熟練した技術者とを必要とする。 Some programs have various defensive measures to prevent static analysis. In particular, recent malware (malware: malicious programs such as computer viruses and spyware) is often obfuscated or encrypted in order to prevent static analysis. For this reason, the investigation by static analysis requires a long time and a skilled engineer for decoding and decoding the file structure.
一方、動的解析は、実行時のプログラムの振る舞いを観測して、挙動を調査するため、ファイルの難読化や暗号化による影響を受けにくく、比較的短時間に解析を完了することができるという効果がある。 On the other hand, dynamic analysis observes the behavior of the program at the time of execution and investigates the behavior, so it is less affected by obfuscation and encryption of the file and can be completed in a relatively short time. effective.
そのため、近年では、特許文献1、特許文献2など、動的解析の処理を自動化して効率的な解析を実現するシステムの研究開発が進んでいる。これらのシステムでは、実行環境でマルウェアを実行し、一定時間内に観測された挙動(たとえば、マルウェアのファイルアクセスやネットワーク通信)を取得して解析する。
Therefore, in recent years, research and development of a system that realizes efficient analysis by automating dynamic analysis processing, such as
しかし、プログラムによっては、自身が実行される環境が特定の処理を行う場合にのみ、活発な活動を行うものがある。例えば、マルウェアの中には、計算機が、銀行のWEB(World Wide Web)サイトなどにアクセスしたときのみ活動を開始し、ユーザアカウントを窃取し、ユーザの入力内容を改ざんするものがある。このため、特許文献1、特許文献2に示されているプログラム解析システムのように、プログラムを計算機上で実行して、その挙動を解析するのみでは、プログラムの特徴を十分に解析することは難しい。
However, some programs perform active activities only when the environment in which they are executed performs specific processing. For example, some malware starts an activity only when a computer accesses a bank WEB (World Wide Web) site, steals a user account, and alters a user's input content. For this reason, it is difficult to sufficiently analyze the characteristics of a program only by executing the program on a computer and analyzing the behavior thereof, as in the program analysis systems disclosed in
そこで、本発明は、計算機が特定の処理を行った場合に活動を行うプログラムに対する効率的な解析を可能とするシステムを提供することを課題とする。 The present invention, computer and to provide a system that enables efficient analysis of programs for performing activities when performing a specific process.
前記した課題を解決するため、本発明の請求項1に記載の発明では、検体プログラムを動作させて、その挙動を解析する制御装置と、前記制御装置の指令に基づいてブラウザの動作シナリオを実行し、前記検体プログラムの挙動を記録するクライアント装置と、前記制御装置の指令に基づき前記クライアント装置と通信を行って挙動を記録するサーバ装置と、を備え、前記制御装置は、前記クライアント装置の前記ブラウザの前記動作シナリオ、および、前記サーバ装置のサーバ構成情報を組み合わせた情報を格納する解析データベースを備えた記憶部と、前記クライアント装置および前記サーバ装置に命令を送信して解析処理を行う制御部と、前記クライアント装置および前記サーバ装置から受信した記録を基に、前記検体プログラムの属性を解析する検知部と、を備えることを特徴とするプログラム解析システムとした。
その他の手段については、発明を実施するための形態のなかで説明する。
In order to solve the above-described problem, according to the first aspect of the present invention, a control device that operates a sample program and analyzes its behavior, and executes a browser operation scenario based on a command from the control device. And a client device that records the behavior of the sample program and a server device that records the behavior by communicating with the client device based on a command from the control device, and the control device includes the client device A storage unit including an analysis database that stores information obtained by combining the operation scenario of the browser and server configuration information of the server device, and a control unit that transmits an instruction to the client device and the server device to perform analysis processing And the sample program attribute based on the records received from the client device and the server device. A detection unit for analyzing and a program analysis system, characterized in that it comprises a.
Other means will be described in the embodiment for carrying out the invention.
本発明によれば、計算機が特定の処理を行った場合に活動を行うプログラムに対する効率的な解析を可能とするシステムを提供することが可能となる。 According to the present invention, the computer is able to provide a system that enables efficient analysis of programs for performing activities when performing a specific process.
(本実施形態の構成) (Configuration of this embodiment)
図1は、本実施形態に於けるプログラム解析システムを示す概略の構成図である。
プログラム解析システム1は、制御装置100と、クライアント装置200と、サーバ装置300と、通信ネットワーク400と、通信ネットワーク500とを備えている。
本実施形態のプログラム解析システム1は、後記する検体11が、マルウェアであるか否かを解析するものである。ここでマルウェアとは、不正かつ有害な動作を行う意図で作成された悪意のあるソフトウェアであり、例えば、WEBブラウザに感染して、ユーザが特定のWEBサイトにアクセスした際に、ユーザ入力の窃取や改ざんを行うものである。プログラム解析システム1は、制御装置100、クライアント装置200、および、サーバ装置300が、通信ネットワーク400を介して連携して、このマルウェアを解析する。
FIG. 1 is a schematic configuration diagram showing a program analysis system in the present embodiment.
The
The
制御装置100は、例えば、1台以上のコンピュータやワークステーションなどの計算機である。制御装置100は、プログラム解析システム1に於いて、マルウェアの挙動を解析する処理を行う。制御装置100は、解析対象となるマルウェア(以後、検体と記載している場合がある)、および、その解析手順を決定し、クライアント装置200およびサーバ装置300に指令する。制御装置100は、通信ネットワーク400を介して、クライアント装置200およびサーバ装置300に接続されている。
制御装置100の構成は、後記する図2で説明する。
The
The configuration of the
クライアント装置200は、例えば、1台以上のコンピュータやワークステーションなどの計算機である。クライアント装置200は、制御装置100から送信された指令に基づいて、検体11の実行およびWEBブラウザの動作シナリオの実行(操作)を行い、検体11の挙動を記録する。クライアント装置200は、通信ネットワーク500を介して、サーバ装置300と通信を行う。クライアント装置200の構成は、後記する図3で説明する。
The
サーバ装置300は、例えば、1台以上のコンピュータやワークステーションなどの計算機である。サーバ装置300は、制御装置100から送信された指令に基づいてWEBサイトを構築し、通信ネットワーク500を介して、クライアント装置200と通信を行って挙動を記録する。サーバ装置300の構成は、後記する図4で説明する。
The
通信ネットワーク400は、例えば、WAN(World Area Network)、LAN(Local Area Network)、携帯電話、PHS(Personal Handy-phone System)などの公衆回線網である。制御装置100と、クライアント装置200、サーバ装置300との間の通信は、通信ネットワーク400を介して行われる。
The
通信ネットワーク500は、例えば、WAN、LAN、携帯電話、PHSなどの公衆回線網である。クライアント装置200とサーバ装置300との間の通信は、通信ネットワーク500を介して行われる。クライアント装置200は、通信ネットワーク500を介して、例えばインターネットなどの外部ネットワークに接続された装置と、通信することもできる。
The
ラインL1は、制御装置100からクライアント装置200への情報の流れを示すものである。ラインL2は、制御装置100からサーバ装置300への情報の流れを示すものである。ラインL3は、クライアント装置200から制御装置100への情報の流れを示すものである。ラインL4は、サーバ装置300から制御装置100への情報の流れを示すものである。ラインL1〜L4は、物理的な情報の伝達手段として、通信ネットワーク400を用いている。
A line L1 indicates a flow of information from the
ラインL1とは、クライアント制御命令10が、制御装置100からクライアント装置200に伝達される情報の流れである。クライアント制御命令10は、解析対象となる検体11と、動作シナリオ12とを含んでいる。本実施形態のプログラム解析システム1は、クライアント装置200内のWEBブラウザに対して、クライアント制御命令10の動作シナリオ12で指定された操作を行った場合の検体11の挙動に基づいて、マルウェアの検出を行う。
The line L1 is a flow of information in which the
ラインL2とは、サーバ制御命令20が、制御装置100からサーバ装置300に伝達される情報の流れである。サーバ制御命令20は、WEBサイト構成ファイル21を含んでいる。サーバ装置300は、WEBサイト構成ファイル21が含んでいる情報に基づき、WEBサイトを構築する。本実施形態では、構築したWEBサイトがクライアント装置200から受信する情報に基づき、マルウェアの検出を行う。
The line L2 is a flow of information in which the
ラインL3とは、クライアント側実行結果30が、クライアント装置200から制御装置100へ伝達される情報の流れである。クライアント側実行結果30は、クライアント制御命令10およびサーバ制御命令20に基づいて検体11を解析した際に、クライアント装置200に於いて取得された解析情報を含んでいる。
The line L3 is a flow of information in which the client
ラインL4とは、サーバ側実行結果40が、サーバ装置300から制御装置100へ伝達される情報の流れである。サーバ側実行結果40は、クライアント制御命令10およびサーバ制御命令20に基づいて検体11を解析した場合に、サーバ装置300に於いて取得された解析情報を含んでいる。
The line L4 is a flow of information in which the server
ラインL5は、クライアント装置200からサーバ装置300への情報の流れを示すものである。ラインL6は、サーバ装置300からクライアント装置200への情報の流れを示すものである。ラインL5,L6は、物理的な情報の伝達手段として、通信ネットワーク500を用いている。
A line L5 indicates a flow of information from the
ラインL5とは、リクエスト50および操作完了通知70が、クライアント装置200からサーバ装置300へ伝達される情報の流れである。リクエスト50は、クライアント装置200内のWEBブラウザが発行した要求文であり、サーバ装置300内のWEBサイトによって処理される。また、操作完了通知70は、クライアント装置200からサーバ装置300へ、解析に必要な一連の操作を完了したことを伝達するために用いられる。
The line L5 is a flow of information in which the
ラインL6とは、レスポンス60が、サーバ装置300からクライアント装置200へ伝達される情報の流れである。レスポンス60は、リクエスト50に対する、サーバ装置300内のWEBサイトの応答文である。
The line L6 is a flow of information in which the
本実施形態のプログラム解析システム1は、制御装置100と、クライアント装置200と、サーバ装置300とを、それぞれ別の処理装置として構成している。しかし、これに限られず、これらを1つの処理装置で実現してもよく、いずれか2つを1つの処理装置で実現してもよい。また、制御装置100が、複数のクライアント装置200、および、複数のサーバ装置300を管理する構成であってもよい。
In the
図2は、本実施形態に於ける制御装置を示す概略の構成図である。
制御装置100は、装置本体110と、入出力装置190とを備えている。
装置本体110は、CPU(Central Processing Unit)120と、メモリ130と、インタフェース(IF)140と、外部記憶装置150と、バス160と、検体保存装置170と、WEBサイト保存装置180とを備えている。なお、図面などでインタフェースのことを「IF」と記載している場合がある。
FIG. 2 is a schematic configuration diagram showing the control device in the present embodiment.
The
The apparatus main body 110 includes a CPU (Central Processing Unit) 120, a memory 130, an interface (IF) 140, an
CPU120は、制御部121および検知部122を具現化している。CPU120は、メモリ130上のソフトウェアプログラムに基づき、各種演算処理を実行するものである。CPU120は、バス160に接続されている。
メモリ130は、制御プログラム131および検知プログラム132を備えている。メモリ130は、CPU120で実行する命令が記述されたプログラムと、当該プログラムが参照するデータとを含む記憶媒体である。メモリ130は、バス160に接続されている。
The
The memory 130 includes a
制御部121は、CPU120が制御プログラム131を実行することによって具現化される。検知部122は、CPU120が検知プログラム132を実行することによって具現化される。制御部121は、検体11の解析状況を管理すると共に、クライアント装置200に、クライアント制御命令10を送信して解析方法を指示する。制御部121は更に、サーバ装置300にサーバ制御命令20を送信し、WEBサイトの構成方法を指示する。
The
検知部122は、マルウェア判定に必要な情報として、クライアント装置200からクライアント側実行結果30を受信し、サーバ装置300からサーバ側実行結果40を受信する。検知部122は、クライアント側実行結果30とサーバ側実行結果40とを解析することにより、検体11がマルウェアであるか否かを判定(検知)する。
The detection unit 122 receives the client-side execution result 30 from the
インタフェース140は、例えば、LANカードなどの通信機器であり、当該制御装置100が、通信ネットワーク400を介して通信するインタフェースである。インタフェース140は、バス160に接続されている。
The
外部記憶装置150は、例えば、HDD(Hard Disk Drive)などの記憶媒体であり、解析シナリオDB151と、WEBサイトDB152と、活動記録DB153と、検知ルールDB154と、再解析ルールDB155とを格納するものである。外部記憶装置150は、バス160に接続されている。
The
バス160は、CPU120と、メモリ130と、インタフェース140と、外部記憶装置150と、検体保存装置170と、WEBサイト保存装置180と、入出力装置190とを通信可能に接続するものである。
検体保存装置170は、例えば、HDDなどの記憶媒体であり、解析対象である検体11を保存するものである。検体保存装置170は、バス160に接続されている。
The
The
WEBサイト保存装置180は、HDDなどの記憶媒体から構成され、HTML(Hyper Text Markup Language)ファイルやCGI(Common Gateway Interface)ファイルなどで構成されたWEBサイト構成ファイル21を保存する。WEBサイト保存装置180は、バス160に接続されている。なお、WEBサイト保存装置180には、複数のWEBサイト構成ファイル21が保存されていてもよい。
The WEB
入出力装置190は、制御装置100に対するデータの入力、および、制御装置100内のデータの出力を行うものである。入出力装置190は、例えば、キーボード、マウス、ディスプレイなどである。入出力装置190は、バス160に接続されている。
The input /
図3は、本実施形態に於けるクライアント装置を示す概略の構成図である。
クライアント装置200は、装置本体210と、入出力装置280とを備えている。
装置本体210は、CPU220と、メモリ230と、インタフェース240,241と、外部記憶装置250と、バス260と、イメージ保存装置270とを備えている。
FIG. 3 is a schematic configuration diagram showing the client device according to the present embodiment.
The
The apparatus
CPU220は、クライアント制御部221と、ブラウザ操作部222と、ブラウザ監視部223と、ブラウザ部224とを具現化している。CPU220は、メモリ230上のソフトウェアプログラムに基づき、各種演算処理を実行するものである。CPU220は、バス260に接続されている。
メモリ230は、クライアント制御プログラム231、ブラウザ操作プログラム232、ブラウザ監視プログラム233、ブラウザプログラム234を備えている。メモリ230は、CPU220で実行する命令が記述されたプログラムと、当該プログラムが参照するデータとを含む記憶媒体である。メモリ230は、バス260に接続されている。
The
The
クライアント制御部221は、CPU220がクライアント制御プログラム231を実行することによって具現化される。ブラウザ操作部222は、CPU220がブラウザ操作プログラム232を実行することによって具現化される。ブラウザ監視部223は、CPU220がブラウザ監視プログラム233を実行することによって具現化される。ブラウザ部224は、CPU220がブラウザプログラム234を実行することによって具現化される。
The
クライアント制御部221は、当該クライアント装置200を制御するものである。すなわちクライアント制御部221は、制御装置100から、クライアント制御命令10を受信し、制御装置100から受信した検体11を解析し、解析結果をクライアント側実行結果30として送信する。
ブラウザ操作部222は、制御装置100より受信した動作シナリオ12に基づき、ブラウザ部224を操作するものである。
ブラウザ監視部223は、ブラウザ部224の挙動を監視するものである。
ブラウザ部224は、WEBブラウザとして動作し、ブラウザ操作部222の指示に基づく動作を行うものである。
The
The
The
The
インタフェース240は、クライアント装置200を通信ネットワーク400と接続する通信装置である。LANカードなどの通信機器がこれに対応する。インタフェース240は、図中においてIFと記述することがある。同様に、インタフェース241は、クライアント装置200を通信ネットワーク500と接続するための通信装置である。インタフェース240,241は、それぞれバス260に接続されている。
The
外部記憶装置250は、HDDなどの記憶媒体から構成され、ブラウザ監視ルールDB251を記憶する。ブラウザ監視ルールDB251には、ブラウザ監視プログラム233が、ブラウザプログラム234のどのような活動を記録するのかが記述されている。ブラウザ監視ルールDB251の具体的内容については後記する。
バス260は、CPU220、メモリ230、インタフェース240、インタフェース241、外部記憶装置250、イメージ保存装置270、入出力装置280を接続する。
The
The
イメージ保存装置270は、HDDなどの記憶媒体から構成され、実行環境イメージ271を記憶する。イメージ保存装置270は、バス260に接続されている。
実行環境イメージ271は、一般的なオペレーティングシステムの構成情報を含んでいるファイルであり、CPU220上で実行されると、検体11を実行するためのソフトウェア環境を提供する。イメージ保存装置270には、検体11が実行中に作成または変更したファイルやレジストリに関する情報が、一時的に保存される。
The
The
入出力装置280は、クライアント装置200に対して、管理者によるデータの入力、およびクライアント装置200内のデータの出力を行うための装置である。入出力装置280は、例えば、キーボード、マウス、ディスプレイなどである。入出力装置280は、バス260に接続されている。
The input /
図4は、本実施形態に於けるサーバ装置を示す概略の構成図である。
サーバ装置300は、装置本体310と、入出力装置380から構成される。
装置本体310は、CPU320と、メモリ330と、インタフェース340,341と、外部記憶装置350と、バス360と、WEBサイト保存装置370とを備えている。
FIG. 4 is a schematic configuration diagram showing the server device in the present embodiment.
The
The apparatus
CPU320は、サーバ制御部321と、WEBサイト監視部322と、WEBサーバ部323とを具現化している。CPU320は、メモリ330上のソフトウェアプログラムに基づき、各種演算処理を実行するものである。CPU320は、バス360に接続されている。
The
メモリ330は、サーバ制御プログラム331と、WEBサイト監視プログラム332と、WEBサイトプログラム333とを備えている。メモリ330は、CPU320で実行する命令が記述されたプログラムと、当該プログラムが参照するデータとを含む記憶媒体である。メモリ330は、バス360に接続されている。
The
サーバ制御プログラム331がCPU320で実行されることによって、制御装置100と通信を行い、検体11の解析を行う。WEBサイト監視プログラム332がCPU320で実行されることで、WEBサイトプログラム333の挙動を監視する。WEBサイトプログラム333は、CPU320上で実行されることにより、WEBサーバとして動作する。
サーバ制御部321は、CPU320がサーバ制御プログラム331を実行することによって具現化される。WEBサイト監視部322は、CPU320がWEBサイト監視プログラム332を実行することによって具現化される。WEBサーバ部323は、CPU320がWEBサイトプログラム333を実行することによって具現化される。
The
The server control unit 321 is realized by the
サーバ制御部321は、当該サーバ装置300を制御し、制御装置100から、サーバ制御命令20を受信し、検体11の解析が終了したならば、その解析結果をサーバ側実行結果40として送信するものである。
WEBサイト監視部322は、WEBサーバ部323の挙動を監視するものである。
WEBサーバ部323は、WEBサイト構成ファイル21を読み込んでWEBサーバとして動作し、クライアント装置200からのリクエスト50を受信し、レスポンス60を返すものである。
The server control unit 321 controls the
The WEB site monitoring unit 322 monitors the behavior of the
The
インタフェース340は、サーバ装置300を通信ネットワーク400と接続するための通信装置である。LANカードなどの通信機器がこれに対応する。インタフェース340は、図および明細書に於いて、IFと記載している場合がある。同様に、インタフェース341は、サーバ装置300を通信ネットワーク500と接続するための通信装置である。インタフェース340,341は、バス360に接続されている。
The
外部記憶装置350は、HDDなどの記憶媒体から構成され、WEBサイト監視ルールDB351を記憶する。WEBサイト監視ルールDB351には、WEBサイト監視プログラム332が、WEBサイトプログラム333のどのような活動を記録するのかが記述されている。WEBサイト監視ルールDB351の具体的内容については後記する。外部記憶装置350は、バス360に接続されている。
バス360は、CPU320と、メモリ330と、インタフェース340,341と、外部記憶装置350と、WEBサイト保存装置370と、入出力装置380とを接続する。
WEBサイト保存装置370は、HDDなどの記憶媒体から構成され、制御装置100より受信したWEBサイト構成ファイル21を保存する。WEBサイト保存装置370は、バス360に接続されている。
The
The
The WEB
入出力装置380は、サーバ装置300に対して、管理者によるデータの入力、およびサーバ装置300内のデータの出力を行うための装置である。入出力装置380は、例えば、キーボード、マウス、ディスプレイなどである。入出力装置380は、バス360に接続されている。
The input /
(処理の説明)
図5以降の図に、本システムに含まれるDBの構成例および各機能部のフローチャートを示す。
図5以降の図に示す各DBは、以下の手順で検体11の解析が行われた後の構成である。
(Description of processing)
FIG. 5 and subsequent figures show a configuration example of a DB included in the system and a flowchart of each functional unit.
Each DB shown in the figures after FIG. 5 has a configuration after the
(第1回目の解析:2012年1月1日午前0時0分)
2012年1月1日午前0時0分に、制御装置100が、IDが“検体A”である検体11の解析を開始する。解析ではまず、解析用WEBサイトとしてサイトXを選択する。制御装置100は、第1回目の解析を同日の午前0時1分に完了し、検体Aを非マルウェアと判定する。
(The first analysis: January 1, 2012, 00:00)
At 0:00 am on January 1, 2012, the
(第2回目の解析:2012年1月1日午前0時2分)
2012年1月1日午前0時2分に、制御装置100は、第2回目の解析を開始し、解析用WEBサイトとして、サイトYを選択する。制御装置100は、第2回目の解析を同日の午前0時3分に完了し、検体Aを非マルウェアと判定する。
(Second analysis: January 1, 2012 at 0:02 am)
At 0:02 am on January 1, 2012, the
(第3回目の解析:2012年1月1日午前0時4分)
制御装置100は、第3回目の解析を開始し、解析用WEBサイトとしてサイトZを選択する。制御装置100は、第3回目の解析を同日午前0時5分に完了し、検体Aをマルウェアと判定する。これにより、全ての解析処理が完了する。
(Third analysis: January 1, 2012, 0:04 am)
The
(本実施形態の各種テーブル)
図5は、本実施形態に於ける解析シナリオDBを示す図である。
解析シナリオDB151内の各レコードは、ある検体11に関する解析を開始した時刻と、当該解析を終了した時刻と、当該解析方法と、当該解析の状況と、当該解析によって検知した結果とを記憶するものである。解析シナリオDB151は、各レコードの欄として、解析管理ID151aと、検体ID151bと、サイトID151cと、解析開始時刻151dと、解析終了時刻151eと、解析状況151fと、検知結果151gとを備えている。
(Various tables of this embodiment)
FIG. 5 is a diagram showing an analysis scenario DB in the present embodiment.
Each record in the
解析管理ID151aは、解析シナリオDB151内のレコードを一意に認識するのに用いられる。このため、各解析管理ID151aの値は、解析シナリオDB151内でユニークである。
The
検体ID151bは、本システムで解析された各検体11を一意に識別するための番号である。異なるレコードに同一の検体ID151bが設定されている場合、同一の検体11が異なる条件で複数回、解析されたことを意味する。ここでは、同一の検体Aが3回解析されている。
The
サイトID151cは、当該解析に用いられたWEBサイトを一意に識別する識別子である。サイトID151cは、後記するWEBサイトDB152内のレコードに紐づいている。
解析開始時刻151dは、各レコードに係る当該解析の開始時刻を示している。
解析終了時刻151eは、各レコードに係る当該解析の終了時刻を示している。
解析状況151fは、検体ID151bで指定した検体11の解析状況を示し、「解析中」または「解析完了」のいずれかの値が格納される。
検知結果151gは、各レコードで行った検体解析の検知結果を示し、「非マルウェア」、「マルウェアの可能性あり」、「マルウェア」のいずれかの値が格納される。
The
The analysis start
The
The
The
この図5には、3種類の解析シナリオのレコードの例が示されている。
解析管理ID151aに「1」が格納されているレコードは、第1回目の解析の結果を示すものである。当該レコードの検体ID151bには「検体A」が、サイトID151cには「サイトX」が格納されている。当該レコードの解析開始時刻151dには「2012 01/01 00:00:00」が格納され、解析終了時刻151eには「2012 01/01 00:01:00」が格納されている。当該レコードの解析状況151fには「解析完了」が格納され、検知結果151gには「非マルウェア」が格納されている。
FIG. 5 shows examples of records of three types of analysis scenarios.
The record in which “1” is stored in the
解析管理ID151aに「2」が格納されているレコードは、第2回目の解析の結果を示すものである。当該レコードの検体ID151bには「検体A」、サイトID151cには「サイトY」が格納されている。当該レコードの解析開始時刻151dには「2012 01/01 00:02:00」が格納され、解析終了時刻151eには「2012 01/01 00:03:00」が格納されている。当該レコードの解析状況151fには「解析完了」が格納され、検知結果151gには「非マルウェア」が格納されている。
The record in which “2” is stored in the
解析管理ID151aに「3」が格納されているレコードは、第3回目の解析の結果を示すものである。当該レコードの検体ID151bには「検体A」が格納され、サイトID151cには「サイトZ」が格納されている。当該レコードの解析開始時刻151dには「2012 01/01 00:04:00」が格納され、解析終了時刻151eには「2012 01/01 00:05:00」が格納されている。当該レコードの解析状況151fには「解析完了」が格納され、検知結果151gは「マルウェア」が格納されている。
The record in which “3” is stored in the
これにより、プログラム解析システム1は、IDが「検体A」である検体11が、サイトZに対するマルウェアであることを判断することができる。
Thereby, the
図6は、本実施形態に於けるWEBサイトDBを示す図である。
WEBサイトDB152内の各レコードは、WEBサイトの識別子と、当該WEBサイトに関する攻撃の容易性、当該WEBサイトを構成するWEBサイト構成ファイル21、および、当該WEBサイトにアクセスするブラウザ部224の操作の手順を記憶する。WEBサイトDB152は、各レコードの欄として、サイトID152aと、攻撃容易性152bと、サイト構成ファイル保存先152cと、操作手順152dとを備えている。
解析データベースであるWEBサイトDB152は、クライアント装置200に於けるブラウザ部224を動作させる動作シナリオ12、および、サーバ装置300を構成するサイト構成ファイル保存先152cを組み合わせた情報を格納するものである。
FIG. 6 is a diagram showing the WEB site DB in the present embodiment.
Each record in the
The
サイトID152aは、WEBサイトDB152内のレコードを一意に認識するのに用いられると共に、当該レコードに係る当該WEBサイトを識別するために用いられる。このため、各サイトID152aの値は、WEBサイトDB152内でユニークである。
The
攻撃容易性152bは、マルウェアが、当該レコードに係る当該WEBサイトを攻撃する可能性を示している。攻撃容易性152bには、任意の数値が設定され、数値が高いほど、マルウェアが当該WEBサイトを攻撃する可能性が高いことを示している。
サイト構成ファイル保存先152cは、当該レコードのWEBサイト構成ファイル21の、WEBサイト保存装置180に於ける保存場所を示す。
操作手順152dは、当該WEBサイトにアクセスしたブラウザ部224に対して、ブラウザ操作部222が、どのような操作を行うのかを指定する。
The
The site configuration
The
この図6には、3種類のWEBサイトのレコードの例が示されている。サイトID152a=「サイトX」のレコードには、攻撃容易性152b=100、サイト構成ファイル保存先152c=「C:¥storage¥サイトX」が格納されている。また、操作手順152dには、以下7段階の操作手順が格納されている。
(1)Userフィールドに“alice”,パスワードフィールドに“pass”を入力
(2)“ログイン”ボタンを実行
(3)“振り込みボタン”を実行
(4)振込先フィールドに“bob”を、振込金額フィールドに“¥1000”を入力
(5)“手続きボタン”を実行
(6)“確認ボタン”を実行
(7)“手続き実行ボタン”を実行
FIG. 6 shows an example of records of three types of WEB sites. The record of the
(1) Enter “alice” in the User field and “pass” in the password field. (2) Execute the “Login” button. (3) Execute the “Transfer button”. (4) Transfer “bob” in the transfer destination field. Enter “¥ 1000” in the field (5) Execute “Procedure button” (6) Execute “Confirm button” (7) Execute “Procedure button”
サイトID152a=「サイトY」のレコードには、攻撃容易性152b=80、サイト構成ファイル保存先152c=「C:¥storage¥サイトY」が格納されている。また、操作手順152dには、以下5段階の操作手順が格納されている。
(1)Userフィールドに“alice”,パスワードフィールドに“pass”を入力
(2)“login”ボタンを実行
(3)“Transfer”ボタンを実行
(4)振込先フィールドに“cindy”を、振込金額フィールドに“$100”を入力、
(5)“submit”ボタンを実行
The record of the
(1) Enter “alice” in the User field and “pass” in the password field. (2) Execute the “login” button. (3) Execute the “Transfer” button. (4) “Cindy” in the transfer destination field. Enter “$ 100” in the field,
(5) Execute “submit” button
サイトID152a=「サイトZ」のレコードには、攻撃容易性152b=30、サイト構成ファイル保存先152c=「C:¥storage¥サイトZ」が格納されている。また、操作手順152dには、以下7段階の操作手順が格納されている。
(1) Userフィールドに“alice”,パスワードフィールドに“pass”を入力
(2)“ログイン”ボタンを実行
(3)“振り込みボタン”を実行
(4)振込先フィールドに“dave”を、振込金額フィールドに“¥1000”を入力
(5)“手続きボタン”を実行
(6)“確認ボタン”を実行
(7)“手続き実行ボタン”を実行
The record of
(1) Enter “alice” in the User field and “pass” in the password field. (2) Execute the “Login” button. (3) Execute the “Transfer button”. (4) “Dave” in the transfer destination field. Enter “¥ 1000” in the field (5) Execute “Procedure button” (6) Execute “Confirm button” (7) Execute “Procedure button”
図7は、本実施形態に於ける活動記録DBを示す図である。
活動記録DB153には、クライアント装置200のブラウザ監視部223およびサーバ装置300のWEBサイト監視部322で記録された活動記録が記録される。検知部122は、活動記録DB153を参照して、検体11がマルウェアであるか否かを判定する。
FIG. 7 is a diagram showing an activity record DB in the present embodiment.
Activity records recorded by the
この図7には、13種類の活動記録DB153のレコード例が示されている。活動記録ID153a=1〜4のレコードには、解析管理ID153b=1の解析シナリオの実行時に記録された活動記録が格納されている。活動記録ID153a=5〜8のレコードには、解析管理ID153b=2の解析シナリオの実行時に記録された活動記録が格納されている。活動記録ID153a=9〜13のレコードには、解析管理ID153b=3の解析シナリオの実行時に記録された活動記録が格納されている。
FIG. 7 shows record examples of 13 types of
活動記録ID153a=1のレコードには、解析管理ID153b=1、活動記録時刻153c=「2012/01/01 00:00:05」、記録場所153d=「クライアント」、活動種類153e=「CPU使用率上昇率」、活動データ153f=「0.1%」が格納されている。「CPU使用率上昇率」は、ブラウザ部224が使用するCPUの使用率が、一定時間前(例えば、10秒前)に比べて、どの程度上昇したかを示している。
活動記録ID153a=2のレコードには、解析管理ID153b=1、活動記録時刻153c=「2012/01/01 00:00:06」、記録場所153d=「サーバ」、活動種類153e=「クライアント送信内容」、活動データ153f=「user=alice&password=pass」が格納されている。「クライアント送信内容」は、リクエスト50に含まれるデータを示す。
活動記録ID153a=3〜9は、活動記録ID153a=1,2の場合と同様のレコードである。
活動記録ID153a=10のレコードには、解析管理ID153b=3、活動記録時刻153c=「2012/01/01 00:04:05」、記録場所153d=「クライアント」、活動種類153e=「ソケットオープン」、活動データ153f=「dst=192.168.1.1」が格納されている。「ソケットオープン」は、ブラウザ部224が、通信ネットワーク500を介して、「192.168.1.1」のIPアドレスを持つ端末に対して、通信要求を送信したことを示す情報である。活動記録ID153a=11〜13は、活動記録ID153a=1,2の場合と同様のレコードである。
The record of
In the record of
The
The record of the
図8は、本実施形態に於ける検知ルールDBを示す図である。
検知部122は、検知ルールDB154と活動記録DB153を参照して、検体11のマルウェア判定を行う。
検知ルールID154aは、検知ルールDB154内の各レコードを一意に識別するために用いられる。
FIG. 8 is a diagram showing the detection rule DB in the present embodiment.
The detection unit 122 refers to the
The
検知内容154bは、検知手順を示している。検知部122は、ある解析管理ID153bに紐づけられる活動記録DB153レコードと、検知内容154bを比較し、「マルウェア」、「マルウェアの可能性あり」、「非マルウェア」のいずれかの判定を行う。判定処理では、検知ルールID154aの値が小さいものから順に適用され、検知内容154bに適合する活動記録DB153レコードが存在した場合に、判定処理は終了する。
この図8には、4種類の検知ルールDB154のレコード例が示されている。
The
FIG. 8 shows record examples of four types of
検知ルールID154a=1のレコードに於いて、検知内容154bには、「『クライアント送信内容』が操作手順152dで想定したものと異なる場合、『マルウェア』と判定する」が格納されている。
In the record of the
検知ルールID154a=2のレコードに於いて、検知内容154bには、「WEBサイトアクセス時に、『CPU使用率上昇率』が30%上昇した場合、『マルウェアの可能性あり』と判定」が格納されている。
In the record of the
検知ルールID154a=3のレコードに於いて、検知内容154bには、「WEBサイトアクセス時に、『ソケットオープン』が発生した場合、『マルウェアの可能性あり』と判定」が格納されている。
In the record of the
検知ルールID154a=4のレコードに於いて、検知内容154bには、「それ以外の場合、『非マルウェア』と判定」が格納されている。すなわち、活動記録DB153レコードの中に、検知ルールID154a=1〜3に当てはまるものが1つもない場合、検体11は、「非マルウェア」と判定される。
In the record of the
図9は、本実施形態に於ける再解析ルールDBを示す図である。
制御部121は、検知部122の検知結果と再解析ルールDB155を参照して、検体11の再解析を行うかどうかを判断する。
再解析ルールID155aは、再解析ルールDB155内の各レコードを一意に識別するために用いられる。
FIG. 9 is a diagram showing the reanalysis rule DB in the present embodiment.
The
The
判定内容155bは、判定手順を示している。制御部121は、解析シナリオDB151の検知結果151gと判定内容155bとを参照し、検体11の再解析を行うべきかどうかを判断する。
この図9には、3種類の再解析ルールDB155のレコード例が示されている。
再解析ルールID155a=1のレコードに於いて、判定内容155bには、「検知結果が『マルウェア』の場合、最終的にマルウェアと判定し、解析を完了」が格納されている。
The
FIG. 9 shows record examples of three types of
In the record of the
再解析ルールID155a=2のレコードに於いて、判定内容155bには、「『マルウェアの可能性あり』が1回発生した場合、再解析を実行。2回発生した場合は、最終的にマルウェアと判定し、解析を完了」が格納されている。
In the record of the
再解析ルールID155a=3のレコードに於いて、判定内容155bには、「検知結果が『非マルウェア』が3回発生した場合、最終的に非マルウェアと判定し、解析を完了。それ以外の場合、再解析を実行」が格納されている。
In the record of the
図10は、本実施形態に於けるブラウザ監視ルールDBを示す図である。
ブラウザ監視部223は、ブラウザ監視ルールDB251を参照して、ブラウザ部224の監視を行う。
ブラウザ監視ルールID251aは、ブラウザ監視ルールDB251内の各レコードを一意に識別するために用いられる。
監視内容251bは、ブラウザ部224をどのように監視するのかを規定する。
この図10には、2種類のブラウザ監視ルールDB251のレコード例が示されている。
FIG. 10 is a diagram showing the browser monitoring rule DB in the present embodiment.
The
The browser
The
FIG. 10 shows record examples of two types of browser
ブラウザ監視ルールID251a=1のレコードに於いて、監視内容251bには、「CPU使用率上昇率を定期的に記録する」が格納されている。
ブラウザ監視ルールID251a=2のレコードに於いて、監視内容251bには、「ソケットオープンを記録する」が格納されている。
In the record of the browser
In the record of the browser
図11は、本実施形態に於けるWEBサイト監視DBを示す図である。
WEBサイト監視部322は、WEBサイト監視ルールDB351を参照して、WEBサーバ部323の監視を行う。
WEBサイト監視ルールID351aは、WEBサイト監視ルールDB351内の各レコードを一意に識別するために用いられる。
監視内容351bは、WEBサーバ部323をどのように監視するのかを規定する。
この図11には、1種類のWEBサイト監視ルールDB351のレコード例が示されている。
WEBサイト監視ルールID351a=1のレコードに於いて、監視内容351bには、「クライアント送信内容を記録する」が格納されている。
FIG. 11 is a diagram showing a WEB site monitoring DB in the present embodiment.
The WEB site monitoring unit 322 refers to the WEB site
The WEB site
The
FIG. 11 shows a record example of one type of WEB site
In the record of WEB site
(本実施形態の動作) (Operation of this embodiment)
図12は、本実施形態に於けるプログラム解析処理のシーケンス図である。
シーケンスQ10に於いて、制御装置100は、クライアント装置200に、クライアント制御命令10を送信する。クライアント制御命令10には、検体11と動作シナリオ12とが含まれている。これにより、クライアント装置200は、動作シナリオ12を実行する。
シーケンスQ11に於いて、制御装置100は、サーバ装置300に、サーバ制御命令20を送信する。
シーケンスQ12に於いて、クライアント装置200は、サーバ装置300に、リクエスト「1」を送信する。
シーケンスQ13に於いて、クライアント装置200は、サーバ装置300から、リクエスト「1」に対するレスポンス「1」を受信する。
シーケンスQ14に於いて、クライアント装置200は、サーバ装置300に、リクエスト「2」を送信する。
シーケンスQ15に於いて、クライアント装置200は、サーバ装置300から、リクエスト「2」に対するレスポンス「2」を受信する。以下同様にして、クライアント装置200とサーバ装置300とは、検体11の解析処理を実行する。
FIG. 12 is a sequence diagram of program analysis processing in the present embodiment.
In sequence Q <b> 10, the
In sequence Q11,
In sequence Q12, the
In sequence Q13, the
In sequence Q14, the
In sequence Q15, the
クライアント装置200は、動作シナリオ12を全て実行するとシーケンスQ20,Q21の処理を行う。
シーケンスQ20に於いて、クライアント装置200は、サーバ装置300に、操作完了通知70を送信する。
シーケンスQ21に於いて、クライアント装置200は、制御装置100に、クライアント側実行結果30を送信する。
シーケンスQ21に於いて、サーバ装置300は、制御装置100に、サーバ側実行結果40を送信する。これにより、図12に示すプログラム解析シーケンスは終了する。
When all of the
In sequence Q20, the
In sequence Q <b> 21, the
In sequence Q <b> 21,
図13は、本実施形態に於ける制御装置の制御部が実行する制御前処理を示すフローチャートである。
フローチャートは、検体11が投入されてから全ての解析が完了するまでの一連の流れを示している。解析担当者が入出力装置190を介して、解析対象となる検体11を設定することにより、制御装置100は制御前処理を開始する。
FIG. 13 is a flowchart showing pre-control processing executed by the control unit of the control device according to this embodiment.
The flowchart shows a series of flows from the introduction of the
ステップS10に於いて、制御部121は、検体保存装置170に保存された検体11を選択する。制御部121は、インタフェース140を介して、別の端末から検体11を選択してもよく、入出力装置190を介して検体11を選択してもよい。
In step S <b> 10, the
ステップS11に於いて、制御部121は、解析シナリオDB151に新たなレコードを作成する。制御部121は、当該新たなレコードの解析開始時刻151dに、レコード作成時刻を設定する。制御部121は更に、解析状況151fを「解析中」に設定する。制御部121は、当該新たなレコードのサイトID151cに、攻撃容易性152bが最も高く、かつ、未だ当該検体11について解析されていないサイトを設定する。これにより、検体11がマルウェアであったときには、そのことを短時間で判定することができる。
In step S11, the
ステップS12に於いて、制御部121は、ステップS11で作成された解析シナリオDB151(図5)のレコードのサイトID151cの情報に基づき、WEBサイトDB152(図6)のサイトID152aを検索して、一致するレコードを選択する。
In step S12, the
ステップS13に於いて、制御部121は、クライアント制御命令10を、クライアント装置200に送信する。クライアント制御命令10に含まれる検体11には、ステップS10で選択した検体11が設定される。クライアント制御命令10に含まれる動作シナリオ12には、WEBサイトDB152(図6)の当該レコードに係る操作手順152dが設定される。
In step S <b> 13, the
ステップS14に於いて、制御部121は、サーバ制御命令20を、サーバ装置300に送信する。サーバ制御命令20に含まれるWEBサイト構成ファイル21は、WEBサイトDB152の当該レコードに係るサイト構成ファイル保存先152cで示されるものである。
ステップS15に於いて、制御部121は、検知部122に検知部処理(図14)を行わせ、検知結果を導出するまで待機する。
In step S <b> 14, the
In step S15, the
ステップS16に於いて、制御部121は、解析シナリオDB151(図5)に新たに作成した当該レコードと、再解析ルールDB155(図9)の全てのレコードとを参照して、検体11の再解析を行う必要があるか否かを判定する。制御部121は、当該条件が成立した場合、すなわち検体11の判定が終了した場合には(Yes)、ステップS11の処理に戻って再解析を行い、当該条件が成立しなかった場合、すなわち検体11の判定が終了しない場合には(No)、ステップS17の処理を行う。
すなわち、制御部121は、検知部122による検体11の検知結果が、陽性、または、一定回数以上陰性となるまで、再解析処理を指示する。
In step S16, the
That is, the
ステップS17に於いて、制御部121は、解析結果を出力する。制御部121は、解析シナリオDB151のレコードを出力内容とし、入出力装置190を通じて管理者に提示してもよく、通信ネットワーク500を介して、別の装置に送信して出力してもよい。ステップS17の処理が終了すると、図13の処理は終了する。
In step S17, the
次に、図13で行われる処理の具体例を改めて説明する。
ステップS10に於いて、制御部121は、検体Aを選択して、検体保存装置170に保存する。
ステップS11に於いて、制御部121は、解析シナリオDB151(図5)に、新たなレコードを作成し、解析管理ID151a=1を設定する。制御部121は、当該新たなレコードに対して、検体ID151bに選択した検体Aを設定し、解析開始時刻151dに現在の時刻の「2012/01/01 00:00:00」を設定し、解析状況151fに「解析中」を設定する。
ステップS12に於いて、制御部121は、WEBサイトDB152(図6)の最初のレコードを選択し、当該レコードに係るサイトID152aに設定された「サイトX」を、解析シナリオDB151(図5)に作成した当該レコードのサイトID151cに設定する。
Next, a specific example of the process performed in FIG. 13 will be described again.
In step S <b> 10, the
In step S11, the
In step S12, the
ステップS13に於いて、制御部121は、クライアント制御命令10に含まれる検体11に検体Aを設定し、クライアント制御命令10に含まれる動作シナリオ12に、WEBサイトDB152(図6)の選択したレコードの(サイトXの)操作手順152dを設定する。制御部121は、当該クライアント制御命令10を、クライアント装置200に送信する。
In step S13, the
ステップS14に於いて、制御部121は、サーバ制御命令20に含まれるWEBサイト構成ファイル21に、サイトXのサイト構成ファイル保存先152cが示すファイル群を設定する。制御部121は、当該サーバ制御命令20を、サーバ装置300に送信する。
ステップS15に於いて、制御部121は、検知部122が検知結果を導出するまで待機する。
In step S14, the
In step S15, the
ステップS16に於いて、制御部121は、解析管理ID151a=1のレコードの検知結果151gに「非マルウェア」が設定されているため、再解析ルールDB155(図9)の再解析ルールID155a=3のレコードを適用し、再解析が必要であり、検体Aの判定が終了していないと判断する。制御部121は、解析管理ID151a=1のレコードの解析終了時刻151eに「2012 01/01 00:01:00」を設定し、解析状況151fに「解析完了」を設定する。更に、制御部121は、検体Aの判定が終了していないため(No)、ステップS11の処理に戻る。
In step S16, since “non-malware” is set in the
ステップS11に戻って、制御部121は、解析管理ID151a=2の解析シナリオDB151に新たなレコードを作成する。制御部121は、当該新たなレコードに対して、検体ID151bに検体Aを設定し、解析開始時刻151dに「2012/01/01 00:02:00」を設定し、解析状況151fに「解析中」を設定する。
ステップS12に於いて、制御部121は、WEBサイトDB152(図6)の第2番目のレコードを選択し、当該レコードに係るサイトID152aに設定された「サイトY」を、解析シナリオDB151(図5)に作成したレコードのサイトID151cに設定する。
Returning to step S11, the
In step S12, the
ステップS13に於いて、制御部121は、クライアント制御命令10に含まれる検体11に検体Aを設定し、クライアント制御命令10に含まれる動作シナリオ12にサイトYの操作手順152dを設定する。制御部121は、当該クライアント制御命令10をクライアント装置200に送信する。
In step S13, the
ステップS14に於いて、制御部121は、サーバ制御命令20に含まれるWEBサイト構成ファイル21に、サイトYのサイト構成ファイル保存先152cが示すファイル群を設定する。制御部121は、当該サーバ制御命令20を、サーバ装置300に送信する。
ステップS15に於いて、制御部121は、検知部122が検知結果を導出するまで待機する。
In step S14, the
In step S15, the
ステップS16に於いて、制御部121は、解析管理ID151a=2のレコードの検知結果151gに「非マルウェア」が設定されているため、再解析ルールDB155(図9)の再解析ルールID155a=3のレコードを適用し、再解析が必要であり、検体Aの判定が終了してないと判断する。制御部121は、解析管理ID151a=2のレコードの解析終了時刻151eに「2012 01/01 00:03:00」を設定し、解析状況151fに「解析完了」を設定する。更に、制御部121は、検体Aの判定が終了していないため(No)、ステップS11の処理に戻る。
In step S16, since “non-malware” is set in the
ステップS11に戻って、制御部121は、解析管理ID151a=3の解析シナリオDB151に新たなレコードを作成する。制御部121は、当該新たなレコードに対して、検体ID151bに検体Aを設定し、解析開始時刻151dに「2012/01/01 00:04:00」を設定し、解析状況151fに「解析中」を設定する。
ステップS12に於いて、制御部121は、WEBサイトDB152(図6)の第2番目のレコードを選択し、当該レコードに係るサイトID152aに設定された「サイトZ」を、解析シナリオDB151(図5)に作成したレコードのサイトID151cに設定する。
Returning to step S11, the
In step S12, the
ステップS13に於いて、制御部121は、クライアント制御命令10に含まれる検体11に検体Aを設定し、クライアント制御命令10に含まれる動作シナリオ12にサイトZの操作手順152dを設定する。制御部121は、当該クライアント制御命令10を、クライアント装置200に送信する。
In step S13, the
ステップS14に於いて、制御部121は、サーバ制御命令20に含まれるWEBサイト構成ファイル21に、サイトZのサイト構成ファイル保存先152cが示すファイル群を設定する。制御部121は、当該サーバ制御命令20を、サーバ装置300に送信する。
ステップS15に於いて、制御部121は、検知部122が検知結果を導出するまで待機する。
In step S <b> 14, the
In step S15, the
ステップS16に於いて、制御部121は、解析管理ID151a=3のレコードの検知結果151gに「マルウェア」が設定されているため、再解析ルールDB155(図9)の再解析ルールID155a=1のレコードを適用し、再解析は不要と判断し、検体Aの判定が終了したと判断する。制御部121は、解析管理ID151a=3のレコードの解析終了時刻151eに「2012 01/01 00:05:00」を設定し、解析状況151fに「解析完了」を設定する。更に、制御部121は、検体Aの判定が終了したと判断し(Yes)、ステップS17の処理を行う。
ステップS17に於いて、制御部121は、「検体Aがマルウェアである」旨を管理者に通知し、図13に示す処理を完了する。
In step S16, since “malware” is set in the
In step S17, the
図14は、本実施形態に於ける検知部処理(図13のステップS15)を示すフローチャートである。
第1回目の解析に於いて、制御装置100の制御部121がステップS15(図13)の処理を行うと、制御装置100の検知部122は、検知部処理を行う。
ステップS20に於いて、検知部122は、クライアント装置200からクライアント側実行結果30を受信し、活動記録DB153(図7)に新たなレコードを作成して保存する。
ステップS21に於いて、検知部122は、サーバ装置300から、サーバ側実行結果40を受信して、活動記録DB153(図7)に新たなレコードを作成して保存する。
FIG. 14 is a flowchart showing the detection unit processing (step S15 in FIG. 13) in the present embodiment.
In the first analysis, when the
In step S20, the detection unit 122 receives the client side execution result 30 from the
In step S21, the detection unit 122 receives the server-side execution result 40 from the
ステップS22に於いて、検知部122は、活動記録DB153(図7)のレコードと検知ルールDB154(図8)のレコードとを参照して、検体11がマルウェアであるか否かを判定する。
ステップS23に於いて、検知部122は、その判定結果を、解析シナリオDB151(図5)に新たに作成したレコードの検知結果151gに記録(更新)する。
In step S22, the detection unit 122 refers to the record in the activity record DB 153 (FIG. 7) and the record in the detection rule DB 154 (FIG. 8) to determine whether or not the
In step S23, the detection unit 122 records (updates) the determination result in the
次に、図14で行われる処理の具体例を改めて説明する。
ステップS20に於いて、検知部122は、クライアント側実行結果30を受信して、活動記録DB153(図7)の活動記録ID153a=1,3のレコードとして保存する。
ステップS21に於いて、検知部122は、サーバ側実行結果40を受信して、活動記録DB153(図7)の活動記録ID153a=2,4のレコードとして保存する。
Next, a specific example of the process performed in FIG. 14 will be described again.
In step S20, the detection unit 122 receives the client-
In step S21, the detection unit 122 receives the server-
ステップS22に於いて、検知部122は、活動記録DB153(図7)の活動記録ID153a=1〜4のレコードに、検知ルールDB154(図8)の検知ルールID154a=1〜3のレコードに該当するものが有るか否かを判断し、検体11がマルウェアであるか否かを判定する。
ステップS23において、検知部122は、解析シナリオDB151(図5)の解析管理ID151a=1のレコードの検知結果151gに「非マルウェア」を設定(更新)して、図14の処理を終了する。
In step S22, the detection unit 122 corresponds to the records of the
In step S23, the detection unit 122 sets (updates) “non-malware” in the
第2回目の解析に於いて、制御装置100の制御部121がステップS15(図13)の処理を行うと、制御装置100の検知部122は、検知部処理を行う。
ステップS20に於いて、検知部122は、クライアント側実行結果30を受信して、活動記録DB153(図7)の活動記録ID153a=5,7のレコードとして保存する。
ステップS21に於いて、検知部122は、サーバ側実行結果40を受信して、活動記録DB153(図7)の活動記録ID153a=6,8のレコードとして保存する。
In the second analysis, when the
In step S20, the detection unit 122 receives the client-
In step S21, the detection unit 122 receives the server-
ステップS22に於いて、検知部122は、活動記録DB153(図7)の活動記録ID153a=5〜8のレコード中に、検知ルールDB154(図8)の検知ルールID154a=1〜3のレコードに該当するものが有るか否かを判断し、検体11がマルウェアであるか否かを判定する。
ステップS23に於いて、検知部122は、解析シナリオDB151(図5)の解析管理ID151a=2のレコードの検知結果151gに「非マルウェア」を設定して、図14の処理を終了する。
In step S22, the detection unit 122 corresponds to the record of the
In step S23, the detection unit 122 sets “non-malware” to the
第3回目の解析に於いて、制御装置100の制御部121がステップS15(図13)の処理を行うと、制御装置100の検知部122は、検知部処理を行う。
ステップS20に於いて、検知部122は、クライアント側実行結果30を受信して、活動記録DB153(図7)の活動記録ID153a=9,10,12のレコードとして保存する。
ステップS21に於いて、検知部122は、サーバ側実行結果40を受信して、活動記録DB153(図7)の活動記録ID153a=11,13のレコードとして保存する。
In the third analysis, when the
In step S20, the detection unit 122 receives the client-
In step S21, the detection unit 122 receives the server-
ステップS22に於いて、検知部122は、活動記録DB153(図7)の活動記録ID153a=9〜13のレコード中に、検知ルールDB154(図8)の検知ルールID154a=1〜3のレコードに該当するものがあるか否かを検索する。すると、活動記録ID153a=13のレコードの活動データ153fに「target=evil&money=\1000000」とあり、これは、evilというユーザに\1000000を振り込む通信を示している。しかし、解析管理ID153b=3の解析シナリオDB151レコードで指定したサイトID152a=サイトZの操作手順(4)には「ユーザdaveに\1000を振り込む」旨が記録されており、振込先と振込金額とが異なっている。このため、検知部122は、検知ルールID154a=1のレコードの検知内容154bを適用し、当該検体Aを「マルウェア」と判断する。
ステップS23において、検知部122は、解析管理ID151a=3の解析シナリオDB151レコードの検知結果151gに「マルウェア」を設定し、図14の処理を終了する。
In step S22, the detection unit 122 corresponds to the record of the
In step S23, the detection unit 122 sets “malware” in the
なお、検知ルールDB154(図8)検知ルールID154a=2のレコードは、活動記録ID153a=12の活動記録DB153レコードに適合する。検知ルールDB154(図8)の検知ルールID154a=3のレコードは、活動記録DB153(図8)の活動記録ID153a=10のレコードに適合する。しかし、優先度が高い検知ルールID154a=1のレコードが適用されるため、判定結果は「マルウェア」となる。
The record of the detection rule DB 154 (FIG. 8)
図15は、本実施形態に於けるクライアント制御部処理を示すフローチャートである。
ステップS30に於いて、クライアント制御部221は、制御装置100からクライアント制御命令10を受信する。
ステップS31に於いて、クライアント制御部221は、ブラウザ監視部223を起動し、ブラウザ監視部処理(図17)を行わせる。
FIG. 15 is a flowchart showing client control unit processing in the present embodiment.
In step S <b> 30, the
In step S31, the
ステップS32に於いて、クライアント制御部221は、ブラウザ操作部222を起動する。クライアント制御部221は更に、クライアント制御命令10に含まれる検体11および動作シナリオ12をブラウザ操作部222に渡す。
ステップS33に於いて、クライアント制御部221は、ブラウザ操作部222の処理が終了するまで待機する。
ステップS34に於いて、クライアント制御部221は、サーバ装置300に操作完了通知70を送信する。
ステップS35に於いて、クライアント制御部221は、ブラウザ監視部223の処理が終了するまで待機する。
ステップS36に於いて、クライアント制御部221は、ブラウザ監視部223からクライアント側実行結果30を取得する。
ステップS37に於いて、クライアント制御部221は、当該クライアント側実行結果30を、制御装置100に送信する。
ステップS38に於いて、クライアント制御部221は、実行環境イメージ271を使用して、クライアント装置200内の各プログラムを、検体11の実行前の状態に復旧する。クライアント制御部221は、ステップS38の処理が終了すると、図15の処理を終了する。
In step S <b> 32, the
In step S33, the
In step S <b> 34, the
In step S35, the
In step S 36, the
In step S <b> 37, the
In step S <b> 38, the
図16は、本実施形態に於けるブラウザ操作部処理を示すフローチャートである。
クライアント制御部221が、クライアント制御部処理(図15)のステップS32の処理を実行すると、図16のブラウザ操作部処理が起動する。
ステップS40に於いて、ブラウザ操作部222は、検体11を実行する。
ステップS41に於いて、ブラウザ操作部222は、ブラウザ部224を起動する。
ステップS42〜S44に於いて、ブラウザ操作部222は、全ての動作シナリオ12の操作手順について処理を繰り返す。
ステップS43に於いて、ブラウザ操作部222は、動作シナリオ12の当該操作手順に従い、ブラウザ部224を操作する。
ステップS44に於いて、ブラウザ操作部222は、全ての動作シナリオ12の操作手順が完了したか否かを判断する。ブラウザ操作部222は、当該判断条件が成立していない場合には、ステップS42の処理に戻り、当該判断条件が成立している場合には、図16の処理を終了する。
FIG. 16 is a flowchart showing browser operation unit processing in the present embodiment.
When the
In step S40, the
In step S41, the
In steps S42 to S44, the
In step S43, the
In step S44, the
図17は、本実施形態に於けるブラウザ監視部処理を示すフローチャートである。
クライアント制御部221が、クライアント制御部処理(図15)のステップS31の処理を実行すると、図17のブラウザ監視部処理が起動する。
ステップS50に於いて、ブラウザ監視部223は、ブラウザ監視ルールDB251を読み取り、監視処理を実行する。
ステップS51に於いて、ブラウザ監視部223は、ブラウザ操作部222の終了を検知したか否かを判断する。ブラウザ監視部223は、当該判断条件が成立しなかったならば(No)、ステップS50の処理に戻り、当該判断条件が成立したならば(Yes)、ステップS52の処理を行う。
ステップS52に於いて、ブラウザ監視部223は、これまでに記録された活動記録をクライアント制御部221に送信し、図17の処理を終了する。
FIG. 17 is a flowchart showing browser monitoring processing in the present embodiment.
When the
In step S50, the
In step S51, the
In step S52, the
図18は、本実施形態に於けるサーバ制御部処理を示すフローチャートである。
サーバ装置300が起動し、サーバ制御部321が受信待ち状態になると、図18の処理が開始する。
ステップS60に於いて、サーバ制御部321は、サーバ制御命令20を制御装置100より受信する。サーバ制御部321は、サーバ制御命令20に含まれるWEBサイト構成ファイル21を、WEBサイト保存装置370に保存する。
ステップS61に於いて、サーバ制御部321は、WEBサイト監視部322を起動する。
ステップS62に於いて、サーバ制御部321は、WEBサーバ部323を起動する。WEBサーバ部323は、WEBサイト構成ファイル21を読み取り、WEBサイトを立ち上げる。
ステップS63に於いて、サーバ制御部321は、クライアント装置200から操作完了通知70を受信するまで待機する。
FIG. 18 is a flowchart showing server control unit processing in the present embodiment.
When the
In step S <b> 60, the server control unit 321 receives the
In step S61, the server control unit 321 activates the WEB site monitoring unit 322.
In step S62, the server control unit 321 activates the
In step S <b> 63, the server control unit 321 waits until an
ステップS64に於いて、サーバ制御部321は、WEBサイト監視部322に終了信号を通知して停止させる。
ステップS65に於いて、サーバ制御部321は、WEBサイト監視部322から活動記録であるサーバ側実行結果40を取得する。
ステップS66に於いて、サーバ制御部321は、サーバ側実行結果40を制御装置100に送信し、図18の処理を終了する。
In step S64, the server control unit 321 notifies the WEB site monitoring unit 322 of an end signal and stops it.
In step S <b> 65, the server control unit 321 acquires the server-
In step S66, the server control unit 321 transmits the server-
図19は、本実施形態に於けるWEBサイト監視部処理を示すフローチャートである。
サーバ制御部321が、サーバ制御部処理(図18)のステップS61の処理を実行すると、当該WEBサイト監視部処理が起動する。
ステップS70に於いて、WEBサイト監視部322は、WEBサイト監視ルールDB351を読み取り、監視処理を実行する。
ステップS71に於いて、WEBサイト監視部322は、サーバ制御部321から終了信号を検知したか否かを判断する。ブラウザ監視部223は、当該判断条件が成立しなかったならば(No)、ステップS70の処理に戻り、当該判断条件が成立したならば(Yes)、ステップS72の処理を行う。
ステップS72に於いて、WEBサイト監視部322は、これまでに記録された活動記録をサーバ制御部321に通知し、図19の処理を終了する。
FIG. 19 is a flowchart showing a WEB site monitoring unit process in the present embodiment.
When the server control unit 321 executes the process of step S61 of the server control unit process (FIG. 18), the WEB site monitoring unit process is activated.
In step S70, the WEB site monitoring unit 322 reads the WEB site
In step S71, the WEB site monitoring unit 322 determines whether an end signal is detected from the server control unit 321. If the determination condition is not satisfied (No), the
In step S72, the WEB site monitoring unit 322 notifies the server control unit 321 of the activity records recorded so far, and ends the process of FIG.
(本実施形態の効果)
以上説明した本実施形態では、次の(A)〜(D)のような効果がある。
(Effect of this embodiment)
The present embodiment described above has the following effects (A) to (D).
(A) 計算機が特定の処理を行った場合にのみ活動を行うプログラムに対し、効率的な解析が可能となる。 (A) An efficient analysis is possible for a program that is active only when a computer performs a specific process.
(B) 実際に運用されているシステムのサーバ装置に対する検体11の挙動ではなく、このプログラム解析システム1内で評価用として稼働しているサーバ装置300に、実際に運用されているシステムと同一のWEBサイト構成ファイル21を送信している。これにより、実際に運用されているシステムに対する検体11の挙動と同一の挙動を取得できると共に、実際に運用されているシステムに対する悪影響を抑止することができる。
(B) The behavior of the
(C) プログラム解析システム1に於いて、制御装置100は、クライアント側実行結果30と、サーバ側実行結果40とを総合的に解析して、マルウェアであるか否かを判断している。これにより、クライアント側実行結果30のみを解析するよりも、的確にマルウェアであることを判断することができる。
(C) In the
(D) プログラム解析システム1に於いて、制御装置100は、再解析ルールDB155に基づいて、繰り返し検体11のプログラムを解析している。これにより、マルウェアであるか否かの判断の確実性を向上することができる。
(D) In the
(変形例)
本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で、変更実施が可能である。この利用形態や変形例としては、例えば、次の(a)〜(c)のようなものがある。
(Modification)
The present invention is not limited to the above embodiment, and can be modified without departing from the spirit of the present invention. For example, the following forms (a) to (c) are available as usage forms and modifications.
(a) 本実施形態の制御装置100は、WEBサイトを1つずつサーバ装置300に構築し、検体11を実行して解析を行っている。しかし、これに限られず、制御装置100は、複数のWEBサイトを同時に構築し、クライアント装置200から連続してアクセスしてもよい。これにより、複数のWEBサイトを同時にテストでき、解析時間を短縮することができる。
(A) The
(b) ラインL1〜L6は、何れも物理的な情報の伝達手段として通信ネットワーク400を媒介している。しかし、これに限られず、ラインL1〜L6は、外部記憶装置などを経由して、物理的な情報の伝達が行われるものであってもよい。
(B) Each of the lines L1 to L6 mediates the
(c) プログラム解析システム1に於いて、制御装置100は、所定の優先度情報に基づいて、検体11の解析環境の順序を決定してもよい。これにより、解析環境の重要度に応じて、マルウェアであるか否かを判定することができる。
(C) In the
(d) 検体保存装置170に保存されている検体11から任意のものが自動的に選択され、制御部121が制御前処理を開始してもよい。
(D) Any one of the
1 プログラム解析システム
10 クライアント制御命令
11 検体 (検体プログラム)
12 動作シナリオ
20 サーバ制御命令
21 WEBサイト構成ファイル
30 クライアント側実行結果
40 サーバ側実行結果
50 リクエスト
60 レスポンス
70 操作完了通知
100 制御装置
110 装置本体
120 CPU
121 制御部
122 検知部
130 メモリ
131 制御プログラム
132 検知プログラム
140 インタフェース
150 外部記憶装置 (記憶部)
151 解析シナリオDB
152 WEBサイトDB
153 活動記録DB
154 検知ルールDB
155 再解析ルールDB
160 バス
170 検体保存装置
180 WEBサイト保存装置
190 入出力装置
200 クライアント装置
210 装置本体
220 CPU
220 処理部
221 クライアント制御部
222 ブラウザ操作部
223 ブラウザ監視部
224 ブラウザ部 (ブラウザ)
250 外部記憶装置
251 ブラウザ監視ルールDB
270 イメージ保存装置
271 実行環境イメージ
300 サーバ装置
320 CPU
321 サーバ制御部
322 WEBサイト監視部
323 WEBサーバ部
350 外部記憶装置
351 WEBサイト監視ルールDB
370 WEBサイト保存装置
400 通信ネットワーク
500 通信ネットワーク
1
12
121 Control Unit 122 Detection Unit 130
151 Analysis scenario DB
152 WEB site DB
153 Activity record DB
154 Detection rule DB
155 Reanalysis rule DB
220
250
270
321 Server control unit 322 WEB
370 WEB
Claims (11)
前記制御装置の指令に基づいてブラウザの動作シナリオを実行し、前記検体プログラムの挙動を記録するクライアント装置と、
前記制御装置の指令に基づき前記クライアント装置と通信を行って挙動を記録するサーバ装置と、
を備え、
前記制御装置は、
前記クライアント装置の前記ブラウザの前記動作シナリオ、および、前記サーバ装置のサーバ構成情報を組み合わせた情報を格納する解析データベースを備えた記憶部と、
前記クライアント装置および前記サーバ装置に命令を送信して解析処理を行う制御部と、
前記クライアント装置および前記サーバ装置から受信した記録を基に、前記検体プログラムの属性を解析する検知部と、
を備えることを特徴とするプログラム解析システム。 A control device that operates the sample program and analyzes its behavior;
A client device that executes a browser operation scenario based on a command from the control device and records the behavior of the sample program;
A server device that records behavior by communicating with the client device based on a command of the control device;
Equipped with a,
The control device includes:
A storage unit comprising an analysis database for storing information obtained by combining the operation scenario of the browser of the client device and server configuration information of the server device;
A control unit that transmits an instruction to the client device and the server device to perform analysis processing;
Based on the records received from the client device and the server device, a detection unit for analyzing the attribute of the sample program,
A program analysis system comprising:
前記動作シナリオを前記クライアント装置に対して送信し、前記動作シナリオと組み合わせて格納された前記サーバ構成情報を前記サーバ装置に対して送信する、
ことを特徴とする請求項1に記載のプログラム解析システム。 The controller is
Transmitting the operation scenario to the client device and transmitting the server configuration information stored in combination with the operation scenario to the server device;
The program analysis system according to claim 1 .
前記制御装置との通信を行うクライアント制御部と、
前記制御装置から指定された前記動作シナリオに従って前記ブラウザを操作するブラウザ操作部と、
当該クライアント装置を監視して特定の事象をクライアント実行結果として記録するブラウザ監視部と、を備える、
ことを特徴とする請求項2に記載のプログラム解析システム。 The client device is
A client control unit for communicating with the control device;
A browser operation unit for operating the browser according to the operation scenario specified by the control device;
A browser monitoring unit that monitors the client device and records a specific event as a client execution result,
The program analysis system according to claim 2 .
前記制御装置の前記制御部から送信された前記サーバ構成情報に基づき、当該サーバ装置のサーバ機能を構築するサーバ制御部と、
前記クライアント装置のリクエストを監視して、所定事象をサーバ実行結果として記録するWEBサイト監視部と、を備える、
ことを特徴とする請求項2に記載のプログラム解析システム。 The server device
Based on the server configuration information transmitted from the control unit of the control device, a server control unit that constructs a server function of the server device,
A WEB site monitoring unit that monitors a request from the client device and records a predetermined event as a server execution result;
The program analysis system according to claim 2 .
ことを特徴とする請求項4に記載のプログラム解析システム。 The detection unit receives the server execution result from the server device, detects an inconsistency between the operation scenario and the server execution result, and detects an attribute of the sample program;
The program analysis system according to claim 4 .
ことを特徴とする請求項3に記載のプログラム解析システム。 The detection unit receives and analyzes the client execution result from the client device, and detects an attribute of the sample program.
The program analysis system according to claim 3 .
ことを特徴とする、請求項1に記載のプログラム解析システム。 The control unit commands reanalysis processing based on the detection result of the sample program by the detection unit.
The program analysis system according to claim 1 , wherein:
ことを特徴とする請求項7に記載のプログラム解析システム。 The control unit commands reanalysis processing until the detection result of the sample program by the detection unit is positive or negative for a certain number of times.
The program analysis system according to claim 7 .
前記制御部は、前記優先度情報に基づき、前記検体プログラムの挙動の解析に用いる前記動作シナリオおよび前記サーバ構成情報の組み合わせを決定する、
ことを特徴とする請求項2に記載のプログラム解析システム。 The analysis database further stores priority information for each combination of the operation scenario and the server configuration information,
The control unit determines a combination of the operation scenario and the server configuration information used for analyzing the behavior of the sample program based on the priority information.
The program analysis system according to claim 2 .
ことを特徴とする請求項2に記載のプログラム解析システム。 The control unit processes a plurality of analyzes in parallel by transmitting a plurality of combinations of the operation scenario and the server configuration information to each combination of the client device and the server device.
The program analysis system according to claim 2 .
ことを特徴とする請求項3に記載のプログラム解析システム。 The client control unit has a function of restoring the client device to a state before the execution of the sample program after completion of the execution of the operation scenario.
The program analysis system according to claim 3 .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012086942A JP5892840B2 (en) | 2012-04-06 | 2012-04-06 | Program analysis system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012086942A JP5892840B2 (en) | 2012-04-06 | 2012-04-06 | Program analysis system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013218444A JP2013218444A (en) | 2013-10-24 |
JP5892840B2 true JP5892840B2 (en) | 2016-03-23 |
Family
ID=49590486
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012086942A Expired - Fee Related JP5892840B2 (en) | 2012-04-06 | 2012-04-06 | Program analysis system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5892840B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150379268A1 (en) * | 2014-06-27 | 2015-12-31 | Prabhat Singh | System and method for the tracing and detection of malware |
US10050798B2 (en) | 2015-02-06 | 2018-08-14 | Mitsubishi Electric Corporation | Cryptographic block identification apparatus, cryptographic block identification method, and non-transitory computer readable recording medium storing cryptographic block identification program |
JP6984114B2 (en) * | 2016-10-14 | 2021-12-17 | 日本電気株式会社 | E-mail monitoring device, terminal device, e-mail monitoring method, and e-mail monitoring program |
WO2021124528A1 (en) * | 2019-12-19 | 2021-06-24 | 三菱電機株式会社 | Incident response assistant system, incident response assistant method, and incident response assistant program |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4755658B2 (en) * | 2008-01-30 | 2011-08-24 | 日本電信電話株式会社 | Analysis system, analysis method and analysis program |
-
2012
- 2012-04-06 JP JP2012086942A patent/JP5892840B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013218444A (en) | 2013-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11868242B1 (en) | Method, apparatus, and computer program product for predictive API test suite selection | |
US11570185B2 (en) | Insider attack resistant system and method for cloud services integrity checking | |
US10033748B1 (en) | System and method employing structured intelligence to verify and contain threats at endpoints | |
KR102641847B1 (en) | Discovery and mapping of cloud-based authentication, authorization, and user management services | |
US8768964B2 (en) | Security monitoring | |
US8695027B2 (en) | System and method for application security assessment | |
TWI575397B (en) | Point-wise protection of application using runtime agent and dynamic security analysis | |
US10904267B2 (en) | Non-intrusive threat detection in a computer network | |
US20220210202A1 (en) | Advanced cybersecurity threat mitigation using software supply chain analysis | |
JP2014115833A (en) | Method for inhibiting continuous unauthorized access | |
US11533325B2 (en) | Automatic categorization of IDPS signatures from multiple different IDPS systems | |
US10440050B1 (en) | Identifying sensitive data on computer networks | |
JP5892840B2 (en) | Program analysis system | |
US20230065845A1 (en) | Automated runbook operation recommendations | |
JP2014179025A (en) | Connection destination information extraction device, connection destination information extraction method, and connection destination information extraction program | |
US20190235984A1 (en) | Systems and methods for providing predictive performance forecasting for component-driven, multi-tenant applications | |
JP2008015733A (en) | Log management computer | |
Eberendu et al. | A systematic literature review of software vulnerability detection | |
US11418570B2 (en) | Robust computing device identification framework | |
US9398041B2 (en) | Identifying stored vulnerabilities in a web service | |
JP6084688B2 (en) | Data conversion method and apparatus | |
JP2016192139A (en) | Malware analyzer and malware analysis method | |
Ward et al. | Analysis of Identity Access Management Controls in IoT Systems | |
Elsbroek et al. | Fidius: Intelligent support for vulnerability testing | |
US9438607B2 (en) | Information processing apparatus and verification control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150210 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151007 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151124 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160121 |
|
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: 20160209 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160223 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5892840 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |