JPWO2005103895A1 - コンピュータウィルス固有情報抽出装置、コンピュータウィルス固有情報抽出方法及びコンピュータウィルス固有情報抽出プログラム - Google Patents

コンピュータウィルス固有情報抽出装置、コンピュータウィルス固有情報抽出方法及びコンピュータウィルス固有情報抽出プログラム Download PDF

Info

Publication number
JPWO2005103895A1
JPWO2005103895A1 JP2006512621A JP2006512621A JPWO2005103895A1 JP WO2005103895 A1 JPWO2005103895 A1 JP WO2005103895A1 JP 2006512621 A JP2006512621 A JP 2006512621A JP 2006512621 A JP2006512621 A JP 2006512621A JP WO2005103895 A1 JPWO2005103895 A1 JP WO2005103895A1
Authority
JP
Japan
Prior art keywords
computer virus
specific information
executable file
information
virus specific
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006512621A
Other languages
English (en)
Other versions
JP4025882B2 (ja
Inventor
厚井 裕司
裕司 厚井
中谷 直司
直司 中谷
竜一 小池
竜一 小池
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Iwate University
Original Assignee
Iwate University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Iwate University filed Critical Iwate University
Publication of JPWO2005103895A1 publication Critical patent/JPWO2005103895A1/ja
Application granted granted Critical
Publication of JP4025882B2 publication Critical patent/JP4025882B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/564Static detection by virus signature recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

コンピュータウィルス固有情報の抽出を迅速に行うことを可能とする。 サーバ100は、コンピュータウィルスであると特定された実行ファイルにおいて、固有であるとみなし得る情報の格納領域であると予め決められた特定領域であるヘッダ項目の「Import Table」等をシグネチャ項目の領域として特定し、その「Import Table」等の内容を読み出してシグネチャとして抽出する。更に、サーバ100は、シグネチャを複数組み合わせて、新たなシグネチャとして抽出する。

Description

本発明は、コンピュータウィルスの検出に用いられるコンピュータウィルス固有情報を抽出するコンピュータウィルス固有情報抽出装置、コンピュータウィルス固有情報抽出装置におけるコンピュータウィルス固有情報抽出方法、及び、コンピュータウィルス固有情報抽出装置におけるコンピュータウィルス固有情報抽出プログラムに関する。
近年のインターネットをはじめとするネットワークの急速な発展に伴い、コンピュータウィルスによる被害は年々深刻なものとなってきている。このコンピュータウィルスによる被害は、時間経過に伴い不特定多数に対し加速度的に被害を与える点や、本来は被害者であるユーザが気づかないうちに加害者となる点などで、深刻の度合いが大きい。
コンピュータウィルスは、経済産業省の定義によれば、第三者のプログラムやデータベースに対して意図的に何らかの被害を及ぼすように作られたプログラムであって、自己伝染機能、潜伏機能及び発病機能の少なくとも1つの機能を有するものであるとされている。従来、このようなコンピュータウィルスを検出する様々なシステムが提案されている(例えば、特許文献1参照)。
前述したような従来のコンピュータウィルス検出システムは、一般に、シグネチャと称されるコンピュータウィルス固有情報を用いて、検査対象の実行ファイルとのパターンマッチングを行い、実行ファイル内にシグネチャと同一の情報が含まれる場合には、その実行ファイルがコンピュータウィルスであると判断する。
特開2004−38273号公報
しかしながら、従来のコンピュータウィルス検出システムでは、シグネチャの抽出において、専門知識を有する者がコンピュータウィルスを解析し、そのコンピュータウィルスの固有情報を探し出す必要があり、時間がかかる。このようにシグネチャの抽出に時間がかかることは、近年の電子メールを媒介として拡散するコンピュータウィルスのように拡散速度が速いコンピュータウィルスの検出には十分ではなく、被害の広がりを防止することができない恐れがある。
本発明は従来の問題を解決するためになされたもので、コンピュータウィルス自体の情報ではなく実行ファイルのヘッダ領域等の情報からコンピュータウィルス固有情報の抽出を迅速に行うことが可能なコンピュータウィルス固有情報抽出装置、コンピュータウィルス固有情報抽出方法及びコンピュータウィルス固有情報抽出プログラムを提供することにある。
本発明のコンピュータウィルス固有情報抽出装置は、コンピュータウィルスの検出に用いられるコンピュータウィルス固有情報を抽出するものであって、コンピュータウィルスであると特定された実行ファイルを取得する取得手段と、実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域に含まれる情報を、前記取得手段により取得された実行ファイルからコンピュータウィルス固有情報として抽出する抽出手段とを有する構成となる。
この構成により、実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域に含まれる情報を、コンピュータウィルスであると特定された実行ファイルからコンピュータウィルス固有情報として自動抽出されるため、コンピュータウィルス固有情報の抽出を迅速に行うことが可能となる。
また、本発明のコンピュータウィルス固有情報抽出装置は、前記特定領域が、複数の実行ファイル間で一致する確率が所定値以下となる情報の格納領域である構成となる。
この構成により、コンピュータウィルス固有情報をコンピュータウィルスの検出に用いた場合における誤検出を抑制することができる。
また、本発明のコンピュータウィルス固有情報抽出装置は、前記抽出手段において、前記実行ファイルが前記特定領域より前にオフセット領域を含む場合に、前記オフセット領域のオフセット値に基づいて、前記実行ファイルにおける特定領域の先頭位置を特定する構成となる。
この構成により、実行ファイルにおける特定領域の位置が可変である場合においても、その特定領域を確実に特定することが可能となる。
また、本発明のコンピュータウィルス固有情報抽出装置は、前記特定領域が、前記実行ファイルにおけるヘッダ領域の一部である構成となる。
また、本発明のコンピュータウィルス固有情報抽出装置は、前記取得手段が、電子メールで転送されるエンコード形式の実行ファイルを取得するとともに、前記抽出手段は、前記取得手段により取得されたエンコード形式の実行ファイルにおける特定領域の情報をコンピュータウィルス固有情報として抽出する構成となる。
この構成により、実行ファイルが電子メールでエンコードされて送られてくるような場合においても、そのエンコードされた実行ファイルに応じたコンピュータウィルス固有情報の抽出が可能となる。
また、本発明のコンピュータウィルス固有情報抽出装置は、前記取得手段及び前記抽出手段が、base64のエンコード形式でエンコードされた実行ファイルを扱う構成となる。
電子メールに添付されて送られてくる実行ファイルは一般にbase64形式のエンコード処理がなされているため、この構成により、電子メールに添付されて送られてくる実行ファイルに応じたコンピュータウィルス固有情報の抽出が可能となる。
また、本発明のコンピュータウィルス固有情報抽出装置は、前記抽出手段が、前記エンコード形式の実行ファイルに対応したエンコード前の実行ファイルにおいて固有であるとみなし得る情報の格納領域の先頭位置がn+1バイト目であり、大きさがmバイトである場合に、前記エンコード形式の実行ファイルの先頭からn/3×4の小数点以下切り捨て値に1を加えた値の位置の第1のキャラクタから(n+m)/3×4の小数点以下切り捨て値に1を加えた値の位置の第2のキャラクタまでの領域を前記特定領域とし、前記第1のキャラクタから前記第2のキャラクタまでのキャラクタ列をコンピュータウィルス固有情報として抽出する構成となる。
また、本発明のコンピュータウィルス固有情報抽出装置は、前記抽出手段が、抽出したコンピュータウィルス固有情報を複数組み合わせて、新たなコンピュータウィルス固有情報とする構成となる。
この構成により、コンピュータウィルス固有情報抽出装置で抽出されたコンピュータウィルス固有情報を複数組み合わせて、新たなコンピュータウィルス固有情報とすることで、コンピュータウィルス固有情報が異なる実行ファイル間で一致することを極力避け、シグネチャを用いたコンピュータウィルス検出における誤検出を極力抑制することができる。
また、本発明のコンピュータウィルス固有情報抽出装置は、前記実行ファイルが、所定の実行可能圧縮形式で圧縮された実行ファイルである構成となる。また、本発明のコンピュータウィルス固有情報抽出装置は、前記実行ファイルが、マイクロソフトのWindows(登録商標)向けとして一般的な実行ファイル形式であるPE(Portable Executable)形式である構成となる。
実行ファイル形式がPE形式である場合の所定の圧縮形式で圧縮された実行ファイル、すなわち、所定の実行可能圧縮形式で圧縮された実行ファイルにおいて、固有であるとみなし得る情報の格納領域であると予め決められた特定領域が存在する場合には、この構成により、その特定領域に含まれる情報が、コンピュータウィルスであると特定された実行ファイルからコンピュータウィルス固有情報として自動抽出されるため、コンピュータウィルス固有情報の抽出を迅速に行うことが可能となる。なお、実行ファイル形式はPE形式に限定されるものではない。
また、本発明のコンピュータウィルス固有情報抽出方法は、コンピュータウィルスの検出に用いられるコンピュータウィルス固有情報を抽出するコンピュータウィルス固有情報抽出装置におけるものであって、コンピュータウィルスであると特定された実行ファイルを取得する取得ステップと、実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域に含まれる情報を、前記取得手段により取得された実行ファイルからコンピュータウィルス固有情報として抽出する抽出ステップとを有する構成となる。
また、本発明のコンピュータウィルス固有情報抽出方法は、前記特定領域が、複数の実行ファイル間で一致する確率が所定値以下となる情報の格納領域である構成となる。
また、本発明のコンピュータウィルス固有情報抽出方法は、前記抽出ステップにおいて、前記実行ファイルが前記特定領域より前にオフセット領域を含む場合に、前記オフセット領域のオフセット値に基づいて、前記実行ファイルにおける特定領域の先頭位置を特定する構成となる。
また、本発明のコンピュータウィルス固有情報抽出方法は、前記特定領域が、前記実行ファイルにおけるヘッダ領域の一部である構成となる。
また、本発明のコンピュータウィルス固有情報抽出方法は、前記取得ステップが、電子メールで転送されるエンコード形式の実行ファイルを取得するとともに、前記抽出ステップは、前記取得ステップにより取得されたエンコード形式の実行ファイルにおける特定領域の情報をコンピュータウィルス固有情報として抽出する構成となる。
また、本発明のコンピュータウィルス固有情報抽出方法は、前記取得ステップ及び前記抽出ステップが、base64のエンコード形式でエンコードされた実行ファイルを扱う構成となる。
また、本発明のコンピュータウィルス固有情報抽出方法は、前記抽出ステップが、前記エンコード形式の実行ファイルに対応したエンコード前の実行ファイルにおいて固有であるとみなし得る情報の格納領域の先頭位置がn+1バイト目であり、大きさがmバイトである場合に、前記エンコード形式の実行ファイルの先頭からn/3×4の小数点以下切り捨て値に1を加えた値の位置の第1のキャラクタから(n+m)/3×4の小数点以下切り捨て値に1を加えた値の位置の第2のキャラクタまでの領域を前記特定領域とし、前記第1のキャラクタから前記第2のキャラクタまでのキャラクタ列をコンピュータウィルス固有情報として抽出する構成となる。
また、本発明のコンピュータウィルス固有情報抽出方法は、前記抽出ステップが、抽出したコンピュータウィルス固有情報を複数組み合わせて、新たなコンピュータウィルス固有情報とする構成となる。
また、本発明のコンピュータウィルス固有情報抽出方法は、前記実行ファイルが、所定の実行可能圧縮形式で圧縮された実行ファイルである構成となる。また、本発明のコンピュータウィルス固有情報抽出方法は、前記実行ファイルが、PE形式である構成となる。
また、本発明のコンピュータウィルス固有情報抽出プログラムは、コンピュータウィルスの検出に用いられるコンピュータウィルス固有情報を抽出するコンピュータウィルス固有情報抽出装置において実行されるものであって、コンピュータウィルスであると特定された実行ファイルを取得する取得ステップと、実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域に含まれる情報を、前記取得手段により取得された実行ファイルからコンピュータウィルス固有情報として抽出する抽出ステップとを有する構成となる。
また、本発明のコンピュータウィルス固有情報抽出プログラムは、前記特定領域が、複数の実行ファイル間で一致する確率が所定値以下となる情報の格納領域である構成となる。
また、本発明のコンピュータウィルス固有情報抽出プログラムは、前記抽出ステップにおいて、前記実行ファイルが前記特定領域より前にオフセット領域を含む場合に、前記オフセット領域のオフセット値に基づいて、前記実行ファイルにおける特定領域の先頭位置を特定する構成となる。
また、本発明のコンピュータウィルス固有情報抽出プログラムは、前記特定領域が、前記実行ファイルにおけるヘッダ領域の一部である構成となる。
また、本発明のコンピュータウィルス固有情報抽出プログラムは、前記取得ステップが、電子メールで転送されるエンコード形式の実行ファイルを取得するとともに、前記抽出ステップは、前記取得ステップにより取得されたエンコード形式の実行ファイルにおける特定領域の情報をコンピュータウィルス固有情報として抽出する構成となる。
また、本発明のコンピュータウィルス固有情報抽出プログラムは、前記取得ステップ及び前記抽出ステップが、base64のエンコード形式でエンコードされた実行ファイルを扱う構成となる。
また、本発明のコンピュータウィルス固有情報抽出プログラムは、前記抽出ステップが、前記エンコード形式の実行ファイルに対応したエンコード前の実行ファイルにおいて固有であるとみなし得る情報格納領域の先頭位置がn+1バイト目であり、大きさがmバイトである場合に、前記エンコード形式の実行ファイルの先頭からn/3×4の小数点以下切り捨て値に1を加えた値の位置の第1のキャラクタから(n+m)/3×4の小数点以下切り捨て値に1を加えた値の位置の第2のキャラクタまでの領域を前記特定領域とし、前記第1のキャラクタから前記第2のキャラクタまでのキャラクタ列をコンピュータウィルス固有情報として抽出する構成となる。
また、本発明のコンピュータウィルス固有情報抽出プログラムは、前記抽出ステップが、抽出したコンピュータウィルス固有情報を複数組み合わせて、新たなコンピュータウィルス固有情報とする構成となる。
また、本発明のコンピュータウィルス固有情報抽出プログラムは、前記実行ファイルが、所定の実行可能圧縮形式で圧縮された実行ファイルである構成となる。また、本発明のコンピュータウィルス固有情報抽出プログラムは、前記実行ファイルが、PE形式である構成となる。
本発明は、実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域に含まれる情報を、コンピュータウィルスであると特定された実行ファイルからコンピュータウィルス固有情報として自動抽出するため、コンピュータウィルス固有情報の抽出を迅速に行うことが可能となる。
コンピュータシステムの構成例を示す図である。 実行ファイルのヘッダ構成を示す図である。 ヘッダ項目の一致率を示す図である。 サーバによるシグネチャ抽出時の動作のフローチャートである。 シグネチャ項目とシグネチャとの対応関係を示す図である。 コンピュータウィルスの検出実験の結果を示す図である。 実行可能圧縮が施されたコンピュータウィルスの検出実験の結果を示す図である。
符号の説明
100 サーバ
200 シグネチャDB
240 危険実行ファイルDB
280 ウィルス培養装置
300−1〜300−k、310−1〜310−j パソコン
400 構内ネットワーク
500 インターネット
コンピュータウィルス固有情報抽出装置は、実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域に含まれる情報を、コンピュータウィルスであると特定された実行ファイルからコンピュータウィルス固有情報として自動抽出することにより、迅速なコンピュータウィルス固有情報の抽出を実現した。
以下、本発明を実施するための最良の形態について、図面に基づいて説明する、
本発明の実施の形態におけるコンピュータシステムの構成例を図1に示す。図1に示すコンピュータシステムは、ゲートウェイやメールサーバ等として機能するものであり、構内ネットワーク(LAN:Local Area Network)400とインターネット500との間の通信を中継するサーバ100と、コンピュータウィルスの固有情報であるシグネチャを記憶するシグネチャデータベース(DB)200と、ウィルスに感染する可能性のある危険な実行ファイルを蓄えておく危険実行ファイルデータベース240と、電子メールの添付ファイルからウィルスを高速で培養するウィルス培養装置280と、構内ネットワーク400に接続されるパーソナルコンピュータ(パソコン)300−1乃至300−k(以下、これらパソコン300−1乃至300−kをまとめて「パソコン300」と称する)と、インターネット500に接続されるパソコン310−1乃至310−j(以下、これらパソコン310−1乃至310−jをまとめて「パソコン310」と称する)とにより構成される。このコンピュータシステムは、オペレーティングシステムとしてマイクロソフトのWindows(登録商標)を実装して動作する。
本発明は、コンピュータウィルスであると特定された実行ファイルを取得した後の処理に関するものであるが、参考として取得例を以下に示す。
実行ファイルがコンピュータウィルスであるか否かの判定は、例えば、以下のような手順で行われる。すなわち、サーバ100は、インターネット500からの電子メールに添付されたファイルを受信すると、このファイルの拡張子を特定する。Windows(登録商標)において、コンピュータウィルスの可能性のある実行ファイルの拡張子は、「exe」、「com」、「bat」、「scr」、「lnk」、「pif」のいずれかである。このため、サーバ100は、特定した拡張子がこれら「exe」、「com」、「bat」、「scr」、「lnk」、「pif」のいずれかである場合、その拡張子を有する実行ファイルに対して識別情報であるIDを付加し、危険な実行ファイルとしてその実行ファイルを複製してウィルス培養装置280に実行ファイルを渡す。次に、サーバ100は、IDと共に元の実行ファイルを危険な実行ファイルとして、危険実行ファイルDB240に蓄積する。更に、サーバ100は、監視機能により、ウィルス培養装置280を監視状態に置く。
ウィルス培養装置280は、base64形式の実行ファイルをバイナリ形式の実行ファイルに変換して実行する。そして、ウィルス培養装置280には、Windows(登録商標)環境においてシステムのレジストリやファイルを改竄しないか、ウィルスメールを発行しないか等を監視する機能が装備されており、その実行の結果と実行ファイルに付加されたIDがサーバ100に戻される。
サーバ100は、この実行結果を解析して、ウィルス培養装置280によって実行された実行ファイルがコンピュータウィルスであるか否かを判定する。
前述ではサーバ100が、インターネット500から受信した電子メールを処理する場合を想定したが、LAN400から受信した電子を処理する場合にも、本発明は適用可能である。また、上記のサーバ100は、ウィルス培養装置280によって実行された実行ファイルがコンピュータウィルスであるか否かを見極めた後に、受信した電子メールを処理していた。この場合には、ウィルス培養装置280の判定に時間が掛かり、電子メールの処理性能に影響を及ぼす可能性もある。この対策としてサーバ100は、ウィルス培養装置280の判定が出る前に、受信した電子メールを宛先のパソコンに転送することも可能である。サーバ100は、後に実行ファイルがコンピュータウィルスであると判明した時点で、シグネチャを抽出する。以上がコンピュータウィルスであると特定された実行ファイルを取得する処理例である。
次にサーバ100は、コンピュータウィルスであると特定された実行ファイルのヘッダにおける特定領域の情報に基づいてシグネチャを自動抽出する。
実行ファイルのヘッダ構成を図2に示す。Windows(登録商標)における実行ファイルは、PE(Portable Executable)形式のフォーマットにより構成され、そのヘッダは、図2に示すように、「MS−DOS(登録商標)Compatible Header」(MS−DOS(登録商標)互換ヘッダ)、「MS−DOS(登録商標)Stub」(MS−DOS(登録商標)スタブ)、「COFF(Common Object File Format)Header」(COFFヘッダ)及び「Optional Header」(オプションヘッダ)の各ヘッダ領域により構成される。
これらのヘッダ領域のうち、MS−DOS(登録商標)互換ヘッダ及びMS−DOS(登録商標)スタブは、下位互換のためのものであり、実行ファイルによっては存在しない場合がある。従って、オフセット領域としてのMS−DOS(登録商標)互換ヘッダ及びMS−DOS(登録商標)スタブ内のヘッダ項目の情報はシグネチャの抽出には適さない。なお、MS−DOS(登録商標)互換ヘッダ及びMS−DOS(登録商標)スタブが存在する場合、これらMS−DOS(登録商標)互換ヘッダ及びMS−DOS(登録商標)スタブの領域の大きさは可変であり、その大きさ(バイト数)の合計はMS−DOS(登録商標)互換ヘッダの最後の「Offset main part」に設定される。
一方、COFFヘッダ及びオプションヘッダは、全てのWindows(登録商標)における実行ファイルに存在する。このため、本実施形態では、サーバ100は、COFFヘッダ及びオプションヘッダに含まれるヘッダ項目の情報をシグネチャの抽出に用いる。
本発明者は、互いに異なるWindows(登録商標)における実行ファイルを1000個用意し、これらの実行ファイルの中から任意の2個を抽出した場合に、COFFヘッダ及びオプションヘッダ内の各ヘッダ項目が一致する確率を調査した。
この調査によるヘッダ項目の一致率を図3に示す。図3では、ヘッダ項目と、そのヘッダ項目が属するヘッダ領域と、そのヘッダ項目についての実行ファイル間での一致率が示されている。また、図3では、一致率の低い、換言すれば、実行ファイル間で異なる確率の高い上位10個のヘッダ項目が示されている。
シグネチャを用いたコンピュータウィルスの検出において誤検出を抑制するためには、サーバ100は、シグネチャの抽出において、実行ファイル間で一致率が所定値(例えば、0.5%)以下であるヘッダ項目を用いることが望ましい。図3では、一致率の最も低いヘッダ項目は「Import Table」である。従って、サーバ100は、この「Import Table」をシグネチャの抽出に用いることが最も望ましい。「Import Table」は、大きさが8バイトであり、COFFヘッダの先頭から129バイト目の位置が先頭位置である。従って、MS−DOS(登録商標)互換ヘッダ及びMS−DOS(登録商標)スタブが存在しない場合、「Import Table」は、実行ファイルの先頭から129バイト目の位置が先頭位置である。一方、MS−DOS(登録商標)互換ヘッダ及びMS−DOS(登録商標)スタブが存在し、これらの大きさが「Offset main part」において示されたαバイトである場合、「Import Table」は、実行ファイルの先頭から129+αバイト目の位置が先頭位置である。
以下、サーバ100によるシグネチャ抽出時の動作を説明する。
サーバ100によるシグネチャ抽出時の動作のフローチャートを図4に示す。なお、以下においては、電子メールに添付される実行ファイルがコンピュータウィルスである場合に、そのコンピュータウィルスを検出するためのシグネチャが自動抽出される場合について説明する。
サーバ100は、コンピュータウィルスであると特定された実行ファイルを取得する(S101)。この取得される実行ファイルは、base64形式でエンコードされた情報である。具体的には、サーバ100は、実行ファイルをコンピュータウィルスであると判断した場合、そのIDに対応した実行ファイルを危険実行ファイルDB240から読み出す。また、実行ファイルをコンピュータウィルスではないと判断した場合、そのIDに対応した実行ファイルを危険実行ファイルDB240から読み出して、パソコン300における宛先のパソコンに転送する。
サーバ100は、コンピュータウィルスであると特定されたbase64形式の実行ファイルを取得すると、次に、シグネチャの抽出に適したヘッダ項目(シグネチャ項目)の領域を特定する(S102)。
サーバ100は、base64形式の実行ファイル内のヘッダ項目(シグネチャ項目)に対応する領域の内容を読み出してシグネチャとして抽出する(S103)。
サーバ100は、シグネチャを複数組み合わせて、新たなシグネチャとするために、追加すべきシグネチャが存在するか判断する(S104)。追加すべきシグネチャが存在する場合には、S102以降の動作が繰り返される。
一方、追加すべきシグネチャが存在しない場合には、S105に制御が移り、サーバ100は、抽出した全てのシグネチャを組み合わせて、新たなシグネチャとし、シグネチャDB200に記憶する(S105)。
ここでS102の具体的な特定方法を概説する。例えば、バイナリ形式の実行ファイルで「Import Table」がシグネチャ項目となる場合、MS−DOS(登録商標)互換ヘッダ及びMS−DOS(登録商標)スタブが存在しない場合には、実行ファイルの先頭から129バイト目から136バイト目までの8バイトの領域がシグネチャ項目の領域として特定される。また、MS−DOS(登録商標)互換ヘッダ及びMS−DOS(登録商標)スタブが存在し、これらの大きさが「Offset main part」において示されたαバイトである場合、実行ファイルの先頭から129+αバイト目から136+αバイト目までの8バイトの領域がシグネチャ項目の領域として特定される。
一般に、電子メールに添付される実行ファイルは、base64のエンコード形式でバイナリデータからキャラクタデータに変換されて送信される。従って、コンピュータウィルスの検出に用いられるシグネチャは、キャラクタデータに対応するものであることが望ましい。
サーバ100は、バイナリデータである実行ファイルにおけるシグネチャ項目の領域の先頭位置がn+1バイト目であり、シグネチャ項目の領域の大きさがmバイトである場合には、base64形式によるエンコード処理後のキャラクタデータである実行ファイルの先頭からn/3×4の小数点以下切り捨て値に1を加えた位置のキャラクタから(n+m)/3×4の小数点以下切り捨て値に1を加えた位置のキャラクタまでをシグネチャとして抽出する。
例えば、「Import Table」がシグネチャ項目となる場合、MS−DOS(登録商標)互換ヘッダ及びMS−DOS(登録商標)スタブが存在しない場合には、実行ファイルの先頭から129バイト目の位置がシグネチャ項目の領域の先頭位置であり、そのシグネチャ項目の大きさは8バイトである。従って、エンコード処理後のキャラクタデータである実行ファイルの先頭から、128/3×4の小数点以下切り捨て値に1を加えた値の位置(171バイト目)乃至(128+8)/3×4の小数点以下切り捨て値に1を加えた値の位置(182バイト目)の12バイトのキャラクタがシグネチャとなる。
一方、MS−DOS(登録商標)互換ヘッダ及びMS−DOS(登録商標)スタブが存在し、これらの大きさが「Offset main part」において示されたαバイトである場合には、実行ファイルの先頭から129+αバイト目の位置がシグネチャ項目の領域の先頭位置であり、そのシグネチャ項目の大きさは8バイトである。従って、エンコード処理後のキャラクタデータである実行ファイルの先頭から、(128+α)/3×4の小数点以下切り捨て値に1を加えた位置乃至(128+α+8)/3×4の小数点以下切り捨て値に1を加えた値の位置のキャラクタがシグネチャとなる。
シグネチャ項目とシグネチャの具体的な対応関係を図5に示す。図5は、Klez.hウィルスに感染したバイナリ実行ファイルの「Import Table」の内容を描いている。n=128+α=344で先頭位置が345バイト目であって、345バイト目から352バイト目までの8バイト(HEX20,HEXD6――――――,HEX00)が「Import Table」の内容である。
一方、Klez.hウィルスに感染した実行ファイルがbase64形式である場合には、先頭位置が459バイト目であって、459バイト目からから470バイト目までの12バイトのキャラクタデータ(A,g,――――――――――――,A)が「Import Table」の内容となる。
本発明者は、本実施形態により抽出されるシグネチャを用いたコンピュータウィルスの検出実験を行った。なお、この実験では、「Import Table」を単一のシグネチャ項目として用いた。そして、検出対象の全てのコンピュータウィルスに対して、図4に示す手法でシグネチャが自動抽出された。更に、検出対象となる全てのbase64形式のコンピュータウィルス、及び、base64形式のエンコード処理を行って得られた1000個のコンピュータウィルスでない実行ファイル(一般実行ファイル)を用意して、上記で抽出したシグネチャとのパターンマッチングが行われた。
コンピュータウィルスの検出実験の結果を図6に示す。図6において、コンピュータウィルス名は、実験に用いた検出対象のコンピュータウィルスの名称であり、トレンドマイクロ株式会社製のコンピュータウィルス検出ソフトウェアであるアンチウィルスにおける名称である。例えば「WORM_KLEZ.H」はプレビュー感染型のコンピュータウィルス、「WORM_SOBIG.F」はメール感染型のウィルスである。また、シグネチャ番号は、特定のコンピュータウィルスについて複数のシグネチャが抽出される場合において各シグネチャを識別するための番号、検出率は、シグネチャを用いてそのシグネチャに対応するコンピュータウィルスを検出した確率、誤検出率(ウィルス)は、他のコンピュータウィルスをそのコンピュータウィルスであると誤って検出した確率、誤検出率(一般)は、コンピュータウィルスでない実行ファイルをそのコンピュータウィルスであると誤って検出した確率である。
各コンピュータウィルスのうち、「WORM_HYBRIS.B」は3種類のバリエーションが存在する。このため、バリエーションのそれぞれに対応して3種類のシグネチャが抽出されている。
図6における検出率に示すように、「WORM_HYBRIS.B」以外のコンピュータウィルスについては、対応するシグネチャを用いることにより確実に検出されている。
一方、「WORM_HYBRIS.B」については前述のようにシグネチャが3種類抽出され、シグネチャ番号1のシグネチャが用いられる場合には検出率が93.79%、シグネチャ番号2のシグネチャが用いられる場合には検出率が4.35%、シグネチャ番号3のシグネチャが用いられる場合には検出率が1.86%であり、これらの検出率の合計は100%となる。この結果は、「WORM_HYBRIS.B」の3種類のバリエーションをそれぞれ別のコンピュータウィルスとして扱い、バリエーションのそれぞれに対応して3種類のシグネチャが抽出されることにより、「WORM_HYBRIS.B」の全体の検出率が100%になることを示しており、問題ではない。
また、「WORM_KLEZ.H」と「PE_TECATA.1761−O」については、誤検出率(ウィルス)が0%にならなかった。しかし、この結果は、「WORM_KLEZ.H」の検出において「PE_TECATA.1761−O」が誤検出され、「PE_TECATA.1761−O」の検出において「WORM_KLEZ.H」が誤検出されたことを示す。これは、「WORM_KLEZ.H」に対して更に「PE_TECATA.1761−O」が感染した状態のコンピュータウィルスが存在することに起因する。すなわち、「WORM_KLEZ.H」であり、且つ、「PE_TECATA.1761−O」であるコンピュータウィルスの存在によって誤検出率(ウィルス)が0%にならなかっただけであり、実質的には誤検出ではない。
更に、図6における誤検出率(一般)は、全ての検出対象のコンピュータウィルスについて0%であり、高い検出精度が示されている。
このように、本実施形態のコンピュータシステムでは、サーバ100は、コンピュータウィルスであると特定されたbase64形式でエンコードされた実行ファイルにおける、固有値である可能性の高いヘッダ項目の領域をシグネチャ項目の領域として特定し、対応したシグネチャを自動抽出する。従って、従来のように、シグネチャの抽出において、専門知識を有する者がコンピュータウィルスを解析し、そのコンピュータウィルスの固有情報を探し出す必要がなく、シグネチャの抽出を迅速に行うことが可能となる。このため、コンピュータウィルス検出ソフトのメーカ等によって正式なシグネチャが抽出されるまでの間、サーバ100が抽出したシグネチャを用いてコンピュータウィルスを検出することが可能となる。
また、実行ファイルのヘッダ項目は、その実行ファイルが圧縮された場合においても、一意に設定されるため、本実施形態のコンピュータシステムにおいて、ヘッダ項目の領域をシグネチャ項目の領域とすることにより、コンピュータウィルスが圧縮されていても解凍することなく、そのコンピュータウィルスを検出可能である。
また、本実施形態のコンピュータシステムにおいて、実行ファイルのヘッダ項目、特に「Import Table」がシグネチャ項目として用いられることにより、コンピュータウィルスの検出において以下のような利点を有する。
具体的には、「Import Table」は、「address」と「size」の2項目からなり、一例としてそれぞれ実行ファイルにおけるidataセクションと称される領域内にあるインポート・ディレクトリ・テーブルのアドレスとサイズとを表している。更に、このインポート・ディレクトリ・テーブルは、PE形式の実行ファイルの動作に欠かせないDLL(Dynamic Link Library)に関する情報を扱う部分である。このため、「Import Table」の内容が改竄されると、実行ファイルが動作しなくなる可能性が高い。
すなわち、仮に、コンピュータウィルスが検出を逃れるために「Import Table」の内容を変更したとしても、その変更によりコンピュータウィルスは動作不能となる可能性が高いため、コンピュータウィルスによる被害は阻止される。
また、本実施形態のコンピュータシステムにより、実行可能圧縮が施されたコンピュータウィルスについても検出可能であることが、本発明者の実験により確認された。この実験では、前述と同様、「Import Table」がシグネチャ項目として用いられた。そして、検出対象の全てのコンピュータウィルスに対して、図4に示す手法でシグネチャが自動抽出された。
実行可能圧縮が施されたコンピュータウィルスの検出実験の結果を図7に示す。図7において、コンピュータウィルス名は、実験に用いた検出対象のコンピュータウィルスの名称であり、トレンドマイクロ株式会社製のコンピュータウィルス検出ソフトウェアであるアンチウィルスにおける名称である。また、シグネチャの番号(No.)は、特定のコンピュータウィルスについて複数のシグネチャが抽出される場合において各シグネチャを識別するための番号、オフセット(offset)は、コンピュータウィルスのファイルの先頭からシグネチャに用いたヘッダ項目である「Import Table」までのオフセット値、「Import Table」のアドレス(address)及びサイズ(size)は、それぞれコンピュータウィルスのファイルにおけるインポート・ディレクトリ・テーブルのアドレスとサイズ、検出率は、シグネチャを用いてそのシグネチャに対応するコンピュータウィルスを検出した確率、誤検出率(ウィルス)は、他のコンピュータウィルスをそのコンピュータウィルスであると誤って検出した確率、誤検出率(一般実行ファイル・圧縮)は、コンピュータウィルスでない一般の実行ファイルであって、当該コンピュータウィルスと同一の圧縮形式により圧縮したもの(圧縮一般実行ファイル)をそのコンピュータウィルスであると誤って検出した確率、誤検出率(一般実行ファイル・無圧縮)は、コンピュータウィルスでない無圧縮形式の実行ファイル(無圧縮一般実行ファイル)をそのコンピュータウィルスであると誤って検出した確率である。
図7における検出率に示すように、「Netsky.P」、「Netsky.C」、「Bagle.AD」及び「Bagle.AI」以外のコンピュータウィルスについては、対応するシグネチャを用いることにより確実に検出されている。
一方、「Netsky.P」については、シグネチャが2種類抽出され、シグネチャ番号1のシグネチャが用いられる場合には検出率が0.10%、シグネチャ番号2のシグネチャが用いられる場合には検出率が99.90%であり、これらの検出率の合計は100%となる。この結果は、「Netsky.P」の2種類のバリエーションをそれぞれ別のコンピュータウィルスとして扱い、バリエーションのそれぞれに対応して2種類のシグネチャが抽出されることにより、「Netsky.P」の全体の検出率が100%になることを示しており、問題ではない。「Netsky.C」、「Bagle.AD」及び「Bagle.AI」についても同様であり、2種類のバリエーションをそれぞれ別のコンピュータウィルスとして扱い、バリエーションのそれぞれに対応して2種類のシグネチャが抽出されることにより、全体の検出率が100%になる。この結果は、「Import Table」の内容は、各コンピュータウィルスにバリエーションが存在する場合に、そのバリエーション毎に固有であり、必要最小限のシグネチャしか生成されないことを示している。
また、「Plexus.B」と「Plexus.G」の検出では、それぞれ別のコンピュータウィルスを誤検出しているが、実験に使用したコンピュータウィルス検出ソフトウェアでは、誤検出されたコンピュータウィルスは、「Plexus.B」と「Plexus.G」と同一であると定義されているため、実質的には誤検出ではない。
また、コンピュータウィルスの圧縮形式がその一種であるtElock以外である場合には、一般実行ファイルが圧縮されているか否かに関わらず、その一般実行ファイルをコンピュータウィルスであると誤検出する確率は0%であることが確かめられた。一方、コンピュータウィルスの圧縮形式がtElockである場合には、一般圧縮実行ファイルをコンピュータウィルスであると誤検出する場合がある(図7の「Sobig.A」、「Sobig.E」及び「Sobig.F」)が、誤検出率は低く、非常用の検出フィルタとしては実用の範囲内である。
ところで、実行可能圧縮では、圧縮ソフトのバージョンや圧縮時のオプションにより、ヘッダの内容が変化する。図7では、「Netsky.J」はtElockのバージョン0.71を使用して圧縮されており、その他のコンピュータウィルスはtElockのバージョン0.98を使用して圧縮されている。この結果は、一般実行ファイルとコンピュータウィルスの「Import Table」の内容が一致するためには、圧縮形式が同一であることのみならず、圧縮ソフトのバージョンが同一であり、更に圧縮ソフトの実行において指定される各種のオプションも同一でなければならないことを示している。従って、圧縮形式が同一であっても、一般実行ファイルとコンピュータウィルスの「Import Table」が一致する確率、換言すれば、一般実行ファイルをコンピュータウィルスであると誤検出する確率は、非常に低いと考えられる。
なお、前述した実施形態では、主に「Import Table」をシグネチャ項目としたが、実行ファイル間で一致する確率の低い他のヘッダ項目をシグネチャ項目としても良い。
また、前述した実施形態では、サーバ100がシグネチャを抽出したが、パソコン300及び310がそれぞれシグネチャを抽出して、コンピュータウィルスの検出に用いるようにしても良い。
以上のように、本発明にかかるコンピュータウィルス固有情報抽出装置、コンピュータウィルス固有情報抽出方法及びコンピュータウィルス固有情報抽出プログラムは、コンピュータウィルス固有情報の抽出を迅速に行うことが可能となるという効果を有し、コンピュータウィルス固有情報抽出装置、コンピュータウィルス固有情報抽出方法及びコンピュータウィルス固有情報抽出プログラムとして有用である。
本発明のコンピュータウィルス固有情報抽出装置は、コンピュータウィルスの検出に用いられるコンピュータウィルス固有情報を抽出するコンピュータウィルス固有情報抽出装置であって、コンピュータウィルスであると特定された実行ファイルを取得する取得手段と、実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域に含まれる情報を、前記取得手段により取得された実行ファイルからコンピュータウィルス固有情報として抽出する抽出手段とを有し、前記特定領域が前記実行ファイルのヘッダ領域の一部である構成となる。
この構成により、実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め定められた特定領域としてのヘッダ領域の一部に含まれる情報、コンピュータウィルスであると特定された実行ファイルからコンピュータ固有情報として抽出される
また、本発明のコンピュータウィルス固有情報抽出装置において、前記特定領域がヘッダ項目Import Tableである構成とすることができる。
この構成により、実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め定められた特定領域としてのヘッダ項目Import Tableの情報が、コンピュータウィルスであると特定された実行ファイルからコンピュータ固有情報として抽出される。
また、本発明のコンピュータウィルス固有情報抽出方法は、コンピュータウィルスの検出に用いられるコンピュータウィルス固有情報を抽出するコンピュータウィルス固有情報抽出装置におけるコンピュータウィルス固有情報抽出方法であって、コンピュータウィルスであると特定された実行ファイルを取得する取得ステップと、実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域に含まれる情報を、前記取得手段により取得された実行ファイルからコンピュータウィルス固有情報として抽出する抽出ステップとを有し、前記特定領域が前記実行ファイルのヘッダ領域の一部である構成となる。
また、本発明のコンピュータウィルス固有情報抽出方法において、前記特定領域がヘッダ項目Import Tableである構成とすることができる。
また、本発明のコンピュータウィルス固有情報抽出プログラムは、コンピュータウィルスの検出に用いられるコンピュータウィルス固有情報を抽出するコンピュータウィルス固有情報抽出装置において実行されるコンピュータウィルス固有情報抽出プログラムであって、コンピュータウィルスであると特定された実行ファイルを取得する取得ステップと、実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域に含まれる情報を、前記取得手段により取得された実行ファイルからコンピュータウィルス固有情報として抽出する抽出ステップとを有し、前記特定領域が前記実行ファイルのヘッダ領域の一部である構成となる。
また、本発明のコンピュータウィルス固有情報抽出プログラムにおいて、前記特定領域がヘッダ項目Import Tableである構成とすることができる。
本発明は、実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域としてのヘッダ領域の一部に含まれる情報を、コンピュータウィルスであると特定された実行ファイルからコンピュータウィルス固有情報として抽出するため、コンピュータウィルス固有情報の抽出を迅速に行うことが可能となる。

Claims (30)

  1. コンピュータウィルスの検出に用いられるコンピュータウィルス固有情報を抽出するコンピュータウィルス固有情報抽出装置であって、
    コンピュータウィルスであると特定された実行ファイルを取得する取得手段と、
    実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域に含まれる情報を、前記取得手段により取得された実行ファイルからコンピュータウィルス固有情報として抽出する抽出手段とを有することを特徴とするコンピュータウィルス固有情報抽出装置。
  2. 前記特定領域は、複数の実行ファイル間で一致する確率が所定値以下となる情報の格納領域であることを特徴とする請求項1に記載のコンピュータウィルス固有情報抽出装置。
  3. 前記抽出手段は、前記実行ファイルが前記特定領域より前にオフセット領域を含む場合に、前記オフセット領域のオフセット値に基づいて、前記実行ファイルにおける特定領域の先頭位置を特定することを特徴とする請求項1又は2に記載のコンピュータウィルス固有情報抽出装置。
  4. 前記特定領域は、前記実行ファイルにおけるヘッダ領域の一部であることを特徴とする請求項1乃至3のいずれかに記載のコンピュータウィルス固有情報抽出装置。
  5. 前記取得手段は、電子メールで転送されるエンコード形式の実行ファイルを取得するとともに、前記抽出手段は、前記取得手段により取得されたエンコード形式の実行ファイルにおける特定領域の情報をコンピュータウィルス固有情報として抽出することを特徴とする請求項1乃至4のいずれかに記載のコンピュータウィルス固有情報抽出装置。
  6. 前記取得手段及び前記抽出手段は、base64のエンコード形式でエンコードされた実行ファイルを扱うことを特徴とする請求項5に記載のコンピュータウィルス固有情報抽出装置。
  7. 前記抽出手段は、前記エンコード形式の実行ファイルに対応したエンコード前の実行ファイルにおいて固有であるとみなし得る情報の格納領域の先頭位置がn+1バイト目であり、大きさがmバイトである場合に、前記エンコード形式の実行ファイルの先頭からn/3×4の小数点以下切り捨て値に1を加えた値の位置の第1のキャラクタから(n+m)/3×4の小数点以下切り捨て値に1を加えた値の位置の第2のキャラクタまでの領域を前記特定領域とし、前記第1のキャラクタから前記第2のキャラクタまでのキャラクタ列をコンピュータウィルス固有情報として抽出することを特徴とする請求項6に記載のコンピュータウィルス固有情報抽出装置。
  8. 前記抽出手段は、抽出したコンピュータウィルス固有情報を複数組み合わせて、新たなコンピュータウィルス固有情報とすることを特徴とする請求項1乃至7のいずれかに記載のコンピュータウィルス固有情報抽出装置。
  9. 前記実行ファイルは、所定の実行可能圧縮形式で圧縮された実行ファイルであることを特徴とする請求項1乃至8のいずれかに記載のコンピュータウィルス固有情報抽出装置。
  10. 前記実行ファイルは、PE形式であることを特徴とする請求項9に記載のコンピュータウィルス固有情報抽出装置。
  11. コンピュータウィルスの検出に用いられるコンピュータウィルス固有情報を抽出するコンピュータウィルス固有情報抽出装置におけるコンピュータウィルス固有情報抽出方法であって、
    コンピュータウィルスであると特定された実行ファイルを取得する取得ステップと、
    実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域に含まれる情報を、前記取得手段により取得された実行ファイルからコンピュータウィルス固有情報として抽出する抽出ステップとを有することを特徴とするコンピュータウィルス固有情報抽出方法。
  12. 前記特定領域は、複数の実行ファイル間で一致する確率が所定値以下となる情報の格納領域であることを特徴とする請求項11に記載のコンピュータウィルス固有情報抽出方法。
  13. 前記抽出ステップは、前記実行ファイルが前記特定領域より前にオフセット領域を含む場合に、前記オフセット領域のオフセット値に基づいて、前記実行ファイルにおける特定領域の先頭位置を特定することを特徴とする請求項11又は12に記載のコンピュータウィルス固有情報抽出方法。
  14. 前記特定領域は、前記実行ファイルにおけるヘッダ領域の一部であることを特徴とする請求項11乃至13のいずれかに記載のコンピュータウィルス固有情報抽出方法。
  15. 前記取得ステップは、電子メールで転送されるエンコード形式の実行ファイルを取得するとともに、前記抽出ステップは、前記取得ステップにより取得されたエンコード形式の実行ファイルにおける特定領域の情報をコンピュータウィルス固有情報として抽出することを特徴とする請求項11乃至14のいずれかに記載のコンピュータウィルス固有情報抽出方法。
  16. 前記取得ステップ及び前記抽出ステップは、base64のエンコード形式でエンコードされた実行ファイルを扱うことを特徴とする請求項15に記載のコンピュータウィルス固有情報抽出方法。
  17. 前記抽出ステップは、前記エンコード形式の実行ファイルに対応したエンコード前の実行ファイルにおいて固有であるとみなし得る情報の格納領域の先頭位置がn+1バイト目であり、大きさがmバイトである場合に、前記エンコード形式の実行ファイルの先頭からn/3×4の小数点以下切り捨て値に1を加えた値の位置の第1のキャラクタから(n+m)/3×4の小数点以下切り捨て値に1を加えた値の位置の第2のキャラクタまでの領域を前記特定領域とし、前記第1のキャラクタから前記第2のキャラクタまでのキャラクタ列をコンピュータウィルス固有情報として抽出することを特徴とする請求項16に記載のコンピュータウィルス固有情報抽出方法。
  18. 前記抽出ステップは、抽出したコンピュータウィルス固有情報を複数組み合わせて、新たなコンピュータウィルス固有情報とすることを特徴とする請求項11乃至17のいずれかに記載のコンピュータウィルス固有情報抽出方法。
  19. 前記実行ファイルは、所定の実行可能圧縮形式で圧縮された実行ファイルであることを特徴とする請求項11乃至18に記載のコンピュータウィルス固有情報抽出方法。
  20. 前記実行ファイルは、PE形式であることを特徴とする請求項19に記載のコンピュータウィルス固有情報抽出方法。
  21. コンピュータウィルスの検出に用いられるコンピュータウィルス固有情報を抽出するコンピュータウィルス固有情報抽出装置において実行されるコンピュータウィルス固有情報抽出プログラムであって、
    コンピュータウィルスであると特定された実行ファイルを取得する取得ステップと、
    実行ファイルにおいて固有であるとみなし得る情報の格納領域であると予め決められた特定領域に含まれる情報を、前記取得手段により取得された実行ファイルからコンピュータウィルス固有情報として抽出する抽出ステップとを有することを特徴とするコンピュータウィルス固有情報抽出プログラム。
  22. 前記特定領域は、複数の実行ファイル間で一致する確率が所定値以下となる情報の格納領域であることを特徴とする請求項21に記載のコンピュータウィルス固有情報抽出プログラム。
  23. 前記抽出ステップは、前記実行ファイルが前記特定領域より前にオフセット領域を含む場合に、前記オフセット領域のオフセット値に基づいて、前記実行ファイルにおける特定領域の先頭位置を特定することを特徴とする請求項21又は22に記載のコンピュータウィルス固有情報抽出プログラム。
  24. 前記特定領域は、前記実行ファイルにおけるヘッダ領域の一部であることを特徴とする請求項21乃至23のいずれかに記載のコンピュータウィルス固有情報抽出プログラム。
  25. 前記取得ステップは、電子メールで転送されるエンコード形式の実行ファイルを取得するとともに、前記抽出ステップは、前記取得ステップにより取得されたエンコード形式の実行ファイルにおける特定領域の情報をコンピュータウィルス固有情報として抽出することを特徴とする請求項21乃至24のいずれかに記載のコンピュータウィルス固有情報抽出プログラム。
  26. 前記取得ステップ及び前記抽出ステップは、base64のエンコード形式でエンコードされた実行ファイルを扱うことを特徴とする請求項25に記載のコンピュータウィルス固有情報抽出プログラム。
  27. 前記抽出ステップは、前記エンコード形式の実行ファイルに対応したエンコード前の実行ファイルにおいて固有であるとみなし得る情報の格納領域の先頭位置がn+1バイト目であり、大きさがmバイトである場合に、前記エンコード形式の実行ファイルの先頭からn/3×4の小数点以下切り捨て値に1を加えた値の位置の第1のキャラクタから(n+m)/3×4の小数点以下切り捨て値に1を加えた値の位置の第2のキャラクタまでの領域を前記特定領域とし、前記第1のキャラクタから前記第2のキャラクタまでのキャラクタ列をコンピュータウィルス固有情報として抽出することを特徴とする請求項26に記載のコンピュータウィルス固有情報抽出プログラム。
  28. 前記抽出ステップは、抽出したコンピュータウィルス固有情報を複数組み合わせて、新たなコンピュータウィルス固有情報とすることを特徴とする請求項21乃至27のいずれかに記載のコンピュータウィルス固有情報抽出プログラム。
  29. 前記実行ファイルは、所定の実行可能圧縮形式で圧縮された実行ファイルであることを特徴とする請求項21乃至28に記載のコンピュータウィルス固有情報抽出プログラム。
  30. 前記実行ファイルは、PE形式であることを特徴とする請求項29に記載のコンピュータウィルス固有情報抽出プログラム。
JP2006512621A 2004-04-26 2005-04-25 コンピュータウィルス固有情報抽出装置、コンピュータウィルス固有情報抽出方法及びコンピュータウィルス固有情報抽出プログラム Active JP4025882B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2004129305 2004-04-26
JP2004129305 2004-04-26
PCT/JP2005/007814 WO2005103895A1 (ja) 2004-04-26 2005-04-25 コンピュータウィルス固有情報抽出装置、コンピュータウィルス固有情報抽出方法及びコンピュータウィルス固有情報抽出プログラム

Publications (2)

Publication Number Publication Date
JPWO2005103895A1 true JPWO2005103895A1 (ja) 2007-08-30
JP4025882B2 JP4025882B2 (ja) 2007-12-26

Family

ID=35197154

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006512621A Active JP4025882B2 (ja) 2004-04-26 2005-04-25 コンピュータウィルス固有情報抽出装置、コンピュータウィルス固有情報抽出方法及びコンピュータウィルス固有情報抽出プログラム

Country Status (4)

Country Link
US (1) US20080282349A1 (ja)
EP (1) EP1742151A4 (ja)
JP (1) JP4025882B2 (ja)
WO (1) WO2005103895A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0513375D0 (en) * 2005-06-30 2005-08-03 Retento Ltd Computer security
WO2007117567A2 (en) * 2006-04-06 2007-10-18 Smobile Systems Inc. Malware detection system and method for limited access mobile platforms
IL181426A (en) 2007-02-19 2011-06-30 Deutsche Telekom Ag Automatic removal of signatures for malware
EP2187586A1 (en) * 2008-11-14 2010-05-19 Zeus Technology Limited Facilitating the transmission of electronic mail
US8181251B2 (en) * 2008-12-18 2012-05-15 Symantec Corporation Methods and systems for detecting malware
US8291497B1 (en) * 2009-03-20 2012-10-16 Symantec Corporation Systems and methods for byte-level context diversity-based automatic malware signature generation
US8640241B2 (en) * 2009-11-16 2014-01-28 Quatum Corporation Data identification system
CN104217165B (zh) * 2014-09-16 2016-07-06 百度在线网络技术(北京)有限公司 文件的处理方法及装置
KR101717941B1 (ko) * 2015-09-16 2017-03-20 주식회사 안랩 악성코드 진단 방법 및 이에 적용되는 장치
CN114036518A (zh) * 2021-11-02 2022-02-11 安天科技集团股份有限公司 一种病毒文件处理方法、装置、电子设备及存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2501771B2 (ja) * 1993-01-19 1996-05-29 インターナショナル・ビジネス・マシーンズ・コーポレイション 不所望のソフトウェア・エンティティの複数の有効なシグネチャを得る方法及び装置
US6141698A (en) * 1997-01-29 2000-10-31 Network Commerce Inc. Method and system for injecting new code into existing application code
US5953534A (en) * 1997-12-23 1999-09-14 University Of Washington Environment manipulation for executing modified executable and dynamically-loaded library files
GB2353372B (en) * 1999-12-24 2001-08-22 F Secure Oyj Remote computer virus scanning
US6971019B1 (en) * 2000-03-14 2005-11-29 Symantec Corporation Histogram-based virus detection
US7146305B2 (en) * 2000-10-24 2006-12-05 Vcis, Inc. Analytical virtual machine
US7047562B2 (en) * 2001-06-21 2006-05-16 Lockheed Martin Corporation Conditioning of the execution of an executable program upon satisfaction of criteria
US7421587B2 (en) * 2001-07-26 2008-09-02 Mcafee, Inc. Detecting computer programs within packed computer files
US7487544B2 (en) * 2001-07-30 2009-02-03 The Trustees Of Columbia University In The City Of New York System and methods for detection of new malicious executables
US20070277037A1 (en) * 2001-09-06 2007-11-29 Randy Langer Software component authentication via encrypted embedded self-signatures
US7065790B1 (en) * 2001-12-21 2006-06-20 Mcafee, Inc. Method and system for providing computer malware names from multiple anti-virus scanners
US7257842B2 (en) * 2003-07-21 2007-08-14 Mcafee, Inc. Pre-approval of computer files during a malware detection
US7437759B1 (en) * 2004-02-17 2008-10-14 Symantec Corporation Kernel mode overflow attack prevention system and method

Also Published As

Publication number Publication date
EP1742151A4 (en) 2010-11-10
EP1742151A1 (en) 2007-01-10
WO2005103895A1 (ja) 2005-11-03
US20080282349A1 (en) 2008-11-13
JP4025882B2 (ja) 2007-12-26

Similar Documents

Publication Publication Date Title
JP4025882B2 (ja) コンピュータウィルス固有情報抽出装置、コンピュータウィルス固有情報抽出方法及びコンピュータウィルス固有情報抽出プログラム
US7664754B2 (en) Method of, and system for, heuristically detecting viruses in executable code
Bayer et al. Scalable, behavior-based malware clustering.
KR101693370B1 (ko) 퍼지 화이트리스팅 안티-멀웨어 시스템 및 방법
JP5511097B2 (ja) 中央集中的にマルウェアを検出するための知的ハッシュ
US8590016B2 (en) Apparatus and method for removing malicious code inserted into file
US8726387B2 (en) Detecting a trojan horse
EP1899933B1 (en) Method for detecting a malicious packed executable
US20040236884A1 (en) File analysis
EP2278516A1 (en) Detection and minimization of false positives in anti-malware processing
WO2009064510A1 (en) Risk scoring system for the prevention of malware
JP6711000B2 (ja) 情報処理装置、ウィルス検出方法及びプログラム
US9106688B2 (en) System, method and computer program product for sending information extracted from a potentially unwanted data sample to generate a signature
CN107395650B (zh) 基于沙箱检测文件识别木马回连方法及装置
JP6000465B2 (ja) プロセス検査装置、プロセス検査プログラムおよびプロセス検査方法
JP5779334B2 (ja) 出力制御装置、出力制御プログラム、出力制御方法および出力制御システム
CN103793649A (zh) 通过云安全扫描文件的方法和装置
US8726377B2 (en) Malware determination
JP2010009269A (ja) コンピュータウィルス検出装置、コンピュータウィルス検出方法及びコンピュータウィルス検出プログラム
JP4050253B2 (ja) コンピュータウィルス情報収集装置、コンピュータウィルス情報収集方法、及びプログラム
JP2017129893A (ja) マルウェア検知方法及びシステム
CN110832488A (zh) 规范化可执行程序文件中的入口点指令
KR101983997B1 (ko) 악성코드 검출시스템 및 검출방법

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070612

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070809

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070911

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150