(57)【特許請求の範囲】
【請求項１】
所定のファイルのリソース内からアイコン画像のバイナリを抽出する特徴情報抽出部と、
前記抽出したアイコン画像のバイナリから特徴ベクトルを生成する特徴ベクトル生成部と、
前記特徴ベクトルを用いて機械学習により前記所定のファイルがマルウェアかどうかを判定する判定部と、
前記判定部が前記所定のファイルをマルウェアと判定した場合に、所定のマルウェア初期ポイントを設定する初期ポイント設定部と、
前記所定のファイルがマルウェアかどうかを判定する指標となるポイント閾値を記憶するポイント閾値記憶部と、
前記所定のファイルが所定の条件を満たすときに前記マルウェア初期ポイントに所定のポイントを加算または減算するポイント加減部と、
前記ポイント加減部によって加算または減算されて算出されるポイントが、前記ポイント閾値記憶部が記憶するポイント閾値を超えるかどうかを判定し、該ポイント閾値を超える場合には、前記所定のファイルをマルウェアと判定する閾値判定部と、
を備える情報処理装置。
【請求項２】
コンピュータが、
所定のファイルのリソース内からアイコン画像のバイナリを抽出し、
前記抽出したアイコン画像のバイナリから特徴ベクトルを生成し、
前記特徴ベクトルを用いて機械学習により前記所定のファイルがマルウェアかどうかを判定し、
前記所定のファイルをマルウェアと判定した場合に、所定のマルウェア初期ポイントを設定し、
前記所定のファイルがマルウェアかどうかを判定する指標となるポイント閾値を記憶し、
前記所定のファイルが所定の条件を満たすときに前記マルウェア初期ポイントに所定のポイントを加算または減算し、
前記加算または減算されて算出されるポイントが、前記記憶するポイント閾値を超えるかどうかを判定し、該ポイント閾値を超える場合には、前記所定のファイルをマルウェアと判定する情報処理方法。
【請求項３】
コンピュータに、
所定のファイルのリソース内からアイコン画像のバイナリを抽出し、
前記抽出したアイコン画像のバイナリから特徴ベクトルを生成し、
前記特徴ベクトルを用いて機械学習により前記所定のファイルがマルウェアかどうかを判定し、
前記所定のファイルをマルウェアと判定した場合に、所定のマルウェア初期ポイントを設定し、
前記所定のファイルがマルウェアかどうかを判定する指標となるポイント閾値を記憶し、
前記所定のファイルが所定の条件を満たすときに前記マルウェア初期ポイントに所定のポイントを加算または減算し、
前記加算または減算されて算出されるポイントが、前記記憶するポイント閾値を超えるかどうかを判定し、該ポイント閾値を超える場合には、前記所定のファイルをマルウェアと判定することを実行させるためのプログラム。
【請求項４】
前記コンピュータに、
前記バイナリを抽出するのに、所定の間隔で抽出することを実行させるための請求項３に記載のプログラム。
【請求項５】
前記コンピュータに、
前記所定のファイルのアイコン画像が予め正規のアイコン画像として登録した当該アイコン画像と比較して正規のアイコン画像かどうかを判定し、
前記所定のファイルのアイコン画像が前記正規のアイコン画像でないと判定した場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させるための請求項３又は請求項４に記載のプログラム。
【請求項６】
前記所定のファイルのリソース内に保有されるアイコンの数を抽出し、
前記抽出したアイコンの数が所定の数を下回る場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させるための請求項３又は請求項４に記載のプログラム。
【請求項７】
前記所定のファイルからバージョン情報を抽出し、
前記所定のファイルのアイコン画像が前記バージョン情報に対応しない場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させるための請求項３又は請求項４に記載のプログラム。
【請求項８】
前記所定のファイルからプログラミング言語情報を抽出し、
前記抽出されるプログラミング言語情報が、前記所定のファイルが保持するアイコン画像に対応するプログラミング言語情報でない場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させるための請求項３又は請求項４に記載のプログラム。
【請求項９】
前記所定のファイルからコンパイラ情報を抽出し、
前記抽出されるコンパイラ情報が、前記所定のファイルが保持するアイコン画像に対応するコンパイラ情報でない場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させるための請求項３又は請求項４に記載のプログラム。
【請求項１０】
前記所定のファイルからパッカーに関する情報を抽出し、
前記所定のファイルからパッカーに関する情報を抽出した場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させるための請求項３又は請求項４に記載のプログラム。
【請求項１１】
前記所定のファイルから自己解凍書庫情報を抽出し、
前記マルウェア初期ポイントに所定のポイントを加算することを実行させるための請求項３又は請求項４に記載のプログラム。
【請求項１２】
前記所定のファイルからファイル名を抽出し、
前記抽出されたファイル名の文字数が所定の文字数を超える場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させるための請求項３又は請求項４に記載のプログラム。
【請求項１３】
前記所定のファイルからファイル名を抽出し、
前記抽出されたファイル名にユニコード制御文字が含まれる場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させるための請求項３又は請求項４に記載のプログラム。
【請求項１４】
前記所定のファイルからファイル名を抽出し、
前記抽出されたファイル名に複数の拡張子が含まれる場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させるための請求項３又は請求項４に記載のプログラム。
【請求項１５】
前記所定のファイルからファイル名を抽出し、
前記抽出されたファイル名に２バイト文字が含まれている場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させるための請求項３又は請求項４に記載のプログラム。
【請求項１６】
請求項３乃至１５のいずれか一に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、プログラム及びプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。本発明は、特に、マルウェアを検出する情報処理装置、情報処理方法、プログラム及びプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
近年、アイコンを一見無害に見える他のソフトウェアやファイルのアイコンに偽装した上で、不正かつ有害な動作を行う意図で作成された悪意のあるソフトウェアや悪質なコードをユーザに送付し、ユーザが悪意のあるソフトウェアや悪質なコードをそれと知らずに実行してしまう問題が生じている。ここで、不正かつ有害な動作を行う意図で作成された悪意のあるソフトウェアや悪質なコードをマルウェア（Ｍａｌｉｃｉｏｕｓ  Ｓｏｆｔｗａｒｅ）と呼ぶ。
【０００３】
マルウェアに感染したコンピュータはネットワークに接続された他のコンピュータに対して不正あるいは有害な動作を行うことが特徴であり、例えば、迷惑メールの大量送信や、サーバへの不正な大量アクセスによるサービス妨害攻撃といった悪質な行動を行うためのツールとして使われる。マルウェアの脅威は外部に対する攻撃のみならず、感染したコンピュータからクレジットカードの番号やアドレス帳などの個人情報を抽出し、外部のコンピュータに送信する動作も存在する。このようなマルウェアによる被害を未然に防ぐためにはマルウェア本体、あるいはマルウェア本体を送受信している通信を検出する技術が必要となる。
【０００４】
このようなマルウェアの中には、Ｗｏｒｄ文書などのドキュメントファイルに関連付けされるアイコンそのもの、一見そのように見えるアイコンを保有し自身をドキュメントファイルに誤認させる工夫がされているもの、画像ファイルやフォルダなどのアイコンそのもの、一見そのように見えるアイコンを用いて実行を誘導する工夫がされているものが存在する。ここでは、これらのアイコン類を「偽装アイコン」と呼ぶ。
【０００５】
従来、偽装アイコンを有するマルウェアを検知する方法としては、図１２に示すように、実行ファイルのリソース内からアイコンイメージのハッシュ値を抽出し、このハッシュ値と予め保持している偽装アイコンのハッシュ値のリストとのマッチングを行い、合致すれば偽装アイコンを保持していると判別する方法がある。しかし、この方法では、予め保持している偽装アイコンには対応できるものの、アイコンイメージが少しでも変化した場合には、ハッシュ値が異なることから、偽装アイコンと判別できないという問題がある。図１３のアイコンイメージは、左上の画素が異なるだけであるが、ハッシュ値が異なる。
【０００６】
他方、特許文献１に開示された技術は、危険性判定の対象となる対象ファイルのアイコン画像の特徴情報と、実行形式ファイルではない文書ファイルなどのファイルのアイコン画像として一般によく知られているアイコン画像である基本アイコン画像の特徴情報との類似度を算出し、算出された類似度に基づいて、対象ファイルの危険性を判定する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１５−１９１４５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１に開示される技術では、基本アイコン画像の特徴情報との類似度を算出するのみで、本来は正常なファイルであっても、誤って偽装アイコンだと判定してしまうといった問題がある。
【０００９】
本発明は、上記のような従来技術に伴う課題を解決しようとするものであって、その目的とするところは、アイコンイメージが少しでも変化した場合でも、偽装アイコンをマルウェアと判定しやすくするところにある。
【００１０】
また、本発明の他の目的は、本来は正常なファイルを誤って偽装アイコンと判定するといったような誤検知を抑制するところにある。
【課題を解決するための手段】
【００１１】
本発明の一実施形態によれば、所定のファイルのリソース内からアイコン画像のバイナリを抽出する特徴情報抽出部と、前記抽出したアイコン画像のバイナリから特徴ベクトルを生成する特徴ベクトル生成部と、前記特徴ベクトルを用いて機械学習により前記所定のファイルがマルウェアかどうかを判定する判定部と、を備える情報処理装置が提供される。
【００１２】
前記特徴情報抽出部は、前記アイコン画像から数値を抽出し、偽装アイコン画像を数値化した数値を記憶する数値記憶部と、前記特徴情報抽出部が抽出した数値と前記数値記憶部が記憶する数値とに基づいて前記所定のファイルがマルウェアかどうかを判定する概括的判定部と、を備えることを特徴とする情報処理装置であってもよい。
【００１３】
少なくとも前記判定部及び前記概括的判定部のうち一つが前記所定のファイルをマルウェアと判定した場合に、所定のマルウェア初期ポイントを設定する初期ポイント設定部と、前記所定のファイルがマルウェアかどうかを判定する指標となるポイント閾値を記憶するポイント閾値記憶部と、前記所定のファイルが所定の条件を満たすときに前記マルウェア初期ポイントに所定のポイントを加算または減算するポイント加減部と、前記ポイント加減部によって加算または減算されて算出されるポイントが、前記ポイント閾値記憶部が記憶するポイント閾値を超えるかどうかを判定し、該ポイント閾値を超える場合には、前記所定のファイルをマルウェアと判定する閾値判定部と、をさらに備えることを特徴とする情報処理装置であってもよい。
【００１４】
前記マルウェアと判定された所定のファイルのアイコン画像を数値化する数値化部をさらに備え、前記数値記憶部は、前記数値化部によって数値化された数値を記憶することを特徴とする情報処理装置であってもよい。
【００１５】
本発明の一実施形態によれば、コンピュータが、所定のファイルのリソース内からアイコン画像のバイナリを抽出し、前記抽出したアイコン画像のバイナリから特徴ベクトルを生成し、前記特徴ベクトルを用いて機械学習により前記所定のファイルがマルウェアかどうかを判定する情報処理方法が提供される。
【００１６】
本発明の一実施形態によれば、コンピュータに、所定のファイルのリソース内からアイコン画像のバイナリを抽出し、前記抽出したアイコン画像のバイナリから特徴ベクトルを生成し、前記特徴ベクトルを用いて機械学習により前記所定のファイルがマルウェアかどうかを判定することを実行させるためのプログラムが提供される。
【００１７】
前記コンピュータに、前記バイナリを抽出するのに、所定の間隔で抽出することを実行させてもよい。
【００１８】
前記コンピュータに、前記アイコン画像から数値を抽出し、偽装アイコン画像を数値化した数値を記憶し、前記抽出した数値と前記記憶する数値とに基づいて前記所定のファイルがマルウェアかどうかを判定することをさらに実行させてもよい。
【００１９】
前記コンピュータに、少なくとも前記特徴ベクトルを用いて機械学習により前記所定のファイルがマルウェアかどうかを判定すること及び前記抽出した数値と前記記憶する数値とに基づいて前記所定のファイルがマルウェアかどうかを判定することのうち一つが前記所定のファイルをマルウェアと判定した場合に、所定のマルウェア初期ポイントを設定し、前記所定のファイルがマルウェアかどうかを判定する指標となるポイント閾値を記憶し、前記所定のファイルが所定の条件を満たすときに前記マルウェア初期ポイントに所定のポイントを加算または減算し、前記加算または減算されて算出されるポイントが、前記記憶するポイント閾値を超えるかどうかを判定し、該ポイント閾値を超える場合には、前記所定のファイルをマルウェアと判定することを実行させてもよい。
【００２０】
前記コンピュータに、前記マルウェアと判定された所定のファイルのアイコン画像を数値化し、前記数値化された数値を記憶することを実行させてもよい。
【００２１】
前記コンピュータに、前記所定のファイルのアイコン画像が正規のアイコン画像かどうかを判定し、前記所定のファイルのアイコン画像が正規のアイコン画像でないと判定した場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させてもよい。
【００２２】
前記所定のファイルのリソース内に保有されるアイコンの数を抽出し、前記抽出したアイコンの数が所定の数を下回る場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させてもよい。
【００２３】
前記所定のファイルからバージョン情報を抽出し、前記所定のファイルのアイコン画像が前記バージョン情報に対応しない場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させてもよい。
【００２４】
前記所定のファイルからプログラミング言語情報を抽出し、前記抽出されるプログラミング言語情報が、前記所定のファイルが保持するアイコン画像に対応するプログラミング言語情報でない場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させてもよい。
【００２５】
前記所定のファイルからコンパイラ情報を抽出し、前記抽出されるコンパイラ情報が、前記所定のファイルが保持するアイコン画像に対応するコンパイラ情報でない場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させてもよい。
【００２６】
前記所定のファイルからパッカーに関する情報を抽出し、前記所定のファイルからパッカーに関する情報を抽出した場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させてもよい。
【００２７】
前記所定のファイルから自己解凍書庫情報を抽出し、前記所定のファイルから自己解凍書庫情報を抽出した場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させてもよい。
【００２８】
前記所定のファイルからファイル名を抽出し、前記抽出されたファイル名の文字数が所定の文字数を超える場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させてもよい。
【００２９】
前記所定のファイルからファイル名を抽出し、前記抽出されたファイル名にユニコード制御文字が含まれる場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させてもよい。
【００３０】
前記所定のファイルからファイル名を抽出し、前記抽出されたファイル名に複数の拡張子が含まれる場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させてもよい。
【００３１】
前記所定のファイルからファイル名を抽出し、前記抽出されたファイル名に２バイト文字が含まれている場合に、前記マルウェア初期ポイントに所定のポイントを加算することを実行させてもよい。
【００３２】
本発明の一実施形態によれば、前記のプログラムを記録したコンピュータ読み取り可能な記録媒体が提供されてもよい。
【発明の効果】
【００３３】
本発明によれば、アイコンイメージが少しでも変化した場合でも、偽装アイコンをマルウェアと判定しやすくすることができる。
【図面の簡単な説明】
【００３４】
【図１】本発明の一実施形態に係る情報処理装置の概念図である。
【図２】本発明の一実施形態に係る情報処理装置が特徴ベクトルを生成することを説明するための図である。
【図３】本発明の一実施形態に係る情報処理装置の判定部（モデル）を生成するフローを説明するための図である。
【図４】図３で生成したモデルを移植することを説明するための概念図である。
【図５】本発明の一実施形態に係る情報処理装置がマルウェアを判定するフローを説明するための図である。
【図６】本発明の他の実施形態に係る情報処理装置の概念図である。
【図７】本発明の他の実施形態に係る情報処理装置がマルウェアを判定するフローを説明するための図である。
【図８】本発明の他の実施形態に係る情報処理装置がマルウェアを判定するフローを説明するための図である。
【図９】本発明の他の実施形態に係る情報処理装置の概念図である。
【図１０】本発明の他の実施形態に係る情報処理装置がマルウェアを判定するフローを説明するための図である。
【図１１】本発明の他の実施形態に係る情報処理装置の概念図である。
【図１２】従来技術に係る偽装アイコンを有するマルウェアを検知するフローを説明するための図である。
【図１３】従来技術の課題を理解するためのアイコン画像及びアイコン画像に対応するハッシュ値を示す図である。
【発明を実施するための形態】
【００３５】
以下、本発明の一実施形態について、図面を参照しながら詳細に説明する。以下に示す実施形態は本発明の実施形態の一例であって、本発明はこれらの実施形態に限定されるものではない。なお、本実施形態で参照する図面において、同一部分または同様な機能を有する部分には同一の符号または類似の符号（数字の後にＡ、Ｂなどを付しただけの符号）を付し、その繰り返しの説明は省略する場合がある。また、図面の寸法比率は説明の都合上実際の比率とは異なったり、構成の一部が図面から省略されたりする場合がある。
【００３６】
＜第１実施形態＞
［情報処理装置の構成］
図１乃至図４を用いて、情報処理装置１について説明する。図１は、本発明の一実施形態に係る情報処理装置の概念図である。
【００３７】
情報処理装置１は、接続するユーザ端末３０ａ、３０ｂ、サーバ３３それぞれがネットワーク２７を介して接続する。なお、ユーザ端末の区別が不要な場合には、「ユーザ端末３０」と表記する。
【００３８】
ここで、ネットワーク２７は、例えば、ＬＡＮ（ローカルエリアネットワーク）やインターネット等のネットワークであり、無線／有線回線、専用回線等を問わず、ユーザ端末３０がワークフロー情報処理装置１に接続可能なネットワーク環境が適用される。
【００３９】
また、ユーザ端末３０は、多機能携帯電話、携帯電話やＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）等の移動通信端末装置、パーソナルコンピュータなどの通信機能及び演算機能を備えた情報処理端末装置等が含まれる。また、画面を表示する表示制御機能としてブラウザを備え、ＣＰＵ、メモリ及び情報処理装置１との間の通信制御を遂行する通信制御部等を含む。さらに、マウスやキーボード、タッチパネル等の操作入力装置及び表示装置を備えることができる。
【００４０】
情報処理装置１は、特徴情報抽出部１０、特徴ベクトル生成部１１及び判定部１２を備える。
【００４１】
特徴情報抽出部１０は、検体である所定のファイル（実行ファイルなど）のリソース内からアイコン画像のバイナリを抽出する。ここで、抽出したアイコン画像に対して、縮小や正規化などの加工を行ってもよい。
【００４２】
この例では、アイコン画像のバイナリの抽出は、すべての画素から抽出している。もっとも、アイコン画像のバイナリの抽出方法は、この方法に限定されるものではなく、所定の間隔でバイナリを抽出してもよい。例えば、左上の画素を（１、１）として、（１、３）、（１、５）・・・（２、１）、（２、３）・・・といったように奇数の画素のバイナリを抽出してもよいし、偶数の画素のバイナリを抽出してもよい。奇数の画素や偶数の画素ではなく、これらよりも間隔を大きくして、画素のバイナリを抽出してもよい。
【００４３】
特徴ベクトル生成部１１は、特徴情報抽出部１０が抽出したアイコン画像のバイナリから特徴ベクトルを生成する。図２を用いて、特徴ベクトルの生成について説明する。図２は、本発明の一実施形態に係る情報処理装置が特徴ベクトルを生成することを説明するための図である。
【００４４】
特徴ベクトル生成部１１は、アイコン画像の各画素のＲＧＢ値をベクトルとする。この例では、図２のアイコン画像の左上の画素は、「Ｒ：０ｘＤ４」、「Ｇ：０ｘ００」、「Ｂ：０ｘＣ８」で、「０ｘ００Ｄ４Ｄ０Ｃ８」である。そして、１６進数である「Ｄ４Ｄ０Ｃ８」を１０進数で表わすと「１３９４７０８０」となる。図２のアイコン画像の各画素について、同様に１０進数とした上で、ベクトルとする。この例では、特徴ベクトル＝｛１３９４７０８０、１３９４７０８０、・・・、８２９３０１３、・・・｝となる。
【００４５】
判定部１２は、特徴ベクトルを用いて機械学習により、検体である所定のファイルがマルウェアかどうか判定する。ところで、判定部（モデル）１２は、予め生成される。図３を用いて、判定部（モデル）１２の生成について説明する。図３は、本発明の一実施形態に係る情報処理装置の判定部（モデル）を生成するフローを説明するための図である。図４は、図３で生成したモデルを移植することを説明するための概念図である。
【００４６】
偽装アイコンを持つマルウェアから抽出したアイコン画像及び正常なソフトウェアから抽出したアイコン画像を複数、ラベル付けして準備する。そして、これを学習データセット（教師データ）とする。この学習データをモデルに投入する（Ｓ１０１）。この例では、学習データを投入するモデルについては、重みｗｉを任意（ランダム）に決めている。もっとも、公知のプレトレーニング等の方法によって、重みｗｉの値を決めてもよい。
【００４７】
学習データをモデルに投入すると、ディープラーニングのアルゴリズムにしたがって学習を行う（Ｓ１０２）。この学習の結果、モデルの内部構造が変化する。具体的には、モデルの重みｗｉの値が変化する。なお、活性化関数は、固定されている。ディープラーニングは、ＣＮＮ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）などである。この例では、ディープラーニングによる学習を行っているが、これに限定されるものではなく、誤差逆伝播法（Ｂａｃｋｐｒｏｐａｇａｔｉｏｎ；バックプロパゲーション）、ボルツマンマシン、ＴＷＤＲＬＳ、コグニトロンなど他のアルゴリズムであってもよい。
【００４８】
学習の結果、内部構造が変化してモデルの分類精度が、一定の分類精度かどうかを判定する（Ｓ１０３）。一定の分類精度である場合（Ｓ１０３でＹｅｓの場合）には、モデルの生成が完了する（Ｓ１０４）。他方、一定の分類精度未満の場合（Ｓ１０３でＮｏの場合）には、Ｓ１０１からＳ１０３を繰り返す。モデルの生成が完了すると、生成したモデルをマルウェア検出エンジンに移植する。この移植したモデルが判定部１２である。
【００４９】
［マルウェア判定フロー］
図５を用いて、情報処理装置が検体であるファイルをマルウェアと判定するフローを説明する。図５は、本発明の一実施形態に係る情報処理装置がマルウェアを判定するフローを説明するための図である。
【００５０】
まず、特徴情報抽出部１０が、検体であるファイル（実行ファイルなど）のリソース内からアイコン画像のバイナリを抽出する（Ｓ２０１）。次に、特徴ベクトル生成部１１が、抽出したアイコン画像のバイナリから特徴ベクトルを生成する（Ｓ２０２）。そして、判定部１２が、特徴ベクトルを用いて、機械学習により検体であるファイルがマルウェアかどうかを判定する（Ｓ２０３）。判定部１２によって、マルウェアと判定されるか（Ｓ２０４ａ）、正常と判定される（Ｓ２０４ｂ）と、フローは終了となる。
【００５１】
本実施形態では、判定部１２は、ディープラーニングによる学習により、初期のモデルから内部構造が変化し、一定の分類精度を有すると判定されたモデルが移植されたものである。そして、判定部１２は、機械学習により、検体であるファイルをマルウェアかどうか判定する。そのため、従来技術よりも、より高精度で検体であるファイルをマルウェアと判定することができるという効果を奏する。
【００５２】
＜第２実施形態＞
第１実施形態のように、機械学習により検体であるファイルをマルウェアかどうか判定する方法は、従来技術よりもより高精度で検体であるファイルをマルウェアと判定することができるという意味で効果を有する。もっとも、この方法では、検体であるファイルが本来は正常なソフトウェアであるにもかかわらず、誤ってマルウェアと判定してしまうことがある。このような判定を誤検知（誤判定）という。本発明者は、この誤検知を抑制する方法の必要性を認識し、鋭意検討した結果、検体であるファイルのアイコン画像の色の出現回数や濃淡ヒストグラムに着目した統計的アプローチを用いる方法を考えるに至った。
【００５３】
［情報処理装置の構成］
図６を用いて、情報処理装置２について説明する。図６は、本発明の他の実施形態に係る情報処理装置の概念図である。本実施形態に係る情報処理装置２は、第１実施形態の構成に加えて、概括的判定部１３、数値記憶部２１を備える。ここでは、第１実施形態と異なる点について詳細に説明する。
【００５４】
特徴情報抽出部１０は、検体であるファイルのリソース内からアイコン画像のバイナリを抽出する。加えて、特徴情報抽出部１０は、アイコン画像から数値を抽出する。
【００５５】
数値記憶部２１は、この例では、偽装アイコン画像を数値化した数値を予め記憶し、保持している。ここで、偽装アイコン画像は、すでに偽装アイコンと判明しているアイコンの画像である。このような画像を多数、数値化して、数値を記憶し、保持する。
【００５６】
概括的判定部１３は、特徴情報抽出部１０が検体であるファイルのリソース内のアイコン画像から抽出した数値と数値記憶部２１とに基づいて、検体であるファイルがマルウェアかどうかを判定する。概括的判定部１３としては、Ａｖｅｒａｇｅ  Ｈａｓｈが挙げられる。Ａｖｅｒａｇｅ  Ｈａｓｈである場合には、特徴情報抽出部１０は、アイコン画像のサイズを縮小し（例えば、８×８画素）、色をグレースケールにする。そして、画像の各画素を使って色の平均値を計算し、それぞれの画素で色の濃淡を調べ、その色が平均値よりも濃い場合には、「１」を設定し、薄い場合には、「０」を設定する。そうすると、６４ビット（８×８）のビット列ができる。特徴情報抽出部１０が抽出する数値は、このビット列である。
【００５７】
多数のすでに偽装アイコンと判明しているアイコンの画像についても、同様に、ビット列を生成し、そのビット列（数値）を予め数値記憶部２１に記憶する。そして、概括的判定部１３は、検体であるファイルから抽出されるビット列（数値）と数値記憶部２１が記憶する、多数のすでに偽装アイコンと判明しているアイコンの画像のビット列（数値）とを１ビットずつ比較して、類似度を計算する。そして、予め設定した所定の類似度を超えた場合に、概括的判定部１３は、検体であるファイルをマルウェアと判定する。
【００５８】
概括的判定部１３としては、Ａｖｅｒａｇｅ  Ｈａｓｈに限定されるものではなく、Ｊａｃｃａｒｄ係数、ＴＦ／ＩＤＦ、ＦｕｚｚｙＨａｓｈ、ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）などを用いてもよい。これらのいずれかを用いて、検体であるファイルから抽出される数値と多数のすでに偽装アイコンと判明しているアイコンの画像の数値とを比較して、類似度を計算する。そして、予め設定した所定の類似度を超えた場合に、概括的判定部１３は、検体であるファイルをマルウェアと判定する。また、概括的判定部１３として、Ａｖｅｒａｇｅ  Ｈａｓｈによる判定、Ｊａｃｃａｒｄ係数、ＴＦ／ＩＤＦ、ＦｕｚｚｙＨａｓｈ、ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）などを用いた判定の複数を用いてもよい。これらは互いに独立しているからである。
【００５９】
［マルウェア判定フロー］
図７を用いて、情報処理装置が検体であるファイルをマルウェアと判定するフローを説明する。図７は、本発明の他の実施形態に係る情報処理装置がマルウェアを判定するフローを説明するための図である。本実施形態のＳ３０１、Ｓ３０２、Ｓ３０３は、第１実施形態のＳ２０１、Ｓ２０２、Ｓ２０３に対応する。ここでは、Ｓ３０３以降について詳細に説明する。
【００６０】
機械学習による判定の結果、検体であるファイルがマルウェアではなく正常なソフトウェアと判定される場合（Ｓ３０３でＮｏの場合）、検体であるファイルは、正常なソフトウェアと判定される（Ｓ３０６）。他方、機械学習による判定の結果、検体であるファイルがマルウェアであると判定される場合（Ｓ３０３でＹｅｓの場合）、さらに概括的判定部１３が、検体であるファイルがマルウェアかどうか判定する（Ｓ３０４）。具体的な判定方法は、上記のとおりである。
【００６１】
概括的判定部１３が、検体であるファイルがマルウェアではなく正常なソフトウェアと判定する場合（Ｓ３０４でＮｏの場合）、検体であるファイルは、正常なソフトウェアと判定され（Ｓ３０６）、フローは終了となる。他方、概括的判定部１３が、検体であるファイルがマルウェアであると判定する場合（Ｓ３０４でＹｅｓの場合）、検体であるファイルはマルウェアと判定され（Ｓ３０５）、フローは終了となる。
【００６２】
本実施形態でも、第１実施形態と同様に、判定部１２は、機械学習により、検体であるファイルをマルウェアかどうか判定する。そのため、従来技術よりも、より高精度で検体であるファイルをマルウェアと判定することができるという効果を奏する。
【００６３】
本実施形態では、判定部１２によってマルウェアと判定されたファイルについて、概括的判定部１３がさらにマルウェアかどうか判定する。判定部１２は、検体であるファイルが本来は正常なソフトウェアであるにもかかわらず、誤ってマルウェアと判定してしまうことが稀にある。このような判定を誤検知（誤判定）という。概括的判定部１３は、判定部１２の誤検知を抑制するという効果を奏する。
【００６４】
＜第３実施形態＞
［マルウェア判定フロー］
図８を用いて、情報処理装置が検体であるファイルをマルウェアと判定するフローを説明する。図８は、本発明の他の実施形態に係る情報処理装置がマルウェアを判定するフローを説明するための図である。
【００６５】
第３実施形態は、第２実施形態と一部のフローの順番が異なる。第２実施形態では、判定部１２による判定の後に概括的判定部１３による判定が行わるが、第３実施形態では、概括的判定部１３による判定の後に判定部１２による判定が行われる。
【００６６】
本実施形態でも、第２実施形態と同様の効果を奏する。
【００６７】
＜第４実施形態＞
第２実施形態及び第３実施形態のように、機械学習により検体であるファイルをマルウェアかどうか判定する方法に加えて、概括的判定を行うことにより、より高精度で検体であるファイルをマルウェアと判定することができる。これらの方法でも、誤検知をすべて防ぐことはできない。そこで、本発明者は、さらに誤検知を抑制する方法を鋭意検討した結果、第２実施形態及び第３実施形態に加えて、マルウェアの特徴を加味して誤検知を抑制する方法を考えるに至った。以下では、マルウェアの特徴例を１１項目説明するが、本実施形態は、これらに限定されるものではない。
【００６８】
［情報処理装置の構成］
図９を用いて、情報処理装置３について説明する。図９は、本発明の他の実施形態に係る情報処理装置の概念図である。本実施形態に係る情報処理装置３は、第２実施形態の構成に加えて、初期ポイント設定部１４、ポイント加減部１５、閾値判定部１６、改ざんアイコン判定部１７、ポイント閾値記憶部２２を備える。ここでは、第２実施形態と異なる点について詳細に説明する。
【００６９】
初期ポイント設定部１４は、少なくとも判定部１２及び概括的判定部１３のうち一つが検体である所定のファイルをマルウェアと判定した場合に、所定のマルウェア初期ポイントを設定する。判定部１２が検体であるファイルをマルウェアと判定した場合であってもよいし、概括的判定部１３が検体であるファイルをマルウェアと判定した場合であってもよいし、判定部１２及び概括的判定部１３が検体であるファイルをマルウェアと判定した場合であってもよい。これらの場合に、初期ポイント設定部１４は、マルウェア初期ポイントを設定する。この例では、マルウェア初期ポイントは、９０ポイントとして説明する。マルウェア初期ポイントは、予め記憶部２０に記憶しておいてもよい。
【００７０】
ポイント閾値記憶部２２は、所定のファイルがマルウェアかどうかを判定する指標となるポイント閾値を記憶する。この例では、ポイント閾値は、９５ポイントとして説明する。
【００７１】
ポイント加減部１５は、検体であるファイルが所定の条件を満たすときに、初期ポイント設定部１４が設定したマルウェア初期ポイントに所定のポイントを加算または減算する。所定のポイントは、適宜設定可能である。「所定の条件」については、１１項目を後述する。所定のポイントは、項目ごとに異なる値であってもよい。また、項目ごとのポイントを予め記憶部２０に記憶しておいてもよい。
【００７２】
閾値判定部１６は、ポイント加減部１５によって加算または減算されて算出されるポイントが、ポイント閾値記憶部２２が記憶するポイント閾値を超えるかどうかを判定し、そのポイント閾値を超える場合には、検体であるファイルをマルウェアと判定する。例えば、判定部１２及び概括的判定部１３がマルウェアと判定したファイルには、マルウェア初期ポイントとして９０ポイントが設定される。そして、このファイルが所定の条件を満たすとき、ポイント加減部１５は、９０ポイントに所定のポイントを加算または減算する。９０ポイントに所定のポイントを加算または減算して算出されるポイントが９５ポイントを超える場合には、検体であるファイルはマルウェアと判定される。
【００７３】
マルウェアの具体的特徴１１項目について説明する。検体であるファイルがマルウェアの具体的特徴に合致するとき、ポイント加減部１５は、初期ポイント設定部１４が設定したマルウェア初期ポイントに所定のポイントを加算する。マルウェアの具体的特徴は、特徴情報抽出部１０によって抽出される。
【００７４】
（具体的特徴１）
改ざんアイコン判定部１７は、検体であるファイルのアイコン画像が正規のアイコン画像かどうかを判定する。正規のアイコン画像である場合、オペレーティングシステムの内部に完全に同一のアイコンが保持されている場合がある。また、一般的に知られている正規のアイコン画像については、記憶部２０に記憶しておくことで判別可能である。他方、正規のアイコン画像を改ざんしている場合には、マルウェアである可能性が高い。そこで、ポイント加減部１５は、改ざんアイコン判定部１７が検体であるファイルのアイコン画像が正規のアイコン画像でないと判定した場合に、マルウェア初期ポイントに所定のポイントを加算する。他方、ポイント加減部１５は、改ざんアイコン判定部１７が検体であるファイルのアイコン画像が正規のアイコン画像であると判定した場合、マルウェア初期ポイントに所定のポイントを減算する。
【００７５】
（具体的特徴２）
正規のアプリケーションは、多数のアイコンリソースを保有する傾向がある。他方、マルウェアのアイコンリソース数は極端に少ない傾向がある。そこで、特徴情報抽出部１０が、検体であるファイルのリソースファイルからアイコンセグメントの数を抽出する。そして、抽出されたアイコンセグメントの数が所定の閾値を下回る場合には、ポイント加減部１５は、マルウェア初期ポイントに所定のポイントを加算する。他方、抽出されたアイコンセグメントの数が所定の閾値以上の場合には、ポイント加減部１５は、マルウェア初期ポイントに所定のポイントを減算する。ここで、加算する場合のポイントと減算する場合のポイントとは異なってもよい。また、所定の閾値については、予め記憶部２０に記憶しておいてもよい。
【００７６】
（具体的特徴３）
例えば、マイクロソフト・ワードなどのマイクロソフト（登録商標）のアイコンを有するアプリケーションは、基本的にはマイクロソフト（登録商標）製のアプリケーションである。そこで、特徴情報抽出部１０が、検体であるファイルからバージョン情報を抽出する。そして、ポイント加減部１５は、検体であるファイルのアイコン画像がバージョン情報に対応しない場合に、マルウェア初期ポイントに所定のポイントを加算する。例えば、検体であるファイルがマイクロソフト（登録商標）のアイコンを保持しているにもかかわらず、抽出されたバージョン情報がマイクロソフト（登録商標）でない場合には、ポイント加減部１５は、マルウェア初期ポイントに所定のポイントを加算する。
【００７７】
（具体的特徴４）
例えば、検体であるファイルがマイクロソフト・ワードなどのマイクロソフト（登録商標）のアイコンを有する場合、アイコンが正規のものであれば、当該アイコンを保持するアプリケーションは、基本的にはＣ＋＋等を利用したネイティブアプリケーションである。他方、バイナリが「．ＮＥＴ」や「Ｖｉｓｕａｌ  Ｂａｓｉｃ（登録商標）」で作成されている場合には、マルウェアである可能性が高い。具体的には、特徴情報抽出部１０がファイルのＰＥヘッダーからプログラミング言語情報を抽出する。そして、検体であるファイルがマイクロソフト・ワードなどのマイクロソフト（登録商標）のアイコンを有し、しかも抽出されたプログラミング言語情報がＣ＋＋等でない場合には、ポイント加減部１５は、マルウェア初期ポイントに所定のポイントを加算する。
【００７８】
（具体的特徴５）
例えば、検体であるファイルがマイクロソフト・ワードなどのマイクロソフト（登録商標）のアイコンを有する場合、アイコンが正規のものであれば、コンパイラは、基本的には「Ｖｉｓｕａｌ  Ｓｔｕｄｉｏ（登録商標）」である。その他のコンパイラを利用している形跡がある場合、例えば、利用されているＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）に差異がある場合などには、検体であるファイルはマルウェアである可能性が高いため、所定のポイントを加算する。具体的には、特徴情報抽出部１０が検体であるファイルからコンパイラ情報を抽出する。ポイント加減部１５は、抽出されるコンパイラ情報が、ファイルが保持するアイコン画像に対応するコンパイラ情報でない場合に、マルウェア初期ポイントに所定のポイントを加算する。
【００７９】
（具体的特徴６）
偽装アイコンを保持しており、ＵＰＸ（Ｕｌｔｉｍａｔｅ  Ｐａｃｋｅｒ ｆｏｒ  ｅＸｅｃｕｔａｂｌｅｓ）などのパッカーが利用されている場合、検体であるファイルはマルウェアである可能性が高いため、所定のポイントを加算する。具体的には、特徴情報抽出部１０がファイルのセクション情報からパッカーに関する情報を抽出する。ポイント加減部１５は、特徴情報抽出部１０が所定のファイルからパッカーに関する情報を抽出した場合に、マルウェア初期ポイントに所定のポイントを加算する。
【００８０】
（具体的特徴７）
本来、自己解凍書庫が持っているアイコンは特定のものである。偽装アイコンがこのアイコンを保持している場合には、ファイルの実行を誘導している可能性が高い。そこで、この場合には、ポイントを加算する。具体的には、特徴情報抽出部１０が、検体であるファイルから自己解凍書庫情報を抽出した場合に、マルウェア初期ポイントに所定のポイントを加算する。
【００８１】
（具体的特徴８）
正規のアプリケーションの場合、ファイル名は英数のみで文字数も短い傾向にある。そこで、検体であるファイルが非常に長いファイル名を持っており、かつ、偽装アイコンを保持している場合、ドキュメントファイルに誤認させる目的であると考えられるため、所定のポイントを加算する。ここで、ファイル名の文字数の閾値を設定する。この閾値は、適宜設定可能である。また、文字数の閾値は、記憶部２０に予め記憶しておいてもよい。具体的には、特徴情報抽出部１０が検体であるファイルのヘッダー情報からファイル名を抽出する。そして、ポイント加減部１５は、抽出されたファイル名の文字数が所定の文字数（閾値）を超える場合に、マルウェア初期ポイントに所定のポイントを加算する。
【００８２】
（具体的特徴９）
ファイル名を途中から逆転させ、拡張子を誤認させることがある。これを偽装アイコンと組み合わせるケースがある。そこで、ファイル名に、例えば、「￥ｘ２０２ｅ（ＲＬＯ（Ｒｉｇｈｔ  ｔｏ  Ｌｅｆｔ  Ｏｖｅｒｒｉｄｅ））」といったユニコード制御文字が含まれており、かつ、偽装アイコンを保持している場合には、ポイントを加算する。具体的には、特徴情報抽出部１０が検体であるファイルのヘッダー情報からファイル名を抽出する。そして、ポイント加減部１５は、抽出されたファイル名にユニコード制御文字が含まれる場合に、マルウェア初期ポイントに所定のポイントを加算する。
【００８３】
（具体的特徴１０）
「．ｄｏｃ．ｅｘｅ」といった二重拡張子をファイル名に付与することで、実際のファイル形式を誤認させることがある。これを偽装アイコンと組み合わせるケースがある。そこで、ファイル名に二重拡張子が含まれており、かつ偽装アイコンを保持している場合には、ポイントを加算する。具体的には、特徴情報抽出部１０が検体であるファイルのヘッダー情報からファイル名を抽出する。そして、ポイント加減部１５は、抽出されたファイル名に複数の拡張子が含まれる場合に、マルウェア初期ポイントに所定のポイントを加算する。
【００８４】
（具体的特徴１１）
マルウェアをドキュメントファイルに偽装する場合、興味を引くようなファイル名が用いられる傾向がある。特に、日本国内で行われる攻撃では、日本語のファイル名が使用される傾向にある。そこで、ファイル名に２バイト文字が含まれており、かつ、偽装アイコンを保持している場合、ポイントを加算する。具体的には、特徴情報抽出部１０が検体であるファイルのヘッダー情報からファイル名を抽出する。そして、ポイント加減部１５は、抽出されたファイル名に２バイト文字が含まれている場合に、マルウェア初期ポイントに所定のポイントを加算する。
【００８５】
以上、ファイルの具体的特徴、１１項目について説明した。特徴情報抽出部１０が抽出する特徴は、この１１項目すべてでもよいし、そのうちのいくつかを組み合わせるものであってもよい。項目数に応じて、ポイント閾値を適宜設定してもよい。
【００８６】
［マルウェア判定フロー］
図１０を用いて、情報処理装置が検体であるファイルをマルウェアと判定するフローを説明する。図１０は、本発明の他の実施形態に係る情報処理装置がマルウェアを判定するフローを説明するための図である。本実施形態のＳ５０１、Ｓ５０２、Ｓ５０３、Ｓ５０４は、第２実施形態のＳ３０１、Ｓ３０２、Ｓ３０３、Ｓ３０４に対応する。ここでは、Ｓ５０４以降について詳細に説明する。
【００８７】
概括的判定部１３による判定の結果、検体であるファイルがマルウェアであると判定される場合（Ｓ５０４でＹｅｓの場合）、初期ポイント設定部１４がマルウェア初期ポイントを設定する（Ｓ５０５）。ここでは、マルウェア初期ポイントは、９０ポイントであるとして説明する。
【００８８】
次に、検体であるファイルが所定の条件を満たすかどうか判定する（Ｓ５０６）。具体的には、検体であるファイルが、上記のマルウェアの具体的特徴を有するかどうかを判定する。所定の条件を満たす場合（Ｓ５０６でＹｅｓの場合）には、ポイント加算部１５は、マルウェア初期ポイントである９０ポイントに所定のポイントを加算する（Ｓ５０７）。他方、所定の条件を満たさない場合（Ｓ５０６でＮｏの場合）には、ポイントが加算されないことから、ポイントはマルウェア初期ポイントの９０ポイントのままである。この例では、ポイント閾値は、マルウェア初期ポイントよりも大きいことを前提としている。そのため、ポイントが加算されない場合には、ポイント閾値を下回るため、検体であるファイルは、正常なソフトウェアと判定される（Ｓ５１０）。
【００８９】
マルウェア初期ポイントにポイントが加算された結果、ポイント閾値（ここでは、９５ポイント）を超える場合（Ｓ５０８でＹｅｓの場合）には、検体であるファイルはマルウェアであると判定され（Ｓ５０９）、フローは終了する。他方、マルウェア初期ポイントにポイントが加算された結果、ポイント閾値以下の場合（Ｓ５０８でＮｏの場合）には、検体であるファイルは正常なソフトウェアと判定され（Ｓ５１０）、フローは終了となる。
【００９０】
本実施形態でも、第１実施形態乃至第３実施形態と同様の効果を奏する。
【００９１】
判定部１２及び概括的判定部１３によってマルウェアと判定されたファイルは、本来は正常なソフトウェアであるにもかかわらず、誤ってマルウェアと判定してしまうことが稀にある。そこで、判定部１２及び概括的判定部１３によってマルウェアと判定されたファイルについて、マルウェア初期ポイントを設定する。そして、ファイルから各特徴情報を抽出し、マルウェアの具体的特徴を有する場合には、マルウェア初期ポイントにポイントが加算される。加算されて算出されたポイントが、ポイント閾値を超える場合に初めて、検体であるファイルはマルウェアと判定される。本実施形態では、判定部１２及び概括的判定部１３の誤検知を抑制することができるという効果を奏する。
【００９２】
＜第５実施形態＞
［情報処理装置の構成］
図１１を用いて、情報処理装置４について説明する。図１１は、本発明の他の実施形態に係る情報処理装置の概念図である。本実施形態に係る情報処理装置４は、第３実施形態の構成に加えて、数値化部１８を備える。ここでは、第３実施形態と異なる点について詳細に説明する。
【００９３】
数値化部１８は、マルウェアと判定された所定のファイルのアイコン画像を数値化する。この例では、数値化部１８は、閾値判定部１６によってマルウェアと判定されたファイルのアイコン画像を数値化する。そして、数値記憶部２１は、数値化部１８によって数値化された数値を記憶する。もっとも、これに限定されるものではなく、数値化部１８は、判定部１２や概括的判定部１３によってマルウェアと判定されたファイルのアイコン画像を数値化してもよい。
【００９４】
閾値判定部１６によって、未知のファイルでマルウェアと判定されたアイコン画像を数値化した数値も記憶されることになる。すなわち、未知のファイルでマルウェアと判定されたアイコン画像も、検体であるファイルから抽出される数値との比較対象となるデータとなる。もっとも、未知のファイルでマルウェアと判定されたファイルは、本来は正常なソフトウェアである可能性も僅かながらある。そこで、比較対象となるデータとしての適格性を持たせるために、数値化部１８によって数値化する対象のファイルは、ポイント閾値を極めて高くしてもよい。
【００９５】
本実施形態でも、第１実施形態乃至第４実施形態と同様の効果を奏する。
【００９６】
本実施形態では、未知のファイルでマルウェアと判定されたアイコン画像も、検体であるファイルから抽出される数値との比較対象となるデータとなる。そのため、数値記憶部２１に記憶される数値が増え、より多くの数の比較対象となるデータとの判定をすることができるという効果を奏する。
【００９７】
以上の実施形態に係る方法は、多様なコンピュータ手段によって実行が可能なプログラム命令形態で実現されてコンピュータで読み取り可能な媒体に記録されてもよい。コンピュータで読み取り可能な媒体は、プログラム命令、データファイル、データ構造などを単独または組み合わせて含んでもよい。コンピュータで読み取り可能な記録媒体の例としては、ハードディスク、フロッピーディスク(登録商標)、および磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、フロプティカルディスクのような磁気−光媒体、およびＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を格納して実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例としては、コンパイラによって生成されるもののような機械語コードだけではなく、インタプリタなどを使用してコンピュータによって実行される高級言語コードを含んでもよい。
【００９８】
なお、本発明は上記の実施形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【００９９】
１、２、３：情報処理装置
１０：特徴情報抽出部  １１：特徴ベクトル生成部  １２：判定部
１３：概括的判定部  １４：初期ポイント設定部  １５：ポイント加減部
１６：閾値判定部  １７：改ざんアイコン判定部  １８：数値化部
２０：記憶部  ２１：数値記憶部  ２２：ポイント閾値記憶部
２７：ネットワーク  ３０：ユーザ端末  ３３：サーバ
【要約】
【課題】アイコンイメージが少しでも変化した場合でも、偽装アイコンをマルウェアと判定しやすくする。
【解決手段】本発明の一実施形態に係る情報処理装置は、所定のファイルのリソース内からアイコン画像のバイナリを抽出する特徴情報抽出部と、前記抽出したアイコン画像のバイナリから特徴ベクトルを生成する特徴ベクトル生成部と、前記特徴ベクトルを用いて機械学習により前記所定のファイルがマルウェアかどうかを判定する判定部と、を備えてもよい。また、本発明の一実施形態に係るプログラムは、コンピュータに、所定のファイルのリソース内からアイコン画像のバイナリを抽出し、前記抽出したアイコン画像のバイナリから特徴ベクトルを生成し、前記特徴ベクトルを用いて機械学習により前記所定のファイルがマルウェアかどうかを判定することを実行させてもよい。
【選択図】図１【図１】
0005982597.tif 000002
【図２】
0005982597.tif 000003
【図３】
0005982597.tif 000004
【図４】
0005982597.tif 000005
【図５】
0005982597.tif 000006
【図６】
0005982597.tif 000007
【図７】
0005982597.tif 000008
【図８】
0005982597.tif 000009
【図９】
0005982597.tif 000010
【図１０】
0005982597.tif 000011
【図１１】
0005982597.tif 000012
【図１２】
0005982597.tif 000013
【図１３】
0005982597.tif 000014