JP4741782B2 - コンピュータ免疫システムおよびコンピュータシステムにおいて望ましくないコードを検出する方法 - Google Patents

コンピュータ免疫システムおよびコンピュータシステムにおいて望ましくないコードを検出する方法 Download PDF

Info

Publication number
JP4741782B2
JP4741782B2 JP2002512775A JP2002512775A JP4741782B2 JP 4741782 B2 JP4741782 B2 JP 4741782B2 JP 2002512775 A JP2002512775 A JP 2002512775A JP 2002512775 A JP2002512775 A JP 2002512775A JP 4741782 B2 JP4741782 B2 JP 4741782B2
Authority
JP
Japan
Prior art keywords
program
target program
behavior pattern
virtual
virtual machine
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.)
Expired - Lifetime
Application number
JP2002512775A
Other languages
English (en)
Other versions
JP2004504662A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2004504662A publication Critical patent/JP2004504662A/ja
Application granted granted Critical
Publication of JP4741782B2 publication Critical patent/JP4741782B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Debugging And Monitoring (AREA)
  • Storage Device Security (AREA)

Description

【0001】
優先権主張情報
本出願は、2000年7月17日出願の米国特許仮出願第60/218,489号について優先権を主張し、その全てを参照により組み込む。
【0002】
発明の背景
1.発明の属する技術分野
コンピュータウイルスやトロイの木馬等、悪意ある挙動または自己増殖を行うコンピュータプログラムの検出に関する。
【0003】
2.関連する技術の説明
ウイルスの検出は、パーソナルコンピュータ時代の重要事項である。インターネット等の通信ネットワークの発展、データ交換の増加、通信用電子メールの急成長に伴い、通信やファイル交換を介したコンピュータの感染は、ますます重要な問題になっている。感染は様々な形を取るが、代表的にはコンピュータウイルス、トロイの木馬、その他悪意あるコードに関係している。電子メールを介したウイルス攻撃に関する最近の事件は、感染速度および被害の大きさの点で劇的であった。インターネットサービスプロバイダ(ISP)や企業は、サービス障害や電子メール機能損失の被害を受けた。多くの場合、ファイル交換や電子メール経由の感染を適切に防止しようとすると、コンピュータ利用者に多大の不便をもたらす。ウイルス攻撃を検出し対処するための進んだ方法が求められている。
【0004】
従来のウイルス検出方法の1つは、シグネチャスキャンである。シグネチャスキャンシステムは、既知の悪意あるコードから抽出したサンプルコードパターンを使用し、それらパターンを他のプログラムコード内に探す。場合によっては、スキャンするプログラムコードをまずエミュレーションによって解読し、その解読したコード内にシグネチャまたは機能シグネチャを探す。このシグネチャスキャン方法の主たる限界は、既知の悪意あるコードしか検出できないことである。すなわち、記憶している既知の悪意あるコードのシグネチャサンプルに一致するコードしか感染を検出できない。これまでに特定されていないウイルスや悪意あるコード、あるいはシグネチャデータベースの更新後に作られたウイルスや悪意あるコードは、全く検出できない。すなわちこの方法は、新しく発生したウイルスを検出しない。また、既に検出しシグネチャデータベースに格納したシグネチャであっても、それが書き換えられていれば、検出できない。
【0005】
さらにシグネチャ分析法は、コード内におけるシグネチャが期待する形で整列していないと、ウイルスを特定できない。ウイルスの作者は、オペレーションコードを置き換えることにより、あるいはダミーコードや任意コードをウイルス機能に挿入することにより、ウイルスの特定を難しくしている。意味のないコードを挿入することによりウイルスのシグネチャを変更し、シグネチャスキャンプログラムによる検出を不能にした上で、ウイルスの繁殖や感染を可能にすることも考えられる。
【0006】
他のウイルス検出方法として、完全性検査がある。完全性検査システムは、既知の健全なアプリケーションプログラムコードからコードサンプルを抽出する。そのコードサンプルと当該プログラムファイルの情報とを一緒に格納する。この情報とは、実行可能プログラムヘッダ、ファイル長さ、サンプルの日付および時間を含む。このデータベースに基づきプログラムファイルを定期的に検査し、プログラムファイルが変更されていないことを確認する。完全性検査プログラムは、ユーザがコンピュータのオペレーティングシステムをアップグレードしたり、アプリケーションソフトウエアのインストールやアップグレードを行うと、長大な変更ファイルリストを作成する。完全性検査に基づくウイルス検出システムの主な欠点は、アプリケーションプログラムのあらゆる変更に対して多数のウイルス活動警告を出すことである。利用者は、コンピュータシステムに対する本当の攻撃を示す警告が出されても、それと判断することが困難である。
【0007】
チェックサム監視システムは、各プログラムファイルについて巡回冗長検査(CRC)値を発生することにより、ウイルスを検出する。CRC値の変化によってプログラムファイルの変更を検出する。チェックサム監視が完全性検査よりも優れている点は、悪意あるコードにとってチェックサム監視を破るのはより困難なことである。一方、チェックサム監視は、完全性検査システムと同じく、多くの偽警告を出すこと、どの警告が実際のウイルスあるいは感染を示すのかを特定しにくいことにおいて限界がある。
【0008】
挙動阻止システムは、対象コンピュータのオペレーティングシステムと連係し、悪意ある挙動の兆候を監視し、ウイルス挙動を検出する。悪意ある挙動を検出すると、それを阻止し、利用者に危険な挙動が行われようとしていることを知らせる。利用者は、悪意の可能性があるコードでもその動作を許可できる。そのため挙動阻止システムは、いくぶん信頼性が低い。なぜならシステムの効果は、利用者の入力に依存するからである。さらに常駐挙動阻止システムは、悪意あるコードがそれを検出し無効にすることもある。
【0009】
他の感染検出の従来方法は、おとりファイルを使用する。この方法は、一般に別のウイルス検出方法との組合せで使用し、現に活動している感染を検出する。すなわち悪意あるコードは、対象コンピュータにおいて実際に活動しており、ファイルを変更している。ウイルスがおとりファイルを変更した時、それを検出できる。多くのウイルスは、おとりファイルを知っており、非常に小さいファイルや明らかなおとりファイルを変更しない。おとりファイルは、その構造や所定ファイル名から分かる。
【0010】
ウイルスや他の悪意あるコードを検出するための進んだ技術が求められている。
【0011】
発明の開示
本発明の一態様は、コンピュータシステム内のプログラムコード中に存在する悪意あるコードを特定する方法を提供する。この方法は、前記コンピュータシステム内において、仮想マシンを初期化することを含む。初期化した前記仮想マシンは、中央処理装置の機能とメモリの機能とをシミュレートするソフトウエアを備える。前記仮想マシンは、対象プログラムを仮想的に実行し、当該対象プログラムは、前記仮想マシンを介してのみ前記コンピュータシステムと相互作用する。前記方法は、前記仮想実行した対象プログラムの挙動を分析し、悪意あるコードの挙動の出現を特定し、その悪意あるコードの挙動の出現を挙動パターンに示す。前記仮想マシンは、前記分析処理後に終了し、前記仮想マシンにあった前記対象プログラムのコピーを前記コンピュータシステムから削除する。
【0012】
本発明の他の態様は、コンピュータシステム内のプログラムコード中に存在する悪意あるコードを特定する方法を提供する。この方法は、前記コンピュータシステム内において仮想マシンを初期化することを含む。前記仮想マシンは、中央処理装置の機能と、メモリの機能と、仮想オペレーティングシステムへの割込み呼び出しを含むオペレーティングシステムの機能とをシミュレートするソフトウエアを備える。対象プログラムを前記仮想マシン内で仮想的に実行し、前記対象プログラムと前記仮想オペレーティングシステムおよび前記仮想中央処理装置とを前記仮想マシンを介して相互作用させる。仮想実行中の前記対象プログラムの挙動を監視し、悪意あるコードの存在を特定し、悪意あるコードの挙動の出現を挙動パターンに示す。前記仮想マシンを終了し、分析した対象プログラムの挙動パターン特性の記録を残す。
【0013】
発明を実施するための最良の形態
本発明の好適実施例に基づく自動分析システムは、コンピュータシステム内においてウイルスおよび他の悪意あるコードを検出する。この検出は、対象コンピュータシステムに導入する各プログラムについて挙動パターンを作成し、その挙動パターンを分析することによって行う。新しいコンピュータプログラムまたは変更したコンピュータプログラムは、コンピュータシステムで実行する前に分析する。最も好適な方法として、コンピュータシステムは、当該コンピュータシステムをシミュレートした仮想マシンを始動させる。その仮想マシンは、新しいコンピュータプログラムまたは変更したコンピュータプログラムを実行し、物理的コンピュータシステムがその新しいコンピュータプログラムを実行する前に、そのプログラムの挙動パターンを作成する。その挙動パターンに対して初期分析を行い、プログラムが最初にコンピュータシステムに提供された時、感染プログラムを特定する。この分析システムは、挙動パターンとそれに対応する分析結果とをデータベースに格納する。新たに感染したプログラムの検出は、そのプログラムに対応する格納挙動パターンと新たに作成した挙動パターンとの差分を計算し、その差分を分析し、感染または悪意あるコードに関連するペイロードパターンを特定することにより行う。
【0014】
プログラミングにおいては、様々な用語を用いて様々な機能的プログラミングサブユニットを記述する。時代によってあるいはプログラミング言語によって、各種サブユニットは、ファンクション、ルーチン、サブプログラム、サブルーチン等の名前で呼ばれてきた。このような呼び方、状況、差異等は、本発明にとってさほど重要ではない。従って本明細書は、単にプログラムという呼び方を使う。プログラムとは、あらゆるサイズの機能的プログラミングユニットであり、コンピュータシステムまたはコンピューティング環境において、定義したタスクを十分に実行する。さらにワードプロセッサプログラムのマクロ、例えばマイクロソフトワード文書のVISUAL BASIC(登録商標)マクロが実行するような特化した機能も、プログラムである。この意味において、各文書もプログラムと考えることができる。
【0015】
便宜上および簡潔のため、本明細書は、ウイルスの用語を公知の意味合いで用いる。すなわちウイルスは、自己増殖するプログラムであり、コンピュータシステムには望まれないものである。また本明細書で用いるウインドウズの用語は、マイクロソフト社がウインドウズの商標名で販売するいずれかのパーソナルデスクトップオペレーティングシステムを示す。PCまたはパーソナルコンピュータの用語は、特記しない限り、公知のx86構造に基づくコンピュータシステムを示し、インテル社がペンティアムの商標名で販売するマイクロプロセッサおよびその後継のマイクロプロセッサおよび構造を基本とするコンピュータを含む。本明細書は、本発明の各実施態様を示すことを目的とする。本発明の各態様は、図示したパーソナルコンピュータシステムに加え、様々な範囲のコンピュータシステムに適用可能である。
【0016】
本発明者は、様々なウイルスおよび他の悪意あるソースコードの挙動を分析してきた。そしてウイルスの一般的な特徴を特定した。ウイルスは、別のプログラムに感染し、それによって別のコンピュータに感染しようとする。従ってウイルスは、感染ループを含み、他の実行可能プログラムに自分自身をコピーする。時には、たとえばVISUAL BASIC(登録商標)マクロウイルスのように、文書に自分自身をコピーする。ウイルスおよびトロイの木馬は、一般にペイロードを含む。このペイロードによりウイルスは、感染したシステムを侵し伝染する。ペイロードは、例えばウイルスを知らせるポップアップメッセージであり、感染したコンピュータを破壊する悪意ある機能である。例えば、ハードディスクのデータを破壊したり消去し、バイオス(BIOS)フラッシュメモリやEEPROM内のバイオスを変更したり不能にする。
【0017】
ウイルスの別の共通特徴は、ウイルスがメモリに常駐することである。DOSウイルスは、自分自身をメモリにコピーしそこに常駐する。ほとんどのウイルスは、明確な常駐終了(TSR)呼び出しを用いる代わりに、ウイルスをハイメモリにコピーする手続きを使用する。するとウイルスは、ハイメモリブロック内のデータを直接変更できる。この感染方法の別の側面は、割り込みベクトルを変更し、メモリ常駐ウイルスあるいは悪意ある手続きが変更したメモリブロックを指示することである。これら変更されたメモリブロックは、感染手続きを記憶する。ウインドウズ限定のウイルスは、自分自身を強制的にリング0に設定する。これを例えばコールゲートやDPMI呼び出しを用いて行い、システムトレイ等のシステムユーティリティに常駐する。
【0018】
このような挙動は、ウイルスの特徴であり、一般に他の善意のプログラムには見られない。従って、あるプログラムが前記挙動のいずれか、あるいはそれらのいくつか、あるいはそれら全てを持っていれば、そのプログラムをウイルスあるいはウイルスに感染していると特定できる。本発明の好適実施例において、これら挙動の出現あるいはそれら挙動の組合せの出現は、感染したプログラムの挙動特性を表す挙動パターンデータにおいて、ビットの集合として示す。正常なファイルおよび感染したファイルの挙動パターン例を図1に示す。
【0019】
本発明の好適実施例において、新しくロードしたあるいは呼び出したプログラムの挙動は、仮想マシンで分析する。この仮想マシンは、完全なPCあるいは十分に完全なPCをソフトウエアでシミュレートしたものであり、プログラムの挙動パターンを作成する。仮想PCは、新しいプログラムあるいは変更のあったプログラムの実行をシミュレートし、システム機能の一部をシミュレートし、疑わしいプログラムの挙動を監視し、その挙動の記録を作成する。この記録を分析することにより、対象プログラムがウイルスあるいは悪意ある挙動を示したかを判定する。仮想マシンによる仮想実行の結果は、前記新しいプログラムの挙動パターンとなる。詳細は後述するが、仮想PCが作成した挙動パターンは、プログラムがウイルスに感染しているか、あるいはそれ自体がウイルスかを特定する。仮想実行を使用しての新しいプログラムに対するウイルス分析の利点は、仮想マシンは仮想であるから、仮想実行した新しいプログラムがウイルスを含んでいても、仮想マシンが感染するだけなことである。仮想マシンにおいて感染したインスタンスは、シミュレーション後に削除する。従って感染は不完全であり、ウイルスは伝染しない。仮想マシンを削除しても挙動パターンは残り、それを使って分析プログラムがウイルスの存在および新しいプログラム内の感染を特定する。
【0020】
最も好適であるのは、新しいプログラムを分析する毎に仮想マシンの新しいインスタンスを作成することにより、以前に分析したウイルスや、その他すべての以前に仮想化したプログラムの影響を排除することである。新しいプログラムは、仮想マシンの新しいインスタンスで実行する。この新しいインスタンスは、詳細を後述するように、変更した割込み呼び出し手順を開始する。仮想マシンは、変更した割込み呼び出し手順と協力して新しいプログラムを実行する。その実行中に仮想マシンは、全てのシステム呼び出し、DPMI/DOS割込み、入出力ポート読み出し/書き込み(R/W)挙動を監視し、それら挙動に基づき挙動パターンレジスタのビットを設定する。これら挙動パターンのビットは、シミュレーション完了後および仮想PC終了後も保管する。挙動パターンレジスタに記憶したビットは、挙動パターンであり、仮想実行したプログラムがウイルスあるいは他の悪意あるコードの存在を示す挙動を含むか否かを表す。
【0021】
前記変更した割込み呼び出し手順は、分析対象プログラムが仮想PC内において変更した割込みを呼び出し、それら割込みサービスルーチンの各々について挙動パターンを作成する。これにより本発明の好適実施例は、特殊タイプのウイルスも特定できる。この種のウイルスは、最初に割込みサービスルーチンだけを変更し、変更した割込みが他のプログラムによって呼び出された時、始めて伝染する。本発明の実施例は、仮想マシン内において様々な割込みサービスルーチンの変更を許可した後、その変更された割込みを分析することにより、前記遅延伝染機構を検出できる。
【0022】
別の好適実施例は、挙動パターンの静的な最終版だけを分析する。挙動パターンレジスタのビットが設定される順番を監視することも可能であり、環境によってはそうすることが望ましい。挙動パターンビットの設定順序は、追加情報を提供し、さらなるウイルス挙動の特定を可能にする。挙動パターンビットの設定順序を追跡することは、仮想マシン内で遂行できる。
【0023】
挙動分析法(ABM)の実施例は、変更された新しい未知のあるいは疑わしいプログラムから挙動パターンおよび順序を抽出する。この挙動パターンを使用し、未知プログラムの挙動を分析し、未知プログラムの挙動が悪意あるか否かを判定する。この悪意ある挙動の特定方法は、ホストコンピュータシステムが感染する前に、ウイルス汚染ファイルの特定を可能にする。挙動パターンをデータベースに格納し、変更されたプログラムの挙動を分析し、それが疑わしい(悪意ある)方法で変更されたか否かを判定できる。これは感染後分析を提供する。
【0024】
前記挙動分析法が従来のウイルス検出法と異なる点は、シグネチャスキャン法や完全性検査法のようにプログラムコードと記憶パターンとの照合を行わないことである。それに代えて本発明方法は、仮想マシンを使用し、挙動パターンおよび順序を作成する。作成した挙動パターンは、バージョン更新間ではそれほど変化しない。ところがウイルスに感染すると、大幅に変化する。例えばワードプロセッサは、そのプログラムが新しいパージョンのプログラムに置き換えられたり更新されたりしても、やはりワードプロセッサの動作を行う。しかしながらウイルスに感染すると、ワードプロセッサは極端に変化する。その差異は、図1に示すように、挙動パターンに反映する。ワードプロセッサは、ファイル感染コンピュータウイルスに汚染されると、実行可能ファイルを開き、その中にウイルスコードを挿入し、さらに別のファイルを汚染する。これは、図示の挙動パターンにはっきりと反映している。
【0025】
本発明の好適実施例における分析手順が特に対象とする感染方法は、他の実行可能ファイルまたは文書へのコード挿入、送信または格納しようとする他のアプリケーションへのコード送出、ハイメモリブロックへのコード挿入、およびメモリ制御ブロックの変更である。ただしこれらに限定するものではない。さらに好適実施例に基づく分析法は、破壊的内容を検出する。破壊的内容とは、ディスク領域やバイオス(BIOS)ROMを書き換えたり、ファイルやディレクトリを削除する機能である。ただしこれらに限定するものではない。本発明の好適実施例における分析法は、ある種のプログラムについてその挙動特性が開発ツールまたはソフトウエアデバッギングツールに特有の特性を示す場合、そのプログラムを例外とみなし、汚染していると特定しない。この種のプログラムにとって、変更挙動は不可欠の通常機能の一部である。開発ツールがウイルスに感染すると、そのツールの標準機能の一部ではない機能を示す。すなわち開発処理の一部ではない処理を行うので、その感染を検出できる。この分析において、挙動パターンにおける有効フラグ(1)、無効フラグ(0)、動作実行順序は重要である。
【0026】
本発明の好適実施例に基づき、仮想マシンまたは仮想PCは、完全なコンピュータシステムをシミュレートする。完全なコンピュータシステムは、エミュレートした中央処理装置(CPU)、エミュレートしたメモリ、入出力(I/O)ポート、バイオスファームウエア、オペレーティングシステム、およびオペレーティングシステムデータ領域を含むことが好ましい。これは、処理装置の処理だけを単純にエミュレートするのとは対照的である。好適実施例におけるエミュレーションは、プログラム命令を元の形式から命令ストリームに変換し、その命令ストリームは、異なるハードウエアプラットフォームにおいて同一機能を実行する。いくつかのシグネチャスキャンソフトウエアは、疑わしいプログラムのシグネチャをスキャンする前に、エミュレーションによってそのプログラム本体を解読する。一方、仮想化は、オペレーティングシステム呼び出しを含むコンピュータ全体をシミュレートする。これらオペレーティングシステム呼び出しは実際に実行するのではないが、呼び出し元のプログラムにとっては、要求機能を実行しているように見え、実際に実行したかのように正しい値を返す。
【0027】
前記したように、仮想PCは、CPUと、メモリと、入出力ポートと、プログラムローダと、オペレーティングシステムアプリケーションプログラムインタフェース(API)エントリポイントおよびインタフェースとを含む。このように完全な仮想PCを挙動分析法に使用することは、特に好ましい。オペレーティングシステムAPIへの精妙な直接呼び出しを含む仮想化したプログラムの高レベル制御を提供するからである。仮想化したプログラムは、物理的マシン各部へのアクセスを許されないため、ウイルス等の悪意あるコードは、制御環境を抜け出せず、ホストコンピュータシステムに感染する恐れがない。
【0028】
図2は、好適な挙動分析構成の概略を示す。この図は、仮想マシンとホストコンピュータシステムの構成部品との関係を示す。プログラムコードは、挙動分析エンジンと分析システムとへ送る。これは、入出力ポートビットを操作し、オペレーティングシステムのファイルシステムへフッキングしてハードディスクに直接アクセスするか、あるいは前記ハードディスクを順次スキャンすることにより行う。前記プログラムコードが「既知」のファイルか否かをデータベースに基づき検査する。そのファイルが新しいか変更されていれば、それを処理する。その結果の挙動シグネチャを分析あるいは比較し、格納する。分析の結果、ファイルが悪意あるコードを含んでいると分かれば、ウイルス警告を返す。挙動分析法は、(1)ファイル構造抽出、(2)変更検出、(3)仮想化、(4)分析、(5)判定、を含むことが好ましい。
【0029】
プログラムを仮想化するには、対象プログラムを含むファイルフォーマットを評価しなければならない。エントリポイントコードを抽出し、仮想コンピュータメモリのシミュレートした正しいオフセットにロードしなければならない。この機能は、物理的コンピュータの場合、プログラムローダ機能が行う。プログラムローダ機能は、オペレーティングシステムの一部である。オペレーティングシステムは、様々なファイルフォーマットのプログラムを実行できる。これらファイルフォーマットの例を以下に示す。
【0030】
【表1】
Figure 0004741782
【0031】
仮想コンピュータローダ機能は、上記ファイルフォーマットおよびバイナリイメージファイルを処理可能である。ローダ機能は、オペレーティングシステムプログラムローダを仮想化することによって実現するため、ホストコンピュータにおいて使用するオペレーティングシステムに依存して変化する。ファイル構造分析手順は、ファイルヘッダおよびファイル構造を調べ、ファイルフォーマットを決定する。この時、ファイル拡張子を使用しない。これはファイル拡張子は、一般使用において信頼できないからである。従って前記の「.EXE」フォーマットは、DLL、AX、OCX、および他の実行可能ファイルフォーマット拡張子を含む。
【0032】
複合文書ファイルは、ビジュアルベーシックコードやマクロのような実行可能ストリームを含むことができる。複合文書ファイルの構造を図3に示す。複合文書ファイルのヘッダは、リンクリスト(またはファイルアロケーションテーブル)を含む。これは、ディレクトリ構造内で参照され、リンクリストのエントリポイントを示す。リンクリストの各エントリは、次のエントリおよびファイルオフセットを参照する。ストリームはブロックの外に存在し、ファイル内のあらゆる場所にあらゆる順序で散在する。本発明の好適実施例において、複合文書ファイルから抽出したコードは、ばVISUAL BASIC(登録商標)逆コンパイラを通してから、ばVISUAL BASIC(登録商標)エミュレータへ渡す。全ての複合文書ファイルがコンパイルしたばVISUAL BASIC(登録商標)コードを含むわけではない。ハイパーテキストマークアップ言語(HTML)およびばVISUAL BASIC(登録商標)スクリプト(VBS)は、ばVISUAL BASIC(登録商標)スクリプトコードをテキストとして含むことができる。このコードを抽出し、仮想マシン内においてばVISUAL BASIC(登録商標)ストリームとして扱うことが好ましい。
【0033】
NE、PE、LE実行可能ファイルフォーマットは、複雑さにおいて同様だがリンクリストを使用しない。その代わり、これらファイルフォーマットは、セグメントテーブルまたはページテーブルを使用する。PEファイルフォーマットは、COFFファイル仕様に基づく。図4は、これらファイルフォーマットがどのようにして、本発明の一実施例に基づく好適仮想PCとインタフェースするかを示す。好適仮想PCと特定ファイルとのインタフェース方法を評価することにより、ファイルローダは、そのファイルが文書ファイルかバイナリファイルかを判定できる。
【0034】
ファイルフォーマットを評価しエントリポイントファイルオフセットを計算した後、そのファイルを開く。そして仮想マシンは、関連するコードをデータストリームとしてメモリに読み込む。そのコードの長さは、当該ファイルのヘッダのフィールドから計算する。この情報は、仮想プログラムローダへ送る。仮想プログラムローダは、ファイルヘッダの情報を使用し、抽出したコードを仮想メモリアレイのシミュレートした正しいオフセットへロードする。
【0035】
メモリマッピングユーティリティは、仮想メモリマップを仮想化するファイルタイプ用のオフセットへマップする。
【0036】
【表2】
Figure 0004741782
【0037】
ローダユーティリティは、プログラムが仮想化されるたびに、物理メモリを動的に仮想コンピュータメモリアレイへ割り当て、新しい仮想マシンの構築を始める。各仮想マシンは、バイオス(BIOS)データ領域、満たされた環境ストリング領域、DOSデータ領域、メモリ制御ブロック、プログラムセグメントプレフィクス領域、割り込みベクトルテーブル、およびデスクリプタテーブルを含む。仮想マシンの最終的な構造は、仮想化するプログラムのタイプに依存する。従って各仮想化プログラムは、そのプログラムを仮想PCへロードした時に作成される新しいメモリ領域で実行する。従って前のインスタンスが感染プログラムを仮想化したとしても、それは後続のプログラムの挙動に影響しない。仮想マシンは、仮想化プログラムが終了した時に停止し、そのメモリリソースを解放する。そして仮想マシンは、仮想化対象の挙動パターンを完成させる。
【0038】
図5は、COMバイナリファイルおよびDOSプログラム(MZ−EXE)ファイルに対する仮想メモリの構成状態を示す。メモリマップおよびマッパユーティリティは、ファイルタイプに応じて調整される。
【0039】
プログラムローダは、オペレーティングシステムのローダ機能をシミュレートし、物理的コンピュータ内のシステム領域と同等のシステム領域を作成する。これは特に好都合な機能である。なぜなら評価中のコードは、物理的コンピュータシステムで実行しているかのように動作するからである。仮想化したプログラムは、仮想メモリアレイからプリフェッチ命令待ち行列へ命令を取り出すことによって実行する。この待ち行列中の命令を復号し、その動作パラメータからその長さを決定する。
【0040】
それに従って命令ポインタをインクリメントし、命令ローダが次の命令を取り出せるようにする。仮想マシンは、命令パラメータのr/mフィールドから、命令の動作に関連するデータを取り出す位置を決定する。データ取り出し機構は、そのデータを取り出し、それを論理ユニットへ送る。その論理ユニットは、当該命令コードが示す動作を行う。処理済みデータの行き先は、命令コードのパラメータから決定する。データ書き込み機構を使用し、前記処理済みデータを、エミュレーションしたメモリまたはエミュレーションしたプロセッサレジスタセットへ書き込む。この処理は、物理的CPU(中央処理装置)が実行する処理を正確に反映している。
【0041】
この処理全体は、図6に示すようにシミュレートする。メモリは400キロバイト要素のアレイとして存在し、その中でメモリマッピング機構は全てのメモリアクセスをマップする。このメモリ領域のサイズは、将来の実施においてより大きなプログラムを収容するため、調整することができる。ビデオディスプレイは、システムの観点から128キロバイトのメモリとしてシミュレートし、仮想コンピュータのメモリマップのA000:0からBFFF:F(含む)までの間にマップする。標準IBMPC入出力領域は、入出力ポート0〜3FFhを代表する1024バイトのアレイとしてシミュレートする。CPUは、ハイレベルソフトウエア内において、物理的CPUと同じローレベル機能を実行することによってシミュレートする。
【0042】
オペレーティングシステムは、700hバイトのメモリアレイ内の領域として実現する。この領域は、バイオス(BIOS)データフィールドと、DOSデータ領域と、メモリ制御ブロックと、DOSデバイスとを含む。割り込みベクトルテーブルは、物理的PCにおける場合と同様、メモリ領域の最初の1024(400h)に位置する。DOS割込み構造は、正しい値を返すシミュレートした機能として実現し、DOS機能をシミュレートした場合に期待される正しい値でメモリアレイを埋めることによって実現する。
【0043】
オペレーティングシステムは、仮想API(VAPI)として実現し、全オペレーティングシステムAPIが戻す結果をシミュレートする。
【0044】
仮想化処理中において、各機能の仮想化に伴い、挙動パターン(Tstruct)フィールドの対応するフラグを設定する。これら機能を呼び出す順番は、シーケンサに記録する。従って挙動パターンは、評価中のプログラムの物理的PC環境における挙動と正確に一致する。シミュレートした割り込みベクトルであって仮想化プログラムの実行処理中に変化したものは、プログラム仮想化の終了後にそれらを呼び出すことにより、物理的コンピュータにおいてアプリケーションが当該割り込みベクトルをその変更後に呼び出すのと同じことになる。
【0045】
この機能を説明するため、挙動分析法における各動作を考察する。
【0046】
当該ディレクトリ内に最初のEXEファイルを検索する;FindFirstフラグ設定(Tstruct構造)
これはPEタイプの実行可能ファイルか(ヘッダ検査)?;EXEcheckフラグ設定
そうでなければFARジャンプする
それ以外であれば:実行可能ファイルを開き;EXEaccessフラグ設定
セクションテーブルに書き込み;EXEwriteフラグ設定
エンドオブファイルを検索し;EXEeofフラグ設定
ファイルに書き込み;EXEwriteフラグ設定
ファイルを閉じる
次のEXEファイルを検索する;EXEFindNextフラグ設定
Bit+1 64… … … … … … … …1
戻り:0010 0100 1010 1010 1001 0101 0010 1111 0010 1010 0010 0100 0100 1001 0000 0101
値:2 4 A A 9 5 2 F 2 A 2 4 4 9 0 5
順序:21,22,23,24,26,29,3E,1,36,38,3B,3,9,C,F,13,16,1A,1C,1E,2B,2D,30,32,34
結果的な挙動パターン:24AA952F2A244905
この挙動パターンが含むフラグは、ユーザがユーザ入力を介してこの処理と対話する機会を持たなかったことを示している(userInputフラグが設定されていない)。上記順序は、ビットを設定した順番であり、感染順序を特定する。従って上記例の挙動は、ほぼウイルスである。
【0047】
多くのウイルスは、暗号化されているか、多形であるか、「トリック」を用いてシグネチャスキャナによる検出を避ける。そのような「トリック」を用いる場合、挙動パターンは、より明確にウイルスである傾向を示す。なぜなら、そのようなトリックは通常のアプリケーションは使わないからである。いずれにしても本発明の好適実施例は、ウイルス警告を発生する際に感染手順を考慮するため、偽の警告を避けられる。暗号化ウイルスも検出できる。なぜなら、仮想マシン内でのコードの実行は、物理的PC環境と同じように、挙動パターンを作成し、暗号化ウイルスまたは多形ウイルスを有効に復号する。好適実施例は、コンピュータの全てを仮想化するので、仮想化したプログラムは決して物理的コンピュータと対話しない。従ってウイルスコードは、仮想マシンから脱出できず、物理的コンピュータに感染できない。
【0048】
変化検出モジュールは、既存ファイルを6段階において比較し、以前にそのファイルを分析したかを判定する。
【0049】
・ファイルは同一(エントリーコードポイント、サンプル、ファイル名、およびファイルサイズが同一)である。
【0050】
・ファイルはデータベースにない(新しいファイル)。
【0051】
・挙動パターンが記憶パターンと一致する。
【0052】
・ファイルのエントリコードが変更されている。挙動パターンを以前格納したパターンから2値的に減算する。その結果としてのビットパターンを分析する。
【0053】
・ファイルのエントリコード、CRC、およびヘッダフィールドは同一であるが、ファイル名が変更されている。他のフィールドは変更されていない。
【0054】
・ファイルの挙動パターンがデータベースにあり、既知のウイルス挙動パターンと一致する。
【0055】
・ファイルの挙動パターンがデータベースにあり、既知の健全な挙動パターンと一致する。
【0056】
ファイルの実行可能部分が変更されていれば、そのプログラムを仮想化する。ファイルの実行可能コードが変更されていなければ、そのファイルは、元ファイルが感染していない限り、ウイルスを含むことはない。元ファイルが感染しているなら、そのウイルスを以前の分析で検出しているはずである。既存のプログラムをアップデートした場合、その機能は同一であり、従ってその挙動パターンは格納挙動パターンとほぼ一致する。ビットの変更が感染手順の追加を示せば、そのファイルは感染していると見なす。
【0057】
二つの検出機構を説明する。これらは並列動作し、いずれも前記挙動パターンを利用する。
【0058】
感染前検出
これは最も望ましい。感染前検出は、挙動パターンを分析し、システムに導入した新しいまたは変更されたプログラムがウイルス動作を表すことを見つける。検査中のプログラムファイルは、ウイルスを削除することによって修復できる。あるいは、ウイルス感染の除去が極めて困難な場合、あるいは元のコードが書き換えられている場合、そのプログラムファイルを消去できる。感染したプログラムは、この時点でまだ物理的PC上で実行していないから、ウイルス発見後、物理的PCを修復する必要はない。
【0059】
感染後検出
感染後検出は、感染前検出が初期感染を見逃した場合に実行する。感染前検出がウイルスを見逃すのは、そのウイルスが最初の実行においてウイルス機能を全く実行せず、感染したルーチンを指す割り込みベクトルを変更しない場合である。これは、いわゆる遅延感染ウイルスおよび同様にふるまう悪意あるコードである。感染後検出は、ウイルスがPC上の最初の実行可能ファイルに感染しようと試みる瞬間にそれを捕捉する。ファイルフック機構は、この実行可能ファイル(文書を含む)への変更の試みを検出する。次に挙動分析エンジンは、最初の実行可能プログラムを分析し、その挙動パターンがウイルス活動を示すように変化していることを発見する。
【0060】
データベース構造
【表3】
Figure 0004741782
【0061】
文書内のマクロウイルスは、実行可能プログラムのように扱う。元のVISUAL BASIC(登録商標)コードは、VISUAL BASIC(登録商標)文書(COM)ストリームの解読(可能な場合)および逆コンパイリングによって修復する。その結果としてのソースコードは、保存あるいは表示しない。それによって正当なVISUAL BASIC(登録商標)ソフトウエアのオリジナル作者の権利を保護する。仮想化した後、ソースコードを破棄する
【0062】
前記ウイルス検出システムの1つの欠点は、その初期分析がパターンスキャニングより遅いことである。この欠点は、当該システムの長所が補って余りある。ファイルシステムフッキング手段を使うことにより、全ての新しいファイルは、バックグラウンドにおいて迅速に報告され分析される。すなわちコンピュータからウイルスを無くした後は、完全スキャンの再実行は一般に必要なくなる。ただし新しいプログラムをインストールした時に保護システムを停止していた場合は、別である。シグネチャスキャンに基づく保護システムの場合、コンピュータは、ウイルスシグネチャデータベースを更新するたびに、完全な再スキャンを行わねばならない。ユーザがディスクスキャンを開始した時、変更されていないファイルを再び仮想化することはないから、本発明処理は、少なくともパターンスキャニングと同じくらいに速く、安全性はより高い。記憶した情報は、ファイルやシステム領域へのウイルス被害を修復する助けとなる。従って、ほとんどの場合、完全なあるいは実質的に完全な修復を保証できる。
【0063】
挙動分析システムの試験的実施において、既知のウイルス技術を100%検出し、その内訳は感染前検出(96%)および感染後検出(4%)であった。このテストには、新しいウイルス、変更したウイルス、および既知のウイルスの組合せを使用した。他のウイルス検出方法は、既知ウイルスの100%を検出し、新しいウイルス、変更したウイルス、および未知のウイルスの検出は0%であった。シグネチャスキャンに基づいた製品については、正確な数字を引用できない。このような製品の結果は、既知ウイルス、変更ウイルス、新ウイルス、および未知ウイルスの混合であり、例えばテストしたウイルスセットの30%が新ウイルス、変更ウイルス、および未知ウイルスであれば、最終結果として約30%のウイルスを見逃した。本発明の好適実施例は、そのような関係を全く示しておらず、ウイルスの組合せを変更しても検出効率はほとんど変化しない。
【0064】
好適実施例を参照して本発明を説明してきた。当業者には明らかな通り、本発明は、現在の好適実施例に制限されるものではない。本発明の範囲を逸脱することなく、これら実施例には様々な変更や拡張が可能である。従って本発明は、前記実施例のいずれによっても制限を受けず、請求の範囲によって定義されるものである。
【図面の簡単な説明】
【図1】 挙動分析法に基づき作成した挙動パターンを示す図である。コンピュータウイルスに感染していないコードの挙動パターンと、それに感染したコードの挙動パターンとを示す。各ビットは、挙動を示すフラグと考えることができる。ビットストリーム全体が示す値は、プログラム挙動の指標である。
【図2】 挙動分析法の好適実施例の各部を示すブロック図である。
【図3】 プログラム構造抽出部およびプログラムローダの機能を示す例として、COMファイルフォーマットを示す概略図である。
【図4】 各種プログラムファイルフォーマットに対する仮想PCのインタフェースを示す図である。仮想化を実行する前に、プログラムローダは、正しいエントリポイントコードと初期化したデータとをプログラムファイルから抽出することが好ましい。前記エントリポイントコードへのファイルオフセットは、プログラムヘッダに与えられており、前記プログラムファイルのタイプによって変化する。
【図5】 バイナリイメージ(.COM)プログラムロード後およびMZ実行可能プログラムロード後の仮想PCメモリマップを示す概略図である。希望の方法でコードを仮想化するため、仮想PCの構造およびそのメモリマップは、物理的PCでそのコードを実行した場合と同じ情報を含む。物理的PCとは、当該仮想PCを含む仮想マシンを実行するPCである。
【図6】 好適実施例における仮想PCの各構成部を示す詳細図である。この仮想PCの各構成部は、物理的コンピュータのものと同じである。ただし全ての仮想PC構成部は、仮想マシンを実行するソフトウエアによって物理的コンピュータ上にシミュレートしたものである。

