JP2010262609A - 効率的なマルウェアの動的解析手法 - Google Patents
効率的なマルウェアの動的解析手法 Download PDFInfo
- Publication number
- JP2010262609A JP2010262609A JP2009124674A JP2009124674A JP2010262609A JP 2010262609 A JP2010262609 A JP 2010262609A JP 2009124674 A JP2009124674 A JP 2009124674A JP 2009124674 A JP2009124674 A JP 2009124674A JP 2010262609 A JP2010262609 A JP 2010262609A
- Authority
- JP
- Japan
- Prior art keywords
- program
- malware
- analysis
- detection
- dynamic analysis
- 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.)
- Pending
Links
Images
Abstract
【課題】マルウェア誤検出の発生を低減し、システムに掛かる処理負荷を軽減できる、高精度なマルウェア検出技術を提供する。
【解決手段】静的解析により得られる解析情報を動的解析のモジュールへも反映することにより、静的解析と動的解析を連携させ、解析対象プログラムがマルウェアか否かを判定し、さらに、自分自身のファイルイメージをアンマップしようとするプログラムの挙動を検知すること、及び、自分自身をサービスとして登録しようとするプログラムの挙動を検知することででマルウェアか否かを判定する。
【選択図】図4
【解決手段】静的解析により得られる解析情報を動的解析のモジュールへも反映することにより、静的解析と動的解析を連携させ、解析対象プログラムがマルウェアか否かを判定し、さらに、自分自身のファイルイメージをアンマップしようとするプログラムの挙動を検知すること、及び、自分自身をサービスとして登録しようとするプログラムの挙動を検知することででマルウェアか否かを判定する。
【選択図】図4
Description
本発明は、プログラム、情報機器およびマルウェア判定方法に関する。
マルウェア(malicious software)は、悪意あるコードを含むソフトウェアおよびファイルを指す。コンピュータウイルス、トロイの木馬、ボット、ワーム、スパイウェア等、遠隔地のコンピュータに侵入し攻撃を行うプログラム、他のコンピュータへの感染活動や破壊活動を行うプログラム、および、情報を外部に漏洩する有害な動作を含める。
マルウェアの静的解析は、解析対象となるプログラムの実行前に検査を行い、マルウェアかどうか判定する手法を指す。Windows(登録商標;以下、略記する)プログラムでは、プログラム実行前であってもプログラムファイルを検査することで取得できる情報がある。プログラム自身のファイルサイズ、プログラムに電子署名があるかどうか、実行プログラムファイルのハッシュ値等が実行前に取得できる情報に含まれる。各プログラムはこれら実行前に分かる情報をデータベースとして持っており、静的解析ではこのデータベースを検査することでマルウェアか否かを判定する。
マルウェアの動的解析は、解析対象となるプログラムを実行後、その挙動を検査してマルウェアか否か判定する手法を指す。マルウェアらしき振る舞いとして判定する挙動には、メールを大量に送り始める、ファイアウォールやOS(Operating System)のセキュリティ機能を停止する、システムファイルを削除する、他のプロセスに侵入しコードを実行する等が含まれる。これらの挙動を行っているかを解析することで、プログラムがマルウェアか否かを判定する。
従来のマルウェア検出手法では、静的解析(段落0003)と動的解析(段落0004)が別々のモジュールとして実装されており、それぞれのモジュールが独立して動作していた。もしくは、静的解析と動的解析の両モジュール間に情報の受け渡しがあったとしても、例えば一部の信用できるプログラムについては動的解析を一切実行しないといった限定的な手法が採用されていた。なお、本項(段落0005)での「信用できるプログラム」とは、静的解析単独の判断によって非マルウェアと分類されたファイルを指す。
従来の手法では、ファイルがマルウェアであるか否かを判定する際に、静的解析および動的解析がそれぞれ独立したモジュールで解析を行っている。判定基準となる情報が限定的であるため、False Positive(マルウェアとして検出しなくてもよい通常のプログラムを誤ってマルウェアと判断してしまう状態)やFalse Negative(検出すべきマルウェアを取りこぼす状態)といった誤検出が発生する等、セキュリティ対策プログラムとしての有用性および可用性に欠けていた。
あるいは、特許文献1による請求項12および請求項24において、マルウェアもしくは非マルウェアと判断されたオブジェクトに対して動作を制限するマスクを設定、そのマスクで規定された動作以外の動きをした場合にマルウェアとして判定する。マルウェア判定もしくはマスク設定の根拠として、オブジェクトのサイズ、ファイル名、およびヘッダ情報等があげられている。この方式の問題点の一つに、サーバが必要となることがあげられる。また、マスクを行うことによりマルウェアを判定するとあるが、マスクとして説明されている挙動(段落0088)はどれもマルウェアに限らず通常のプログラムでも見られる基本的な挙動であり、マルウェア判定基準としては決定力に欠ける。前記理由により、当該の発明はポリシー制御を行うためのアプローチにすぎず、マルウェアを解析もしくは検出する手法としては精度が不十分である。
上記課題を解決するため、請求項1に記載の発明は、コンピュータを静的解析と動的解析を効果的に連携させることにより、解析対象ソフトウェアがマルウェアか否かを効率よく判定する制御手段、として機能させる。
また、請求項2および請求項3に記載の発明は、従来技術での検出方法の不足を補い、検出漏れの防止を目的として、(7)プログラムが自分自身のファイルイメージをアンマップしようする挙動や、(8)プログラムが自分自身をサービスとして登録しようとする挙動を捕らえる、新しい動的解析手法として機能させる。
静的解析で得られる情報を、段落0009の手法により段落0010および背景技術(段落0004)を含めた動的解析にフィードバックさせることで、マルウェア検出精度の向上と検出手続きの効率化を図る。
本発明は、マルウェア誤検出の割合低減による効率的なマルウェア検出、かつ、実施システムでの負荷軽減を特徴としている。マルウェア攻撃の未然防御ならびに被害の拡大防止に繋がり、よって、本発明を含むプログラムの利用者に、セキュリティシステム構築に主眼をおくマルウェア対策として十分な機能を提供できる。
(a)「プログラムに電子署名が付与されているか」を判定する静的解析
(b)「プログラムはインストーラか」を判定する静的解析
(c)「プログラムはパッカーを使用しているか」を判定する静的解析
(d)「プログラムはコピープロテクト等の商用パッカーを使用しているか」を判定する静的解析
(e)「プログラムは自己解凍書庫か」を判定する静的解析
(1)「関数が通常とは異なる方法で呼ばれた」挙動を捕らえる動的解析
(2)「自分自身のコピーを作成し、それを実行しようとした」挙動を捕らえる動的解析
(3)「GUIを持たないプログラムが、システムユーティリティやバッチファイルを実行した」挙動を捕らえる動的解析
(4)「デバッグ権限を取得しようとした」挙動を捕らえる動的解析
(5)「ドライバをロードしようとした」挙動を捕らえる動的解析
(6)「他プロセスを開こうとした」挙動を捕らえる動的解析
(7)「自分自身のファイルイメージをアンマップしようとした」挙動を捕らえる動的解析
(8)「自分自身をサービスとして登録しようとした」挙動を捕らえる動的解析
(b)「プログラムはインストーラか」を判定する静的解析
(c)「プログラムはパッカーを使用しているか」を判定する静的解析
(d)「プログラムはコピープロテクト等の商用パッカーを使用しているか」を判定する静的解析
(e)「プログラムは自己解凍書庫か」を判定する静的解析
(1)「関数が通常とは異なる方法で呼ばれた」挙動を捕らえる動的解析
(2)「自分自身のコピーを作成し、それを実行しようとした」挙動を捕らえる動的解析
(3)「GUIを持たないプログラムが、システムユーティリティやバッチファイルを実行した」挙動を捕らえる動的解析
(4)「デバッグ権限を取得しようとした」挙動を捕らえる動的解析
(5)「ドライバをロードしようとした」挙動を捕らえる動的解析
(6)「他プロセスを開こうとした」挙動を捕らえる動的解析
(7)「自分自身のファイルイメージをアンマップしようとした」挙動を捕らえる動的解析
(8)「自分自身をサービスとして登録しようとした」挙動を捕らえる動的解析
以下、本発明の実施形態を、静的解析と動的解析を連携させたマルウェア検出の手順に基づいて説明する。なお、実施形態は下記に限定されるものではない。
ユーザーがプログラムを実行する時、解析モジュールはまずその実行されるプログラムに対して静的解析を行う。この静的解析ではプログラム実行前のマルウェアチェックを行う。この段階でマルウェアと判定できない場合に、プログラムを実行して動的解析を行う。
段落0016の静的解析時にマルウェアか否かの判定と同時にプログラムの種類も判定する。このプログラムの種類の判定材料として、下記(a)〜(e)を使用する。
(a)プログラムに電子署名が付与されているか
(b)プログラムはインストーラか
(c)プログラムはパッカーを使用しているか
(d)プログラムはコピープロテクト等の商用パッカーを使用しているか
(e)プログラムは自己解凍書庫か
(a)プログラムに電子署名が付与されているか
(b)プログラムはインストーラか
(c)プログラムはパッカーを使用しているか
(d)プログラムはコピープロテクト等の商用パッカーを使用しているか
(e)プログラムは自己解凍書庫か
段落0017で判定されたプログラムの種類を手掛かりとして使用し、その解析結果で取得されたプログラムの種類に基づいて、対象プログラムに対し下記(1)〜(6)の挙動を捕らえる動的解析を行う。
(1)関数が通常とは異なる方法で呼ばれた
(2)自分自身のコピーを作成し、それを実行しようとした
(3)GUIを持たないプログラムが、システムユーティリティやバッチファイルを実行した
(4)デバッグ権限を取得しようとした
(5)ドライバをロードしようとした
(6)他プロセスを開こうとした
(1)関数が通常とは異なる方法で呼ばれた
(2)自分自身のコピーを作成し、それを実行しようとした
(3)GUIを持たないプログラムが、システムユーティリティやバッチファイルを実行した
(4)デバッグ権限を取得しようとした
(5)ドライバをロードしようとした
(6)他プロセスを開こうとした
段落0018(1)〜(6)は、どれもマルウェアがよく行う挙動である。ただし、通常のプログラムも同様の動作を行うことがあるため、プログラムの種類ごとに動的解析による検出の有効/無効を切り替えることで、誤検出の割合を減らすことが可能となる。具体的には、静的解析(段落0017)で「(a)電子署名がある」と判定された場合は、動的解析(段落0018)による検出のうち(2)、(3)、(4)、(5)、(6)の挙動を検出しない。「(b)プログラムがインストーラ」と判定された場合は(2)、(3)、(4)、(5)の挙動を検出しない。「(c)プログラムがパッカーを使用している」と判定された場合は(1)を検出しない。このように、静的解析で得られたプログラムの種類を動的解析に反映させることで、誤検出を減らしつつ、新しい検出方法(段落0010)の(7)および(8)を導入できる。
ここで、段落0019の検出する/しないの根拠を説明する。(1)はOSが提供する動的なライブラリのリンクに注目した機能である。通常のプログラムはOSの提供する動的リンクの機能を使用するが、パッカーと呼ばれるプログラムは自分でこの機能の一部を内蔵してしまっていることがある。この場合、(1)の方法での検出は困難なことから、検出から除外する。(2)、(3)、(4)、(5)、(6)については単純にこの動作がマルウェアとは特定できないが「怪しい」「疑わしい」といった挙動である。また、電子署名やインストーラは、(2)、(3)、(4)、(5)、(6)の動作を行うことがあるため、このように除外するようにした。
各検出方法と静的解析による結果を動的解析にフィードバックする機能が本発明の主要手法となる。静的解析でどの種類のプログラムを検出した場合にどの検出機能を有効/無効にするかという検出機能の切り替えに関しては、段落0019に手法の一部をあげ、プログラム種類の判定方法と段落0010を含めた動的解析による検出方法の組み合わせ詳細については実施例に説明する。
静的解析により得られた(a)〜(e)の結果に応じて、任意の(1)〜(8)の検出方法を無効にしてもよい。
下記(段落0024〜0029)に、静的解析によるプログラムの種類の判定方法について説明する。プログラムの種類は、プログラムファイルに含まれるPE(Portable Executable)ヘッダを解析することで特定できる。
(a)プログラムに電子署名が付与されているか
Windowsの場合、OS提供のWinVerifyTrust関数を使用する。
Windowsの場合、OS提供のWinVerifyTrust関数を使用する。
(b)プログラムはインストーラか
インストーラはデータセクションの中に特定の文字列が含まれる。例えばInstallShieldの場合は「InstallShieldMSI」という文字列がデータセクションに埋め込まれている。このように、インストーラごとに埋め込まれている文字列をデータベースとして保持し、検出対象プログラムのデータセクションにそのデータベース中の文字列が含まれるかどうかを調べることで、インストーラを検出できる。
インストーラはデータセクションの中に特定の文字列が含まれる。例えばInstallShieldの場合は「InstallShieldMSI」という文字列がデータセクションに埋め込まれている。このように、インストーラごとに埋め込まれている文字列をデータベースとして保持し、検出対象プログラムのデータセクションにそのデータベース中の文字列が含まれるかどうかを調べることで、インストーラを検出できる。
(c)プログラムはパッカーを使用しているか
パッカー検出にセクションの名前による検出を行う。パッカーはセクション名に通常のプログラムではあまり使われない名前を使用している。このような特徴的なセクションをパッカー検出に使用する。
パッカー検出にセクションの名前による検出を行う。パッカーはセクション名に通常のプログラムではあまり使われない名前を使用している。このような特徴的なセクションをパッカー検出に使用する。
段落0026のパッカー検出のかわりに、PEヘッダもしくはデータセクションに含まれる特定のバイト列による検出を使用してもよい。これを行うには、パッカーの持つ特徴的なバイト列をデータベース化して保持し、検出対象プログラムのデータセクションにそのデータベース中の文字列が含まれるかどうかを調べることで、これを検出に使う。
段落0026のパッカー検出のかわりに、コードセクションに含まれる0x00の割合による検出を用いてもよい。その割合が一定の割合未満の場合、パッカーを使用していると判断できる。例えば「一定の割合」に3%などの数字を使用できる。
段落0026のパッカー検出のかわりに、リンクしているDLL(Dynamic Link Library)や関数の名前による検出を使用してもよい。通常のプログラムは多数の関数を使用するが、パッカーは特定の関数のみを使用している場合が多い。検査対象プログラムが使用しているDLLや関数がそのようなパッカーがよく使う関数のみで構成していたら、パッカーと判断する。5つ目は、プログラムの開始アドレスの場所を使用する。通常のプログラムは最初のコードセクションの中に開始アドレスが含まれる。それより外れている場所に開始アドレスがある場合は、やはりパッカーである可能性が高いと判断する。
(c)プログラムはパッカーを使用しているか、の実現方法として段落0026〜0029までの検出方法を組み合わせて判断してもよい。
(d)プログラムはコピープロテクト等の商用パッカーを使用しているか
基本的には段落0026のパッカー検出と同様の方法で検出する。また、コピープロテクト等の商用パッカーは、特定のセクション名を使用しているか、特定の文字列もしくはバイト列が含まれるか、の2点で判断してもよい。
基本的には段落0026のパッカー検出と同様の方法で検出する。また、コピープロテクト等の商用パッカーは、特定のセクション名を使用しているか、特定の文字列もしくはバイト列が含まれるか、の2点で判断してもよい。
(e)プログラムは自己解凍書庫か
自己解凍書庫も段落0026〜0029のパッカー検出と同様の方法で検出する。
特定のセクション名を使用しているかどうか、もしくは、特定の文字列もしくはバイト列が含まれるかどうかで判断する。
自己解凍書庫も段落0026〜0029のパッカー検出と同様の方法で検出する。
特定のセクション名を使用しているかどうか、もしくは、特定の文字列もしくはバイト列が含まれるかどうかで判断する。
静的解析によるファイル種別の判定の流れを図3に示す。
下記(段落0035〜0042)に動的解析による検出方法について説明する。プログラム実行時に検出した(1)〜(8)の挙動により、マルウェアと判定する。
(1)関数が通常とは異なる方法で呼ばれた
プログラムは通常、OSが提供するライブラリを動的にリンクし、ライブラリ内の関数を呼び出す。その時、プログラムはどのファイルのどの関数をリンクするのか指定する必要がある。この指定はOSによって決められた方法で行う。WindowsではIAT(Import Address Table)と呼ばれるテーブルを作成することで、この動的リンクを実現している。図1に、プログラム「program.exe」がkernel32.dllを動的リンクしてCreateFileA関数を呼び出す関連を示す。このようなOS標準の方法を使用するとプログラムの解析が容易になってしまうため、マルウェアはOS標準ではない方法を用いて関数を呼び出すことが多い。従って、IATに無い関数が呼ばれたらマルウェアによる不正な関数呼び出しと判定できる。
プログラムは通常、OSが提供するライブラリを動的にリンクし、ライブラリ内の関数を呼び出す。その時、プログラムはどのファイルのどの関数をリンクするのか指定する必要がある。この指定はOSによって決められた方法で行う。WindowsではIAT(Import Address Table)と呼ばれるテーブルを作成することで、この動的リンクを実現している。図1に、プログラム「program.exe」がkernel32.dllを動的リンクしてCreateFileA関数を呼び出す関連を示す。このようなOS標準の方法を使用するとプログラムの解析が容易になってしまうため、マルウェアはOS標準ではない方法を用いて関数を呼び出すことが多い。従って、IATに無い関数が呼ばれたらマルウェアによる不正な関数呼び出しと判定できる。
(2)自分自身のコピーを作成し、それを実行しようとした
実行中のプログラムが自分自身のプログラムをファイルとして出力して、さらにそれを実行しようとしたらマルウェアだと判断する。
実行中のプログラムが自分自身のプログラムをファイルとして出力して、さらにそれを実行しようとしたらマルウェアだと判断する。
(3)GUI(Graphical User Interface)を持たないプログラムが、システムユーティリティやバッチファイルを実行した
ウィンドウを持たず、タスクトレイのアイコンも持たないプログラムがcmd.exeといったシステムユーティリティを実行した。もしくは、バッチファイルを実行した。
ウィンドウを持たず、タスクトレイのアイコンも持たないプログラムがcmd.exeといったシステムユーティリティを実行した。もしくは、バッチファイルを実行した。
(4)デバッグ権限を取得しようとした
プログラムがデバッグに必要な権限を取得しようとした。WindowsではZwAdjustPrivilegesToken関数で権限の調節を行う。関数の引数としてどのような権限の調整を行うのかを指定し、その指定にSeDebugPrivilegeが入っていたらデバッグ権限を取得しようとしたとして検出する。
プログラムがデバッグに必要な権限を取得しようとした。WindowsではZwAdjustPrivilegesToken関数で権限の調節を行う。関数の引数としてどのような権限の調整を行うのかを指定し、その指定にSeDebugPrivilegeが入っていたらデバッグ権限を取得しようとしたとして検出する。
(5)ドライバをロードしようとした
ドライバをロードして実行しようとしたらマルウェアだと判断することができる。
ドライバとは、より権限の高いカーネル内で動作するプログラムである。マルウェアはより高い権限で悪意あるコードを実行しようとする。
ドライバをロードして実行しようとしたらマルウェアだと判断することができる。
ドライバとは、より権限の高いカーネル内で動作するプログラムである。マルウェアはより高い権限で悪意あるコードを実行しようとする。
(6)他プロセスを開こうとした
Windowsの場合、マルウェアが他プロセスに感染する時、まずOpenProcessという関数を呼び出す。この関数でどのプロセスに対して、どのような権限で操作を行うのかを指定する。権限には例えばPROCESS_VM_WRITE権限があり、この権限付きでプロセスを開くと、対象プロセスのメモリ空間に対して任意のデータを書き込みできるようになる。このような書き込み権限で他のプロセスを開こうとする動作を、マルウェアの動作として検出する。
Windowsの場合、マルウェアが他プロセスに感染する時、まずOpenProcessという関数を呼び出す。この関数でどのプロセスに対して、どのような権限で操作を行うのかを指定する。権限には例えばPROCESS_VM_WRITE権限があり、この権限付きでプロセスを開くと、対象プロセスのメモリ空間に対して任意のデータを書き込みできるようになる。このような書き込み権限で他のプロセスを開こうとする動作を、マルウェアの動作として検出する。
(7)自分自身のファイルイメージをアンマップしようとした
プログラムが実行される時、プロセスのメモリ空間にプログラムの実行コードをロードする。このロードはWindowsの場合、プログラムファイルをメモリにマップする、という処理を行うことで実現される。例えば図2の場合、program.exeとkernel32.dllがプロセスメモリ空間にマップされている。これにより、program.exe内にあるプログラムコードを実行できるようになる。
マルウェアの挙動の一つとして、自分で自分のプログラムファイルを削除して、感染した痕跡を消す、というものがある。Windowsは上記の例のようにプログラムファイルがメモリにマップされていると、プログラムファイルが削除できない。
従って、マルウェアはprogram.exeつまり自分自身をアンマップ(マップを解除)した上で、プログラムファイルを削除する。このように自分をアンマップしようとしていたらマルウェアだと判断する。
プログラムが実行される時、プロセスのメモリ空間にプログラムの実行コードをロードする。このロードはWindowsの場合、プログラムファイルをメモリにマップする、という処理を行うことで実現される。例えば図2の場合、program.exeとkernel32.dllがプロセスメモリ空間にマップされている。これにより、program.exe内にあるプログラムコードを実行できるようになる。
マルウェアの挙動の一つとして、自分で自分のプログラムファイルを削除して、感染した痕跡を消す、というものがある。Windowsは上記の例のようにプログラムファイルがメモリにマップされていると、プログラムファイルが削除できない。
従って、マルウェアはprogram.exeつまり自分自身をアンマップ(マップを解除)した上で、プログラムファイルを削除する。このように自分をアンマップしようとしていたらマルウェアだと判断する。
(8)自分自身をサービスとして登録しようとした
サービスとして自分自身を登録しようとしていたらマルウェアと判断する。サービスに登録されたプログラムはユーザーが明示的に指示しなくても自動的に実行されるためマルウェアによく利用される。
サービスとして自分自身を登録しようとしていたらマルウェアと判断する。サービスに登録されたプログラムはユーザーが明示的に指示しなくても自動的に実行されるためマルウェアによく利用される。
以下、静的解析から動的解析を経て、ユーザーにマルウェア検出を通知するまでの流れを説明する。
まず、プログラムの実行前に、解析対象となるプログラムの種類を特定する(図3)。
これにより、プログラムに電子署名があるか、インストーラか、パッカーかを識別する。
続いてプログラムの挙動を監視するための準備を行う。これは、監視する関数にフックをかけ、監視対象関数が呼ばれるたびに、動的解析を行えるようにする。この監視の準備が終ったら、プログラムを実行させる。
プログラムが実際に実行されると、監視対象の関数が呼ばれるたびに、「動的解析による検出」が実行され、その中でマルウェアかどうかの判定を行う(図4)。この判定は、監視対象の関数が呼び出される直前に行う。
動的解析による検出では、段落0018および段落0019で示した処理を行う。
マルウェアらしき動作を検出した場合は、攻撃検出をユーザーに通知し、検出した関数を実行せずにエラーで元に戻るようにする(図4)。
このように関数の呼び出し前にマルウェア判定を行うことにより、マルウェアの攻撃を事前に防御できる。
これにより、プログラムに電子署名があるか、インストーラか、パッカーかを識別する。
続いてプログラムの挙動を監視するための準備を行う。これは、監視する関数にフックをかけ、監視対象関数が呼ばれるたびに、動的解析を行えるようにする。この監視の準備が終ったら、プログラムを実行させる。
プログラムが実際に実行されると、監視対象の関数が呼ばれるたびに、「動的解析による検出」が実行され、その中でマルウェアかどうかの判定を行う(図4)。この判定は、監視対象の関数が呼び出される直前に行う。
動的解析による検出では、段落0018および段落0019で示した処理を行う。
マルウェアらしき動作を検出した場合は、攻撃検出をユーザーに通知し、検出した関数を実行せずにエラーで元に戻るようにする(図4)。
このように関数の呼び出し前にマルウェア判定を行うことにより、マルウェアの攻撃を事前に防御できる。
図5に、前記静的解析および動的解析の連携による検出手法がセキュリティ対策を目的としたプログラムに導入された場合のプログラム実行例を示す。なお、記述する実施の形態は、一例を示すものであり、これに限定するものではない。実行例における構成及び動作に関しては、適宜変更が可能である。
Claims (4)
- コンピュータを、
静的解析により得られる解析情報を動的解析のモジュールへも反映することにより、静的解析および動的解析を連携させた、解析対象ファイルがマルウェアか否かを効率的に判定する制御手段、
として機能させるためのプログラム。 - 自分自身のファイルイメージをアンマップしようとするプログラムの挙動を検知することでマルウェアか否かを判定する、請求項1に記載のプログラム。
- 自分自身をサービスとして登録しようとするプログラムの挙動を検知することでマルウェアか否かを判定する、請求項1に記載のプログラム。
- 請求項1、請求項2、請求項3の一項以上を含むマルウェア検出手法およびセキュリティ対策を目的としたプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009124674A JP2010262609A (ja) | 2009-04-28 | 2009-04-28 | 効率的なマルウェアの動的解析手法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009124674A JP2010262609A (ja) | 2009-04-28 | 2009-04-28 | 効率的なマルウェアの動的解析手法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010262609A true JP2010262609A (ja) | 2010-11-18 |
Family
ID=43360598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009124674A Pending JP2010262609A (ja) | 2009-04-28 | 2009-04-28 | 効率的なマルウェアの動的解析手法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010262609A (ja) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013168141A (ja) * | 2012-01-31 | 2013-08-29 | Trusteer Ltd | マルウェアの検出方法 |
JP2014504765A (ja) * | 2011-01-21 | 2014-02-24 | ファイヤアイ インク | 悪意あるpdfネットワークコンテンツを検出するシステムおよび方法 |
WO2014049499A2 (en) * | 2012-09-28 | 2014-04-03 | International Business Machines Corporation | Identifying whether an application is malicious |
JP2014235745A (ja) * | 2013-05-30 | 2014-12-15 | トラスティア、リミテッドTrusteer Ltd. | ウィンドウのない状態での画面キャプチャを防止するための方法及びシステム |
JP2015503789A (ja) * | 2011-12-30 | 2015-02-02 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | ターゲットを絞ったセキュリティ・テストのための、コンピュータにより実施される方法、コンピュータ・プログラム製品、システム |
JP2015511047A (ja) * | 2012-03-19 | 2015-04-13 | クアルコム,インコーポレイテッド | マルウェアを検出するコンピューティングデバイス |
JP2015531508A (ja) * | 2012-09-06 | 2015-11-02 | トライアムファント, インコーポレイテッド | コンピュータネットワークにおける自動化メモリおよびスレッド実行異常検出のためのシステムおよび方法 |
CN105512556A (zh) * | 2015-11-27 | 2016-04-20 | 浪潮(北京)电子信息产业有限公司 | 一种恶意软件处理方法及装置 |
JP2017500668A (ja) * | 2013-12-27 | 2017-01-05 | マカフィー, インコーポレイテッド | 悪意あるマルチメディアファイルを検出するシステム及び方法 |
JP2017527864A (ja) * | 2014-05-22 | 2017-09-21 | ソフトキャンプ カンパニー,リミテッド | パッチファイル分析システム及び分析方法 |
JPWO2021038780A1 (ja) * | 2019-08-29 | 2021-03-04 |
-
2009
- 2009-04-28 JP JP2009124674A patent/JP2010262609A/ja active Pending
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014504765A (ja) * | 2011-01-21 | 2014-02-24 | ファイヤアイ インク | 悪意あるpdfネットワークコンテンツを検出するシステムおよび方法 |
US9971897B2 (en) | 2011-12-30 | 2018-05-15 | International Business Machines Corporation | Targeted security testing |
US9971896B2 (en) | 2011-12-30 | 2018-05-15 | International Business Machines Corporation | Targeted security testing |
JP2015503789A (ja) * | 2011-12-30 | 2015-02-02 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | ターゲットを絞ったセキュリティ・テストのための、コンピュータにより実施される方法、コンピュータ・プログラム製品、システム |
JP2013168141A (ja) * | 2012-01-31 | 2013-08-29 | Trusteer Ltd | マルウェアの検出方法 |
US9973517B2 (en) | 2012-03-19 | 2018-05-15 | Qualcomm Incorporated | Computing device to detect malware |
US9832211B2 (en) | 2012-03-19 | 2017-11-28 | Qualcomm, Incorporated | Computing device to detect malware |
JP2015511047A (ja) * | 2012-03-19 | 2015-04-13 | クアルコム,インコーポレイテッド | マルウェアを検出するコンピューティングデバイス |
JP2015531508A (ja) * | 2012-09-06 | 2015-11-02 | トライアムファント, インコーポレイテッド | コンピュータネットワークにおける自動化メモリおよびスレッド実行異常検出のためのシステムおよび方法 |
US10169580B2 (en) | 2012-09-28 | 2019-01-01 | International Business Machines Corporation | Identifying whether an application is malicious |
WO2014049499A2 (en) * | 2012-09-28 | 2014-04-03 | International Business Machines Corporation | Identifying whether an application is malicious |
GB2519882B (en) * | 2012-09-28 | 2015-10-21 | Ibm | Identifying whether an application is malicious |
GB2519882A (en) * | 2012-09-28 | 2015-05-06 | Ibm | Identifying whether an application is malicious |
US11188645B2 (en) | 2012-09-28 | 2021-11-30 | International Business Machines Corporation | Identifying whether an application is malicious |
JP2015530673A (ja) * | 2012-09-28 | 2015-10-15 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | アプリケーションが悪意のあるものであるかどうかを識別するための方法、処理システム、およびコンピュータ・プログラム |
US10599843B2 (en) | 2012-09-28 | 2020-03-24 | International Business Machines Corporation | Identifying whether an application is malicious |
US8990940B2 (en) | 2012-09-28 | 2015-03-24 | International Business Machines Corporation | Identifying whether an application is malicious |
US8869274B2 (en) | 2012-09-28 | 2014-10-21 | International Business Machines Corporation | Identifying whether an application is malicious |
WO2014049499A3 (en) * | 2012-09-28 | 2014-05-22 | International Business Machines Corporation | Identifying whether an application is malicious |
JP2014235745A (ja) * | 2013-05-30 | 2014-12-15 | トラスティア、リミテッドTrusteer Ltd. | ウィンドウのない状態での画面キャプチャを防止するための方法及びシステム |
JP2017500668A (ja) * | 2013-12-27 | 2017-01-05 | マカフィー, インコーポレイテッド | 悪意あるマルチメディアファイルを検出するシステム及び方法 |
US10356108B2 (en) | 2013-12-27 | 2019-07-16 | Mcafee, Llc | System and method of detecting malicious multimedia files |
JP2017527864A (ja) * | 2014-05-22 | 2017-09-21 | ソフトキャンプ カンパニー,リミテッド | パッチファイル分析システム及び分析方法 |
CN105512556B (zh) * | 2015-11-27 | 2018-11-23 | 浪潮(北京)电子信息产业有限公司 | 一种恶意软件处理方法及装置 |
CN105512556A (zh) * | 2015-11-27 | 2016-04-20 | 浪潮(北京)电子信息产业有限公司 | 一种恶意软件处理方法及装置 |
JPWO2021038780A1 (ja) * | 2019-08-29 | 2021-03-04 | ||
WO2021038780A1 (ja) * | 2019-08-29 | 2021-03-04 | 日本電気株式会社 | バックドア検査装置、バックドア検査方法、及び非一時的なコンピュータ可読媒体 |
JP7276465B2 (ja) | 2019-08-29 | 2023-05-18 | 日本電気株式会社 | バックドア検査装置、バックドア検査方法、及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2010262609A (ja) | 効率的なマルウェアの動的解析手法 | |
US9779240B2 (en) | System and method for hypervisor-based security | |
KR101445634B1 (ko) | 프로그램의 취약점을 이용한 공격의 탐지 장치 및 방법 | |
US8719935B2 (en) | Mitigating false positives in malware detection | |
RU2531861C1 (ru) | Система и способ оценки вредоносности кода, исполняемого в адресном пространстве доверенного процесса | |
US9530001B2 (en) | System and method for below-operating system trapping and securing loading of code into memory | |
US9392016B2 (en) | System and method for below-operating system regulation and control of self-modifying code | |
JP6370747B2 (ja) | バーチャルマシーンモニタベースのアンチマルウェアセキュリティのためのシステム及び方法 | |
EP3039608B1 (en) | Hardware and software execution profiling | |
US8904537B2 (en) | Malware detection | |
US9330259B2 (en) | Malware discovery method and system | |
US9032525B2 (en) | System and method for below-operating system trapping of driver filter attachment | |
US20120255013A1 (en) | System and method for below-operating system modification of malicious code on an electronic device | |
US20120255014A1 (en) | System and method for below-operating system repair of related malware-infected threads and resources | |
US20070055711A1 (en) | Generic rootkit detector | |
US20100064367A1 (en) | Intrusion detection for computer programs | |
US8495741B1 (en) | Remediating malware infections through obfuscation | |
US20110219453A1 (en) | Security method and apparatus directed at removeable storage devices | |
RU2724790C1 (ru) | Система и способ формирования журнала при исполнении файла с уязвимостями в виртуальной машине | |
WO2004075060A1 (ja) | コンピュータウィルス検出装置 | |
JP2014056563A (ja) | デバッグイベントを用いた悪意のあるシェルコードの検知装置及び方法 | |
KR20110057297A (ko) | 악성 봇 동적 분석 시스템 및 방법 | |
US9342694B2 (en) | Security method and apparatus | |
KR20130078960A (ko) | 오피스 프로그램의 취약점을 이용한 악성코드의 행위기반 진단 및 차단방법 | |
Grover et al. | An Event-Driven, Inclusionary and Secure Approach to Kernel Integrity. |