JP4732484B2 - 仮想環境を利用した非実行ファイル内のエクスプロイトコード分析方法及び装置 - Google Patents

仮想環境を利用した非実行ファイル内のエクスプロイトコード分析方法及び装置 Download PDF

Info

Publication number
JP4732484B2
JP4732484B2 JP2008133364A JP2008133364A JP4732484B2 JP 4732484 B2 JP4732484 B2 JP 4732484B2 JP 2008133364 A JP2008133364 A JP 2008133364A JP 2008133364 A JP2008133364 A JP 2008133364A JP 4732484 B2 JP4732484 B2 JP 4732484B2
Authority
JP
Japan
Prior art keywords
register value
target program
log information
code
exploit
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.)
Active
Application number
JP2008133364A
Other languages
English (en)
Other versions
JP2009093615A (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.)
Electronics and Telecommunications Research Institute ETRI
Original Assignee
Electronics and Telecommunications Research Institute ETRI
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 Electronics and Telecommunications Research Institute ETRI filed Critical Electronics and Telecommunications Research Institute ETRI
Publication of JP2009093615A publication Critical patent/JP2009093615A/ja
Application granted granted Critical
Publication of JP4732484B2 publication Critical patent/JP4732484B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • 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/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities

Description

本発明は、エクスプロイトコード分析方法及び装置に関し、特に仮想環境を利用してエクスプロイトコードを分析するための方法及び装置に関する。
最近、情報セキュリティの脅威は、エクスプロイトコード(exploit code,malicious code)に集中されており、このようなエクスプロイトコードは、秘密性、無欠性、可用性などに集約される情報セキュリティの目的に反して全般的な問題を起こしている。
エクスプロイトコードの理論的定義は、他のコンピューターに被害を与えるために製作されたすべてのプログラム及び実行可能な部分であり、実質的定義は、他人に心理的、実質的に被害を与えるために製作されたプログラム及び実行可能な部分を言う。
このようなエクスプロイトコードを分析するための方法として、大きく、既知のエクスプロイトコードに対する分析方法と未知のエクスプロイトコードに対する分析方法とがある。
既知のエクスプロイトコード分析方法としては、シグネチャ(signature)検査法、CRC(Cyclic Redundancy Check)検査法及びヒューリスティック(heuristic)検査法が挙げられる。
シグネチャ検査法は、人を区別する時に指紋を見ることと同様に、ワクチンプログラムがウイルスを診断する方法の1つであって、エクスプロイトコードが有している独特の文字列を通じてエクスプロイトコードを分析する方法である。このようなシグネチャ検査法には、順次的文字列検査法と特定文字列検査法がある。順次文字列検査法は、速度は早いが、エクスプロイトコード探知率が劣化するという短所があり、特定文字列検査法は、エクスプロイトコード探知率は高いが、速度が遅いという短所がある。
CRC検査法は、シリアル伝送でデータの信頼性を検証するためのエラー検出方法の一種であって、誤診率が低いという長所があるが、データが1バイトでも変形されると、エクスプロイトコードを診断することができないという短所がある。
ヒューリスティック検査法は、シグネチャ検査法を補完したもので、通常のプログラムで発見できない特別な命令や動作状態を探す方法である。このようなヒューリスティック検査法は、システムの実装が非常に難しいという短所がある。
一方、未知のエクスプロイトコード分析方法として、行為探知方法論と免疫システムが挙げられる。
行為探知方法論は、任意の実行プログラムが実際に実行される時に、当該プログラムが使用するシステム呼び出しをフッキング(hooking)し、探知エンジンが保有しているシステム呼び出しデータベースと比較した後、フッキング禁止されたルール(rule)を破ってシステム呼び出しを使用すれば、当該プログラムをエクスプロイトコードとして判断する。このようなアクセス方法は、ポリシー設定のエラーによって特定のシステム呼び出しに対する誤探知が発生し、正常実行コードをエクスプロイトコードとして判断する問題が発生するおそれがある。
免疫システムは、自然免疫体系と同様に、コンピューターシステムを保護する問題を「自分自身ではないもの」と「自分自身であるもの」とを区別する方式で解決しようとする方法である。しかし、このような免疫システムは、誤探知発生率が高くて、まだ常用化されていない。
したがって、前述したような従来のエクスプロイトコード分析方法の短所を克服し、安全で且つ正確にエクスプロイトコードを抽出することができる方法が要求される。
大韓民国特許登録第10−0628869号 2005 Workshop on the Evaluation of Software Defect Detection Tools 2005, June 2005, Michael Zhivich et al., "Dynamic Buffer Overflow Detection"
本発明の目的は、仮想環境で脆弱性/セキュリティホールが内包された対象プログラムを利用して非実行ファイルに含まれたエクスプロイトコードを安全に分析するための方法及び装置を提供することにある。
また、本発明の他の目的は、対象プログラムを持続的にモニタリングし、エクスプロイトコードが実行される時点の情報をログとして格納した後、これを分析することによって、エクスプロイトコードを分析するための装置及び方法を提供することにある。
また、本発明の他の目的は、以下の説明及び本発明の一実施形態によって把握されることができる。
上記目的を達成するために、本発明の一態様に係るエクスプロイトコード分析方法は、仮想環境で実行され、脆弱性が内包された対象プログラムによりエクスプロイトコードの分析を希望する非実行ファイルをロード(load)するステップと、当該対象プログラムのレジスタ(register)値を分析し、当該レジスタ値がノーマルコード(normal code)領域内を示すか否かを判断するステップと、当該レジスタ値が当該ノーマルコード領域以外の領域を示す場合、当該対象プログラムの動作に関するログ(log)情報を格納するステップと、当該格納されたログ情報に基づいて当該非実行ファイルに含まれたエクスプロイトコードを抽出及び分析するステップと、を含む。
また、本発明の他の態様に係るエクスプロイトコード分析装置は、仮想環境で実行される脆弱性が内包された対象プログラムを通じてエクスプロイトコードの分析を希望する非実行ファイルをロード(load)した後、当該対象プログラムのレジスタ(register)値を持続的に外部に出力するプログラム実行部と、当該プログラム実行部から出力されるレジスタ値を分析し、当該レジスタ値がノーマルコード(normal code)領域以外の領域を示す場合、当該対象プログラムの動作に関するログ(log)情報をログ情報データベースに格納するプログラム実行分析部と、当該格納されたログ情報に基づいて当該非実行ファイルに含まれたエクスプロイトコードを抽出及び分析するエクスプロイトコード分析部とを含む。
前述したように、本発明は、仮想環境でエクスプロイトコードを分析することによって、エクスプロイトコードの実行によって発生する被害を防止することができるという利点がある。
また、本発明は、既知のエクスプロイトコードだけでなく、未知のエクスプロイトコードを抽出及び分析することができるという利点がある。
以下、本発明の好ましい実施形態を添付の図面を参照して詳しく説明する。また、発明の要旨を不明瞭にしかねない公知の機能及び構成についての詳細な説明は省略する。
図1は、本発明の一実施形態に係るエクスプロイトコード分析装置のブロック構成図である。以下、図1を参照して本発明の一実施形態に係るエクスプロイトコード分析装置の構成及び動作について詳しく説明する。
図1を参照すると、本発明の一実施形態に係るエクスプロイトコード分析装置は、仮想環境で、エクスプロイトコードが含まれた非実行ファイルを脆弱性が内包された対象プログラムを通じてロード(load)し、当該対象プログラムを実行させるためのターゲットマシン(target machine)110と、当該ターゲットマシン110から出力される情報を利用してエクスプロイトコードを抽出及び分析するためのホストマシン(host machine)120とを含む。
非実行ファイルとは、それ自体では実行されないデータファイルを意味し、エクスプロイトコードを内包した非実行ファイルを脆弱性が内包されたプログラムがロードする場合に、プログラムが正常フローから外れる場合にエクスプロイトコードが実行される。
エクスプロイトコードは、プログラムの脆弱性によってプログラムが正常フローから外れる時に実行され、行うべき悪意的な役目が多い場合には、非実行ファイルにあらかじめ含まれたエクスプロイトコードイメージを実行させるようになる。エクスプロイトコードイメージは、実行ファイルであり、エクスプロイトコードによって挿入されることができ、又は、挿入されないこともできる。
本発明の一実施形態に係るターゲットマシン110は、対象プログラムデータベース112及びプログラム実行部114を含む。
本発明の一実施形態に係る対象プログラムデータベース112は、エクスプロイトコードを検査するために入力される非実行ファイルを実行させるための多様な形式の脆弱性が内包されたプログラムを格納する。
本発明の一実施形態に係るプログラム実行部114は、仮想環境で実行される脆弱性が内包された対象プログラムを通じて外部から入力される非実行ファイルをロードする。この時、プログラム実行部114は、対象プログラムデータベース112を検索し、上記非実行ファイルの形式に基づいて非実行ファイルを実行させることができる対象プログラムを選択することができる。
また、本発明の一実施形態に係るプログラム実行部114は、非実行ファイルをロードして実行する対象プログラムのレジスタ値をプログラム実行分析部122に出力する。
本発明の一実施形態に係るホストマシン120は、プログラム実行分析部122、ログ情報データベース124及びエクスプロイトコード分析部126を含む。
本発明の一実施形態に係るプログラム実行分析部122は、プログラム実行部114から出力されるレジスタ値を分析し、当該レジスタ値が仮想メモリーのノーマルコード(normal code)領域以外の領域を示すか否かを判断する。その判断の結果、当該レジスタ値がノーマルコード領域以外の領域を示す場合、対象プログラムの動作に関するログ情報をログ情報データベース124に格納する。例えば、x86 CPUの場合、EIP(Extended Instruction Pointer)レジスタ値がノーマルコード領域以外を示す時に対象プログラムの動作に関するログ情報を格納する。当該ログ情報のための対象プログラムの動作情報は、ターゲットマシン110のオペレーティングシステム(O/S)から得ることもできる。
すなわち、本発明の一実施形態に係るプログラム実行分析部122は、対象プログラムを持続的にモニタリングし、対象プログラムのレジスタ値を分析することによって、非実行ファイルに含まれたエクスプロイトコードが実行される時点をログ情報として格納する。したがって、本発明は、上記のように、エクスプロイトコードが実行される時点をログ情報として格納することによって、既知のエクスプロイトコードだけでなく、未知のエクスプロイトコードを抽出及び分析することができるという利点がある。
ノーマルコードは、ファイルをロードさせるプログラムが正常的にアクセスするコードメモリー領域をいう。一方、ログ情報は、対象プログラムのレジスタ値及び仮想メモリーにロードされた非実行ファイルの内容を含む。
この時、本発明の一実施形態に係るプログラム実行分析部122は、プログラム実行部114から持続的に出力されるレジスタ値を分析し、レジスタ値がノーマルコード領域以外の領域を示し始めた時点でログ情報を格納し始め、レジスタ値がノーマルコード領域内を示し始めた時点でログ情報の格納を終了することができる。
本発明の一実施形態に係るログ情報データベース124は、プログラム実行分析部122から出力されるログ情報を格納する。
本発明の一実施形態に係るエクスプロイトコード分析部126は、ログ情報データベース124に格納されたログ情報に基づいて非実行ファイルに含まれたエクスプロイトコードを抽出及び分析する。この時、エクスプロイトコード分析部126は、抽出されたエクスプロイトコードを逆アセンブル(disassemble)してエクスプロイトコードの動作メカニズム(mechanism)を分析することができる。
図2は、本発明の一実施形態に係るエクスプロイトコード分析方法を示す流れ図である。以下、図2を参照して本発明の一実施形態に係るエクスプロイトコード分析方法を説明するが、図1を参照して説明した本発明の一実施形態に係るエクスプロイトコード分析装置の説明と重複する内容は省略する。
ステップ201で、エクスプロイトコードを抽出するための非実行ファイルが入力されれば、本発明の一実施形態に係るプログラム実行部114は、仮想環境で実行される対象プログラムを通じて非実行ファイルをロードする。この時、本発明の一実施形態に係るプログラム実行部114は、対象プログラムデータベース112を検索し、非実行ファイルの形式に基づいて非実行ファイルを実行させることができる対象プログラムを選択することができる。
対象プログラムは、非実行ファイルを構文解析(parsing)して仮想メモリーにロードする。
ステップ203で、本発明の一実施形態に係るプログラム実行分析部122は、プログラム実行部114から対象プログラムの実行により持続的に出力される対象プログラムのレジスタ値を分析する。
ステップ205で、本発明の一実施形態に係るプログラム実行分析部122は、対象プログラムのレジスタ値が仮想メモリーのノーマルコード領域以外の領域を示すか否かを判断する。この判断の結果、対象プログラムのレジスタ値が仮想メモリーのノーマルコード以外の領域を示す場合、すなわち非実行ファイル内に含まれたエクスプロイトコードの動作が探知された場合、ステップ207に進行する。
エクスプロイトコードは、脆弱性を内包したプログラムの実行フローで行われるので、当該エクスプロイトコードが実行される時点を分析することが困難であったが、本発明は、上記したように、エクスプロイトコードが含まれた非実行ファイルがロードされたプログラムのレジスタ値を分析することによって、エクスプロイトコードが実行される時点を容易に判断することができる。
ステップ207で、本発明の一実施形態に係るプログラム実行分析部122は、対象プログラムの動作に関するログ情報をログ情報データベース124に格納し始めた後、ステップ209に進行する。
ステップ209で、本発明の一実施形態に係るプログラム実行分析部122は、対象プログラムのレジスタ値がノーマルコード領域内を示すか否かを判断し、この判断の結果、レジスタ値がノーマルコード領域内を示す場合、すなわち非実行ファイル内に含まれたエクスプロイトコードの動作が止まった場合、ステップ211に進行し、ログ情報の格納を終了する。
ステップ213で、本発明の一実施形態に係るプログラム実行分析部122は、対象プログラムの終了可否を判断し、この判断の結果、対象プログラムが終了した場合、ステップ215に進行し、一方、対象プログラムが終了しない場合、ステップ205に進行して対象プログラムのレジスタ値の分析を継続して行う。
ステップ215で、本発明の一実施形態に係るエクスプロイトコード分析部126は、ログ情報データベース124に格納されたログ情報を利用して非実行ファイル内に含まれたエクスプロイトコードを抽出及び分析する。その後、仮想環境を対象プログラムが動作する前の状態に切り換えて終了する。
図3は、本発明の一実施形態に係るエクスプロイトコード分析方法の例を示す図である。以下、図3を参照して本発明の一実施形態に係るエクスプロイトコード分析方法を説明する。
脆弱性が内包された対象プログラムが実行される場合、対象プログラムは、開始時から終了時まで正常フロー310で実行されることができるが、内包された脆弱性によって非正常フロー320で実行されることもできる。
対象プログラムにより非実行ファイルがロードされれば、プログラム実行分析部122は、対象プログラムのレジスタ値を分析し始める。区間301は、対象プログラムにより非実行ファイルがロードされた時点からエクスプロイトコードが実行される前までの区間を示し、この時、対象プログラムのレジスタ値は、データコード332が仮想メモリーのノーマルコード領域334を示す正常的な様相を表す。
対象プログラムが脆弱性によって正常フローから外れる場合(312)、対象プログラムにロードされた非実行ファイルに含まれたエクスプロイトコードが実行されることができる。この時、エクスプロイトコードの種類によってエクスプロイトコードイメージが実行(314)されることができる。
このようにエクスプロイトコードが実行される区間303では、エクスプロイトコード342の実行によって対象プログラムのレジスタ値が仮想メモリーのノーマルコード領域以外の領域344を示すようになる。このような場合、プログラム実行分析部122は、ログ情報を格納し始める。
その後、対象プログラムが非正常フロー320から外れることによって(313、315)、エクスプロイトコードが実行されない区間305では、対象プログラムのレジスタ値は、さらに正常的なデータコード332が仮想メモリーのノーマルコード領域334を示す様相を表すようになる。この時、プログラム実行分析部122は、ログの格納を終了し、エクスプロイトコード分析部126は、格納されたログに基づいてエクスプロイトコードを抽出及び分析する。
以上において説明した本発明は、本発明が属する技術の分野における通常の知識を有する者であれば、本発明の技術的思想を逸脱しない範囲内で、様々な置換、変形及び変更が可能であるので、上述した実施形態及び添付された図面に限定されるものではない。
本発明の一実施形態に係るエクスプロイトコード分析装置のブロック構成図である。 本発明の一実施形態に係るエクスプロイトコード分析方法を示す流れ図である。 本発明の一実施形態に係るエクスプロイトコード分析方法の例を示す図である。
符号の説明
110 ターゲットマシン
112 対象プログラムDB
114 プログラム実行部
120 ホストマシン
122 プログラム実行分析部
124 ログ情報DB
126 エクスプロイトコード分析部