Claims (13)

  1. コンピュータシステム内のプログラムコード中に存在する悪意あるコードを特定する方法であって
    中央処理装置の機能とメモリの機能とをシミュレートするソフトウエアからなる仮想マシンを、前記コンピュータシステム内において初期化し、対象プログラムを前記仮想マシンにおいて仮想的に実行し
    仮想実行中の前記対象プログラムの挙動を監視し、仮想的に実行された各機能に対応する挙動パターンのフィールド内のフラグを設定することにより挙動パターンを生成して格納し
    前記対象プログラムが変更されたことを判定し、変更された前記対象プログラムを前記仮想マシンにおいて仮想的に実行して新たな挙動パターンを生成し、以前に格納した挙動パターンと比較することにより悪意あるコード検出する
    前記方法。
  2. 前記仮想マシンは、入出力ポートと、オペレーティングシステムデータ領域と、オペレーティングシステムアプリケーションプログラムインタフェースとの機能をシミュレートする、請求項1記載の方法。
  3. 前記仮想マシンは、仮想VISUAL BASIC(登録商標)エンジンをさらに備える、請求項2記載の方法。
  4. 前記対象プログラムの仮想実行は、前記対象プログラムと前記シミュレートしたオペレーティングシステムアプリケーションプログラムインタフェースとを相互作用させる、請求項2記載の方法。
  5. 前記対象プログラムは、前記コンピュータシステムに新しく導入されるプログラムであり、仮想実行前には実行されない、請求項1記載の方法。
  6. 前記対象プログラムが変更されるたびに新しい挙動パターンを作成する、請求項記載の方法。
  7. 前記変更された対象プログラムが前記対象プログラムの新しいバージョンである場合、前記格納されている挙動パターンは前記新たな挙動パターンと実質的に同等である、請求項6記載の方法。
  8. 記方法はさらに、前記仮想マシンにおいて前記対象プログラムが仮想実行する機能の実行順序を追跡する、請求項1記載の方法。
  9. 中央処理装置の機能と、メモリの機能と、仮想オペレーティングシステムへの割込み呼び出しを含むオペレーティングシステムの機能とをシミュレートするソフトウエアからなる仮想マシンをコンピュータシステム内において初期化し、
    対象プログラムを前記仮想マシンにおいて仮想的に実行することにより、前記対象プログラムが前記仮想マシンを介して前記仮想オペレーティングシステムおよび前記仮想中央処理装置と相互作用するようにし、
    前記仮想実行中の対象プログラムの挙動を監視し、仮想的に実行された各機能に対応する挙動パターンのフィールド内のフラグを設定して挙動パターンを生成し
    前記仮想マシンを終了し、前記挙動パターンの記録を残
    前記対象プログラムが変更されたことを判定し、変更された前記対象プログラムを前記仮想マシンにおいて仮想的に実行して新たな挙動パターンを生成し、以前記録した挙動パターンと比較することにより悪意あるコード検出し
    コンピュータシステム内のプログラムコード中に存在する悪意あるコードを特定する方法。
  10. 前記記録は、前記コンピュータシステム内の挙動レジスタ内にある、請求項記載の方法。
  11. 前記対象プログラムが変更されるたびに新しい挙動パターンを作成する、請求項10記載の方法。
  12. 前記変更された対象プログラムが前記対象プログラムの新しいバージョンである場合、前記格納されている挙動パターンは前記新たな挙動パターンと実質的に同等である、請求項11記載の方法。
  13. 記方法はさらに、前記仮想マシンにおいて前記対象プログラムが仮想実行する機能の実行順序を追跡する、請求項12記載の方法。
