(57)【要約】  本発明は、デバイスの間に悪性アプリケーションの行為情報を使用する装置および方法に関する発明であって、本発明の一実施形態による悪性アプリケーションの行為情報を使用するデバイスは、アプリケーションの能力をモニターする能力モニター部と、アプリケーションの行為をモニターする行為モニター部と、前記モニターした能力と行為を形式言語文書で生成するｍＢＤＬ生成部、および前記形式言語文書を使用しアプリケーションの悪意的行為を制御する制御部とを含む。
2009526304.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションの能力をモニターする能力モニター部と、
アプリケーションの行為をモニターする行為モニター部と、
前記モニターした能力と行為を形式言語文書で生成するｍＢＤＬ生成部、および
前記形式言語文書を使用しアプリケーションの悪意的行為を制御する制御部と、を含む、悪性アプリケーションの行為情報を使用するデバイス。
【請求項２】
前記能力は、前記アプリケーションが前記デバイスの資源を使用したり制御したりする能力を含む、請求項１に記載の悪性アプリケーションの行為情報を使用するデバイス。
【請求項３】
前記デバイスの資源はファイル、ネットワーク、メモリ、プロセスのうち一つを含む、請求項２に記載の悪性アプリケーションの行為情報を使用するデバイス。
【請求項４】
前記行為は、前記アプリケーションが前記デバイスで実行する作業に対する情報を含む、請求項１に記載の悪性アプリケーションの行為情報を使用するデバイス。
【請求項５】
前記作業に対する情報は、前記デバイスのコンポーネント、ハードウェア、ソフトウェアのうち一つを実行することに関する情報を含む、請求項４に記載の悪性アプリケーションの行為情報を使用するデバイス。
【請求項６】
前記形式言語文書は、ＸＭＬを使用して生成された文書である、請求項１に記載の悪性アプリケーションの行為情報を使用するデバイス。
【請求項７】
前記ｍＢＤＬ生成部で生成した形式言語文書を他のデバイスに送信するネットワーク管理部をさらに含む、請求項１に記載の悪性アプリケーションの行為情報を使用するデバイス。
【請求項８】
アプリケーションの能力をモニターする段階と、
前記モニターしたアプリケーションの能力を形式言語文書で生成する段階と、
前記アプリケーションの行為をモニターする段階と、
前記モニターしたアプリケーションの形式を形式言語文書で生成する段階、および
前記生成した形式言語文書を使用し前記アプリケーションの悪意的行為を制御する段階と、を含む、悪性アプリケーションの行為情報を使用する方法。
【請求項９】
前記能力は、前記アプリケーションが前記デバイスの資源を使用したり制御したりする能力を含む、請求項８に記載の悪性アプリケーションの行為情報を使用する方法。
【請求項１０】
前記デバイスの資源はファイル、ネットワーク、メモリ、プロセスのうち一つを含む、請求項９に記載の悪性アプリケーションの行為情報を使用する方法。
【請求項１１】
前記行為は、前記アプリケーションが前記デバイスで実行する作業に対する情報を含む、請求項８に記載の悪性アプリケーションの行為情報を使用する方法。
【請求項１２】
前記作業に対する情報は、前記デバイスのコンポーネント、ハードウェア、ソフトウェアのうち一つを実行することに関する情報を含む、請求項１１に記載の悪性アプリケーションの行為情報を使用する方法。
【請求項１３】
前記形式言語文書は、ＸＭＬを使用して生成された文書である、請求項８に記載の悪性アプリケーションの行為情報を使用する方法。
【請求項１４】
前記生成した形式言語文書を他のデバイスに送信する段階をさらに含む、請求項８に記載の悪性アプリケーションの行為情報を使用する方法。
【請求項１５】
アプリケーションの能力または行為をモニターした結果、生成された形式言語文書を含むデータを受信する段階と、
前記受信したデータをパーシングし前記アプリケーションの能力または行為に対する情報を抽出する段階、および
前記抽出した情報により前記アプリケーションを制御する段階と、を含む、悪性アプリケーションの行為情報を使用する方法。
【請求項１６】
前記能力は、前記アプリケーションが前記デバイスの資源を使用したり制御したりする能力を含む、請求項１５に記載の悪性アプリケーションの行為情報を使用する方法。
【請求項１７】
前記デバイスの資源はファイル、ネットワーク、メモリ、プロセスのうち一つを含む、請求項１６に記載の悪性アプリケーションの行為情報を使用する方法。
【請求項１８】
前記行為は、前記アプリケーションが前記デバイスで実行する作業に対する情報を含む、請求項１５に記載の悪性アプリケーションの行為情報を使用する方法。
【請求項１９】
前記作業に対する情報は、前記デバイスのコンポーネント、ハードウェア、ソフトウェアのうち一つを実行することに関する情報を含む、請求項１８に記載の悪性アプリケーションの行為情報を使用する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションの悪意的行為を防止する方法に関するものであって、より詳細にはデバイスの間に悪性アプリケーションの行為情報を使用する装置および方法に関するものである。
【背景技術】
【０００２】
行為プロファイリング／モニターエンジン／アプリケーション（ｂｅｈａｖｉｏｒ  ｐｒｏｆｉｌｉｎｇ／ｍｏｎｉｔｏｒｉｎｇ  ｅｎｇｉｎｅ／ａｐｐｌｉｃａｔｉｏｎ、通常アンチウイルスソフトウェアと呼ぶ）は実行時のアプリケーション実行をモニターしてログを記録する。行為基盤（ｂｅｈａｖｉｏｒ  ｂａｓｅｄ）アンチウイルスソフトウェアはアプリケーションの行為に基盤をおいて悪意的アプリケーションを感知する。ホールセキュリティー（ＷｈｏｌｅＳｅｃｕｒｉｔｙ）、フィンジャンソフトウェア（Ｆｉｎｊａｎ  Ｓｏｆｔｗａｒｅ）、プルーフポイント（Ｐｒｏｏｆｐｏｉｎｔ）などは行為基盤ソリューションを提供する会社である。これらのソリューションは、代数的な算出アルゴリズムによってプロセスが悪意的なのか判断したり、またはアプリケーションレベルの行為をブロッキングするエンジンを提供したり、さらにマシンラーニング（Ｍａｃｈｉｎｅ  ｌｅａｒｎｉｎｇ）と人工知能技法を通して悪意的アプリケーションを防いでいる。
【０００３】
既存のアプリケーションの悪意的行為に対して明示する言語としてはＡＶＤＬ（Ａｐｐｌｉｃａｔｉｏｎ  ｖｕｌｎｅｒａｂｉｌｉｔｙ  ｄｅｓｃｒｉｐｔｉｏｎ  ｌａｎｇｕａｇｅ）、ＥＶＤＬ（Ｅｎｔｅｒｐｒｉｓｅ  ｖｕｌｎｅｒａｂｉｌｉｔｙ  ｄｅｓｃｒｉｐｔｉｏｎ）、ＯＶＡＬ（Ｏｐｅｎ  Ｖｕｌｎｅｒａｂｉｌｉｔｙ  ａｎｄ  Ａｓｓｅｓｓｍｅｎｔ  Ｌａｎｇｕａｇｅ）などが存在する。ＡＶＤＬは、ネットワークに表れたアプリケーションの保安的な脆弱性に対する情報を交換することにおいて標準を提供する。ＡＶＤＬは、ＨＴＴＰを通常の通信プロトコルに使用するクライアントとゲートウエー／プロキシとの間の脆弱性と攻撃を提示している。ＥＶＤＬは、ウェブアプリケーションの保安脆弱性を表すために公開されたデータフォーマットを生成する。またＥＶＤＬは、保安マークアップ言語（Ｓｅｃｕｒｉｔｙ  ｍａｒｋｕｐ  ｌａｎｇｕａｇｅ）であり、初期の危険とリスク率に対するガイドを提供する。ＯＶＡＬは、コンピュータシステムの脆弱性と設定問題を決定する言語である。ＯＶＡＬはコンピュータシステムの脆弱性と設定の可否をどのようにチェックするのかを提供する国際的情報保安コミュニティ基盤スタンダードである。
【０００４】
今日、多くのコンピュータシステムはアンチウイルスソフトウェアが搭載されているが、これらのソフトウェアはそれぞれ異なるウイルス署名／パッチに対するフォーマットで構成されたそれぞれ異なるベンダーによって提供される。それだけではなく、多様なウイルス／マルウェア（ｍａｌｗａｒｅ）はそれぞれ異なるプラットフォームのそれぞれ異なるアプリケーションの様々な脆弱点に対して影響を与えたり攻撃をしたりする。脆弱点（Ｖｕｌｎｅｒａｂｉｌｉｔｙ）は、オペレーティングシステムまたは他のシステムソフトウェアまたはアプリケーションソフトウェアコンポーネントに対して露出された保安であるといえる。したがって、このようなベンダーの間の異種性、またはアプリケーションの多様性などに対する相互運用性の考慮が必要とされる。
【０００５】
ＡＶＤＬは、アプリケーションのソフトウェアのスタックまたはコンポーネントの「公開された脆弱点」に対して明示している。例えば、オペレーティングシステムタイプ、バージョン、アプリケーションサーバタイプ、ウェブサーバータイプ、データベースタイプなどを明示する。これに伴いディレクトリの構造、ＨＴＭＬの構造、合法的進入ポイント、合法的対応パラメターなどに対する情報を明示する。ＥＶＤＬスキマは、基本情報を含むメタデータ（ｍｅｔａｄａｔａ）、アプリケーションの脆弱点の分類であるプロファイル（ｐｒｏｆｉｌｅ）、そしてソースコード分析脆弱点情報を含む分析（ａｎａｌｙｓｉｓ）、アプリケーションの脆弱点を感知する感知（ｄｅｔｅｃｔ）、そして実行中のアプリケーションを保護する保護（Ｐｒｏｔｅｃｔ）のような構成要素で構成されている。
【０００６】
前記の言語は公開された脆弱点を様々なオペレーティングシステムとプラットフォームの独立的な形態で共有して標準化することを目標とする。しかし、これら言語に対する標準化委員会はＸＭＬ文書形態で明示することの規定ができていない。
【０００７】
ウイルスのような悪意的ソフトウェア（ｍａｌｗａｒｅ）は全世界的に莫大な量と速度で生成されている。したがって、このような速度に遅れないためには図１のようなウイルスの出現とこれに対するパッチ（ｐａｔｃｈ）を生成する過程が必要である。
【０００８】
図１は、従来のアンチウイルスの具現を示す図である。ウイルスがユーザコンピュータシステムの公開された脆弱点を攻撃する（１）。ユーザのコンピュータシステムは攻撃の特徴をベンダーにレポートする（２）。そうすると、ウイルスコードがアンチウイルスベンダー側に伝送される（３）。アンチウイルスベンダーは、サンプルウイルスコードを分析してパッチまたは署名を生成する。一方、（３）の作業を実行しつつ、ベンダーは公開された脆弱点に関するデータベースをアップデートする（３’）。
【０００９】
アンチウイルスベンダーは、パッチまたは署名をクライアントコンピュータに送信してクライアントコンピュータがアンチウイルス署名をアップデートするようにする（４）。また、前述したＡＶＤＬ、ＥＶＤＬ、ＯＶＡＬに基盤をおいた文書を生成する（４’）。そして、ユーザコンピュータはアンチウイルスをコンピュータにダウンロードして認証されていないアプリケーションまたは悪意的アプリケーションが実行されることを防ぐ（５）。
【００１０】
図２は、生成された文書が公開された脆弱点を防ぐことを示す図である。図２は、悪性ソフトウェア／ウイルスが認証されたアプリケーションの公開された脆弱点を攻撃することを示している。一方、クライアント２はＣＶＥ（Ｃｏｍｍｏｎ  Ｖｕｌｎｅｒａｂｉｌｉｔｙ  ａｎｄ  Ｅｘｐｏｓｕｒｅ）データベースに脆弱点がどこにあるのかを質問することができる。質問の結果、ＡＶＤＬ／ＯＶＡＬ／ＥＶＤＬで生成された文書を受信し、これをクライアント１と共有することができる。
【００１１】
しかし、図１、２で見たＡＶＤＬ、ＯＶＡＬ、ＥＶＤＬのようなｘｍｌ文書で作成された脆弱点は「公開された脆弱点」ということに限界がある。したがって、悪意の「行為」を明示するのに足りない。すなわち、「ゼロ−時間保護」が難しいが、これは特定悪性ソフトウェアからシステムに害を与えられる脅威を直ちにブロッキングすることを意味する。前述した脆弱点記述語（ｖｕｌｎｅｒａｂｉｌｉｔｙ  ｄｅｓｃｒｉｐｔｉｏｎ  ｌａｎｇｕａｇｅ）は「公開された脆弱点」に対してのみ明示しており、アプリケーションの悪意的「行為」に対しては明示していない。また、脆弱点の共有においても既に公開された脆弱点を攻撃する場合に適用可能であり、悪性ソフトウェアの拡散を防ぐことには効果的ではない。
【００１２】
以前の記述語は脆弱点が存在することのテストができない。また、生成されたＸＭＬ文書は特定アプリケーションの正確な脆弱点を明示することにおいてサイズが膨大であるという短所がある。したがって、このような文書を交換して共有しパーシングするにおいてネットワークに負荷をもたらし得、埋め込みシステムのコンピュータパワーと少ないリソースに比べ負担となりうる。したがって、前記の問題点を解決する方案が必要である。
【発明の開示】
【発明が解決しようとする課題】
【００１３】
本発明は、前記した問題点を改善するために案出されたものであって、悪性アプリケーションの行為に対する情報を交換して使用することに目的がある。
【００１４】
本発明のまた他の目的は、相互に認証して信頼するデバイスの間に悪性アプリケーションの行為をモニターすることにある。
【００１５】
本発明の目的は以上で言及した目的に制限されず、言及されていないまた他の目的は次の記載から当業者に明確に理解できるであろう。
【課題を解決するための手段】
【００１６】
本発明の一実施形態による悪性アプリケーションの行為情報を使用するデバイスは、アプリケーションの能力をモニターする能力モニター部と、アプリケーションの行為をモニターする行為モニター部と、前記モニターした能力と行為を形式言語文書で生成するｍＢＤＬ生成部、および前記形式言語文書を使用しアプリケーションの悪意的行為を制御する制御部とを含む。
【００１７】
本発明の一実施形態による悪性アプリケーションの行為情報を使用する方法は、アプリケーションの能力をモニターする段階と、前記モニターしたアプリケーションの能力を形式言語文書で生成する段階と、前記アプリケーションの行為をモニターする段階と、前記モニターしたアプリケーションの形式を形式言語文書で生成する段階、および前記生成した形式言語文書を使用し前記アプリケーションの悪意的行為を制御する段階とを含む。
【００１８】
本発明の他の実施形態による悪性アプリケーションの行為情報を使用する方法は、アプリケーションの能力または行為をモニターした結果、生成された形式言語文書を含むデータを受信する段階と、前記受信したデータをパーシングし前記アプリケーションの能力または行為に対する情報を抽出する段階、および前記抽出した情報により前記アプリケーションを制御する段階とを含む。
【００１９】
その他実施形態の具体的な事項は詳細な説明および図に含まれている。
【００２０】
本発明の利点および特徴、並びにそれらを達成する方法は、添付される図面と共に後述する実施形態を参照することにより明確になる。しかし、本発明の目的は、以下で開示される実施形態に限定されず、相異なる多様な形態によっても達成可能である。したがって、以下の実施形態は単に、本発明の開示を十全たるものとし、当業者に本発明の範囲を認識させるために提供されるものである。すなわち、本発明の範囲はあくまで、請求項に記載された発明によってのみ規定される。なお、明細書全体において同一参照符号は同一構成要素を指称する。
【００２１】
以下、本発明の実施形態によってデバイスの間に悪性アプリケーションの行為情報を使用する装置および方法を説明するためのブロック図または処理フローチャートに関する図を参考して本発明について説明する。この時、フローチャートの各ブロックとフローチャートの組み合わせはコンピュータプログラムインストラクションにより実行可能なのが理解できるであろう。これらコンピュータプログラムインストラクションは、汎用コンピュータ、特殊用コンピュータまたはその他のプログラマブルデータプロセッシング装備のプロセッサーに搭載されうるので、コンピュータまたはその他のプログラマブルデータプロセッシング装備のプロセッサーを通じて実行されるそのインストラクションがフローチャートのブロックで説明された機能を行う手段を生成するように機構を作れる。これらコンピュータプログラムインストラクションは特定方式で機能を具現するためにコンピュータまたはその他のプログラマブルデータプロセッシング装備を指向できるコンピュータ利用可能またはコンピュータ判読可能メモリに保存されることも可能なので、そのコンピュータ利用可能またはコンピュータ判読可能メモリに保存されたインストラクションはフローチャートのブロックで説明された機能を行うインストラクション手段を内包する製造品目を生産することも可能である。コンピュータプログラムインストラクションはコンピュータまたはその他のプログラマブルデータプロセッシング装備上に搭載することも可能なので、コンピュータまたはその他のプログラマブルデータプロセッシング装備上で一連の動作段階が実行されてコンピュータで実行されるプロセスを生成し、コンピュータまたはその他のプログラマブルデータプロセッシング装備を行うインストラクションはフローチャートのブロックで説明された機能を実行するための段階を提供することも可能である。
【００２２】
また、各ブロックは特定の論理的機能を実行するための一つ以上の実行可能なインストラクションを含むモジュール、セグメントまたはコードの一部を示すことができる。  また、いくつかの代替実行形態では、ブロックで言及された機能が順序を外れて発生するのも可能であるということに注目せねばならない。例えば、連続して図示されている２つのブロックは、実質的に同時に行われてもよく、または可能でまたはそのブロックが時々該当する機能によって逆順で行われてもよい。
【００２３】
本明細書における悪性コードとは、悪意的機能を実行するコード（ｍａｌｗａｒｅ）を意味する。ウイルス、ハッキングプログラム、スパイウェアなどがこれに該当する。
【００２４】
図３は、本発明の一実施形態によるコンピュータシステムの構造を示す図である。図３のシステム５００は通常のコンピュータシステム、ノート型パソコンの他にも携帯電話、ＭＰ３プレーヤ、ＰＤＡ、ＰＭＰのようなシステムに適用可能であり、埋め込みシステムにも適用可能である。図３には示していないが、アプリケーションを実行するためのハードウェアの構成、例えば、ＣＰＵ、ＲＡＭ、ＲＯＭ、キャッシュなどが含みうる。また、ライブラリー／ドライバ／インターフェースが提供されうる。
【００２５】
本明細書において提案しようとする行為モニターアプリケーション２００は、ソフトウェアの形態またはハードウェアの形態で具現することが可能である。システム５００内の信頼を受けるアプリケーション１１０はコンテンツをダウンロードする。この時、ダウンロードしたコンテンツが認証されないアプリケーションであったりまたは悪意的アプリケーション１２０である場合に、行為モニターアプリケーション２００は、これを監視してレポートを実行したりアプリケーションの実行をブロッキングしたりすることができる。行為モニターアプリケーション２００の詳しい実行過程は後述する。
【００２６】
ネットワーク管理部１６０は、アプリケーションをダウンロードしたり、他のベンダーまたは他のデバイスにモニターした結果を送信したり行為モニターに必要な資料を受信するようにする。オペレーティングシステム１５０は、システム５００の運営の責任を負い、通常のコンピュータシステムのオペレーティングシステムの他にも埋め込みＯＳ（ＥｍｂｅｄｅｄＯＳ）、ＲＴＯＳ（Ｒｅａｌ−ＴｉｍｅＯＳ）などもこれに該当する。
【００２７】
以外にもシステムには入力／出力機能が付加され得、これはシステム５００の特徴と主要目的により変わりうる。
【００２８】
図３においてシステム５００には認証されない悪性アプリケーション１２０がダウンロードされている。行為モニターアプリケーション２００は、悪性アプリケーション１２０のメソッド（ｍｅｔｈｏｄ）のランタイムの行為をモニターする。アプリケーションのランタイムの行為はｍＢＤＬフォーマットで文書化されるが、ｍＢＤＬフォーマットは、ＸＭＬ基盤テンプレート言語である。ｍＢＤＬ（ｍａｌｉｃｉｏｕｓ  ｂｅｈａｖｉｏｒ  ｄｅｓｃｒｉｐｔｉｏｎ  ｌａｎｇｕａｇｅ）は悪性アプリケーションの行為を明示する。主要構成要素は図４で後述する。
【００２９】
図４は、本発明の一実施形態による悪性行為文書を明示するｘｍｌ文書の構造を示す例示図である。
【００３０】
悪性行為（ｍａｌ  ｂｅｈａｖｉｏｒ）を示すためには大きく能力（ｃａｐａｂｉｌｉｔｙ）と行為（ｂｅｈａｖｉｏｒ）の２種類に分けることができる。記述語（Ｍａｌ  Ｂｅｈａｖｉｏｒ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ、ＭＢＤＬ）は図４に示した通り、能力（Ｃａｐａｂｉｌｉｔｙ）７００と行為（Ｂｅｈａｖｉｏｒ）７６０で構成される。
【００３１】
能力構成要素は、アプリケーションの機能的能力について明示する。例えば、アプリケーションがプロセスまたはスレッドを生成または削除するかの可否などを明示する。能力構成要素７００は、大きくファイルアクセス７１０、ネットワーク７２０、メモリ７３０、プロセス／スレッド７４０で構成される。ファイルアクセス７１０は、ファイルの生成、削除、読み、書きまたは実行するなど、特定アプリケーションがファイルに対して実行できる能力を明示している。例えば、アプリケーションがＡというファイルを読み込みＢというファイルを削除する機能を提供する場合、これに対して明示することができる。
【００３２】
ネットワーク７２０ではアプリケーションが通信機能を通して実行できる能力を明示している。例えば、いかなる通信ポートを使用するのか（ＣＯＭ、並列、ＩｒＤＡ）、または無線通信方式で何を選択するのかなどを明示する。また通信において共通に使用される機能（Ｌｉｓｔｅｎ／Ｓｅｎｄ／Ｒｅｃｅｉｖｅ／Ｃｏｎｎｅｃｔ）などを実行するかの可否も明示する。例えば、アプリケーションが１０９３６ポートを使用し、このポートを使用しデータを送信するという内容を明示することができる。
【００３３】
メモリ７３０では、メモリを割り当ててまた復旧させる命令語（ｍａｌｌｏｃ／ｒｅａｌｌｏｃ／ａｌｌｏｃａ／ｃａｌｌｏｃ／ｈｅａｐｍｉｎ／ｆｒｅｅ）がアプリケーションによって実行するかの可否を明示する。そして、プロセス／スレッド７４０はプロセスの生成及びオープンまたは終了、重畳させるかの可否を明示する。例えば、Ａというプロセスを生成したり除去したりする作業をアプリケーションが実行すると、これを明示することができる。能力構成要素７００は、デバイスのリソース（資源、ｒｅｓｏｕｒｃｅ）に対するアプリケーションの接近の可否または使用、制御の可否を示す。
【００３４】
一方、行為（ｂｅｈａｖｉｏｒ）７６０構成要素では、アプリケーションがいかなる作業を実行するのかを示す。ランタイム（ｒｕｎ  ｔｉｍｅ）のあいだアプリケーションの行為を明示するが、例えば、アプリケーションが実行中に実行するアクションまたはイベントなどを明示する。下位構成要素ではコンポーネント７７０、ハードウェア、ソフトウェア７８０、イベントフロー７９０などがある。コンポーネント７７０は、さらにハードウェアまたはソフトウェアのような下位構成要素を含む。コンポーネント７７０は、アプリケーションがハードウェアまたはソフトウェアの実行行為を明示する。ハードウェア、ソフトウェア７８０はさらに実質的なイベントフロー７９０に対する情報を明示する。ハードウェアまたはソフトウェア内でイベントがいかなる方式で実行されるのかを提示する。イベントフロー７９０は、悪性コードが実行時間の間いかなる実質的なイベントが起きるのかを明示する。
【００３５】
図５は、本発明の一実施形態による図４で提示した分類により能力（ｃａｐａｂｉｌｉｔｙ）と行為（ｂｅｈａｖｉｏｒ）を明示するのに必要なデータユニット８００を定義したものである。
【００３６】
一番目のフィールド８１０は、プロファイルに対する識別子であり、これはランダムに生成されうる。２番目のフィールド８２０は、プロファイルのタイプであり、能力（ｃａｐａｂｉｌｉｔｙ）を明示するものであるか、または行為（ｂｅｈａｖｉｏｒ）を明示するものであるかを表現する。一実施形態で１ビットを割り当てして、０である場合、能力を明示し、１である場合、行為を明示するようにすることができる。３番目のフィールド８３０は、能力または行為により詳細に明示した文書である。図５ではＸＭＬ文書を採択したことが分かる。通常の形式言語（ｆｏｒｍａｌ  ｌａｎｇｕａｇｅ）で現在最も多いシステムで使用するＸＭＬ文書を採択した。
【００３７】
図６は、本発明の一実施形態によるｍＢＤＬを生成して２つのデバイスの間に相互交換する方法とプロトコルを定義する例である。
【００３８】
図６のコンピュータデバイスは一実施形態であり、前述した通りノート型パソコン、ＰＤＡ、携帯電話などの様々なデバイスにも適用可能である。図６でコンピュータデバイス１（９０１）とコンピュータデバイス２（９０２）は相互認証過程を経た信頼できるデバイスである。認証過程の例ではＴＣＧ技術（Ｔｒｕｓｔｅｄ  Ｃｏｍｐｕｔｉｎｇ  Ｇｒｏｕｐ）を使用し認証することができる。
【００３９】
コンピュータデバイス２（９０２）は悪性アプリケーションに対して行為をモニターし、ｍＢＤＬ文書を生成する（Ｓ１１０）。２つのｍＢＤＬ文書が生成されるが、能力プロファイルと行為プロファイルである。先ず、コンピュータデバイス２（９０２）は能力プロファイルを生成して（Ｓ１１２）をコンピュータデバイス１（９０１）に送信して共有する（Ｓ１１４）。能力プロファイルでは悪性アプリケーションが該当プラットフォーム内で「何」をするのかに対する情報を提供する。このような情報は他のコンピュータデバイスに非常に重要である。能力プロファイルの構成は図５に提示されたフォーマットに従うことができる。能力プロファイルの一実施形態でプロセス識別子８１０とプロファイルタイプ（能力プロファイルの場合０）を設定し、悪性アプリケーションの能力（ｍａｌｃａｐ）を明示したｘｍｌ文書で構成される。ｘｍｌ文書の構成に対しては後述する。
【００４０】
コンピュータデバイス１（９０１）は受信した能力プロファイルに対してＡＣＫを送信する（Ｓ１２０）。そして、コンピュータデバイス１（９０１）は受信した能力プロファイルを示すｍＢＤＬ文書をパーシングして、政策テーブルまたは政策データベースに保存してパーシングする（Ｓ１２２）。一方、政策テーブルまたは政策データベースの内容とパーシングした結果が異なる場合、コンピュータデバイス１（９０１）は異議を提議し、コンピュータデバイス２（９０２）にアプリケーションの実行を中止させることを知らせることができる（Ｓ１２４）。これは該当プロファイル識別子を含むデータユニットを送信することによって可能である。
【００４１】
コンピュータデバイス１（９０１）から応答を受信すると、コンピュータデバイス２（９０２）は悪性アプリケーションの行為プロファイルを送信する（Ｓ１３０）。送信する行為プロファイルは図５のデータユニットの構成に従うことができる。ｘｍｌ文書の構成に対しては後述する。コンピュータデバイス１（９０１）は受信結果ＡＣＫを送信する（Ｓ１４０）。そして、内部のツールを使用して受信した行為プロファイルを評価する（Ｓ１４２）。
【００４２】
図７は本発明の一実施形態による多数のデバイスの間にｍＢＤＬを生成して共有する過程を示す図である。
【００４３】
コンピュータパワーが大きいデバイス９１０は他のデバイス９０４、９０６、９０８より強力な機能を有するアンチウイルスソフトウェアが搭載される。そして、搭載されたソフトウェアを使用し悪性アプリケーションの行為をモニターすることができる。モニターした結果、生成されたｍＢＤＬファイルは他のデバイス９０４、９０６、９０８に伝送される。デバイス９０４、９０６、９０８はコンピュータパワーが高くないため、受信したｍＢＤＬファイルをパーシングする機能を備えるか、これを土台に悪性アプリケーションの実行を中止させるなどのアンチウイルス機能を提供することができる。したがって、特定のデバイスで悪性アプリケーションの能力と行為に対して明示したｍＢＤＬ文書を生成して文書を他のデバイスと共有することによって悪性アプリケーションの実行を防ぐことができる。
【００４４】
本実施形態で使用される「〜部」という用語、すなわち「〜モジュール」または「〜テーブル」などはソフトウェア、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）または注文型半導体（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ、ＡＳＩＣ）のようなハードウェア構成要素を意味し、モジュールはある機能を果たす。しかし、モジュールはソフトウェアまたはハードウェアに限定される意味ではない。モジュールは、アドレッシングできる保存媒体にあるように構成されることもでき、一つまたはそれ以上のプロセッサーを再生させるように構成されることもできる。したがって、実施形態でのモジュールは、ソフトウェアの構成要素、オブジェクト指向ソフトウェアの構成要素、クラスの構成要素およびタスク構成要素のような構成要素と、プロセス、関数、属性、プロシーザー、サブルーチン、プログラムコードのセグメント、ドライバ、ファームウェア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイ、および変数を含む。構成要素とモジュールのうちから提供される機能はさらに小さい数の構成要素およびモジュールに結合されたり追加的な構成要素とモジュールにさらに分離したりすることができる。のみならず、構成要素およびモジュールはデバイス内の一つまたはそれ以上のＣＰＵを再生させるように実現することもできる。
【００４５】
図８は、本発明の一実施形態による行為モニターアプリケーションの構成を示す図である。
【００４６】
能力モニター部２１０は、悪性アプリケーションの能力（ｃａｐａｂｉｌｉｔｙ、ｍａｌｃａｐ）をモニターする。いかなるファイルをアクセスするのか、またはいかなるネットワーク作業を実行するのかなどをモニターする。行為モニター部２２０は、悪性アプリケーションの行為（ｂｅｈａｖｉｏｒ）をモニターする。ハードウェアによる行為であるのか、ソフトウェアによる行為であるのかなどをチェックする。このように二つのモニター部２１０、２２０でモニターした結果によってｍＢＤＬ生成部２３０はｘｍｌ文書を生成する。この文書は他のデバイスと共有することができる。制御部２４０は、生成されたｘｍｌ文書を使用しアプリケーションが悪性アプリケーションであるかの可否を判別する。そして、その結果によってアプリケーションの実行の可否を制御することができる。
【００４７】
図９は、本発明の一実施形態による悪性アプリケーションの能力モニター結果、生成されるｍＢＤＬ文書の構成を示す例である。
【００４８】
１０１０はｍＢＤＬのｃａｐａｂｉｌｉｔｙ内部に入る要素を示す。ｆｉｌｅ＿ａｃｃｅｓｓ、ｎｅｔｗｏｒｋ、ｍｅｍｏｒｙ、ｐｒｏｃｅｓｓは前述した能力を明示するのに必要な構成要素である。そして、１０１２は１０１０に羅列した要素によりｍＢＤＬ文書を作成した例である。
【００４９】
図１０は、本発明の一実施形態による悪性アプリケーションの行為モニター結果、生成されるｍＢＤＬ文書の構成を示す例である。
【００５０】
１０２０は、ｍＢＤＬのｂｅｈａｖｉｏｒ内部に入る要素を示す。悪性アプリケーションのイベントフローをモニターしてハードウェア、ソフトウェアに対して各々ＨＷ、ＳＷというタグを使用し明示している。そして、１０２２は１０２０に羅列した要素によりｍＢＤＬ文書を作成した例である。
【００５１】
前記のｍＢＤＬによってプラットフォームが他のベンダーまたはデバイスの間にも共通した文書形式によって悪性アプリケーションの情報を共有することができる。また、能力構成要素を使用し疑われるアプリケーションの行為をあらかじめ評価することができるので、悪性行為をレポートするための時間を減らすことができる。また、信頼するデバイスの間に悪性アプリケーションに対するプロファイルを共有することができ、少ないコンピュータパワーを有するデバイスでもモニター機能またはｘｍｌパーシング機能だけを有していてもアプリケーションの行為を評価することができる。したがって、全体行為モニターアプリケーションをインストールしなくても良い。
【００５２】
本発明が属する技術分野における通常の知識を有する者は、本発明を、その技術的思想や必須の特徴を変更しない範囲で、他の具体的な形態において実施されうるということを理解することができる。したがって、上記実施形態はすべての面で例示的なものであり、限定的ではないと理解しなければならない。本発明の範囲は前記詳細な説明よりは後述する特許請求の範囲によって示され、特許請求の範囲の意味および範囲そして、その均等概念から導き出されるすべての変更または変形された形態が本発明の範囲に含まれると解釈されなければならない。
【発明の効果】
【００５３】
本発明を実現することによって異機種、他のベンダーで製作されたデバイスの間にも悪性アプリケーションに対する情報を共有することができる。
【００５４】
本発明を実現することによってパーシング機能だけを備えたデバイスも悪性アプリケーションの実行を防止することができる。
【図面の簡単な説明】
【００５５】
【図１】従来のアンチウイルスの具現を示す図である。
【図２】生成された文書が公開された脆弱点を防ぐことを示す図である。
【図３】本発明の一実施形態によるコンピュータシステムの構造を示す図である。
【図４】本発明の一実施形態による悪性行為文書を明示するｘｍｌ文書の構造を示す例示図である。
【図５】本発明の一実施形態による図４で提示した分類により能力（ｃａｐａｂｉｌｉｔｙ）と行為（ｂｅｈａｖｉｏｒ）を明示するのに必要なデータユニット８００を定義したものである。
【図６】本発明の一実施形態によるｍＢＤＬを生成して２つのデバイスの間に相互交換する方法とプロトコルを定義する例である。
【図７】本発明の一実施形態による多数のデバイスの間にｍＢＤＬを生成して共有する過程を示す図である。
【図８】本発明の一実施形態による行為モニターアプリケーションの構成を示す図である。
【図９】本発明の一実施形態による悪性アプリケーションの能力モニター結果、生成されるｍＢＤＬ文書の構成を示す例である。
【図１０】本発明の一実施形態による悪性アプリケーションの行為モニター結果、生成されるｍＢＤＬ文書の構成を示す例である。
【符号の説明】
【００５６】
２００    行為モニターアプリケーション
２１０    能力モニター部
２２０    行為モニター部
２３０    ｍＢＤＬ生成部
２４０    制御部
８００    データユニット
【図１】
2009526304.tif 000003
【図２】
2009526304.tif 000004
【図３】
2009526304.tif 000005
【図４】
2009526304.tif 000006
【図５】
2009526304.tif 000007
【図６】
2009526304.tif 000008
【図７】
2009526304.tif 000009
【図８】
2009526304.tif 000010
【図９】
2009526304.tif 000011
【図１０】
2009526304.tif 000012
【国際調査報告】
2009526304.tif 000013
2009526304.tif 000014