(57)【要約】【課題】偽装したアイコンを持つコンピュータウイルス（不正プログラム）の存在を検知する。【解決手段】本発明は、情報処理装置に、不正でないと判明しているプログラムのリストである許可プログラムリストと実行ファイルが保持していてはいけないアイコンを表示するためのアイコンデータのリストであるアイコンブラックリストとを設ける。情報処理装置は、ファイルのアイコンデータを抽出し、そのファイルが許可プログラムリストに含まれないとき、抽出したアイコンデータがアイコンブラックリストに含まれるかを判定し、抽出したアイコンデータがアイコンブラックリストに含まれるならば、そのファイルを不正プログラムとして検知する。【選択図】図６
2010198565.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置内の不正なプログラムを検知する不正プログラム検知方法であって、前記情報処理装置は、不正でないと判明しているプログラムのリストである許可プログラムリストと実行ファイルが保持していてはいけないアイコンを表示するためのアイコンデータのリストであるアイコンブラックリストとを設け、前記情報処理装置は、ファイルのアイコンデータを抽出し、前記ファイルが前記許可プログラムリストに含まれないとき、前記抽出したアイコンデータが前記アイコンブラックリストに含まれるかを判定し、前記判定の結果、前記抽出したアイコンデータが前記アイコンブラックリストに含まれるならば、前記ファイルを不正プログラムとして検知することを特徴とする不正プログラム検知方法。
【請求項２】
前記判定の結果、前記抽出したアイコンデータが前記アイコンブラックリストに含まれないならば、前記抽出したアイコンデータと前記アイコンブラックリストに含まれる前記アイコンデータとの類似度を求め、
前記類似度が予め定めた閾値以上のとき、前記ファイルを不正プログラムの疑いがあるとして検知することを特徴とする請求項１記載の不正プログラム検知方法。
【請求項３】
前記ファイルを不正プログラムの疑いがあるとして検知したとき、前記検知結果を表示装置に表示し、
前記検知結果の表示に対応して、入力装置から前記ファイルの削除の指示を入力したとき、前記ファイルを削除することを特徴とする請求項２記載の不正プログラム検知方法。
【請求項４】
前記ファイルの削除に応じて、前記抽出したアイコンデータを前記アイコンブラックリストに追加することを特徴とする請求項３記載の不正プログラム検知方法。
【請求項５】
前記ファイルを不正プログラムの疑いがあるとして検知したとき、前記検知結果を表示装置に表示し、前記検知結果の表示に対応して、入力装置から前記ファイルを削除しないとの指示を入力したとき、前記ファイルの前記許可プログラムリストへの追加の問い合わせを前記表示装置に表示し、前記問い合わせの表示に対応して、前記入力装置から前記ファイルの追加の指示を入力したとき、前記ファイルを前記許可プログラムリストへ追加することを特徴とする請求項２記載の不正プログラム検知方法。
【請求項６】
前記類似度が予め定めた閾値未満のとき、前記ファイルを不正プログラムではないとして検知することを特徴とする請求項２記載の不正プログラム検知方法。
【請求項７】
前記類似度は、前記アイコンブラックリストに含まれる前記アイコンデータによるピクセルに一致する前記抽出したアイコンデータによるピクセル数の割合であることを特徴とする請求項２記載の不正プログラム検知方法。
【請求項８】
前記ファイルは、ショートカットファイルの参照先に格納された実行ファイルであることを特徴とする請求項１記載の不正プログラム検知方法。
【請求項９】
前記ファイルは、前記情報処理装置内にあって、利用者により選択されたファイルであることを特徴とする請求項１記載の不正プログラム検知方法。
【請求項１０】
情報処理装置に、不正でないと判明しているプログラムのリストである許可プログラムリストと実行ファイルが保持していてはいけないアイコンを表示するためのアイコンデータのリストであるアイコンブラックリストとを設け、ファイルのアイコンデータを抽出し、前記ファイルが前記許可プログラムリストに含まれないとき、前記抽出したアイコンデータが前記アイコンブラックリストに含まれるかを判定し、前記判定の結果、前記抽出したアイコンデータが前記アイコンブラックリストに含まれるならば、前記ファイルを不正プログラムとして検知するステップを前記情報処理装置に実行させることを特徴とする不正プログラム検知プログラム。
【請求項１１】
前記判定の結果、前記抽出したアイコンデータが前記アイコンブラックリストに含まれないならば、前記抽出したアイコンデータと前記アイコンブラックリストに含まれる前記アイコンデータとの類似度を求め、
前記類似度が予め定めた閾値以上のとき、前記ファイルを不正プログラムの疑いがあるとして検知するステップを前記情報処理装置に実行させることを特徴とする請求項１０記載の不正プログラム検知プログラム。
【請求項１２】
前記類似度が予め定めた閾値未満のとき、前記ファイルを不正プログラムではないとして検知するステップを前記情報処理装置に実行させることを特徴とする請求項１１記載の不正プログラム検知プログラム。
【請求項１３】
前記ファイルは、ショートカットファイルの参照先に格納された実行ファイルであることを特徴とする請求項１０記載の不正プログラム検知プログラム。
【請求項１４】
前記ファイルは、前記情報処理装置内にあって、利用者により選択されたファイルであることを特徴とする請求項１０記載の不正プログラム検知プログラム。
【請求項１５】
不正でないと判明しているプログラムのリストである許可プログラムリストと、
実行ファイルが保持していてはいけないアイコンを表示するためのアイコンデータのリストであるアイコンブラックリストと、
ファイルのアイコンデータを抽出し、前記ファイルが前記許可プログラムリストに含まれないとき、前記抽出したアイコンデータが前記アイコンブラックリストに含まれるかを判定し、前記判定の結果、前記抽出したアイコンデータが前記アイコンブラックリストに含まれるならば、前記ファイルを不正プログラムとして検知するファイル検査部とを有することを特徴とする情報処理装置。
【請求項１６】
前記ファイル検査部は、前記判定の結果、前記抽出したアイコンデータが前記アイコンブラックリストに含まれないならば、前記抽出したアイコンデータと前記アイコンブラックリストに含まれる前記アイコンデータとの類似度を求め、
前記類似度が予め定めた閾値以上のとき、前記ファイルを不正プログラムの疑いがあるとして検知することを特徴とする請求項１５記載の情報処理装置。
【請求項１７】
前記ファイル検査部は、前記類似度が予め定めた閾値未満のとき、前記ファイルを不正プログラムではないとして検知することを特徴とする請求項１６記載の情報処理装置。
【請求項１８】
前記類似度は、前記アイコンブラックリストに含まれる前記アイコンデータによるピクセルに一致する前記抽出したアイコンデータによるピクセル数の割合であることを特徴とする請求項１６記載の情報処理装置。
【請求項１９】
前記ファイルは、ショートカットファイルの参照先に格納された実行ファイルであることを特徴とする請求項１５記載の情報処理装置。
【請求項２０】
前記ファイルは、前記情報処理装置内にあって、利用者により選択されたファイルであることを特徴とする請求項１５記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータウイルスなどの不正なプログラムが情報処理装置内に存在することを検知する技術に関する。
【背景技術】
【０００２】
コンピュータウイルスなどの不正なプログラムは日々新種が出現しており、これらから情報処理装置を守るために様々な技術を用いる必要がある。
【０００３】
コンピュータウイルスなどの不正なプログラムの多くは実行ファイル形式で流通している。実行ファイルは自身の存在をユーザへ見せるために、実行ファイルの存在を示すアイコンをその内部（ファイルデータ及びファイルのメタデータのいずれか）に持っていることが多い。コンピュータウイルスの中には、自身の存在を示すアイコンをフォルダや音楽ファイルなどの、他のものを表すアイコンに設定して（あたかも正当なフォルダやファイルのアイコンに偽装して）、ユーザの誤実行を誘発する目的を持ったものがある。
【０００４】
このようなアイコンを偽装した実行ファイルを見つけ出すための技術として、アイコンがユーザに対して表示される際に、そのファイルが実行ファイルである場合に、実行ファイルである旨を表す情報を強制的にオーバレイするソフトウェアがある（非特許文献１）。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】偽装解除http://fos.qp.land.to/static/fos_soft/ols_exv.html (2008年12月22日 確認)
【発明の概要】
【発明が解決しようとする課題】
【０００６】
情報処理装置がコンピュータウイルスに感染すると、その情報処理装置のデータの破壊や盗用、漏えいといった被害が発生するので、コンピュータウイルスであるファイルを検知することは重要である。
【０００７】
上記従来技術ではファイルが実行ファイルかどうかを見分けることが可能だが、その実行ファイルがコンピュータウイルスであるかどうかの判断はできない。また、アイコンに実行ファイルである旨の情報が付与されていても、ユーザがそれに気付かず実行することは避けられない。
【課題を解決するための手段】
【０００８】
本発明は、上記課題を解決するために、次のような態様の不正プログラム検知方法、不正プログラム検知プログラム、および情報処理装置である。情報処理装置に、不正でないと判明しているプログラムのリストである許可プログラムリストと実行ファイルが保持していてはいけないアイコンを表示するためのアイコンデータのリストであるアイコンブラックリストとを設ける。情報処理装置は、ファイルのアイコンデータを抽出し、そのファイルが許可プログラムリストに含まれないとき、抽出したアイコンデータがアイコンブラックリストに含まれるかを判定し、抽出したアイコンデータがアイコンブラックリストに含まれるならば、そのファイルを不正プログラムとして検知する。
【０００９】
本発明の他の態様は、抽出したアイコンデータがアイコンブラックリストに含まれないならば、抽出したアイコンデータとアイコンブラックリストに含まれるアイコンデータとの類似度を求め、類似度が予め定めた閾値以上のとき、そのファイルを不正プログラムの疑いがあるとして検知する。
【００１０】
本発明のさらに他の態様は、ファイルを不正プログラムの疑いがあるとして検知したとき、検知結果を表示装置に表示し、検知結果の表示に対応して、入力装置からファイルの削除の指示を入力したとき、そのファイルを削除する。
【００１１】
本発明のさらに他の態様は、ファイルの削除に応じて、抽出したアイコンデータをアイコンブラックリストに追加する。
【００１２】
本発明のさらに他の態様は、ファイルを不正プログラムの疑いがあるとして検知したとき、検知結果を表示装置に表示し、検知結果の表示に対応して、入力装置からそのファイルを削除しないとの指示を入力したとき、そのファイルの許可プログラムリストへの追加の問い合わせを表示装置に表示し、問い合わせの表示に対応して、入力装置からそのファイルの追加の指示を入力したとき、そのファイルを許可プログラムリストへ追加する。
【００１３】
本発明のさらに他の態様は、類似度が予め定めた閾値未満のとき、そのファイルを不正プログラムではないとして検知する。
【００１４】
本発明のさらに他の態様は、類似度は、アイコンブラックリストに含まれるアイコンデータによるピクセルに一致する抽出したアイコンデータによるピクセル数の割合である。
【００１５】
本発明のさらに他の態様は、前述のファイルは、ショートカットファイルの参照先に格納された実行ファイルである。
【００１６】
本発明のさらに他の態様は、前述のファイルは、情報処理装置内にあって、利用者により選択されたファイルである。
【発明の効果】
【００１７】
本発明によれば、正当なフォルダやファイルのアイコンに偽装したアイコンを持つコンピュータウイルス（不正プログラム）の存在を検知できる。
【図面の簡単な説明】
【００１８】
【図１】情報処理装置のハードウェア構成例である。
【図２】不正プログラム検知プログラムの構成例である。
【図３】許可プログラムリストの一例である。
【図４】アイコンブラックリストの一例である。
【図５】実施例１における不正プログラム検知プログラムの処理フローチャートである。
【図６】実施例１におけるファイル検査部の処理フローチャートである。
【図７】検査結果通知部の処理フローチャートである。
【図８】不正プログラムの疑いのあるファイルを検知したときの利用者への通知画面である。
【図９】不正プログラムを検知したときの利用者への通知画面である。
【図１０】利用者へファイル削除完了を通知する画面である。
【図１１】許可ファイルリストにファイルを追加するかどうかを利用者へ問い合わせる画面である。
【図１２】実施例２におけるファイル検査部の処理フローチャートである。
【図１３】実施例３における不正プログラム検知プログラムの構成例である。
【図１４】ログの一例である。
【図１５】実施例３における不正プログラム検知プログラムの処理フローチャートである。
【図１６】スキャン結果通知部の処理フローチャートである。
【図１７】利用者へのスキャン結果通知画面である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施の形態について、図面を用いて説明する。なお以降の説明は本発明の実施形態を示すものであり、本発明の構成や機能その他を制限するものではない。
【実施例１】
【００２０】
実施例１では、自身の存在を示すアイコンをフォルダなどの正当なものと同一にすることで、利用者の目を欺こうとするコンピュータウイルスなどの不正プログラムを検知する実施形態について説明する。
【００２１】
図１は、不正プログラム検知プログラムを実行する情報処理装置１０１のハードウェア構成例である。情報処理装置１０１は、演算装置１０２、メモリ１０３、ハードディスク等の記憶装置１０４、ネットワークカードなどの通信装置１０５、キーボードやマウス等の入力装置１０６、LCD(Liquid Crystal Display)等の表示装置１０７を備える。演算装置１０２は、記憶装置１０４に格納されたプログラムを実行し、各部の制御を行う。記憶装置１０４は、演算装置１０２が実行するプログラムおよび演算装置１０２が使用するデータ等を格納する。通信装置１０５は、ネットワークを介して他の機器からデータを受信して演算装置１０２へ送ると共に、演算装置１０２が生成したデータを、ネットワークを介して他の機器へ送信する。演算装置１０２は、キーボードやマウス等の入力装置１０６、LCD等の表示装置１０７を制御する。演算装置１０２は、キーボードやマウス等の入力装置１０６からデータを取得する。また、演算装置１０２は、生成したデータを、LCD等の表示装置１０７へ出力する。記憶装置１０４にはプログラムが格納されており、当該プログラムは記憶装置１０４から読みだされて、メモリ１０２にロードされ、演算装置１０２によって実行される。情報処理装置１０１は、これらのプログラムを記憶装置１０４から読み取って実行するが、他の例として、CD、DVD等の光学記録媒体、MO等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等の記録媒体から当該プログラムを取得してもよい。また他の例として、他の装置から、通信媒体を介して、これらのプログラムを取得してもよい。通信媒体とは、ネットワークまたはこれらを伝搬するディジタル信号または搬送波を指す。
【００２２】
図２に、コンピュータウイルスなどの不正プログラムを検知する不正プログラム検知プログラムの構成の一例を示す。不正プログラム検知プログラム２０１は、ファイルを入力として、入力したファイルが不正なプログラムであるかを判断するファイル検査部２０２と、ファイル検査部からの判断結果の出力に応じて利用者への通知を行う検査結果通知部２０３と、不正なプログラムでないと判明しているプログラムのリストである許可プログラムリスト２０４と、実行ファイルが内部に保持していてはいけないアイコンを表示するためのアイコンデータのリストであるアイコンブラックリスト２０５とで構成される。
【００２３】
図３に、許可プログラムリスト２０４の一例を示す。許可プログラムリスト２０４はファイルハッシュ値３０１で構成される。ファイルハッシュ値３０１は、不正なプログラムでないと判明しているプログラムの実行ファイルのMD5によるハッシュ値である。ファイルハッシュ値３０１として格納する値はMD5によるハッシュ値に限らず、他の例として、SHA1によるハッシュ値、または実行ファイルのデータそのものなど、ファイルを一意に特定できる情報であればよい。
【００２４】
図４に、アイコンブラックリスト２０５の一例を示す。アイコンブラックリスト２０５はアイコンデータ４０１、説明４０２で構成される。アイコンデータ４０１は、実行ファイルが内部に保持していてはいけないアイコンのデータであり、説明４０２は当該アイコンブラックリストのアイコンデータ４０１が何を表すアイコンであるかを示すものである。実行ファイルが内部に保持していてはいけないアイコンとは、偽装されてはいけない正当なフォルダやファイルのアイコンである。アイコンブラックリスト２０５に格納されているアイコンのサイズは不正プログラム検知プログラム２０１の動作するオペレーティングシステムによって変化してもよい。また、オペレーティングシステムによっては使用可能なアイコンのサイズが複数ある場合があり、そのような場合には同じアイコンでありながら、サイズの異なるアイコンデータが複数存在する構成になっていてもよい。
【００２５】
図５に、不正プログラム検知プログラム２０１の処理フローチャートの一例を示す。不正プログラム検知プログラム２０１は、実行を開始すると、不正プログラム検知プログラムが２０１動作している情報処理装置１０１内でのファイルアクセスを監視する（ステップ５０１）。ファイルアクセスを検知し（ステップ５０２）、当該ファイルアクセスが書き込みアクセスであるかを判定する（ステップ５０３）。情報処理装置１０１内でのファイルの新規作成、ファイルのコピー、ファイルの上書き保存、インターネットからのファイルのダウンロードや圧縮ファイルの展開といったメモリ１０２から記憶装置１０４などへのファイルの書き込みを伴う動作は書き込みアクセスとして検知されるため、ステップ５０３での書き込みアクセスの判定は、上記動作のいずれかであるかの判定と同じ意味を持つ。当該ファイルアクセスが書き込みアクセス以外のアクセスである場合には、ステップ５０１へ戻り、ファイルアクセスの監視を継続する。当該ファイルアクセスが書き込みアクセスである場合には、当該ファイルアクセスの対象のファイルに関する情報（ファイルデータ及びファイルの属性や各の場所などを示すメタデータ）を入力として、ファイル検査部２０２を呼び出す（ステップ５０４）。ファイル検査部２０２から得られた結果を入力として、検査結果通知部２０３を呼び出す（ステップ５０５）。その後、ステップ５０１へ戻り、ファイルアクセスの監視を継続する。
【００２６】
図６に、ファイル検査部２０２の処理フローチャートの一例を示す。入力として与えられたファイルの情報を取得する（ステップ６０１）。当該ファイルがアイコンデータを内部に含む実行ファイルであるかどうかを判定する（ステップ６０２）。実行ファイルがPE（Portable Executable）フォーマットのファイルである場合、ファイル内のリソースセクションにアイコンのデータは含まれている。当該ファイルがアイコンデータを内部に含む実行ファイルでない場合には、当該ファイルは不正プログラムではないということを示す「OK」を結果として不正プログラム検知プログラム２０１に返し（ステップ６０３）、処理を終了する。
【００２７】
当該ファイルがアイコンデータを内部に含む実行ファイルである場合には、当該ファイルのハッシュ値を計算する（ステップ６０４）。ここで計算するハッシュ値は許可プログラムリスト２０４のファイルハッシュ値３０１と同じアルゴリズムを用いる。許可プログラムリスト２０４を参照し（ステップ６０５）、計算したハッシュ値が許可プログラムリストに含まれているか、すなわち、当該ファイルが、不正なプログラムでないと判明している許可プログラムであるかを判定する（ステップ６０６）。計算したハッシュ値が許可プログラムリスト２０４に含まれている場合、ステップ６０３へ移り、当該ファイルは不正プログラムではないということを示す「OK」を結果として不正プログラム検知プログラム２０１に返し、処理を終了する。
【００２８】
計算したハッシュ値が許可プログラムリスト２０４に含まれていない場合、当該ファイルに含まれているアイコンデータを抽出する（ステップ６０７）。アイコンブラックリスト２０５を参照し（ステップ６０８）、アイコンブラックリスト２０５のアイコンの中に、抽出したアイコンデータと一致するものがあるかを判定する（ステップ６０９）。抽出したアイコンデータと一致するものがアイコンブラックリスト２０５にある場合には、当該ファイルが不正プログラムであることを示す「NG」を結果として不正プログラム検知プログラム２０１に返し（ステップ６１０）、終了する。
【００２９】
当該ファイルから抽出したアイコンデータと一致するものがアイコンブラックリスト２０５にない場合には、抽出したアイコンデータとアイコンブラックリスト２０５内の各アイコンデータ４０１との類似度を計算する（ステップ６１１）。類似度は、一例として、アイコン画像の全ピクセルのうち一致したピクセルの割合を計算することにより求める。このとき、抽出したアイコンデータによるピクセル数を基準（全ピクセル数）とし、アイコンブラックリスト２０５内のアイコンデータによるピクセルに一致する数の割合を求めても良いし、逆にアイコンブラックリスト２０５内のアイコンデータによるピクセル数を基準としても良い。また、画像の類似度を計算する手法は数多く存在し、それらのうちどのような手法を用いてもよい。計算した類似度が閾値を超えているか判定する（ステップ６１２）。この閾値は事前に設定した値でもよいし、任意の学習アルゴリズムによって変化する値であってもよい。類似度が閾値を超えている場合、当該ファイルが不正なプログラムである疑いがあることを示す「GRAY」を結果として不正プログラム検知プログラム２０１に返し（ステップ６１３）、終了する。類似度が閾値を超えていない場合、ステップ６０３へ進み、当該ファイルが不正なプログラムでないことを示す「OK」を結果として不正プログラム検知プログラム２０１に返し、処理を終了する。
【００３０】
ファイル検査部２０２の処理フローチャートのステップ６０９では、検査対象のファイルから抽出したアイコンデータがアイコンブラックリスト２０５のいずれかのアイコンデータ４０１と一致するかを判定するが、ここでの一致判定には、アイコンデータの全てを用いる方式だけでなく、他の方式として、アイコンの一部のデータのみを比較し、当該部分のデータが一致するかで判定する方式を用いてもよい。その場合、アイコンブラックリスト２０５内のアイコンデータ４０１は、比較に用いる部分のみのデータを格納しておいてもよい。
【００３１】
図７に、検査結果通知部２０３の処理フローチャートの一例を示す。入力として与えれられた検査結果を取得し（ステップ７０１）、検査結果が「OK」であるかを判定する（ステップ７０２）。検査結果が「OK」である場合、処理を終了する。検査結果が「OK」でない場合、検査結果が「GRAY」であるかを判定する（ステップ７０３）。検査結果が「GRAY」である場合、ステップ７０４へ進み、不正プログラムの疑いがあるファイルが存在する旨を利用者へ通知し、当該ファイルを削除するかを利用者に問い合わせ（ステップ７０４）、利用者からの回答を取得する（ステップ７０５）。回答が「削除する」であるかを判定する（ステップ７０６）。回答が「削除する」である場合には、当該ファイルから抽出したアイコンデータをアイコンブラックリスト２０５へ追加する（ステップ７０７）。当該ファイルから抽出したアイコンデータは、ファイル検査部２０２で抽出したものを不正プログラム検知プログラム２０１経由で取得しても良いし、新たに抽出しても良い。これにより、利用者が「不正プログラムなので削除する」と判断したファイルのアイコンデータがアイコンブラックリスト２０５に追加され、後に、同じファイルが検知された場合には、ファイル検査部２０２の結果が「GRAY」ではなく、「NG」となる。当該ファイルを削除し（ステップ７０８、）、当該ファイルを削除した旨を利用者へ提示し（ステップ７０９）、処理を終了する。
【００３２】
利用者からの回答が「削除する」でない場合には、利用者に、当該ファイルを許可ファイルリスト２０４に追加するかを問い合わせ（ステップ７１０）、利用者からの回答を取得する（ステップ７１１）。利用者からの回答が「追加する」であるかを判定する（ステップ７１２）。回答が「追加する」である場合には、当該ファイルのハッシュ値を許可ファイルリスト２０４に追加し（ステップ７１３）、処理を終了する。これにより、後に、同じファイルが検知された場合にはファイル検査部２０２の結果が「OK」になる。回答が「追加する」でない場合には、処理を終了する。
【００３３】
ステップ７０３の判定で、検査結果が「GRAY」でない場合には、不正プログラムが存在する旨を利用者へと通知し、当該ファイルを削除するかを利用者へ問い合わせ（ステップ７１４）、利用者からの回答を取得する（ステップ７１５）。回答が「削除する」であるかを判定する（ステップ７１６）。回答が「削除する」である場合には、ステップ７０８へ進み、回答が「削除する」でない場合には、処理を終了する。
【００３４】
図８に、検査結果通知部２０３の処理フローチャートのステップ７０４で不正プログラムの疑いのあるファイルを検知したときの利用者へ通知する、表示装置１０７の画面の一例を示す。利用者へ提示する画面８０１は、タイトル部８０２、利用者へのメッセージ部８０３、「削除する」ボタン８０４、「削除しない」ボタン８０５で構成される。利用者へのメッセージ部８０３には不正プログラムの疑いがあるファイルが検知された旨と当該ファイルのオペレーティングシステム内での配置場所が記述され、当該ファイルを削除するか利用者に問い合わせる。
【００３５】
図９に、検査結果通知部２０３の処理フローチャートのステップ７１４で不正プログラムを検知したときの利用者へ通知する、表示装置１０７の画面の一例を示す。利用者へ提示する画面９０１は、タイトル部９０２、利用者へのメッセージ部９０３、「削除する」ボタン９０４、「削除しない」ボタン９０５で構成される。利用者へのメッセージ部９０３には不正プログラムが検知された旨と当該ファイルの記憶装置１０４内の格納場所(当該ファイルへアクセスするときのパス名)が記述され、当該ファイルを削除するか利用者に問い合わせる。
【００３６】
図１０に、検査結果通知部２０３の処理フローチャートのステップ７０９で利用者へファイル削除完了を通知する、表示装置１０７の画面の一例を示す。利用者へ提示する画面１００１は、タイトル部１００２、利用者へのメッセージ部１００３、確認ボタン１００４で構成される。
【００３７】
図１１に、検査結果通知部２０３の処理フローチャートのステップ７１０で利用者へ許可ファイルリストにファイルを追加するかどうかを問い合わせる、表示装置１０７の画面の一例を示す。利用者へ提示する画面１１０１は、タイトル部１１０２、利用者へのメッセージ部１１０３、「追加する」ボタン１１０４、「追加しない」ボタン１１０５で構成される。
【００３８】
許可プログラムリスト２０４、およびアイコンブラックリスト２０５はメモリ１０３上、もしくは記憶装置１０４上に格納される他に、情報処理装置１０１とネットワークで接続された他の情報処理装置上の記憶装置などに格納されていてもよい。その場合、ファイル検査部２０２の処理フローチャートのステップ６０５およびステップ６０８と、検査結果通知部２０３の処理フローのステップ７０７およびステップ７１３とでは、各リストへのアクセスを通信装置１０５を介して実行する。
【００３９】
ところで、情報処理装置１０１のオペレーティングシステムの中には、どのアイコンがどのような機能やファイル形式に対応付けられているかを設定情報として保持しているものがある。本実施例では、アイコンブラックリスト２０５は不正プログラム検知プログラム２０１の実行時にメモリ１０３もしくは記憶装置１０４上に格納されているとしている。他の例として、オペレーティングシステムが保持しているアイコンと機能やファイル形式との対応情報をブラックリストとして使用することとして、ファイル検査部２０２の処理フローチャートのステップ６０８でアイコンブラックリスト２０５を参照する代わりに、オペレーティングシステムが保持しているアイコンと機能やファイル形式との対応情報を参照してもよい。この場合、検査結果通知部２０３の処理フローチャートのステップ７０７でのアイコンブラックリスト２０５への追加を省略するか、もしくは、検査結果通知部２０３の処理フローチャートのステップ７０７での追加用に別途アイコンブラックリスト２０５をメモリ１０３上もしくは記憶装置１０４上に設ける。後者の場合、ファイル検査部２０２の処理フローチャートのステップ６０８で参照する先は、オペレーティングシステムが保持しているアイコンと機能やファイル形式との対応情報、および、アイコンブラックリスト２０５の両方となる。
【００４０】
本実施例によれば、アイコンを偽装した不正プログラムがコンピュータ内に流入した場合に、それを検知することが可能となる。
【実施例２】
【００４１】
本実施例では、ファイル自体はアイコンデータを含まず、どこに格納されているアイコンデータを用いるかを示す参照先情報をファイルが格納している場合の実施形態について説明する。
【００４２】
本実施例の実施例１との相違は、ファイル検査部２０２の処理フローチャートにある。実施例１と共通する内容に関しては、説明を省略する。
【００４３】
図１２に、本実施例におけるファイル検査部２０２の処理フローチャートの一例を示す。入力として与えられたファイルの情報を取得する（ステップ１２０１）。当該ファイルがアイコン参照先情報を内部に含む実行ファイルであるかどうかを判定する（ステップ１２０２）。当該ファイルがアイコン参照先情報を内部に含む実行ファイルでない場合には（ステップ１２０２）、当該ファイルがアイコン参照先情報を内部に含むショートカットファイルかを判定する（ステップ１２０３）。当該ファイルがアイコン参照先情報を内部に含むショートカットファイルである場合には、ショートカット先ファイルの情報を取得し、ショートカット先ファイルのハッシュ値を計算し（ステップ１２０５）、ステップ１２０７へと進む。
【００４４】
ステップ１２０３の判定で、当該ファイルがアイコン参照先情報を内部に含むショートカットファイルでない場合には、当該ファイルは不正プログラムではないということを示す「OK」を結果として不正プログラム検知プログラム２０１に返し、処理を終了する。
【００４５】
ステップ１２０２の判定で、当該ファイルがアイコン参照先情報を内部に含む実行ファイルである場合には、当該ファイルのハッシュ値を計算する（ステップ１２０６）。ステップ１２０５およびステップ１２０６で計算するハッシュ値は、許可プログラムリスト２０４のファイルハッシュ値３０１と同じアルゴリズムを用いる。
【００４６】
以下のステップ１２０７〜１２１５の各ステップは、実施例１のファイル検査部２０２の処理フローチャート(図６)のステップ６０５〜６１３の各ステップと処理が同様であるので、説明を省略する。
【００４７】
本実施例によれば、実行ファイルのアイコンを偽装するのではなくショートカットファイルのアイコンを偽装している不正プログラムがコンピュータに流入してきた場合に、それを検知することが可能となる。
【実施例３】
【００４８】
本実施例では、情報処理装置１０１内の少なくとも一部のファイルを検査し、不正プログラムが情報処理装置１０１内に含まれていないか確認する実施形態について説明する。
【００４９】
図１３に、不正プログラム検知プログラム１３０１の構成の一例を示す。不正プログラム検知プログラム１３０１は、ファイルを入力として、当該ファイルが不正なプログラムであるかを判断するファイル検査部２０２と、情報処理装置１０１内の少なくとも一部のファイルの検査結果を利用者へ通知するスキャン結果通知部１３０２と、不正なプログラムでないと判明しているプログラムのリストである許可プログラムリスト２０４と、実行ファイルが内部に保持していてはいけないアイコンのリストであるアイコンブラックリスト２０５と、情報処理装置１０１内の少なくとも一部のファイルの検査結果を保持するログ１３０３とで構成される。本実施例におけるファイル検査部２０２、許可プログラムリスト２０４、アイコンブラックリスト２０５は、実施例１もしくは実施例２のものと同様である。
【００５０】
図１４に、ログ１３０３の一例を示す。ログ１３０３はファイル名１４０１、検査結果１４０２で構成される。ファイル名１４０１はファイル検査部２０２によって「NG」もしくは「GRAY」と判定されたファイル（ファイルへのパス名）を表し、検査結果１４０２は当該ファイルが「NG」と判定されたか「GRAY」と判定されたかを表す。
【００５１】
図１５に、不正プログラム検知プログラム１３０１の処理フローチャートの一例を示す。入力として与えられたスキャン対象リストを取得する（ステップ１５０１）。スキャン対象リストは情報処理装置１０１内の少なくとも一部のファイルのリストであり、利用者によって入力装置１０６を介して指定される。利用者は、ファイル名称の指定、又はファイルを格納しているフォルダや記憶装置の指定により、スキャン対象のファイルを選択する。
【００５２】
スキャン対象リストから１ファイル取り出し（ステップ１５０２）、取り出したファイルに関する情報を入力としてファイル検査部２０２を呼び出す（ステップ１５０３）。ファイル検査部２０２による結果が「NG」であるか判定する（ステップ１５０４）。判定の結果が「NG」である場合には、当該ファイルが「NG」と判定された旨をログ情報としてログ１３０３に追加し（ステップ１５０５）、ステップ１５０６へ移る。
【００５３】
判定の結果が「NG」でない場合は、判定の結果が「GRAY」であるか判定する（ステップ１５０７）。判定の結果が「GRAY」である場合には、当該ファイルが「GRAY」と判定された旨をログ１３０３にログ情報として追加し（ステップ１５０８）、ステップ１５０６へ移る。判定の結果が「GRAY」でない場合には、ステップ１５０６へ移る。
【００５４】
スキャン対象リストにファイルが残っているかを判定し（ステップ１５０６）、残っている場合はステップ１５０１へ戻り、残っていない場合はスキャン結果通知部１３０２を呼び出して（ステップ１５０９）、処理を終了する。
【００５５】
図１６に、スキャン結果通知部１３０２の処理フローチャートの一例を示す。ログ１３０３に格納されているログ情報(スキャン結果)を利用者へと提示する（ステップ１６０１）。表示装置１０７を用いて利用者へ提示する画面を図１７に示す。
【００５６】
図１７は、利用者へログ情報(スキャン結果)を通知する画面１７０１であり、タイトル部１７０２、ログ表示部１７０３、「チェックしたファイルを削除」ボタン１７０４、「終了」ボタン１７０５で構成される。ログ表示部１７０３は、ファイルを削除するかどうかを示すチェックボックス１７０４、不正プログラムであると検知されたファイル名１７０５、検査結果１７０６、同一もしくは類似していたアイコンの説明１７０７で構成されている。
【００５７】
図１６の説明に戻る。利用者のボタン押下を待つ（ステップ１６０２）。ボタンが押下されたら、押されたボタンが「チェックしたファイルを削除」ボタンかを判定し（ステップ１６０３）、押されたボタンが「チェックしたファイルを削除」ボタンである場合には、チェックボックスにチェックが入っているファイルを削除し（ステップ１６０４）、ステップ１６０２へ戻る。
【００５８】
押されたボタンが「チェックしたファイルを削除」ボタンでない場合には、押されたボタンが「終了」ボタンであるか判定し（ステップ１６０５）、「終了」ボタンである場合は処理を終了する。「終了」ボタンでない場合はステップ１６０２へ戻り、利用者のボタン押下を待つ。
【００５９】
本実施例によれば、アイコンを偽装した不正プログラムが既にコンピュータ内に存在していた場合に、それを検知することが可能となる。
【００６０】
以上説明した実施形態によれば、正当なフォルダやファイルのアイコンに偽装したアイコンを持つコンピュータウイルス（不正プログラム）の存在を検知できるので、情報の破壊や盗用、漏えいなどの被害を事前に防ぐことができる。
【符号の説明】
【００６１】
１０１：情報処理装置、１０２：演算装置、１０３：メモリ、１０４：記憶装置、１０５：通信装置、１０６：入力装置、１０７：表示装置、２０１：不正プログラム検知プログラム、２０２：ファイル検査部、２０３：検査結果通知部、２０４：許可プログラムリスト、２０５：アイコンブラックリスト、１３０１：不正プログラム検知プログラム、１３０２：スキャン結果通知部、１３０３：ログ。
【図１】
2010198565.tif 000003
【図２】
2010198565.tif 000004
【図３】
2010198565.tif 000005
【図４】
2010198565.tif 000006
【図５】
2010198565.tif 000007
【図６】
2010198565.tif 000008
【図７】
2010198565.tif 000009
【図８】
2010198565.tif 000010
【図９】
2010198565.tif 000011
【図１０】
2010198565.tif 000012
【図１１】
2010198565.tif 000013
【図１２】
2010198565.tif 000014
【図１３】
2010198565.tif 000015
【図１４】
2010198565.tif 000016
【図１５】
2010198565.tif 000017
【図１６】
2010198565.tif 000018
【図１７】
2010198565.tif 000019