説明

処理装置およびプログラム

【課題】正規のアプリケーション等の挙動を異常な挙動として検知する誤検知を低減することができる処理装置およびプログラムを提供する。
【解決手段】実行部10は、他の実行ファイルを生成する第1の実行ファイルを実行する。また、実行部10は、第1の実行ファイルが実行されたときに生成された第2の実行ファイルを、第1の実行ファイルの属性と異なる属性が付与された状態で実行する。さらに、実行部10は、第2の実行ファイルを、第1の実行ファイルの属性と同一の属性が付与された状態で実行する。判定部14は、第2の実行ファイルを実行したときの実行結果と、第2の実行ファイルを実行したときの実行結果とを比較する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、PC(Personal Computer)等の処理装置に関する。また、本発明は、本処理装置としてコンピュータを機能させるためのプログラムにも関する。
【背景技術】
【0002】
近年、ウィルスに感染したコンピュータに悪質な動作を実行させる、ボットと呼ばれるウィルスによる被害が拡大している。ボットは、外部の指令サーバに通信セッションを確立して新たなコードをダウンロードする機能や、攻撃のための指令を受ける機能、指令に従って攻撃する機能などを持つ悪意のコードで構成されている。
【0003】
しかし、パターンマッチング型のウィルス対策ソフトで検知できないボットが増えている。そこで、ボットを検知する手法として、ボットがPC内の複数のファイルに感染するときに自身のコードを読み込む(Read)行為や証拠隠滅のためにコードを消去する(Delete)行為に着目した検知手法が提案されている(例えば非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】酒井崇裕、長谷巧、竹森敬祐、西垣正勝、“自己ファイルREAD/DELETEの検出によるボット検知の可能性に関する一検討”、マルウェア対策研究人材育成ワークショップ2008(MWS2008)、セッションM6-2、2008年10月
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、正規のアプリケーションのインストーラの処理でも、自身のコードを読み込んで複製すること(自己複製)や、所望の処理後にコードを消去すること(自己消去)が行われるため、上記の手法では、一部の正常な処理を誤ってボットの処理として検知してしまう問題がある。
【0006】
本発明は、上述した課題に鑑みてなされたものであって、正規のアプリケーション等の挙動を異常な挙動として検知する誤検知を低減することができる処理装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明者は、正規のアプリケーションとボットとでは、実行ファイルの属性に応じて、実行ファイルの実行時の挙動が異なるということを発見した。すなわち、正規のアプリケーションの実行ファイル(以下の第2の実行ファイルに対応)は、そのインストーラの実行ファイル(以下の第1の実行ファイルに対応)と同一の属性が付与されているときと、異なる属性が付与されているときとで、実行結果が同一となる。これに対して、ボットの実行ファイル(以下の第2の実行ファイルに対応)は、その実行ファイルを生成した実行ファイル(以下の第1の実行ファイルに対応)と同一の属性が付与されているときと、異なる属性が付与されているときとで、実行結果が異なる。
【0008】
また、本発明者は、正規のアプリケーションとボットとでは、実行ファイルが実行される環境に応じて、実行ファイルの実行時の挙動が異なるということを発見した。すなわち、正規のアプリケーションの実行ファイル(以下の第2の実行ファイルに対応)は、そのインストーラの実行ファイル(以下の第1の実行ファイルに対応)が実行される前の環境と同一の環境で実行したときと、異なる環境で実行したときとで、実行結果が同一となる。これに対して、ボットの実行ファイル(以下の第2の実行ファイルに対応)は、その実行ファイルを生成した実行ファイル(以下の第1の実行ファイルに対応)が実行される前の環境と同一の環境で実行したときと、異なる環境で実行したときとで、実行結果が異なる。
【0009】
本発明は、上記に鑑みてなされたもので、他の実行ファイルを生成する第1の実行ファイルを実行する第1の実行手段と、前記第1の実行ファイルが実行されたときに生成された第2の実行ファイルを、前記第1の実行ファイルの属性と異なる属性が付与された状態で実行する第2の実行手段と、前記第2の実行ファイルを、前記第1の実行ファイルの属性と同一の属性が付与された状態で実行する第3の実行手段と、前記第2の実行手段が前記第2の実行ファイルを実行したときの実行結果と、前記第3の実行手段が前記第2の実行ファイルを実行したときの実行結果とを比較する比較手段と、を備えたことを特徴とする処理装置である。
【0010】
また、本発明は、他の実行ファイルを生成する第1の実行ファイルを実行する第1の実行手段と、前記第1の実行ファイルが実行されたときに生成された第2の実行ファイルを、前記第1の実行ファイルが実行される前の環境と異なる環境で実行する第2の実行手段と、前記第2の実行ファイルを、前記第1の実行ファイルが実行される前の環境と同一の環境で実行する第3の実行手段と、前記第2の実行手段が前記第2の実行ファイルを実行したときの実行結果と、前記第3の実行手段が前記第2の実行ファイルを実行したときの実行結果とを比較する比較手段と、を備えたことを特徴とする処理装置である。
【0011】
また、本発明の処理装置において、前記第2の実行ファイルが生成されたとき、前記第2の実行ファイルには前記第1の実行ファイルと異なるファイル名が付与され、前記第2の実行手段は、前記第2の実行ファイルが生成されたときに前記第2の実行ファイルに付与されたファイル名と同一のファイル名が付与された状態で前記第2の実行ファイルを実行し、前記第3の実行手段は、前記第1の実行ファイルと同一のファイル名が付与された状態で前記第2の実行ファイルを実行することを特徴とする。
【0012】
また、本発明の処理装置は、IPアドレスとホスト名の対応を記録したhostsファイルを記憶する記憶手段をさらに備え、前記第2の実行手段は、前記第2の実行ファイルが生成された際に変更された前記hostsファイルが前記記憶手段に記憶されている状態で前記第2の実行ファイルを実行し、前記第3の実行手段は、前記第1の実行ファイルが実行される前と同一の内容を有する前記hostsファイルが前記記憶手段に記憶されている状態で前記第2の実行ファイルを実行することを特徴とする。
【0013】
また、本発明の処理装置は、前記比較手段による比較の結果、2つの前記実行結果が一致した場合に前記第1の実行ファイルが正規のインストーラであると判定する、または前記第2の実行ファイルが正規のアプリケーションであると判定する判定手段をさらに備えることを特徴とする。
【0014】
また、本発明の処理装置は、前記比較手段による比較の結果、2つの前記実行結果が一致しなかった場合に前記第1の実行ファイルまたは前記第2の実行ファイルがボットであると判定する判定手段をさらに備えることを特徴とする。
【0015】
また、本発明は、他の実行ファイルを生成する第1の実行ファイルを実行する第1の実行手段と、前記第1の実行ファイルが実行されたときに生成された第2の実行ファイルを、前記第1の実行ファイルの属性と異なる属性が付与された状態で実行する第2の実行手段と、前記第2の実行ファイルを、前記第1の実行ファイルの属性と同一の属性が付与された状態で実行する第3の実行手段と、前記第2の実行手段が前記第2の実行ファイルを実行したときの実行結果と、前記第3の実行手段が前記第2の実行ファイルを実行したときの実行結果とを比較する比較手段と、としてコンピュータを機能させるためのプログラムである。
【0016】
また、本発明は、他の実行ファイルを生成する第1の実行ファイルを実行する第1の実行手段と、前記第1の実行ファイルが実行されたときに生成された第2の実行ファイルを、前記第1の実行ファイルが実行される前の環境と異なる環境で実行する第2の実行手段と、前記第2の実行ファイルを、前記第1の実行ファイルが実行される前の環境と同一の環境で実行する第3の実行手段と、前記第2の実行手段が前記第2の実行ファイルを実行したときの実行結果と、前記第3の実行手段が前記第2の実行ファイルを実行したときの実行結果とを比較する比較手段と、としてコンピュータを機能させるためのプログラムである。
【発明の効果】
【0017】
本発明によれば、第2の実行手段が第2の実行ファイルを実行したときの実行結果と、第3の実行手段が第2の実行ファイルを実行したときの実行結果とを比較することによって、正規のアプリケーション等の挙動を異常な挙動として検知する誤検知を低減することができる。
【図面の簡単な説明】
【0018】
【図1】本発明の一実施形態による処理装置のハードウェア構成を示すブロック図である。
【図2】本発明の一実施形態による処理装置の機能構成を示すブロック図である。
【図3】本発明の一実施形態による処理装置の動作を示す参考図である。
【図4】本発明の一実施形態による処理装置の動作を示す参考図である。
【図5】ボットの挙動を示す参考図である。
【図6】ボットの挙動を示す参考図である。
【図7】正規のアプリケーションの挙動を示す参考図である。
【図8】ボットの挙動を示す参考図である。
【図9】正規のアプリケーションの挙動を示す参考図である。
【図10】改竄されたhostsファイルの内容を示す参考図である。
【発明を実施するための形態】
【0019】
以下、図面を参照し、本発明の実施形態を説明する。まず、ボットの挙動と正規のアプリケーションの挙動との違いを説明する。図5はボットの挙動を示している。ボットは、潜伏先となるシステムフォルダ等以外のフォルダに格納されている場合には、インストーラとしての挙動を示し、潜伏先のフォルダに自己複製を行う。
【0020】
図5に示すように、ボット500の実行ファイル(拡張子が.exe等の実行形式のファイル)が実行(起動)されると、ボット500は、圧縮ファイルを展開(解凍、伸張)し、展開後のボット510の実行ファイルを潜伏先のフォルダ(システムフォルダ等)に格納する。このボット510の実行ファイルが実行されると、ボット510は外部へ各種攻撃を行う。なお、ボット500がダウンローダとして動作する場合があり、その場合、ネットワークを経由してボット510の実行ファイルがダウンロードされ、潜伏先のフォルダに格納される。
【0021】
通常、ボットは、実行ファイルが同一であっても、その実行ファイルの属性に応じて異なる挙動を示す。この属性とは、具体的には実行ファイルに付与されるファイル名である。図6に示すように、ボット600の実行ファイルが実行されると、ボット600は、圧縮ファイルを展開し、展開後のボット610の実行ファイルを潜伏先のフォルダに格納する。このとき、ボット600のファイル名とは異なるファイル名がランダムに選択されてボット610の実行ファイルに付与される。具体的には、ボット610の実行ファイルのファイル名は、既存のプロセスに類似したファイル名であるspooIsv.exe、spoolsvc.exe(spoolsv.exeに類似)、Isass.exe、lssas.exe(lsass.exeに類似)等や、既存のプロセスとしては存在しないが既存のプロセスとして存在しそうなファイル名であるfirewall.exe等となる。ボットは、このようなファイル名を記載したリストを保持しており、実行ファイルの展開時に、リストから任意のファイル名を選択して実行ファイルに付与すると考えられる。
【0022】
ボット610の実行ファイルが実行されると、ボット610は外部へ各種攻撃を行う。これに対して、ボット610の実行ファイルのファイル名をボット600の実行ファイルのファイル名と同一の名称に変更した実行ファイル610aを実行すると、以下の挙動が観察される。すなわち、ボット610aはボット600と同様の挙動を示し、ボット620の実行ファイルを潜伏先のフォルダに格納する。前述したように、リストから任意のファイル名が選択されてボット620の実行ファイルに付与されるため、通常、ボット610,620の実行ファイルのファイル名は異なる。上記のように、ボットは、実行ファイルが同一であっても、その実行ファイルのファイル名に応じて異なる挙動を示す。
【0023】
一方、正規のアプリケーションは、実行ファイルのファイル名によらず、同一の挙動を示す。図7は正規のアプリケーションの挙動を示している。図7に示すように、インストーラ700の実行ファイルが実行されると、インストーラ700は、圧縮ファイルを展開し、展開後の実行ファイル710を展開先のフォルダ(システムフォルダ等)に格納する。このとき、実行ファイル710には、実行ファイル700のファイル名とは異なるファイル名が付与される。
【0024】
この実行ファイル710が実行されると、アプリケーションとしての機能に係る処理(ユーザが指定するファイルの読み込みや編集等)が実行される。これに対して、実行ファイル710のファイル名を実行ファイル700のファイル名と同一の名称に変更した実行ファイル710aを実行すると、以下の挙動が観察される。すなわち、実行ファイル710aは、ファイル名が変更される前と同様の挙動を示し、アプリケーションとしての機能に係る処理を実行する。上記のように、正規のアプリケーションは、実行ファイルのファイル名によらず、同一の挙動を示す。したがって、上記の挙動の違いを利用して、ボットと正規のアプリケーションまたはそのインストーラとを見分けることが可能となる。
【0025】
また、ボットの挙動と正規のアプリケーションの挙動とでは、以下のような違いもある。通常、ボットは、潜伏のために実行ファイルを展開するときにhostsファイルを改竄する。hostsファイルとは、IPアドレスとホスト名の対応を記録したファイルである。図10は、ボットによって改竄されたhostsファイルの内容を示している。
【0026】
IPアドレス「127.0.0.1」は、ホスト自身に割り当てられる、ループバックアドレスと呼ばれるIPアドレスである。ループバックアドレスの右側に記載された文字列がホスト名である。図10に示すhostsファイルの2行目以降が、ボットによって改竄された部分である。市販されているアンチウイルス(AV)のパターンファイル(定義ファイル)をアップデートしているサイトのIPアドレスが自身を指しているため、このhostsファイルを有するホストは定義ファイルを更新することができない。上記のように、ボットはhostsファイルの改竄を行うことによってアンチウイルスの新たなパターンファイルの取得を阻止する。
【0027】
通常、ボットは、実行ファイルが同一であっても、その実行ファイルが実行されるときの環境に応じて異なる挙動を示す。この環境とは具体的には、上記のhostsファイルの状態(内容)である。図8に示すように、ボット800の実行ファイルが実行されると、ボット800は、ボット810の実行ファイルを潜伏先のフォルダに格納する。このとき、hostsファイルが改竄されたとする。
【0028】
hostsファイルが改竄されたままの状態でボット810の実行ファイルが実行されると、ボット810は外部へ各種攻撃を行う。これに対して、hostsファイルを改竄前の状態に戻して実行ファイルを実行すると、以下の挙動が観察される。すなわち、hostsファイルが改竄前の状態に戻った状態でボット810の実行ファイルが実行されると、ボット810はボット800と同様の挙動を示し、ボット820の実行ファイルを潜伏先のフォルダに格納すると共にhostsファイルを改竄する。上記のように、ボットは、実行ファイルが同一であっても、その実行ファイルが実行されるときの環境に応じて異なる挙動を示す。
【0029】
一方、正規のアプリケーションは、hostsファイルの状態によらず、同一の挙動を示す。図9は正規のアプリケーションの挙動を示している。図9に示すように、インストーラ900の実行ファイルが実行されると、インストーラ900は、圧縮ファイルを展開し、展開後の実行ファイル910を展開先のフォルダ(システムフォルダ等)に格納する。このとき、hostsファイルが変更されたとする。
【0030】
hostsファイルが変更されたままの状態で実行ファイル910が実行されると、アプリケーションとしての機能に係る処理が実行される。これに対して、hostsファイルを改竄前の状態に戻して実行ファイルを実行すると、以下の挙動が観察される。すなわち、hostsファイルが変更前の状態に戻った状態で実行ファイル910が実行されると、実行ファイル910は実行ファイル900と同様の挙動を示し、アプリケーションとしての機能に係る処理を実行する。上記のように、正規のアプリケーションは、hostsファイルの状態によらず、同一の挙動を示す。したがって、上記の挙動の違いを利用して、ボットと正規のアプリケーションまたはそのインストーラとを見分けることが可能となる。
【0031】
図1は、本実施形態による処理装置のハードウェア構成を示している。図1に示す処理装置は、CPU1、操作部2、表示部3、RAM4(メモリ)、HDD5(ハードディスクドライブ)を有し、これらがバスBで接続されている。CPU1は、HDD5に格納された各種プログラムをRAM4に読み込み、そのプログラムに従った処理を実行することで各種機能を実現する。操作部2は、ユーザが操作を行うマウスやキーボード等である。表示部3は、処理装置が実行した処理の結果等を表示する液晶ディスプレイ等である。
【0032】
RAM4は、CPU1が実行するプログラムや、演算に必要なデータを一時的に記憶する。HDD5は、各種アプリケーションが実行する処理を規定するアプリケーションプログラムや、アプリケーションが作成したファイル、OS(オペレーティングシステム)の動作に必要なシステムファイル等を記憶する。
【0033】
図2は、本実施形態による処理装置の機能構成を示している。なお、図2は、本実施形態の説明で必要な機能構成のみを示している。実行部10、ファイル名変更部11、変更検知部12、実行結果取得部13、判定部14は、CPU1が各機能に係る処理を実行したときの各処理に対応する。HDD5は、システムファイルが格納されるシステムフォルダや、システムフォルダ以外のフォルダを有する。各フォルダ内には各種ファイルが格納される。なお、一台のHDD内に各フォルダを一括して格納するようにしてもよいし、複数台のHDD内に各フォルダを分散して格納するようにしてもよい。
【0034】
図2に示す実行部10、ファイル名変更部11、変更検知部12、実行結果取得部13、判定部14が実行する処理は以下の通りである。実行部10は実行ファイルを実行する。ファイル名変更部11は、実行ファイルのファイル名を変更する。変更検知部12は、HDD5内のフォルダに格納されているhostsファイルの変更を検知する。実行結果取得部13は、実行ファイルが実行されるときに、その実行に係る処理を監視し、実行結果を取得する。判定部14は、異なる条件で実行ファイルが実行されたときの実行結果を比較し、比較結果に基づいて、実行ファイルがボットと正規のアプリケーション(またはそのインストーラ)のどちらであるのかを判定する。
【0035】
次に、本実施形態による処理装置の動作を説明する。まず、図3を参照しながら、第1の動作例を説明する。第1の動作例では、ファイル名に注目して、実行ファイルがボットと正規のアプリケーション(またはそのインストーラ)のどちらであるのかが判定される。
【0036】
具体的には、以下のようになる。ネットワークやCD−ROM等から取得した展開ソフトの実行ファイル300が任意のフォルダに置かれている。実行部10が実行ファイル300を実行すると、実行ファイル300とは異なるファイル名が付与された実行ファイル310が展開先のフォルダに展開される。続いて、実行部10は実行ファイル310を実行する。このとき、実行結果取得部13は、実行ファイル310の実行を監視し、実行結果(以下、実行結果Cとする)を取得してRAM4に格納する。
【0037】
続いて、ファイル名変更部11は、実行ファイル310のファイル名を実行ファイル300のファイル名と同一のファイル名に変更する。続いて、実行部10は、ファイル名が変更された実行ファイル310aを実行する。このとき、実行結果取得部13は、実行ファイル310aの実行を監視し、実行結果(以下、実行結果C’とする)を取得してRAM4に格納する。
【0038】
続いて、判定部14は、RAM4から実行結果Cおよび実行結果C’を読み出し、両者を比較する。実行結果Cと実行結果C’が一致する場合、判定部14は、実行ファイル310が正規のアプリケーションである、または実行ファイル300が正規のアプリケーションのインストーラであると判定する。また、実行結果Cと実行結果C’が一致しない場合、判定部14は、実行ファイル310もしくは実行ファイル300がボットであると判定する。
【0039】
本実施形態では、一例として、ファイルに対するアクセス(ファイルアクセス)の結果と通信結果の2種類の実行結果に注目する。ファイルアクセスの結果に注目する場合、以下のようになる。正規のアプリケーションは、その実行ファイルが実行されると、実行ファイルのファイル名によらず、HDD5内の所定のフォルダに格納されている所定のファイルを読み出す。例えば、ワープロソフトであれば、編集対象のファイルを読み出す。このため、正規のアプリケーションの場合、実行結果Cと実行結果C’は一致する。なお、編集対象のファイルをユーザが指定する場合、実行ファイル310を実行するときと実行ファイル310aを実行するときとで同一のファイルを指定するものとする。
【0040】
一方、ボットは、自身の実行ファイルのファイル名に応じて、挙動が異なる。ボットの場合、例えば以下の2種類のファイルアクセスパターンがある。
【0041】
第1のファイルアクセスパターンでは、潜伏先のフォルダに展開された実行ファイルは、指令サーバから受信した指令ファイルをHDD5に保存し、攻撃に必要なファイル(例えばスパムメールに記載される本文等が格納されたファイル)をHDD5から読み出す。一方、ファイル名が変更された実行ファイルは、インストールが終了していないと判断し、HDD5に格納されている自身の実行ファイルをコピーし、潜伏先のフォルダに格納する。
【0042】
第2のファイルアクセスパターンでは、潜伏先のフォルダに展開された実行ファイルは、攻撃に必要なファイルをHDD5から読み出す。一方、ファイル名が変更された実行ファイルは、インストールが終了していないと判断し、HDD5に格納されている自身の実行ファイルをコピーし、潜伏先のフォルダに格納すると共に、指令サーバから受信した指令ファイルをHDD5に保存する。したがって、ボットの場合、第1のファイルアクセスパターンと第2のファイルアクセスパターンのいずれにおいても、実行結果Cと実行結果C’は一致しない。
【0043】
判定部14は、実行ファイルがアクセスするファイルとアクセスの種類(読み込み、書き込み、消去)が実行結果Cと実行結果C’で一致するか否かを判定する。これによって、ボットと正規のアプリケーションまたはそのインストーラとを見分けることができる。上記の判定を行うためには、実行ファイルを実行したときに生成されるプロセスが行うファイルアクセスを監視する必要があるが、この監視を行うツールとして、例えばFile Mon(http://technet.microsoft.com/en-us/sysinternals/bb896642.aspx)等を利用することが可能である。
【0044】
また、通信結果に注目する場合、以下のようになる。通信を行う正規のアプリケーションであるブラウザは、その実行ファイルが実行されると、実行ファイルのファイル名によらず、まず予め設定されているホームページを開くため、そのホームページを提供するサーバと通信を行う。このため、正規のアプリケーションの場合、実行結果Cと実行結果C’は一致する。
【0045】
一方、ボットは、自身の実行ファイルのファイル名に応じて、挙動が異なる。ボットの場合、例えば以下の2種類の通信パターンがある。
【0046】
第1の通信パターンでは、潜伏先のフォルダに展開された実行ファイルは外部に対して攻撃のための通信(指令サーバからの指令ファイルの受信と外部の端末への攻撃パケットの送信)を行う。一方、ファイル名が変更された実行ファイルは、自身の実行ファイルをコピーするときに通信を行わない。
【0047】
第2の通信パターンでは、潜伏先のフォルダに展開された実行ファイルは、外部に対して攻撃のための通信(外部の端末への攻撃パケットの送信)を行う。一方、ファイル名が変更された実行ファイルは、HDD5に格納されている自身の実行ファイルをコピーし、潜伏先のフォルダに格納すると共に、指令サーバから指令ファイルを受信する。指令サーバと攻撃対象の外部の端末は、異なる端末である。したがって、ボットの場合、第1の通信パターンと第2の通信パターンのいずれにおいても、実行結果Cと実行結果C’は一致しない。
【0048】
判定部14は、実行ファイルが行う通信の宛先のFQDN(Fully Qualified Domain Name)とポート番号の組が実行結果Cと実行結果C’とで一致するか否かを判定する。これによって、ボットと正規のアプリケーションまたはそのインストーラとを見分けることができる。上記の判定を行うためには、実行ファイルを実行したときに生成されるプロセスが行う通信を監視する必要があるが、この監視を行う方法として、例えば文献(竹森敬祐、三宅優、“無操作ホストから発信されるパケットに注目したウイルス感染検知”、情処研報、CSEC36、pp.141-146、2007年3月)に記載されている方法を利用することが可能である。
【0049】
なお、実行ファイルが通信を行わなかった場合でも上記と同じ方法による判定を可能とするため、実行ファイルが通信を行わなかった場合には何らかのFQDNとポート番号が実行結果として得られるようにしておくことが望ましい。例えば、通常使用されない所定の文字列と番号をそれぞれ実行結果のFQDNとポート番号とし、判定に使用すればよい。また、上記の方法以外の方法で判定を行ってもよく、例えば比較すべき2つの実行結果として、通信したという実行結果と通信しなかったという実行結果が得られた場合には2つの実行結果が一致しないと判定してもよい。
【0050】
次に、図4を参照しながら、第2の動作例を説明する。第2の動作例では、hostsファイルに注目して、実行ファイルがボットと正規のアプリケーション(またはそのインストーラ)のどちらであるのかが判定される。
【0051】
具体的には、以下のようになる。ネットワークやCD−ROM等から取得した展開ソフトの実行ファイル400が任意のフォルダに置かれている。実行部10が実行ファイル400を実行すると、実行ファイル410が展開先のフォルダに展開される。このとき、変更検知部12は、HDD5に格納されているhostsファイルの状態を監視し、hostsファイルの内容が変更されたか否かを判定する。なお、初期状態のhostsファイルはHDD5にバックアップされているものとする。変更検知部12によって、hostsファイルの変更が検知された場合、実行部10は実行ファイル410を実行する。このとき、実行結果取得部13は、実行ファイル410の実行を監視し、実行結果(以下、実行結果Cとする)を取得してRAM4に格納する。
【0052】
続いて、変更検知部12は、HDD5に格納されているhostsファイルのバックアップを利用してhostsファイルの内容を実行ファイル410の実行前の状態に戻す。続いて、実行部10は、実行ファイル410を実行する。このとき、実行結果取得部13は、実行ファイル410の実行を監視し、実行結果(以下、実行結果C’とする)を取得してRAM4に格納する。
【0053】
続いて、判定部14は、RAM4から実行結果Cおよび実行結果C’を読み出し、両者を比較する。実行結果Cと実行結果C’が一致する場合、判定部14は、実行ファイル410が正規のアプリケーションである、または実行ファイル400が正規のアプリケーションのインストーラであると判定する。また、実行結果Cと実行結果C’が一致しない場合、判定部14は、実行ファイル410もしくは実行ファイル400がボットであると判定する。判定部14による判定の方法は第1の動作例と同様である。
【0054】
上述したように、本実施形態によれば、実行ファイルの名前に応じた実行結果またはhostsファイルの内容に応じた実行結果を比較することによって、ボットと正規のアプリケーションまたはそのインストーラとを見分けることが可能となる。したがって、正規のアプリケーション等の挙動を異常な挙動として検知する誤検知を低減することができる。
【0055】
以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成は上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。例えば、上記の処理装置の動作および機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませ、実行させてもよい。
【0056】
ここで、「コンピュータ」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
【0057】
また、上述したプログラムは、このプログラムを記憶装置等に格納したコンピュータから、伝送媒体を介して、あるいは伝送媒体中の伝送波により他のコンピュータに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように、情報を伝送する機能を有する媒体のことをいう。また、上述したプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能を、コンピュータに既に記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【符号の説明】
【0058】
1・・・CPU、2・・・操作部、3・・・表示部、4・・・RAM、5・・・HDD(記憶手段)、10・・・実行部(実行手段)、11・・・ファイル名変更部、12・・・変更検知部、13・・・実行結果取得部、14・・・判定部(比較手段、判定手段)

【特許請求の範囲】
【請求項1】
他の実行ファイルを生成する第1の実行ファイルを実行する第1の実行手段と、
前記第1の実行ファイルが実行されたときに生成された第2の実行ファイルを、前記第1の実行ファイルの属性と異なる属性が付与された状態で実行する第2の実行手段と、
前記第2の実行ファイルを、前記第1の実行ファイルの属性と同一の属性が付与された状態で実行する第3の実行手段と、
前記第2の実行手段が前記第2の実行ファイルを実行したときの実行結果と、前記第3の実行手段が前記第2の実行ファイルを実行したときの実行結果とを比較する比較手段と、
を備えたことを特徴とする処理装置。
【請求項2】
他の実行ファイルを生成する第1の実行ファイルを実行する第1の実行手段と、
前記第1の実行ファイルが実行されたときに生成された第2の実行ファイルを、前記第1の実行ファイルが実行される前の環境と異なる環境で実行する第2の実行手段と、
前記第2の実行ファイルを、前記第1の実行ファイルが実行される前の環境と同一の環境で実行する第3の実行手段と、
前記第2の実行手段が前記第2の実行ファイルを実行したときの実行結果と、前記第3の実行手段が前記第2の実行ファイルを実行したときの実行結果とを比較する比較手段と、
を備えたことを特徴とする処理装置。
【請求項3】
前記第2の実行ファイルが生成されたとき、前記第2の実行ファイルには前記第1の実行ファイルと異なるファイル名が付与され、
前記第2の実行手段は、前記第2の実行ファイルが生成されたときに前記第2の実行ファイルに付与されたファイル名と同一のファイル名が付与された状態で前記第2の実行ファイルを実行し、
前記第3の実行手段は、前記第1の実行ファイルと同一のファイル名が付与された状態で前記第2の実行ファイルを実行する
ことを特徴とする請求項1に記載の処理装置。
【請求項4】
IPアドレスとホスト名の対応を記録したhostsファイルを記憶する記憶手段をさらに備え、
前記第2の実行手段は、前記第2の実行ファイルが生成された際に変更された前記hostsファイルが前記記憶手段に記憶されている状態で前記第2の実行ファイルを実行し、
前記第3の実行手段は、前記第1の実行ファイルが実行される前と同一の内容を有する前記hostsファイルが前記記憶手段に記憶されている状態で前記第2の実行ファイルを実行する
ことを特徴とする請求項2に記載の処理装置。
【請求項5】
前記比較手段による比較の結果、2つの前記実行結果が一致した場合に前記第1の実行ファイルが正規のインストーラであると判定する、または前記第2の実行ファイルが正規のアプリケーションであると判定する判定手段をさらに備えることを特徴とする請求項1〜請求項4のいずれかに記載の処理装置。
【請求項6】
前記比較手段による比較の結果、2つの前記実行結果が一致しなかった場合に前記第1の実行ファイルまたは前記第2の実行ファイルがボットであると判定する判定手段をさらに備えることを特徴とする請求項1〜請求項4のいずれかに記載の処理装置。
【請求項7】
他の実行ファイルを生成する第1の実行ファイルを実行する第1の実行手段と、
前記第1の実行ファイルが実行されたときに生成された第2の実行ファイルを、前記第1の実行ファイルの属性と異なる属性が付与された状態で実行する第2の実行手段と、
前記第2の実行ファイルを、前記第1の実行ファイルの属性と同一の属性が付与された状態で実行する第3の実行手段と、
前記第2の実行手段が前記第2の実行ファイルを実行したときの実行結果と、前記第3の実行手段が前記第2の実行ファイルを実行したときの実行結果とを比較する比較手段と、
としてコンピュータを機能させるためのプログラム。
【請求項8】
他の実行ファイルを生成する第1の実行ファイルを実行する第1の実行手段と、
前記第1の実行ファイルが実行されたときに生成された第2の実行ファイルを、前記第1の実行ファイルが実行される前の環境と異なる環境で実行する第2の実行手段と、
前記第2の実行ファイルを、前記第1の実行ファイルが実行される前の環境と同一の環境で実行する第3の実行手段と、
前記第2の実行手段が前記第2の実行ファイルを実行したときの実行結果と、前記第3の実行手段が前記第2の実行ファイルを実行したときの実行結果とを比較する比較手段と、
としてコンピュータを機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2011−14034(P2011−14034A)
【公開日】平成23年1月20日(2011.1.20)
【国際特許分類】
【出願番号】特願2009−159028(P2009−159028)
【出願日】平成21年7月3日(2009.7.3)
【出願人】(000208891)KDDI株式会社 (2,700)
【出願人】(304023318)国立大学法人静岡大学 (416)
【Fターム(参考)】