JP2002512775A 2000-07-14 2001-06-14 コンピュータ免疫システムおよびコンピュータシステムにおいて望ましくないコードを検出する方法 Expired - Lifetime JP4741782B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US21848900P 2000-07-14 2000-07-14
US60/218,489 2000-07-14
US09/642,625 2000-08-18
US09/642,625 US7093239B1 (en) 2000-07-14 2000-08-18 Computer immune system and method for detecting unwanted code in a computer system
PCT/US2001/019142 WO2002006928A2 (en) 2000-07-14 2001-06-14 Computer immune system and method for detecting unwanted code in a computer system

Publications (2)

Publication Number Publication Date
JP2004504662A JP2004504662A (ja) 2004-02-12
JP4741782B2 true JP4741782B2 (ja) 2011-08-10

Family

ID=26912956

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002512775A Expired - Lifetime JP4741782B2 (ja) 2000-07-14 2001-06-14 コンピュータ免疫システムおよびコンピュータシステムにおいて望ましくないコードを検出する方法

Country Status (7)

Country Link
US (2) US7093239B1 (ja)
EP (1) EP1358526A2 (ja)
JP (1) JP4741782B2 (ja)
AU (1) AU2001269826A1 (ja)
CA (1) CA2416066A1 (ja)
TW (1) TW518463B (ja)
WO (1) WO2002006928A2 (ja)