Claims (9)

  1. エクスプロイトコードを分析する方法であって、
    仮想環境で実行され、脆弱性が内包された対象プログラムによりエクスプロイトコードの分析を希望する非実行ファイルをロードするステップと、
    前記対象プログラムのレジスタ値を分析し、前記レジスタ値がノーマルコード領域内を示すか否かを判断するステップと、
    前記レジスタ値が前記ノーマルコード領域以外の領域を示す場合、前記対象プログラムの動作に関するログ情報を格納するステップと、
    前記格納されたログ情報に基づいて前記非実行ファイルに含まれたエクスプロイトコードを抽出及び分析するステップと
    を含むことを特徴とする方法。
  2. 対象プログラムの動作に関するログ情報を格納するするステップは、前記レジスタ値を持続的に分析し、前記レジスタ値が前記ノーマルコード領域以外の領域を示し始めた時点で前記ログ情報を格納し始め、前記レジスタ値が前記ノーマルコード領域内を示し始めた時点で前記ログ情報の格納を終了するステップを含むことを特徴とする請求項1に記載の方法。
  3. 対象プログラムが終了するまで、前記対象プログラムのレジスタ値を分析し、前記レジスタ値がノーマルコード領域内を示すか否かを判断するステップ、及び前記レジスタ値が前記ノーマルコード領域以外の領域を示す場合、前記対象プログラムの動作に関するログ情報を格納するステップを反復実行することを特徴とする請求項2に記載の方法。
  4. 前記エクスプロイトコードの抽出および分析後に前記仮想環境を前記対象プログラム実行以前の状態に切り換えるステップをさらに含むことを特徴とする請求項1に記載の方法。
  5. 前記ログ情報は、
    前記対象プログラムのレジスタ値及び仮想メモリーにロードされた前記非実行ファイルの内容を含むことを特徴とする請求項1に記載の方法。
  6. エクスプロイトコードを分析する装置であって、
    仮想環境で実行される脆弱性が内包された対象プログラムを通じてエクスプロイトコードの分析を希望する非実行ファイルをロードした後、前記対象プログラムのレジスタ値を持続的に外部に出力するプログラム実行部と、
    前記プログラム実行部から出力されるレジスタ値を分析し、前記レジスタ値がノーマルコード領域以外の領域を示す場合、前記対象プログラムの動作に関するログ情報をログ情報データベースに格納するプログラム実行分析部と、
    前記格納されたログ情報に基づいて前記非実行ファイルに含まれたエクスプロイトコードを抽出及び分析するエクスプロイトコード分析部と
    を含むことを特徴とする装置。
  7. 前記プログラム実行分析部は、
    前記プログラム実行部から持続的に出力される前記レジスタ値を分析し、前記レジスタ値が前記ノーマルコード領域以外の領域を示し始めた時点で前記ログ情報を格納し始め、前記レジスタ値が前記ノーマルコード領域内を示し始めた時点で前記ログ情報の格納を終了することを特徴とする請求項6に記載の装置。
  8. 前記エクスプロイトコード分析部は、
    前記エクスプロイトコードの分析後に前記仮想環境を前記対象プログラム実行以前の状態に切り換えることを特徴とする請求項6に記載の装置。
  9. 前記ログ情報は、
    前記対象プログラムのレジスタ値及び仮想メモリーにロードされた前記非実行ファイルの内容を含むことを特徴とする請求項6に記載の装置。
