(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0016】
本発明の実施形態について図面を参照して詳細に説明する。
【0017】
[アイコン処理装置の説明]
図1は、本発明の一実施形態に係るアイコン処理装置11の概略的な構成例を示す図である。
本実施形態に係るアイコン処理装置11は、入力部31と、出力部32と、記憶部33と、制御部34を備える。
【0018】
入力部31は、外部から情報を入力する。
入力部31は、例えば、外部の記録媒体または他の装置から出力される情報を入力するインタフェースを有してもよい。
入力部31は、例えば、ユーザにより行われた操作に対応する情報を入力する操作部を有してもよい。
【0019】
出力部32は、外部へ情報を出力する。
出力部32は、例えば、情報を表示出力する表示部71を有する。表示部71は、例えば、ディスプレイの画面である。本実施形態では、アイコン処理装置11が表示部71を内蔵する構成例を示すが、他の構成例として、表示部71が、アイコン処理装置11と別体で備えられて、当該アイコン処理装置11と通信可能に接続されてもよい。
出力部32は、例えば、外部の記録媒体または他の装置に情報を出力するインタフェースを有してもよい。
【0020】
記憶部33は、情報を記憶する。
記憶部33は、例えば、ファイル情報91を記憶する。ファイル情報91は、1または複数のファイルの情報を含む。
【0021】
記憶部33は、例えば、ファイル形式リスト92を記憶する。ファイル形式リスト92は、各種のファイルの形式(ファイル形式)の情報を含む。ファイル形式リスト92は、例えば、拡張子の情報、および当該ファイル内の特徴的な情報などを含んでおり、このような情報とファイル形式との対応を保持する。なお、ファイル形式リスト92は、ファイルの様々な情報とファイル形式との対応を保持してもよい。ファイル形式リスト92は、例えば、アイコン処理装置11またはユーザなどによって、随時更新されてもよい。
【0022】
記憶部33は、例えば、基準アイコンリスト93を記憶する。基準アイコンリスト93は、様々なファイル形式と、基準となるアイコン(基準アイコン)の情報との対応を保持する。基準アイコンリスト93は、例えば、アイコン処理装置11またはユーザなどによって、随時更新されてもよい。
【0023】
制御部34は、アイコン処理装置11における各種の処理を制御する。
制御部34は、アイコン診断部111と、診断結果出力部112を備える。
アイコン診断部111は、ファイル形式判定部131と、アイコン抽出部132と、アイコン比較部133と、危険判定部134を備える。
診断結果出力部112は、表示制御部151を備える。
【0024】
ここで、本実施形態では、説明の便宜上、制御部34が有する各種の機能を複数に分けて示すが、これらの機能は他の分け方で備えられてもよい。例えば、制御部34をプロセッサを用いて構成し、当該プロセッサが記憶部33に記憶された制御用のプログラムを実行することで各種の機能を実現する場合、各種の機能は、1つのプログラムにまとめられてもよく、または、任意の分け方で、2つ以上のプログラムに分けられてもよい。
【0025】
[アイコン診断処理の説明]
図2は、本発明の一実施形態に係るアイコン処理装置11により行われるアイコン診断処理の一例を示すフローチャートである。
図2に示されるフローチャートの処理を説明する。当該処理は、アイコンが偽装されたファイルに関する危険性を判断(診断)する処理である。当該処理は、アイコン処理装置11の制御部34のアイコン診断部111により行われる。
【0026】
(ステップS1)
まず、アイコン診断部111は、記憶部33に記憶されたファイル情報91から、診断対象のファイルの情報を取得する。ここで、アイコン診断部111は、例えば、ユーザにより行われた操作によって指定されたファイルを診断対象としてもよく、または、あらかじめ定められた処理の手順にしたがって所定の条件に該当するファイルを診断対象としてもよい。
ファイル形式判定部131は、記憶部33に記憶されたファイル形式リスト92の内容を参照する。そして、ファイル形式判定部131は、ファイル形式リスト92の内容および診断対象のファイルの情報に基づいて、当該ファイルの形式を判定する。例えば、ファイル形式判定部131は、ファイル形式リスト92に保持された対応(ファイルの情報とファイル形式との対応)と、診断対象のファイルの情報とを比較して、当該ファイルの情報に対応するファイル形式を特定して、特定したファイル形式を判定結果として取得する。
【0027】
(ステップS2)
次に、ファイル形式判定部131は、診断対象のファイルの形式を判定した結果に基づいて、当該ファイルがアイコンのデータを含んでいるか否かを判定する。
この判定の結果、当該ファイルがアイコンのデータを含んでいると判定された場合には(ステップS2:YES)、ステップS3〜ステップS6の処理へ移行する。一方、この判定の結果、当該ファイルがアイコンのデータを含んでいないと判定された場合には(ステップS2:NO)、ステップS8の処理へ移行する。
【0028】
(ステップS3)
ステップS2の処理において診断対象のファイルがアイコンのデータを含んでいると判定された場合、アイコン抽出部132は、当該アイコンのデータを抽出する。
【0029】
(ステップS4)
次に、アイコン比較部133は、記憶部33に記憶された基準アイコンリスト93の内容を参照する。そして、アイコン比較部133は、基準アイコンリスト93の内容およびファイル形式判定部131により判定されたファイルの形式に基づいて、診断対象のファイルの基準アイコンのデータを取得する。例えば、アイコン比較部133は、基準アイコンリスト93に保持された対応(ファイル形式と基準アイコンの情報との対応)と、診断対象のファイルの形式とを比較して、当該ファイルの形式に対応する基準アイコンを特定して、当該基準アイコンのデータを取得する。
アイコン比較部133は、アイコン抽出部132により抽出されたアイコンのデータと、取得した基準アイコンのデータとを比較して、当該アイコンと当該基準アイコンとの乖離度を計算する。
【0030】
ここで、アイコンと基準アイコンとの乖離度は、例えば、あらかじめ定められた数式を用いて計算される。当該乖離度としては、例えば、当該アイコンの画像と当該基準アイコンの画像との違いの大小を表す値が用いられる。当該乖離度としては、例えば、ハッシュ値、色の割合、輪郭の形状などのうちの1以上に基づく値が用いられてもよい。
当該乖離度としては、例えば、相違の程度を表す0[%]以上100[%]以下の値が用いられてもよい。
または、当該乖離度としては、例えば、相違することを表す値と、相違しないことを表す値とのうちのいずれかの値が用いられてもよい。この場合、当該乖離度としては、例えば、相違の程度を表す0[%]以上100[%]以下の値が所定の閾値を超える場合に相違することを表す値となり、一方、相違の程度を表す0[%]以上100[%]以下の値が当該所定の閾値以下である場合に相違しないことを表す値となってもよい。
【0031】
(ステップS5)
また、アイコン比較部133は、基準アイコンリスト93の内容およびファイル形式判定部131により判定されたファイルの形式に基づいて、診断対象のファイルの基準アイコン以外の基準アイコンのデータを取得する。そして、アイコン比較部133は、アイコン抽出部132により抽出されたアイコンのデータと、取得した基準アイコンのデータとを比較して、当該アイコンと当該基準アイコンとの類似度を計算する。ここで、アイコン比較部133は、2以上の基準アイコンを取得した場合には、取得したそれぞれの基準アイコンについて、類似度を計算する。
なお、ステップS4の処理と、ステップS5の処理とは、順序が逆であってもよい。
【0032】
ここで、アイコンと基準アイコンとの類似度は、例えば、あらかじめ定められた数式を用いて計算される。当該類似度としては、例えば、当該アイコンの画像と当該基準アイコンの画像との類似の大小を表す値が用いられる。当該類似度としては、例えば、ハッシュ値、色の割合、輪郭の形状などのうちの1以上に基づく値が用いられてもよい。
当該類似度としては、例えば、類似の程度を表す0[%]以上100[%]以下の値が用いられてもよい。
または、当該類似度としては、例えば、類似することを表す値と、類似しないことを表す値とのうちのいずれかの値が用いられてもよい。この場合、当該類似度としては、例えば、類似の程度を表す0[%]以上100[%]以下の値が所定の閾値を超える場合に類似することを表す値となり、一方、類似の程度を表す0[%]以上100[%]以下の値が当該所定の閾値以下である場合に類似しないことを表す値となってもよい。
【0033】
本実施形態では、アイコンと基準アイコンとの乖離度を求める数式と、当該アイコンと当該基準アイコンとの類似度を求める数式とは、例えば、異なる式が用いられてもよく、または、実質的に同じ式が用いられてもよい。ここで、実質的に同じ式とは、例えば、アイコンと基準アイコンとの乖離度と類似度とが、互いに加算すると一定値(例えば、100[%]など)になる式、または、互いに乗算すると一定値(例えば、1など)になる関係がある式のことである。
【0034】
(ステップS6)
次に、危険判定部134は、診断対象のファイルのアイコンと基準アイコンとの乖離度の計算結果および当該ファイルのアイコンと他の基準アイコンとの類似度の計算結果に基づいて、危険度を計算する。そして、危険判定部134は、計算した危険度が所定の閾値を超えているか否かを判定する。当該所定の閾値は、例えば、記憶部33にあらかじめ記憶されていてもよく、または、外部の装置またはユーザなどから任意のタイミングで指定されてもよい。
この判定の結果、計算された危険度が閾値を超えていると判定された場合には(ステップS6:YES)、ステップS7の処理へ移行する。一方、この判定の結果、計算された危険度が当該閾値を超えていないと判定された場合には(ステップS6:NO)、ステップS8の処理へ移行する。
【0035】
ここで、アイコンの危険度は、例えば、あらかじめ定められた数式を用いて計算される。本実施形態では、アイコンの危険度としては、当該アイコンと基準アイコンとの乖離度および当該アイコンと他の基準アイコンとの類似度に基づく値が用いられる。
本実施形態では、診断対象のファイルのアイコンと、当該ファイルの形式に対応する基準アイコン(本来期待されるアイコン)との乖離度に関し、当該乖離度が大きいと危険度が大きくなり、当該乖離度が小さいと危険度が小さくなる、危険度が用いられる。また、本実施形態では、診断対象のファイルのアイコンと、当該ファイルの形式に対応しない基準アイコン(本来期待されないアイコン)との類似度に関し、当該類似度が大きいと危険度が大きくなり、当該類似度が小さいと危険度が小さくなる、危険度が用いられる。この際、他の基準アイコンが2以上ある場合には、例えば、すべての他の基準アイコンについての類似度が用いられてもよく、または、最も類似度が大きい1つの他の基準アイコンについての類似度が用いられてもよい。
【0036】
(ステップS7)
ステップS6の処理において計算された危険度が閾値を超えていると判定された場合、危険判定部134は、危険性があると判定する。そして、本フローの処理が終了する。
【0037】
(ステップS8)
ステップS6の処理において計算された危険度が閾値を超えていないと判定された場合、危険判定部134は、危険性が無いと判定する。そして、本フローの処理が終了する。
また、ステップS2の処理において診断対象のファイルがアイコンのデータを含んでいないと判定された場合においても、危険判定部134は、危険性が無いと判定する。そして、本フローの処理が終了する。
【0038】
ここで、
図2に示されるフローチャートの例では、危険判定部134は、診断対象のファイルについて危険性の有無を判定したが、他の構成例として、危険判定部134は、診断対象のファイルについて、危険性がある場合に、より詳細な危険性の程度を判定してもよい。
【0039】
<1つのファイルに複数のアイコンのデータが含まれる場合の説明>
本実施形態では、1つのファイルに1つのみのアイコンのデータが含まれる場合があってもよく、また、1つのファイルに複数のアイコンのデータが含まれる場合があってもよい。
1つのファイルに複数のアイコンのデータが含まれる場合、それぞれのアイコンのデータは、所定の情報(以下で、「アイコン識別情報」とも呼ぶ。)に基づいて識別されてもよい。当該所定の情報は、例えば、アイコンのサイズ(画像の大きさ)であってもよく、または、アイコンに付された名称であってもよく、または、アイコンに付された番号であってもよく、または、他の情報であってもよい。アイコンのサイズは、例えば、データの量であってもよい。
【0040】
図2に示される(ステップS2)の処理において、ファイル形式判定部131は、例えば、診断対象のファイルが1つ以上のアイコンのデータを含んでいる場合には、当該ファイルがアイコンのデータを含んでいると判定する。
【0041】
図2に示される(ステップS3)の処理において、アイコン抽出部132は、診断対象のファイルが2つ以上のアイコンのデータを含んでいる場合、あらかじめ定められた1つ以上のアイコンのデータを抽出する。ここで、あらかじめ定められた1つ以上のアイコンのデータは、少なくとも、アイコン比較部133により行われる比較に用いられるアイコンのデータを含む。例えば、アイコン比較部133がK(Kは1以上の整数)個のアイコンのデータを比較に用いる場合、アイコン抽出部132は少なくとも当該K個のアイコンのデータを抽出する。
【0042】
アイコン比較部133により行われる比較に用いられるアイコンのデータは、例えば、アイコン識別情報によって識別されてもよい。
具体例として、アイコン比較部133により行われる比較に用いられるアイコンのデータは、サイズが大きい方からK個のアイコンのデータであってもよい。この場合、アイコン抽出部132は、例えば、K個以上のアイコンのデータを含む診断対象のファイルから、サイズが大きい方からK個のアイコンのデータを抽出する。また、この場合、アイコン抽出部132は、例えば、診断対象のファイルがK個未満のアイコンのデータを含むときには、これらK個未満のすべてのアイコンのデータを抽出してもよい。
【0043】
ここでは、アイコン抽出部132が、アイコン比較部133により行われる比較に用いられるアイコンのデータを選択(識別)して抽出する例を示した。他の例として、アイコン抽出部132が診断対象のファイルに含まれるすべてのアイコンのデータを抽出し、アイコン比較部133が、抽出されたすべてのアイコンのデータのなかから、比較に用いるアイコンのデータを選択(識別)してもよい。
【0044】
また、ここでは、診断対象のファイルに含まれる2つ以上のアイコンのデータのうちの一部のアイコンのデータがアイコン比較部133により比較に用いられる例を示した。他の例として、アイコン比較部133は、診断対象のファイルに含まれるアイコンのデータの数にかかわらず、診断対象のファイルに含まれるすべてのアイコンのデータを比較に用いる構成でもよい。この構成では、アイコン抽出部132は、診断対象のファイルに含まれるすべてのアイコンのデータを抽出する。
【0045】
図2に示される(ステップS4)の処理において、アイコン比較部133は、比較に用いることがあらかじめ定められた1つ以上のアイコンのデータのそれぞれについて、アイコン抽出部132により抽出されたアイコンのデータと、取得した基準アイコンのデータとを比較して、当該アイコンと当該基準アイコンとの乖離度を計算する。
【0046】
ここで、アイコン比較部133が、診断対象のファイルに含まれる2つ以上のアイコンのデータについて比較を行う場合、一例として、これら2つ以上のアイコンのデータのすべてについての比較の結果を考慮した総合値を、最終的な乖離度として採用してもよい。当該総合値は、例えば、これら2つ以上のアイコンのデータのそれぞれについて計算された乖離度の平均値または総和値などであってもよく、または、他の値であってもよい。
また、アイコン比較部133が、診断対象のファイルに含まれる2つ以上のアイコンのデータについて比較を行う場合、他の例として、これら2つ以上のアイコンのデータのうちの1つのアイコンのデータについて計算された乖離度を、最終的な乖離度として採用してもよい。当該最終的な乖離度は、例えば、これら2つ以上のアイコンのデータのそれぞれについて計算された乖離度のなかで最も大きい値の乖離度であってもよい。
【0047】
図2に示される(ステップS5)の処理において、アイコン比較部133は、比較に用いることがあらかじめ定められた1つ以上のアイコンのデータのそれぞれについて、アイコン抽出部132により抽出されたアイコンのデータと、取得した基準アイコンのデータとを比較して、当該アイコンと当該基準アイコンとの類似度を計算する。
【0048】
ここで、アイコン比較部133が、診断対象のファイルに含まれる2つ以上のアイコンのデータについて比較を行う場合、一例として、これら2つ以上のアイコンのデータのすべてについての比較の結果を考慮した総合値を、最終的な類似度として採用してもよい。当該総合値は、例えば、これら2つ以上のアイコンのデータのそれぞれについて計算された類似度の平均値または総和値などであってもよく、または、他の値であってもよい。
また、アイコン比較部133が、診断対象のファイルに含まれる2つ以上のアイコンのデータについて比較を行う場合、他の例として、これら2つ以上のアイコンのデータのうちの1つのアイコンのデータについて計算された類似度を、最終的な類似度として採用してもよい。当該最終的な類似度は、例えば、これら2つ以上のアイコンのデータのそれぞれについて計算された類似度のなかで最も大きい値の類似度であってもよい。
【0049】
ここでは、アイコン比較部133が、診断対象のファイルに含まれる2つ以上のアイコンのデータのうち、1つのアイコン(ここで、「アイコンA1」と呼ぶ。)のデータについて計算される乖離度を最終的な乖離度とし、1つのアイコン(ここで、「アイコンA2」と呼ぶ。)のデータについて計算される類似度を最終的な類似度とする場合に、当該アイコンA1と当該アイコンA2とが異なり得る例を示した。
他の例として、アイコン比較部133は、診断対象のファイルに含まれる2つ以上のアイコンのデータのそれぞれについて乖離度と類似度の両方を計算し、これら両方の計算結果に基づいて、最終的な乖離度および最終的な類似度として採用する1つのアイコンのデータを決定してもよい。当該1つのアイコンのデータは、例えば、計算された乖離度および計算された類似度を総合的に判定した場合に、最も危険度が高いと判定されるアイコンのデータであってもよい。当該危険度は、例えば、危険判定部134により計算される危険度と同じ計算方法によって計算されてもよい。
【0050】
ここで、基準アイコンリスト93は、例えば、複数のアイコンのデータを含むファイル形式に関し、これら複数のアイコンのそれぞれについて、基準アイコンの情報を保持する。それぞれのアイコンに対応する基準アイコンは、例えば、それぞれのアイコンのデータを識別する情報と同様な情報(例えば、アイコン識別情報)を用いて識別されてもよい。
アイコン比較部133は、診断対象のファイルに2つ以上のアイコンのデータが含まれる場合、例えば、比較対象となる1つのアイコンのデータと、当該アイコンのデータに対応する1つの基準アイコンのデータとを比較して、乖離度を計算する。
【0051】
また、アイコン比較部133は、診断対象のファイルに2つ以上のアイコンのデータが含まれる場合、例えば、比較対象となる1つのアイコンのデータと、当該アイコンのデータに対応する1つの基準アイコン以外の基準アイコンのデータとを比較して、類似度を計算する。この場合、当該アイコンのデータに対応する1つの基準アイコン以外の基準アイコンのデータには、例えば、当該診断対象のファイルに含まれる他のアイコンのデータに対応する基準アイコンのデータ(つまり、同じファイル形式における他の基準アイコンのデータ)が含まれてもよく、または、含まれなくてもよい(つまり、同じファイル形式における基準アイコンのデータは除いて、他のファイル形式における基準アイコンのデータのみが含まれてもよい)。
【0052】
このような構成により、一例として、アイコン比較部133は、アイコン抽出部132により抽出されたすべてのアイコンのデータについて比較を行い、乖離度および類似度の一方または両方を総合値で判断することが可能である。
他の例として、アイコン比較部133は、アイコン抽出部132により抽出されたすべてのアイコンのデータについて比較を行い、乖離度および類似度の一方または両方を、最も危険度が高いと判定された値で判断することが可能である。
他の例として、アイコン比較部133は、アイコン抽出部132により抽出されたすべてのアイコンのデータのなかから、サイズが最も大きい1つのアイコンのデータについて比較を行ってもよい。一般に、サイズが大きい(画像が大きい)アイコンの方が、比較の精度が高くて正確な結果が得られると考えられる。
【0053】
[アイコン表示処理の説明]
図3は、本発明の一実施形態に係るアイコン処理装置11により行われるアイコン表示処理の一例を示すフローチャートである。
図3に示されるフローチャートの処理を説明する。当該処理は、アイコンが偽装されたファイルに関する危険性を表示する処理である。当該処理は、アイコン処理装置11の制御部34の診断結果出力部112により行われる。
【0054】
本フローでは、制御部34のアイコン診断部111の危険判定部134が、診断対象のファイルについて、危険性の程度を判定する場合を示す。危険判定部134は、診断対象のファイルについて、危険性が無いこと、または、低い危険性があること、または、中程度の危険性があること、または、高い程度の危険性があること、のうちのいずれかを判定する。危険判定部134は、例えば、危険度と2以上の異なる閾値とを比較して、危険性の程度を判定する。
具体例として、危険判定部134は、危険度が第1の閾値以下である場合には危険性が無いと判定し、危険度が当該第1の閾値を超えて第2の閾値以下である場合には低い程度の危険度であると判定し、危険度が当該第2の閾値を超えて第3の閾値以下である場合には中程度の危険度であると判定し、危険度が当該第3の閾値を超える場合には高い程度の危険度であると判定する。ここで、第1の閾値<第2の閾値<第3の閾値である。
なお、本フローでは、低い程度の危険性がある場合には、危険性が無い場合と同じ処理が行われる。
【0055】
(ステップS21)
表示制御部151は、表示対象のファイルについて、危険性に関する判定結果に基づいて、危険性が無しであるか否かを判定する。ここで、表示制御部151は、例えば、ユーザにより行われた操作によって指定されたファイルを表示対象としてもよく、または、あらかじめ定められた処理の手順にしたがって所定の条件に該当するファイルを表示対象としてもよい。
この判定の結果、表示対象のファイルについて危険性が無しであると判定された場合には(ステップS21:YES)、本フローの処理が終了する。この場合、表示制御部151は、表示対象のファイルについて、記憶部33に記憶された基準アイコンリスト93の内容および当該ファイルの形式に基づいて、当該ファイルの基準アイコンを表示する。
一方、この判定の結果、表示対象のファイルについて危険性が無しではない(つまり、危険性がある)と判定された場合には(ステップS21:NO)、ステップS22の処理へ移行する。
なお、本実施形態では、危険判定部134により行われた危険性に関する判定の結果の情報が、記憶部33に記憶されている。表示制御部151は、当該情報を参照する。
【0056】
(ステップS22)
ステップS21の処理において表示対象のファイルについて危険性が無しではないと判定された場合、表示制御部151は、表示対象のファイルについて、危険性に関する判定結果に基づいて、中程度の危険性(
図3における「危険性(中)」)であるか否かを判定する。
この判定の結果、表示対象のファイルについて中程度の危険性であると判定された場合には(ステップS22:YES)、ステップS24の処理へ移行する。一方、この判定の結果、表示対象のファイルについて中程度の危険性ではないと判定された場合には(ステップS22:NO)、ステップS23の処理へ移行する。
【0057】
(ステップS23)
ステップS22の処理において表示対象のファイルについて中程度の危険性ではないと判定された場合、表示制御部151は、表示対象のファイルについて、危険性に関する判定結果に基づいて、高い程度の危険性(
図3における「危険性(高)」)であるか否かを判定する。
この判定の結果、表示対象のファイルについて高い程度の危険性であると判定された場合には(ステップS23:YES)、ステップS25の処理へ移行する。
一方、この判定の結果、表示対象のファイルについて高い程度の危険性ではないと判定された場合には(ステップS23:NO)、本フローの処理が終了する。この場合、表示制御部151は、表示対象のファイルについて、記憶部33に記憶された基準アイコンリスト93の内容および当該ファイルの形式に基づいて、当該ファイルの基準アイコンを表示する。本実施形態では、この場合には、例えば、表示対象のファイルについて、低い程度の危険性がある場合が含まれる。
【0058】
(ステップS24)
ステップS22の処理において表示対象のファイルについて中程度の危険性であると判定された場合、表示制御部151は、表示対象のファイルについて、記憶部33に記憶された基準アイコンリスト93の内容および当該ファイルの形式に基づいて、当該ファイルの基準アイコンを表示する。さらに、表示制御部151は、当該基準アイコンに対して、中程度の危険性を示すマークを表示する。本実施形態では、表示制御部151は、当該基準アイコンの上に重ねて、当該マークを表示する。そして、本フローの処理が終了する。
【0059】
(ステップS25)
ステップS23の処理において表示対象のファイルについて高い程度の危険性であると判定された場合、表示制御部151は、表示対象のファイルについて、記憶部33に記憶された基準アイコンリスト93の内容および当該ファイルの形式に基づいて、当該ファイルの基準アイコンを表示する。さらに、表示制御部151は、当該基準アイコンに対して、高い程度の危険性を示すマークを表示する。本実施形態では、表示制御部151は、当該基準アイコンの上に重ねて、当該マークを表示する。そして、本フローの処理が終了する。
【0060】
ここで、表示制御部151は、例えば、ファイルと、基準アイコンおよびマークを表示する情報(アイコン情報)との対応をキャッシュメモリなどのメモリに記憶してもよい。そして、表示制御部151は、当該メモリに記憶された当該対応に基づいて、表示対象のファイルに対応するアイコン情報を表示してもよい。なお、当該メモリに記憶されるアイコン情報としては、例えば、危険性に関するマークが表示されるアイコン情報のみであってもよく、または、すべてのアイコン情報であってもよい。
【0061】
[アイコン表示の説明]
図4〜
図8を参照して、アイコン表示の例を示す。
図4〜
図8は、それぞれ、本発明の一実施形態に係るアイコン表示の一例を示す図である。
図4は、危険性が無いと判定されたファイルのアイコンの情報(アイコン情報211)の一例を示す図である。当該アイコン情報211は、当該ファイルの基準アイコン212の情報と同じである。
【0062】
図5は、中程度の危険性であると判定されたファイルのアイコンの情報(アイコン情報221)の一例を示す図である。当該アイコン情報221は、当該ファイルの基準アイコン222に、中程度の危険性を示すマーク223を重ねた情報である。
図6は、中程度の危険性であると判定されたファイルのアイコンの情報(アイコン情報231)の一例を示す図である。当該アイコン情報231は、当該ファイルの基準アイコン232に、中程度の危険性を示すマーク233を重ねた情報である。
ここで、
図5の例に係るマーク223と、
図6の例に係るマーク233とは、異なるマークである。
図6の例に係るマーク233は、ユーザに対して注意を喚起する文字情報(
図6の例では、「ひらくな注意!」)を含む。
【0063】
図7は、高い程度の危険性であると判定されたファイルのアイコンの情報(アイコン情報241)の一例を示す図である。当該アイコン情報241は、当該ファイルの基準アイコン242に、高い程度の危険性を示すマーク243を重ねた情報である。
図8は、高い程度の危険性であると判定されたファイルのアイコンの情報(アイコン情報251)の一例を示す図である。当該アイコン情報251は、当該ファイルの基準アイコン252に、高い程度の危険性を示すマーク253を重ねた情報である。
ここで、
図7の例に係るマーク243と、
図8の例に係るマーク253とは、異なるマークである。
図8の例に係るマーク253は、ユーザに対して注意を喚起する文字情報(
図8の例では、「ひらくな危険」)を含む。
【0064】
本実施形態では、それぞれのマーク223、233、243、253は、任意の色を有してもよい。例えば、危険性の程度に応じて、マークの色が異なってもよい。具体例として、中程度の危険性を示すマーク223、233は大きな部分で黄色を有してもよく、また、高い程度の危険性を示すマーク243、253は大きな部分で赤色を有してもよい。
【0065】
ここで、本実施形態では、低い程度の危険性であるファイルについては、低い程度の危険性を示すマークを表示しない構成を示したが、他の構成例として、低い程度の危険性であるファイルについて、当該ファイルの基準アイコンに対して、低い程度の危険性を示すマークを表示する構成が用いられてもよい。
また、
図3〜
図8では、低、中、高の3段階の危険性を判定して、判定結果に応じた表示を行う構成を示したが、他の構成例として、危険性があるか否か(危険の有無)という1段階の危険性を判定して、判定結果に応じた表示を行う構成が用いられてもよい。他の構成例として、2段階の危険性を判定して、判定結果に応じた表示を行う構成が用いられてもよい。他の構成例として、4以上の段階の危険性を判定して、判定結果に応じた表示を行う構成が用いられてもよい。
【0066】
また、本実施形態では、表示制御部151が、基準アイコン222、232、242、252に重ねて、マーク223、233、243、253を表示する構成を示したが、基準アイコンに対してマークを表示する配置としては、他の配置が用いられてもよい。
例えば、表示制御部151が、基準アイコンの一部とマークの一部とが重なる位置に当該マークを表示する構成が用いられてもよい。当該位置は、当該基準アイコンに対して、上下左右または斜めのいずれかの位置であってもよい。
例えば、表示制御部151が、基準アイコンに隣接して接する位置にマークを表示する構成が用いられてもよい。当該位置は、当該基準アイコンに対して、上下左右または斜めのいずれかの位置であってもよい。
例えば、表示制御部151が、基準アイコンから離れているが所定の近くの位置にマークを表示する構成が用いられてもよい。当該位置は、当該基準アイコンに対して、上下左右または斜めのいずれかの位置であってもよい。
また、危険性を示すマークとしては、様々な図形あるいは文字などを含むマークが用いられてもよい。また、危険性を示すマークとしては、様々な色が用いられてもよい。
【0067】
また、本実施形態では、制御部34の診断結果出力部112が、表示制御部151によって、危険性を示すマークを表示する構成を示した。他の構成例として、制御部34の診断結果出力部112が、表示制御部151によって、危険性に関する警告あるいは注意喚起などの情報を示すダイアログを表示する構成が用いられてもよい。他の構成例として、制御部34の診断結果出力部112が、危険性を示す音(音声を含む。)を出力する構成が用いられてもよい。
【0068】
[危険性を示すマークを表示する手法の説明]
表示制御部151が、基準アイコンに重ねて、危険性を示すマークを表示する手法としては、様々な手法が用いられてもよい。つまり、例えば、ユーザがアイコンを視覚的に見るときに、危険性を示すマークが見られる構成であればよい。
一例として、表示制御部151は、表示対象のファイルに含まれるアイコンのデータを書き換える(または、置き換える)ことによって、基準アイコンに重ねて、危険性を示すマークを表示してもよい。
【0069】
他の例として、表示制御部151は、表示対象のファイルに含まれるアイコンのデータを書き換えず(または、置き換えず)に、基準アイコンに重ねて、危険性を示すマークを表示する、構成が用いられてもよい。
具体例として、ファイル自体のアイコンのデータを書き換える(または、置き換える)代わりに、当該アイコンを表示するアプリケーションにより行われる制御によって、基準アイコンに重ねて、危険性を示すマークを表示する、構成が用いられてもよい。この場合、一例として、当該アイコンを表示するアプリケーションとは別に備えられた表示制御部151が、当該アプリケーションを制御して、当該アプリケーションにより行われる制御によって、当該アイコンのデータを書き換えても(または、置き換えても)よい。また、この場合、他の例として、当該アイコンを表示するアプリケーションに表示制御部151の機能を備える構成とし、当該アプリケーションにより行われる制御によって、当該アイコンのデータを書き換えても(または、置き換えても)よい。
【0070】
このように、本実施形態では、ファイル自体のアイコンのデータを書き換える(または、置き換える)代わりに、当該アイコンを表示するアプリケーションの側の制御によって、当該アイコンのデータを書き換えても(または、置き換えても)よい。なお、アイコンを表示するアプリケーションは、様々なアプリケーションであってもよく、例えば、エクスプローラー(登録商標)などであってもよい。
【0071】
[アイコンデータに関する判定および抽出の説明]
ここで、ファイル形式判定部131によってファイルがアイコンのデータを含んでいるか否かを判定する手法、およびアイコン抽出部132によってファイルに含まれるアイコンのデータを抽出する手法としては、特に限定されない。
一例として、対象のファイルが実行ファイルである場合には、実行ファイルの構造に基づいて、ファイル形式判定部131によって当該ファイルがアイコンのデータを含んでいるか否かを判定することが可能であり、また、実行ファイルの構造に基づいて、アイコン抽出部132によって当該ファイルに含まれるアイコンのデータを抽出することが可能である。
【0072】
図9は、本発明の一実施形態に係る実行ファイルの構造の一例を示す図である。
図9の例は、一般的な実行ファイル(EXEファイル)の構造の例である。実行ファイルは、例えば、バイナリの情報である。
図9の例では、実行ファイルには、呼び出し用のヘッダ構造体311およびスタブプログラム312が含まれ、また、PEヘッダ313が含まれ、また、セクションデータが含まれる。セクションデータには、セクションヘッダ314、テキストセクション315、データセクション316、リソースセクション317などが含まれる。ここで、アイコンのデータは、例えば、リソースセクション317に含まれていると考えられ、この場合、リソースセクション317の内容に基づいて、ファイル形式判定部131による処理およびアイコン抽出部132による処理が行われてもよい。
なお、実行ファイルの先頭にはMZシグネチャ(「MZ」という文字列)が存在しており、MZシグネチャの有無に応じて実行ファイルであるか否かが判定されてもよい。
【0073】
他の例として、対象のファイルのアイコンが画像として表示される場合に、当該アイコンの画像に基づいて、アイコン抽出部132によって当該ファイルに含まれる当該アイコンのデータを抽出する構成が用いられてもよい。この場合、例えば、アイコン抽出部132によって、画像認識の処理を行って、当該アイコンの画像に対応するデータを抽出してもよい。
【0074】
なお、現状では、アイコンを保持しているファイルは実行ファイル形式のみであり、他の形式のファイルは拡張子に紐付いたアイコンをWindows(登録商標)が表示している。しかしながら将来的に、アイコンを保持するファイル形式が新たに登場する可能性があり、そのような新たなファイル形式に本発明の実施形態が適用されてもよい。
【0075】
[診断および表示のタイミングの説明]
アイコン診断部111によりアイコン診断処理を行うタイミングとしては、任意のタイミングが用いられてもよい。
また、診断結果出力部112によりアイコン表示処理を行うタイミングとしては、任意のタイミングが用いられてもよい。
一例として、アイコン診断処理とアイコン表示処理とは、それぞれ独立したタイミングで行われてもよい。
他の例として、アイコン診断処理が行われて終了したタイミングで、その診断結果に関するアイコン表示処理が行われてもよい。
【0076】
ここで、アイコン診断処理を行うタイミングまたはアイコン表示処理を行うタイミングとして使用することが可能なタイミングの例を示す。
例えば、コンピュータにおいて、ユーザにより行われる操作によってファイルがダブルクリック等されて開かれるタイミングで、アイコン診断処理またはアイコン表示処理のうちの一方または両方が行われてもよい。この場合、例えば、当該ファイルが開かれる前に、危険性に関する表示が行われてもよい。
例えば、コンピュータにおいて、ユーザにより行われる操作によってデスクトップあるいはフォルダなどの対象が開かれるタイミングで、当該対象に存在するファイルについて、アイコン診断処理またはアイコン表示処理のうちの一方または両方が行われてもよい。この場合、例えば、当該対象が開かれる前に、危険性に関する表示が行われてもよい。当該対象に存在するファイルとしては、例えば、当該コンピュータに常駐するプログラムのファイルが用いられてもよい。
【0077】
例えば、コンピュータにおいて、メモリに保存されているファイルのチェックが定期的または適時に実行される場合、その実行のタイミングで、当該ファイルについて、アイコン診断処理またはアイコン表示処理のうちの一方または両方が行われてもよい。
例えば、コンピュータにおいて、電子メールによって添付されたファイルが受信されたタイミング、または、電子メールによって添付されたファイルが展開されるタイミング、または、Webブラウザによってファイルが表示されるタイミング、または、Webブラウザによってファイルがダウンロードされるタイミングのうちの1以上のタイミングで、該当するファイルについて、アイコン診断処理またはアイコン表示処理のうちの一方または両方が行われてもよい。
【0078】
例えば、コンピュータにおいて、ネットワークを伝送する通信パケットのなかからファイルが識別されたタイミングで、識別されたファイルについて、アイコン診断処理またはアイコン表示処理のうちの一方または両方が行われてもよい。この場合、制御部34は、例えば、危険性があると判定されたファイル、または、危険性が所定の閾値を超えると判定されたファイルについて、当該ファイルの伝送を遮断してもよい。
【0079】
ここで、本実施形態では、アイコン処理装置11がコンピュータを用いて構成された場合を示した。当該コンピュータとしては、例えば、パーソナルコンピュータ(PC)であってもよく、あるいは、ネットワークにおけるルータまたはスイッチなどのコンピュータであってもよい。
【0080】
[署名を用いた診断処理の説明]
図2および
図3に示されるフローチャートの例では、アイコンを用いた診断処理を示したが、さらに、アイコン診断部111は、署名を用いた診断処理を行う、構成が用いられてもよい。
例えば、アイコン診断部111は、診断対象のファイルに付与された署名を検証し、当該署名に係る証明書が正規な機関から発行されたものであるか否かを判定する。そして、アイコン診断部111は、当該証明書が正規な機関から発行されたものであると判定した場合には、署名に関して当該ファイルの危険性が無いと判定する。一方、アイコン診断部111は、当該証明書が正規な機関から発行されたものではないと判定した場合には、署名に関して当該ファイルの危険性があると判定する。なお、例えば、正規な機関を識別する情報があらかじめまたは随時に記憶部33に記憶され、アイコン診断部111が当該情報を参照して判定を行ってもよい。
【0081】
さらに、アイコン診断部111は、診断対象のファイルの危険性がある場合に、危険性の程度を判定してもよい。例えば、アイコン診断部111は、当該ファイルに証明書が付与されていないと判定した場合には、署名に関して高い程度の危険性であると判定してもよい。また、例えば、アイコン診断部111は、当該ファイルに自己証明書が付与されていると判定した場合には、署名に関して中程度の危険性であると判定してもよい。なお、これらの危険性の程度は一例であり、任意の危険性の程度が用いられてもよい。
【0082】
本実施形態では、アイコン診断部111は、診断対象のファイルについて、アイコンを用いた診断処理とともに、署名を用いた診断処理を行い、それぞれの診断処理の結果に基づいて、総合的な危険度、あるいは総合的な危険性の程度を判定してもよい。なお、例えば、それぞれの診断処理の結果と総合的な危険度あるいは総合的な危険性の程度との対応があらかじめまたは随時に記憶部33に記憶され、アイコン診断部111が当該対応を参照して判定を行ってもよい。
【0083】
[ホワイトリストを用いた診断処理の説明]
図2および
図3に示されるフローチャートの例では、アイコンを用いた診断処理を示したが、さらに、アイコン診断部111は、ホワイトリストを用いた診断処理を行う、構成が用いられてもよい。
ホワイトリストは、記憶部33に記憶される。当該ホワイトリストは、危険性が無いと判定する対象とするファイルに関する情報を含む。当該ファイルに関する情報には、例えば、ファイルの名称、ファイルのサイズ、ファイルのアイコンなどのうちの1以上の情報が含まれてもよい。
アイコン診断部111は、診断対象のファイルについて、アイコンを用いた診断処理の結果において危険性があると判定した場合においても、当該ファイルに関する情報が当該ホワイトリストに含まれる場合には、危険性が無いと判定する。
【0084】
[以上の実施形態のまとめ]
以上のように、本実施形態に係るアイコン処理装置11では、診断対象のファイルについて、アイコン診断処理を行うことによって、アイコンが偽装されたマルウェアを検出することができる。これにより、アイコン処理装置11では、例えば、ユーザが一見してマルウェアであるとは判別しにくいマルウェアを発見しやすくすることができる。
このように、本実施形態に係るアイコン処理装置11では、精度よく、アイコンが偽装されたマルウェアであるか否かを診断することができる。
【0085】
また、本実施形態に係るアイコン処理装置11では、表示対象のファイルについて、危険性を示すマークを用いたアイコン表示処理を行うことによって、危険性があること、あるいは、より詳細な危険性の程度をアイコンにおいて示すことができる。これにより、アイコン処理装置11では、アイコンの見た目によって、ユーザが一見して危険性があることを認識可能にすることができる。ユーザは、例えば、コンピュータあるいはマルウェアの知識が少なくても、表示されたアイコンのファイルの危険性の有無あるいはより詳細な危険性の程度を把握することができ、危険性があるファイルを開かないようにするなどの措置が可能である。
このように、本実施形態に係るアイコン処理装置11では、ユーザにとって判別しやすい態様で、アイコンが偽装されたマルウェアであることを表示することができる。
【0086】
一構成例として、表示対象のファイルについて、当該ファイルの危険性に関する情報とともに当該ファイルのアイコンを表示する表示制御部(
図1の例では、表示制御部151)を備えるアイコン表示装置(
図1の例では、アイコン処理装置11)である。
一構成例として、アイコン表示装置において、危険性に関する情報は、危険性の程度である。
一構成例として、アイコン表示装置において、危険性の程度は、危険性があること、または、危険性の2段階以上の程度である。
一構成例として、アイコン表示装置において、危険性に関する情報は、表示対象のファイルについて危険性が判定された結果の情報である。
【0087】
一構成例として、アイコン表示装置が、表示対象のファイルについて、当該ファイルの危険性に関する情報とともに当該ファイルのアイコンを表示する、アイコン表示方法(
図1の例では、アイコン処理装置11により行われる処理の方法)である。
一構成例として、表示対象のファイルについて、当該ファイルの危険性に関する情報とともに当該ファイルのアイコンを表示するステップ、をコンピュータに実行させるためのプログラム(
図1の例では、アイコン処理装置11により実行されるプログラム)である。
【0088】
本実施形態のように、以上に示した実施形態に係る装置(例えば、アイコン処理装置11)の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体(記憶媒体)に記録(記憶)して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、処理を行ってもよい。
なお、ここでいう「コンピュータシステム」とは、オペレーティング・システム(OS:Operating System)あるいは周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disk)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
さらに、「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークあるいは電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含む。
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)あるいは電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0089】
なお、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。