Families Citing this family (417)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL143592A0 (en) 1998-12-07 2002-04-21 Network Ice Corp A method and apparatus for remote installation of network drivers and software
AU2001262958A1 (en) 2000-04-28 2001-11-12 Internet Security Systems, Inc. Method and system for managing computer security information
US6907531B1 (en) 2000-06-30 2005-06-14 Internet Security Systems, Inc. Method and system for identifying, fixing, and updating security vulnerabilities
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
US9027121B2 (en) 2000-10-10 2015-05-05 International Business Machines Corporation Method and system for creating a record for one or more computer security incidents
US7010698B2 (en) * 2001-02-14 2006-03-07 Invicta Networks, Inc. Systems and methods for creating a code inspection system
WO2002093334A2 (en) * 2001-04-06 2002-11-21 Symantec Corporation Temporal access control for computer virus outbreaks
WO2002091146A2 (en) * 2001-05-09 2002-11-14 Ecd Systems, Inc. Systems and methods for the prevention of unauthorized use and manipulation of digital content
WO2002097587A2 (en) 2001-05-31 2002-12-05 Internet Security Systems, Inc. Method and system for implementing security devices in a network
US7657935B2 (en) 2001-08-16 2010-02-02 The Trustees Of Columbia University In The City Of New York System and methods for detecting malicious email transmission
US7356736B2 (en) * 2001-09-25 2008-04-08 Norman Asa Simulated computer system for monitoring of software performance
US9306966B2 (en) 2001-12-14 2016-04-05 The Trustees Of Columbia University In The City Of New York Methods of unsupervised anomaly detection using a geometric framework
US7225343B1 (en) 2002-01-25 2007-05-29 The Trustees Of Columbia University In The City Of New York System and methods for adaptive model generation for detecting intrusions in computer systems
US7533101B2 (en) * 2002-03-04 2009-05-12 Microsoft Corporation Extensible loader
JP2004005436A (ja) * 2002-03-28 2004-01-08 Seiko Epson Corp 電子メールを用いる情報収集システム
DE60332448D1 (de) 2002-04-17 2010-06-17 Computer Ass Think Inc Nerkode in einem firmennetzwerk
US7103913B2 (en) * 2002-05-08 2006-09-05 International Business Machines Corporation Method and apparatus for determination of the non-replicative behavior of a malicious program
US7370360B2 (en) * 2002-05-13 2008-05-06 International Business Machines Corporation Computer immune system and method for detecting unwanted code in a P-code or partially compiled native-code program executing within a virtual machine
US7487543B2 (en) * 2002-07-23 2009-02-03 International Business Machines Corporation Method and apparatus for the automatic determination of potentially worm-like behavior of a program
GB2391965B (en) * 2002-08-14 2005-11-30 Messagelabs Ltd Method of, and system for, heuristically detecting viruses in executable code
US7469419B2 (en) 2002-10-07 2008-12-23 Symantec Corporation Detection of malicious computer code
US7941854B2 (en) * 2002-12-05 2011-05-10 International Business Machines Corporation Method and system for responding to a computer intrusion
US7793346B1 (en) * 2003-01-17 2010-09-07 Mcafee, Inc. System, method, and computer program product for preventing trojan communication
US7293290B2 (en) * 2003-02-06 2007-11-06 Symantec Corporation Dynamic detection of computer worms
JP2004258777A (ja) * 2003-02-24 2004-09-16 Fujitsu Ltd セキュリティ管理装置、セキュリティ管理システム、セキュリティ管理方法、セキュリティ管理プログラム
KR20040080844A (ko) * 2003-03-14 2004-09-20 주식회사 안철수연구소 정적 분석을 이용한 악성 스크립트 감지 방법
KR100509650B1 (ko) * 2003-03-14 2005-08-23 주식회사 안철수연구소 코드 삽입 기법을 이용한 악성 스크립트 감지 방법
JP4196989B2 (ja) * 2003-03-17 2008-12-17 セイコーエプソン株式会社 ウィルスの感染を阻止する方法およびシステム
US8171551B2 (en) 2003-04-01 2012-05-01 Mcafee, Inc. Malware detection using external call characteristics
US7552473B2 (en) 2003-08-12 2009-06-23 Symantec Corporation Detecting and blocking drive sharing worms
US8539063B1 (en) 2003-08-29 2013-09-17 Mcafee, Inc. Method and system for containment of networked application client software by explicit human input
US7166418B2 (en) 2003-09-03 2007-01-23 Matsushita Electric Industrial Co., Ltd. Sulfonamide compound, polymer compound, resist material and pattern formation method
US8079034B2 (en) * 2003-09-15 2011-12-13 Intel Corporation Optimizing processor-managed resources based on the behavior of a virtual machine monitor
US7840968B1 (en) 2003-12-17 2010-11-23 Mcafee, Inc. Method and system for containment of usage of language interfaces
US7555777B2 (en) * 2004-01-13 2009-06-30 International Business Machines Corporation Preventing attacks in a data processing system
US8627458B2 (en) * 2004-01-13 2014-01-07 Mcafee, Inc. Detecting malicious computer program activity using external program calls with dynamic rule sets
US7721334B2 (en) * 2004-01-30 2010-05-18 Microsoft Corporation Detection of code-free files
US7707634B2 (en) * 2004-01-30 2010-04-27 Microsoft Corporation System and method for detecting malware in executable scripts according to its functionality
US7539871B1 (en) * 2004-02-23 2009-05-26 Sun Microsystems, Inc. System and method for identifying message propagation
US7984304B1 (en) * 2004-03-02 2011-07-19 Vmware, Inc. Dynamic verification of validity of executable code
US7783735B1 (en) * 2004-03-22 2010-08-24 Mcafee, Inc. Containment of network communication
US8171553B2 (en) 2004-04-01 2012-05-01 Fireeye, Inc. Heuristic based capture with replay to virtual machine
US8881282B1 (en) 2004-04-01 2014-11-04 Fireeye, Inc. Systems and methods for malware attack detection and identification
US8561177B1 (en) 2004-04-01 2013-10-15 Fireeye, Inc. Systems and methods for detecting communication channels of bots
US8375444B2 (en) 2006-04-20 2013-02-12 Fireeye, Inc. Dynamic signature creation and enforcement
US8006305B2 (en) * 2004-06-14 2011-08-23 Fireeye, Inc. Computer worm defense system and method
US8566946B1 (en) 2006-04-20 2013-10-22 Fireeye, Inc. Malware containment on connection
US8549638B2 (en) * 2004-06-14 2013-10-01 Fireeye, Inc. System and method of containing computer worms
US8584239B2 (en) 2004-04-01 2013-11-12 Fireeye, Inc. Virtual machine with dynamic data flow analysis
US8793787B2 (en) 2004-04-01 2014-07-29 Fireeye, Inc. Detecting malicious network content using virtual environment components
US8528086B1 (en) 2004-04-01 2013-09-03 Fireeye, Inc. System and method of detecting computer worms
US9027135B1 (en) 2004-04-01 2015-05-05 Fireeye, Inc. Prospective client identification using malware attack detection
US8204984B1 (en) 2004-04-01 2012-06-19 Fireeye, Inc. Systems and methods for detecting encrypted bot command and control communication channels
US8539582B1 (en) 2004-04-01 2013-09-17 Fireeye, Inc. Malware containment and security analysis on connection
US7587537B1 (en) 2007-11-30 2009-09-08 Altera Corporation Serializer-deserializer circuits formed from input-output circuit registers
US9106694B2 (en) 2004-04-01 2015-08-11 Fireeye, Inc. Electronic message analysis for malware detection
US8898788B1 (en) 2004-04-01 2014-11-25 Fireeye, Inc. Systems and methods for malware attack prevention
US20050240780A1 (en) * 2004-04-23 2005-10-27 Cetacea Networks Corporation Self-propagating program detector apparatus, method, signals and medium
US20050257263A1 (en) * 2004-05-13 2005-11-17 International Business Machines Corporation Andromeda strain hacker analysis system and method
CN100344106C (zh) * 2004-05-26 2007-10-17 华为技术有限公司 在光传送网络管理系统中实现白盒虚拟网元的方法及系统
WO2005121953A1 (en) * 2004-06-04 2005-12-22 Fortify Software, Inc. Apparatus and method for developing, testing and monitoring secure software
US7975306B2 (en) * 2004-06-04 2011-07-05 Hewlett-Packard Development Company, L.P. Apparatus and method for monitoring secure software
US20050273859A1 (en) * 2004-06-04 2005-12-08 Brian Chess Apparatus and method for testing secure software
US20050273860A1 (en) * 2004-06-04 2005-12-08 Brian Chess Apparatus and method for developing, testing and monitoring secure software
US20060015939A1 (en) * 2004-07-14 2006-01-19 International Business Machines Corporation Method and system to protect a file system from viral infections
KR100599451B1 (ko) * 2004-07-23 2006-07-12 한국전자통신연구원 이동형 저장장치를 이용한 인터넷 웜 치료 및 시스템 패치장치 및 그 방법
EP1622009A1 (en) * 2004-07-27 2006-02-01 Texas Instruments Incorporated JSM architecture and systems
US7873955B1 (en) 2004-09-07 2011-01-18 Mcafee, Inc. Solidifying the executable software set of a computer
US7690033B2 (en) * 2004-09-28 2010-03-30 Exobox Technologies Corp. Electronic computer system secured from unauthorized access to and manipulation of data
US7650640B1 (en) * 2004-10-18 2010-01-19 Symantec Corporation Method and system for detecting IA32 targeted buffer overflow attacks
US7493654B2 (en) * 2004-11-20 2009-02-17 International Business Machines Corporation Virtualized protective communications system
US8117659B2 (en) 2005-12-28 2012-02-14 Microsoft Corporation Malicious code infection cause-and-effect analysis
US7941856B2 (en) * 2004-12-06 2011-05-10 Wisconsin Alumni Research Foundation Systems and methods for testing and evaluating an intrusion detection system
US20060129603A1 (en) * 2004-12-14 2006-06-15 Jae Woo Park Apparatus and method for detecting malicious code embedded in office document
US20060136374A1 (en) * 2004-12-17 2006-06-22 Microsoft Corporation System and method for utilizing a search engine to prevent contamination
TWI252976B (en) * 2004-12-27 2006-04-11 Ind Tech Res Inst Detecting method and architecture thereof for malicious codes
US20060161982A1 (en) * 2005-01-18 2006-07-20 Chari Suresh N Intrusion detection system
US8719924B1 (en) 2005-03-04 2014-05-06 AVG Technologies N.V. Method and apparatus for detecting harmful software
US8646080B2 (en) * 2005-09-16 2014-02-04 Avg Technologies Cy Limited Method and apparatus for removing harmful software
US20070067844A1 (en) * 2005-09-16 2007-03-22 Sana Security Method and apparatus for removing harmful software
US7640587B2 (en) * 2005-03-29 2009-12-29 International Business Machines Corporation Source code repair method for malicious code detection
US7725735B2 (en) * 2005-03-29 2010-05-25 International Business Machines Corporation Source code management method for malicious code detection
US7631356B2 (en) * 2005-04-08 2009-12-08 Microsoft Corporation System and method for foreign code detection
US7349931B2 (en) * 2005-04-14 2008-03-25 Webroot Software, Inc. System and method for scanning obfuscated files for pestware
US7571476B2 (en) * 2005-04-14 2009-08-04 Webroot Software, Inc. System and method for scanning memory for pestware
US7591016B2 (en) 2005-04-14 2009-09-15 Webroot Software, Inc. System and method for scanning memory for pestware offset signatures
US7603712B2 (en) * 2005-04-21 2009-10-13 Microsoft Corporation Protecting a computer that provides a Web service from malware
EP1715395B1 (de) * 2005-04-22 2008-06-11 TRUMPF Laser GmbH + Co. KG Vorrichtung für sicheren Fernzugriff
US8060860B2 (en) * 2005-04-22 2011-11-15 Apple Inc. Security methods and systems
US7480836B2 (en) * 2005-04-25 2009-01-20 Hewlett-Packard Development Company, L.P. Monitoring error-handler vector in architected memory
US7603552B1 (en) * 2005-05-04 2009-10-13 Mcafee, Inc. Piracy prevention using unique module translation
US7607122B2 (en) * 2005-06-17 2009-10-20 Microsoft Corporation Post build process to record stack and call tree information
GB0513375D0 (en) 2005-06-30 2005-08-03 Retento Ltd Computer security
US7856661B1 (en) 2005-07-14 2010-12-21 Mcafee, Inc. Classification of software on networked systems
WO2007026484A1 (ja) * 2005-07-27 2007-03-08 Matsushita Electric Industrial Co., Ltd. 実行バイナリイメージの作成及び実行を行う装置、方法、プログラム、該プログラムを記録したコンピュータ読み取り可能な記録媒体
US8161548B1 (en) 2005-08-15 2012-04-17 Trend Micro, Inc. Malware detection using pattern classification
US20070056035A1 (en) * 2005-08-16 2007-03-08 Drew Copley Methods and systems for detection of forged computer files
US8407785B2 (en) 2005-08-18 2013-03-26 The Trustees Of Columbia University In The City Of New York Systems, methods, and media protecting a digital data processing device from attack
WO2007025279A2 (en) * 2005-08-25 2007-03-01 Fortify Software, Inc. Apparatus and method for analyzing and supplementing a program to provide security
US20070079375A1 (en) * 2005-10-04 2007-04-05 Drew Copley Computer Behavioral Management Using Heuristic Analysis
US7725737B2 (en) * 2005-10-14 2010-05-25 Check Point Software Technologies, Inc. System and methodology providing secure workspace environment
US20070094733A1 (en) * 2005-10-26 2007-04-26 Wilson Michael C System and method for neutralizing pestware residing in executable memory
US20070152854A1 (en) * 2005-12-29 2007-07-05 Drew Copley Forgery detection using entropy modeling
US8572606B1 (en) 2005-12-29 2013-10-29 Vmware, Inc. System and method for avoiding synchronization bugs through virtualization
WO2007076624A1 (en) * 2005-12-30 2007-07-12 Intel Corporation Virtual machine to detect malicious code
US8255992B2 (en) 2006-01-18 2012-08-28 Webroot Inc. Method and system for detecting dependent pestware objects on a computer
US8418245B2 (en) * 2006-01-18 2013-04-09 Webroot Inc. Method and system for detecting obfuscatory pestware in a computer memory
US7757269B1 (en) 2006-02-02 2010-07-13 Mcafee, Inc. Enforcing alignment of approved changes and deployed changes in the software change life-cycle
KR100791290B1 (ko) 2006-02-10 2008-01-04 삼성전자주식회사 디바이스 간에 악성 어플리케이션의 행위 정보를 사용하는장치 및 방법
US7840958B1 (en) * 2006-02-17 2010-11-23 Trend Micro, Inc. Preventing spyware installation
US7895573B1 (en) 2006-03-27 2011-02-22 Mcafee, Inc. Execution environment file inventory
US9171157B2 (en) * 2006-03-28 2015-10-27 Blue Coat Systems, Inc. Method and system for tracking access to application data and preventing data exploitation by malicious programs
US8572138B2 (en) * 2006-03-30 2013-10-29 Ca, Inc. Distributed computing system having autonomic deployment of virtual machine disk images
US8479174B2 (en) * 2006-04-05 2013-07-02 Prevx Limited Method, computer program and computer for analyzing an executable computer file
US7870387B1 (en) 2006-04-07 2011-01-11 Mcafee, Inc. Program-based authorization
US8352930B1 (en) 2006-04-24 2013-01-08 Mcafee, Inc. Software modification by group to minimize breakage
WO2007130034A1 (en) * 2006-05-03 2007-11-15 Chubb International Holdings Limited Security system design analysis
US8176485B2 (en) * 2006-05-15 2012-05-08 Microsoft Corporation Launching hypervisor under running operating system
US8555404B1 (en) 2006-05-18 2013-10-08 Mcafee, Inc. Connectivity-based authorization
US20080010538A1 (en) * 2006-06-27 2008-01-10 Symantec Corporation Detecting suspicious embedded malicious content in benign file formats
US20080016572A1 (en) * 2006-07-12 2008-01-17 Microsoft Corporation Malicious software detection via memory analysis
US8151352B1 (en) 2006-07-14 2012-04-03 Bitdefender IPR Managament Ltd. Anti-malware emulation systems and methods
US7877806B2 (en) * 2006-07-28 2011-01-25 Symantec Corporation Real time malicious software detection
US8190868B2 (en) 2006-08-07 2012-05-29 Webroot Inc. Malware management through kernel detection
US8056134B1 (en) * 2006-09-10 2011-11-08 Ogilvie John W Malware detection and identification via malware spoofing
US7870612B2 (en) * 2006-09-11 2011-01-11 Fujian Eastern Micropoint Info-Tech Co., Ltd Antivirus protection system and method for computers
US8024815B2 (en) 2006-09-15 2011-09-20 Microsoft Corporation Isolation environment-based information access
US8584109B2 (en) * 2006-10-27 2013-11-12 Microsoft Corporation Virtualization for diversified tamper resistance
WO2008055156A2 (en) 2006-10-30 2008-05-08 The Trustees Of Columbia University In The City Of New York Methods, media, and systems for detecting an anomalous sequence of function calls
US8140912B2 (en) * 2006-11-02 2012-03-20 Nec Corporation Semiconductor integrated circuits and method of detecting faults of processors
JP2008129707A (ja) * 2006-11-17 2008-06-05 Lac Co Ltd プログラム分析装置、プログラム分析方法、及びプログラム
KR101252811B1 (ko) 2006-11-27 2013-04-09 주식회사 엘지씨엔에스 아이알씨 계열 웜 차단 장치 및 방법
US9424154B2 (en) 2007-01-10 2016-08-23 Mcafee, Inc. Method of and system for computer system state checks
US8332929B1 (en) 2007-01-10 2012-12-11 Mcafee, Inc. Method and apparatus for process enforced configuration management
US8561176B1 (en) 2007-01-24 2013-10-15 Mcafee, Inc. System, method and computer program product for monitoring and/or analyzing at least one aspect of an invocation of an interface
KR101303643B1 (ko) * 2007-01-31 2013-09-11 삼성전자주식회사 침입 코드 탐지 장치 및 그 방법
US8955122B2 (en) 2007-04-04 2015-02-10 Sri International Method and apparatus for detecting malware infection
US8011010B2 (en) * 2007-04-17 2011-08-30 Microsoft Corporation Using antimalware technologies to perform offline scanning of virtual machine images
US8584094B2 (en) * 2007-06-29 2013-11-12 Microsoft Corporation Dynamically computing reputation scores for objects
KR101421136B1 (ko) * 2007-07-10 2014-07-21 더 리젠츠 오브 더 유니버시티 오브 미시건 악성 프로그램을 검사하기 위하여 컴퓨터 프로그램의행동을 모델링하는 방법 및 장치
US8245295B2 (en) * 2007-07-10 2012-08-14 Samsung Electronics Co., Ltd. Apparatus and method for detection of malicious program using program behavior
US8713680B2 (en) * 2007-07-10 2014-04-29 Samsung Electronics Co., Ltd. Method and apparatus for modeling computer program behaviour for behavioural detection of malicious program
KR101427357B1 (ko) * 2007-07-23 2014-08-11 삼성전자주식회사 악성 프로그램에 감염된 컴퓨터 시스템을 치료하는 장치 및방법
US8601451B2 (en) * 2007-08-29 2013-12-03 Mcafee, Inc. System, method, and computer program product for determining whether code is unwanted based on the decompilation thereof
US7620992B2 (en) * 2007-10-02 2009-11-17 Kaspersky Lab Zao System and method for detecting multi-component malware
KR100945247B1 (ko) * 2007-10-04 2010-03-03 한국전자통신연구원 가상 환경을 이용한 비실행 파일 내의 악성 코드 분석 방법및 장치
US8195931B1 (en) 2007-10-31 2012-06-05 Mcafee, Inc. Application change control
KR100942795B1 (ko) * 2007-11-21 2010-02-18 한국전자통신연구원 악성프로그램 탐지장치 및 그 방법
US8434151B1 (en) * 2008-01-04 2013-04-30 International Business Machines Corporation Detecting malicious software
US8701189B2 (en) 2008-01-31 2014-04-15 Mcafee, Inc. Method of and system for computer system denial-of-service protection
US8719936B2 (en) * 2008-02-01 2014-05-06 Northeastern University VMM-based intrusion detection system
US20100031353A1 (en) * 2008-02-04 2010-02-04 Microsoft Corporation Malware Detection Using Code Analysis and Behavior Monitoring
US9264441B2 (en) * 2008-03-24 2016-02-16 Hewlett Packard Enterprise Development Lp System and method for securing a network from zero-day vulnerability exploits
US8782615B2 (en) * 2008-04-14 2014-07-15 Mcafee, Inc. System, method, and computer program product for simulating at least one of a virtual environment and a debugging environment to prevent unwanted code from executing
KR20090109154A (ko) * 2008-04-15 2009-10-20 한국전자통신연구원 악성코드 차단 장치, 시스템 및 방법
US8615502B2 (en) 2008-04-18 2013-12-24 Mcafee, Inc. Method of and system for reverse mapping vnode pointers
US20090300423A1 (en) * 2008-05-28 2009-12-03 James Michael Ferris Systems and methods for software test management in cloud-based network
US8543998B2 (en) * 2008-05-30 2013-09-24 Oracle International Corporation System and method for building virtual appliances using a repository metadata server and a dependency resolution service
US8862633B2 (en) 2008-05-30 2014-10-14 Novell, Inc. System and method for efficiently building virtual appliances in a hosted environment
US9779234B2 (en) * 2008-06-18 2017-10-03 Symantec Corporation Software reputation establishment and monitoring system and method
JP5009244B2 (ja) * 2008-07-07 2012-08-22 日本電信電話株式会社 マルウェア検知システム、マルウェア検知方法及びマルウェア検知プログラム
EP2157525B1 (de) * 2008-08-21 2018-01-10 Unify GmbH & Co. KG Verfahren zur Erkennung von Schadsoftware
US9626511B2 (en) * 2008-08-26 2017-04-18 Symantec Corporation Agentless enforcement of application management through virtualized block I/O redirection
US9117078B1 (en) * 2008-09-17 2015-08-25 Trend Micro Inc. Malware behavior analysis and policy creation
US8997219B2 (en) 2008-11-03 2015-03-31 Fireeye, Inc. Systems and methods for detecting malicious PDF network content
US8850571B2 (en) 2008-11-03 2014-09-30 Fireeye, Inc. Systems and methods for detecting malicious network content
US8544003B1 (en) 2008-12-11 2013-09-24 Mcafee, Inc. System and method for managing virtual machine configurations
US9529573B2 (en) * 2009-01-28 2016-12-27 Microsoft Technology Licensing, Llc Graphical user interface generation through use of a binary file
US11489857B2 (en) 2009-04-21 2022-11-01 Webroot Inc. System and method for developing a risk profile for an internet resource
JP5073719B2 (ja) * 2009-08-20 2012-11-14 株式会社パロマ 熱交換器
US8381284B2 (en) 2009-08-21 2013-02-19 Mcafee, Inc. System and method for enforcing security policies in a virtual environment
US8341627B2 (en) 2009-08-21 2012-12-25 Mcafee, Inc. Method and system for providing user space address protection from writable memory area in a virtual environment
US8832829B2 (en) 2009-09-30 2014-09-09 Fireeye, Inc. Network-based binary file extraction and analysis for malware detection
US8566943B2 (en) * 2009-10-01 2013-10-22 Kaspersky Lab, Zao Asynchronous processing of events for malware detection
US9552497B2 (en) 2009-11-10 2017-01-24 Mcafee, Inc. System and method for preventing data loss using virtual machine wrapped applications
US8356354B2 (en) 2009-11-23 2013-01-15 Kaspersky Lab, Zao Silent-mode signature testing in anti-malware processing
US9501644B2 (en) * 2010-03-15 2016-11-22 F-Secure Oyj Malware protection
US8566944B2 (en) 2010-04-27 2013-10-22 Microsoft Corporation Malware investigation by analyzing computer memory
US9449175B2 (en) * 2010-06-03 2016-09-20 Nokia Technologies Oy Method and apparatus for analyzing and detecting malicious software
KR101182346B1 (ko) 2010-06-10 2012-09-20 성균관대학교산학협력단 동적 코드 분석 장치 및 방법
US8938800B2 (en) 2010-07-28 2015-01-20 Mcafee, Inc. System and method for network level protection against malicious software
US8925101B2 (en) 2010-07-28 2014-12-30 Mcafee, Inc. System and method for local protection against malicious software
US8707441B1 (en) * 2010-08-17 2014-04-22 Symantec Corporation Techniques for identifying optimized malicious search engine results
US8352522B1 (en) * 2010-09-01 2013-01-08 Trend Micro Incorporated Detection of file modifications performed by malicious codes
US8549003B1 (en) 2010-09-12 2013-10-01 Mcafee, Inc. System and method for clustering host inventories
CN101959193A (zh) * 2010-09-26 2011-01-26 宇龙计算机通信科技(深圳)有限公司 一种信息安全检测方法及移动终端
RU2444056C1 (ru) 2010-11-01 2012-02-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ ускорения решения проблем за счет накопления статистической информации
KR101216708B1 (ko) * 2010-11-12 2012-12-28 단국대학교 산학협력단 컴퓨터 바이러스 배양 방법 및 시스템
RU2454714C1 (ru) 2010-12-30 2012-06-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ повышения эффективности обнаружения неизвестных вредоносных объектов
US9075993B2 (en) 2011-01-24 2015-07-07 Mcafee, Inc. System and method for selectively grouping and managing program files
US9413721B2 (en) 2011-02-15 2016-08-09 Webroot Inc. Methods and apparatus for dealing with malware
US9112830B2 (en) 2011-02-23 2015-08-18 Mcafee, Inc. System and method for interlocking a host and a gateway
US9733934B2 (en) * 2011-03-08 2017-08-15 Google Inc. Detecting application similarity
US9087199B2 (en) 2011-03-31 2015-07-21 Mcafee, Inc. System and method for providing a secured operating system execution environment
US8925089B2 (en) 2011-03-29 2014-12-30 Mcafee, Inc. System and method for below-operating system modification of malicious code on an electronic device
US8813227B2 (en) 2011-03-29 2014-08-19 Mcafee, Inc. System and method for below-operating system regulation and control of self-modifying code
US8959638B2 (en) 2011-03-29 2015-02-17 Mcafee, Inc. System and method for below-operating system trapping and securing of interdriver communication
US9262246B2 (en) 2011-03-31 2016-02-16 Mcafee, Inc. System and method for securing memory and storage of an electronic device with a below-operating system security agent
US9032525B2 (en) 2011-03-29 2015-05-12 Mcafee, Inc. System and method for below-operating system trapping of driver filter attachment
US9317690B2 (en) 2011-03-28 2016-04-19 Mcafee, Inc. System and method for firmware based anti-malware security
US8966629B2 (en) 2011-03-31 2015-02-24 Mcafee, Inc. System and method for below-operating system trapping of driver loading and unloading
US8863283B2 (en) 2011-03-31 2014-10-14 Mcafee, Inc. System and method for securing access to system calls
US8966624B2 (en) 2011-03-31 2015-02-24 Mcafee, Inc. System and method for securing an input/output path of an application against malware with a below-operating system security agent
US8650642B2 (en) * 2011-03-31 2014-02-11 Mcafee, Inc. System and method for below-operating system protection of an operating system kernel
US9038176B2 (en) 2011-03-31 2015-05-19 Mcafee, Inc. System and method for below-operating system trapping and securing loading of code into memory
JP5665188B2 (ja) * 2011-03-31 2015-02-04 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ソフトウエア更新を適用した情報処理装置を検査するシステム
US8707434B2 (en) 2011-08-17 2014-04-22 Mcafee, Inc. System and method for indirect interface monitoring and plumb-lining
US9594881B2 (en) 2011-09-09 2017-03-14 Mcafee, Inc. System and method for passive threat detection using virtual memory inspection
CN103617069B (zh) * 2011-09-14 2017-07-04 北京奇虎科技有限公司 恶意程序检测方法和虚拟机
US9495541B2 (en) 2011-09-15 2016-11-15 The Trustees Of Columbia University In The City Of New York Detecting return-oriented programming payloads by evaluating data for a gadget address space address and determining whether operations associated with instructions beginning at the address indicate a return-oriented programming payload
US8694738B2 (en) 2011-10-11 2014-04-08 Mcafee, Inc. System and method for critical address space protection in a hypervisor environment
US8973144B2 (en) 2011-10-13 2015-03-03 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US9069586B2 (en) 2011-10-13 2015-06-30 Mcafee, Inc. System and method for kernel rootkit protection in a hypervisor environment
US8800024B2 (en) 2011-10-17 2014-08-05 Mcafee, Inc. System and method for host-initiated firewall discovery in a network environment
US8713668B2 (en) 2011-10-17 2014-04-29 Mcafee, Inc. System and method for redirected firewall discovery in a network environment
US9519782B2 (en) 2012-02-24 2016-12-13 Fireeye, Inc. Detecting malicious network content
US8739272B1 (en) 2012-04-02 2014-05-27 Mcafee, Inc. System and method for interlocking a host and a gateway
US9319427B2 (en) * 2012-05-13 2016-04-19 Check Point Mobile Security Ltd Anti-malware detection and removal systems and methods
US9715325B1 (en) 2012-06-21 2017-07-25 Open Text Corporation Activity stream based interaction
US9245120B2 (en) * 2012-07-13 2016-01-26 Cisco Technologies, Inc. Method and apparatus for retroactively detecting malicious or otherwise undesirable software as well as clean software through intelligent rescanning
US9575813B2 (en) * 2012-07-17 2017-02-21 Microsoft Technology Licensing, Llc Pattern matching process scheduler with upstream optimization
US9792432B2 (en) * 2012-11-09 2017-10-17 Nokia Technologies Oy Method and apparatus for privacy-oriented code optimization
RU2514142C1 (ru) 2012-12-25 2014-04-27 Закрытое акционерное общество "Лаборатория Касперского" Способ повышения эффективности работы аппаратного ускорения эмуляции приложений
US8973146B2 (en) 2012-12-27 2015-03-03 Mcafee, Inc. Herd based scan avoidance system in a network environment
US10572665B2 (en) 2012-12-28 2020-02-25 Fireeye, Inc. System and method to create a number of breakpoints in a virtual machine via virtual machine trapping events
US9525700B1 (en) 2013-01-25 2016-12-20 REMTCS Inc. System and method for detecting malicious activity and harmful hardware/software modifications to a vehicle
WO2014116888A1 (en) * 2013-01-25 2014-07-31 REMTCS Inc. Network security system, method, and apparatus
CN103971052B (zh) * 2013-01-28 2017-06-30 腾讯科技(深圳)有限公司 磁盘引导区病毒识别方法及装置
US9195829B1 (en) 2013-02-23 2015-11-24 Fireeye, Inc. User interface with real-time visual playback along with synchronous textual analysis log display and event/time index for anomalous behavior detection in applications
US8990944B1 (en) 2013-02-23 2015-03-24 Fireeye, Inc. Systems and methods for automatically detecting backdoors
US9824209B1 (en) 2013-02-23 2017-11-21 Fireeye, Inc. Framework for efficient security coverage of mobile software applications that is usable to harden in the field code
US9009823B1 (en) 2013-02-23 2015-04-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications installed on mobile devices
US9009822B1 (en) 2013-02-23 2015-04-14 Fireeye, Inc. Framework for multi-phase analysis of mobile applications
US9159035B1 (en) 2013-02-23 2015-10-13 Fireeye, Inc. Framework for computer application analysis of sensitive information tracking
US9176843B1 (en) 2013-02-23 2015-11-03 Fireeye, Inc. Framework for efficient security coverage of mobile software applications
US9367681B1 (en) 2013-02-23 2016-06-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications using symbolic execution to reach regions of interest within an application
US9239922B1 (en) * 2013-03-11 2016-01-19 Trend Micro Inc. Document exploit detection using baseline comparison
US9565202B1 (en) 2013-03-13 2017-02-07 Fireeye, Inc. System and method for detecting exfiltration content
US9626509B1 (en) 2013-03-13 2017-04-18 Fireeye, Inc. Malicious content analysis with multi-version application support within single operating environment
US9355247B1 (en) * 2013-03-13 2016-05-31 Fireeye, Inc. File extraction from memory dump for malicious content analysis
US9104867B1 (en) 2013-03-13 2015-08-11 Fireeye, Inc. Malicious content analysis using simulated user interaction without user involvement
US9430646B1 (en) 2013-03-14 2016-08-30 Fireeye, Inc. Distributed systems and methods for automatically detecting unknown bots and botnets
US9311479B1 (en) 2013-03-14 2016-04-12 Fireeye, Inc. Correlation and consolidation of analytic data for holistic view of a malware attack
WO2014145805A1 (en) 2013-03-15 2014-09-18 Mandiant, Llc System and method employing structured intelligence to verify and contain threats at endpoints
US10713358B2 (en) 2013-03-15 2020-07-14 Fireeye, Inc. System and method to extract and utilize disassembly features to classify software intent
US9251343B1 (en) 2013-03-15 2016-02-02 Fireeye, Inc. Detecting bootkits resident on compromised computers
US9495180B2 (en) 2013-05-10 2016-11-15 Fireeye, Inc. Optimized resource allocation for virtual machines within a malware content detection system
US9635039B1 (en) 2013-05-13 2017-04-25 Fireeye, Inc. Classifying sets of malicious indicators for detecting command and control communications associated with malware
CN104134034B (zh) * 2013-06-13 2015-10-21 腾讯科技(深圳)有限公司 控制应用运行的方法和装置
US9536091B2 (en) 2013-06-24 2017-01-03 Fireeye, Inc. System and method for detecting time-bomb malware
US10133863B2 (en) 2013-06-24 2018-11-20 Fireeye, Inc. Zero-day discovery system
US9888016B1 (en) 2013-06-28 2018-02-06 Fireeye, Inc. System and method for detecting phishing using password prediction
US9300686B2 (en) 2013-06-28 2016-03-29 Fireeye, Inc. System and method for detecting malicious links in electronic messages
US8955138B1 (en) * 2013-07-11 2015-02-10 Symantec Corporation Systems and methods for reevaluating apparently benign behavior on computing devices
US9690936B1 (en) 2013-09-30 2017-06-27 Fireeye, Inc. Multistage system and method for analyzing obfuscated content for malware
US10089461B1 (en) 2013-09-30 2018-10-02 Fireeye, Inc. Page replacement code injection
US9171160B2 (en) 2013-09-30 2015-10-27 Fireeye, Inc. Dynamically adaptive framework and method for classifying malware using intelligent static, emulation, and dynamic analyses
US9628507B2 (en) 2013-09-30 2017-04-18 Fireeye, Inc. Advanced persistent threat (APT) detection center
US10515214B1 (en) 2013-09-30 2019-12-24 Fireeye, Inc. System and method for classifying malware within content created during analysis of a specimen
US10192052B1 (en) 2013-09-30 2019-01-29 Fireeye, Inc. System, apparatus and method for classifying a file as malicious using static scanning
US9736179B2 (en) 2013-09-30 2017-08-15 Fireeye, Inc. System, apparatus and method for using malware analysis results to drive adaptive instrumentation of virtual machines to improve exploit detection
US9294501B2 (en) 2013-09-30 2016-03-22 Fireeye, Inc. Fuzzy hash of behavioral results
US10075460B2 (en) 2013-10-16 2018-09-11 REMTCS Inc. Power grid universal detection and countermeasure overlay intelligence ultra-low latency hypervisor
CN105580023B (zh) 2013-10-24 2019-08-16 迈克菲股份有限公司 网络环境中的代理辅助的恶意应用阻止
US9921978B1 (en) 2013-11-08 2018-03-20 Fireeye, Inc. System and method for enhanced security of storage devices
US9178900B1 (en) * 2013-11-20 2015-11-03 Trend Micro Inc. Detection of advanced persistent threat having evasion technology
US10242080B1 (en) 2013-11-20 2019-03-26 Google Llc Clustering applications using visual metadata
US9189627B1 (en) 2013-11-21 2015-11-17 Fireeye, Inc. System, apparatus and method for conducting on-the-fly decryption of encrypted objects for malware detection
US9323929B2 (en) * 2013-11-26 2016-04-26 Qualcomm Incorporated Pre-identifying probable malicious rootkit behavior using behavioral contracts
US9747446B1 (en) 2013-12-26 2017-08-29 Fireeye, Inc. System and method for run-time object classification
US9756074B2 (en) 2013-12-26 2017-09-05 Fireeye, Inc. System and method for IPS and VM-based detection of suspicious objects
US9292686B2 (en) 2014-01-16 2016-03-22 Fireeye, Inc. Micro-virtualization architecture for threat-aware microvisor deployment in a node of a network environment
US9262635B2 (en) 2014-02-05 2016-02-16 Fireeye, Inc. Detection efficacy of virtual machine-based analysis with application specific events
TWI553503B (zh) * 2014-02-27 2016-10-11 國立交通大學 產生候選鈎點以偵測惡意程式之方法及其系統
US9241010B1 (en) 2014-03-20 2016-01-19 Fireeye, Inc. System and method for network behavior detection
US10242185B1 (en) 2014-03-21 2019-03-26 Fireeye, Inc. Dynamic guest image creation and rollback
US9591015B1 (en) 2014-03-28 2017-03-07 Fireeye, Inc. System and method for offloading packet processing and static analysis operations
US9432389B1 (en) 2014-03-31 2016-08-30 Fireeye, Inc. System, apparatus and method for detecting a malicious attack based on static analysis of a multi-flow object
US9223972B1 (en) 2014-03-31 2015-12-29 Fireeye, Inc. Dynamically remote tuning of a malware content detection system
US9769197B1 (en) 2014-03-31 2017-09-19 Juniper Networks, Inc. Malware detection using external malware detection operations
US9438623B1 (en) 2014-06-06 2016-09-06 Fireeye, Inc. Computer exploit detection using heap spray pattern matching
US9594912B1 (en) 2014-06-06 2017-03-14 Fireeye, Inc. Return-oriented programming detection
US9973531B1 (en) 2014-06-06 2018-05-15 Fireeye, Inc. Shellcode detection
US9015814B1 (en) 2014-06-10 2015-04-21 Kaspersky Lab Zao System and methods for detecting harmful files of different formats
US10084813B2 (en) 2014-06-24 2018-09-25 Fireeye, Inc. Intrusion prevention and remedy system
US9398028B1 (en) 2014-06-26 2016-07-19 Fireeye, Inc. System, device and method for detecting a malicious attack based on communcations between remotely hosted virtual machines and malicious web servers
US10805340B1 (en) 2014-06-26 2020-10-13 Fireeye, Inc. Infection vector and malware tracking with an interactive user display
US10002252B2 (en) 2014-07-01 2018-06-19 Fireeye, Inc. Verification of trusted threat-aware microvisor
US10102374B1 (en) 2014-08-11 2018-10-16 Sentinel Labs Israel Ltd. Method of remediating a program and system thereof by undoing operations
US11507663B2 (en) 2014-08-11 2022-11-22 Sentinel Labs Israel Ltd. Method of remediating operations performed by a program and system thereof
US9710648B2 (en) 2014-08-11 2017-07-18 Sentinel Labs Israel Ltd. Method of malware detection and system thereof
US9363280B1 (en) 2014-08-22 2016-06-07 Fireeye, Inc. System and method of detecting delivery of malware using cross-customer data
WO2016030927A1 (ja) * 2014-08-28 2016-03-03 三菱電機株式会社 プロセス解析装置、プロセス解析方法、及びプロセス解析プログラム
US10671726B1 (en) 2014-09-22 2020-06-02 Fireeye Inc. System and method for malware analysis using thread-level event monitoring
US9449173B2 (en) * 2014-09-23 2016-09-20 Intel Corporation Techniques for enabling co-existence of multiple security measures
US9773112B1 (en) 2014-09-29 2017-09-26 Fireeye, Inc. Exploit detection of malware and malware families
US10027689B1 (en) 2014-09-29 2018-07-17 Fireeye, Inc. Interactive infection visualization for improved exploit detection and signature generation for malware and malware families
US20160125094A1 (en) * 2014-11-05 2016-05-05 Nec Laboratories America, Inc. Method and system for behavior query construction in temporal graphs using discriminative sub-trace mining
US9690933B1 (en) 2014-12-22 2017-06-27 Fireeye, Inc. Framework for classifying an object as malicious with machine learning for deploying updated predictive models
US10075455B2 (en) 2014-12-26 2018-09-11 Fireeye, Inc. Zero-day rotating guest image profile
US9934376B1 (en) 2014-12-29 2018-04-03 Fireeye, Inc. Malware detection appliance architecture
US9838417B1 (en) 2014-12-30 2017-12-05 Fireeye, Inc. Intelligent context aware user interaction for malware detection
DE102015101388A1 (de) 2015-01-30 2016-08-04 Deutsche Telekom Ag Prüfsystem zur Prüfung eines Computers eines Computersystems in einem Prüfnetzwerk
KR20160099160A (ko) * 2015-02-11 2016-08-22 한국전자통신연구원 명령어 집합의 행위 패턴을 엔-그램 방식으로 모델링하는 방법, 그 방법으로 동작하는 컴퓨팅 장치, 및 그 방법을 컴퓨팅 장치에서 실행하도록 구성되는 기록 매체에 저장된 프로그램
US10148693B2 (en) 2015-03-25 2018-12-04 Fireeye, Inc. Exploit detection system
US9690606B1 (en) 2015-03-25 2017-06-27 Fireeye, Inc. Selective system call monitoring
US9438613B1 (en) 2015-03-30 2016-09-06 Fireeye, Inc. Dynamic content activation for automated analysis of embedded objects
US10417031B2 (en) 2015-03-31 2019-09-17 Fireeye, Inc. Selective virtualization for security threat detection
US10474813B1 (en) 2015-03-31 2019-11-12 Fireeye, Inc. Code injection technique for remediation at an endpoint of a network
US9483644B1 (en) 2015-03-31 2016-11-01 Fireeye, Inc. Methods for detecting file altering malware in VM based analysis
US9654485B1 (en) 2015-04-13 2017-05-16 Fireeye, Inc. Analytics-based security monitoring system and method
US9594904B1 (en) 2015-04-23 2017-03-14 Fireeye, Inc. Detecting malware based on reflection
US10642753B1 (en) 2015-06-30 2020-05-05 Fireeye, Inc. System and method for protecting a software component running in virtual machine using a virtualization layer
US10726127B1 (en) 2015-06-30 2020-07-28 Fireeye, Inc. System and method for protecting a software component running in a virtual machine through virtual interrupts by the virtualization layer
US11113086B1 (en) 2015-06-30 2021-09-07 Fireeye, Inc. Virtual system and method for securing external network connectivity
US10454950B1 (en) 2015-06-30 2019-10-22 Fireeye, Inc. Centralized aggregation technique for detecting lateral movement of stealthy cyber-attacks
US10715542B1 (en) 2015-08-14 2020-07-14 Fireeye, Inc. Mobile application risk analysis
US10176321B2 (en) 2015-09-22 2019-01-08 Fireeye, Inc. Leveraging behavior-based rules for malware family classification
US10033747B1 (en) 2015-09-29 2018-07-24 Fireeye, Inc. System and method for detecting interpreter-based exploit attacks
US10210329B1 (en) 2015-09-30 2019-02-19 Fireeye, Inc. Method to detect application execution hijacking using memory protection
US9825989B1 (en) 2015-09-30 2017-11-21 Fireeye, Inc. Cyber attack early warning system
US10706149B1 (en) 2015-09-30 2020-07-07 Fireeye, Inc. Detecting delayed activation malware using a primary controller and plural time controllers
US10601865B1 (en) 2015-09-30 2020-03-24 Fireeye, Inc. Detection of credential spearphishing attacks using email analysis
US10817606B1 (en) 2015-09-30 2020-10-27 Fireeye, Inc. Detecting delayed activation malware using a run-time monitoring agent and time-dilation logic
US9825976B1 (en) 2015-09-30 2017-11-21 Fireeye, Inc. Detection and classification of exploit kits
US10284575B2 (en) 2015-11-10 2019-05-07 Fireeye, Inc. Launcher for setting analysis environment variations for malware detection
US10846117B1 (en) 2015-12-10 2020-11-24 Fireeye, Inc. Technique for establishing secure communication between host and guest processes of a virtualization architecture
US10447728B1 (en) 2015-12-10 2019-10-15 Fireeye, Inc. Technique for protecting guest processes using a layered virtualization architecture
US10108446B1 (en) 2015-12-11 2018-10-23 Fireeye, Inc. Late load technique for deploying a virtualization layer underneath a running operating system
US10565378B1 (en) 2015-12-30 2020-02-18 Fireeye, Inc. Exploit of privilege detection framework
US10621338B1 (en) 2015-12-30 2020-04-14 Fireeye, Inc. Method to detect forgery and exploits using last branch recording registers
US10133866B1 (en) 2015-12-30 2018-11-20 Fireeye, Inc. System and method for triggering analysis of an object for malware in response to modification of that object
US10050998B1 (en) 2015-12-30 2018-08-14 Fireeye, Inc. Malicious message analysis system
US11552986B1 (en) 2015-12-31 2023-01-10 Fireeye Security Holdings Us Llc Cyber-security framework for application of virtual features
US9824216B1 (en) 2015-12-31 2017-11-21 Fireeye, Inc. Susceptible environment detection system
US10581874B1 (en) 2015-12-31 2020-03-03 Fireeye, Inc. Malware detection system with contextual analysis
RU2628921C1 (ru) * 2016-03-18 2017-08-22 Акционерное общество "Лаборатория Касперского" Система и способ выполнения антивирусной проверки файла на виртуальной машине
US10476906B1 (en) 2016-03-25 2019-11-12 Fireeye, Inc. System and method for managing formation and modification of a cluster within a malware detection system
US10601863B1 (en) 2016-03-25 2020-03-24 Fireeye, Inc. System and method for managing sensor enrollment
US10785255B1 (en) 2016-03-25 2020-09-22 Fireeye, Inc. Cluster configuration within a scalable malware detection system
US10671721B1 (en) 2016-03-25 2020-06-02 Fireeye, Inc. Timeout management services
US10893059B1 (en) 2016-03-31 2021-01-12 Fireeye, Inc. Verification and enhancement using detection systems located at the network periphery and endpoint devices
US10826933B1 (en) 2016-03-31 2020-11-03 Fireeye, Inc. Technique for verifying exploit/malware at malware detection appliance through correlation with endpoints
US10169585B1 (en) 2016-06-22 2019-01-01 Fireeye, Inc. System and methods for advanced malware detection through placement of transition events
US10462173B1 (en) 2016-06-30 2019-10-29 Fireeye, Inc. Malware detection verification and enhancement by coordinating endpoint and malware detection systems
US10264002B2 (en) * 2016-07-14 2019-04-16 Mitsui Bussan Secure Directions, Inc. Program, information processing device, and information processing method
US10169581B2 (en) * 2016-08-29 2019-01-01 Trend Micro Incorporated Detecting malicious code in sections of computer files
US10592678B1 (en) 2016-09-09 2020-03-17 Fireeye, Inc. Secure communications between peers using a verified virtual trusted platform module
US10169190B2 (en) * 2016-09-21 2019-01-01 Lenvio Inc. Call trace generation via behavior computation
US10491627B1 (en) 2016-09-29 2019-11-26 Fireeye, Inc. Advanced malware detection using similarity analysis
RU2634178C1 (ru) * 2016-10-10 2017-10-24 Акционерное общество "Лаборатория Касперского" Способ обнаружения вредоносных составных файлов
US10795991B1 (en) 2016-11-08 2020-10-06 Fireeye, Inc. Enterprise search
US10587647B1 (en) 2016-11-22 2020-03-10 Fireeye, Inc. Technique for malware detection capability comparison of network security devices
US11616812B2 (en) 2016-12-19 2023-03-28 Attivo Networks Inc. Deceiving attackers accessing active directory data
US11695800B2 (en) 2016-12-19 2023-07-04 SentinelOne, Inc. Deceiving attackers accessing network data
US10581879B1 (en) 2016-12-22 2020-03-03 Fireeye, Inc. Enhanced malware detection for generated objects
US10552610B1 (en) 2016-12-22 2020-02-04 Fireeye, Inc. Adaptive virtual machine snapshot update framework for malware behavioral analysis
US10523609B1 (en) 2016-12-27 2019-12-31 Fireeye, Inc. Multi-vector malware detection and analysis
JP6866645B2 (ja) 2017-01-05 2021-04-28 富士通株式会社 類似度判定プログラム、類似度判定方法および情報処理装置
JP2018109910A (ja) 2017-01-05 2018-07-12 富士通株式会社 類似度判定プログラム、類似度判定方法および情報処理装置
US10592664B2 (en) * 2017-02-02 2020-03-17 Cisco Technology, Inc. Container application security and protection
EP3376423A1 (en) * 2017-03-14 2018-09-19 Gemalto Sa Self-adaptive countermeasures
US10904286B1 (en) 2017-03-24 2021-01-26 Fireeye, Inc. Detection of phishing attacks using similarity analysis
US10902119B1 (en) 2017-03-30 2021-01-26 Fireeye, Inc. Data extraction system for malware analysis
US10791138B1 (en) 2017-03-30 2020-09-29 Fireeye, Inc. Subscription-based malware detection
US10848397B1 (en) 2017-03-30 2020-11-24 Fireeye, Inc. System and method for enforcing compliance with subscription requirements for cyber-attack detection service
US10798112B2 (en) 2017-03-30 2020-10-06 Fireeye, Inc. Attribute-controlled malware detection
US10601848B1 (en) 2017-06-29 2020-03-24 Fireeye, Inc. Cyber-security system and method for weak indicator detection and correlation to generate strong indicators
US10503904B1 (en) 2017-06-29 2019-12-10 Fireeye, Inc. Ransomware detection and mitigation
US10855700B1 (en) 2017-06-29 2020-12-01 Fireeye, Inc. Post-intrusion detection of cyber-attacks during lateral movement within networks
US10893068B1 (en) 2017-06-30 2021-01-12 Fireeye, Inc. Ransomware file modification prevention technique
US10462171B2 (en) 2017-08-08 2019-10-29 Sentinel Labs Israel Ltd. Methods, systems, and devices for dynamically modeling and grouping endpoints for edge networking
US10747872B1 (en) 2017-09-27 2020-08-18 Fireeye, Inc. System and method for preventing malware evasion
RU2659739C1 (ru) * 2017-09-29 2018-07-03 Акционерное общество "Лаборатория Касперского" Способ контроля доступа к составным файлам
US10805346B2 (en) 2017-10-01 2020-10-13 Fireeye, Inc. Phishing attack detection
US11108809B2 (en) 2017-10-27 2021-08-31 Fireeye, Inc. System and method for analyzing binary code for malware classification using artificial neural network techniques
US11005860B1 (en) 2017-12-28 2021-05-11 Fireeye, Inc. Method and system for efficient cybersecurity analysis of endpoint events
US11240275B1 (en) 2017-12-28 2022-02-01 Fireeye Security Holdings Us Llc Platform and method for performing cybersecurity analyses employing an intelligence hub with a modular architecture
US11271955B2 (en) 2017-12-28 2022-03-08 Fireeye Security Holdings Us Llc Platform and method for retroactive reclassification employing a cybersecurity-based global data store
US10628138B2 (en) 2018-02-09 2020-04-21 International Business Machines Corporation Automated management of undesired code use based on predicted valuation and risk analysis
US11470115B2 (en) 2018-02-09 2022-10-11 Attivo Networks, Inc. Implementing decoys in a network environment
US10826931B1 (en) 2018-03-29 2020-11-03 Fireeye, Inc. System and method for predicting and mitigating cybersecurity system misconfigurations
US11558401B1 (en) 2018-03-30 2023-01-17 Fireeye Security Holdings Us Llc Multi-vector malware detection data sharing system for improved detection
US11003773B1 (en) 2018-03-30 2021-05-11 Fireeye, Inc. System and method for automatically generating malware detection rule recommendations
US10956477B1 (en) 2018-03-30 2021-03-23 Fireeye, Inc. System and method for detecting malicious scripts through natural language processing modeling
CN108846287A (zh) * 2018-06-26 2018-11-20 北京奇安信科技有限公司 一种检测漏洞攻击的方法及装置
US11314859B1 (en) 2018-06-27 2022-04-26 FireEye Security Holdings, Inc. Cyber-security system and method for detecting escalation of privileges within an access token
US11075930B1 (en) 2018-06-27 2021-07-27 Fireeye, Inc. System and method for detecting repetitive cybersecurity attacks constituting an email campaign
US11228491B1 (en) 2018-06-28 2022-01-18 Fireeye Security Holdings Us Llc System and method for distributed cluster configuration monitoring and management
US11316900B1 (en) 2018-06-29 2022-04-26 FireEye Security Holdings Inc. System and method for automatically prioritizing rules for cyber-threat detection and mitigation
US11182473B1 (en) 2018-09-13 2021-11-23 Fireeye Security Holdings Us Llc System and method for mitigating cyberattacks against processor operability by a guest process
US11763004B1 (en) 2018-09-27 2023-09-19 Fireeye Security Holdings Us Llc System and method for bootkit detection
US11368475B1 (en) 2018-12-21 2022-06-21 Fireeye Security Holdings Us Llc System and method for scanning remote services to locate stored objects with malware
US11743290B2 (en) 2018-12-21 2023-08-29 Fireeye Security Holdings Us Llc System and method for detecting cyberattacks impersonating legitimate sources
US11176251B1 (en) 2018-12-21 2021-11-16 Fireeye, Inc. Determining malware via symbolic function hash analysis
US12074887B1 (en) 2018-12-21 2024-08-27 Musarubra Us Llc System and method for selectively processing content after identification and removal of malicious content
US11601444B1 (en) 2018-12-31 2023-03-07 Fireeye Security Holdings Us Llc Automated system for triage of customer issues
US11310238B1 (en) 2019-03-26 2022-04-19 FireEye Security Holdings, Inc. System and method for retrieval and analysis of operational data from customer, cloud-hosted virtual resources
US11677786B1 (en) 2019-03-29 2023-06-13 Fireeye Security Holdings Us Llc System and method for detecting and protecting against cybersecurity attacks on servers
US11636198B1 (en) 2019-03-30 2023-04-25 Fireeye Security Holdings Us Llc System and method for cybersecurity analyzer update and concurrent management system
WO2020236981A1 (en) 2019-05-20 2020-11-26 Sentinel Labs Israel Ltd. Systems and methods for executable code detection, automatic feature extraction and position independent code detection
US11258806B1 (en) 2019-06-24 2022-02-22 Mandiant, Inc. System and method for automatically associating cybersecurity intelligence to cyberthreat actors
US11556640B1 (en) 2019-06-27 2023-01-17 Mandiant, Inc. Systems and methods for automated cybersecurity analysis of extracted binary string sets
US11392700B1 (en) 2019-06-28 2022-07-19 Fireeye Security Holdings Us Llc System and method for supporting cross-platform data verification
US11886585B1 (en) 2019-09-27 2024-01-30 Musarubra Us Llc System and method for identifying and mitigating cyberattacks through malicious position-independent code execution
US11637862B1 (en) 2019-09-30 2023-04-25 Mandiant, Inc. System and method for surfacing cyber-security threats with a self-learning recommendation engine
CN111028135B (zh) * 2019-12-10 2023-06-02 国网重庆市电力公司电力科学研究院 一种图像文件修复方法
US11838300B1 (en) 2019-12-24 2023-12-05 Musarubra Us Llc Run-time configurable cybersecurity system
US11522884B1 (en) 2019-12-24 2022-12-06 Fireeye Security Holdings Us Llc Subscription and key management system
US11436327B1 (en) 2019-12-24 2022-09-06 Fireeye Security Holdings Us Llc System and method for circumventing evasive code for cyberthreat detection
US11321221B2 (en) 2019-12-31 2022-05-03 Visa International Service Association System and method to use past computer executable instructions to evaluate proposed computer executable instructions
US12056239B2 (en) 2020-08-18 2024-08-06 Micro Focus Llc Thread-based malware detection
US11579857B2 (en) 2020-12-16 2023-02-14 Sentinel Labs Israel Ltd. Systems, methods and devices for device fingerprinting and automatic deployment of software in a computing network using a peer-to-peer approach
GB2605635A (en) * 2021-04-08 2022-10-12 Withsecure Corp Arrangement and method of threat detection in a computer or computer network
WO2022266771A1 (en) * 2021-06-24 2022-12-29 Feroot Security Inc. Security risk remediation tool
US11899782B1 (en) 2021-07-13 2024-02-13 SentinelOne, Inc. Preserving DLL hooks
US20230185692A1 (en) 2021-12-14 2023-06-15 John D. Campbell Highly Tested Systems