JP2008133364A 2007-10-04 2008-05-21 仮想環境を利用した非実行ファイル内のエクスプロイトコード分析方法及び装置 Active JP4732484B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020070100009A KR100945247B1 (ko) 2007-10-04 2007-10-04 가상 환경을 이용한 비실행 파일 내의 악성 코드 분석 방법및 장치
KR10-2007-0100009 2007-10-04

Publications (2)

Publication Number Publication Date
JP2009093615A JP2009093615A (ja) 2009-04-30
JP4732484B2 true JP4732484B2 (ja) 2011-07-27

Family

ID=40524404

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008133364A Active JP4732484B2 (ja) 2007-10-04 2008-05-21 仮想環境を利用した非実行ファイル内のエクスプロイトコード分析方法及び装置

Country Status (3)

Country Link
US (1) US20090094585A1 (ja)
JP (1) JP4732484B2 (ja)
KR (1) KR100945247B1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8595689B2 (en) 2008-12-24 2013-11-26 Flir Systems Ab Executable code in digital image files
KR101044274B1 (ko) 2009-11-03 2011-06-28 주식회사 안철수연구소 악성 사이트 검출 장치, 방법 및 컴퓨터 프로그램이 기록된 기록매체
US8516467B2 (en) * 2010-01-29 2013-08-20 Nintendo Co., Ltd. Method and apparatus for enhancing comprehension of code time complexity and flow
KR101228900B1 (ko) * 2010-12-31 2013-02-06 주식회사 안랩 비 pe파일의 악성 컨텐츠 포함 여부를 판단하는 방법 및 시스템
US8646088B2 (en) 2011-01-03 2014-02-04 International Business Machines Corporation Runtime enforcement of security checks
KR101265173B1 (ko) * 2012-05-11 2013-05-15 주식회사 안랩 비실행 파일 검사 장치 및 방법
KR101212553B1 (ko) 2012-05-11 2012-12-14 주식회사 안랩 악성 파일 검사 장치 및 방법
KR101244731B1 (ko) * 2012-09-11 2013-03-18 주식회사 안랩 디버그 이벤트를 이용한 악성 쉘 코드 탐지 장치 및 방법
KR101382549B1 (ko) * 2012-09-18 2014-04-08 순천향대학교 산학협력단 모바일 환경에서 sns 콘텐츠의 사전 검증 방법
KR101416762B1 (ko) 2013-02-14 2014-07-08 주식회사 엔씨소프트 온라인 게임의 봇 탐지 시스템 및 방법
KR101710918B1 (ko) * 2015-11-30 2017-02-28 (주)이스트소프트 사용자파일을 암호화하는 악성코드의 모니터링 장치 및 방법
KR101646096B1 (ko) * 2016-01-21 2016-08-05 시큐레터 주식회사 메모리 분석을 통한 비실행 파일의 악성 여부 검사 방법 및 장치
US10546120B2 (en) * 2017-09-25 2020-01-28 AO Kaspersky Lab System and method of forming a log in a virtual machine for conducting an antivirus scan of a file
KR102472523B1 (ko) * 2022-05-26 2022-11-30 시큐레터 주식회사 리버싱 엔진 기반의 문서 행위를 판단하기 위한 방법 및 이를 위한 장치

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4558302A (en) * 1983-06-20 1985-12-10 Sperry Corporation High speed data compression and decompression apparatus and method
JPH10501354A (ja) * 1994-06-01 1998-02-03 クワンタム・リープ・イノヴェーションズ・インコーポレーテッド コンピュータ・ウィルス・トラップ装置
US6802028B1 (en) * 1996-11-11 2004-10-05 Powerquest Corporation Computer virus detection and removal
US6795966B1 (en) * 1998-05-15 2004-09-21 Vmware, Inc. Mechanism for restoring, porting, replicating and checkpointing computer systems using state extraction
US7093239B1 (en) * 2000-07-14 2006-08-15 Internet Security Systems, Inc. Computer immune system and method for detecting unwanted code in a computer system
US7146305B2 (en) * 2000-10-24 2006-12-05 Vcis, Inc. Analytical virtual machine
US7266844B2 (en) * 2001-09-27 2007-09-04 Mcafee, Inc. Heuristic detection of polymorphic computer viruses based on redundancy in viral code
US7409717B1 (en) * 2002-05-23 2008-08-05 Symantec Corporation Metamorphic computer virus detection
JP4145582B2 (ja) 2002-06-28 2008-09-03 Kddi株式会社 コンピュータウィルス検査装置およびメールゲートウェイシステム
TW200416542A (en) * 2003-02-26 2004-09-01 Osaka Ind Promotion Org Determination method of improper processing, data processing device, computer program and recording media (II)
US7908653B2 (en) * 2004-06-29 2011-03-15 Intel Corporation Method of improving computer security through sandboxing
JP4728619B2 (ja) * 2004-10-01 2011-07-20 富士通株式会社 ソフトウェアの改竄検出装置、改竄防止装置、改竄検出方法及び改竄防止方法
TWI252976B (en) * 2004-12-27 2006-04-11 Ind Tech Res Inst Detecting method and architecture thereof for malicious codes
KR100800999B1 (ko) * 2006-02-17 2008-02-11 삼성전자주식회사 프로그램의 실행흐름을 검사하는 방법 및 장치
US20080022378A1 (en) * 2006-06-21 2008-01-24 Rolf Repasi Restricting malicious libraries
JP2008140300A (ja) * 2006-12-05 2008-06-19 Hitachi Ltd ストレージシステム及びウィルス感染拡散防止方法並びにウィルス除去支援方法
US20080271142A1 (en) * 2007-04-30 2008-10-30 Texas Instruments Incorporated Protection against buffer overflow attacks
US8141163B2 (en) * 2007-07-31 2012-03-20 Vmware, Inc. Malicious code detection

