(57)【要約】      （修正有）【課題】マルウェアにより引き起こされた変更を軽減する通信システム及び方法を提供する。【解決手段】方法は、通信システムにおいてマルウェアの実行を可能にし、マルウェアの実行によって引き起こされたシステムへの変更を記録し、電子デバイスにおけるマルウェアの検知のための検知タスクを生成する電子デバイスを提供する。検知タスクは、少なくとも部分的に、マルウェアの実行によって引き起こされたシステムへの変更に基づく。検知タスクは、感染した電子デバイスを識別するようにおよびマルウェアによって引き起こされた、感染した電子デバイスへの変更を軽減する軽減タスクを生成する。【選択図】図４
2020113290.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのプロセッサに、
電子デバイスのマルウェア被疑サンプルを分析すること、
前記マルウェア被疑サンプルのマルウェアパターン挙動を生成すること、
前記電子デバイスから、前記マルウェア被疑サンプルに関連するデータを収集するための検知タスクを生成すること、
前記マルウェア被疑サンプルをマルウェアとして識別すること、
前記マルウェア被疑サンプルをマルウェアとして識別することに基づき、前記マルウェアにより引き起こされた変更を軽減する軽減タスクを作成すること、
前記電子デバイスに、前記軽減タスクをサンドボックス、回復環境において、または、二次オペレーティングシステムを用いて実行することを促すこと、を実行させるための、コンピュータプログラム。
【請求項２】
前記検知タスクは、前記マルウェアのパターンマッチング、グローバルレピュテーション分析、プログラムエミュレーション、静的分析および動的分析のうち１または複数に基づき作成される、請求項１に記載のコンピュータプログラム。
【請求項３】
前記少なくとも１つのプロセッサに、さらに、
前記マルウェアに関連するマルウェアファミリーを識別することを実行させるためのコンピュータプログラムであって、
前記マルウェアファミリーはファミリー挙動を含み、前記検知タスクは部分的に前記ファミリー挙動に基づく、請求項１または２に記載のコンピュータプログラム。
【請求項４】
前記検知タスクは、部分的にジェネリックマルウェア挙動に基づく、請求項１から３のいずれか一項に記載のコンピュータプログラム。
【請求項５】
前記二次オペレーティングシステムは、前記電子デバイスにブートディスクとしてプッシュされる、請求項１から４のいずれか一項に記載のコンピュータプログラム。
【請求項６】
前記少なくとも１つのプロセッサに、さらに、
前記電子デバイスから、前記軽減タスクの実行結果を受信すること、
前記軽減タスクの前記実行結果に基づき、前記電子デバイスがクリーンか否かを判断すること、および
前記電子デバイスがクリーンではないとの判断に基づき、フィードバックループにより、前記電子デバイスに対し、前記電子デバイスがクリーンになるまで、前記軽減タスクを前記サンドボックス、前記回復環境において、または、前記二次オペレーティングシステムを用いて再実行することを促すこと、を実行させるための、請求項１から５のいずれか一項に記載のコンピュータプログラム。
【請求項７】
命令を格納するよう動作可能なメモリ要素と、
前記命令を実行するよう動作可能なプロセッサと、を備える、電子デバイスであって、前記命令が実行されると、前記電子デバイスは、
前記電子デバイス上でマルウェア被疑サンプルを分析する、
前記マルウェア被疑サンプルのマルウェアパターン挙動を生成する、
前記マルウェア被疑サンプルに関連するデータを収集するための検知タスクを生成する、
前記マルウェア被疑サンプルにより、前記電子デバイスになされた変更を示す前記収集したデータに部分的に基づき、前記マルウェア被疑サンプルをマルウェアとして識別する、
前記マルウェア被疑サンプルをマルウェアとして識別することに基づき、前記マルウェアにより引き起こされた変更を軽減する軽減タスクを作成する、
前記軽減タスクを、サンドボックス、回復環境において、または、二次オペレーティングシステム用いて実行する、ように構成される、電子デバイス。
【請求項８】
前記検知タスクは、前記マルウェアのパターンマッチング、グローバルレピュテーション分析、プログラムエミュレーション、静的分析および動的分析のうち１または複数に基づき作成される、請求項７に記載の電子デバイス。
【請求項９】
前記電子デバイスは、さらに
前記マルウェアに関連するマルウェアファミリーを識別するように構成され、前記マルウェアファミリーはファミリー挙動を含み、前記検知タスクは部分的に前記ファミリー挙動に基づく、請求項７または８に記載の電子デバイス。
【請求項１０】
前記検知タスクは、部分的にジェネリックマルウェア挙動に基づく、請求項７から９のいずれか一項に記載の電子デバイス。
【請求項１１】
前記二次オペレーティングシステムは、前記電子デバイスにブートディスクとしてプッシュされる、請求項７から１０のいずれか一項に記載の電子デバイス。
【請求項１２】
前記電子デバイスは、さらに
前記電子デバイスがクリーンではないことを示す前記軽減タスクの実行結果に基づき、フィードバックループにより、前記軽減タスクを再実行するためのプロンプトを受信する、
前記電子デバイスがクリーンになるまで、前記軽減タスクを前記サンドボックス、前記回復環境において、または、前記二次オペレーティングシステムを用いて再実行する、ように構成される、請求項７から１１のいずれか一項に記載の電子デバイス。
【請求項１３】
電子デバイスのマルウェア被疑サンプルを分析する段階と、
前記マルウェア被疑サンプルのマルウェアパターン挙動を生成する段階と、
前記マルウェア被疑サンプルに関連するデータを収集するための検知タスクを生成する段階と、
前記マルウェア被疑サンプルによって前記電子デバイスに対しなされた変更を示す前記収集したデータに部分的に基づき、前記マルウェア被疑サンプルをマルウェアとして識別する段階と、
前記マルウェア被疑サンプルをマルウェアとして識別することに基づき、前記マルウェアによって引き起こされた変更を軽減する軽減タスクを作成する段階と、
前記軽減タスクを、サンドボックス、回復環境において、または、二次オペレーティングシステムを用いて実行する段階と、を備える、方法。
【請求項１４】
前記検知タスクは、前記マルウェアのパターンマッチング、グローバルレピュテーション分析、プログラムエミュレーション、静的分析および動的分析のうち１または複数に基づき作成される、請求項１３に記載の方法。
【請求項１５】
前記マルウェアに関連するマルウェアファミリーを識別する段階をさらに備え、
前記マルウェアファミリーはファミリー挙動を含み、前記検知タスクは部分的に前記ファミリー挙動に基づく、請求項１３または１４に記載の方法。
【請求項１６】
前記検知タスクは、部分的にジェネリックマルウェア挙動に基づく、請求項１３から１５のいずれか一項に記載の方法。
【請求項１７】
前記二次オペレーティングシステムは、前記電子デバイスにブートディスクとしてプッシュされる、請求項１３から１６のいずれか一項に記載の方法。
【請求項１８】
前記軽減タスクの実行結果に基づき、前記電子デバイスがクリーンか否かを判断する段階と、
前記電子デバイスがクリーンではないとの判断に基づき、前記電子デバイスがクリーンになるまで、前記軽減タスクを、前記サンドボックス、前記回復環境において、または、前記二次オペレーティングシステムを用いて再実行する段階と、をさらに備える、請求項１３から１７のいずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願への相互参照］
本出願は、２０１５年６月２７日に出願された、「マルウェアの軽減」と題されたインド特許出願第３２４７／ＣＨＥ／２０１５号の利益および優先権を主張し、それはその全体において参照によって本明細書に組み込まれる。
【０００２】
本開示は、概して、情報セキュリティの分野に関し、より具体的には、マルウェアの軽減に関する。
【背景技術】
【０００３】
今日の社会において、ネットワークセキュリティの分野はますます重要となってきている。インターネットは、世界中の異なるコンピュータネットワークの相互接続を可能にしている。特に、インターネットは、様々なタイプのクライアントデバイスを介して、異なるコンピュータネットワークに接続された異なるユーザの間でデータを交換するための媒体を提供する。インターネットの使用が企業のコミュニケーションおよび個人のコミュニケーションを変えた一方、それは、また、悪意のある操作者がコンピュータおよびコンピュータネットワークへの不正アクセスを得るための、および、機密情報の意図的なまたは不注意による開示のための、手段として用いられている。
【０００４】
ホストコンピュータに感染する、悪意のあるソフトウェア（「マルウェア」）は、ホストコンピュータと関連づけられた企業または個人から機密情報を盗取する、他のホストコンピュータに伝播する、および／または、分散型サービス妨害攻撃を支援する、ホストコンピュータからのスパムまたは悪意のあるｅメールを送信する、などの、任意の数の悪意のある動作を実行することが可能であり得る。従って、コンピュータおよびコンピュータネットワークを、悪意のあるソフトウェアによる、悪意のある、および不注意なエクスプロイトから保護するための、著しい管理課題が残っている。
【図面の簡単な説明】
【０００５】
本開示のより完全な理解、ならびにその特徴および利点を提供するように、添付の図面と共に用いられる以下の説明が参照される。同様の参照符号は同様の部分を表す。
【０００６】
【図１Ａ】本開示の一実施形態による、マルウェアの軽減のための通信システムの簡略ブロック図である。
【０００７】
【図１Ｂ】本開示の一実施形態による、マルウェアの軽減のための通信システムの簡略ブロック図である。
【０００８】
【図１Ｃ】本開示の一実施形態による、マルウェアの軽減のための通信システムの簡略ブロック図である。
【０００９】
【図２】本開示の一実施形態による、マルウェアの軽減のための通信システムの一部の簡略ブロック図である。
【００１０】
【図３】本開示の一実施形態による、マルウェアの軽減のための通信システムの例示的な詳細の簡略図である。
【００１１】
【図４】一実施形態による通信システムに関連づけられ得る、潜在的な操作を示す簡略フローチャートである。
【００１２】
【図５】一実施形態による通信システムに関連づけられ得る、潜在的な操作を示す簡略フローチャートである。
【００１３】
【図６】一実施形態によるポイントツーポイント構成に配置された、例示的なコンピューティングシステムを示すブロック図である。
【００１４】
【図７】本開示の例示的なＡＲＭエコシステム・システムオンチップ（ＳｏＣ）に関連づけられる、簡略ブロック図である。
【００１５】
【図８】一実施形態による例示的なプロセッサコアを示すブロック図である。
【００１６】
図面は、それらの寸法が本開示の範囲から大幅に逸脱することなく変わり得るので、必ずしも縮尺通りに描かれてはいない。
【発明を実施するための形態】
【００１７】
［例示的な実施形態］
図１Ａは、本開示の一実施形態による、マルウェアの軽減のための通信システム１００ａの簡略ブロック図である。通信システム１００ａは、電子デバイス１０２ａ、クラウドサービス１０４、およびサーバ１０６を含み得る。電子デバイス１０２ａは、プロセッサ１１０、メモリ１１２、オペレーティングシステム１１４、サンドボックス１１６、およびセキュリティモジュール１１８を含み得る。セキュリティモジュール１１８は、マルウェア検知モジュール１２０、マルウェア軽減モジュール１２２、およびマルウェアパターン挙動１２４を含み得る。マルウェア検知モジュール１２０は、分析ログ１２６を含み得る。マルウェア軽減モジュール１２２は、リバースマルウェア挙動動作１２８を含み得る。クラウドサービス１０４およびサーバ１０６は、ネットワークセキュリティモジュール１３０をそれぞれ含み得る。ネットワークセキュリティモジュール１３０は、パターン挙動生成モジュール１３２およびマルウェアパターン挙動１２４を含み得る。電子デバイス１０２ａと、クラウドサービス１０４と、サーバ１０６とは、各々、ネットワーク１０８を用いて通信し得る。
【００１８】
図１Ｂに移ると、図１Ｂは、本開示の一実施形態による、マルウェアの軽減のための通信システム１００ｂの簡略ブロック図である。通信システム１００ｂは、電子デバイス１０２ｂ、クラウドサービス１０４、およびサーバ１０６を含み得る。電子デバイス１０２ｂは、プロセッサ１１０、メモリ１１２、オペレーティングシステム１１４、セキュリティモジュール１１８、および回復環境１３６を含み得る。電子デバイス１０２ｂと、クラウドサービス１０４と、サーバ１０６とは、各々、ネットワーク１０８を用いて通信し得る。
【００１９】
図１Ｃに移ると、図１Ｃは、本開示の一実施形態による、マルウェアの軽減のための通信システム１００ｃの簡略ブロック図である。通信システム１００ｃは、電子デバイス１０２ｃ、クラウドサービス１０４、およびサーバ１０６を含み得る。電子デバイス１０２ｃは、プロセッサ１１０、メモリ１１２、オペレーティングシステム１１４、セキュリティモジュール１１８、および二次オペレーティングシステム１３８を含み得る。電子デバイス１０２ｃと、クラウドサービス１０４と、サーバ１０６とは、各々、ネットワーク１０８を用いて通信し得る。
【００２０】
例示的な実施形態において、通信システム１００ａ−１００ｃは、悪意のあるアプリケーションの挙動を詳細に研究するように構成され得る。悪意のあるアプリケーションの挙動の知見は、したがって、電子デバイスをリイメージ（ｒｅ−ｉｍａｇｅ）する必要なしに、感染した電子デバイスを識別し、および、電子デバイス上のマルウェアの影響を修復または軽減するように用いられ得る。例えば、通信システム１００ａ−１００ｃは、マルウェアサンプルによる感染である感染させられた機械を修復するように、マルウェアサンプルの動的分析を用いるように構成され得る。修復または軽減は、反復マルチステージアプローチを用いることを含み得る。一例において、回復環境は、軽減の最中にマルウェアによって用いられる回避技術をバイパスするように用いられ得る。別の例において、マルウェアに関する挙動知見、マルウェアが属するマルウェアのファミリーに関する挙動知見、ならびに、サンプルおよびジェネリックのマルウェア挙動が、マルウェアの検知およびマルウェアに感染した機械の修復のために用いられ得る。マルウェアサンプルの動的分析を用いることは、従来のアンチウイルスソフトウェアによって検知し得ないマルウェアを検知し、マルウェアからの修復を行う能力を可能にし得る。加えて、マルウェアは、感染した電子デバイスをリイメージする必要なしに修復され得、典型的にはリイメージから生じる、データのいくつかの損失を阻止し得る。
【００２１】
図１Ａから図１Ｃの複数の要素は、任意の好適な（有線または無線）接続を用いる１または複数のインタフェースを通じて互いに結合され得、それはネットワーク（例えば、ネットワーク１０８）通信のための実行可能な経路を提供する。加えて、図１Ａから図１Ｃのこれらの複数の要素の任意の１または複数は、特定の構成の必要性に基づいて、組み合わされ得、または、アーキテクチャから取り除かれ得る。通信システム１００ａ−１００ｃは、各々、ネットワークにおけるパケットの送信または受信のための、伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）通信が可能な構成を含み得る。通信システム１００ａ−１００ｃは、必要に応じて、および特定の必要性に基づいて、ユーザデータグラムプロトコル／ＩＰ（ＵＤＰ／ＩＰ）または任意の他の好適なプロトコルと共に、また動作し得る。
【００２２】
通信システム１００ａ−１００ｃの特定の例の技術を示す目的で、ネットワーク環境をトラバースし得る通信を理解することが重要である。以下の基礎的情報は、本開示が適切に説明され得る根拠とみなされ得る。
【００２３】
大抵の企ては、ハードディスク全体を再フォーマットし、電子デバイスをリイメージすることによって、マルウェアに感染した電子デバイスを修復する。これは、不便なプロセスであり、電子デバイスを非生産的にするだけでなく、また、リイメージの前にバックアップされていないデータを削除することによって、電子デバイス上でデータ損失を生じさせる。現在、マルウェアは検知および修復を回避するように様々な技術を用いるので、リイメージは、非常にわずかな、確かなマルウェア削除技術の１つである。現在普及した検知テクノロジーを用いると、感染した電子デバイス上の悪意のあるファイルの存在から修復することが困難であるだけでなく、そもそもホストが感染しているかどうか識別することもまた非常に困難である。必要とされることは、電子デバイスをリイメージする必要なしに、感染した電子デバイス上のマルウェアを軽減し、またはマルウェアから修復し得るシステムおよび方法である。
【００２４】
図１Ａから図１Ｃに概説されるような、マルウェアの軽減のための通信システムが、これらの（および他の）課題を解決し得る。通信システム１００ａ−１００ｃは、挙動分析技術を用いて、マルウェア被疑サンプルを分析するように構成され得る。例えば、パターン挙動生成モジュール１３２は、挙動分析技術を用いて、マルウェア被疑サンプルを分析するように構成され得る。技術は、パターンマッチング、グローバルレピュテーション、プログラムエミュレーション、静的分析、動的分析、または何らかの他の挙動分析技術のうち１または複数の組み合わせの使用を含み得る。ひとたびマルウェア被疑サンプルが分析されたならば、システムは、分析に基づいてマルウェアのマルウェアパターン挙動（例えば、マルウェアパターン挙動１２４）を生成するように構成され得る。マルウェアパターン挙動は、分析によって捕らえられたときのマルウェアによって用いられる様々な回避技術および難読化技術を含み得る。マルウェアパターン挙動は、特定のマルウェアサンプル挙動の指標であり得る。
【００２５】
サンプル挙動に基づいて、典型的なマルウェアファミリーの挙動知見が、サンプル挙動に関連づけられたマルウェアファミリーを識別するように用いられ得る。知られている、および新しいマルウェアファミリーの調査および分析の結果として、識別されたマルウェアファミリーに特有の一組の挙動パターンが、ファミリー挙動として生成され得る。大抵のマルウェアは、善意の、または良性のソフトウェアによっては示されない挙動パターンをとる。調査および分析の結果として、概してマルウェアによって示された一組の挙動パターンが、ジェネリックマルウェア挙動として作成され得る。特定のマルウェアサンプル挙動、ファミリー挙動、およびジェネリックマルウェア挙動は、マルウェアパターン挙動１２４に組み合わせられ得る。
【００２６】
サンプル挙動、ファミリー挙動、およびジェネリックマルウェア挙動の複数の要素は、マルウェア検知モジュール１２０の中に組み合わせられ得、マルウェアを識別するように分析ログ１２６と比較され得る。分析ログ１２６は、マルウェアに感染した疑いのあるシステム上のアクティビティのログであり得る。加えて、関連する環境詳細、ファイルシステム、およびレジストリ情報、ならびに、電子デバイスの中の感染および回避の指標を収集するために実行されるように構成され得る検知タスクを生成するように、サンプル挙動、ファミリー挙動、およびジェネリックマルウェア挙動の複数の要素が、マルウェア軽減モジュール１２２の中で組み合わせられ得る。マルウェア軽減モジュール１２２へのフィードバックループは、感染した電子デバイス上の感染の検知および修復のための更なる特定のタスクを生成するために、検知タスクの結果を分析するように用いられ得る。これらのタスクの結果は、実行のための更なるタスクを生成し得るマルウェア軽減モジュール１２２に、改めてフィードバックされ得る。動作のこのシーケンスは、マルウェア軽減モジュール１２２が、サンプル挙動およびファミリー挙動によって明示される感染から電子デバイスがクリーンであると判断するまで、反復され得る。
【００２７】
マルウェアの検知回避能力を軽減するように、タスクは異なるプラットフォーム上で実行され得る。例えば、タスクはライブ（ｌｉｖｅ）オペレーティングシステム内で実行され得、それはマルウェアに感染し得、検知タスクまたは軽減タスクの正確さに支障をきたし得る。タスクは、検知タスクおよび軽減タスクに支障をきたし得るマルウェアによって感染する可能性をより低くする、回復環境１３６（例えば、Ｗｉｎｄｏｗｓ（登録商標）回復環境（ＲＥ））において実行され得る。タスクは、電子デバイス上で二次オペレーティングシステム１３８を用いて実行され得る。二次オペレーティングシステムは、ブートディスクとしてマウントされ得るファイルを用いて、電子デバイス上でプッシュされ得る。マルウェアは、二次オペレーティングシステム上で実行される軽減タスクと、最も支障をきたしそうにない。
【００２８】
図１Ａから図１Ｃのインフラストラクチャに移ると、例示的な実施形態による通信システム１００ａ−１００ｃが示される。概して、通信システム１００ａ−１００ｃは、任意の種類またはトポロジのネットワークにおいて実装され得る。ネットワーク１０８は、通信システム１００ａ−１００ｃを通じて伝播する情報のパケットを受信および送信する、相互結合された通信経路の一連のポイントまたはノードを示す。ネットワーク１０８は、ノード間の通信インタフェースを提供し、任意のローカルエリアネットワーク（ＬＡＮ）、仮想ローカルエリアネットワーク（ＶＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、無線ローカルエリアネットワーク（ＷＬＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、イントラネット、エクストラネット、仮想プライベートネットワーク（ＶＰＮ）、および、ネットワーク環境において通信を容易にする任意の他の適切なアーキテクチャまたはシステム、または、それらの任意の好適な組み合わせとして、有線および／または無線通信を含んで構成され得る。
【００２９】
通信システム１００ａ−１００ｃにおいて、パケット、フレーム、信号、データなどを含むネットワークトラフィックは、任意の好適な通信メッセージングプロトコルによって送信され得、および受信され得る。好適な通信メッセージングプロトコルは、開放型システム間相互接続（ＯＳＩ）モデル、または、それらの任意の派生または変形（例えば、伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）、ユーザデータグラムプロトコル／ＩＰ（ＵＤＰ／ＩＰ））、などの多層スキームを含み得る。加えて、セルラネットワークにわたる無線信号通信が、通信システム１００ａ−１００ｃにおいて、また提供され得る。好適なインタフェースおよびインフラストラクチャが、セルラネットワークとの通信を可能にするように提供され得る。
【００３０】
本明細書で用いられる用語「パケット」は、パケット交換ネットワーク上のソースノードと宛先ノードとの間でルーティングされ得るデータの単位を指す。パケットは、ソースネットワークアドレスおよび宛先ネットワークアドレスを含む。これらのネットワークアドレスは、ＴＣＰ／ＩＰメッセージングプロトコルにおけるインターネットプロトコル（ＩＰ）アドレスであり得る。本明細書で用いられる用語「データ」は、電子デバイスおよび／またはネットワークにおいて、１つのポイントから別のポイントへ通信され得る任意の適切なフォーマットの、任意の種類のバイナリ、数値、音声、ビデオ、テキスト、もしくはスクリプトデータ、もしくは、任意の種類のソースもしくはオブジェクトコード、または、任意の他の好適な情報を指す。加えて、メッセージ、要求、応答、およびクエリはネットワークトラフィックの形態であり、従って、パケット、フレーム、信号、データなどを備え得る。
【００３１】
例示的な実装において、電子デバイス１０２ａ−１０２ｃ、クラウドサービス１０４、およびサーバ１０６はネットワーク要素であり、それらは、ネットワーク環境において情報を交換するように操作可能な、ネットワーク機器、サーバ、ルータ、スイッチ、ゲートウェイ、ブリッジ、ロードバランサ、プロセッサ、モジュール、または、任意の他の好適なデバイス、コンポーネント、要素、もしくはオブジェクトを包含することが意図される。ネットワーク要素は、それらの操作を容易にする、任意の好適なハードウェア、ソフトウェア、コンポーネント、モジュール、または、オブジェクト、ならびに、ネットワーク環境においてデータまたは情報を受信、送信、および／または別の方法で通信するために好適なインタフェースを含み得る。これは、データまたは情報の効果的な交換を可能にする適切なアルゴリズムおよび通信プロトコルを含み得る。
【００３２】
通信システム１００ａ−１００ｃに関連づけられた内部構造に関して、電子デバイス１０２ａ−１０２ｃ、クラウドサービス１０４およびサーバ１０６の各々は、本明細書に概説される操作において用いられる情報を格納するための複数のメモリ要素を含み得る。電子デバイス１０２ａ−１０２ｃ、クラウドサービス１０４およびサーバ１０６の各々は、任意の好適なメモリ要素（例えば、ランダムアクセスメモリ（ＲＡＭ）、リードオンリメモリ（ＲＯＭ）、消去可能プログラマブルＲＯＭ（ＥＰＲＯＭ）、電気的消去可能プログラマブルＲＯＭ（ＥＥＰＲＯＭ）、特定用途向け集積回路（ＡＳＩＣ）など）、ソフトウェア、ハードウェア、ファームウェア、または、必要に応じて、および特定の必要性に基づいて、任意の他の好適なコンポーネント、デバイス、要素、もしくはオブジェクトに、情報を保持し得る。本明細書で説明された任意のメモリアイテムは、広義の用語「メモリ要素」の中に包含されると解釈されるべきである。さらに、通信システム１００ａ−１００ｃにおいて用いられ、トラッキングされ、送信され、または受信される情報は、任意のデータベース、レジスタ、キュー、テーブル、キャッシュ、制御リスト、または他のストレージ構造において提供され得、それらのすべては、任意の好適な時間枠で参照され得る。任意のそのようなストレージの選択肢が、本明細書で用いられる広義の用語「メモリ要素」の中に、また含まれ得る。
【００３３】
特定の例示的な実装において、本明細書に概説される機能は、非一時的コンピュータ可読媒体を含み得る１または複数の有形媒体において符号化されるロジック（例えば、ＡＳＩＣに提供される組み込みロジック、デジタル信号プロセッサ（ＤＳＰ）命令、プロセッサまたは他の同様の機械によって実行されるソフトウェア（オブジェクトコードおよびソースコードを潜在的に含む）、などによって実装され得る。これらの例のいくつかにおいて、メモリ要素は、本明細書に説明された操作のために用いられるデータを格納し得る。これは、本明細書に説明されたアクティビティを遂行するように実行される、ソフトウェア、ロジック、コード、またはプロセッサ命令を格納可能なメモリ要素を含む。
【００３４】
例示的な実装において、電子デバイス１０２ａ−１０２ｃ、クラウドサービス１０４、およびサーバ１０６などの通信システム１００ａ−１００ｃのネットワーク要素は、本明細書に概説される操作を実現または促進する、ソフトウェアモジュール（例えば、セキュリティモジュール１１８、マルウェア検知モジュール１２０、マルウェア軽減モジュール１２２、ネットワークセキュリティモジュール１３０、およびパターン挙動生成モジュールモジュール１３２）を含み得る。これらのモジュールは、特定の構成および／またはプロビジョニングの必要性に基づき得る、任意の適切な態様で好適に組み合わされ得る。例示的な実施形態において、そのような操作は、ハードウェアによって遂行され得、それらの要素の外部に実装され得、または、意図される機能を実現する何らかの他のネットワークデバイスに含まれ得る。さらに、モジュールは、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の好適な組み合わせとして実装され得る。これらの要素は、本明細書に概説されるような、操作を実現させるように、他のネットワーク要素と連携し得るソフトウェア（またはレシプロケーティングソフトウェア（ｒｅｃｉｐｒｏｃａｔｉｎｇ  ｓｏｆｔｗａｒｅ））をまた含み得る。
【００３５】
加えて、電子デバイス１０２ａ−１０２ｃ、クラウドサービス１０４、およびサーバ１０６の各々は、本明細書に説明されたようなアクティビティを実行し得るソフトウェアまたはアルゴリズムを実行可能なプロセッサを含み得る。プロセッサは、本明細書で詳述された操作を実現するように、データと関連づけられた任意の種類の命令を実行し得る。一例において、プロセッサは、要素または物品（例えば、データ）を、１つの状態または物から、別の状態または物に変換し得る。別の例において、本明細書に概説されるアクティビティは、固定されたロジックまたはプログラム可能なロジック（例えば、プロセッサによって実行されるソフトウェア／コンピュータ命令）によって実装され得、本明細書において識別される要素は、デジタルロジック、ソフトウェア、コード、電子命令、またはそれらの任意の好適な組み合わせを含む、何らかのタイプのプログラム可能なプロセッサ、プログラム可能なデジタルロジック（例えば、フィールドプログラマブルゲートアレー（ＦＰＧＡ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ）、またはＡＳＩＣであり得る。本明細書で説明される、任意の潜在的な処理要素、モジュールおよび機械は、広義の用語「プロセッサ」の中に包含されると解釈されるべきである。
【００３６】
電子デバイス１０２ａ−１０２ｃはネットワーク要素であり得、例えば、デスクトップコンピュータ、ラップトップコンピュータ、モバイルデバイス、パーソナルデジタルアシスタント、スマートフォン、タブレット、または他の同様のデバイスを含む。クラウドサービス１０４は、クラウドサービスを電子デバイス１０２ａ−１０２ｃに提供するように構成される。クラウドサービスは、インターネットなどのネットワークにわたるサービスとして供給されるコンピューティングリソースの使用として、概して定義され得る。通常、計算、ストレージ、およびネットワークリソースがクラウドインフラストラクチャにおいて提供され、ワークロードをローカルネットワークからクラウドネットワークに効果的にシフトする。サーバ１０６は、サーバまたは仮想サーバなどのネットワーク要素であり得、何らかのネットワーク（例えば、ネットワーク１０８）を介して通信システム１００ａ−１００ｃにおいて通信を開始することを所望しているクライアント、顧客、エンドポイント、またはエンドユーザに関連づけられ得る。用語「サーバ」は、通信システム１００ａ−１００ｃの中のクライアントの要求を果たす、および／または、クライアントの代わりにいくらかの計算のタスクを実行するように用いられるデバイスを含む。セキュリティモジュール１１８が電子デバイス１０２ａ−１０２ｃに位置するものとしてそれぞれ図１Ａから図１Ｃに示されているが、これは例示目的のみである。セキュリティモジュール１１８は、任意の好適な構成において組み合わされ、または分離され得る。さらに、セキュリティモジュール１１８は、クラウドサービス１０４またはサーバ１０６などの電子デバイス１０２ａ−１０２ｃによってアクセス可能な別のネットワークと統合され得、または、別のネットワーク内に分散され得る。
【００３７】
図２に移ると、図２は、本開示の一実施形態による、マルウェアの軽減のための通信システム１００ａ−１００ｃの部分の簡略ブロック図である。パターン挙動生成モジュール１３２は、サンプルまたはアプリケーションを分析するための、パターンマッチング、グローバルレピュテーション、静的分析、動的分析、プログラムエミュレーション、または何らかの他の挙動分析技術の、１または複数の組み合わせを用いるように構成され得る。分析されたサンプルは、マルウェアパターン挙動１２４を生成するように、一般化され得、用いられ得る。マルウェアパターン挙動１２４は、サンプル挙動１４０およびファミリー挙動１４２を含み得る。サンプル挙動１４０は、特定のマルウェアサンプル挙動を含み得る。ファミリー挙動１４２は、分析されたサンプルと関連づけられた、または分析されたサンプルを含む、マルウェアのファミリーから生成され得る。
【００３８】
マルウェアは検知回避のために様々な技術を用い得るので、サンプルを分析してそれが実際に悪意のあるものかどうか検知するように、様々な技術の組み合わせが用いられる。例えば、よく知られているサンプルを識別するように、パターンマッチングが用いられ得、同じ知見が、どのような変更をサンプルがシステムにもたらすのか、および、どのような回避技術をマルウェアが用いるのかを識別するように用いられ得る。同様に、グローバルなデータベースからの入力に基づく、サンプルのグローバルレピュテーションが、マルウェアの挙動を識別するように用いられ得る。
【００３９】
プログラムエミュレーションは、エミュレートされた環境においてマルウェアサンプルを実行させ、マルウェアサンプルによってなされる変更に関して、その環境を研究し、マルウェアによって用いられる回避技術を識別するように用いられ得る。例えば、マルウェアが動作プロセスのリストから隠れるためにＷｉｎｄｏｗｓ（登録商標）ＡＰＩフック機構を用いる場合、同じ挙動の情報が記録され、回避技術として利用される。
【００４０】
静的分析は、パターン挙動生成モジュール１３２がマルウェア挙動を識別し得る、別の方法である。技術は、マルウェア実行可能なイメージの中の特定の挙動を識別するように、事前に知られているパターンのアセンブリ命令を用いる。マルウェア実行可能なものは、暗号化または難読化されることがあり、マルウェアサンプルが実際に機械上で実行されている場合にのみ解読される。そのような場合において、マルウェアは、機械上での実行が可能であり、静的分析は、抽出されたコンテンツ上で成される。回避技術によって用いられるコードのパターンは、識別され得、パターン挙動生成モジュール１３２の部分にされ得る。
【００４１】
マルウェアサンプルを実行した後にライブ仮想機械になされた変更を研究するように、動的分析が、パターン挙動生成モジュール１３２によって用いられ得る。ＡＰＩフックに似た異なる技術が、マルウェアによってシステムになされた変更を検知するように用いられ得る。様々な回避技術が、マルウェアが機械上で実際に実行される知見を用いることによって、および、動作プロセスまたはロードされたモジュールに似た様々なシステムアーティファクトをその見地から分析することによって、識別され得る。例えば、マルウェアがｍａｌｗａｒｅＳａｍｐｌｅ．ｅｘｅというプロセスを起動し、そのプロセスがシステム上の動作プロセスのリストにおいて可視でない場合、そのプロセスは、マルウェアが中で実行しているプロセスをそのマルウェアが隠すという、回避技術として利用される。
【００４２】
サンプルが分析された後、異なる段階でのマルウェアの分析についての報告／アーティファクトが、生成され得る。報告は分析され、一組の挙動のログが生成され得る。ログは分析の異なる段階からマルウェア挙動の指標を分析し、それを完全な挙動の分析ログと組み合わせる。分析ログは、マルウェア軽減モジュール１２２によって用いられ得るサンプル挙動アーティファクト（例えば、サンプル挙動１４０）である。
【００４３】
「サンプル挙動」の複数の要素の例は、マルウェアによって生成された、ファイルの名前、レジストリエントリ、および（ｍｕｔｅｘに似た）カーネルオブジェクトを含み得る。回避技術は、また、サンプル挙動アーティファクトにおいて明示され得る。マルウェアが隠しファイルを生成するかどうか、マルウェアがルートキットに似た挙動を示すかどうか、または、マルウェアのプロセスが列挙され得るかどうかが、また確かめられ得る。
【００４４】
サンプル挙動ログは、特定のマルウェアサンプルのファミリーを識別するように、知られているマルウェアファミリーの挙動を分析して、それとマッチングさせ得る。マルウェアファミリー挙動１５０のデータベースは、この目的のために維持され得る。ひとたびファミリーが識別されると、この特定のマルウェアファミリーのすべてのメンバーの共通挙動指標が、マルウェアファミリー挙動１５０のデータベースから収集され得、マルウェアサンプルに関するファミリー挙動１４２が生成され得る。
【００４５】
ファミリー挙動の一例は、ポリモーフィック型のマルウェア挙動についての情報を含み得る。あるマルウェアは、ユーザのＡｐｐＤａｔａフォルダにファイルを生成し得る。異なるインスタンスにおいて実行された場合、同じサンプルが、ファイル名をランダム化して異なる名前のファイルを生成し、したがって、マルウェアは、そのマルウェアが生成したファイルによっては識別され得ない。そのような場合において、マルウェアは、ランダム化された挙動における共通性のパターンによって識別され得る。例えば、あるマルウェアは、異なる名前を有するが、同じｍｄ５ハッシュを用いて、ＡｐｐＤａｔａフォルダ内の同じサブフォルダの中に、ファイルを生成し得る。異なる名前だが同じｍｄ５チェックサムのファイルを生成する特性が、マルウェアファミリーのすべてのサンプルに帰属し得る場合、この特性は、そのファミリーのすべてのサンプルの感染を識別するための指標として用いられ得る。ファミリー特有の挙動からなるそのような情報が、検知／軽減タスクを生成するようにこの情報を用い得る、マルウェア検知モジュール１２０およびマルウェア軽減モジュール１２２に供給される。例えば、ファイルの名前を変更させるがフォルダ名およびｍｄ５チェックサムは同じに保つファミリーのサンプルに関して、識別タスクが、電子デバイス中の特定のフォルダ内の特定のｍｄ５を探すように生成され得る。
【００４６】
ジェネリックの、または共通のマルウェアに似た挙動の識別は、知られているマルウェアと共通であり、良性のソフトウェアによって示されることはほとんどない挙動パラメータを、確定することを含み得る。これは、特定のレジストリエントリの形成、サインされていない、またはベリファイされていないバイナリの、スタートアップフォルダ内へのインストールなどに似た、共通のパターンを識別することを含む。例えば、スタートアップフォルダ内に存在するサインされていない複数のプログラムは、とりわけ、それらが、インストールされたプログラムのリスト内に対応するエントリを伴っていない場合、または、そのようなコンポーネントのバイナリがベリファイされたパブリッシャからサインされたものでない場合、一般に悪意があると知られている。システム内からそのようなバイナリを探し、それらのチェックサムを知られているマルウェア挙動またはファミリー挙動と比較して、可能性がある感染を識別して、従って修復するように、マルウェア検知モジュール１２０およびマルウェア軽減モジュール１２２は、検知タスク（例えば分析ログ１２６）および軽減タスク（例えばリバースマルウェア挙動動作１２８）を生成し得る。
【００４７】
図３に移ると、図３は、本開示の一実施形態によるマルウェアの軽減のための通信システム１００ａ−１００ｃの一部の簡略図である。セキュリティモジュール１１８は、マルウェアパターン挙動１２４をマルウェア検知モジュール１２０と通信させるように構成され得る。マルウェア検知モジュール１２０は、電子デバイス１０２ａ−１０２ｃが感染しているかどうか識別するように、マルウェア挙動（例えば、サンプル挙動１４０、ファミリー挙動１４２、ジェネリックマルウェア挙動１４４など）の様々な指標をコンパイルするように構成され得、感染している場合、マルウェア軽減モジュール１２２は、電子デバイス１０２ａ−１０２ｃを感染から修復するように用いられ得る。一例において、マルウェア軽減モジュール１２２は、すべての指標を分析し得、電子デバイス１０２ａ−１０２ｃにおける感染の指標を識別するためのタスクを生成し得る。特定のサンプル挙動、ファミリー挙動およびジェネリック挙動（例えば、サンプル挙動１４０、ファミリー挙動１４２、およびジェネリックマルウェア挙動１４４）に基づいて、マルウェア感染が以前におそらく起こっており、機械の再起動が起こっていなかったかもしれない実行環境で、タスクは実行され得る。マルウェアは、機械のメモリ、レジストリ、およびファイルシステムに感染しているかもしれない。マルウェアは、その存在の指標を隠すようにオペレーティングシステムを破壊したかもしれないので、マルウェアによってなされたファイルシステムおよびレジストリの変更に似た、感染のいくつかの指標は、この環境において見つけることが困難であり得る。いくつかの他の指標は、オペレーティングシステムのライブメモリにおいて利用可能であり、機械の再起動のときには失われているだろうから、それらは、この環境においてのみ見つけられ得る。これらは、電子デバイス１０２ａ−１０２ｃにインストールされた、ｍｕｔｅｘ、イベント、ＡＰＩフックなどを含む。
【００４８】
別の例において、オペレーティングシステムに存在する、書き込み保護されたディスクイメージファイルから実行される環境から、タスクが実行され得る。これは、オペレーティングシステムファイルの破損という感染の場合、ＯＳファイルをリカバリさせるために役立ち得る。同じ環境が、マルウェアの検知回避能力をバイパスして、マルウェアサンプルのブート持続性を取り除き、機械を感染から解放するように用いられ得る。
【００４９】
Ｗｉｎｄｏｗｓ（登録商標）  ＲＥにおける検知を回避するマルウェアに関して、マルウェアを識別してマルウェアから修復または軽減する唯一の方法は、機械を二次ＯＳにブートして、機械のファイルを通じて反復するようにＮＴＦＳドライバを用いて、ファイルシステムベースの感染の指標を探すことであり得る。ＮＴＦＳファイルシステムを通じた反復をサポートする二次ＯＳの選択は、回避的なファイルシステムアーティファクトの検知および削除の助けとなり得る。特定のサンプル、ファミリー、およびジェネリックマルウェア挙動からの挙動指標と合致するタスクが生成され得る。例えば、Ｗｉｎｄｏｗｓ（登録商標）スタートアッププロセスの部分として実行可能なプログラムを起動するなどの、レジストリエントリを生成するサンプルが見つけられた場合、特定のレジストリキーを探すように検知タスクが生成され得る。
【００５０】
検知および軽減タスクの実行の結果は、フィードバックループ１４６を介してマルウェア軽減モジュール１２２にフィードバックされ得る。マルウェア軽減モジュール１２２は、タスクからの結果の分析に基づいて、次の動作を判断し得る。別の例において、マルウェア検知モジュール１２０はタスクの結果を分析し得る。結果が、電子デバイスが感染している旨を示す場合、マルウェア軽減モジュール１２２は、上述の３つの環境（例えば、サンドボックス１１６、回復環境１３６、または二次オペレーティングシステム１３８）のうち１つにおいて実行されるべき軽減タスクを生成し得る。結果が、感染がない旨を示す場合、マルウェア軽減モジュール１２２は、別の環境において改めてチェックを行い、それに応じてタスクを生成する旨を決定し得る。同様に、マルウェア軽減モジュール１２２が、いかなる知られている感染の指標もない旨を確認し得る場合、マルウェア軽減モジュール１２２は、電子デバイスがクリーンまたは良性であると宣言し得る。
【００５１】
フィードバックループ１４６は、電子デバイスを完全に感染から解除するように、再び反復して実行され得る。例えば、マルウェア検知モジュール１２０が、ファイルシステムおよびレジストリに感染するマルウェアサンプルが見つかったが、ファミリー挙動は、ファイル名およびｍｄ５が１つのインスタンスから別のインスタンスへとランダム化されることを示す、と判断した場合、マルウェア軽減モジュール１２２は、ライブ環境におけるマルウェアサンプルを探すためのタスクを生成し得る。マルウェアサンプルが見つからない場合、マルウェア軽減モジュール１２２は、回復環境においてマルウェアサンプルを探すためのタスクを改めて生成し得る。マルウェアサンプルのエビデンスが見つからない場合、特定のフォルダを探すためのタスクが生成され得る。特定のフォルダを見つけたとき、フォルダのすべてのファイルのｍｄ５を計算するタスクが生成され得る。特定のファミリーの知られている悪いｍｄ５チェックサムから、ｍｄ５合致が見つけられない場合、機械スタートアップ上でプログラムを実行するように修正されたレジストリエントリを探す、タスクが生成され得る。スタートアッププログラムとして記録された疑わしいプログラムが見つけられた場合、プログラムに関連づけられた実行可能なファイルを探すタスクが生成され得、マルウェアサンプルのｍｄ５は、知られている悪いｍｄ５チェックサムの中にあると判明し得る。このマルウェアサンプルおよびレジストリエントリを削除して、ライブＷｉｎｄｏｗｓ（登録商標）  ＯＳにおいて機械をリブートして、ｍｕｔｅｘに似たインメモリ指標およびイベントを探す、タスクが生成され得る。最後に、いくつかの反復の結果の後に、マルウェア軽減モジュール１２２は、機械が特定のマルウェアサンプルから完全に解放されたかどうか決定し得る。
【００５２】
図４に移ると、図４は、一実施形態による、マルウェアの軽減に関連づけられ得るフロー４００の可能な操作を図示する、例示的なフローチャートである。一実施形態において、フロー４００の１または複数の操作は、セキュリティモジュール１１８、マルウェア検知モジュール１２０、マルウェア軽減モジュール１２２、ネットワークセキュリティモジュール１３０、およびパターン挙動生成モジュール１３２によって実行され得る。４０２において、マルウェアは動作可能にされる。４０４において、マルウェアによって実行される動作が観察され、システムへの変更が記録される。例えば、パターン挙動生成モジュール１３２が、マルウェアによって実行される動作を観察し得、マルウェアパターン挙動１２４を生成し得る。４０６において、マルウェアによって引き起こされたシステムへの変更を逆転する、実行取り消し動作が生成される。
【００５３】
図５に移ると、図５は、一実施形態によるマルウェアの軽減に関連づけられ得る、フロー５００の可能な操作を図示する例示的なフローチャートである。一実施形態において、フロー５００の１または複数の操作は、セキュリティモジュール１１８、マルウェア検知モジュール１２０、マルウェア軽減モジュール１２２、ネットワークセキュリティモジュール１３０、およびパターン挙動生成モジュール１３２によって実行され得る。５０２において、マルウェアはシステムを変更した。例えば、マルウェア検知モジュール１２０は、マルウェアが電子デバイス１０２ａを変更または変造した旨を判断していてもよい。５０４において、マルウェアが識別される。例えば、分析ログ１２６を用いて、マルウェアが識別され得る。分析ログ１２６は、電子デバイス１０２ａの変更のログをとることによって、マルウェア検知モジュール１２０によって生成され得る。５０６において、マルウェアパターン挙動が判断される。５０８において、リバースマルウェア挙動動作が判断される。例えば、リバースマルウェア挙動動作１２８が判断される。５１０において、マルウェアがシステムに行った変更を実行取り消しする、リバースマルウェア挙動動作が実行される。例えば、マルウェア軽減モジュール１２２は、マルウェアが電子デバイス１０２ａに行った変更を実行取り消しする、リバースマルウェア挙動動作１２８を実行し得る。
【００５４】
図６は、一実施形態による、ポイントツーポイント（ＰｔＰ）構成に配置された、コンピューティングシステム６００を示す。特に、図６は、プロセッサ、メモリ、および入力／出力デバイスが、複数のポイントツーポイントインタフェースによって相互結合されるシステムを示す。概して、通信システム１００ａ−１００ｃのネットワーク要素の１または複数は、コンピューティングシステム６００と同じ、または同様の態様で構成され得る。
【００５５】
図６に示されるように、システム６００は、いくつかのプロセッサを含み得、明確さのために、それらのうちプロセッサ６７０および６８０の２つのみが示される。２つのプロセッサ６７０および６８０が示される一方、システム６００の実施形態は、また、そのようなプロセッサを１つのみ含み得ることが、理解されるべきである。プログラムの複数のスレッドを実行するように、プロセッサ６７０および６８０は各々、一組のコア（すなわち、プロセッサコア６７４Ａおよび６７４Ｂ、ならびにプロセッサコア６８４Ａおよび６８４Ｂ）を含み得る。コアは、図１Ａから図５を参照して上に説明されたものと同様の態様で、命令コードを実行するように構成され得る。各プロセッサ６７０、６８０は、少なくとも１つの共有キャッシュ６７１、６８１を含み得る。共有キャッシュ６７１、６８１は、プロセッサコア６７４および６８４などの、プロセッサ６７０、６８０の１または複数のコンポーネントによって利用されるデータ（例えば、命令）を格納し得る。
【００５６】
プロセッサ６７０および６８０は各々、メモリ要素６３２および６３４と通信するための、統合されたメモリコントローラロジック（ＭＣ）６７２および６８２をまた含み得る。メモリ要素６３２および／または６３４は、プロセッサ６７０および６８０によって用いられる様々なデータを格納し得る。代替的な実施形態において、メモリコントローラロジック６７２および６８２は、プロセッサ６７０および６８０から独立した、ディスクリートロジックであり得る。
【００５７】
プロセッサ６７０および６８０は、任意の種類のプロセッサであり得、ポイントツーポイントインタフェース回路６７８および６８８をそれぞれ用いて、ポイントツーポイント（ＰｔＰ）インタフェース６５０を介してデータを交換し得る。プロセッサ６７０および６８０は各々、ポイントツーポイントインタフェース回路６７６、６８６、６９４および６９８を用いて、個別のポイントツーポイントインタフェース６５２および６５４を介して、チップセット６９０とデータを交換し得る。チップセット６９０は、ＰｔＰインタフェース回路であり得るインタフェース回路６９２を用いて、高性能グラフィックインタフェース６３９を介して、高性能グラフィック回路６３８とデータをまた交換し得る。代替的な実施形態において、図６の示されたＰｔＰリンクのいずれかまたはすべては、ＰｔＰリンクではなくマルチドロップバスとして実装され得る。
【００５８】
チップセット６９０は、インタフェース回路６９６を介してバス６２０と通信し得る。バス６２０は、バスブリッジ６１８およびＩ／Ｏデバイス６１６などの、それを介して通信する１または複数のデバイスを有し得る。バス６１０を介して、バスブリッジ６１８は、キーボード／マウス６１２（または、タッチスクリーン、トラックボールなどの他の入力デバイス）、通信デバイス６２６（モデム、ネットワークインタフェースデバイス、または、コンピュータネットワーク６６０を通じて通信し得る他のタイプの通信デバイスなど）、オーディオＩ／Ｏデバイス６１４、および／またはデータストレージデバイス６２８などの、他のデバイスと通信し得る。データストレージデバイス６２８は、プロセッサ６７０および／または６８０によって実行され得る、コード６３０を格納し得る。代替的な実施形態において、バスアーキテクチャの任意の部分は、１または複数のＰｔＰリンクで実装され得る。
【００５９】
図６に図示されたコンピュータシステムは、本明細書に説明された様々な実施形態を実装するように利用され得るコンピューティングシステムの実施形態の、概略的な例示である。図６に図示されたシステムの様々なコンポーネントは、システムオンチップ（ＳｏＣ）アーキテクチャ、または任意の他の好適な構成で組み合わされ得ることが、理解されるであろう。例えば、本明細書に開示された実施形態は、スマートセルラ電話、タブレットコンピュータ、パーソナルデジタルアシスタント、携帯可能ゲームデバイスなどの、モバイルデバイスを含むシステム内に組み込まれ得る。これらのモバイルデバイスは、少なくともいくつかの実施形態において、ＳｏＣアーキテクチャを備え得ることが理解されるであろう。
【００６０】
図７に移ると、図７は、本開示の例示的なＡＲＭエコシステムＳｏＣ７００と関連づけられた簡略ブロック図である。本開示の少なくとも１つの例示的な実装は、本明細書で説明されたマルウェアの軽減機能、およびＡＲＭコンポーネントを含み得る。例えば、図７の例は、任意のＡＲＭコア（例えば、Ａ−７、Ａ−１５など）に関連づけられ得る。さらに、アーキテクチャは、任意の種類のタブレット、スマートフォン（Ａｎｄｒｏｉｄ（登録商標）  ｐｈｏｎｅ、ｉＰｈｏｎｅ（登録商標）を含む）、ｉＰａｄ（登録商標）、Ｇｏｏｇｌｅ  Ｎｅｘｕｓ（登録商標）、Ｍｉｃｒｏｓｏｆｔ  Ｓｕｒｆａｃｅ（登録商標）、パーソナルコンピュータ、サーバ、ビデオ処理コンポーネント、ラップトップコンピュータ（任意の種類のノートブックを含む）、Ｕｌｔｒａｂｏｏｋ（登録商標）システム、任意の種類のタッチ対応入力デバイスなどの一部であり得る。
【００６１】
図７のこの例において、ＡＲＭエコシステムＳｏＣ７００は、液晶ディスプレイ（ＬＣＤ）に結合するモバイルインダストリープロセッサインタフェース（ＭＩＰＩ）／高精細度マルチメディアインタフェース（ＨＤＭＩ（登録商標））リンクと関連づけられ得る、複数のコア７０６−９０７、Ｌ２キャッシュ制御７０８、バスインタフェースユニット７０９、Ｌ２キャッシュ７１０、グラフィック処理ユニット（ＧＰＵ）７１５、インターコネクト７０２、ビデオコーデック７２０、およびＬＣＤ  Ｉ／Ｆ７２５を含み得る。
【００６２】
ＡＲＭエコシステムＳｏＣ７００は、加入者識別モジュール（ＳＩＭ）Ｉ／Ｆ７３０、ブートリードオンリメモリ（ＲＯＭ）７３５、シンクロナスダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）コントローラ７４０、フラッシュコントローラ７４５、シリアル周辺機器インタフェース（ＳＰＩ）マスター７５０、好適な電力制御７５５、ダイナミックＲＡＭ（ＤＲＡＭ）７６０、およびフラッシュ７６５を、また含み得る。加えて、１または複数の例示的な実施形態は、１または複数の通信機能、インタフェース、ならびに、Ｂｌｕｅｔｏｏｔｈ（登録商標）７７０、３Ｇモデム７７５、全地球測位システム（ＧＰＳ）７８０、および８０２．１１Ｗｉ−Ｆｉ７８５という例などの機能を含み得る。
【００６３】
操作において、図７の例は、様々なタイプのコンピューティング（例えば、モバイルコンピューティング、ハイエンドデジタルホーム、サーバ、無線インフラストラクチャなど）を可能にする比較的低い電力消費と共に、処理機能を提供し得る。加えて、そのようなアーキテクチャは、任意の数のソフトウェアアプリケーション（例えば、Ａｎｄｒｏｉｄ（登録商標）、Ａｄｏｂｅ（登録商標）  Ｆｌａｓｈ（登録商標）プレーヤ、Ｊａｖａ（登録商標）プラットフォームスタンダードエディション（Ｊａｖａ（登録商標）ＳＥ）、Ｊａｖａ（登録商標）ＦＸ、Ｌｉｎｕｘ（登録商標）、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）  Ｅｍｂｅｄｄｅｄ、Ｓｙｍｂｉａｎ、およびＵｂｕｎｔｕなど）を可能にし得る。少なくとも１つの例示的な実施形態において、コアプロセッサは、結合された低レイテンシのレベル２キャッシュを有するアウトオブオーダー・スーパースカラー・パイプラインを実装し得る。
【００６４】
図８は、一実施形態によるプロセッサコア８００を示す。プロセッサコア８００は、マイクロプロセッサ、組み込まれたプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、ネットワークプロセッサ、またはコードを実行する他のデバイスなど、任意の種類のプロセッサのためのコアであり得る。１つのみのプロセッサコア８００が図８に示されているが、プロセッサは、図８に示されたプロセッサコア８００のうちの１つより多くを、代替的に含み得る。例えば、プロセッサコア８００は、図６のプロセッサ６７０および６８０を参照して示されおよび説明された、プロセッサコア６７４ａ、６７４ｂ、６８４ａおよび６８４ｂの１つの例示的な実施形態を示す。プロセッサコア８００は、シングルスレッドコアであり得、または、少なくとも１つの実施形態に関して、プロセッサコア８００は、コア毎に１つより多いハードウェアスレッドコンテキスト（または「論理プロセッサ」）を含み得るという点で、マルチスレッドであり得る。
【００６５】
図８は、一実施形態によるプロセッサコア８００に結合されるメモリ８０２を、また示す。メモリ８０２は、知られているような、そうでなければ当業者に利用可能なような、任意の多種多様なメモリ（メモリ階層の様々な層を含む）であり得る。メモリ８０２は、プロセッサコア８００によって実行される、１または複数の命令であり得るコード８０４を含み得る。プロセッサコア８００は、コード８０４によって示される命令のプログラムシーケンスをたどり得る。各命令はフロントエンドロジック８０６に入り、１または複数のデコーダ８０８によって処理される。デコーダは、その出力として、予め定義されたフォーマットの固定幅マイクロオペレーションなどの、マイクロオペレーションを生成し得、または、オリジナルのコード命令を反映する他の命令、マイクロ命令、または制御信号を生成し得る。フロントエンドロジック８０６は、レジスタリネーミングロジック８１０およびスケジューリングロジック８１２をまた含み、それは概して、リソースを割り当て、実行のための命令に対応する操作をキューに登録する。
【００６６】
プロセッサコア８００は、一組の実行ユニット８１６−１から８１６−Ｎを有する実行ロジック８１４を、また含み得る。いくつかの実施形態は、特定の機能または機能の組に専用の、複数の実行ユニットを含み得る。他の実施形態は、１つの実行ユニットのみ、または、特定の機能を実行し得る１つの実行ユニットを含み得る。実行ロジック８１４は、コード命令によって指定される操作を実行する。
【００６７】
コード命令によって指定される操作の実行の完了後、バックエンドロジック８１８は、コード８０４の命令をリタイアし得る。一実施形態において、プロセッサコア８００は、アウトオブオーダー実行を可能にするが、命令のインオーダーリタイアメントを必要とする。リタイアメントロジック８２０は、様々な知られている形態（例えば、リオーダーバッファまたは同様のもの）を取り得る。本態様において、プロセッサコア８００は、少なくとも、デコーダによって生成される出力、レジスタリネーミングロジック８１０によって利用されるハードウェアレジスタおよびテーブル、および実行ロジック８１４によって書き換えられた任意のレジスタ（示されない）の観点から、コード８０４の実行の最中に変換される。
【００６８】
図８には示されないが、プロセッサは、プロセッサコア８００を有するチップ上の他の要素を含み得、その少なくともいくつかが図６を参照して本明細書で示されて説明される。例えば、図６に示されるように、プロセッサは、プロセッサコア８００と共にメモリ制御ロジックを含み得る。プロセッサは、Ｉ／Ｏ制御ロジックを含み得、および／または、メモリ制御ロジックと統合されたＩ／Ｏ制御ロジックを含み得る。
【００６９】
本明細書に提供された例と共に、相互作用は、２つ、３つ、またはより多くのネットワーク要素の観点から説明され得ることに留意する。しかしながら、これは、明確さおよび例示のみの目的で成されている。特定の場合には、限られた数のネットワーク要素を参照するだけで、所与の組のフローの機能の１または複数の説明がより容易になり得る。通信システム１００ａ−１００ｃおよびそれらの教示は、容易に拡張可能であり、多数のコンポーネント、ならびに、より複雑な／洗練された配置及び構成に対応し得ることが、理解されるべきである。従って、提供された例は、無数の他のアーキテクチャに潜在的に適用されるものとしての通信システム１００ａ−１００ｃの、範囲を制限すべきではなく、または、広い教示を阻むべきではない。
【００７０】
前述のフロー図（すなわち、図４および５）における操作は、通信システム１００ａ−１００ｃによって、または通信システム１００ａ−１００ｃの中で実行され得る、起こり得る相関するシナリオおよびパターンのいくつかのみを示すことに留意することが、また重要である。これらの操作のいくつかは、必要に応じて削除され得、または取り除かれ得、または、これらの操作は、本開示の範囲から逸脱することなく、大幅に書き換えられ得、または変更され得る。加えて、これらの操作の多数は、１または複数の追加の操作と同時に、またはそれと平行して実行されるものとして、説明されてきた。しかしながら、これらの操作のタイミングは大幅に変更され得る。前述の操作フローは、例示および説明の目的で提供されている。任意の好適な配置、時系列、構成、およびタイミング機構が、本開示の教示から逸脱することなく提供され得るという点で、かなりの柔軟性が、通信システム１００ａ−１００ｃによって提供される。
【００７１】
本開示は特定の配置及び構成を参照して詳細に説明されているが、これらの例示的な構成および配置は、本開示の範囲から逸脱することなく、大幅に変更され得る。さらに、特定のコンポーネントが、特定の必要性および実装に基づいて、組み合わされ、分離され、除去され、または追加され得る。加えて、通信システム１００ａ−１００ｃは、通信処理を容易にする特定の要素及び動作を参照して示されるが、これらの要素及び動作は、通信システム１００ａ−１００ｃの意図される機能を実現する任意の好適なアーキテクチャ、プロトコル、および／または処理によって置換され得る。
【００７２】
数多くの他の変化、代替、変形、変更、および修正が、本分野の当業者に確認され得、本開示は、添付の特許請求の範囲の中に属するそのような変化、代替、変形、変更、および修正を、すべて包含することが意図されている。米国特許商標庁（ＵＳＰＴＯ）、および加えて、本出願に関して発行される任意の特許の任意の読者の助力となるように、本明細書に添付の特許請求の範囲の解釈において、出願人は、以下に留意することを望む。（ａ）出願人は、添付のいかなる請求項も、文言「ための手段」または「ための段階」が特定の請求項において具体的に用いられない限り、本明細書の出願の日において存在する米国特許法第１１２条第６パラグラフを発動させる意図はない。（ｂ）出願人は、添付の特許請求の範囲に反映されない限り、本明細書におけるいかなる記述によっても、いかなる方法でも、本開示を限定する意図はない。
【００７３】
［他の注記および例］
例Ｃ１は、少なくとも１つのプロセッサによって実行された場合、少なくとも１つのプロセッサに、システムにおいてマルウェアの実行を可能にさせ、マルウェアの実行によって引き起こされたシステムへの変更を記録させ、電子デバイスにおけるマルウェアの検知のための検知タスクを生成させる、１または複数の命令であって、検知タスクは少なくとも部分的に、マルウェアの実行によって引き起こされたシステムへの変更に基づく、命令を有する少なくとも１つの機械可読記憶媒体である。
【００７４】
例Ｃ２において、例Ｃ１の主題は、検知タスクが、マルウェアの、パターンマッチング、グローバルレピュテーション分析、プログラムエミュレーション、静的分析、および動的分析のうち１または複数を用いて生成されることを、随意に含み得る。
【００７５】
例Ｃ３において、例Ｃ１−Ｃ２のうちの任意の１つの主題は、命令が、少なくとも１つのプロセッサによって実行された場合、少なくとも１つのプロセッサにさらに、マルウェアに関連するマルウェアファミリーを識別させ、マルウェアファミリーはファミリー挙動を含み、検知タスクはファミリー挙動に部分的に基づくことを、随意に含み得る。
【００７６】
例Ｃ４において、例Ｃ１−Ｃ３のうちの任意の１つの主題は、検知タスクがジェネリックマルウェア挙動に部分的に基づくことを、随意に含み得る。
【００７７】
例Ｃ５において、例Ｃ１−Ｃ４のうちの任意の１つの主題は、命令が、少なくとも１つのプロセッサによって実行された場合、少なくとも１つのプロセッサにさらに、生成された検知タスクを用いて、感染した電子デバイスを識別させ、マルウェアによって引き起こされた、感染した電子デバイスの変更を軽減する軽減タスクを生成させることを、随意に含み得る。
【００７８】
例Ｃ６において、例Ｃ１−Ｃ５のうちの任意の１つの主題は、軽減タスクが回復環境において実行されることを、随意に含み得る。
【００７９】
例Ｃ７において、例Ｃ１−Ｃ６のうちの任意の１つの主題は、軽減タスクが、感染した電子デバイス上の二次オペレーティングシステムを用いて実行されることを、随意に含み得る。
【００８０】
例Ｃ８において、例Ｃ１−Ｃ７のうちの任意の１つの主題は、二次オペレーティングシステムが、感染した電子デバイス上にブートディスクとしてプッシュされることを、随意に含み得る。
【００８１】
例Ａ１において、装置はパターン挙動生成モジュールを含み得、パターン挙動生成モジュールは、システムにおいてマルウェアの実行を可能にし、マルウェアの実行によって引き起こされたシステムへの変更を記録し、電子デバイスにおけるマルウェアの検知のための検知タスクを生成するように構成され、検知タスクは少なくとも部分的に、マルウェアの実行によって引き起こされたシステムへの変更に基づく。
【００８２】
例Ａ２において、例Ａ１の主題は、検知タスクが、マルウェアの、パターンマッチング、グローバルレピュテーション分析、プログラムエミュレーション、静的分析、および動的分析のうち１または複数を用いて生成されることを、随意に含み得る。
【００８３】
例Ａ３において、例Ａ１−Ａ２のうちの任意の１つの主題は、パターン挙動生成モジュールがさらに、マルウェアに関連するマルウェアファミリーを識別するように構成されることを、随意に含み得、マルウェアファミリーはファミリー挙動を含み、検知タスクはファミリー挙動に部分的に基づく。
【００８４】
例Ａ４において、例Ａ１−Ａ３のうちの任意の１つの主題は、検知タスクがジェネリックマルウェア挙動に部分的に基づくことを、随意に含み得る。
【００８５】
例Ａ５において、例Ａ１−Ａ４のうちの任意の１つの主題は、パターン挙動生成モジュールがさらに、セキュリティモジュールに検知タスクを通信するように構成され、セキュリティモジュールは、生成された検知タスクを用いて、感染した電子デバイスを識別し、マルウェアによって引き起こされた、感染した電子デバイスへの変更を軽減する軽減タスクを生成するように構成されることを、随意に含み得る。
【００８６】
例Ａ６において、例Ａ１−Ａ５のうちの任意の１つの主題は、軽減タスクが回復環境において実行されることを、随意に含み得る。
【００８７】
例Ａ７において、例Ａ１−Ａ６のうちの任意の１つの主題は、軽減タスクが、感染した電子デバイス上の二次オペレーティングシステムを用いて実行されることを、随意に含み得る。
【００８８】
例Ａ８において、例Ａ１−Ａ７のうちの任意の１つの主題は、二次オペレーティングシステムが、感染した電子デバイス上にブートディスクとしてプッシュされることを、随意に含み得る。
【００８９】
例Ｍ１は、システムにおいてマルウェアの実行を可能にすることと、マルウェアの実行によって引き起こされるシステムへの変更を記録することと、電子デバイスにおけるマルウェアの検知のための検知タスクを生成することであり、検知タスクは少なくとも部分的に、マルウェアの実行によって引き起こされるシステムへの変更に基づく、生成することと、を含む方法である。
【００９０】
例Ｍ２において、例Ｍ１の主題は、検知タスクが、マルウェアの、パターンマッチング、グローバルレピュテーション分析、プログラムエミュレーション、静的分析、および動的分析のうち１または複数を用いて生成されることを、随意に含み得る。
【００９１】
例Ｍ３において、例Ｍ１−Ｍ２のうちの任意の１つの主題は、マルウェアに関連するマルウェアファミリーを識別することであって、マルウェアファミリーはファミリー挙動を含み、検知タスクはファミリー挙動に部分的に基づく、識別することを随意に含み得る。
【００９２】
例Ｍ４において、例Ｍ１−Ｍ３のうちの任意の１つの主題は、検知タスクがジェネリックマルウェア挙動に部分的に基づくことを、随意に含み得る。
【００９３】
例Ｍ５において、例Ｍ１−Ｍ４のうちの任意の１つの主題は、生成された検知タスクを用いて、感染した電子デバイスを識別することと、マルウェアによって引き起こされた、感染した電子デバイスへの変更を軽減する、軽減タスクを生成することとを、随意に含み得る。
【００９４】
例Ｍ６において、例Ｍ１−Ｍ５のうちの任意の１つの主題は、軽減タスクが回復環境において実行されることを、随意に含み得る。
【００９５】
例Ｍ７において、例Ｍ１−Ｍ６のうちの任意の１つの主題は、軽減タスクが、感染した電子デバイス上の二次オペレーティングシステムを用いて実行されることを、随意に含み得る。
【００９６】
例Ｓ１は、マルウェアからの修復のためのシステムであり、システムは、パターン挙動生成モジュールとセキュリティモジュールとを含み、パターン挙動生成モジュールは、システムにおいてマルウェアの実行を可能にし、マルウェアの実行によって引き起こされたシステムへの変更を記録し、電子デバイスにおけるマルウェアの検知のための検知タスクを生成するように構成され、検知タスクは少なくとも部分的に、マルウェアの実行によって引き起こされたシステムへの変更に基づき、セキュリティモジュールは、生成された検知タスクを用いて、感染した電子デバイスを識別し、マルウェアによって引き起こされた、感染した電子デバイスへの変更を軽減する軽減タスクを生成するように構成される。
【００９７】
例Ｓ２において、例Ｓ１の主題は、検知タスクが、マルウェアの、パターンマッチング、グローバルレピュテーション分析、プログラムエミュレーション、静的分析、および動的分析のうち１または複数を用いて生成されることを、随意に含み得る。
【００９８】
例Ｘ１は、例Ａ１−Ａ８、またはＭ１−Ｍ７のうちの任意の１つに示されるような、方法を実装するための、または装置を実現させるための、機械可読命令を含む機械可読記憶媒体である。例Ｙ１は、例の方法Ｍ１−Ｍ７のうちのいずれかを実行するための手段を含む装置である。例Ｙ２において、例Ｙ１の主題は、方法を実行するための、プロセッサおよびメモリを含む手段を随意に含み得る。例Ｙ３において、例Ｙ２の主題は、機械可読命令を含むメモリを随意に含み得る。
（項目１）
少なくとも１つのプロセッサに、
システムにおいてマルウェアの実行を可能にする手順と、
上記マルウェアの上記実行によって引き起こされた上記システムへの変更を記録する手順と、
電子デバイスにおける上記マルウェアの検知のための検知タスクを生成する手順であって、上記検知タスクは少なくとも部分的に、上記マルウェアの上記実行によって引き起こされた上記システムへの上記変更に基づく、手順と、
を実行させるための、コンピュータプログラム。
（項目２）
上記検知タスクは、上記マルウェアの、パターンマッチング、グローバルレピュテーション分析、プログラムエミュレーション、静的分析、および動的分析のうち１または複数を用いて生成される、項目１に記載のコンピュータプログラム。
（項目３）
上記少なくとも１つのプロセッサに、
上記マルウェアに関連するマルウェアファミリーを識別する手順であって、上記マルウェアファミリーはファミリー挙動を含み、上記検知タスクは上記ファミリー挙動に部分的に基づく、手順をさらに実行させるための、項目１または２に記載のコンピュータプログラム。
（項目４）
上記検知タスクは、ジェネリックマルウェア挙動に部分的に基づく、項目１から３のいずれか一項に記載のコンピュータプログラム。
（項目５）
上記少なくとも１つのプロセッサに、
上記生成された検知タスクを用いて、感染した電子デバイスを識別する手順と、
上記マルウェアによって引き起こされた、上記感染した電子デバイスへの上記変更を軽減する軽減タスクを生成する手順と、
をさらに実行させるための、項目１から４のいずれか一項に記載のコンピュータプログラム。
（項目６）
上記軽減タスクは、回復環境において実行される、項目５に記載のコンピュータプログラム。
（項目７）
上記軽減タスクは、上記感染した電子デバイス上の二次オペレーティングシステムを用いて実行される、項目５または６に記載のコンピュータプログラム。
（項目８）
上記二次オペレーティングシステムは、上記感染した電子デバイス上にブートディスクとしてプッシュされる、項目７に記載のコンピュータプログラム。
（項目９）
パターン挙動生成モジュールを備え、
上記パターン挙動生成モジュールは、
システムにおいてマルウェアの実行を可能にし、
上記マルウェアの上記実行によって引き起こされた上記システムへの変更を記録し、
電子デバイスにおける上記マルウェアの検知のための検知タスクを生成し、上記検知タスクは少なくとも部分的に、上記マルウェアの上記実行によって引き起こされた上記システムへの上記変更に基づく、
装置。
（項目１０）
上記検知タスクは、上記マルウェアの、パターンマッチング、グローバルレピュテーション分析、プログラムエミュレーション、静的分析、および動的分析のうち１または複数を用いて生成される、項目９に記載の装置。
（項目１１）
上記パターン挙動生成モジュールは、さらに、
上記マルウェアに関連するマルウェアファミリーを識別し、上記マルウェアファミリーはファミリー挙動を含み、上記検知タスクは上記ファミリー挙動に部分的に基づく、項目９または１０に記載の装置。
（項目１２）
上記検知タスクは、ジェネリックマルウェア挙動に部分的に基づく、項目９から１１のいずれか一項に記載の装置。
（項目１３）
上記パターン挙動生成モジュールは、さらに、
セキュリティモジュールに上記検知タスクを通信し、上記セキュリティモジュールは、
上記生成された検知タスクを用いて、感染した電子デバイスを識別し、
上記マルウェアによって引き起こされた、上記感染した電子デバイスへの上記変更を軽減する軽減タスクを生成する、項目９から１２のいずれか一項に記載の装置。
（項目１４）
上記軽減タスクは、回復環境において実行される、項目１３に記載の装置。
（項目１５）
上記軽減タスクは、上記感染した電子デバイス上の二次オペレーティングシステムを用いて実行される、項目１３または１４に記載の装置。
（項目１６）
上記二次オペレーティングシステムは、上記感染した電子デバイス上にブートディスクとしてプッシュされる、項目１５に記載の装置。
（項目１７）
システムにおいてマルウェアを実行する段階と、
上記マルウェアの上記実行によって引き起こされる上記システムへの変更を記録する段階と、
電子デバイスにおける上記マルウェアの検知のための検知タスクを生成する段階であって、上記検知タスクは、少なくとも部分的に、上記マルウェアの上記実行によって引き起こされる上記システムの上記変更に基づく、段階と、を含む方法。
（項目１８）
上記検知タスクは、上記マルウェアの、パターンマッチング、グローバルレピュテーション分析、プログラムエミュレーション、静的分析、および動的分析のうち１または複数を用いて生成される、項目１７に記載の方法。
（項目１９）
上記マルウェアと関連するマルウェアファミリーを識別する段階であって、上記マルウェアファミリーはファミリー挙動を含み、上記検知タスクは上記ファミリー挙動に部分的に基づく、段階をさらに含む、
項目１７または１８に記載の方法。
（項目２０）
上記検知タスクは、ジェネリックマルウェア挙動に部分的に基づく、項目１７から１９のいずれか一項に記載の方法。
（項目２１）
上記生成された検知タスクを用いて、感染した電子デバイスを識別する段階と、
上記マルウェアによって引き起こされた、上記感染した電子デバイスへの上記変更を軽減する、軽減タスクを生成する段階と、
をさらに備える、項目１７から２０のいずれか一項に記載の方法。
（項目２２）
上記軽減タスクは、回復環境において実行される、項目２１に記載の方法。
（項目２３）
上記軽減タスクは、上記感染した電子デバイス上の二次オペレーティングシステムを用いて実行される、項目２１または２２に記載の方法。
（項目２４）
マルウェアからの修復のためのシステムであって、上記システムは、
パターン挙動生成モジュールと、
セキュリティモジュールと、
を備え、
上記パターン挙動生成モジュールは、
システムにおいてマルウェアの実行を可能にし、
上記マルウェアの上記実行によって引き起こされた上記システムへの変更を記録し、
電子デバイスにおける上記マルウェアの検知のための検知タスクを生成し、上記検知タスクは少なくとも部分的に、上記マルウェアの上記実行によって引き起こされる上記システムへの上記変更に基づき、
上記セキュリティモジュールは、
上記生成された検知タスクを用いて、感染した電子デバイスを識別し、
上記マルウェアによって引き起こされた、上記感染した電子デバイスへの上記変更を軽減する軽減タスクを生成する、システム。
（項目２５）
上記検知タスクが、上記マルウェアの、パターンマッチング、グローバルレピュテーション分析、プログラムエミュレーション、静的分析、および動的分析のうち１または複数を用いて生成される、項目２４に記載のシステム。
【図１Ａ】
2020113290.tif 000003
【図１Ｂ】
2020113290.tif 000004
【図１Ｃ】
2020113290.tif 000005
【図２】
2020113290.tif 000006
【図３】
2020113290.tif 000007
【図４】
2020113290.tif 000008
【図５】
2020113290.tif 000009
【図６】
2020113290.tif 000010
【図７】
2020113290.tif 000011
【図８】
2020113290.tif 000012
【外国語明細書】
2020113290000001.pdf