Family Cites Families (99)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55112651A (en) 1979-02-21 1980-08-30 Fujitsu Ltd Virtual computer system
US4819234A (en) 1987-05-01 1989-04-04 Prime Computer, Inc. Operating system debugger
US5121345A (en) 1988-11-03 1992-06-09 Lentz Stephen A System and method for protecting integrity of computer data and software
US4975950A (en) 1988-11-03 1990-12-04 Lentz Stephen A System and method of protecting integrity of computer data and software
EP0449242A3 (en) 1990-03-28 1992-10-28 National Semiconductor Corporation Method and structure for providing computer security and virus prevention
EP0510244A1 (en) * 1991-04-22 1992-10-28 Acer Incorporated Method and apparatus for protecting a computer system from computer viruses
US5774727A (en) 1991-06-27 1998-06-30 Digital Equipment Corporation Parallel processing system for virtual processor implementation of machine-language instructions
US5649095A (en) 1992-03-30 1997-07-15 Cozza; Paul D. Method and apparatus for detecting computer viruses through the use of a scan information cache
US5278901A (en) 1992-04-30 1994-01-11 International Business Machines Corporation Pattern-oriented intrusion-detection system and method
US5359659A (en) * 1992-06-19 1994-10-25 Doren Rosenthal Method for securing software against corruption by computer viruses
US5345595A (en) 1992-11-12 1994-09-06 Coral Systems, Inc. Apparatus and method for detecting fraudulent telecommunication activity
US5440723A (en) 1993-01-19 1995-08-08 International Business Machines Corporation Automatic immune system for computers and computer networks
JP2501771B2 (ja) * 1993-01-19 1996-05-29 インターナショナル・ビジネス・マシーンズ・コーポレイション 不所望のソフトウェア・エンティティの複数の有効なシグネチャを得る方法及び装置
US5586260A (en) 1993-02-12 1996-12-17 Digital Equipment Corporation Method and apparatus for authenticating a client to a server in computer systems which support different security mechanisms
US5630061A (en) 1993-04-19 1997-05-13 International Business Machines Corporation System for enabling first computer to communicate over switched network with second computer located within LAN by using media access control driver in different modes
US5398196A (en) 1993-07-29 1995-03-14 Chambers; David A. Method and apparatus for detection of computer viruses
US5414833A (en) 1993-10-27 1995-05-09 International Business Machines Corporation Network security system and method using a parallel finite state machine adaptive active monitor and responder
US5606668A (en) 1993-12-15 1997-02-25 Checkpoint Software Technologies Ltd. System for securing inbound and outbound data packet flow in a computer network
US5835726A (en) 1993-12-15 1998-11-10 Check Point Software Technologies Ltd. System for securing the flow of and selectively modifying packets in a computer network
US5675711A (en) 1994-05-13 1997-10-07 International Business Machines Corporation Adaptive statistical regression and classification of data strings, with application to the generic detection of computer viruses
ATE183592T1 (de) 1994-06-01 1999-09-15 Quantum Leap Innovations Inc Computervirenfalle
DE4423650A1 (de) * 1994-07-06 1996-01-11 Bayer Ag Azofarbstoffe mit einer faserreaktiven Gruppe
US5623601A (en) 1994-11-18 1997-04-22 Milkway Networks Corporation Apparatus and method for providing a secure gateway for communication and data exchanges between networks
US5764890A (en) 1994-12-13 1998-06-09 Microsoft Corporation Method and system for adding a secure network server to an existing computer network
CA2138302C (en) 1994-12-15 1999-05-25 Michael S. Fortinsky Provision of secure access to external resources from a distributed computing environment
US5590331A (en) 1994-12-23 1996-12-31 Sun Microsystems, Inc. Method and apparatus for generating platform-standard object files containing machine-independent code
US5749066A (en) 1995-04-24 1998-05-05 Ericsson Messaging Systems Inc. Method and apparatus for developing a neural network for phoneme recognition
US6061795A (en) 1995-07-31 2000-05-09 Pinnacle Technology Inc. Network desktop management security system and method
US5623600A (en) 1995-09-26 1997-04-22 Trend Micro, Incorporated Virus detection and removal apparatus for computer networks
US5765030A (en) 1996-07-19 1998-06-09 Symantec Corp Processor emulator module having a variable pre-fetch queue size for program execution
US5854916A (en) 1995-09-28 1998-12-29 Symantec Corporation State-based cache for antivirus software
US5826013A (en) 1995-09-28 1998-10-20 Symantec Corporation Polymorphic virus detection module
US5696822A (en) 1995-09-28 1997-12-09 Symantec Corporation Polymorphic virus detection module
US6067410A (en) 1996-02-09 2000-05-23 Symantec Corporation Emulation repair system
US5832211A (en) 1995-11-13 1998-11-03 International Business Machines Corporation Propagating plain-text passwords from a main registry to a plurality of foreign registries
US5838903A (en) 1995-11-13 1998-11-17 International Business Machines Corporation Configurable password integrity servers for use in a shared resource environment
US5764887A (en) 1995-12-11 1998-06-09 International Business Machines Corporation System and method for supporting distributed computing mechanisms in a local area network server environment
GB9526129D0 (en) 1995-12-21 1996-02-21 Philips Electronics Nv Machine code format translation
US5761504A (en) 1996-02-16 1998-06-02 Motorola, Inc. Method for updating a software code in a communication system
US5950012A (en) 1996-03-08 1999-09-07 Texas Instruments Incorporated Single chip microprocessor circuits, systems, and methods for self-loading patch micro-operation codes and patch microinstruction codes
US5964839A (en) 1996-03-29 1999-10-12 At&T Corp System and method for monitoring information flow and performing data collection
US5822517A (en) * 1996-04-15 1998-10-13 Dotan; Eyal Method for detecting infection of software programs by memory resident software viruses
US6014645A (en) 1996-04-19 2000-01-11 Block Financial Corporation Real-time financial card application system
US5881236A (en) 1996-04-26 1999-03-09 Hewlett-Packard Company System for installation of software on a remote computer system over a network using checksums and password protection
US5884033A (en) 1996-05-15 1999-03-16 Spyglass, Inc. Internet filtering system for filtering data transferred over the internet utilizing immediate and deferred filtering actions
US5798706A (en) 1996-06-18 1998-08-25 Raptor Systems, Inc. Detecting unauthorized network communication
US5857191A (en) 1996-07-08 1999-01-05 Gradient Technologies, Inc. Web application server with secure common gateway interface
US5787177A (en) 1996-08-01 1998-07-28 Harris Corporation Integrated network security access control system
US5828833A (en) 1996-08-15 1998-10-27 Electronic Data Systems Corporation Method and system for allowing remote procedure calls through a network firewall
US5864665A (en) 1996-08-20 1999-01-26 International Business Machines Corporation Auditing login activity in a distributed computing environment
US5832208A (en) 1996-09-05 1998-11-03 Cheyenne Software International Sales Corp. Anti-virus agent for use with databases and mail servers
US6154844A (en) 1996-11-08 2000-11-28 Finjan Software, Ltd. System and method for attaching a downloadable security profile to a downloadable
US6167520A (en) 1996-11-08 2000-12-26 Finjan Software, Inc. System and method for protecting a client during runtime from hostile downloadables
US5796942A (en) 1996-11-21 1998-08-18 Computer Associates International, Inc. Method and apparatus for automated network-wide surveillance and security breach intervention
US5987611A (en) 1996-12-31 1999-11-16 Zone Labs, Inc. System and methodology for managing internet access on a per application basis for client computers connected to the internet
US5875296A (en) 1997-01-28 1999-02-23 International Business Machines Corporation Distributed file system web server user authentication with cookies
US5983270A (en) 1997-03-11 1999-11-09 Sequel Technology Corporation Method and apparatus for managing internetwork and intranetwork activity
US6085224A (en) 1997-03-11 2000-07-04 Intracept, Inc. Method and system for responding to hidden data and programs in a datastream
US5987606A (en) 1997-03-19 1999-11-16 Bascom Global Internet Services, Inc. Method and system for content filtering information retrieved from an internet computer network
US5964889A (en) 1997-04-16 1999-10-12 Symantec Corporation Method to analyze a program for presence of computer viruses by examining the opcode for faults before emulating instruction in emulator
US6119234A (en) 1997-06-27 2000-09-12 Sun Microsystems, Inc. Method and apparatus for client-host communication over a computer network
US5978917A (en) 1997-08-14 1999-11-02 Symantec Corporation Detection and elimination of macro viruses
US6275938B1 (en) 1997-08-28 2001-08-14 Microsoft Corporation Security enhancement for untrusted executable code
US6016553A (en) 1997-09-05 2000-01-18 Wild File, Inc. Method, software and apparatus for saving, using and recovering data
IL126148A (en) 1997-09-09 2004-02-19 Sanctum Ltd Method and system for maintaining restricted operating environments for application programs or operating systems
US5983348A (en) 1997-09-10 1999-11-09 Trend Micro Incorporated Computer network malicious code scanner
US6357008B1 (en) 1997-09-23 2002-03-12 Symantec Corporation Dynamic heuristic method for detecting computer viruses using decryption exploration and evaluation phases
US6003132A (en) 1997-10-22 1999-12-14 Rvt Technologies, Inc. Method and apparatus for isolating a computer system upon detection of viruses and similar data
US6081894A (en) 1997-10-22 2000-06-27 Rvt Technologies, Inc. Method and apparatus for isolating an encrypted computer system upon detection of viruses and similar data
US6041347A (en) 1997-10-24 2000-03-21 Unified Access Communications Computer system and computer-implemented process for simultaneous configuration and monitoring of a computer network
US6119165A (en) 1997-11-17 2000-09-12 Trend Micro, Inc. Controlled distribution of application programs in a computer network
US6108799A (en) 1997-11-21 2000-08-22 International Business Machines Corporation Automated sample creation of polymorphic and non-polymorphic marcro viruses
US6026442A (en) 1997-11-24 2000-02-15 Cabletron Systems, Inc. Method and apparatus for surveillance in communications networks
US6094731A (en) 1997-11-24 2000-07-25 Symantec Corporation Antivirus accelerator for computer networks
US6021510A (en) 1997-11-24 2000-02-01 Symantec Corporation Antivirus accelerator
US6118940A (en) 1997-11-25 2000-09-12 International Business Machines Corp. Method and apparatus for benchmarking byte code sequences
IL122314A (en) 1997-11-27 2001-03-19 Security 7 Software Ltd Method and system for enforcing a communication security policy
US6088803A (en) 1997-12-30 2000-07-11 Intel Corporation System for virus-checking network data during download to a client device
US6035423A (en) 1997-12-31 2000-03-07 Network Associates, Inc. Method and system for providing automated updating and upgrading of antivirus applications using a computer network
US6029256A (en) 1997-12-31 2000-02-22 Network Associates, Inc. Method and system for allowing computer programs easy access to features of a virus scanning engine
US6122738A (en) 1998-01-22 2000-09-19 Symantec Corporation Computer file integrity verification
US5987610A (en) * 1998-02-12 1999-11-16 Ameritech Corporation Computer virus screening methods and systems
US6397242B1 (en) 1998-05-15 2002-05-28 Vmware, Inc. Virtualization system including a virtual machine monitor for a computer with a segmented architecture
JP2002519760A (ja) 1998-06-22 2002-07-02 コンスタブル,コリン 仮想データ記憶(vds)システム
US6045311A (en) 1998-09-10 2000-04-04 Chang; Peter Jenn-Hai Bolt, nut, and wrench in taper design for turning the bolt and the nut
US6192512B1 (en) 1998-09-24 2001-02-20 International Business Machines Corporation Interpreter with virtualized interface
US6338141B1 (en) 1998-09-30 2002-01-08 Cybersoft, Inc. Method and apparatus for computer virus detection, analysis, and removal in real time
US6266774B1 (en) 1998-12-08 2001-07-24 Mcafee.Com Corporation Method and system for securing, managing or optimizing a personal computer
US6405318B1 (en) 1999-03-12 2002-06-11 Psionic Software, Inc. Intrusion detection system
US7185367B2 (en) 1999-05-11 2007-02-27 Cylant, Inc. Method and system for establishing normal software system behavior and departures from normal behavior
US6971019B1 (en) * 2000-03-14 2005-11-29 Symantec Corporation Histogram-based virus detection
US6775780B1 (en) 2000-03-16 2004-08-10 Networks Associates Technology, Inc. Detecting malicious software by analyzing patterns of system calls generated during emulation
AU2001262958A1 (en) 2000-04-28 2001-11-12 Internet Security Systems, Inc. Method and system for managing computer security information
US6973577B1 (en) * 2000-05-26 2005-12-06 Mcafee, Inc. System and method for dynamically detecting computer viruses through associative behavioral analysis of runtime state
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
US8341743B2 (en) * 2000-07-14 2012-12-25 Ca, Inc. Detection of viral code using emulation of operating system functions
US7146305B2 (en) 2000-10-24 2006-12-05 Vcis, Inc. Analytical virtual machine
CA2434674C (en) 2001-01-10 2010-06-08 Cisco Technology, Inc. Computer security and management system
US7370360B2 (en) * 2002-05-13 2008-05-06 International Business Machines Corporation Computer immune system and method for detecting unwanted code in a P-code or partially compiled native-code program executing within a virtual machine