Also Published As

Publication number Publication date
KR20090034648A (ko) 2009-04-08
JP2009093615A (ja) 2009-04-30
KR100945247B1 (ko) 2010-03-03
US20090094585A1 (en) 2009-04-09

Similar Documents

Publication Publication Date Title
JP4732484B2 (ja) 仮想環境を利用した非実行ファイル内のエクスプロイトコード分析方法及び装置
Carmony et al. Extract Me If You Can: Abusing PDF Parsers in Malware Detectors.
JP5265061B1 (ja) 悪意のあるファイル検査装置及び方法
US7814544B1 (en) API-profile guided unpacking
US8904536B2 (en) Heuristic method of code analysis
US8713681B2 (en) System and method for detecting executable machine instructions in a data stream
US10055585B2 (en) Hardware and software execution profiling
US20140082729A1 (en) System and method for analyzing repackaged application through risk calculation
US20180020013A1 (en) Program, information processing device, and information processing method
KR102317833B1 (ko) 악성 코드 탐지 모델 학습 방법 및 이를 이용한 탐지 방법
US9507933B2 (en) Program execution apparatus and program analysis apparatus
JPWO2006087780A1 (ja) 脆弱性監査プログラム、脆弱性監査装置、脆弱性監査方法
US10395033B2 (en) System, apparatus and method for performing on-demand binary analysis for detecting code reuse attacks
EA029778B1 (ru) Способ обезвреживания вредоносных программ, блокирующих работу пк, с использованием отдельного устройства для активации пользователем процедуры противодействия вредоносному программному обеспечению
JP2010257150A (ja) 不正処理検知装置、不正処理検知方法及びプログラム
JP5326063B1 (ja) デバッグイベントを用いた悪意のあるシェルコードの検知装置及び方法
KR101161008B1 (ko) 악성코드 탐지시스템 및 방법
TWI656453B (zh) 檢測系統及檢測方法
CN109214179B (zh) 一种程序模块安全检测方法及装置
CN111027072B (zh) Linux下基于elf二进制标准解析的内核Rootkit检测方法及装置
KR102292844B1 (ko) 악성코드 탐지 장치 및 방법
CN109977669B (zh) 病毒识别方法、装置和计算机设备
KR20100100488A (ko) 메모리 조작유무를 감지하는 방법 및 이를 이용한 장치
CN107368740B (zh) 一种针对数据文件中可执行代码的检测方法及系统
US10083298B1 (en) Static approach to identify junk APIs in a malware

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110330

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: 20110408

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110420

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140428

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4732484

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250