(57)【要約】【課題】本発明の目的は完全にマルウェアプロセスを追跡することなくマルウェアに関連付けられた挙動を検出することができるシステムを提供することである。【解決手段】コンピュータシステムにおいて、所定の時間枠内で実行されたコンピュータシステム上の複数の活動が疑いのあるファイルのインストール中に監視される、疑いのあるマルウェアの挙動を検出する方法が提供される。監視された活動が記録され、監視／記録された活動がデータベースに格納されているマルウェアの挙動のパターンと比較される。不審なプログラムを検出すると、記録された監視された活動は適切なソフトウェア削除ツールにより実行される更なる分析のために提供される。【選択図】図１
2014038596.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータシステムにおいて、疑いのあるマルウェアの挙動を検出する方法であって、
ａ．疑いのあるファイルのインストールプロセス中に所与の時間枠内に実行された前記コンピュータシステム上の複数の活動を監視するステップと、
ｂ．前記監視された活動を記録するステップと、
ｃ．前記監視された、または、記録された活動をデータベースに格納されたマルウェアの挙動パターンと比較するステップと、
ｄ．不審なプログラムを検出した際に、適切なソフトウェア削除ツールにより実行される更なる分析のために前記記録された監視された活動を提供するステップと、
を備える方法。
【請求項２】
前記活動は少なくとも１つのローカル・コンピュータ・システム活動を含む請求項１に記載の方法。
【請求項３】
前記活動は少なくとも１つのネットワーク活動を含む請求項１に記載の方法。
【請求項４】
前記記録された監視された活動を対応する正規化されたアクションに正規化するステップをさらに備える請求項１に記載の方法。
【請求項５】
各正規化された活動を対応するマルウェアの挙動パターンにマッピングするステップをさらに備える請求項１に記載の方法。
【請求項６】
マルウェアの挙動の解析を実行するためのコンピュータシステムにおける方法であって、
ｃ．前記コンピュータシステム上で疑いのあるマルウェアの感染前に、時間枠内に実行された監視された活動を受信するステップと、
ｄ．前記監視された活動を、データベースに格納されたマルウェアの挙動のパターンと比較し、疑わしいものとして類似の活動にタグ付けするステップと、
を備える方法。
【請求項７】
疑わしいものとしてタグ付けされた前記活動のそれぞれにマルウェア状態を割り当てるステップをさらに備える請求項６に記載の方法。
【請求項８】
疑わしいものとしてタグ付けされた前記活動を分析のために提供するステップをさらに備える請求項６に記載の方法。
【請求項９】
コンピュータ可読媒体であって、その内容がコンピューティングシステムに、
ｃ．時間限定スナップショットの間に複数の活動を監視し、時間限定スナップショットは時間枠内に実行された前記監視された活動を含み、
ｄ．疑いのあるマルウェアの挙動の通知に応じて、前記監視された活動を記録する、
ことを可能にするコンピュータ可読媒体であって、
疑いのあるマルウェア感染の前記通知はマルウェア対策ソフトウェアにより提供される、
コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はインターネットセキュリティの分野に関する。より詳細には、本発明はより安全なブラウジングを提供し、オンライン上での機密情報の窃盗を防止するための方法に関する。
【背景技術】
【０００２】
Ｗｅｂブラウザはパーソナルコンピュータ上で最も頻繁に使用されるアプリケーションになってきており、銀行取引やショッピング取引などのユーザの機密データがＷｅｂブラウザを介して入力されることが増えてきているので、悪意のある攻撃はますますＷｅｂブラウザに焦点を当てるようになっている。ターゲットとなるコンピュータシステム上に継続的に存在する悪意のあるブラウザ拡張機能のような、悪意のあるコードをインストールすることができる悪意のある攻撃がますます増えている。コンピュータシステム上に継続的に存在する悪意のあるブラウザ拡張機能に関しては、一般的に悪意のある拡張機能がディスク上に継続的に存在するように悪意のあるファイルが作成され、オペレーティングシステムにブラウザ拡張機能が登録されていることをＷｅｂブラウザに通知するために、悪意のあるブラウザ拡張機能に関連付けられているレジストリエントリが作成される。
【０００３】
したがって、例えば、ユーザがＷｅｂページのフォームフィールドにユーザ機密データを入力し、悪意のあるブラウザ拡張機能がＷｅｂブラウザ上に存在する場合、悪意のあるブラウザ拡張機能がイベントを受信したときに、悪意のあるブラウザ拡張機能は潜在的にイベントの内容にアクセスして変更する能力を有する。例えば、悪意のあるブラウザは、イベントのポストデータパラメータで銀行口座のルーティング番号などのユーザ機密データをコピーまたは変更することができため、ユーザ機密データが漏洩してしまう。
【０００４】
継続的に存在するマルウェアで採用されている一つの方法は、システムレジストリを操作して再起動後に確実に実行されるようにすることである（つまり、再起動後生存）。Ｗｉｎｄｏｗｓレジストリは、ユーザ、アプリケーション、およびデバイスの構成情報を格納するためにオペレーティングシステムによって管理される中央階層型データベースである。マルウェアはレジストリを操作する必要があるが、これはブート時にプロセスの実行を開始するための主要な方法であるためである。例えば、コンピュータの起動時にＷｉｎｄｏｗｓ（登録商標）ＯＳはスタートアップキー取得し、どのようなプロセスであっても記述されているものをロードする。このように、マルウェアはブート時にロードされることを確実にするためにしばしばレジストリを操作する。マルウェアの存続期間はレジストリ内のレジストリキーに依存するため、そのレジストリキーが変更または移動されないようにするために長大な値となる。マルウェアはアプリケーション・プロセス・リストに表示されないように身を隠す可能性があり、再起動プロセス中にファイル名、レジストリキー、またはキーの値を変更する場合もある。また、マルウェアは継続的にレジストリのレジストリキーを書き換えることにより除去されることを防ぐ試みをするかもしれない。これらの戦術はウイルス対策ソフトウェアに難題をもたらし、これらの相互依存関係を考慮せずに単にレジストリキーを削除する現在利用可能な技術では検出されずにいることが可能である。
【０００５】
通常、ブラウザではダウンロードする前に実行可能ファイルのデジタル署名をチェックしない。これら実行可能ファイルがダウンロードされていてもブラウザはそれらを実行しない。しかしながら、ブラウザに別の方法で実行可能ファイルをダウンロードすることを可能にするブラウザのエクスプロイト（ブラウザの脆弱性を利用した結果としてブラウザ内でネイティブコードを実行しようとする悪意のあるページにブラウザを誘導する攻撃）などの脆弱性ポイントを介して動作する種類のマルウェアがある。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
したがって、本発明の目的は、完全にマルウェアプロセスを追跡することなくマルウェアに関連付けられた挙動を検出することができるシステムを提供することである。
【０００７】
本発明の別の目的は、誤検出の確率が低い状態で、マルウェアに関連付けられた挙動を検出することができるシステムを提供することである。
【０００８】
本発明の他の目的および利点は説明が進むにつれて明らかになるであろう。
【課題を解決するための手段】
【０００９】
本発明は、不審なファイルのインストールプロセス中にコンピュータシステム上で所与の時間枠内に実行された複数の活動が監視されることにより、疑いのあるマルウェアの挙動を検出するための方法を対象とする。監視された活動が記録され、監視または記録された活動がデータベースに格納されているマルウェアの挙動パターンと比較される。不審なプログラムを検出すると、記録された監視された活動が適切なソフトウェア削除ツールによって実行される更なる分析のために提供される。
【００１０】
活動は少なくとも１つのローカル・コンピュータ・システムの活動または少なくとも１つのネットワーク活動を含んでいてもよい。
【００１１】
記録後の監視された活動は対応する正規化されたアクションに正規化されてもよい。各正規化された活動は対応するマルウェアの挙動パターンにマッピングされてもよい。
【００１２】
本発明はまた、以下の両ステップを備えるマルウェアの挙動分析を実行するための方法を対象とする。
【００１３】
ａ．コンピュータシステム上での疑いのあるマルウェア感染に先立って、時間枠内に実行された監視された活動を受信するステップ
ｂ．監視された活動と、疑わしいものとしてデータベースに保存されているマルウェアの挙動パターンとを比較して、類似の活動にタグ付けするステップ。
【００１４】
マルウェアの状態は、疑わしいものとしてタグ付けされた各活動に割り当てられてもよい。疑わしいものとしてタグ付けされた活動は分析のために提供されてもよい。
【００１５】
本発明はまた、コンピュータ可読媒体であって、その内容によってコンピューティングシステムが以下の両動作を行うことが可能になるコンピュータ可読媒体を対象とする。
【００１６】
ａ．時間限定スナップショット中に複数の活動を監視する。時間限定スナップショットは時間枠内に実行された監視された活動を含む。
ｂ．疑いのあるマルウェアの挙動の通知に応じて、監視活動を記録する。このとき、疑いのあるマルウェア感染の通知はマルウェア対策ソフトウェアによって提供される。
【図面の簡単な説明】
【００１７】
【図１】本発明の方法を一般的に示すフローチャートである。
【発明を実施するための形態】
【００１８】
本発明のいくつかの実施形態について、添付の図面に示される実施例とともに説明する。実施可能な限りにおいて、類似または同様の参照番号は図面内で使用されてもよく、類似または同様の機能を示していてもよい。図面は例示目的でのみ本発明の実施形態を示している。当業者であれば、本明細書に示された構造および方法の代替的な実施形態を本明細書に記載された本発明の原理から逸脱することなく用いることができることが以下の説明から理解されよう。
【００１９】
特に断らない限り、本明細書に記載の機能がコンピュータ可読媒体に格納された実行可能なコードおよび命令により実行され、１つ以上のプロセッサベースのシステム上で動作してもよい。ただし、ステートマシン、および／または配線接続された電子回路を利用することもできる。さらに、本明細書に記載されたプロセスの例に関して、すべてのプロセスの状態に達する必要はなく、また状態は図示の順序で実行されなければならないものではない。
【００２０】
様々な用語が説明および請求の範囲全体を通して使用されるが、これらは、一般的なコンピュータプログラミングに関する理解を有する者にとっては従来どおりの意味を持つ用語である。他の用語はマルチスレッドプログラミングおよびＷｉｎｄｏｗｓオペレーティングシステム（ＯＳ）に特により精通している者にとっては、おそらくより身近なものであろう。さらに、種々の説明用語は例示的な実施形態を説明する際にそれらの説明を容易にし、理解を助けるために使用される。しかしながら、以下の説明では特定のコンピューティングまたはプログラミング環境に、または様々な実施形態それ自体に合わせておそらく調整されている用語を伴うかもしれないが、当業者はそのような用語は説明的な意味で用いられており限定的な意味で用いられていないことを理解するであろう。用語の限定された意味が意図される場合、その意味は明示的に示されるか、そうでなければ開示内容から明白になるであろう。
【００２１】
同様に、特定の例としてパーソナルコンピュータ（ＰＣ）システムを参照してもよいが、他のコンピュータまたは電子システム同様に使用することができる。他のコンピュータまたは電子システムの例としては、ネットワーク対応のパーソナル・デジタル・アシスタント（ＰＤＡ）やスマートフォンなどが挙げられるが、これらに限定されない。
【００２２】
本明細書において、「マルウェア」という用語は、コンピュータユーザにとって有害である任意のプログラムまたはファイル（ウイルス、ワーム、トロイの木馬）のほか、許可なくコンピュータユーザに関する情報を収集するプログラムを指す。さらに本明細書では、悪意のある活動とは悪意のあるコードの実行に起因する任意の活動である。本発明による実施形態はマルウェアのインストールの企てを検出する。このようなイベントが検出された場合、本発明のシステムにより、そのソフトウェアコードがマルウェアであるかどうかが判定される。
【００２３】
本発明はターゲットマシン上で以前に遭遇したことのない新しいバイナリおよび／または実行可能ファイルのなかでマルウェア挙動の自動検出を提供する方法およびシステムに関する。いくつかの実施形態では、マルウェア検出システムはデスクトップコンピュータシステム、サーバ等のコンピュータシステムまたは装置上で実行され、マルウェアのインストールに繋がる一般的なオペレーティングシステムおよびネットワーク活動を監視する。疑いのあるマルウェアの挙動を検出するために、マルウェア検出システムは分析のために、疑いのあるファイルやプログラムの実行中に指定された時間枠内に行われた活動の「スナップショット」を提供する。例えば、マルウェア検出システムは疑いのあるプログラムのインストールを完了する前に監視活動（例えば、ローカルシステム活動、ネットワーク活動など）の最初の１０秒間のスナップショットを提供することができる。一般的に、監視は、デジタル署名なしの実行可能ファイルやファイルサイズが１ＭＢを超える実行可能ファイル（一般的に、正規のソフトウェアのファイルサイズは１ＭＢ未満）など、いくつかの基本的な判定基準のサブセット上で行われる。また、比較的長い時間枠の間であると、正規のインストールは検査された実行可能ファイルのインストールに並行して実行され（例えば、ブラウザが正規のＤＬＬをインストールしているかもしれない）、不審な兆候を生成することがあり、識別することが困難になるので、時間枠は長過ぎないようにすべきである。
【００２４】
本発明の一実施形態によれば、マルウェア検出システムは活動のスナップショットを提供することができる。あるいは、システムは新しいバイナリの実行後に不審なイベントを監視し、その実行をブロック（スナップショットなし）し、または不審であるとしリモートデータベースにフラグを立ててもよい。そのような時間枠の間に、正規の製品（セキュリティ製品など）に関連付けられていないパッチなどの活動（この場合、フローをハイジャックし潜在的にランタイムでこれらの機能の動作を変更するために様々なプロセス機能に配置されたフック）またはセキュリティイベントは、不審なシステム活動に関する兆候を取得するために監視される。
【００２５】
監視活動はその後、実行可能ファイルがマルウェアであるかどうかを判定するために分析することができる。ファイルがマルウェアであると判定する材料となる活動およびファイルのプロパティは、例えば、どのオペレーティング・システム・オブジェクトが操作されたのか、ファイルのサイズ、ファイルの署名（存在する場合）などを含んでいてもよい。
【００２６】
いくつかの実施形態では、マルウェア検出システムは疑いのある実行可能ファイルのインストール時の最初の数秒間に指定された時間枠内に行われた活動を監視する。必要に応じて、ユーザが手動で特定のプログラムが脅威であるかどうかを判断するために分析結果を使用することができる。
【００２７】
いくつかの実施形態では、マルウェア検出システムは、中央自己学習マルウェアシステムを生成するのを手助けするために監視活動を正規化して分類するマルウェアの状態モデルを適用してもよい。例えば、中央マルウェア検出システムは定期的な活動を見つけるために正規化された活動（予想される変化の定義されたセットに対して安定である活動）に共通性分析（マシンまたはシステム内の活動間の類似度の解析）を行ってもよい。一度マルウェア検知システムが異なるコンピュータシステム内の別のキャプチャされた時間枠の活動間にある共通性が何であるかを発見すると、中央システムはいくつかの感染したコンピュータシステムのそれぞれが感染する前に同じＷｅｂサイトを訪問していたことを示してもよい。ここで、マルウェア検出システムはこのＷｅｂサイトが感染したコンピュータシステムのそれぞれにマルウェアを提供した可能性が最も高いと判定してもよく、またこのＷｅｂサイトを「ブロック」してもよい。
【００２８】
本発明の態様を実施する際に使用するための代表的なコンピューティング環境は図１への最初の参照で理解できる。代表的なコンピューティング環境が記載された教示に従ってアプリケーションを実行するために汎用コンピュータシステムを利用してもよい。
【００２９】
図１は本発明の一実施形態によるマルウェア検出システム１０の選択された構成要素をブロック図形式で示す。マルウェア検出システム１０はコンピュータシステム１（例えば、ＰＣ）内に少なくとも部分的に存在し、活動監視部１１、マルウェア挙動データベース１２を備える。当業者はマルウェア検出システム１０が他の方法で配置されてもよいことを理解するであろう。例えば、リモートでの実行システム活動監視はネットワーク装置などの特定の種類のコンピュータシステム上での活動をリモートで監視してもよい。
【００３０】
本実施形態においては、活動監視１１は疑いのあるファイルやプログラムの初期インストール活動の事前定義された時間枠の間に、ファイルシステムへの変更、構成（レジストリ）、ネットワーク活動、共通のアプリケーション・プログラム・インターフェース（ＡＰＩ）の使用、または他のオペレーティング・システム・オブジェクトのためのオペレーティング・システム・リソースのランタイム監視機能を提供する。活動監視部１１は、例として、ローカル・デスクトップ・オペレーティング・システムなどのコンピュータシステム１上で実行され活動を監視してもよい。実行中に、活動監視部１１はメモリ内や物理媒体上にあってもよく、または他の論理データ記憶であってもよい、データ記憶内に監視活動を記録する。活動監視１１は、例として、実行可能ファイルのプロパティ（例えば、ファイルサイズ、ファイル署名等）、監視活動に関与したオペレーティング・システム・オブジェクト（例えば、ファイル名、ソケット、ＩＰアドレス、論理パス等）、変更の詳細、変更の源（例えば、プロセスＩＤ、変更を作るために使用されるＡＰＩ呼び出し等）などの事前に定義された時間枠の間に発生したインストール活動に関する情報を記録するように構成してもよい。活動監視１１は疑いのあるプログラムのインストール中に発生した活動の時間限定スナップショットを作成し提供する。
【００３１】
システム１０はシステム活動監視部１１によって提供される監視活動を処理する。いくつかの実施形態では、システム１０は監視活動を、感染前の活動の参照としてデータベース１２に格納されているマルウェアのパターンと比較する。マルウェア状態モデルは複数の異なるマルウェア状態を備えていてもよく、システム１０はスナップショットの各活動を知的な方法でマルウェア状態にマッピングしてもよい。監視活動を格納されているマルウェアの状態と比較すると、マルウェアとしてプログラムを定義するイベントの順序を判定しやすくなる。
【００３２】
いくつかの実施形態によれば、システム１０はそれぞれの特定のコンピュータシステムから中央の分析システム（図示せず）に監視活動を提供する。中央の分析システムは同じマルウェアの挙動に関連するかもしれない活動を区別するために監視活動を比較する。いくつかの実施形態では、すべての比較に際し、中央システムは、複数のコンピュータシステムから得られた監視活動の比較を行う際に、類似の活動（すなわち、重複）を所与のまたは指定されたマルウェア状態である「疑わしい」ものとして、さらに、類似ではない活動やイベントを「潜在的に正規」としてラベルやタグを付ける。潜在的に正規とタグ付けされた活動は後でフィルタリングすることができる。中央のシステムはその処理の結果を他のローカルマルウェア検出システムに提供してもよい。
【００３３】
活動監視１１はオペレーティングシステムおよび／またはネットワーク活動を監視するための様々な周知の監視技術のいずれかを使用してもよいランタイムプロセスとして実行してもよい。いくつかの実施形態によれば、活動監視１１はコンピュータシステム１上のまたはコンピュータシステム１に関する所定の活動を監視する。必要に応じて、活動監視１１は監視された活動を記録する。一実施形態では、活動監視１１はメモリまたは他の論理データ記憶内の順次型または循環型のデータ記憶内に活動を記録してもよい。それに応じて、システム１０は疑いのあるマルウェアの挙動の通知を受けたか否かを判定する。通知が受信されない場合は、活動監視１１は新しいファイルが実行される（すなわち、新規インストールを開始する）まで待機する。疑いのあるマルウェアの挙動の通知を受信した場合には、その後、システム１０はユーザまたは任意の利用可能なウイルス対策ソフトウェアに通知してもよい。時間枠（例えば、Ｘ秒）内に含める監視活動の量は、システム１０に関連付けられたポリシーで管理者が指定してもよい。
【００３４】
セキュリティアプリケーションはアプリケーションまたはオペレーティングシステムから呼び出されることが可能であるべきである。監視された時間枠の間に、不審な活動に関する兆候を取得するためにファイアウォールなどの一般的な保護用ツールを使用することも可能である。例えば、ファイアウォールは、ユーザが任意の対応するアクションを起こさなくても、ブラウザが未知のＷｅｂサイトを訪問しようとしたというアラートをユーザに送信してもよい。
【００３５】
本発明のいくつかの実施形態を例示のために説明してきたが、本発明は、当業者の範囲内にある多数の等価物または代替的解決策を使用して、本発明の趣旨から逸脱することまたは特許請求の範囲を超えることなく、多くの変更、変形および改変を加えても実施できることは明らかであろう。
【図１】
2014038596.tif 000003
【外国語明細書】
2014038596000001.pdf