Also Published As

Publication number Publication date
CA2416066A1 (en) 2002-01-24
EP1358526A2 (en) 2003-11-05
US7093239B1 (en) 2006-08-15
US20050268338A1 (en) 2005-12-01
JP2004504662A (ja) 2004-02-12
US7854004B2 (en) 2010-12-14
WO2002006928A3 (en) 2003-08-14
WO2002006928A2 (en) 2002-01-24
AU2001269826A1 (en) 2002-01-30
TW518463B (en) 2003-01-21

Similar Documents

Publication Publication Date Title
JP4741782B2 (ja) コンピュータ免疫システムおよびコンピュータシステムにおいて望ましくないコードを検出する方法
US7370360B2 (en) Computer immune system and method for detecting unwanted code in a P-code or partially compiled native-code program executing within a virtual machine
US7657419B2 (en) Analytical virtual machine
RU2698776C2 (ru) Способ ведения базы данных и соответствующий сервер
US8904537B2 (en) Malware detection
EP0636977B1 (en) Method and apparatus for detection of computer viruses
US7146305B2 (en) Analytical virtual machine
Zhang et al. Dexhunter: toward extracting hidden code from packed android applications
US8479174B2 (en) Method, computer program and computer for analyzing an executable computer file
US8955132B2 (en) Emulation for malware detection
US7984304B1 (en) Dynamic verification of validity of executable code
JP4950902B2 (ja) ダイナミックトランスレーションによる先取りコンピュータマルウェアの保護
US7013483B2 (en) Method for emulating an executable code in order to detect maliciousness
US20060021029A1 (en) Method of improving computer security through sandboxing
CN102043915B (zh) 一种非可执行文件中包含恶意代码的检测方法及其装置
Josse Secure and advanced unpacking using computer emulation
Nebenzahl et al. Install-time vaccination of Windows executables to defend against stack smashing attacks
Babar et al. Generic unpacking techniques
JP2005032182A (ja) プログラム、攻撃コード抽出装置およびその方法
Kasina et al. Detection of polymorphic viruses in windows executables
Lindsay Attacking the Windows Kernel

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20070327

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070327

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20071127

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110328

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4741782

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140513

Year of fee payment: 3

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

EXPY Cancellation because of completion of term