(57)【特許請求の範囲】
【請求項１】
検体プログラムを動作させて、その挙動を解析する制御装置と、
前記制御装置の指令に基づいてブラウザの動作シナリオを実行し、前記検体プログラムの挙動を記録するクライアント装置と、
前記制御装置の指令に基づき前記クライアント装置と通信を行って挙動を記録するサーバ装置と、
を備え、
前記制御装置は、
前記クライアント装置の前記ブラウザの前記動作シナリオ、および、前記サーバ装置のサーバ構成情報を組み合わせた情報を格納する解析データベースを備えた記憶部と、
前記クライアント装置および前記サーバ装置に命令を送信して解析処理を行う制御部と、
前記クライアント装置および前記サーバ装置から受信した記録を基に、前記検体プログラムの属性を解析する検知部と、
を備えることを特徴とするプログラム解析システム。
【請求項２】
前記制御部は、
前記動作シナリオを前記クライアント装置に対して送信し、前記動作シナリオと組み合わせて格納された前記サーバ構成情報を前記サーバ装置に対して送信する、
ことを特徴とする請求項１に記載のプログラム解析システム。
【請求項３】
前記クライアント装置は、
前記制御装置との通信を行うクライアント制御部と、
前記制御装置から指定された前記動作シナリオに従って前記ブラウザを操作するブラウザ操作部と、
当該クライアント装置を監視して特定の事象をクライアント実行結果として記録するブラウザ監視部と、を備える、
ことを特徴とする請求項２に記載のプログラム解析システム。
【請求項４】
前記サーバ装置は、
前記制御装置の前記制御部から送信された前記サーバ構成情報に基づき、当該サーバ装置のサーバ機能を構築するサーバ制御部と、
前記クライアント装置のリクエストを監視して、所定事象をサーバ実行結果として記録するＷＥＢサイト監視部と、を備える、
ことを特徴とする請求項２に記載のプログラム解析システム。
【請求項５】
前記検知部は、前記サーバ実行結果を前記サーバ装置より受信し、前記動作シナリオと前記サーバ実行結果との間の不整合を検出して、前記検体プログラムの属性を検知する、
ことを特徴とする請求項４に記載のプログラム解析システム。
【請求項６】
前記検知部は、前記クライアント実行結果を前記クライアント装置より受信して分析し、前記検体プログラムの属性を検知する、
ことを特徴とする請求項３に記載のプログラム解析システム。
【請求項７】
前記制御部は、前記検知部による前記検体プログラムの検知結果に基づいて、再解析処理を指令する、
ことを特徴とする、請求項１に記載のプログラム解析システム。
【請求項８】
前記制御部は、前記検知部による前記検体プログラムの検知結果が、陽性、または、一定回数以上陰性となるまで、再解析処理を指令する、
ことを特徴とする請求項７に記載のプログラム解析システム。
【請求項９】
前記解析データベースには更に、前記動作シナリオおよび前記サーバ構成情報の各組み合わせに対する優先度情報が格納され、
前記制御部は、前記優先度情報に基づき、前記検体プログラムの挙動の解析に用いる前記動作シナリオおよび前記サーバ構成情報の組み合わせを決定する、
ことを特徴とする請求項２に記載のプログラム解析システム。
【請求項１０】
前記制御部は、前記動作シナリオおよび前記サーバ構成情報の複数の組み合わせを前記クライアント装置および前記サーバ装置の各組み合わせに送信することで、複数の解析を並行処理する、
ことを特徴とする請求項２に記載のプログラム解析システム。
【請求項１１】
前記クライアント制御部は、前記動作シナリオの実行終了後に、前記クライアント装置を、前記検体プログラムの実行前の状態に復旧する機能を有する、
ことを特徴とする請求項３に記載のプログラム解析システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータプログラムの挙動を解析するプログラム解析システムに関する。
【背景技術】
【０００２】
ソースコードを用いずに、コンピュータプログラムの挙動を解析する方法として、静的解析と動的解析の２種類が知られている。静的解析とは、プログラムのファイルに記述されている命令コードを分析することで、挙動を調査するものである。動的解析とは、プログラムを計算機上で実行し、当該実行時のプログラムの振る舞いを観測することで、挙動を調査するものである。
【０００３】
プログラムによっては、静的解析を阻止するために様々な防御策が講じられているものがある。特に、昨今のマルウェア（malware：コンピュータウイルスやスパイウェアなどの不正プログラム）は、静的解析を阻止するために、ファイルが難読化されている場合や、ファイルが暗号化されている場合が多い。そのため、静的解析による調査には、ファイル構造の解読や復号化に長い時間と熟練した技術者とを必要とする。
【０００４】
一方、動的解析は、実行時のプログラムの振る舞いを観測して、挙動を調査するため、ファイルの難読化や暗号化による影響を受けにくく、比較的短時間に解析を完了することができるという効果がある。
【０００５】
そのため、近年では、特許文献１、特許文献２など、動的解析の処理を自動化して効率的な解析を実現するシステムの研究開発が進んでいる。これらのシステムでは、実行環境でマルウェアを実行し、一定時間内に観測された挙動（たとえば、マルウェアのファイルアクセスやネットワーク通信）を取得して解析する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−１８１３３５号公報
【特許文献２】特開２００９−３７５４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、プログラムによっては、自身が実行される環境が特定の処理を行う場合にのみ、活発な活動を行うものがある。例えば、マルウェアの中には、計算機が、銀行のＷＥＢ（World Wide Web）サイトなどにアクセスしたときのみ活動を開始し、ユーザアカウントを窃取し、ユーザの入力内容を改ざんするものがある。このため、特許文献１、特許文献２に示されているプログラム解析システムのように、プログラムを計算機上で実行して、その挙動を解析するのみでは、プログラムの特徴を十分に解析することは難しい。
【０００８】
そこで、本発明は、計算機が特定の処理を行った場合に活動を行うプログラムに対する効率的な解析を可能とするシステムを提供することを課題とする。
【課題を解決するための手段】
【０００９】
前記した課題を解決するため、本発明の請求項１に記載の発明では、検体プログラムを動作させて、その挙動を解析する制御装置と、前記制御装置の指令に基づいてブラウザの動作シナリオを実行し、前記検体プログラムの挙動を記録するクライアント装置と、前記制御装置の指令に基づき前記クライアント装置と通信を行って挙動を記録するサーバ装置と、を備え、前記制御装置は、前記クライアント装置の前記ブラウザの前記動作シナリオ、および、前記サーバ装置のサーバ構成情報を組み合わせた情報を格納する解析データベースを備えた記憶部と、前記クライアント装置および前記サーバ装置に命令を送信して解析処理を行う制御部と、前記クライアント装置および前記サーバ装置から受信した記録を基に、前記検体プログラムの属性を解析する検知部と、を備えることを特徴とするプログラム解析システムとした。
その他の手段については、発明を実施するための形態のなかで説明する。
【発明の効果】
【００１０】
本発明によれば、計算機が特定の処理を行った場合に活動を行うプログラムに対する効率的な解析を可能とするシステムを提供することが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態に於けるプログラム解析システムを示す概略の構成図である。
【図２】本実施形態に於ける制御装置を示す概略の構成図である。
【図３】本実施形態に於けるクライアント装置を示す概略の構成図である。
【図４】本実施形態に於けるサーバ装置を示す概略の構成図である。
【図５】本実施形態に於ける解析シナリオＤＢを示す図である。
【図６】本実施形態に於けるＷＥＢサイトＤＢを示す図である。
【図７】本実施形態に於ける活動記録ＤＢを示す図である。
【図８】本実施形態に於ける検知ルールＤＢを示す図である。
【図９】本実施形態に於ける再解析ルールＤＢを示す図である。
【図１０】本実施形態に於けるブラウザ監視ルールＤＢを示す図である。
【図１１】本実施形態に於けるＷＥＢサイト監視ＤＢを示す図である。
【図１２】本実施形態に於けるプログラム解析処理のシーケンス図である。
【図１３】本実施形態に於ける制御部が実行する制御前処理を示すフローチャートである。
【図１４】本実施形態に於ける検知部処理を示すフローチャートである。
【図１５】本実施形態に於けるクライアント制御部処理を示すフローチャートである。
【図１６】本実施形態に於けるブラウザ操作部処理を示すフローチャートである。
【図１７】本実施形態に於けるブラウザ監視部処理を示すフローチャートである。
【図１８】本実施形態に於けるサーバ制御部処理を示すフローチャートである。
【図１９】本実施形態に於けるＷＥＢサイト監視部処理を示すフローチャートである。
【発明を実施するための形態】
【００１２】
（本実施形態の構成）
【００１３】
図１は、本実施形態に於けるプログラム解析システムを示す概略の構成図である。
プログラム解析システム１は、制御装置１００と、クライアント装置２００と、サーバ装置３００と、通信ネットワーク４００と、通信ネットワーク５００とを備えている。
本実施形態のプログラム解析システム１は、後記する検体１１が、マルウェアであるか否かを解析するものである。ここでマルウェアとは、不正かつ有害な動作を行う意図で作成された悪意のあるソフトウェアであり、例えば、ＷＥＢブラウザに感染して、ユーザが特定のＷＥＢサイトにアクセスした際に、ユーザ入力の窃取や改ざんを行うものである。プログラム解析システム１は、制御装置１００、クライアント装置２００、および、サーバ装置３００が、通信ネットワーク４００を介して連携して、このマルウェアを解析する。
【００１４】
制御装置１００は、例えば、１台以上のコンピュータやワークステーションなどの計算機である。制御装置１００は、プログラム解析システム１に於いて、マルウェアの挙動を解析する処理を行う。制御装置１００は、解析対象となるマルウェア（以後、検体と記載している場合がある）、および、その解析手順を決定し、クライアント装置２００およびサーバ装置３００に指令する。制御装置１００は、通信ネットワーク４００を介して、クライアント装置２００およびサーバ装置３００に接続されている。
制御装置１００の構成は、後記する図２で説明する。
【００１５】
クライアント装置２００は、例えば、１台以上のコンピュータやワークステーションなどの計算機である。クライアント装置２００は、制御装置１００から送信された指令に基づいて、検体１１の実行およびＷＥＢブラウザの動作シナリオの実行（操作）を行い、検体１１の挙動を記録する。クライアント装置２００は、通信ネットワーク５００を介して、サーバ装置３００と通信を行う。クライアント装置２００の構成は、後記する図３で説明する。
【００１６】
サーバ装置３００は、例えば、１台以上のコンピュータやワークステーションなどの計算機である。サーバ装置３００は、制御装置１００から送信された指令に基づいてＷＥＢサイトを構築し、通信ネットワーク５００を介して、クライアント装置２００と通信を行って挙動を記録する。サーバ装置３００の構成は、後記する図４で説明する。
【００１７】
通信ネットワーク４００は、例えば、ＷＡＮ（World Area Network）、ＬＡＮ（Local Area Network）、携帯電話、ＰＨＳ（Personal Handy-phone System）などの公衆回線網である。制御装置１００と、クライアント装置２００、サーバ装置３００との間の通信は、通信ネットワーク４００を介して行われる。
【００１８】
通信ネットワーク５００は、例えば、ＷＡＮ、ＬＡＮ、携帯電話、ＰＨＳなどの公衆回線網である。クライアント装置２００とサーバ装置３００との間の通信は、通信ネットワーク５００を介して行われる。クライアント装置２００は、通信ネットワーク５００を介して、例えばインターネットなどの外部ネットワークに接続された装置と、通信することもできる。
【００１９】
ラインＬ１は、制御装置１００からクライアント装置２００への情報の流れを示すものである。ラインＬ２は、制御装置１００からサーバ装置３００への情報の流れを示すものである。ラインＬ３は、クライアント装置２００から制御装置１００への情報の流れを示すものである。ラインＬ４は、サーバ装置３００から制御装置１００への情報の流れを示すものである。ラインＬ１〜Ｌ４は、物理的な情報の伝達手段として、通信ネットワーク４００を用いている。
【００２０】
ラインＬ１とは、クライアント制御命令１０が、制御装置１００からクライアント装置２００に伝達される情報の流れである。クライアント制御命令１０は、解析対象となる検体１１と、動作シナリオ１２とを含んでいる。本実施形態のプログラム解析システム１は、クライアント装置２００内のＷＥＢブラウザに対して、クライアント制御命令１０の動作シナリオ１２で指定された操作を行った場合の検体１１の挙動に基づいて、マルウェアの検出を行う。
【００２１】
ラインＬ２とは、サーバ制御命令２０が、制御装置１００からサーバ装置３００に伝達される情報の流れである。サーバ制御命令２０は、ＷＥＢサイト構成ファイル２１を含んでいる。サーバ装置３００は、ＷＥＢサイト構成ファイル２１が含んでいる情報に基づき、ＷＥＢサイトを構築する。本実施形態では、構築したＷＥＢサイトがクライアント装置２００から受信する情報に基づき、マルウェアの検出を行う。
【００２２】
ラインＬ３とは、クライアント側実行結果３０が、クライアント装置２００から制御装置１００へ伝達される情報の流れである。クライアント側実行結果３０は、クライアント制御命令１０およびサーバ制御命令２０に基づいて検体１１を解析した際に、クライアント装置２００に於いて取得された解析情報を含んでいる。
【００２３】
ラインＬ４とは、サーバ側実行結果４０が、サーバ装置３００から制御装置１００へ伝達される情報の流れである。サーバ側実行結果４０は、クライアント制御命令１０およびサーバ制御命令２０に基づいて検体１１を解析した場合に、サーバ装置３００に於いて取得された解析情報を含んでいる。
【００２４】
ラインＬ５は、クライアント装置２００からサーバ装置３００への情報の流れを示すものである。ラインＬ６は、サーバ装置３００からクライアント装置２００への情報の流れを示すものである。ラインＬ５，Ｌ６は、物理的な情報の伝達手段として、通信ネットワーク５００を用いている。
【００２５】
ラインＬ５とは、リクエスト５０および操作完了通知７０が、クライアント装置２００からサーバ装置３００へ伝達される情報の流れである。リクエスト５０は、クライアント装置２００内のＷＥＢブラウザが発行した要求文であり、サーバ装置３００内のＷＥＢサイトによって処理される。また、操作完了通知７０は、クライアント装置２００からサーバ装置３００へ、解析に必要な一連の操作を完了したことを伝達するために用いられる。
【００２６】
ラインＬ６とは、レスポンス６０が、サーバ装置３００からクライアント装置２００へ伝達される情報の流れである。レスポンス６０は、リクエスト５０に対する、サーバ装置３００内のＷＥＢサイトの応答文である。
【００２７】
本実施形態のプログラム解析システム１は、制御装置１００と、クライアント装置２００と、サーバ装置３００とを、それぞれ別の処理装置として構成している。しかし、これに限られず、これらを１つの処理装置で実現してもよく、いずれか２つを１つの処理装置で実現してもよい。また、制御装置１００が、複数のクライアント装置２００、および、複数のサーバ装置３００を管理する構成であってもよい。
【００２８】
図２は、本実施形態に於ける制御装置を示す概略の構成図である。
制御装置１００は、装置本体１１０と、入出力装置１９０とを備えている。
装置本体１１０は、ＣＰＵ（Central Processing Unit）１２０と、メモリ１３０と、インタフェース（ＩＦ）１４０と、外部記憶装置１５０と、バス１６０と、検体保存装置１７０と、ＷＥＢサイト保存装置１８０とを備えている。なお、図面などでインタフェースのことを「ＩＦ」と記載している場合がある。
【００２９】
ＣＰＵ１２０は、制御部１２１および検知部１２２を具現化している。ＣＰＵ１２０は、メモリ１３０上のソフトウェアプログラムに基づき、各種演算処理を実行するものである。ＣＰＵ１２０は、バス１６０に接続されている。
メモリ１３０は、制御プログラム１３１および検知プログラム１３２を備えている。メモリ１３０は、ＣＰＵ１２０で実行する命令が記述されたプログラムと、当該プログラムが参照するデータとを含む記憶媒体である。メモリ１３０は、バス１６０に接続されている。
【００３０】
制御部１２１は、ＣＰＵ１２０が制御プログラム１３１を実行することによって具現化される。検知部１２２は、ＣＰＵ１２０が検知プログラム１３２を実行することによって具現化される。制御部１２１は、検体１１の解析状況を管理すると共に、クライアント装置２００に、クライアント制御命令１０を送信して解析方法を指示する。制御部１２１は更に、サーバ装置３００にサーバ制御命令２０を送信し、ＷＥＢサイトの構成方法を指示する。
【００３１】
検知部１２２は、マルウェア判定に必要な情報として、クライアント装置２００からクライアント側実行結果３０を受信し、サーバ装置３００からサーバ側実行結果４０を受信する。検知部１２２は、クライアント側実行結果３０とサーバ側実行結果４０とを解析することにより、検体１１がマルウェアであるか否かを判定（検知）する。
【００３２】
インタフェース１４０は、例えば、ＬＡＮカードなどの通信機器であり、当該制御装置１００が、通信ネットワーク４００を介して通信するインタフェースである。インタフェース１４０は、バス１６０に接続されている。
【００３３】
外部記憶装置１５０は、例えば、ＨＤＤ（Hard Disk Drive）などの記憶媒体であり、解析シナリオＤＢ１５１と、ＷＥＢサイトＤＢ１５２と、活動記録ＤＢ１５３と、検知ルールＤＢ１５４と、再解析ルールＤＢ１５５とを格納するものである。外部記憶装置１５０は、バス１６０に接続されている。
【００３４】
バス１６０は、ＣＰＵ１２０と、メモリ１３０と、インタフェース１４０と、外部記憶装置１５０と、検体保存装置１７０と、ＷＥＢサイト保存装置１８０と、入出力装置１９０とを通信可能に接続するものである。
検体保存装置１７０は、例えば、ＨＤＤなどの記憶媒体であり、解析対象である検体１１を保存するものである。検体保存装置１７０は、バス１６０に接続されている。
【００３５】
ＷＥＢサイト保存装置１８０は、ＨＤＤなどの記憶媒体から構成され、ＨＴＭＬ（Hyper Text Markup Language）ファイルやＣＧＩ（Common Gateway Interface）ファイルなどで構成されたＷＥＢサイト構成ファイル２１を保存する。ＷＥＢサイト保存装置１８０は、バス１６０に接続されている。なお、ＷＥＢサイト保存装置１８０には、複数のＷＥＢサイト構成ファイル２１が保存されていてもよい。
【００３６】
入出力装置１９０は、制御装置１００に対するデータの入力、および、制御装置１００内のデータの出力を行うものである。入出力装置１９０は、例えば、キーボード、マウス、ディスプレイなどである。入出力装置１９０は、バス１６０に接続されている。
【００３７】
図３は、本実施形態に於けるクライアント装置を示す概略の構成図である。
クライアント装置２００は、装置本体２１０と、入出力装置２８０とを備えている。
装置本体２１０は、ＣＰＵ２２０と、メモリ２３０と、インタフェース２４０，２４１と、外部記憶装置２５０と、バス２６０と、イメージ保存装置２７０とを備えている。
【００３８】
ＣＰＵ２２０は、クライアント制御部２２１と、ブラウザ操作部２２２と、ブラウザ監視部２２３と、ブラウザ部２２４とを具現化している。ＣＰＵ２２０は、メモリ２３０上のソフトウェアプログラムに基づき、各種演算処理を実行するものである。ＣＰＵ２２０は、バス２６０に接続されている。
メモリ２３０は、クライアント制御プログラム２３１、ブラウザ操作プログラム２３２、ブラウザ監視プログラム２３３、ブラウザプログラム２３４を備えている。メモリ２３０は、ＣＰＵ２２０で実行する命令が記述されたプログラムと、当該プログラムが参照するデータとを含む記憶媒体である。メモリ２３０は、バス２６０に接続されている。
【００３９】
クライアント制御部２２１は、ＣＰＵ２２０がクライアント制御プログラム２３１を実行することによって具現化される。ブラウザ操作部２２２は、ＣＰＵ２２０がブラウザ操作プログラム２３２を実行することによって具現化される。ブラウザ監視部２２３は、ＣＰＵ２２０がブラウザ監視プログラム２３３を実行することによって具現化される。ブラウザ部２２４は、ＣＰＵ２２０がブラウザプログラム２３４を実行することによって具現化される。
【００４０】
クライアント制御部２２１は、当該クライアント装置２００を制御するものである。すなわちクライアント制御部２２１は、制御装置１００から、クライアント制御命令１０を受信し、制御装置１００から受信した検体１１を解析し、解析結果をクライアント側実行結果３０として送信する。
ブラウザ操作部２２２は、制御装置１００より受信した動作シナリオ１２に基づき、ブラウザ部２２４を操作するものである。
ブラウザ監視部２２３は、ブラウザ部２２４の挙動を監視するものである。
ブラウザ部２２４は、ＷＥＢブラウザとして動作し、ブラウザ操作部２２２の指示に基づく動作を行うものである。
【００４１】
インタフェース２４０は、クライアント装置２００を通信ネットワーク４００と接続する通信装置である。ＬＡＮカードなどの通信機器がこれに対応する。インタフェース２４０は、図中においてＩＦと記述することがある。同様に、インタフェース２４１は、クライアント装置２００を通信ネットワーク５００と接続するための通信装置である。インタフェース２４０，２４１は、それぞれバス２６０に接続されている。
【００４２】
外部記憶装置２５０は、ＨＤＤなどの記憶媒体から構成され、ブラウザ監視ルールＤＢ２５１を記憶する。ブラウザ監視ルールＤＢ２５１には、ブラウザ監視プログラム２３３が、ブラウザプログラム２３４のどのような活動を記録するのかが記述されている。ブラウザ監視ルールＤＢ２５１の具体的内容については後記する。
バス２６０は、ＣＰＵ２２０、メモリ２３０、インタフェース２４０、インタフェース２４１、外部記憶装置２５０、イメージ保存装置２７０、入出力装置２８０を接続する。
【００４３】
イメージ保存装置２７０は、ＨＤＤなどの記憶媒体から構成され、実行環境イメージ２７１を記憶する。イメージ保存装置２７０は、バス２６０に接続されている。
実行環境イメージ２７１は、一般的なオペレーティングシステムの構成情報を含んでいるファイルであり、ＣＰＵ２２０上で実行されると、検体１１を実行するためのソフトウェア環境を提供する。イメージ保存装置２７０には、検体１１が実行中に作成または変更したファイルやレジストリに関する情報が、一時的に保存される。
【００４４】
入出力装置２８０は、クライアント装置２００に対して、管理者によるデータの入力、およびクライアント装置２００内のデータの出力を行うための装置である。入出力装置２８０は、例えば、キーボード、マウス、ディスプレイなどである。入出力装置２８０は、バス２６０に接続されている。
【００４５】
図４は、本実施形態に於けるサーバ装置を示す概略の構成図である。
サーバ装置３００は、装置本体３１０と、入出力装置３８０から構成される。
装置本体３１０は、ＣＰＵ３２０と、メモリ３３０と、インタフェース３４０，３４１と、外部記憶装置３５０と、バス３６０と、ＷＥＢサイト保存装置３７０とを備えている。
【００４６】
ＣＰＵ３２０は、サーバ制御部３２１と、ＷＥＢサイト監視部３２２と、ＷＥＢサーバ部３２３とを具現化している。ＣＰＵ３２０は、メモリ３３０上のソフトウェアプログラムに基づき、各種演算処理を実行するものである。ＣＰＵ３２０は、バス３６０に接続されている。
【００４７】
メモリ３３０は、サーバ制御プログラム３３１と、ＷＥＢサイト監視プログラム３３２と、ＷＥＢサイトプログラム３３３とを備えている。メモリ３３０は、ＣＰＵ３２０で実行する命令が記述されたプログラムと、当該プログラムが参照するデータとを含む記憶媒体である。メモリ３３０は、バス３６０に接続されている。
【００４８】
サーバ制御プログラム３３１がＣＰＵ３２０で実行されることによって、制御装置１００と通信を行い、検体１１の解析を行う。ＷＥＢサイト監視プログラム３３２がＣＰＵ３２０で実行されることで、ＷＥＢサイトプログラム３３３の挙動を監視する。ＷＥＢサイトプログラム３３３は、ＣＰＵ３２０上で実行されることにより、ＷＥＢサーバとして動作する。
サーバ制御部３２１は、ＣＰＵ３２０がサーバ制御プログラム３３１を実行することによって具現化される。ＷＥＢサイト監視部３２２は、ＣＰＵ３２０がＷＥＢサイト監視プログラム３３２を実行することによって具現化される。ＷＥＢサーバ部３２３は、ＣＰＵ３２０がＷＥＢサイトプログラム３３３を実行することによって具現化される。
【００４９】
サーバ制御部３２１は、当該サーバ装置３００を制御し、制御装置１００から、サーバ制御命令２０を受信し、検体１１の解析が終了したならば、その解析結果をサーバ側実行結果４０として送信するものである。
ＷＥＢサイト監視部３２２は、ＷＥＢサーバ部３２３の挙動を監視するものである。
ＷＥＢサーバ部３２３は、ＷＥＢサイト構成ファイル２１を読み込んでＷＥＢサーバとして動作し、クライアント装置２００からのリクエスト５０を受信し、レスポンス６０を返すものである。
【００５０】
インタフェース３４０は、サーバ装置３００を通信ネットワーク４００と接続するための通信装置である。ＬＡＮカードなどの通信機器がこれに対応する。インタフェース３４０は、図および明細書に於いて、ＩＦと記載している場合がある。同様に、インタフェース３４１は、サーバ装置３００を通信ネットワーク５００と接続するための通信装置である。インタフェース３４０，３４１は、バス３６０に接続されている。
【００５１】
外部記憶装置３５０は、ＨＤＤなどの記憶媒体から構成され、ＷＥＢサイト監視ルールＤＢ３５１を記憶する。ＷＥＢサイト監視ルールＤＢ３５１には、ＷＥＢサイト監視プログラム３３２が、ＷＥＢサイトプログラム３３３のどのような活動を記録するのかが記述されている。ＷＥＢサイト監視ルールＤＢ３５１の具体的内容については後記する。外部記憶装置３５０は、バス３６０に接続されている。
バス３６０は、ＣＰＵ３２０と、メモリ３３０と、インタフェース３４０，３４１と、外部記憶装置３５０と、ＷＥＢサイト保存装置３７０と、入出力装置３８０とを接続する。
ＷＥＢサイト保存装置３７０は、ＨＤＤなどの記憶媒体から構成され、制御装置１００より受信したＷＥＢサイト構成ファイル２１を保存する。ＷＥＢサイト保存装置３７０は、バス３６０に接続されている。
【００５２】
入出力装置３８０は、サーバ装置３００に対して、管理者によるデータの入力、およびサーバ装置３００内のデータの出力を行うための装置である。入出力装置３８０は、例えば、キーボード、マウス、ディスプレイなどである。入出力装置３８０は、バス３６０に接続されている。
【００５３】
（処理の説明）
図５以降の図に、本システムに含まれるＤＢの構成例および各機能部のフローチャートを示す。
図５以降の図に示す各ＤＢは、以下の手順で検体１１の解析が行われた後の構成である。
【００５４】
（第１回目の解析：２０１２年１月１日午前０時０分）
２０１２年１月１日午前０時０分に、制御装置１００が、ＩＤが“検体Ａ”である検体１１の解析を開始する。解析ではまず、解析用ＷＥＢサイトとしてサイトＸを選択する。制御装置１００は、第１回目の解析を同日の午前０時１分に完了し、検体Ａを非マルウェアと判定する。
【００５５】
（第２回目の解析：２０１２年１月１日午前０時２分）
２０１２年１月１日午前０時２分に、制御装置１００は、第２回目の解析を開始し、解析用ＷＥＢサイトとして、サイトＹを選択する。制御装置１００は、第２回目の解析を同日の午前０時３分に完了し、検体Ａを非マルウェアと判定する。
【００５６】
（第３回目の解析：２０１２年１月１日午前０時４分）
制御装置１００は、第３回目の解析を開始し、解析用ＷＥＢサイトとしてサイトＺを選択する。制御装置１００は、第３回目の解析を同日午前０時５分に完了し、検体Ａをマルウェアと判定する。これにより、全ての解析処理が完了する。
【００５７】
（本実施形態の各種テーブル）
図５は、本実施形態に於ける解析シナリオＤＢを示す図である。
解析シナリオＤＢ１５１内の各レコードは、ある検体１１に関する解析を開始した時刻と、当該解析を終了した時刻と、当該解析方法と、当該解析の状況と、当該解析によって検知した結果とを記憶するものである。解析シナリオＤＢ１５１は、各レコードの欄として、解析管理ＩＤ１５１ａと、検体ＩＤ１５１ｂと、サイトＩＤ１５１ｃと、解析開始時刻１５１ｄと、解析終了時刻１５１ｅと、解析状況１５１ｆと、検知結果１５１ｇとを備えている。
【００５８】
解析管理ＩＤ１５１ａは、解析シナリオＤＢ１５１内のレコードを一意に認識するのに用いられる。このため、各解析管理ＩＤ１５１ａの値は、解析シナリオＤＢ１５１内でユニークである。
【００５９】
検体ＩＤ１５１ｂは、本システムで解析された各検体１１を一意に識別するための番号である。異なるレコードに同一の検体ＩＤ１５１ｂが設定されている場合、同一の検体１１が異なる条件で複数回、解析されたことを意味する。ここでは、同一の検体Ａが３回解析されている。
【００６０】
サイトＩＤ１５１ｃは、当該解析に用いられたＷＥＢサイトを一意に識別する識別子である。サイトＩＤ１５１ｃは、後記するＷＥＢサイトＤＢ１５２内のレコードに紐づいている。
解析開始時刻１５１ｄは、各レコードに係る当該解析の開始時刻を示している。
解析終了時刻１５１ｅは、各レコードに係る当該解析の終了時刻を示している。
解析状況１５１ｆは、検体ＩＤ１５１ｂで指定した検体１１の解析状況を示し、「解析中」または「解析完了」のいずれかの値が格納される。
検知結果１５１ｇは、各レコードで行った検体解析の検知結果を示し、「非マルウェア」、「マルウェアの可能性あり」、「マルウェア」のいずれかの値が格納される。
【００６１】
この図５には、３種類の解析シナリオのレコードの例が示されている。
解析管理ＩＤ１５１ａに「１」が格納されているレコードは、第１回目の解析の結果を示すものである。当該レコードの検体ＩＤ１５１ｂには「検体Ａ」が、サイトＩＤ１５１ｃには「サイトＸ」が格納されている。当該レコードの解析開始時刻１５１ｄには「２０１２  ０１／０１  ００：００：００」が格納され、解析終了時刻１５１ｅには「２０１２  ０１／０１  ００：０１：００」が格納されている。当該レコードの解析状況１５１ｆには「解析完了」が格納され、検知結果１５１ｇには「非マルウェア」が格納されている。
【００６２】
解析管理ＩＤ１５１ａに「２」が格納されているレコードは、第２回目の解析の結果を示すものである。当該レコードの検体ＩＤ１５１ｂには「検体Ａ」、サイトＩＤ１５１ｃには「サイトＹ」が格納されている。当該レコードの解析開始時刻１５１ｄには「２０１２  ０１／０１  ００：０２：００」が格納され、解析終了時刻１５１ｅには「２０１２  ０１／０１  ００：０３：００」が格納されている。当該レコードの解析状況１５１ｆには「解析完了」が格納され、検知結果１５１ｇには「非マルウェア」が格納されている。
【００６３】
解析管理ＩＤ１５１ａに「３」が格納されているレコードは、第３回目の解析の結果を示すものである。当該レコードの検体ＩＤ１５１ｂには「検体Ａ」が格納され、サイトＩＤ１５１ｃには「サイトＺ」が格納されている。当該レコードの解析開始時刻１５１ｄには「２０１２  ０１／０１  ００：０４：００」が格納され、解析終了時刻１５１ｅには「２０１２  ０１／０１  ００：０５：００」が格納されている。当該レコードの解析状況１５１ｆには「解析完了」が格納され、検知結果１５１ｇは「マルウェア」が格納されている。
【００６４】
これにより、プログラム解析システム１は、ＩＤが「検体Ａ」である検体１１が、サイトＺに対するマルウェアであることを判断することができる。
【００６５】
図６は、本実施形態に於けるＷＥＢサイトＤＢを示す図である。
ＷＥＢサイトＤＢ１５２内の各レコードは、ＷＥＢサイトの識別子と、当該ＷＥＢサイトに関する攻撃の容易性、当該ＷＥＢサイトを構成するＷＥＢサイト構成ファイル２１、および、当該ＷＥＢサイトにアクセスするブラウザ部２２４の操作の手順を記憶する。ＷＥＢサイトＤＢ１５２は、各レコードの欄として、サイトＩＤ１５２ａと、攻撃容易性１５２ｂと、サイト構成ファイル保存先１５２ｃと、操作手順１５２ｄとを備えている。
解析データベースであるＷＥＢサイトＤＢ１５２は、クライアント装置２００に於けるブラウザ部２２４を動作させる動作シナリオ１２、および、サーバ装置３００を構成するサイト構成ファイル保存先１５２ｃを組み合わせた情報を格納するものである。
【００６６】
サイトＩＤ１５２ａは、ＷＥＢサイトＤＢ１５２内のレコードを一意に認識するのに用いられると共に、当該レコードに係る当該ＷＥＢサイトを識別するために用いられる。このため、各サイトＩＤ１５２ａの値は、ＷＥＢサイトＤＢ１５２内でユニークである。
【００６７】
攻撃容易性１５２ｂは、マルウェアが、当該レコードに係る当該ＷＥＢサイトを攻撃する可能性を示している。攻撃容易性１５２ｂには、任意の数値が設定され、数値が高いほど、マルウェアが当該ＷＥＢサイトを攻撃する可能性が高いことを示している。
サイト構成ファイル保存先１５２ｃは、当該レコードのＷＥＢサイト構成ファイル２１の、ＷＥＢサイト保存装置１８０に於ける保存場所を示す。
操作手順１５２ｄは、当該ＷＥＢサイトにアクセスしたブラウザ部２２４に対して、ブラウザ操作部２２２が、どのような操作を行うのかを指定する。
【００６８】
この図６には、３種類のＷＥＢサイトのレコードの例が示されている。サイトＩＤ１５２ａ＝「サイトＸ」のレコードには、攻撃容易性１５２ｂ＝１００、サイト構成ファイル保存先１５２ｃ＝「Ｃ：￥ｓｔｏｒａｇｅ￥サイトＸ」が格納されている。また、操作手順１５２ｄには、以下７段階の操作手順が格納されている。
（１）Ｕｓｅｒフィールドに“ａｌｉｃｅ”，パスワードフィールドに“ｐａｓｓ”を入力
（２）“ログイン”ボタンを実行
（３）“振り込みボタン”を実行
（４）振込先フィールドに“ｂｏｂ”を、振込金額フィールドに“￥１０００”を入力
（５）“手続きボタン”を実行
（６）“確認ボタン”を実行
（７）“手続き実行ボタン”を実行
【００６９】
サイトＩＤ１５２ａ＝「サイトＹ」のレコードには、攻撃容易性１５２ｂ＝８０、サイト構成ファイル保存先１５２ｃ＝「Ｃ：￥ｓｔｏｒａｇｅ￥サイトＹ」が格納されている。また、操作手順１５２ｄには、以下５段階の操作手順が格納されている。
（１）Ｕｓｅｒフィールドに“ａｌｉｃｅ”，パスワードフィールドに“ｐａｓｓ”を入力
（２）“ｌｏｇｉｎ”ボタンを実行
（３）“Ｔｒａｎｓｆｅｒ”ボタンを実行
（４）振込先フィールドに“ｃｉｎｄｙ”を、振込金額フィールドに“＄１００”を入力、
（５）“ｓｕｂｍｉｔ”ボタンを実行
【００７０】
サイトＩＤ１５２ａ＝「サイトＺ」のレコードには、攻撃容易性１５２ｂ＝３０、サイト構成ファイル保存先１５２ｃ＝「Ｃ：￥ｓｔｏｒａｇｅ￥サイトＺ」が格納されている。また、操作手順１５２ｄには、以下７段階の操作手順が格納されている。
（１）  Ｕｓｅｒフィールドに“ａｌｉｃｅ”，パスワードフィールドに“ｐａｓｓ”を入力
（２）“ログイン”ボタンを実行
（３）“振り込みボタン”を実行
（４）振込先フィールドに“ｄａｖｅ”を、振込金額フィールドに“￥１０００”を入力
（５）“手続きボタン”を実行
（６）“確認ボタン”を実行
（７）“手続き実行ボタン”を実行
【００７１】
図７は、本実施形態に於ける活動記録ＤＢを示す図である。
活動記録ＤＢ１５３には、クライアント装置２００のブラウザ監視部２２３およびサーバ装置３００のＷＥＢサイト監視部３２２で記録された活動記録が記録される。検知部１２２は、活動記録ＤＢ１５３を参照して、検体１１がマルウェアであるか否かを判定する。
【００７２】
この図７には、１３種類の活動記録ＤＢ１５３のレコード例が示されている。活動記録ＩＤ１５３ａ＝１〜４のレコードには、解析管理ＩＤ１５３ｂ＝１の解析シナリオの実行時に記録された活動記録が格納されている。活動記録ＩＤ１５３ａ＝５〜８のレコードには、解析管理ＩＤ１５３ｂ＝２の解析シナリオの実行時に記録された活動記録が格納されている。活動記録ＩＤ１５３ａ＝９〜１３のレコードには、解析管理ＩＤ１５３ｂ＝３の解析シナリオの実行時に記録された活動記録が格納されている。
【００７３】
活動記録ＩＤ１５３ａ＝１のレコードには、解析管理ＩＤ１５３ｂ＝１、活動記録時刻１５３ｃ＝「２０１２／０１／０１  ００：００：０５」、記録場所１５３ｄ＝「クライアント」、活動種類１５３ｅ＝「ＣＰＵ使用率上昇率」、活動データ１５３ｆ＝「０．１％」が格納されている。「ＣＰＵ使用率上昇率」は、ブラウザ部２２４が使用するＣＰＵの使用率が、一定時間前（例えば、１０秒前）に比べて、どの程度上昇したかを示している。
活動記録ＩＤ１５３ａ＝２のレコードには、解析管理ＩＤ１５３ｂ＝１、活動記録時刻１５３ｃ＝「２０１２／０１／０１  ００：００：０６」、記録場所１５３ｄ＝「サーバ」、活動種類１５３ｅ＝「クライアント送信内容」、活動データ１５３ｆ＝「user=alice&password=pass」が格納されている。「クライアント送信内容」は、リクエスト５０に含まれるデータを示す。
活動記録ＩＤ１５３ａ＝３〜９は、活動記録ＩＤ１５３ａ＝１，２の場合と同様のレコードである。
活動記録ＩＤ１５３ａ＝１０のレコードには、解析管理ＩＤ１５３ｂ＝３、活動記録時刻１５３ｃ＝「２０１２／０１／０１  ００：０４：０５」、記録場所１５３ｄ＝「クライアント」、活動種類１５３ｅ＝「ソケットオープン」、活動データ１５３ｆ＝「dst=192.168.1.1」が格納されている。「ソケットオープン」は、ブラウザ部２２４が、通信ネットワーク５００を介して、「１９２．１６８．１．１」のＩＰアドレスを持つ端末に対して、通信要求を送信したことを示す情報である。活動記録ＩＤ１５３ａ＝１１〜１３は、活動記録ＩＤ１５３ａ＝１，２の場合と同様のレコードである。
【００７４】
図８は、本実施形態に於ける検知ルールＤＢを示す図である。
検知部１２２は、検知ルールＤＢ１５４と活動記録ＤＢ１５３を参照して、検体１１のマルウェア判定を行う。
検知ルールＩＤ１５４ａは、検知ルールＤＢ１５４内の各レコードを一意に識別するために用いられる。
【００７５】
検知内容１５４ｂは、検知手順を示している。検知部１２２は、ある解析管理ＩＤ１５３ｂに紐づけられる活動記録ＤＢ１５３レコードと、検知内容１５４ｂを比較し、「マルウェア」、「マルウェアの可能性あり」、「非マルウェア」のいずれかの判定を行う。判定処理では、検知ルールＩＤ１５４ａの値が小さいものから順に適用され、検知内容１５４ｂに適合する活動記録ＤＢ１５３レコードが存在した場合に、判定処理は終了する。
この図８には、４種類の検知ルールＤＢ１５４のレコード例が示されている。
【００７６】
検知ルールＩＤ１５４ａ＝１のレコードに於いて、検知内容１５４ｂには、「『クライアント送信内容』が操作手順１５２ｄで想定したものと異なる場合、『マルウェア』と判定する」が格納されている。
【００７７】
検知ルールＩＤ１５４ａ＝２のレコードに於いて、検知内容１５４ｂには、「ＷＥＢサイトアクセス時に、『ＣＰＵ使用率上昇率』が30%上昇した場合、『マルウェアの可能性あり』と判定」が格納されている。
【００７８】
検知ルールＩＤ１５４ａ＝３のレコードに於いて、検知内容１５４ｂには、「ＷＥＢサイトアクセス時に、『ソケットオープン』が発生した場合、『マルウェアの可能性あり』と判定」が格納されている。
【００７９】
検知ルールＩＤ１５４ａ＝４のレコードに於いて、検知内容１５４ｂには、「それ以外の場合、『非マルウェア』と判定」が格納されている。すなわち、活動記録ＤＢ１５３レコードの中に、検知ルールＩＤ１５４ａ＝１〜３に当てはまるものが１つもない場合、検体１１は、「非マルウェア」と判定される。
【００８０】
図９は、本実施形態に於ける再解析ルールＤＢを示す図である。
制御部１２１は、検知部１２２の検知結果と再解析ルールＤＢ１５５を参照して、検体１１の再解析を行うかどうかを判断する。
再解析ルールＩＤ１５５ａは、再解析ルールＤＢ１５５内の各レコードを一意に識別するために用いられる。
【００８１】
判定内容１５５ｂは、判定手順を示している。制御部１２１は、解析シナリオＤＢ１５１の検知結果１５１ｇと判定内容１５５ｂとを参照し、検体１１の再解析を行うべきかどうかを判断する。
この図９には、３種類の再解析ルールＤＢ１５５のレコード例が示されている。
再解析ルールＩＤ１５５ａ＝１のレコードに於いて、判定内容１５５ｂには、「検知結果が『マルウェア』の場合、最終的にマルウェアと判定し、解析を完了」が格納されている。
【００８２】
再解析ルールＩＤ１５５ａ＝２のレコードに於いて、判定内容１５５ｂには、「『マルウェアの可能性あり』が１回発生した場合、再解析を実行。２回発生した場合は、最終的にマルウェアと判定し、解析を完了」が格納されている。
【００８３】
再解析ルールＩＤ１５５ａ＝３のレコードに於いて、判定内容１５５ｂには、「検知結果が『非マルウェア』が３回発生した場合、最終的に非マルウェアと判定し、解析を完了。それ以外の場合、再解析を実行」が格納されている。
【００８４】
図１０は、本実施形態に於けるブラウザ監視ルールＤＢを示す図である。
ブラウザ監視部２２３は、ブラウザ監視ルールＤＢ２５１を参照して、ブラウザ部２２４の監視を行う。
ブラウザ監視ルールＩＤ２５１ａは、ブラウザ監視ルールＤＢ２５１内の各レコードを一意に識別するために用いられる。
監視内容２５１ｂは、ブラウザ部２２４をどのように監視するのかを規定する。
この図１０には、２種類のブラウザ監視ルールＤＢ２５１のレコード例が示されている。
【００８５】
ブラウザ監視ルールＩＤ２５１ａ＝１のレコードに於いて、監視内容２５１ｂには、「ＣＰＵ使用率上昇率を定期的に記録する」が格納されている。
ブラウザ監視ルールＩＤ２５１ａ＝２のレコードに於いて、監視内容２５１ｂには、「ソケットオープンを記録する」が格納されている。
【００８６】
図１１は、本実施形態に於けるＷＥＢサイト監視ＤＢを示す図である。
ＷＥＢサイト監視部３２２は、ＷＥＢサイト監視ルールＤＢ３５１を参照して、ＷＥＢサーバ部３２３の監視を行う。
ＷＥＢサイト監視ルールＩＤ３５１ａは、ＷＥＢサイト監視ルールＤＢ３５１内の各レコードを一意に識別するために用いられる。
監視内容３５１ｂは、ＷＥＢサーバ部３２３をどのように監視するのかを規定する。
この図１１には、１種類のＷＥＢサイト監視ルールＤＢ３５１のレコード例が示されている。
ＷＥＢサイト監視ルールＩＤ３５１ａ＝１のレコードに於いて、監視内容３５１ｂには、「クライアント送信内容を記録する」が格納されている。
【００８７】
（本実施形態の動作）
【００８８】
図１２は、本実施形態に於けるプログラム解析処理のシーケンス図である。
シーケンスＱ１０に於いて、制御装置１００は、クライアント装置２００に、クライアント制御命令１０を送信する。クライアント制御命令１０には、検体１１と動作シナリオ１２とが含まれている。これにより、クライアント装置２００は、動作シナリオ１２を実行する。
シーケンスＱ１１に於いて、制御装置１００は、サーバ装置３００に、サーバ制御命令２０を送信する。
シーケンスＱ１２に於いて、クライアント装置２００は、サーバ装置３００に、リクエスト「１」を送信する。
シーケンスＱ１３に於いて、クライアント装置２００は、サーバ装置３００から、リクエスト「１」に対するレスポンス「１」を受信する。
シーケンスＱ１４に於いて、クライアント装置２００は、サーバ装置３００に、リクエスト「２」を送信する。
シーケンスＱ１５に於いて、クライアント装置２００は、サーバ装置３００から、リクエスト「２」に対するレスポンス「２」を受信する。以下同様にして、クライアント装置２００とサーバ装置３００とは、検体１１の解析処理を実行する。
【００８９】
クライアント装置２００は、動作シナリオ１２を全て実行するとシーケンスＱ２０，Ｑ２１の処理を行う。
シーケンスＱ２０に於いて、クライアント装置２００は、サーバ装置３００に、操作完了通知７０を送信する。
シーケンスＱ２１に於いて、クライアント装置２００は、制御装置１００に、クライアント側実行結果３０を送信する。
シーケンスＱ２１に於いて、サーバ装置３００は、制御装置１００に、サーバ側実行結果４０を送信する。これにより、図１２に示すプログラム解析シーケンスは終了する。
【００９０】
図１３は、本実施形態に於ける制御装置の制御部が実行する制御前処理を示すフローチャートである。
フローチャートは、検体１１が投入されてから全ての解析が完了するまでの一連の流れを示している。解析担当者が入出力装置１９０を介して、解析対象となる検体１１を設定することにより、制御装置１００は制御前処理を開始する。
【００９１】
ステップＳ１０に於いて、制御部１２１は、検体保存装置１７０に保存された検体１１を選択する。制御部１２１は、インタフェース１４０を介して、別の端末から検体１１を選択してもよく、入出力装置１９０を介して検体１１を選択してもよい。
【００９２】
ステップＳ１１に於いて、制御部１２１は、解析シナリオＤＢ１５１に新たなレコードを作成する。制御部１２１は、当該新たなレコードの解析開始時刻１５１ｄに、レコード作成時刻を設定する。制御部１２１は更に、解析状況１５１ｆを「解析中」に設定する。制御部１２１は、当該新たなレコードのサイトＩＤ１５１ｃに、攻撃容易性１５２ｂが最も高く、かつ、未だ当該検体１１について解析されていないサイトを設定する。これにより、検体１１がマルウェアであったときには、そのことを短時間で判定することができる。
【００９３】
ステップＳ１２に於いて、制御部１２１は、ステップＳ１１で作成された解析シナリオＤＢ１５１（図５）のレコードのサイトＩＤ１５１ｃの情報に基づき、ＷＥＢサイトＤＢ１５２（図６）のサイトＩＤ１５２ａを検索して、一致するレコードを選択する。
【００９４】
ステップＳ１３に於いて、制御部１２１は、クライアント制御命令１０を、クライアント装置２００に送信する。クライアント制御命令１０に含まれる検体１１には、ステップＳ１０で選択した検体１１が設定される。クライアント制御命令１０に含まれる動作シナリオ１２には、ＷＥＢサイトＤＢ１５２（図６）の当該レコードに係る操作手順１５２ｄが設定される。
【００９５】
ステップＳ１４に於いて、制御部１２１は、サーバ制御命令２０を、サーバ装置３００に送信する。サーバ制御命令２０に含まれるＷＥＢサイト構成ファイル２１は、ＷＥＢサイトＤＢ１５２の当該レコードに係るサイト構成ファイル保存先１５２ｃで示されるものである。
ステップＳ１５に於いて、制御部１２１は、検知部１２２に検知部処理（図１４）を行わせ、検知結果を導出するまで待機する。
【００９６】
ステップＳ１６に於いて、制御部１２１は、解析シナリオＤＢ１５１（図５）に新たに作成した当該レコードと、再解析ルールＤＢ１５５（図９）の全てのレコードとを参照して、検体１１の再解析を行う必要があるか否かを判定する。制御部１２１は、当該条件が成立した場合、すなわち検体１１の判定が終了した場合には（Ｙｅｓ）、ステップＳ１１の処理に戻って再解析を行い、当該条件が成立しなかった場合、すなわち検体１１の判定が終了しない場合には（Ｎｏ）、ステップＳ１７の処理を行う。
すなわち、制御部１２１は、検知部１２２による検体１１の検知結果が、陽性、または、一定回数以上陰性となるまで、再解析処理を指示する。
【００９７】
ステップＳ１７に於いて、制御部１２１は、解析結果を出力する。制御部１２１は、解析シナリオＤＢ１５１のレコードを出力内容とし、入出力装置１９０を通じて管理者に提示してもよく、通信ネットワーク５００を介して、別の装置に送信して出力してもよい。ステップＳ１７の処理が終了すると、図１３の処理は終了する。
【００９８】
次に、図１３で行われる処理の具体例を改めて説明する。
ステップＳ１０に於いて、制御部１２１は、検体Ａを選択して、検体保存装置１７０に保存する。
ステップＳ１１に於いて、制御部１２１は、解析シナリオＤＢ１５１（図５）に、新たなレコードを作成し、解析管理ＩＤ１５１ａ＝１を設定する。制御部１２１は、当該新たなレコードに対して、検体ＩＤ１５１ｂに選択した検体Ａを設定し、解析開始時刻１５１ｄに現在の時刻の「２０１２／０１／０１  ００：００：００」を設定し、解析状況１５１ｆに「解析中」を設定する。
ステップＳ１２に於いて、制御部１２１は、ＷＥＢサイトＤＢ１５２（図６）の最初のレコードを選択し、当該レコードに係るサイトＩＤ１５２ａに設定された「サイトＸ」を、解析シナリオＤＢ１５１（図５）に作成した当該レコードのサイトＩＤ１５１ｃに設定する。
【００９９】
ステップＳ１３に於いて、制御部１２１は、クライアント制御命令１０に含まれる検体１１に検体Ａを設定し、クライアント制御命令１０に含まれる動作シナリオ１２に、ＷＥＢサイトＤＢ１５２（図６）の選択したレコードの（サイトＸの）操作手順１５２ｄを設定する。制御部１２１は、当該クライアント制御命令１０を、クライアント装置２００に送信する。
【０１００】
ステップＳ１４に於いて、制御部１２１は、サーバ制御命令２０に含まれるＷＥＢサイト構成ファイル２１に、サイトＸのサイト構成ファイル保存先１５２ｃが示すファイル群を設定する。制御部１２１は、当該サーバ制御命令２０を、サーバ装置３００に送信する。
ステップＳ１５に於いて、制御部１２１は、検知部１２２が検知結果を導出するまで待機する。
【０１０１】
ステップＳ１６に於いて、制御部１２１は、解析管理ＩＤ１５１ａ＝１のレコードの検知結果１５１ｇに「非マルウェア」が設定されているため、再解析ルールＤＢ１５５（図９）の再解析ルールＩＤ１５５ａ＝３のレコードを適用し、再解析が必要であり、検体Ａの判定が終了していないと判断する。制御部１２１は、解析管理ＩＤ１５１ａ＝１のレコードの解析終了時刻１５１ｅに「２０１２  ０１／０１  ００：０１：００」を設定し、解析状況１５１ｆに「解析完了」を設定する。更に、制御部１２１は、検体Ａの判定が終了していないため（Ｎｏ）、ステップＳ１１の処理に戻る。
【０１０２】
ステップＳ１１に戻って、制御部１２１は、解析管理ＩＤ１５１ａ＝２の解析シナリオＤＢ１５１に新たなレコードを作成する。制御部１２１は、当該新たなレコードに対して、検体ＩＤ１５１ｂに検体Ａを設定し、解析開始時刻１５１ｄに「２０１２／０１／０１  ００：０２：００」を設定し、解析状況１５１ｆに「解析中」を設定する。
ステップＳ１２に於いて、制御部１２１は、ＷＥＢサイトＤＢ１５２（図６）の第２番目のレコードを選択し、当該レコードに係るサイトＩＤ１５２ａに設定された「サイトＹ」を、解析シナリオＤＢ１５１（図５）に作成したレコードのサイトＩＤ１５１ｃに設定する。
【０１０３】
ステップＳ１３に於いて、制御部１２１は、クライアント制御命令１０に含まれる検体１１に検体Ａを設定し、クライアント制御命令１０に含まれる動作シナリオ１２にサイトＹの操作手順１５２ｄを設定する。制御部１２１は、当該クライアント制御命令１０をクライアント装置２００に送信する。
【０１０４】
ステップＳ１４に於いて、制御部１２１は、サーバ制御命令２０に含まれるＷＥＢサイト構成ファイル２１に、サイトＹのサイト構成ファイル保存先１５２ｃが示すファイル群を設定する。制御部１２１は、当該サーバ制御命令２０を、サーバ装置３００に送信する。
ステップＳ１５に於いて、制御部１２１は、検知部１２２が検知結果を導出するまで待機する。
【０１０５】
ステップＳ１６に於いて、制御部１２１は、解析管理ＩＤ１５１ａ＝２のレコードの検知結果１５１ｇに「非マルウェア」が設定されているため、再解析ルールＤＢ１５５（図９）の再解析ルールＩＤ１５５ａ＝３のレコードを適用し、再解析が必要であり、検体Ａの判定が終了してないと判断する。制御部１２１は、解析管理ＩＤ１５１ａ＝２のレコードの解析終了時刻１５１ｅに「２０１２  ０１／０１  ００：０３：００」を設定し、解析状況１５１ｆに「解析完了」を設定する。更に、制御部１２１は、検体Ａの判定が終了していないため（Ｎｏ）、ステップＳ１１の処理に戻る。
【０１０６】
ステップＳ１１に戻って、制御部１２１は、解析管理ＩＤ１５１ａ＝３の解析シナリオＤＢ１５１に新たなレコードを作成する。制御部１２１は、当該新たなレコードに対して、検体ＩＤ１５１ｂに検体Ａを設定し、解析開始時刻１５１ｄに「２０１２／０１／０１  ００：０４：００」を設定し、解析状況１５１ｆに「解析中」を設定する。
ステップＳ１２に於いて、制御部１２１は、ＷＥＢサイトＤＢ１５２（図６）の第２番目のレコードを選択し、当該レコードに係るサイトＩＤ１５２ａに設定された「サイトＺ」を、解析シナリオＤＢ１５１（図５）に作成したレコードのサイトＩＤ１５１ｃに設定する。
【０１０７】
ステップＳ１３に於いて、制御部１２１は、クライアント制御命令１０に含まれる検体１１に検体Ａを設定し、クライアント制御命令１０に含まれる動作シナリオ１２にサイトＺの操作手順１５２ｄを設定する。制御部１２１は、当該クライアント制御命令１０を、クライアント装置２００に送信する。
【０１０８】
ステップＳ１４に於いて、制御部１２１は、サーバ制御命令２０に含まれるＷＥＢサイト構成ファイル２１に、サイトＺのサイト構成ファイル保存先１５２ｃが示すファイル群を設定する。制御部１２１は、当該サーバ制御命令２０を、サーバ装置３００に送信する。
ステップＳ１５に於いて、制御部１２１は、検知部１２２が検知結果を導出するまで待機する。
【０１０９】
ステップＳ１６に於いて、制御部１２１は、解析管理ＩＤ１５１ａ＝３のレコードの検知結果１５１ｇに「マルウェア」が設定されているため、再解析ルールＤＢ１５５（図９）の再解析ルールＩＤ１５５ａ＝１のレコードを適用し、再解析は不要と判断し、検体Ａの判定が終了したと判断する。制御部１２１は、解析管理ＩＤ１５１ａ＝３のレコードの解析終了時刻１５１ｅに「２０１２  ０１／０１  ００：０５：００」を設定し、解析状況１５１ｆに「解析完了」を設定する。更に、制御部１２１は、検体Ａの判定が終了したと判断し（Ｙｅｓ）、ステップＳ１７の処理を行う。
ステップＳ１７に於いて、制御部１２１は、「検体Ａがマルウェアである」旨を管理者に通知し、図１３に示す処理を完了する。
【０１１０】
図１４は、本実施形態に於ける検知部処理（図１３のステップＳ１５）を示すフローチャートである。
第１回目の解析に於いて、制御装置１００の制御部１２１がステップＳ１５（図１３）の処理を行うと、制御装置１００の検知部１２２は、検知部処理を行う。
ステップＳ２０に於いて、検知部１２２は、クライアント装置２００からクライアント側実行結果３０を受信し、活動記録ＤＢ１５３（図７）に新たなレコードを作成して保存する。
ステップＳ２１に於いて、検知部１２２は、サーバ装置３００から、サーバ側実行結果４０を受信して、活動記録ＤＢ１５３（図７）に新たなレコードを作成して保存する。
【０１１１】
ステップＳ２２に於いて、検知部１２２は、活動記録ＤＢ１５３（図７）のレコードと検知ルールＤＢ１５４（図８）のレコードとを参照して、検体１１がマルウェアであるか否かを判定する。
ステップＳ２３に於いて、検知部１２２は、その判定結果を、解析シナリオＤＢ１５１（図５）に新たに作成したレコードの検知結果１５１ｇに記録（更新）する。
【０１１２】
次に、図１４で行われる処理の具体例を改めて説明する。
ステップＳ２０に於いて、検知部１２２は、クライアント側実行結果３０を受信して、活動記録ＤＢ１５３（図７）の活動記録ＩＤ１５３ａ＝１，３のレコードとして保存する。
ステップＳ２１に於いて、検知部１２２は、サーバ側実行結果４０を受信して、活動記録ＤＢ１５３（図７）の活動記録ＩＤ１５３ａ＝２，４のレコードとして保存する。
【０１１３】
ステップＳ２２に於いて、検知部１２２は、活動記録ＤＢ１５３（図７）の活動記録ＩＤ１５３ａ＝１〜４のレコードに、検知ルールＤＢ１５４（図８）の検知ルールＩＤ１５４ａ＝１〜３のレコードに該当するものが有るか否かを判断し、検体１１がマルウェアであるか否かを判定する。
ステップＳ２３において、検知部１２２は、解析シナリオＤＢ１５１（図５）の解析管理ＩＤ１５１ａ＝１のレコードの検知結果１５１ｇに「非マルウェア」を設定（更新）して、図１４の処理を終了する。
【０１１４】
第２回目の解析に於いて、制御装置１００の制御部１２１がステップＳ１５（図１３）の処理を行うと、制御装置１００の検知部１２２は、検知部処理を行う。
ステップＳ２０に於いて、検知部１２２は、クライアント側実行結果３０を受信して、活動記録ＤＢ１５３（図７）の活動記録ＩＤ１５３ａ＝５，７のレコードとして保存する。
ステップＳ２１に於いて、検知部１２２は、サーバ側実行結果４０を受信して、活動記録ＤＢ１５３（図７）の活動記録ＩＤ１５３ａ＝６，８のレコードとして保存する。
【０１１５】
ステップＳ２２に於いて、検知部１２２は、活動記録ＤＢ１５３（図７）の活動記録ＩＤ１５３ａ＝５〜８のレコード中に、検知ルールＤＢ１５４（図８）の検知ルールＩＤ１５４ａ＝１〜３のレコードに該当するものが有るか否かを判断し、検体１１がマルウェアであるか否かを判定する。
ステップＳ２３に於いて、検知部１２２は、解析シナリオＤＢ１５１（図５）の解析管理ＩＤ１５１ａ＝２のレコードの検知結果１５１ｇに「非マルウェア」を設定して、図１４の処理を終了する。
【０１１６】
第３回目の解析に於いて、制御装置１００の制御部１２１がステップＳ１５（図１３）の処理を行うと、制御装置１００の検知部１２２は、検知部処理を行う。
ステップＳ２０に於いて、検知部１２２は、クライアント側実行結果３０を受信して、活動記録ＤＢ１５３（図７）の活動記録ＩＤ１５３ａ＝９，１０，１２のレコードとして保存する。
ステップＳ２１に於いて、検知部１２２は、サーバ側実行結果４０を受信して、活動記録ＤＢ１５３（図７）の活動記録ＩＤ１５３ａ＝１１，１３のレコードとして保存する。
【０１１７】
ステップＳ２２に於いて、検知部１２２は、活動記録ＤＢ１５３（図７）の活動記録ＩＤ１５３ａ＝９〜１３のレコード中に、検知ルールＤＢ１５４（図８）の検知ルールＩＤ１５４ａ＝１〜３のレコードに該当するものがあるか否かを検索する。すると、活動記録ＩＤ１５３ａ＝１３のレコードの活動データ１５３ｆに「target=evil&money=\1000000」とあり、これは、evilというユーザに\1000000を振り込む通信を示している。しかし、解析管理ＩＤ１５３ｂ＝３の解析シナリオＤＢ１５１レコードで指定したサイトＩＤ１５２ａ＝サイトＺの操作手順（４）には「ユーザｄａｖｅに\1000を振り込む」旨が記録されており、振込先と振込金額とが異なっている。このため、検知部１２２は、検知ルールＩＤ１５４ａ＝１のレコードの検知内容１５４ｂを適用し、当該検体Ａを「マルウェア」と判断する。
ステップＳ２３において、検知部１２２は、解析管理ＩＤ１５１ａ＝３の解析シナリオＤＢ１５１レコードの検知結果１５１ｇに「マルウェア」を設定し、図１４の処理を終了する。
【０１１８】
なお、検知ルールＤＢ１５４（図８）検知ルールＩＤ１５４ａ＝２のレコードは、活動記録ＩＤ１５３ａ＝１２の活動記録ＤＢ１５３レコードに適合する。検知ルールＤＢ１５４（図８）の検知ルールＩＤ１５４ａ＝３のレコードは、活動記録ＤＢ１５３（図８）の活動記録ＩＤ１５３ａ＝１０のレコードに適合する。しかし、優先度が高い検知ルールＩＤ１５４ａ＝１のレコードが適用されるため、判定結果は「マルウェア」となる。
【０１１９】
図１５は、本実施形態に於けるクライアント制御部処理を示すフローチャートである。
ステップＳ３０に於いて、クライアント制御部２２１は、制御装置１００からクライアント制御命令１０を受信する。
ステップＳ３１に於いて、クライアント制御部２２１は、ブラウザ監視部２２３を起動し、ブラウザ監視部処理（図１７）を行わせる。
【０１２０】
ステップＳ３２に於いて、クライアント制御部２２１は、ブラウザ操作部２２２を起動する。クライアント制御部２２１は更に、クライアント制御命令１０に含まれる検体１１および動作シナリオ１２をブラウザ操作部２２２に渡す。
ステップＳ３３に於いて、クライアント制御部２２１は、ブラウザ操作部２２２の処理が終了するまで待機する。
ステップＳ３４に於いて、クライアント制御部２２１は、サーバ装置３００に操作完了通知７０を送信する。
ステップＳ３５に於いて、クライアント制御部２２１は、ブラウザ監視部２２３の処理が終了するまで待機する。
ステップＳ３６に於いて、クライアント制御部２２１は、ブラウザ監視部２２３からクライアント側実行結果３０を取得する。
ステップＳ３７に於いて、クライアント制御部２２１は、当該クライアント側実行結果３０を、制御装置１００に送信する。
ステップＳ３８に於いて、クライアント制御部２２１は、実行環境イメージ２７１を使用して、クライアント装置２００内の各プログラムを、検体１１の実行前の状態に復旧する。クライアント制御部２２１は、ステップＳ３８の処理が終了すると、図１５の処理を終了する。
【０１２１】
図１６は、本実施形態に於けるブラウザ操作部処理を示すフローチャートである。
クライアント制御部２２１が、クライアント制御部処理（図１５）のステップＳ３２の処理を実行すると、図１６のブラウザ操作部処理が起動する。
ステップＳ４０に於いて、ブラウザ操作部２２２は、検体１１を実行する。
ステップＳ４１に於いて、ブラウザ操作部２２２は、ブラウザ部２２４を起動する。
ステップＳ４２〜Ｓ４４に於いて、ブラウザ操作部２２２は、全ての動作シナリオ１２の操作手順について処理を繰り返す。
ステップＳ４３に於いて、ブラウザ操作部２２２は、動作シナリオ１２の当該操作手順に従い、ブラウザ部２２４を操作する。
ステップＳ４４に於いて、ブラウザ操作部２２２は、全ての動作シナリオ１２の操作手順が完了したか否かを判断する。ブラウザ操作部２２２は、当該判断条件が成立していない場合には、ステップＳ４２の処理に戻り、当該判断条件が成立している場合には、図１６の処理を終了する。
【０１２２】
図１７は、本実施形態に於けるブラウザ監視部処理を示すフローチャートである。
クライアント制御部２２１が、クライアント制御部処理（図１５）のステップＳ３１の処理を実行すると、図１７のブラウザ監視部処理が起動する。
ステップＳ５０に於いて、ブラウザ監視部２２３は、ブラウザ監視ルールＤＢ２５１を読み取り、監視処理を実行する。
ステップＳ５１に於いて、ブラウザ監視部２２３は、ブラウザ操作部２２２の終了を検知したか否かを判断する。ブラウザ監視部２２３は、当該判断条件が成立しなかったならば（Ｎｏ）、ステップＳ５０の処理に戻り、当該判断条件が成立したならば（Ｙｅｓ）、ステップＳ５２の処理を行う。
ステップＳ５２に於いて、ブラウザ監視部２２３は、これまでに記録された活動記録をクライアント制御部２２１に送信し、図１７の処理を終了する。
【０１２３】
図１８は、本実施形態に於けるサーバ制御部処理を示すフローチャートである。
サーバ装置３００が起動し、サーバ制御部３２１が受信待ち状態になると、図１８の処理が開始する。
ステップＳ６０に於いて、サーバ制御部３２１は、サーバ制御命令２０を制御装置１００より受信する。サーバ制御部３２１は、サーバ制御命令２０に含まれるＷＥＢサイト構成ファイル２１を、ＷＥＢサイト保存装置３７０に保存する。
ステップＳ６１に於いて、サーバ制御部３２１は、ＷＥＢサイト監視部３２２を起動する。
ステップＳ６２に於いて、サーバ制御部３２１は、ＷＥＢサーバ部３２３を起動する。ＷＥＢサーバ部３２３は、ＷＥＢサイト構成ファイル２１を読み取り、ＷＥＢサイトを立ち上げる。
ステップＳ６３に於いて、サーバ制御部３２１は、クライアント装置２００から操作完了通知７０を受信するまで待機する。
【０１２４】
ステップＳ６４に於いて、サーバ制御部３２１は、ＷＥＢサイト監視部３２２に終了信号を通知して停止させる。
ステップＳ６５に於いて、サーバ制御部３２１は、ＷＥＢサイト監視部３２２から活動記録であるサーバ側実行結果４０を取得する。
ステップＳ６６に於いて、サーバ制御部３２１は、サーバ側実行結果４０を制御装置１００に送信し、図１８の処理を終了する。
【０１２５】
図１９は、本実施形態に於けるＷＥＢサイト監視部処理を示すフローチャートである。
サーバ制御部３２１が、サーバ制御部処理（図１８）のステップＳ６１の処理を実行すると、当該ＷＥＢサイト監視部処理が起動する。
ステップＳ７０に於いて、ＷＥＢサイト監視部３２２は、ＷＥＢサイト監視ルールＤＢ３５１を読み取り、監視処理を実行する。
ステップＳ７１に於いて、ＷＥＢサイト監視部３２２は、サーバ制御部３２１から終了信号を検知したか否かを判断する。ブラウザ監視部２２３は、当該判断条件が成立しなかったならば（Ｎｏ）、ステップＳ７０の処理に戻り、当該判断条件が成立したならば（Ｙｅｓ）、ステップＳ７２の処理を行う。
ステップＳ７２に於いて、ＷＥＢサイト監視部３２２は、これまでに記録された活動記録をサーバ制御部３２１に通知し、図１９の処理を終了する。
【０１２６】
（本実施形態の効果）
以上説明した本実施形態では、次の（Ａ）〜（Ｄ）のような効果がある。
【０１２７】
（Ａ）  計算機が特定の処理を行った場合にのみ活動を行うプログラムに対し、効率的な解析が可能となる。
【０１２８】
（Ｂ）  実際に運用されているシステムのサーバ装置に対する検体１１の挙動ではなく、このプログラム解析システム１内で評価用として稼働しているサーバ装置３００に、実際に運用されているシステムと同一のＷＥＢサイト構成ファイル２１を送信している。これにより、実際に運用されているシステムに対する検体１１の挙動と同一の挙動を取得できると共に、実際に運用されているシステムに対する悪影響を抑止することができる。
【０１２９】
（Ｃ）  プログラム解析システム１に於いて、制御装置１００は、クライアント側実行結果３０と、サーバ側実行結果４０とを総合的に解析して、マルウェアであるか否かを判断している。これにより、クライアント側実行結果３０のみを解析するよりも、的確にマルウェアであることを判断することができる。
【０１３０】
（Ｄ）  プログラム解析システム１に於いて、制御装置１００は、再解析ルールＤＢ１５５に基づいて、繰り返し検体１１のプログラムを解析している。これにより、マルウェアであるか否かの判断の確実性を向上することができる。
【０１３１】
（変形例）
本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で、変更実施が可能である。この利用形態や変形例としては、例えば、次の（ａ）〜（ｃ）のようなものがある。
【０１３２】
（ａ）  本実施形態の制御装置１００は、ＷＥＢサイトを１つずつサーバ装置３００に構築し、検体１１を実行して解析を行っている。しかし、これに限られず、制御装置１００は、複数のＷＥＢサイトを同時に構築し、クライアント装置２００から連続してアクセスしてもよい。これにより、複数のＷＥＢサイトを同時にテストでき、解析時間を短縮することができる。
【０１３３】
（ｂ）  ラインＬ１〜Ｌ６は、何れも物理的な情報の伝達手段として通信ネットワーク４００を媒介している。しかし、これに限られず、ラインＬ１〜Ｌ６は、外部記憶装置などを経由して、物理的な情報の伝達が行われるものであってもよい。
【０１３４】
（ｃ）  プログラム解析システム１に於いて、制御装置１００は、所定の優先度情報に基づいて、検体１１の解析環境の順序を決定してもよい。これにより、解析環境の重要度に応じて、マルウェアであるか否かを判定することができる。
【０１３５】
（ｄ）  検体保存装置１７０に保存されている検体１１から任意のものが自動的に選択され、制御部１２１が制御前処理を開始してもよい。
【符号の説明】
【０１３６】
１  プログラム解析システム
１０  クライアント制御命令
１１  検体  （検体プログラム）
１２  動作シナリオ
２０  サーバ制御命令
２１  ＷＥＢサイト構成ファイル
３０  クライアント側実行結果
４０  サーバ側実行結果
５０  リクエスト
６０  レスポンス
７０  操作完了通知
１００  制御装置
１１０  装置本体
１２０  ＣＰＵ
１２１  制御部
１２２  検知部
１３０  メモリ
１３１  制御プログラム
１３２  検知プログラム
１４０  インタフェース
１５０  外部記憶装置  （記憶部）
１５１  解析シナリオＤＢ
１５２  ＷＥＢサイトＤＢ
１５３  活動記録ＤＢ
１５４  検知ルールＤＢ
１５５  再解析ルールＤＢ
１６０  バス
１７０  検体保存装置
１８０  ＷＥＢサイト保存装置
１９０  入出力装置
２００  クライアント装置
２１０  装置本体
２２０  ＣＰＵ
２２０  処理部
２２１  クライアント制御部
２２２  ブラウザ操作部
２２３  ブラウザ監視部
２２４  ブラウザ部  （ブラウザ）
２５０  外部記憶装置
２５１  ブラウザ監視ルールＤＢ
２７０  イメージ保存装置
２７１  実行環境イメージ
３００  サーバ装置
３２０  ＣＰＵ
３２１  サーバ制御部
３２２  ＷＥＢサイト監視部
３２３  ＷＥＢサーバ部
３５０  外部記憶装置
３５１  ＷＥＢサイト監視ルールＤＢ
３７０  ＷＥＢサイト保存装置
４００  通信ネットワーク
５００  通信ネットワーク
【図１】
0005892840.tif 000002
【図２】
0005892840.tif 000003
【図３】
0005892840.tif 000004
【図４】
0005892840.tif 000005
【図５】
0005892840.tif 000006
【図６】
0005892840.tif 000007
【図７】
0005892840.tif 000008
【図８】
0005892840.tif 000009
【図９】
0005892840.tif 000010
【図１０】
0005892840.tif 000011
【図１１】
0005892840.tif 000012
【図１２】
0005892840.tif 000013
【図１３】
0005892840.tif 000014
【図１４】
0005892840.tif 000015
【図１５】
0005892840.tif 000016
【図１６】
0005892840.tif 000017
【図１７】
0005892840.tif 000018
【図１８】
0005892840.tif 000019
【図１９】
0005892840.tif 000020