(57)【要約】  コンピュータが動的アドレス分離を行う。このコンピュータは、アプリケーションアドレスに関連付けられたアプリケーションと、外部ネットワークから着信データパケットを受信するとともに外部ネットワークへ発信データパケットを送信すべく結合されたネットワーク・インターフェイスと、アプリケーションアドレスとパブリックアドレスとの間で変換を行うように構成されたネットワーク・アドレス変換エンジンと、発信データパケットをネットワーク・アドレス変換エンジンへ自動的に転送して、アプリケーションアドレスをパブリックアドレスに変換するとともに、着信データパケットをネットワーク・アドレス変換エンジンへ自動的に転送して、パブリックアドレスをアプリケーションアドレスに変換するためのドライバとを備える。このコンピュータは、ネットワーク・レベルのセキュリティ及びアプリケーションレベルのセキュリティの両方を処理するように構成されたファイアウォールと通信することができる。
2010528550.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションアドレスに関連付けられたアプリケーションと、
外部ネットワークから着信データパケットを受信するとともに外部ネットワークへ発信データパケットを送信すべく結合されたネットワーク・インターフェイスと、
前記アプリケーションアドレスとパブリックアドレスとの間で変換を行うように構成されたネットワーク・アドレス変換エンジンと、
前記発信データパケットを前記ネットワーク・アドレス変換エンジンへ自動的に転送して、前記アプリケーションアドレスを前記パブリックアドレスに変換するとともに、前記着信データパケットを前記ネットワーク・アドレス変換エンジンへ自動的に転送して、前記パブリックアドレスを前記アプリケーションアドレスに変換するためのドライバと、
を備えることを特徴とするコンピュータ。
【請求項２】
前記ネットワーク・アドレス変換エンジンが前記ドライバの一部である、
ことを特徴とする請求項１に記載のコンピュータ。
【請求項３】
前記ネットワーク・アドレス変換エンジンがファイアウォールの一部である、
ことを特徴とする請求項１に記載のコンピュータ。
【請求項４】
前記ファイアウォールがモバイルセキュリティ・システム上に位置する、
ことを特徴とする請求項３に記載のコンピュータ。
【請求項５】
前記ネットワーク・アドレス変換エンジンが、動的ホスト設定プロトコルを使用するように構成される、
ことを特徴とする請求項１に記載のコンピュータ。
【請求項６】
前記コンピュータが、前記アプリケーションを識別するデータパケットをファイアウォールへ送信するように構成され、前記ファイアウォールが、ネットワークレベルのセキュリティ及びアプリケーションレベルのセキュリティの両方を処理するように構成される、
ことを特徴とする請求項１に記載のコンピュータ。
【請求項７】
ネットワーク・インターフェイスと、
ネットワーク・レベルのセキュリティ及びアプリケーションレベルのセキュリティの両方を処理するように構成された、前記ネットワーク・インターフェイスと通信するファイアウォールと、
１又はそれ以上のアプリケーションを有し、該１又はそれ以上のアプリケーションを識別するデータパケットを前記ファイアウォールへ送信するように構成された、前記ファイアウォールと通信するコンピュータと、
を備えることを特徴とするシステム。
【請求項８】
個々のデータパケットが、前記１又はそれ以上のアプリケーションの１つに関連付けられ、個々のデータパケットが、該データパケットに関連するアプリケーションを識別するデータを含む、
ことを特徴とする請求項７に記載のシステム。
【請求項９】
前記ファイアウォールは、前記データパケットに関連するアプリケーションを識別するデータを使用してアプリケーションレベルのセキュリティを処理し、前記アプリケーションを識別するデータを前記データパケットから取り除くことによりデータパケットサブセットを作成し、該データパケットサブセットを外部ネットワークへ送信するように構成される、
ことを特徴とする請求項８に記載のシステム。
【請求項１０】
前記ネットワーク・インターフェイスが、外部ネットワークから着信データを受信するとともに該着信データを前記ファイアウォールへルーティングするように構成される、
ことを特徴とする請求項７に記載のシステム。
【請求項１１】
個々のアプリケーションが少なくとも１つのアドレスに関連付けられ、
前記ファイアウォールが、前記アドレスを外部ネットワークから動的に分離するように構成される、
ことを特徴とする請求項７に記載のシステム。
【請求項１２】
前記ファイアウォールが、前記動的ホスト設定プロトコルを使用して、前記アドレスを前記外部ネットワークから動的に分離するように構成される、
ことを特徴とする請求項１１に記載のシステム。
【請求項１３】
パブリックアドレスに関連する着信データを処理する、パーソナル・コンピュータ内における方法であって、
外部ネットワークからデータを受信するステップと、
前記パブリックアドレスをアプリケーションに関連する内部アドレスに変換するステップと、
悪質なコードについて前記データを分析するステップと、
前記データが悪質なコードを含まない場合、前記データを前記アプリケーションへルーティングするステップと、
を含むことを特徴とする方法。
【請求項１４】
前記分析ステップが、悪質なコードについて前記ネットワーク・レベル及び前記アプリケーションレベルの両方において前記データを分析するステップを含む、
ことを特徴とする請求項１３に記載の方法。
【請求項１５】
前記変換ステップが動的ホスト設定プロトコルを使用する、
ことを特徴とする請求項１３に記載の方法。
【請求項１６】
発信データを処理する、コンピュータ内における方法であって、
内部アドレスに関連するアプリケーションから発信データを受信するステップと、
前記内部アドレスをパブリックアドレスに変換するステップと、
前記パブリックアドレスを使用して少なくとも前記発信データのサブセットを外部ネットワークへルーティングするステップと、
を含み、これにより前記内部アドレスを前記外部ネットワークから動的に分離する、
ことを特徴とする方法。
【請求項１７】
前記変換ステップが動的ホスト設定プロトコルを使用する、
ことを特徴とする請求項１６に記載の方法。
【請求項１８】
前記発信データを１又はそれ以上のデータパケットに設定するステップと、
前記１又はそれ以上のデータパケットの各々を前記アプリケーションに関連付けるステップと、
前記１又はそれ以上のデータパケットの各々にアプリケーション識別データを組み込むステップと、
をさらに含むことを特徴とする請求項１６に記載の方法。
【請求項１９】
前記アプリケーション識別データを前記１又はそれ以上のデータパケットの各々から取り除くことにより１又はそれ以上のデータパケットサブセットを作成するステップをさらに含み、前記ルーティングステップが、前記１又はそれ以上のデータパケットサブセットを前記外部ネットワークへルーティングするステップを含む、
ことを特徴とする請求項１８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
<<優先権の主張>>
本出願は、米国仮特許出願第６０／９４０，８８２号の利益を主張するものであり、該特許は引用により本明細書に組み入れられる。
【０００２】
本発明は、一般にコンピュータ・セキュリティに関し、より具体的には、外部装置（デバイス）とホスト装置（デバイス）との間にデータ・セキュリティ及び装置セキュリティを提供するためのシステム及び方法を提供する。
【背景技術】
【０００３】
インターネットは、政府機関、大学、非営利団体、会社及び個人が所有する何百万もの個々のコンピュータ・ネットワークの相互接続である。インターネットは貴重な情報及び娯楽の膨大なソースであるが、同時に「ウィルス」、「スパイウェア」、「アドウェア」、「ワーム」、「トロイの木馬」、及びその他の悪質なコードなどの、システムに害を与えるとともにシステムにとって致命的なアプリケーション・コードの主なソースにもなっている。
【０００４】
ユーザを保護するために、プログラマーは、悪質なコードによる個々のコンピュータ及びネットワーク・コンピュータの両方に対する攻撃を防ぐためのコンピュータ・セキュリティ・システム及びコンピュータ・ネットワーク・セキュリティ・システムを設計する。大部分において、ネットワーク・セキュリティ・システムは比較的成功を収めてきた。企業のネットワーク内からインターネットに接続するコンピュータは、通常２つの防衛線を有する。第１の防衛線はネットワーク・セキュリティ・システムを含み、ファイアウォール、アンチウィルス、アンチスパイウェア及びコンテンツ・フィルタリングを含むネットワーク・ゲートウェイの一部となり得る。第２の防衛線は個々の機械上の個々のセキュリティ・ソフトウェアを含み、これらは通常ネットワーク・セキュリティ・システムほど安全ではなく、従ってより攻撃を受けやすい。第１及び第２の防衛線をともに組み合わせることで、極めて良好なセキュリティ保護が実現する。しかしながら、装置（デバイス）が、介在するネットワーク・セキュリティ・システムを使用せずにインターネットに接続する場合、装置はその第１の防衛線を失う。従って、（ラップトップ、デスクトップ、ＲＩＭのＢｌａｃｋｂｅｒｒｙのようなＰＤＡ、携帯電話、インターネットに接続するあらゆる無線装置などの）モバイル装置が企業ネットワークの外部を移動する場合、さらに攻撃を受けやすくなる。
【０００５】
図１は、従来技術による例示的なネットワーク・システム１００を示す図である。ネットワーク・システム１００は、デスクトップ１０５及びモバイル装置１１０を含み、各々が企業のイントラネット１１５に結合されている。イントラネット１１５は、（企業のゲートウェイの一部となり得る）ネットワーク・セキュリティ・システム１２０を介して信頼できないインターネット１３０に結合されている。従って、デスクトップ１０５及びモバイル装置１１０は、ネットワーク・セキュリティ・システム１２０を介してインターネット１３０にアクセスする。通常、セキュリティ・アドミニストレータ１２５がネットワーク・セキュリティ・システム１２０を管理して、ネットワーク・セキュリティ・システム１２０が最新のセキュリティ保護を含むこと、ひいてはデスクトップ１０５及びモバイル装置１１０が悪質なコードから保護されることを確実にする。境界１３５が、信頼できる企業１４０と信頼できない公衆インターネット１３０とを分離する。デスクトップ１０５及びモバイル装置１１０は、ネットワーク・セキュリティ・システム１２０を介してインターネット１３０に接続されているので、双方ともにインターネット１３０からの悪質なコードに対して２つの防衛線（すなわち、ネットワーク・セキュリティ・システム１２０及び装置自体に常駐するセキュリティ・ソフトウェア）を有している。当然ながら、信頼できるとはいえ、イントラネット１１５もまた悪質なコードのソースになり得る。
【０００６】
図２は、モバイル装置１１０が信頼できる企業１４０の外部で移動して、信頼できないインターネット１３０に再接続された場合の従来技術による例示的なネットワーク・システム２００を示す図である。おそらく、ユーザが移動時にモバイル装置１１０を持ち運び、サイバーカフェで、ホテルで、或いはいずれかの信頼できない有線又は無線接続を介してインターネット１３０に接続した場合にこの状況が起こり得る。従って、図示のように、モバイル装置１１０はもはや（ネットワーク・セキュリティ・システム１２０により）第１の防衛線によって保護されておらず、従って悪質なコードを受信するリスクが高まっている。さらに、モバイル装置１１０を信頼できる企業１４０に物理的に持ち帰り、そこから再接続を行うことにより、モバイル装置１１０は、受信した何らかの悪質なコードをイントラネット１１５へ転送してしまうという危険性がある。
【０００７】
モバイル装置の数及び攻撃の数が増加するにつれ、モバイル・セキュリティはますます重要になってきている。２００５年１２月７〜８日にニューヨークで開催された最近のＩｎｆｏ−Ｓｅｃｕｒｉｔｙ  Ｃｏｎｆｅｒｅｎｃｅ（情報セキュリティ会議）においてこの問題が重視された。しかしながら、完全な解決策は示されなかった。
【０００８】
同様にホスト装置を、ＵＳＢフラッシュ・ドライブ、ｉＰｏｄ、外付けハード・ドライブなどの外部装置に接続する場合、双方の装置が悪質なコードを受信したり、或いはプライベート・データを転送したりしやすくなる。図１１は、ホスト・コンピュータ（ホスト）１１０５及び外部装置１１１０を含む例示的な従来技術のデータ交換システム１１００を示す図である。ホスト１１０５は、外部装置１１１０を受け入れるためのＵＳＢポートなどの外部装置（ＥＤ)ポート１１１５を含む。ホスト１１０５はまた、列挙を行うとともに外部装置１１１０とホスト１１０５間の通信を可能にするためのＥＤドライバ１１２０も含む。外部装置１１１０は、ＥＤポート１１１５と通信するためのＵＳＢプラグなどのＥＤプラグを含む。ホスト１１０５及び外部装置１１１０の両方が悪質なコードを受信したり、或いはプライベート・データを転送したりしやすい。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
従って、ホスト装置及び外部装置にセキュリティを提供するシステム及び方法の必要性が存在する。
【課題を解決するための手段】
【００１０】
１つの実施形態では、本発明は、アプリケーション・アドレスに関連付けられたアプリケーションと、外部ネットワークから着信データパケットを受信するとともに外部ネットワークへ発信データパケットを送信すべく結合されたネットワーク・インターフェイスと、アプリケーション・アドレスとパブリック・アドレスとの間で変換を行うように構成されたネットワーク・アドレス変換エンジンと、発信データ・パケットをネットワーク・アドレス変換エンジンへ自動的に転送して、アプリケーションアドレスをパブリックアドレスに変換するとともに、着信データパケットをネットワーク・アドレス変換エンジンへ自動的に転送して、パブリックアドレスをアプリケーション・アドレスに変換するためのドライバとを備えたコンピュータを提供する。ネットワーク・アドレス変換エンジンは、ドライバの一部又はファイアウォールの一部であってもよい。ファイアウォールは、モバイル・セキュリティ・システムに位置することができる。ネットワーク・アドレス変換エンジンは、動的ホスト設定プロトコルを使用するように構成することができる。コンピュータは、アプリケーションを識別するデータ・パケットをファイアウォールへ送信するように構成することができ、ファイアウォールは、ネットワーク・レベル・セキュリティ及びアプリケーションレベル・セキュリティの両方を処理するように構成することができる。
【００１１】
１つの実施形態では、本発明は、ネットワーク・インターフェイスと、ネットワーク・レベル・セキュリティ及びアプリケーションレベル・セキュリティの両方を処理するように構成された、上記ネットワーク・インターフェイスと通信するファイアウォールと、１又はそれ以上のアプリケーションを有し、該１又はそれ以上のアプリケーションを識別するデータパケットをファイアウォールへ送信するように構成された、上記ファイアウォールと通信するコンピュータとを備えたシステムを提供する。個々のデータを、１又はそれ以上のアプリケーションの１つに関連付けることができる。個々のデータパケットは、データパケットに関連するアプリケーションを識別するデータを含むことができる。ファイアウォールは、データパケットに関連するアプリケーションを識別するデータを使用してアプリケーションレベルのセキュリティを処理し、アプリケーションを識別するデータをデータパケットから取り除くことによりデータパケットサブセットを作成し、該データパケットサブセットを外部ネットワークへ送信するように構成することができる。ネットワーク・インターフェイスは、外部ネットワークから着信データを受信し、この着信データをファイアウォールへルーティングするように構成することができる。個々のアプリケーションを、少なくとも１つのアドレスに関連付けることができる。ファイアウォールは、アドレスを外部ネットワークから動的に分離するように構成することができる。ファイアウォールは、動的ホスト設定プロトコルを使用してアドレスを外部ネットワークから動的に分離するように構成することができる。
【００１２】
１つの実施形態では、本発明は、パブリックアドレスに関連する着信データを処理する、パーソナル・コンピュータ内における方法を提供し、この方法は、外部ネットワークからデータを受信するステップと、パブリックアドレスをアプリケーションに関連する内部アドレスに変換するステップと、悪質なコードについてデータを分析するステップと、データが悪質なコードを含まない場合、データをアプリケーションへルーティングするステップとを含む。分析ステップは、ネットワーク・レベル及びアプリケーションレベルの両方において悪質なコードについてデータを分析するステップを含むことができる。変換ステップは、動的ホスト設定プロトコルを使用することができる。
【００１３】
１つの実施形態では、本発明は、発信データを処理する、コンピュータ内における方法を提供し、この方法は、内部アドレスに関連するアプリケーションから発信データを受信するステップと、内部アドレスをパブリックアドレスに変換するステップと、パブリックアドレスを使用して少なくとも上記発信データのサブセットを外部ネットワークへルーティングするステップとを含み、これにより内部アドレスを外部ネットワークから動的に分離する。変換ステップは、動的ホスト設定プロトコルを使用することができる。この方法は、発信データを１又はそれ以上のデータパケットに設定するステップと、該１又はそれ以上のデータパケットの各々をアプリケーションに関連付けるステップと、１又はそれ以上のデータパケットの各々にアプリケーション識別データを組み込むステップとをさらに含むことができる。この方法は、１又はそれ以上のデータパケットの各々からアプリケーション識別データを取り除くことにより１又はそれ以上のデータパケットサブセットを作成するステップをさらに含むことができ、ルーティングステップは、上記１又はそれ以上のデータパケットサブセットを外部ネットワークへルーティングするステップを含む。
【図面の簡単な説明】
【００１４】
【図１】第１の状態における従来技術のネットワーク・システムを示すブロック図である。
【図２】第２の状態における従来技術のネットワーク・システムを示すブロック図である。
【図３】本発明の実施形態によるネットワーク・システムを示すブロック図である。
【図４】本発明の実施形態によるコンピュータ・システムの詳細を示すブロック図である。
【図５】本発明の実施形態によるモバイルセキュリティ・システムの詳細を示すブロック図である。
【図６】Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）の実施形態によるモバイルセキュリティ・システムの詳細を示すブロック図である。
【図７】本発明の実施形態によるスマートポリシ更新システムの詳細を示すブロック図である。
【図８】ＯＳＩ層に関するネットワーク・セキュリティ対策の詳細を示すブロック図である。
【図９】セキュリティ・コードをモバイル・セキュリティ・システムに拡げるための通信技術の詳細を示すブロック図である。
【図１０Ａ】本発明の様々な実施形態による、モバイル装置をモバイル・セキュリティ・システムに接続するための様々なアーキテクチャを示すブロック図である。
【図１０Ｂ】本発明の様々な実施形態による、モバイル装置をモバイル・セキュリティ・システムに接続するための様々なアーキテクチャを示すブロック図である。
【図１０Ｃ】本発明の様々な実施形態による、モバイル装置をモバイル・セキュリティ・システムに接続するための様々なアーキテクチャを示すブロック図である。
【図１１】従来技術のデータ交換システムを示すブロック図である。
【図１２】本発明の実施形態による安全データ交換システムを示すブロック図である。
【図１３】本発明の実施形態によるセキュリティ装置の詳細を示すブロック図である。
【図１４】本発明の実施形態によるセキュリティ・システムの詳細を示すブロック図である。
【図１５】本発明の別の実施形態による安全データ交換システムを示すブロック図である。
【図１６】本発明の実施形態によるホストと外部装置との間の安全データ交換の方法を示すフロー図である。
【図１７】ハードウェアベースのファイアウォールを有する従来技術のネットワーク・システムを示すブロック図である。
【図１８】ソフトウェアベースのファイアウォールを有する従来技術のネットワーク・システムを示すブロック図である。
【図１９】本発明の実施形態による、動的アドレス分離を行う。システムを示すブロック図である。
【図２０】別個のネットワーク・ファイアウォールとパーソナル・ファイアウォールとを有する従来技術のネットワーク・システムを示すブロック図である。
【図２１】本発明の実施形態によるハイブリッド・ファイアウォールを含むネットワーク・システムを示すブロック図である。
【図２２】ハイブリッド・ファイアウォールを含むとともに図１０Ａに示す本発明の実施形態により構成されたネットワーク・システムを示すブロック図である。
【図２３】本発明の実施形態による、外部ネットワーク・からアプリケーションへデータ通信をルーティングする方法を示すフロー図である。
【図２４】本発明の実施形態による、アプリケーションから外部ネットワーク・へデータ通信をルーティングする方法を示すフロー図である。
【図２５】本発明の実施形態による、外部ネットワークからアプリケーションへデータ通信をルーティングする方法を示すフロー図である。
【図２６】本発明の実施形態による、アプリケーションから外部ネットワークへデータ通信をルーティングする方法を示すフロー図である。
【発明を実施するための形態】
【００１５】
以下の説明は、当業者が本発明を実施及び使用できるようにするために行い、特定の用途とその要件との関連において提供するものである。当業者には実施形態への様々な修正が可能であり、本明細書で定める一般原理を、本発明の思想及び範囲から逸脱することなくこれらの及びその他の実施形態及び用途に適用することができる。従って、本発明は、図示の実施形態に限定されることを意図するものではなく、本明細書に開示する原理、特徴及び教示に矛盾のない広い範囲を許容されるべきである。
【００１６】
本発明の実施形態は、モバイル装置に接続し、攻撃及び悪質なコードをフィルタアウトする小型のハードウェアを使用する。このハードウェアの要素を、「モバイル・セキュリティ・システム」又は「パーソナル・セキュリティ・アプライアンス」と呼ぶことができる。モバイル・セキュリティ・システムを使用して、より大きなセキュリティにより、及び場合によってはその関連する会社／企業が提供するものと同じレベルのセキュリティによりモバイル装置を保護することができる。
【００１７】
図３は、本発明の実施形態によるネットワーク・システム３００を示す図である。ネットワーク・システム３００は、デスクトップ３０５、第１のモバイル装置３１０ａ、及び第２のモバイル装置３１０ｂを含む。第１のモバイル装置３１０ａは、現時点では企業ネットワーク３４０内にあるものとして示しており、モバイル・セキュリティ・システム３４５ａを介して企業のイントラネット３１５に結合される。デスクトップ３０５及び第２のモバイル装置３１０ｂも企業ネットワーク３４０内に存在するが、この実施形態ではモバイル・セキュリティ・システム３４５ｂなどの介在するネットワーク・セキュリティ・システム３４５を使用せずにイントラネット３１５に結合される。イントラネット３１５は、（企業のゲートウェイの一部となり得る）ネットワーク・セキュリティ・システム３２０を介して信頼できないインターネット３３０に結合される。従って、第１のモバイル装置３１０ａ、第２のモバイル装置３１０ｂ及びデスクトップ３０５は、ネットワーク・セキュリティ・システム３２０を介して信頼できないインターネット３３０にアクセスする。ネットワーク・セキュリティ・システム３２０に常駐するパーソナル・セキュリティ・システム（図示せず）により、各々を保護することもできる。第３のモバイル装置３１０ｃは、現在企業ネットワーク３４０の外部にあり、モバイル・セキュリティ・システム３４５ｂを介して信頼できないインターネット３３０に結合されている。現在移動中の信頼できる企業３４０の従業員が、第３のモバイル装置３１０を使用中の場合もある。セキュリティ・アドミニストレータ３２５は、モバイル・セキュリティ・システム３４５ａ、モバイル・セキュリティ・システム３４５ｂ、及びネットワーク・セキュリティ・システム３２０を管理して、これらが最新のセキュリティ保護を含むことを確実にする。当業者であれば、同じセキュリティ・アドミニストレータが様々な装置を管理する必要がないことを理解するであろう。さらに、セキュリティ・アドミニストレータはユーザであってもよく、信頼できる企業３４０内に存在する必要はない。
【００１８】
境界３３５は、信頼できる企業３４０と信頼できない公的にアクセス可能なインターネット３３０とを分離する。モバイル装置３１０ａ、３１０ｂ及び３１０ｃの各々を総称的にモバイル装置３１０と呼ぶこともできるが、これらは同一のものである必要はない。個々のモバイル・セキュリティ・システム３４５ａ及び３４５ｂを総称的にモバイル・セキュリティ・システム３４５と呼ぶこともできるが、これらは同一のものである必要はない。
【００１９】
図示のように、モバイル装置３１０ｃは信頼できる企業３４０の外部で移動しているが、モバイル装置３１０ｃは、モバイル・セキュリティ・システム３４５ｂを介して信頼できないインターネット３３０に接続しており、従って２つの防衛線（すなわち、モバイル・セキュリティ・システム３４５ｂ及び装置自体に常駐するセキュリティ・ソフトウェア）を保持する。この実施形態では、モバイル・セキュリティ・システム３４５は、事実上モバイル装置３１０ｃの代わりにモバイルインターネットゲートウェイとしての役割を果たす。ある実施形態では、モバイル・セキュリティ・システム３４５は、ネットワーク・セキュリティ専用装置であってもよい。ある実施形態では、個々のモバイル・セキュリティ・システム３４５は、複数のモバイル装置３１０、及び場合によっては企業３４０に属するものなどの登録済みのモバイル装置３１０のみをサポートすることができる。
【００２０】
（３４５ａ、３４５ｂなどの）個々のモバイル・セキュリティ・システム３４５は、（ＩｎｔｅｌのＸｓｃａｌｅをコアとして有する）市販のハードウェア、Ｌｉｎｕｘ  ＯＳ及びネットワーク・サービス、及びオープンソース・ファイアウォール、ＩＤＳ／ＩＰＳ及びアンチウィルス保護に基づく小型サーバであってもよい。モバイル・セキュリティ・システム３４５は、強化された組み込みＬｉｎｕｘ２．６に基づくものであってもよい。
【００２１】
この実施形態では、セキュリティ・アドミニストレータ３２５がモバイル・セキュリティ・システム３４５ｂと遠隔通信できるので、ＩＴが、モバイル・セキュリティ・システム３４５ｂ上で実行されるセキュリティ・ポリシ／データ／エンジンをモニタ及び／又は更新することができる。セキュリティ・アドミニストレータ３２５は、全ての企業装置を遠隔で又は直接的に一元管理することができる。さらに、セキュリティ・アドミニストレータ３２５及びモバイルセキュリティ・システム３４５が相互作用して、企業セキュリティ・ポリシをモバイル・セキュリティ・ポリシに自動的に変換し、これに応じてモバイル・セキュリティ・システム３４５を構成することができる。関連する企業３４０のセキュリティ・ポリシからモバイル・セキュリティ・システム３４５を生成できるので、現在移動中のモバイル装置３１０ｃは、信頼できる企業３４０内の装置３０５／３１０と同じレベルの保護を有することができる。
【００２２】
モバイル・セキュリティ・システム３４５を、既存のソフトウェア・セキュリティへのアドオンとして、或いは移動中のモバイル装置上の全てのセキュリティ・ハードウェア及びソフトウェアに取って代わるように設計することができる。これらのセキュリティ・アプリケーションは、図８に示す例示的なシステムに示すように、異なるＯＳＩ層で動作して最大限のセキュリティ及び悪質なコードの検出を行うことが好ましい。下位ＯＳＩ層で動作し、（ファイアウォール又はルータパケットをスクリーニングすることにより）ＴＣＰ／ＩＰパケットの分析のみを行うと、ウィルス及び／又はワームの挙動を見逃すことになる。また、多くの最新型ウィルスは、第７のＯＳＩ層（アプリケーション〜ＨＴＴＰ、ＦＴＰ他）よりも「上位の」レベルに実装されるモバイルコードを使用し、このためパケット層でもアプリケーション層でも読み取ることができない。例えば、セッション層又はトランスポート層のみにおいて（ＨＴＭＬページに含まれる）悪質なＪａｖａスクリプトにアンチウィルス分析を適用し、コンテンツタイプ（Ｊａｖａ（登録商標）スクリプト）を理解せずに署名をパケットと照合しようとしても、Ｊａｖａスクリプトの悪質な性質を検出することはない。より優れた保護を提供するために、モバイルセキュリティ・システム３４５は、企業クラスのセキュリティ・アプライアンスとして機能し、コンテンツタイプ及び適当なＯＳＩ層（或いはコンテンツがアプリケーション層にカプセル化されている場合は「より上位の」レベル）に基づいて異なるセキュリティ・アプリケーションを採用することができる。例えば、パケットレベルからアプリケーションレベルまでの異なるＯＳＩ層においてコンテンツ分析を行うようにモバイルセキュリティ・システム３４５を構成することができる。悪質なコンテンツの挙動を検出するために、及びウィルス、ワーム、スパイウェア、トロイの木馬などの検出を向上させるために、アプリケーションレベルで徹底した検査を行うことが重要であることが理解されよう。以下のソフトウェアパッケージをモバイルセキュリティ・システム３４５に実装することができる。
・ステートフル及びステートレスファイアウォール、ＮＡＴ、パケットのフィルタリング及び操作、ＤＯＳ／ＤＤＯＳ、ネットフィルタを含むファイアウォール及びＶＰＮは、ユーザモバイル装置をインターネットから分離し、装置などにおいてＶＰＮプログラムを実行する。
・Ｓｑｕｉｄに基づくオプションのウェブアクセラレータ及び帯域幅／キャッシュ管理。
・ＩＤＳ／ＩＰＳ〜Ｓｎｏｒｔに基づく不正アクセス検出及び防止システム。Ｓｎｏｒｔは、規則主導型言語を利用するオープンソースのネットワーク不正アクセス防止及び検出システムであり、署名とプロトコルベースの検査と異常ベースの検査との利点を組み合わせたものである。
・ＣｌａｍＡＶに基づくアンチウィルス及びアンチスパイウェア；ＭｃＡｆｅｅ、Ｋａｓｐｅｒｓｋｙ、Ｐａｎｄａｍａｙなどの追加のＡＶ及びＡＳエンジンを追加の加入料で提供することができる。
・悪質なコンテンツ検出〜署名を有する前にコンテンツ分析を行って悪質なコンテンツを検出するオンザフライのヒューリスティックス。これは、規則ベース及び更新済みの規則に基づき、コンテンツに依存したスキャニングとなる。
・ＵＲＬカテゴリ化フィルタリング〜Ｓｕｒｆｃｏｎｔｒｏｌ、Ｓｍａｒｔ  Ｆｉｌｔｅｒｓ又はＷｅｂｓｅｎｓｅなどの市販エンジンに基づく。ギャンブル、アダルトコンテンツ、ニュース、ウェブメールなどの約７０のカテゴリのＵＲＬを提供することができる。モバイル装置３４５は、ギャンブル又はアダルトコンテンツのウェブサイトなどにはより高い制限及びヒューリスティックを適用するなどのように、ＵＲＬカテゴリに基づいて異なるセキュリティ・ポリシを適用することができる。
【００２３】
図４は、例示的なコンピュータ・システム４００の詳細を示すブロック図であり、このうち、個々のデスクトップ３０５、モバイル装置３１０、ネットワーク・セキュリティ・システム３２０、モバイル・セキュリティ・システム３４５、及びセキュリティ・アドミニストレータ３２５はインスタンスである。コンピュータシステム４００は、通信チャネル４１０に結合されたＩｎｔｅｌ  Ｐｅｎｔｉｕｍ（登録商標）マイクロプロセッサ又はＭｏｔｏｒｏｌａ  Ｐｏｗｅｒ  ＰＣ（登録商標）マイクロプロセッサなどのプロセッサ４０５を含む。コンピュータ・システム４００は、キーボード又はマウスなどの入力装置４１５、ブラウン管ディスプレイなどの出力装置４２０、通信装置４２５、磁気ディスクなどのデータ記憶装置４３０、及びランダムアクセスメモリ（ＲＡＭ）などのメモリ４３５をさらに含み、各々が通信チャネル４１０に結合される。通信インターフェイス４２５は、直接又はモバイル・セキュリティ・システム３４５を介してインターネットなどのネットワークに結合することができる。当業者であれば、データ記憶装置４３０及びメモリ４３５を異なるユニットとして示しているが、データ記憶装置４３０及びメモリ４３５は、同じユニット、分散ユニット、仮想メモリなどの一部であってもよいことを理解するであろう。
【００２４】
データ記憶装置４３０及び／又はメモリ４３５は、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ  ＸＰ、ＩＢＭ  ＯＳ／２オペレーティング・システム、ＭＡＣ  ＯＳ、ＵＮＩＸ（登録商標）  ＯＳ、ＬＩＮＵＸ  ＯＳなどのオペレーティング・システム４４０及び／又はその他のプログラム４４５を記憶することができる。上記以外のプラットフォーム及びオペレーティング・システム上においても好ましい実施形態を実施できることが理解されよう。ＪＡＶＡ、Ｃ、及び／又はＣ＋＋言語、又はその他のプログラミング言語を使用して、場合によってはオブジェクト指向のプログラミング方法論を使用して実施形態を作成することができる。
【００２５】
当業者であれば、コンピュータ・システム４００がまた、ネットワーク接続、追加のメモリ、追加のプロセッサ、ＬＡＮ、ハードウェアチャネルを通じて情報を転送するための入力／出力回線、インターネット又はイントラネットなどの追加情報を含むこともできることを理解するであろう。当業者であればまた、プログラム及びデータを別の方法で受信し、システムに記憶できることも理解するであろう。例えば、磁気ディスク、ハードディスク、磁気光ディスク、ＲＡＭなどのコンピュータ可読記憶媒体（ＣＲＳＭ）４５５を読み取るために、磁気ディスクドライブ、ハードディスクドライブ、磁気光リーダ、ＣＰＵなどのコンピュータ可読記憶媒体（ＣＲＳＭ）リーダ４５０を通信バス４１０に結合することができる。従って、コンピュータ・システム４００は、ＣＲＳＭリーダ４５０を介してプログラム及び／又はデータを受信することができる。さらに、本明細書における「メモリ」という用語は、恒久的又は一時的のいずれであるかにかかわらず全てのデータ記憶媒体を対象とすることを意図するものであることが理解されよう。
【００２６】
図５は、本発明の実施形態によるモバイル・セキュリティ・システム３４５の詳細を示すブロック図である。モバイル・セキュリティ・システム３４５は、アダプタ／ポート／ドライバ５０５、メモリ５１０、プロセッサ５１５、モバイル・セキュリティ・システムのオペレーティング・システム及びその他のアプリケーションの安全なバージョンを記憶するプリブートフラッシュ／ＲＯＭメモリモジュール５２０、ネットワーク接続モジュール５２５、セキュリティ・エンジン５３０、セキュリティ・ポリシ５３５、セキュリティ・データ５４０、遠隔管理モジュール５５０、配布モジュール５５５、及びバックアップモジュール５６０を含む。これらのモジュールはモバイル・セキュリティ・システム３４５の内部にあるように示しているが、当業者であれば、これらの多くをセキュリティ・アドミニストレータ３２５、又はモバイル・セキュリティ・システム３４５と通信するサードパーティ・システムなどの他の場所に配置できることを理解するであろう。モバイル・セキュリティ・システム３４５は、ポケットサイズ、ハンドヘルドサイズ又はキーチェーンサイズの筺体であってもよく、或いはさらに小型であってもよい。さらに、モバイル・セキュリティ・システム３４５をモバイル装置３１０内に組み込むことができる。
【００２７】
アダプタ／ポート／ドライバ５０５は、ＵＳＢ、イーサネット（登録商標）、ＷｉＦｉ、ＷｉＭＡＸ、ＧＳＭ、ＣＤＭＡ、ＢｌｕｅＴｏｏｔｈ、ＰＣＭＣＩＡ及び／又はモバイル・セキュリティ・システム３４５上のその他の接続データポートのための（ドライバなどのソフトウェアを含む）接続メカニズムを含む。１つの実施形態では、アダプタ／ポート／ドライバ５０５が複数の装置３１０に接続して複数の装置３１０にネットワーク・セキュリティを提供することができる。
【００２８】
メモリ５１０及びプロセッサ５１５は、モバイル・セキュリティ・システム３４５においてオペレーティング・システム及びアプリケーションを実行する。この例では、プリブートフラッシュ５２０がオペレーティング・システム及びアプリケーションを記憶する。ブート時に、オペレーティング・システム及びアプリケーションは、実行のためにプリブートフラッシュ５２０からメモリ５１０にロードされる。オペレーティング・システム及びアプリケーションは、実行時にユーザがアクセスできないプリブートフラッシュ５２０に記憶されるので、プリブートフラッシュ５２０内のオペレーティング・システム及びアプリケーションは破損しにくい。メモリ５１０のオペレーティング・システム及びアプリケーションのコピーが悪質なコードなどにより破損した場合、オペレーティング・システム及びアプリケーションを再起動時などにプリブートフラッシュ５２０からメモリ５１０にリロードすることができる。プリブートフラッシュ５２０内に記憶されているように説明しているが、ＯＳ及びアプリケーションをＲＯＭ、ＰＲＯＭ、ＥＥＰＲＯＭなどの他の読み出し専用メモリ装置内に安全に記憶することもできる。
【００２９】
モバイル・セキュリティ・システム３４５における（メモリ５１０及びプリブートフラッシュ５２０を含む）メモリは、以下のようなゾーンに分割することができる。
【００３０】
【表１】
2010528550.tif 000003
【００３１】
個々の「ハード」再起動毎に、モバイル・セキュリティ・システム３４５のブートローダ（領域１に常駐）が、カーネル及びセキュリティ・アプリケーション（未使用で変更されていないコピー）を領域１から領域２にコピーする。これにより、ＯＳ及びアプリケーションのクリーンなバージョンが領域２に毎回ロードされる。このようにして、特別なセキュリティ・システム３４５の攻撃が開始された場合、ＯＳ及びアプリケーションは実行時にメモリ領域１にアクセスできないようになっているので、攻撃がシステムに影響を与えることはできない。さらに、メモリ５１０に到達するいずれの攻撃も一回しか実行できず、ハードの再起動時には消滅してしまう。感染の検出時にモバイル・セキュリティ・システム３４５を自動的に再起動するためにトリガーメカニズムを利用することができる。
【００３２】
ネットワーク接続モジュール５２５は、ＷｉＦｉ、ＷｉＭＡＸ、ＣＤＭＡ、ＧＳＭ、ＧＰＲＳ、イーサネット、モデムなどを含むネットワーク通信ハードウェア／ソフトウェアを介して、インターネット３３０又はイントラネット３１５などへのネットワーク接続を可能にする。例えば、モバイル装置３１０がＷｉＦｉ接続を介してインターネット３３０に接続したい場合、アダプタ／ポート／ドライバ５０５をモバイル装置３１０のＰＣＩポート、ＵＳＢポート又はＰＣＭＣＩＡポートに接続することができ、モバイル・セキュリティ・システム３４５のネットワーク接続モジュール５２５は、無線アクセスポイントに接続するためのＷｉＦｉネットワーク・インターフェイスカードを含むことができる。モバイル・セキュリティ・システム３４５は、ネットワーク接続モジュール４２５を使用して、モバイル装置３１０の安全なゲートウェイとしてネットワークと通信することができる。その他の接続アーキテクチャについては、図１０Ａ〜図１０Ｃにおいて説明する。
【００３３】
セキュリティ・エンジン５３０は、セキュリティ・プログラムをセキュリティ・ポリシ５３５及びセキュリティ・データ５４０に基づいて実行し、ＩＴマネージャがこれらの両方を開発することができる。セキュリティ・エンジン５３０は、ファイアウォール、ＶＰＮ、ＩＰＳ／ＩＤＳ、アンチウィルス、アンチスパイウェア、悪質なコンテンツのフィルタリング、多層セキュリティ・モニタ、Ｊａｖａ及びバイトコードモニタなどを含むことができる。個々のセキュリティ・エンジン５３０は、いずれの手順、コンテンツ、ＵＲＬ、システム・コールなどをエンジン５３０が許可でき、或いは許可できないかを指示するために、専用のセキュリティ・ポリシ５３５及びセキュリティ・データ５４０を有することができる。セキュリティ・エンジン５３０、セキュリティ・ポリシ５３５及びセキュリティ・データ５４０は、ネットワーク・セキュリティ・システム３２０上のエンジン、ポリシ及びデータと同じものであるか、これらのサブセットであるか、及び／又はこれらから作成されたものであってもよい。
【００３４】
アンチウィルスソフトウェア及びアンチスパイウェアソフトウェアによるより高いセキュリティ・レベルを提供するために、個々のモバイルセキュリティ・システム３４５におけるセキュリティ・エンジン５３０は、コンテンツ分析及びリスク評価アルゴリズムを実施することができる。これらのアルゴリズムは、例えばＯＳＩ第７層及びこれよりも上位（第７層内でカプセル化されたモバイルコード）で動作し、規則エンジン及び規則の更新により制御できる専用のハイリスクコンテンツフィルタリング（ＨＲＣＦ）によりこれらのアルゴリズムを実行することができる。ＨＲＣＦは、実際のコンテンツタイプを検査するために徹底したコンテンツ分析を実行できる強力な検出ライブラリに基づく。これは、多くの攻撃が不正なＭＩＭＥタイプの中に隠され、及び／又は巧妙なトリックを使用してテキストファイルタイプを危険なアクティブスクリプト又はＡｃｔｉｖｅＸコンテンツタイプに提示することができるからである。ＵＲＬカテゴリに基づく自動規則調整のために、ＨＲＣＦをＵＲＬカテゴライゼーション・セキュリティ・エンジン５３０に統合することができる。１つの実施形態では、リスクレベルが高まった場合、（上述したメカニズムを使用して）モバイル・セキュリティ・システム３４５が自動的にフィルタリングを調整及び強化して、よりアクティブなコンテンツをトラフィックから除去することができる。例えば、より大きなリスクが特定された場合、Ｊａｖａスクリプト、ＶＢスクリプトなどのあらゆるモバイルコードを除去することができる。
【００３５】
企業のポリシサーバ・レガシー・システムと統合するための３つの態様は、以下に説明するように、規則と、ＬＤＡＰ及びアクティブディレクトリと、ロギング及びレポーティングとを含む。１つの実施形態では、セキュリティ・アドミニストレータ３２５で動作するポリシインポートエージェントが、Ｃｈｅｃｋｐｏｉｎｔファイアウォール１及びＣｉｓｃｏＰＩＸファイアウォールの規則ベースにアクセスし、これらをローカルコピーにインポートする。規則分析モジュールが重要な規則を処理し、そのまま使用できる規則及びポリシをモバイルセキュリティ・システム３４５に提示する。この提案されたポリシは、企業３４０のファイアウォールポリシに準拠する規則の最良適合を全てのモバイル・セキュリティ・システム３４５に提示する。エージェントが定期的に実行してあらゆる変更を反映し、モバイル・セキュリティ・システム３４５ポリシ５３５の更新を生成する。ＬＤＡＰ及びアクティブディレクトリをディレクトリサービスに統合して、企業のディレクトリ定義に応答するモバイル・セキュリティ・システム３４５セキュリティ・ポリシ５３５を保持することができる。例えば、ＬＤＡＰユーザグループ「Ｇ」の企業ポリシは、「Ｇ」グループ内の全てのモバイル・セキュリティ・システム３４５に自動的に伝播を行うことができる。モバイル・セキュリティ・システム３４５のローカルログ及び監査証跡を、ロギング及びレポーティングポリシに従って、セキュリティ・アドミニストレータ３２５に記憶された中央ログへ送信することができる。ＩＴは、ウェブインターフェイスを使用して、全てのモバイル装置３１０のユーザ、そのインターネット経験、及び感染した装置を企業３４０に戻そうとする試みに関連するレポート及び監査ビューを生成することができる。ＩＴは、ＳＹＳＬＯＧ及びＳＮＭＰトラップを介してイベント及びログレコードをレガシー管理システムに転送できるようになる。
【００３６】
セキュリティ・エンジン５３０は、重み付きリスク分析を行うことができる。例えば、セキュリティ・エンジン５３０は、インターネット３３０から到来するあらゆるトラフィックを含むＨＴＴＰ、ＦＴＰ、ＳＭＴＰ、ＰＯＰ３、ＩＭ、Ｐ２Ｐなどを分析することができる。セキュリティ・エンジン５３０は、すべてのオブジェクトに、そのタイプ、複雑さ、機能の豊富さ、オブジェクトのソースなどに基づいて重み及びランクを割り当てることができる。セキュリティ・エンジン５３０は、既知の危険なソース又は既知の安全なソースのリストを使用してソースに基づいて重みを割り当てることができる。セキュリティ・エンジン５３０は、ギャンブルのソース、アダルトコンテンツのソース、ニュースのソース、評判の良い会社のソース、銀行業務のソースなどのソースのカテゴリに基づいてオブジェクトに重みを割り当てることができる。セキュリティ・エンジン５３０は重みを計算するとともに、その結果に基づいて、コンテンツへのアクセス、スクリプトの実行、システム変更の実施などを許可するかしないかを決定することができる。セキュリティ・エンジン５３０は、（ユーザがアクセスする一般的なコンテンツを所定の期間分析することにより）ユーザコンテンツを「学習」するとともに、これに応じてパーソナル・コンテンツプロファイルを作成することができる。このパーソナル・コンテンツプロファイルを使用して、ランタイム分析中にコンテンツに割り当てられた重みを調整し、精度を高めるとともに重み付きリスク分析を特定のユーザの特徴に合わせることができる。
【００３７】
いくつかの実施形態では、セキュリティ・エンジン５３０、セキュリティ・ポリシ５３５及びセキュリティ・データ５４０が、モバイル・セキュリティ・システム３４５のバイパスを可能にすることができる。セキュリティ・アドミニストレータ３２５により設定されたセキュリティ・ポリシ５３５は、信頼できる企業３４０の外部にある場合、モバイル・セキュリティ・システム３２５を介したネットワーク接続を強いるために特別な属性を含むことができる。従って、この属性が「オン」に設定されている場合、モバイル装置３１０がモバイル・セキュリティ・システム３４５を使用せず、かつ信頼できる企業３４０内部以外からインターネット３３０に接続を試みたときには、ＬＡＮ接続、ＵＳＢ−ｎｅｔ、モデム、ＢｌｕｅＴｏｏｔｈ、ＷｉＦｉなどを含む全てのデータ転送接続を閉じることができる。モバイル装置３１０を完全に分離することができ、インターネット３３０を含むいずれのネットワークにも接続できなくなる。
【００３８】
１つの実施形態では、これを可能にするために、例えば（電力及びＵＳＢ接続の両方を行うための）ＵＳＢケーブルを使用してモバイルセキュリティ・システム３４５を最初にモバイル装置３１０に接続する場合、ＵＳＢプラグ＆プレイ装置ドライバがモバイル装置３１０へ送信される。インストールされるドライバは、モバイル・セキュリティ・システム３４５のＵＳＢ−ｎｅｔ接続を可能にする「Ｌｉｎｕｘ．ｉｎｆ」であってもよい。この接続により、モバイル・セキュリティ・システム３４５は、ＵＳＢポートを介して及びモバイル装置３１０ネットワーク接続に加えて追加のコード（「接続クライアント」）を使用してインターネット３３０にアクセスできるようになる。Ｗｉｎｄｏｗｓの例では、図６に示すようにあらゆるネットワーク接続のすべてのネットワーク・インターフェイスカードよりも上位のモバイル装置３１０のＮＤＩＳレベルにおいて接続クライアントをインストールすることができる。実施構成は、ＮＤｌＳ  Ｉｎｔｅｒｍｅｄｉａｔｅ  （ＩＭ）  Ｄｒｉｖｅｒ又はＮＤＩＳ−Ｈｏｏｋｉｎｇ  Ｆｉｌｔｅｒ  Ｄｒｉｖｅｒとなる。両実施構成ともに、エンドユーザがこれを停止又は削除できないようにカーネルレベルで行うことができる。モバイル装置３１０を起動するときに、接続クライアントは、信頼できる企業３４０内でローカルにセキュリティ・アドミニストレータ３２５又はネットワーク・セキュリティ・システム３２０に接続しようと試みることができる。ノードが見つからない場合（ＶＰＮを介して見つかっても、ローカルＬＡＮでは見つからないと見なされる）、接続クライアントは、それが信頼できる企業３４０の外部から働きかけていると仮定し、例えば、ＵＳＢ−ｎｅｔ又はその他の接続メカニズムを介して接続されたモバイル・セキュリティ・システム３４５を見つけ出すことを期待する。モバイル・セキュリティ・システム３４５が見つからない場合、接続クライアントは、あらゆるネットワーク接続へのあらゆる通信を回避することができる。ポリシ定義により、モバイル装置３１０にインストールされたＶＰＮを介して企業３４０への通信を可能にするようにこの挙動を修正することができる。同様に、モバイル装置システム３４５に障害が発生した場合、企業３４０へのＶＰＮ接続を除き、全てのトラフィックを使用不可にすることができる。
【００３９】
ＮＤＩＳはカーネルレベルでトラフィックを妨害する１つの考えられる実施構成であることが理解されよう。例えば、別の実施形態では、システムがＷｉｎｓｏｃｋにフックし、或いは将来のＷｉｎdｏｗｓバージョンに含まれるであろう他の方法を適用することができる。
【００４０】
モバイル・セキュリティ・システム３４５が複数のモバイル装置３１０をサポートする実施形態では、セキュリティ・エンジン５３０、セキュリティ・ポリシ５３５及びセキュリティ・データ５４０が（例えばユーザの基本設定又はＩＴの決定などに基づいて）モバイル装置３１０ごとに異なっていてもよい。或いは、この実施形態は、全ての接続された装置３１０に対して同じエンジン５３０、ポリシ５３５及びデータ５４０を適用することもできる。
【００４１】
遠隔管理モジュール５５０は、セキュリティ・アドミニストレータ３２５（及び／又はその他のセキュリティ・アドミニストレータ）との通信を可能にするとともに、セキュリティ・エンジン５３０、セキュリティ・ポリシ５３５、署名を含むセキュリティ・データ５４０、及びその他のアプリケーションのローカル更新を可能にする。１つの実施形態では、セキュリティ・アドミニストレータ３２５のみがセキュリティ・ポリシ５３５及びデータ５４０への修正を行うことができる。モバイル・セキュリティ・システム３４５の遠隔管理モジュール５５０は、安全な接続を介して、セキュリティ・アドミニストレータ３２５上などで更新権限装置（ＵＡＤ）から更新を受信することができる。ＵＡＤは、インターネット３３０上に位置する顧客ＩＴセンターにおいて更新サーバで動作して、更新の管理を担当する企業５４０に恐らくは属していないモバイル・セキュリティ・システム３４５へ更新を転送することができる。ＵＡＤは、モバイル・セキュリティ・システム３４５で動作することができる。セキュリティ・エンジン５３０の更新により、アンチウィルスエンジンＤＬＬなどを修正することができる。ＯＳ及びセキュリティ・アプリケーションの更新は、セキュリティ・アドミニストレータ３２５への接続中に、及び暗号化された認証済みの接続を介して企業５４０の内部からのみ実施することができる。
【００４２】
セキュリティ・アドミニストレータ３２５は、移動中のユーザを遠隔サポートするためにＵＲＬの白黒リストを修正することができる。偽陽性の場合、セキュリティ・アドミニストレータ３２５は、事前対応したヒューリスティックセキュリティをバイパスしつつも、引き続きファイアウォール、アンチウィルス、ＩＰＳ／ＩＤＳなどによってモニタすることにより、いくつかのＵＲＬへのアクセスを可能にすることができる。追加の遠隔装置管理機能により、セキュリティ・アドミニストレータ３２５は、モバイル・セキュリティ・システム３４５において、遠隔診断の実行、ローカルログへのアクセス、構成パラメータの変更などを行うことができるようになる。セキュリティ・アドミニストレータ３２５は、サポートのためにタスクをヘルプデスクに委任することができる。
【００４３】
遠隔管理モジュール５５０は（ウィザード７４５などの）ウィザードと通信することができ、このウィザードは、図７に示すようにセキュリティ・アドミニストレータ３２５に存在してもよく、或いは別のシステムに存在してもよい。ウィザード７４５の詳細及び遠隔管理モジュール５５０とウィザード７４５との間の通信方式の詳細については、図７を参照しながら以下で説明する。
【００４４】
配布モジュール５５５は、モバイル・セキュリティ・システム３４５が、規則更新を含むセキュリティ・ポリシ５３５の更新、署名更新を含むセキュリティ・データ５４０の更新、セキュリティ・エンジン５３０の更新、アプリケーション／ＯＳの更新などの更新をＮ個の他のモバイル・セキュリティ・システム３４５へ配布できるようにする。更新の転送先となるＮ個の他のモバイルセキュリティ・システム３４５を識別するルーティングテーブルを配布モジュール５５５に提供して、システム３４５どうしの通信を可能にすることができる。セキュリティ・アドミニストレータ３２５により設定されたポリシに従って更新を実行することができる。更新を転送する際には、配布モジュール５５５がＵＡＤとしての機能を果たす。
【００４５】
個々のモバイル・セキュリティ・システム３４５は、セキュリティ情報の更新とともに、定期的に、所定の時間に、ログイン時などに、そのルーティングテーブルを取得することができる。ルーティングテーブルは、セキュリティ・アドミニストレータ３２５又は別のモバイル・セキュリティ・システム３４５などのサーバに保持することができる。１つの実施形態では、モバイル・セキュリティ・システム３４５がサーバにコンタクトしてルーティングテーブルを取り出す。或いは、サーバが、モバイル・セキュリティ・システム３４５に対してルーティングテーブルをプッシュすることもできる。
【００４６】
図９に示すように、配布モジュール５５５は迅速な更新を可能にすることができる。現在のところ、使用可能な全ての市販のアンチウィルス製品は、ウィルスの拡散よりも速く装置を更新することはない。新しいウィルス攻撃が例えば署名更新よりも速く拡散しないことを確実にするために、個々のモバイル・セキュリティ・システム３４５をアクティブＵＡＤとしてもよい。１つの実施形態では、図９に示すように、個々のモバイル・セキュリティ・システム３４５が、署名更新を他の４つの装置３４５へ転送する責任を負う。当業者であれば、全ての装置３４５が同じ数の他の装置３４５へ転送を行う必要があることを理解するであろう。複数の装置３４５が、同じ装置３４５へ転送を行う責任を負う。必要であれば、起動されるオフライン装置３４５が、ルーティングテーブルを更新するために、セキュリティ・アドミニストレータ３２５などのサーバをポーリングすることができる。その他の多くの更新技術もまた可能である。
【００４７】
バックアップモジュール５６０は、モバイル装置３１０のブートセクタ及びシステム・ファイルの画像及び変更をフラッシュメモリ５２０又は別の永続的メモリ装置に絶えずバックアップすることができる。このようにして、モバイル装置３１０のシステム又はブートセクタの損失を含む重大な障害が発生した場合、モバイル・セキュリティ・システム３４５をリブート中にＣＤ−ＲＯＭとして識別することができ、このモバイル・セキュリティ・システム３４５がバックアップモジュール（又は別のプログラム）を起動して、モバイル装置３１０のブートセクタ及びシステム・ファイルを復元させることにより、ＩＴサポートを必要とせずにモバイル装置３１０を回復させることができる。ネットワーク・セキュリティ・システム３４５が複数のモバイル装置３１０をサポートする実施形態では、バックアップモジュール５６０は、異なる場合、モバイル装置３１０ごとに別個のブートセクタ及びシステム・ファイルを含むことができる。
【００４８】
図７は、本発明の実施形態によるスマートポリシ更新システム７００の詳細を示すブロック図である。システム７００は、ネットワーク・セキュリティ・システム３２０及びモバイル・セキュリティ・システム３４５に結合されたセキュリティ・アドミニストレータ３２５を含む。ネットワーク・セキュリティ・システム３２０はセキュリティ・エンジン７０５を含み、このセキュリティ・エンジン７０５は、アンチウィルスエンジン７１５、ＩＰＳ／ＩＤＳエンジン７２０、ファイアウォールエンジン７２５、及びその他のセキュリティ・エンジンを含む。ネットワーク・セキュリティ・システム３２０はまたセキュリティ・ポリシ及びデータ７１０も含み、このセキュリティ・ポリシ及びデータ７１０は、アンチウィルスポリシ及びデータ７３０、ＩＰＳ／ＩＤＳポリシ及びデータ７３５、ファイアウォールポリシ及びデータ７４０、及び他のポリシ及びデータを含む。同様に、モバイル・セキュリティ・システム３４５は、アンチウィルス・エンジン７５５、ＩＰＳ／ＩＤＳエンジン７６０、ファイアウォール・エンジン７６５、及びその他のエンジンを含む。モバイル・セキュリティ・システム３４５はまたセキュリティ・ポリシ及びデータ５３５／５４０も含み、このセキュリティ・ポリシ及びデータ５３５／５４０は、アンチウィルスセ・キュリティ・ポリシ及びデータ７７０、ＩＰＳ／ＩＤＳセキュリティ・ポリシ及びデータ７７５、ファイア・ウォールセ・キュリティ・ポリシ及びデータ７８０、及び他のセキュリティ・ポリシ及びデータを含む。
【００４９】
セキュリティ・アドミニストレータ３２５は、モバイル・セキュリティ・システム３４５のセキュリティ・エンジン５３０、セキュリティ・ポリシ５３５及びセキュリティ・データ５４０の実質的に自動的な初期セットアップ、及び場合によっては動的セットアップを可能にするためのウィザード７４５を含む。１つの実施形態では、ウィザード７４５は、ネットワーク・セキュリティ・システム３２０の全てのセキュリティ・エンジン７０５及びポリシ及びデータ７１０を、モバイル・セキュリティ・システム３４５のセキュリティ・エンジン５３０及びポリシ及びデータ５３５／５４０として自動的にロードすることができる。別の実施形態では、ウィザード７４５は、経理が使用する会計ソフトウェアに関するもの、ウェブサーバ上でのみ動作するウェブ・ソフトウェアに関するものなどの無関係であると分かっているものを除き、全てのセキュリティ・エンジン７０５及びポリシ及びデータ７１０を含むことができる。別の実施形態では、ＩＴマネージャがエンジン５３０をロードしなければならず、ウィザード７４５が自動的にロードすることはない。
【００５０】
１つの実施形態では、ウィザード７４５は、モバイルセキュリティ・システム３４５に、アンチウィルスエンジン７５５、ＩＰＳ／ＩＤＳエンジン７６０、ファイアウォールエンジン７６５などの特定のセキュリティ・エンジン５３０が必要かどうかを判定することができる。必要と判定されれば、ウィザード７４５がエンジン５３０をモバイル・セキュリティ・システム３４５上にロードする。その後、ウィザード７４５は、アンチウィルスエンジン７５５用のもの、ＩＰＳ／ＩＤＳエンジン７６０用のもの、ファイアウォールエンジン７６５用のものなど、モバイル・セキュリティ・システム３４５にとってどのポリシ及びデータセットが重要かを判定する。その後、ウィザード７４５は、ネットワーク・セキュリティ・システム３２０のアンチウィルス・ポリシ及びデータ７３０のいずれがモバイル・セキュリティ・システム３４５のアンチウィルス・ポリシ及びデータ７７０に関するものであるか、ネットワーク・セキュリティ・システム３２０のＩＰＳ／ＩＤＳポリシ及びデータ７３５のいずれがモバイル・セキュリティ・システム３４５のＩＰＳ／ＩＤＳポリシ及びデータ７７５に関するものであるか、ネットワーク・セキュリティ・システム３２０のファイアウォール・ポリシ及びデータ７４０のいずれがモバイル・セキュリティ・システム３４５のファイアウォール・ポリシ及びデータ７８０に関するものであるか、及びネットワーク・セキュリティ・システム３２０のその他のポリシ及びデータのいずれがモバイル・セキュリティ・システム３４５のポリシ及びデータに関するものであるかを判定する。上述したように、ウィザード７４５は、モバイル・セキュリティ・システム３４５において全てのセキュリティ・エンジン７０５が、或いは一部のみが必要であると判定することができる。ウィザード７４５は、所定のエンジンタイプに関する全てのポリシ及びデータ７１０を、或いは一部のみを転送すべきであると判定することができる。ウィザード７４５は、いずれの関連するポリシ及びデータ７１０をモバイル・セキュリティ・システム３４５へ転送すべきかを、ＩＴマネージャが作成した規則、セットアップ手順中のアイテム毎の選択などに基づいて判定することができる。ウィザード７４５の代わりに、ＩＴマネージャが、ウィザード７４５を使用せずにモバイル・セキュリティ・システム３４５にエンジン５３０及びポリシ及びデータ５３５／５４０をセットアップすることができる。
【００５１】
セキュリティ・アドミニストレータ３２５はまた、更新権限装置７５０を含むこともできる。更新権限装置７５０は、（署名更新などの）セキュリティ・システムの更新を取得するとともに、この更新をネットワーク・セキュリティ・システム３２０及びモバイルセキュリティ・システム３４５へ送信することができる。当業者であれば、ネットワーク・セキュリティ・システム３２０への更新とモバイル・セキュリティ・システム３４５への更新とが同じものである必要はないことを理解するであろう。さらに、更新権限装置７５０は、セキュリティ・マネージャ、セキュリティ・エンジンの開発者、アンチウィルスのスペシャリストなどから更新を取得することができる。更新権限装置７５０は、全てのネットワーク・セキュリティ・システム３２０及び全てのモバイル・セキュリティ・システム３４５へ更新を転送することができ、或いは全てのモバイルセキュリティ・システム３４５へルーティングテーブルを、及び初期のモバイルセキュリティ・システム３４５のセットのみへ更新を転送することもできる。初期のモバイルセキュリティ・システム３４５の組は、ルーティングテーブル内で識別されたモバイル・セキュリティ・システム３４５へ図９に示す処理に類似したＰ２Ｐ方式で更新を転送することができる。上述したように、更新を転送する個々のモバイル・セキュリティ・システム３４５は、それ自体が更新権限装置７５０としての機能を果たす。
【００５２】
モバイル・セキュリティ・システム３４５には他のアプリケーションを含めることができる。例えば、既存の顧客からの収益経常用のアドオンアプリケーションは、汎用電子メール、アンチスパム、直接かつ安全な電子メール配信、情報ボールト、安全なスカイプ及びその他のインスタントメッセージングサービスなどを含むことができる。
・電子メール・セキュリティ及びメールのアンチスパムの実施は（上記のウェブ・セキュリティ・エンジンを含む）モバイル・セキュリティ・システム３４５に依拠し、（ＳｅｎｄＭａｉｌ又は同様のプロセスに基づく）ローカルスパム検疫は、（オンラインウェブスパム源泉を介して）リアルタイムインデックスを行うアンチスパムを含む完全なメール・セキュリティ・スイート（ＳＭＴＰ及びＰＯＰ３）を実施することができる。ユーザは、スパム・メッセージを再検討したり、メッセージを公開したり、スパム規則を修正及びカスタマイズしたりするために、ウェブインターフェイスを介して検疫にアクセスすることができる。
・メールリレーに基づく直接かつ安全な電子メール配信により、モバイル・セキュリティ・システム３４５は、ルート内メールサーバを使用せずに、１つのモバイル・セキュリティ・システム３４５から別のモバイル・セキュリティ・システム３４５へ直接ユーザ電子メールを送信できるようになる。これにより、企業ユーザは、インターネット内を移動する必要のない電子メールを送信できるようになるため、ルート内の様々な未知のメールサーバに痕跡及び複製を残すことができる。これを２つのモバイル・セキュリティ・システム間の安全なパイプを使用する能力と組み合わせれば、企業にとって貴重である。このような方法論がなくても、人々は、メッセージを配信するために使用された中間メールサーバ内のコピーを突き止めることにより、企業のメールサーバにアクセスせずに電子メールの交換を追跡することができる。
・情報ボールト−−モバイル・セキュリティ・システム３４５にエンドユーザ情報を暗号化して記憶するためのアプリケーションを、あらゆるモバイル・セキュリティ・システム３４５に実装された（ＢＯＡ、Ａｐａｃｈｅなどの）ウェブインターフェイス及びウェブサーバを介して、許可されたユーザのみに使用可能にすることができる。
・安全なスカイプ及びその他のＩＭ−−モバイル・セキュリティ・システム３４５にインスタントメッセージングクライアントを実装することで、インスタントメッセージング・システム又はＰ２Ｐアプリケーションがモバイル装置３１０上のデータへのアクセス権を有さないように保証することができる。モバイル・セキュリティ・システム３２５にＡＣ／９７のチップセットを追加して音声インターフェイスを提供することで、ユーザは、モバイル・セキュリティ・システム３２５との間で直接通話し、コールを受信できるようになる。
【００５３】
図示してはいないが、モバイル・セキュリティ・システム３４５に小型のバッテリを付属させることができる。このバッテリは、実行時のＵＳＢ接続により、或いはいつでもパワーアダプタを使用することにより充電することができる。バッテリは、ユーザがモバイル・セキュリティ・システム３４５からＵＳＢケーブルを外した場合などに、正常なシャットダウンを保証することができる。これは、アプリケーション及びシステムのシャットダウンを開始するシステムにより信号で伝えられる。これは、ファイル・システムの正常な状態及びオープンファイルバッファのフラッシングを保証する。
【００５４】
多層化した防御及び検出能力が求められる。（アンチウィルス、ＩＤＳ／ＩＰＳ、ファイアウォール、アンチスパイウェア、ＵＲＬカテゴリなどの）異なるシステムにより、及び様々なレベルにおいてスキャン結果を絶えずモニタする特別なコードによりこれを行って、たとえ個々のサブシステムの各々が認識しない場合でもパズルを構築し攻撃を識別することができる。これを行うことにより、モバイル・セキュリティ・システム３４５は、企業５４０内で提供されるセキュリティ・レベルを維持し、場合によっては向上させる。
【００５５】
モバイル・セキュリティ・システム３４５の１つの利用可能な利点は、エンドユーザが移動中又は在宅勤務中に、これらのエンドユーザに企業５４０のポリシを実施する能力である。モバイル・セキュリティ・システム３４５は、企業５４０内部から接続されているときと同様のセキュリティ・エンジン及びポリシを使用するので、及びエンドユーザは（企業５４０へのＶＰＮ接続を介している場合を除き）これを使用せずにインターネット３３０にアクセスできないので、ＩＴは企業５４０の境界を超えてそのセキュリティ・ポリシを実施することができる。ＯＳはＩＴの全体的な監視下にある場合があるが、モバイル・セキュリティ・システム３４５のＯＳは、その制御下でエンドユーザＯＳとしての機能を果たす。これは、いずれのセキュリティ及び生産性がいかにして最小限の妥協に達するかを誰が制御するかという問題を解決する。
【００５６】
モバイル・セキュリティ・システム３４５のスタンドアロンバージョンは、同じ機能を提示することができ、ウェブブラウザを介してローカル管理インターフェイスを提供することができる。ＩＴ部門のないホームユーザ及び小規模オフィスにとって魅力的なことに、モバイル・セキュリティ・システム３４５により、エンドユーザは、ブラウザを起動し、モバイル・セキュリティ・システム３４５に接続し、白黒のＵＲＬリストなどの修正を含む（更新ポリシ、セキュリティ規則などの）様々なポリシを設定できるようになる。加入することにより、モバイル・セキュリティ・システム３４５の遠隔管理サービスをエンドユーザに提供する機会もある。
【００５７】
図１０Ａ、図１０Ｂ及び図１０Ｃは、本発明の様々な実施形態による、モバイル装置３１０にモバイル・セキュリティ・システム３４５を接続する３つの例示的なアーキテクチャを示す図である。図１０Ａでは、モバイル装置３１０が、ＵＳＢ接続１０１５及び１０２０を介してモバイル・セキュリティ・システム３４５に結合されており、またＮＩＣカード１００５を介してインターネット３３０に結合されている。モバイル装置３１０は、そのＮＩＣカード１００５を介してインターネット３３０からインターネットトラフィックを受信する。モバイル装置３１０における（ＮＤＩＳ、Ｗｉｎｓｏｃｋなどを介する）カーネルレベルリダイレクタ１０１０は、ＵＳＢ接続１０１５及び１０２０を介してインターネットトラフィックをモバイル・セキュリティ・システム３４５に自動的にリダイレクトし、このモバイル・セキュリティ・システム３４５が、スキャン及び浄化を行い、浄化されたインターネットトラフィックをＵＳＢ接続１０１５及び１０２０を介してモバイル装置３１０へ戻す。図１０Ｂでは、モバイル装置３１０が、ＵＳＢ接続１０２５及び１０３０を介してモバイル・セキュリティ・システム３４５に結合されている。モバイル・セキュリティ・システム３４５は、インターネット３３０からインターネットトラフィックを受信するためのＮＩＣカード１０３５を含む。モバイル・セキュリティ・システム３４５は、インターネットトラフィックをスキャンし、浄化し、ＵＳＢ接続１０２５及び１０３０を介してモバイル装置３１０へ転送する。図１０Ｃでは、モバイル装置３１０が、ＮＩＣカード１０４０及び１０４５を介してモバイル・セキュリティ・システム３４５に結合されている。モバイル・セキュリティ・システム３４５は、そのＮＩＣカード１０４５を介してインターネット３３０からインターネットトラフィックを受信する。モバイル・セキュリティ・システム３４５は、インターネットトラフィックをスキャンし、浄化し、ＮＩＣカード１０４０及び１０４５を介してモバイル装置３１０へ無線で転送する。その他の接続アーキテクチャもまた可能である。
【００５８】
図１２は、本発明の実施形態による安全データ交換システム１２００を示すブロック図である。安全データ交換システム１２００は、セキュリティ装置１２１０を介して外部装置１１１０に結合されたホスト・コンピュータ（ホスト）１２０５を含む。ホスト１２０５は、ラップトップ、デスクトップ、ＰＤＡ、携帯電話、又はその他のプロセッサベースの装置を含むことができる。外部装置１１１０は、ＵＳＢドライブ、外付けハードドライブ、ＰＤＡ、音楽プレーヤー、携帯電話などの、メモリを含むいずれの外部装置であってもよい。セキュリティ装置１２１０は、ＥＤポート１２２５（ＵＳＢ、シリアル、パラレル、ファイアワイヤ、イーサネット、ＷｉＦｉ、ＷｉＭＡＸ、ＧＳＭ、ＣＤＭＡ、ＢｌｕｅＴｏｏｔｈ、ＰＣＭＣＩＡ及び／又はその他の接続）及びＥＤプラグ１２３０（ＵＳＢ、シリアル、パラレル、ファイアワイヤ、イーサネット、ＷｉＦｉ、ＷｉＭＡＸ、ＧＳＭ、ＣＤＭＡ、ＢｌｕｅＴｏｏｔｈ、ＰＣＭＣＩＡ及び／又はその他の接続）を介してホスト１２０５に通信可能に結合される。外部装置１１１０は、ＥＤポート１２３５（ＵＳＢ、シリアル、パラレル、ファイアワイヤ、イーサネット、ＷｉＦｉ、ＷｉＭＡＸ、ＧＳＭ、ＣＤＭＡ、ＢｌｕｅＴｏｏｔｈ、ＰＣＭＣＩＡ及び／又はその他の接続）及びＥＤプラグ１１２０（ＵＳＢ、シリアル、パラレル、ファイアワイヤ、イーサネット、ＷｉＦｉ、ＷｉＭＡＸ、ＧＳＭ、ＣＤＭＡ、ＢｌｕｅＴｏｏｔｈ、ＰＣＭＣＩＡ及び／又はその他の接続）を介してセキュリティ装置１２１０に通信可能に結合される。ＥＤポート１２２５及びＥＤプラグ１２３０を組み合わせたコネクタタイプは、ＥＤポート１２３５及びＥＤプラグ１１２０を組み合わせたコネクタタイプとは異なるものであってもよい。１つの実施形態では、全てのポート１２２５／１２３５及びプラグ１２３０／１１２０がＵＳＢである。プラグ１１２０／１２３０をオスとして示し、ポート１２２５／１２３５をメスとして示しているが、当業者であれば、逆もまた可能である（プラグ１１２０／１２３０がメスであってもよく、ポート１２２５／１２３５がオスであってもよい）ことを理解するであろう。
【００５９】
ホスト１２０５は、列挙を行うとともにセキュリティ装置１２１０との通信を可能にするためのＥＤドライバ１２２０を含む。同様に、セキュリティ装置１２１０は、列挙を行うとともに外部装置１１１０との通信を可能にするためのＥＤドライバ１２４５を含む。
【００６０】
１つの実施形態では、セキュリティ装置１２１０は、セキュリティ・ポリシを実施して、ウィルス、スパイウェア、アドウェア、トロイの木馬などの悪質なコードから保護するとともにプライベートデータの転送から保護することができるプログラマブルハードウェアアプライアンスを含む。１つの実施形態では、セキュリティ装置１２１０が、ホスト１２０５及び外部装置１２１５の両方を保護するように構成される。１つの実施形態では、セキュリティ装置１２１０が、外部装置１１１０又はホスト１２０５の一方のみを保護するように構成される。セキュリティ装置１２１０の追加の詳細を、図１３及び図１４を参照しながら示す。
【００６１】
図１３は、本発明の実施形態によるセキュリティ装置１２１０の詳細を示すブロック図である。セキュリティ装置１２１０は、通信チャネル１３１５に結合されたＩｎｔｅｌ  Ｐｅｎｔｉｕｍ（登録商標）マイクロプロセッサ又はＭｏｔｏｒｏｌａ  Ｐｏｗｅｒ  ＰＣ（登録商標）マイクロプロセッサなどのプロセッサ１３０５を含む。セキュリティ装置１２１０は、各々が通信チャネル１３１５に結合されたＥＤプラグ１２３０、ＥＤポート１２３５、通信インターフェイス１３１０、ＥＥＰＲＯＭなどのストレージ１３２０、及びランダムアクセスメモリ（ＲＡＭ）又は読み出し専用メモリ（ＲＯＭ）などのメモリ１３２５をさらに含む。通信インターフェイス１３１０は、インターネットなどのネットワークに結合することができる。当業者であれば、ストレージ１３２０及びメモリ１３２５を異なるユニットとして示しているが、データ記憶装置１３２０及びメモリ１３２５が、同じユニット、分散ユニット、仮想メモリなどの一部であってもよいことを理解するであろう。本明細書における「メモリ」という用語は、恒久的又は一時的のいずれかにかかわらず全てのデータ記憶媒体を対象とすることが意図されている。当業者であれば、セキュリティ装置１２１０は、ネットワーク接続、追加メモリ、追加プロセッサ、ＬＡＮ、ハードウェアチャネル全体に渡って情報を転送するための入力／出力ライン、インターネット又はイントラネットなどの追加の構成要素を含むことができることを理解するであろう。
【００６２】
図示のように、メモリ１３２５は、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ  ＸＰ、ＩＢＭ  ＯＳ／２オペレーティング・システム、ＭＡＣ  ＯＳ、Ｕｎｉｘ  ＯＳ、Ｌｉｎｕｘ  ＯＳなどのオペレーティング・システム１３３０を記憶する。説明した以外のプラットフォーム及びオペレーティング・システムでも好ましい実施形態を実施できることを理解できよう。ＪＡＶＡ、Ｃ、及び／又はＣ＋＋言語、又はその他のプログラミング言語を使用して、場合によってはオブジェクト指向のプログラミング法を使用して実施形態を作成することができる。メモリ１３２５はまた、ＥＤドライバ１２４５及びセキュリティ・システム１３３５も記憶する。ＥＤドライバ１２４５は、標準外部装置１１１０のための標準ドライバ及び専用外部装置１１１０のための専用ドライバを含むことができる。ＥＤプラグ１２３０を介してＥＤドライバ１２４５をメモリ１３２５へ転送することができる。セキュリティ・システム１３３５は、ホスト１２０５と外部装置１１１０との間のデータ転送行為にセキュリティ・ポリシを実施するためのコードを含む。
【００６３】
図１４は、本発明の実施形態によるセキュリティ・システム１３３５の詳細を示すブロック図である。セキュリティ・システム１３３５は、セキュリティ・マネージャ１４０５、セキュリティ・エンジン１４１０、セキュリティ・ポリシ１４１５、及びセキュリティ・データ１４２０を含む。
【００６４】
１つの実施形態では、セキュリティ・マネージャ１４０５は、列挙を行うための、すなわち外部装置１１１０又は外部装置１１１０のタイプを識別するとともに、セキュリティ装置１２１０と外部装置１１１０との間の通信を確立することができる対応するＥＤドライバ１２４５を識別するためのコードを含む。セキュリティ・マネージャ１４０５はまた、セキュリティ・ポリシ１４１５及びセキュリティ・データ１４２０に基づき様々なセキュリティ・エンジン１４１０の実行を制御して、データ転送要求又はその他の装置の要求を評価するためのコードも含む。さらに、セキュリティ・マネージャ１４０５はホスト１２０５と通信するためのコードを含み、これがデータ転送及び／又はその他の要求のソースとなる。
【００６５】
１つの実施形態では、セキュリティ・エンジン１４１０は、セキュリティ・ポリシ１４１５及びセキュリティ・データ１４２０に基づいてホスト１２０５と外部装置１１１０との間のデータの転送を安全にするためのコードを含む。セキュリティ・エンジン１４１０は、ファイアウォール、アンチウィルス、アンチスパイウェア、悪質なコンテンツのフィルタリング、多層セキュリティ・モニタ、Ｊａｖａ及びバイトコードモニタなどを含むことができる。セキュリティ・エンジン１４１０はまた、データプライバシーポリシ１４１５を実施するためのデータプライバシーモジュールを含むこともできる。個々のセキュリティ・エンジン１４１０は、転送を要求されたデータがいずれの手順、ＵＲＬ、システム・コール、コンテンツ、ＩＤなどを含むか、或いは転送を要求されたデータが転送不可（又はパスワード及びＩＤなどの追加のセキュリティ対策が無ければ転送不可である）と見なされるかどうかを示すために、専用のセキュリティ・ポリシ１４１５及びセキュリティ・データ１４２０を有することができる。
【００６６】
より高いセキュリティ・レベルを提供するために、セキュリティ・エンジン１４１０は、コンテンツ分析及びリスク評価アルゴリズムを実行することができる。１つの実施形態では、セキュリティ・エンジン１４１０がすべての転送オブジェクトごとに、そのタイプ、複雑さ、機能の豊富さ、ソースなどに基づいて重み及びランクを割り当てる。セキュリティ・エンジン１４１０は、既知の危険なソース又は既知の安全なソースのリストを使用してソースに基づいて重みを割り当てることができる。セキュリティ・エンジン１４１０は、ギャンブルのソース、アダルトコンテンツのソース、ニュースのソース、評判の良い会社のソース、銀行業務のソースなどのソースのカテゴリに基づいてオブジェクトに重みを割り当てることができる。セキュリティ・エンジン１４１０は重みを計算するとともに、その結果に基づいて、コンテンツへのアクセス、スクリプトの実行、システム変更の実施などを許可するかしないかを決定することができる。セキュリティ・エンジン１４１０は、（ユーザがアクセスする一般的なコンテンツを所定の期間分析することにより）ユーザコンテンツを「学習」するとともに、これに応じてパーソナル・コンテンツプロファイルを作成することができる。このパーソナル・コンテンツプロファイルを使用して、ランタイム分析中にコンテンツに割り当てられた重みを調整し、精度を高めるとともに重み付きリスク分析を特定のユーザの特徴に合わせることができる。
【００６７】
このようにして、ホスト１２０５からのデータ転送及び／又はその他の要求を受信すると、セキュリティ・マネージャ１４０５は、セキュリティ・ポリシ１４１５に基づいて適当なセキュリティ・エンジン１４１０を起動させる。例えば、特定のＡｃｔｉｖｅＸ制御がホスト１２０５から外部装置１１１０にロードされないようにセキュリティ・ポリシ１４１５を構成することができる。ホスト１２０５のプライベートフォルダから外部装置１１１０へのデータ転送を許可しないようにセキュリティ・ポリシ１４１５を構成することもできる。セキュリティ・マネージャ１４０５は適当なセキュリティ・エンジン１４１０を起動してこれらの例示的なセキュリティ・ポリシ１４１５が確実に満たされるようにする。さらに、セキュリティ・エンジン１４１０は、悪質なＡｃｔｉｖｅＸ制御の定義ファイル、プライベートフォルダのロケーションなどを含むことができるセキュリティ・データ１４２０を使用することができる。
【００６８】
図示してはいないが、セキュリティ・システム１３３５は、図５を参照しながら上述した、ＯＳ及びアプリケーションを含むプリブートフラッシュ５２０、遠隔管理モジュール５５０、配布モジュール５５５、及びバックアップモジュール５６０などの追加の構成要素を含むことができる。その他の構成要素もまた可能である。
【００６９】
図１５は、本発明の別の実施形態による安全データ交換システム１５００を示すブロック図である。安全データ交換システム１５００は、セキュリティ装置１５０５のＥＤプラグ１５１５及びホスト１５２０の第１のＥＤポート１５２５を介してホスト１５２０に通信可能に結合されたセキュリティ装置１５０５を含む。安全データ交換システム１５００はまた、外部装置１１１０のＥＤプラグ１１２０及びホスト１５２０の第２のＥＤポート１５３５を介してホスト１５２０に通信可能に結合された外部装置１１１０も含む。
【００７０】
外部装置１１１０はセキュリティ装置１５０５に直接結合されていないので、セキュリティ装置１５０５が、外部装置１１１０とホスト１５２０との間のデータ転送要求を物理的に妨害することはない。従って、この実施形態では、ホスト１５２０は、データの転送方向に関わらず外部装置１１１０とホスト１５２０との間のデータ転送要求をリダイレクトするように構成されたリダイレクトドライバ１５３０を含む。１つの実施形態では、セキュリティ装置１５０５を、外部装置１１１０又はホスト１５２０の一方のみを保護するように構成することができる。さらに１つの実施形態では、セキュリティ装置１５０５は、ＥＤドライバ１２４５などのいずれのＥＤドライバも含まない。
【００７１】
１つの実施形態では、セキュリティ装置１５０５がホスト１５２０に結合されていない場合、ホスト１５２０は、ＥＤドライバ１５４０を使用して外部装置１１１０と通信する。１つの実施形態では、ホスト１５２０が、セキュリティ装置１５０５がホスト１５２０に結合されるまで外部装置１１１０と通信しないように構成される。１つの実施形態では、パスワード及びＩＤを受信するなどの追加のセキュリティ対策が取られた場合にのみ、或いはセキュリティ装置１５０５がホスト１５２０に結合されるまで、ホスト１５２０はＥＤドライバ１５４０を使用して外部装置１１１０と通信する。
【００７２】
１つの実施形態では、セキュリティ装置１５０５をＥＤポート１５２５に接続すると、ホスト１５２０がセキュリティ装置１５０５の列挙を行うことができる。セキュリティ装置１５０５又はセキュリティ装置１５０５のタイプを識別すると、ホスト１５２０がリダイレクト・ドライバ１５３０を起動して、全てのデータ転送要求又はその他の外部装置１１１０の要求を、全ての他のＥＤポート１５３５からセキュリティ装置１５０５へリダイレクトすることができる。１つの実施形態では、リダイレクト・ドライバ１５３０は、外部装置１１１０の要求をプロキシとして提示するセキュリティ装置１５０５からのデータ転送要求のみを受け入れる。１つの実施形態では、セキュリティ装置１５０５がチェックを行い許可を与えた後にのみ、リダイレクト・ドライバ１５３０が、外部装置１１１０から受信したデータ転送要求を実行する。その他のプロトコルもまた可能である。
【００７３】
図１６は、本発明の実施形態によるホストと外部装置との間の安全データ交換の方法１６００を示すフローチャートである。方法１６００は、セキュリティ装置１５０５がホスト１５２０の第１のＥＤポート１５２５に接続されるステップ１６０５から開始する。ステップ１６１０において、外部装置１１１０がホスト１５２０の第２のＥＤポート１５３５に接続される。ステップ１６１５において、ホスト１５０５が列挙技術を実行して、セキュリティ装置１５０５及び外部装置１１１０を識別し、適切なドライバ１５３０／１５４０をインストールしてセキュリティ装置１５０５及び外部装置１１１０との通信を可能にする。ステップ１６２０において、リダイレクト・ドライバ１５３０が、ホスト１５０５から外部装置１１１０への或いは外部装置１１１０からホスト１５０５へのいずれかのデータ転送要求を受信する。ステップ１６２５において、リダイレクト・ドライバ１５３０が、データ転送要求をセキュリティ装置１５０５へリダイレクトし、ステップ１６３０において、セキュリティ装置１５０５がデータ転送要求にそのセキュリティ・ポリシ（アンチウィルス、アンチスパイウェア、アンチアドウェア、データプライバシーなど）を実施する。ステップ１６３５において、セキュリティ装置１５０５が、データ転送要求がセキュリティ・ポリシに合格するかどうかを判定する。合格した場合、ステップ１６４０においてセキュリティ装置１５０５がデータ転送要求を承認し、ステップ１６４５においてホスト１５２０がデータ転送要求を実行する。合格しなかった場合、ステップ１６５０において、セキュリティ装置１５０５がデータ転送要求を拒否する。その後、方法１６００は終了する。
【００７４】
１つの実施形態では、セキュリティ装置１２１０／１５０５をホスト１２０５／１５２０のハウジング内などにホスト１２０５／１５２０の一部として、及び／又はホスト１２０５／１５２０により実行されるセキュリティ手順として実装できることが理解されよう。
【００７５】
<<動的分離>>
図１７は、ハードウェアベースのファイアウォールを有する従来技術のネットワーク・システム１７００を示す図である。ネットワーク・システム１７００は、内部コンピュータ１７０５ａ及び１７０５ｂと、第１のネットワーク・インターフェイスカード（ＮＩＣ）１７１０と、ネットワーク・アドレス変換（ＮＡＴ）を実行するハードウェアベースのファイアウォール１７１５と、第２のＮＩＣ１７２０と、（インターネットなどの）外部ネットワーク１７２５と、外部コンピュータ１７３０ａ及び１７３０ｂとを含む。
【００７６】
ファイアウォール１７１５は、ＣｈｅｃｋＰｏｉｎｔＦＷ−１又はＣｉｓｃｏＰＩＸなどのハードウェアベースのファイアウォールである。ファイアウォールは、２つの異なるネットワーク・ポート（第１ＮＩＣ１７２０及び第２ＮＩＣ１７２０）を使用して、内部コンピュータ１７０５ａ及び１７０５ｂを外部ネットワーク１７２０から切り離し、分離する。ファイアウォール１７１５は、ネットワーク・アドレス変換（ＮＡＴ）を使用して、（ＩＰアドレスｘとして示す）内部コンピュータ１７０５ａのインターネットプロトコル（ＩＰ）アドレス及び（ＩＰアドレスｙとして示す）内部コンピュータ１７０５ｂのＩＰアドレスをパブリックＩＰアドレスｚに変換し、このようにして内部コンピュータ１７０５ａ及び１７０５ｂのＩＰアドレスを隠す。ファイアウォール１７１５は、内部コンピュータ１７０５ａ及び１７０５ｂのメディアアクセス制御（ＭＡＣ）アドレスにも同様の変換を行う。
【００７７】
ＰＣソフトウェアベースのファイアウォールは内部コンピュータのＩＰ及びＭＡＣアドレスを隠さないので、ネットワーク・システム１７００は、内部コンピュータ１７０５ａ及び１７０５ｂ自体において動作する（Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓパーソナル・ファイアウォール及びＣｈｅｃｋＰｏｉｎｔＺｏｎｅＡｌａｒｍなどの）ＰＣソフトウェアベースのファイアウォールよりも高いレベルのセキュリティを提供する。
【００７８】
図１８は、ソフトウェアベースのファイアウォールを有する従来技術のネットワーク・システム１８００を示す図である。ネットワーク・システム１８００は、（インターネットなどの）外部ネットワーク１８０５と、（１８１０ａ、１８１０ｂ、．．．１８１０ｎとして示す）１又はそれ以上のＮＩＣ１８１０と、レイヤ２（データリンク層）とレイヤ３（ネットワーク層）との間のインターフェイスとしての機能を果たすネットワーク・ドライバ・インターフェイス仕様（ＮＤＩＳ）ドライバ１８１５と、（Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓオペレーティング・システムのＭＩＮＩＰｏｒｔなどの）中間ドライバ１８２０と、ソフトウェアベースのファイアウォール１８２５と、オペレーティング・システム１８３０と、（１８３５ａ、１８３５ｂ、．．．１８３５ｍとして示す）１又はそれ以上のアプリケーション１８３５とを含む。オペレーティング・システム１８３０は、ＴＣＰ／ＩＰプロトコルスイート１８４０を含む。
【００７９】
動作中、中間ドライバ１８２０が、ＮＩＣ１８１０及びＮＤＩＳドライバ１８１５から到来したトラフィックをソフトウェアベースのファイアウォール１８２５へ送信する。ソフトウェアベースのファイアウォール１８２５は、トラフィックをどのように処理するか（許可、否定、又は拒否）を決定し、許可されたトラフィックのみがオペレーティング・システム１８３０へ進めるようにする。
【００８０】
ネットワーク・システム１８００はハードウェアベースのファイアウォールを使用しない。常にＮＩＣ１８１０のうちの１つのみを使用する必要がある。しかしながら、（外部ネットワーク１８０５に明白な）ＮＩＣ１８１０のＩＰ及びＭＡＣアドレスは、アプリケーション１８３５に表示され使用されるのと同じＩＰ及びＭＡＣアドレスである（すなわち、アプリケーション１８３５と外部ネットワーク１８０５との間でアドレス分離は行われない）。
【００８１】
図１９は、本発明の実施形態による動的アドレス分離を行うネットワーク・システム１９００を示す図である。ネットワーク・システム１９００は、（インターネットなどの）外部ネットワーク１９０５、（１９１０ａ、１９１０ｂ、．．．１９１０ｎとして示す）１又はそれ以上のＮＩＣ１９１０と、レイヤ２（データリンク層）とレイヤ３（ネットワーク層）との間のインターフェイスとしての機能を果たすＮＤＩＳドライバ１９１５と、中間ドライバ１９２０と、ソフトウェアベース又はハードウェアベースのファイアウォール１９２５と、オペレーティング・システム１９３０と、（１９３５ａ、１９３５ｂ、．．．１９３５ｍとして示す）１又はそれ以上のアプリケーション１９３５とを含む。オペレーティング・システム１９３０は、ＴＣＰ／ＩＰプロトコルスイート１９４０を含む。中間ドライバ１９２０は、ＩＰ及びＭＡＣアドレスの変換テーブルを含むＮＡＴエンジン１９４５を含む。
【００８２】
ＮＩＣ１９１０、ＮＤＩＳドライバ１９１５、中間ドライバ１９２０、ファイアウォール１９２５、オペレーティング・システム１９３０、及びアプリケーション１９３５をモバイル装置３１０にインストールすることができる。ファイアウォール１９２５は、ユニバーサルシリアルバス（ＵＳＢ）接続、無線接続、又は別のネットワーク・ワイヤ接続により中間ドライバ１９２０に接続された外部ファイアウォール１９２５であってもよい。例えば、ファイアウォール１９２５は、モバイルセキュリティ・システム３４５の一部であってもよい。
【００８３】
動作中、中間ドライバ１９２０は、ＮＩＣ１９１０及びＮＤＩＳドライバ１９１５から到来する全てのデータパケットを受信し、個々のデータパケットをＮＡＴエンジン１９４５へルーティングする。ＮＡＴエンジン１９４５は、動的ホスト設定プロトコル（ＤＨＣＰ）を使用して、アプリケーション１９３５のＩＰアドレスを外部ネットワーク１９０５から動的に分離する。図１９に示すように、動的ＮＡＴエンジン１９４５は、ＮＩＣにインターフェイス接続しながらアプリケーション１９３５のＩＰアドレス（ＩＰアドレスｘ）を異なるＩＰアドレス（ＩＰアドレスｚ）に変換し、データをオペレーティング・システム１９３０へ送信する際にはＩＰアドレスｚをＩＰアドレスｘに変換し直す。従って、中間ドライバ１９２０は、ＩＰアドレスｘを外部ネットワークから分離した上でＩＰアドレスｚを外部ネットワーク１９０５に提供する。必要であれば、ＮＡＴエンジン１９４５がＭＡＣアドレスに同様の変換を行う。図示のように、ＮＡＴエンジン１９４５は中間ドライバ１９２０の一部である。しかしながら、当業者であれば、ＮＡＴエンジン１９４５が、モバイルセキュリティ・システム３４５上、ファイアウォール１９２５の一部などの他の場所に位置してもよいことを理解するであろう。
【００８４】
ＮＡＴエンジン１９４５がＩＰアドレスを変換した後、中間ドライバ１９２０が個々のデータパケットをファイアウォール１９２５へ送信する。ファイアウォール１９２５は、各データパケットをどのように処理するか（許可、否定、又は拒否）を決定し、許可されたデータパケットのみがオペレーティング・システム１９３０へ進めるようにする。中間ドライバ１９２０は、個々の許可されたデータパケットをファイアウォール１９２５から受信し、個々の許可されたデータパケットをアプリケーション１９３５へルーティングする。
【００８５】
発信データパケットの場合、中間ドライバ１９２０が個々のデータパケットをアプリケーション１９３５から受信し、個々のデータパケットをＮＡＴエンジン１９４５へルーティングする。上述したように、ＮＡＴエンジン１９４５は、データパケットに関連するＩＰ及び／又はＭＡＣアドレスを変換する。次に、中間ドライバ１９２０は、（変換済みのＩＰ及び／又はＭＡＣアドレスを含む）個々のデータパケットをＮＡＴエンジン１９４５から受信し、個々のデータパケットを外部ネットワーク１９０５へルーティングする。
【００８６】
このようにして、ネットワーク・システム１９００は、内部コンピュータ／アプリケーションのＩＰ及びＭＡＣアドレスを外部ネットワーク１９０５から分離するが、ハードウェアベースのファイアウォール又は２以上のＮＩＣを使用する必要はない。たとえファイアウォールに２以上のＮＩＣが無くても、ネットワークの分離及び区別は行われる。
【００８７】
このようにして、ＮＡＴ及びＤＨＣＰの原理を使用しながらモバイルセキュリティ・システム３４５とモバイル装置３１０との間の接続を実現できることにより、モバイル装置３１０上で動作するエンドユーザアプリケーションが、保護された仮想ＩＰ及び仮想ＭＡＣアドレスを「見る」一方で、外部ネットワークに接続された装置は、異なる物理ＩＰ及び物理ＭＡＣアドレスを見るようになる。本発明は、２つのネットワーク・ポート（内部及び外部）を有するハードウェアベースのファイアウォールがモバイル装置に行うのと同様の保護及びＩＰの隠蔽を行うが、ハードウェアベースのファイアウォール及び２又はそれ以上のネットワーク・ポートを使用する必要はない。
【００８８】
図２３は、本発明の実施形態による、（外部ネットワーク１９０５などの）外部ネットワークから（アプリケーション１９３５などの）アプリケーションへデータ通信をルーティングする方法２３００のフローチャートである。ステップ２３０５において、（ＮＩＣ１９１０などの）ＮＩＣが外部ネットワークからデータ通信を受信する。このデータ通信には、外部ＩＰアドレス及び外部ＭＡＣアドレスを指定するデータが組み込まれている。ステップ２３１０において、データ通信が（中間ドライバ１９２０などの）中間ドライバへルーティングされ、中間ドライバは、このデータ通信を（ＮＡＴエンジン１９４５などの）ＮＡＴエンジンへルーティングする。ＮＡＴエンジンは、ＩＰ及びＭＡＣアドレスの変換テーブルを含む。
【００８９】
ステップ２３１５において、ＮＡＴエンジンがＤＨＣＰを使用して、データ通信に組み込まれた外部ＩＰ及びＭＡＣアドレスを内部ＩＰ及びＭＡＣアドレスに変換する。その後、ＮＡＴエンジンは、外部ＩＰ及びＭＡＣアドレスの代わりに内部ＩＰ及びＭＡＣアドレスをデータ通信に使用する。このようにして、内部コンピュータ／アプリケーションのＩＰ及びＭＡＣアドレスが外部ネットワークから分離される。
【００９０】
ステップ２３２０において、中間ドライバが、データ通信を（ファイアウォール１９２５などの）ファイアウォールへルーティングする。ステップ２３２５において、ファイアウォールが悪質なコードについてデータ通信を分析する。ステップ２３３０において、ファイアウォールが、データ通信をどのように処理するかを決定する。データ通信が悪質なコードを含むと判明した場合、方法２３００はステップ２３３５へ進む。ステップ２３３５において、ファイアウォールはデータ通信を拒否し、このデータ通信がアプリケーションへ進まないようにする。その後、方法２３００は終了する。
【００９１】
データ通信が悪質なコードを含まないことが判明した場合、方法２３００はステップ２３４０へ進む。ステップ２３４０において、ファイアウォールがデータ通信を可能にする。中間ドライバがファイアウォールからデータ通信を受信し、データ通信をアプリケーションへルーティングする。その後、方法２３００は終了する。
【００９２】
図２４は、本発明の実施形態による、データ通信をアプリケーション（アプリケーション１９３５など）から外部ネットワーク（外部ネットワーク１９０５など）へルーティングする方法２４００のフローチャートである。ステップ２４０５において、アプリケーションがデータ通信を開始する。アプリケーションは、内部ＩＰアドレス及び内部ＭＡＣアドレスを指定するデータをデータ通信に組み込むことができる。他の実施形態では、（オペレーティング・システム１９３０などの）オペレーティング・システムが内部ＩＰアドレス及び内部ＭＡＣアドレスを組み込むことができる。
【００９３】
ステップ２４１０において、データ通信が（中間ドライバ１９２０などの）中間ドライバへルーティングされ、中間ドライバがこのデータ通信を（ＮＡＴエンジン１９４５などの）ＮＡＴエンジンへさらにルーティングする。ＮＡＴエンジンは、ＩＰ及びＭＡＣアドレスの変換テーブルを含む。ステップ２４１５において、ＮＡＴエンジンがＤＨＣＰを使用して、データ通信に組み込まれた内部ＩＰ及びＭＡＣアドレスを外部ＩＰ及びＭＡＣアドレスに変換する。その後、ＮＡＴエンジンは、内部ＩＰ及びＭＡＣアドレスの代わりに外部ＩＰ及びＭＡＣアドレスをデータ通信に使用する。このようにして、内部コンピュータ／アプリケーションのＩＰ及びＭＡＣアドレスが外部ネットワークから分離される。
【００９４】
ステップ２４２０において、内部ドライバが、（ＮＩＣ１９１０などの）ＮＩＣを介してデータ通信を外部ネットワークへルーティングする。その後、方法２４００は終了する。
【００９５】
<<ハイブリッド・ファイアウォール>>
図２０は、別個のネットワーク・ファイアウォール及びパーソナル・ファイアウォールを有する従来技術のネットワーク・システム２０００を示す図である。ネットワーク・システム２０００は、（インターネットなどの）外部ネットワーク２００５と、ネットワーク・ファイアウォール２０１０と、（２０１５ａ、２０１５ｂなどとして示す）パーソナル・コンピュータ２０１５とを含む。ネットワーク・ファイアウォール２０１０は、外部装置又はコンピュータに常駐することができる。ネットワーク・ファイアウォール２０１０は、第１のＮＩＣ２０２０と、ＮＡＴゲートウェイ２０２５と、第２のＮＩＣ２０３０とを含む。個々のパーソナル・コンピュータ２０１５は、（２０３５ａ、２０３５ｂなどとして示す）パーソナル・ファイアウォール２０３５と、（２０４０ａ、２０４０ｂなどとして示す）アプリケーション２０４０とを含む。
【００９６】
動作中、ネットワーク・ファイアウォール２０１０は、ＮＡＴゲートウェイ２０２５を使用して、（ＩＰアドレスｘとして示す）パーソナル・コンピュータ２０１５ａのＩＰアドレス及び（ＩＰアドレスｙとして示す）パーソナル・コンピュータ２０１５ｂのＩＰアドレスをパブリックＩＰアドレスｚに変換し、このようにしてパーソナル・コンピュータ２１０５のＩＰアドレスを隠す。ネットワーク・ファイアウォール２０１０は、パーソナル・コンピュータ２０１５のＭＡＣアドレスにも同様の変換を行う。ネットワーク・ファイアウォール２０１０は、アンチウィルス、アンチスパイウェア、アンチアドウェアなどのセキュリティ対策を実行する。ネットワーク内ではネットワーク・ファイアウォール２０１０の方がパーソナル・ファイアウォール２０３５よりも速いので、ネットワーク・ファイアウォール２０１０は、悪質なコードがシステム２０００に入る前にそれを停止させることができる。しかしながら、ネットワーク・ファイアウォール２０１０は、アプリケーションに対する感度が低いとともに情報スタックの下位層に存在するので、ネットワーク・ファイアウォール２０１０の悪質なコードの検出に対する処理は制限される。
【００９７】
パーソナル・ファイアウォール２０３５は、アンチウィルス、アンチスパイウェア、アンチアドウェアなどのセキュリティ対策を実行する。パーソナル・ファイアウォール２０３５は、アプリケーションに対して敏感であるとともに情報スタックの上位層に存在するので、パーソナル・ファイアウォール２０３５の悪質なコードの検出に対する処理は、より完全かつ集中的なものとなり得る。
【００９８】
図２１は、本発明の実施形態によるハイブリッド・ファイアウォール２１１０を含むネットワーク・システム２１００を示す図である。ネットワーク・システム２１００は、（インターネットなどの）外部ネットワーク２１０５と、ハイブリッド・ネットワーク／パーソナル・ファイアウォール２１１０と、（２１１５ａ、２１１５ｂなどとして示す）パーソナル・コンピュータ２１１５とを含む。
【００９９】
ハイブリッド・ファイアウォール２１１０は、外部装置又はコンピュータに常駐することができる。他の実施形態では、ハイブリッド・ファイアウォール２１１０は、図１０Ａ〜図１０Ｃに示すモバイルセキュリティ・システム３４５に常駐することができる。ハイブリッド・ファイアウォール２１１０は、第１のＮＩＣ２１２０と、ＮＡＴエンジン２１２５と、第２のＮＩＣ２１３０とを含む。
【０１００】
個々のパーソナル・コンピュータ２１１５は、（２１３５ａ、２１３５ｂなどとして示す）エージェント２１３５と、（２１４０ａ、２１４０ｂなどとして示す）１又はそれ以上のアプリケーション２１４０とを含む。図２１に示すように、ネットワーク・システム２１００は２つのパーソナル・コンピュータ２１１５のみを備えるが、他の実施形態では、ネットワーク・システム２１００は３以上のパーソナル・コンピュータを備えることができる。
【０１０１】
動作中、ハイブリッド・ファイアウォール２１１０は、ＩＰ及びＭＡＣアドレスの変換テーブルを含むＮＡＴエンジン２１２５を使用して、（ＩＰアドレスｘとして示す）パーソナル・コンピュータ２１１５ａのＩＰアドレス及び（ＩＰアドレスｙとして示す）パーソナル・コンピュータ２１１５ｂのＩＰアドレスをパブリックＩＰアドレスｚに変換し、このようにしてパーソナル・コンピュータのＩＰアドレスを隠す。ネットワーク・ファイアウォール２１１０は、パーソナル・コンピュータ２１１５のＭＡＣアドレスにも同様の変換を行う。
【０１０２】
ハイブリッド・ファイアウォール２１１０は、ネットワーク・ファイアウォールのセキュリティ対策及びパーソナル・ファイアウォールのセキュリティ対策の両方を行うことができる。ハイブリッド・ファイアウォール２０１０は、従来のネットワーク・ファイアウォール２０３５と同じレベルにあるので、悪質なコードがシステム２１００に入る前にそれを停止させることができる。さらに、ハイブリッド・ファイアウォール２１１０はアプリケーションに対して敏感であるので、ハイブリッド・ファイアウォール２１１０は、従来のパーソナル・ファイアウォール２０３５のプロセスを実行することができる。
【０１０３】
ハイブリッド・ファイアウォール２１１０をアプリケーションに対して敏感にするために、エージェント２１３５は、個々のパケットがパケットに関連するアプリケーション２１４０を識別するデータを含むデータのパケットをハイブリッド・ファイアウォール２１１０へ送信する。個々のパケットが、パケットに関連するアプリケーション２１４０を識別するデータを含むので、ハイブリッド・ファイアウォール２１１０は、パーソナル・ファイアウォール２０３５として機能してアプリケーションレベルのセキュリティを処理することができる。その後、ハイブリッド・ファイアウォール２１１０は、少なくともアプリケーションを識別するデータを抽出することにより、データパケットのサブセットを外部ネットワーク２１０５へ送信することができる。
【０１０４】
図２２は、ハイブリッド・ファイアウォール２２１０を備えるとともに図１０Ａに示す本発明の実施形態に従って構成されたネットワーク・システム２２００を示す図である。ネットワーク・システム２２００は、（インターネットなどの）外部ネットワーク２２０５と、ハイブリッド・ネットワーク／パーソナル・ファイアウォール２２１０と、モバイル装置２２１５とを含む。
【０１０５】
ハイブリッド・ファイアウォール２２１０は、ポケットサイズ、ハンドヘルドサイズ、キーチェーンサイズ、又は場合によってはさらに小さなハウジングの外部装置に常駐することができる。ハイブリッド・ファイアウォール２２１０は、モバイル装置２２１５内に含まれる（ＵＳＢポートなどの）ＥＤポート２２３０と通信するための（ＵＳＢプラグなどの）ＥＤプラグ２２４５を備える。ハイブリッド・ファイアウォール２２１０はまた、ＮＡＴエンジン２２２５も備える。他の実施形態では、ハイブリッド・ファイアウォール２２１０をモバイル装置２２１５にインストールし、或いは無線又は別のネットワーク・ワイヤ接続によりモバイル装置２２１５に接続することができる。
【０１０６】
モバイル装置２２１５は、ＮＩＣ２２０と、ＥＤポート２２３０と、エージェント２２３５と、１又はそれ以上のアプリケーション２２４０と、（Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓオペレーティング・システムにおけるＭＩＮＩＰｏｒｔなどの）中間ドライバ２２５０とを備える。図２２に示すように、ネットワーク・システム２２００は、１つのみのモバイル装置２２１５及びハイブリッド・ファイアウォール２２１０を備えるが、他の実施形態では、ネットワーク・システム２２００は、２以上のモバイル装置及びハイブリッド・ファイアウォールを備えることができる。
【０１０７】
動作中、中間ドライバ２２５０は、ＮＩＣ２２２０から到来するトラフィックをＥＤポート２２３０及びＥＤプラグ２２４５を介してハイブリッド・ファイアウォール２２１０へ送信する。ハイブリッド・ファイアウォール２２１０は、トラフィックをどのように処理するか（許可、否定、又は拒否）を決定し、許可されたトラフィックのみがアプリケーション２２４０へ進めるようにする。
【０１０８】
ハイブリッド・ファイアウォール２２１０は、ＩＰ及びＭＡＣアドレスの変換テーブルを含むＮＡＴエンジン２２２５を使用して、モバイル装置２２１５のＩＰアドレスをパブリックＩＰアドレスに変換し、このようにしてモバイル装置２２１５のＩＰアドレスを隠す。ハイブリッド・ファイアウォール２２１０は、モバイル装置２２１５のＭＡＣアドレスにも同様の変換を行う。
【０１０９】
アプリケーション２２４０は、データのパケットを外部ネットワーク２２０５へ送信するために、ＥＤポート２２３０及びＥＤプラグ２２３５を介してこれをハイブリッド・ファイアウォール２２１０へ送信することができる。エージェント２２３５は、アプリケーション２２４０を識別するデータを、ハイブリッド・ファイアウォール２２１０へ送信されるデータのパケットに関連付ける。従って、個々のパケットは、パケットに関連するアプリケーション２２４０を識別するデータを含む。個々のパケットが、パケットに関連するアプリケーション２２４０を識別するデータを含むので、ハイブリッド・ファイアウォール２２１０は、パーソナル・ファイアウォールとして機能してアプリケーションセキュリティを処理することができる。
【０１１０】
図２５は、本発明の実施形態による、データ通信を（外部ネットワーク２１０５又は２２０５などの）外部ネットワークから（アプリケーション２１４０又は２２４０などの）アプリケーションへルーティングする方法２５００のフローチャートである。ステップ２５０５において、（ＮＩＣ２１２０又は２２２０などの）ＮＩＣが外部ネットワークからデータ通信を受信する。このデータ通信には、外部ＩＰアドレス及び外部ＭＡＣアドレスを指定するデータが組み込まれている。ステップ２５１０において、データ通信が、ＩＰ及びＭＡＣアドレスの変換テーブルを含む（ＮＡＴエンジン２１２５又は２２２５などの）ＮＡＴエンジンを含む（ファイアウォール２１１０又は２２１０などの）ハイブリッド・ネットワーク／パーソナル・ファイアウォールへルーティングされる。ハイブリッド・ファイアウォールは、従来のネットワーク・ファイアウォールと同じレベルにあり、アプリケーションに対して敏感である。
【０１１１】
ステップ２５１５において、ＮＡＴエンジンがＤＨＣＰを使用して、データ通信に組み込まれた外部ＩＰ及びＭＡＣアドレスを内部ＩＰ及びＭＡＣアドレスに変換する。その後、ＮＡＴエンジンは、外部ＩＰ及びＭＡＣアドレスの代わりに内部ＩＰ及びＭＡＣアドレスをデータ通信に使用する。このようにして、内部コンピュータ／アプリケーションのＩＰ及びＭＡＣアドレスが外部ネットワークから分離される。
【０１１２】
ステップ２５２０において、ハイブリッド・ファイアウォールがデータ通信をアプリケーションに関連付ける。ハイブリッド・ファイアウォールは、アプリケーション識別情報を含むファイアウォールが以前に受信したデータパケットに基づいてこの関連付けを行う。
【０１１３】
ステップ２５２５において、ハイブリッド・ファイアウォールが、悪質なコードについてデータ通信を分析する。ハイブリッド・ファイアウォールは従来のネットワーク・ファイアウォールと同じレベルにあるので、悪質なコードが（コンピュータ２１１５又は２２１５などの）コンピュータに到達する前にこれを停止することができる。さらに、ハイブリッド・ファイアウォールはアプリケーションに対して敏感であるので、ハイブリッド・ファイアウォールは、従来のパーソナル・ファイアウォールの機能を実行してアプリケーションレベルのセキュリティを処理する。
【０１１４】
ステップ２５３０において、ファイアウォールは、データ通信をどのように処理するかを決定する。データ通信が悪質なコードを含んでいると判明した場合、方法２５００はステップ２５３５へ進む。ステップ２５３５において、ファイアウォールはデータ通信を拒否し、このデータ通信がアプリケーションへ進まないようにする。その後、方法２５００は終了する。
【０１１５】
データ通信が悪質なコードを含まないことが判明した場合、方法２５００はステップ２５４０へ進む。ステップ２５４０において、ファイアウォールがデータ通信を許可し、データ通信がアプリケーションへルーティングされる。その後、方法２５００は終了する。
【０１１６】
図２６は、本発明の実施形態による、データ通信を（アプリケーション２１４０又は２２４０などの）アプリケーションから（外部ネットワーク２１０５又は２２０５などの）外部ネットワークへルーティングする方法２６００のフローチャートである。ステップ２６０５において、アプリケーションがデータ通信を開始する。アプリケーションは、内部ＩＰアドレス及び内部ＭＡＣアドレスを指定するデータをこのデータ通信に組み込むことができる。他の実施形態では、オペレーティング・システム又は（エージェント２１３５又は２２３５などの）コンピュータ上で動作するエージェントが内部ＩＰアドレス及び内部ＭＡＣアドレスを組み込むことができる。
【０１１７】
ステップ２６１０において、アプリケーションを識別するデータがデータ通信に組み込まれる。このステップは、アプリケーションにより、オペレーティング・システムにより、或いはコンピュータ上で動作するエージェント（エージェント２１３５又は２２３５など）により実行することができる。１つの実施形態では、アプリケーションと同じコンピュータ上で動作するエージェントがデータのパケットを作成し、個々のパケットが、パケットに関連するアプリケーションを識別するデータを含む。個々のパケットは、パケットに関連するアプリケーションを識別するデータを含むので、ダウンストリームハイブリッド・ファイアウォール（ファイアウォール２１１０又は２２１０など）がパーソナル・ファイアウォールとして機能して、アプリケーションレベルのセキュリティを処理することができる。
【０１１８】
ステップ２６１５において、データ通信が、ＩＰ及びＭＡＣアドレスの変換テーブルを含む（ＮＡＴエンジン２１２５又は２２２５などの）ＮＡＴエンジンを含む（ファイアウォール２１１０又は２２１０などの）ハイブリッド・ネットワーク／パーソナル・ファイアウォールへルーティングされる。ハイブリッド・ファイアウォールは、従来のネットワーク・ファイアウォールと同じレベルにあり、アプリケーションに対して敏感である。
【０１１９】
ステップ２６２０において、ハイブリッド・ファイアウォールが、データ通信からアプリケーション識別情報を抽出し取り除く。ステップ２６２５において、ＮＡＴエンジンがＤＨＣＰを使用して、データ通信に組み込まれた内部ＩＰ及びＭＡＣアドレスを外部ＩＰ及びＭＡＣアドレスに変換する。その後、ＮＡＴエンジンは、内部ＩＰ及びＭＡＣアドレスの代わりに外部ＩＰ及びＭＡＣアドレスをデータ通信に使用する。このようにして、内部コンピュータ／アプリケーションのＩＰ及びＭＡＣアドレスが外部ネットワークから分離される。
【０１２０】
ステップ２６３０において、データ通信（アプリケーションを識別するデータ、内部ＩＰアドレス、及び内部ＭＡＣアドレスを除いたもの）が、（ＮＩＣ２１２０又は２２２０などの）ＮＩＣを介して外部ネットワークへルーティングされる。その後、方法２６００は終了する。
【０１２１】
本発明の好ましい実施形態についての上記の説明は例示のみを目的とするものであり、上述の教示に照らして上述の実施形態及び方法にその他の変更及び修正を加えることが可能である。ネットワーク・サイトについては別個の異なるサイトとして説明しているが、当業者であれば、これらのサイトは統合的なサイトの一部であってもよく、各々が複数のサイトの一部を含み、或いは単一及び複数のサイトの組合せを含むことができることを理解するであろう。ハードウェア、ソフトウェア、或いはこれらのあらゆる所望の組み合せを利用して、本明細書に示した様々な実施形態を実施することができる。これに関しては、本明細書に示す様々な機能を実施できるあらゆるタイプの論理を利用することができる。プログラムされた汎用デジタルコンピュータを使用して、特定用途向け集積回路を使用して、或いは相互接続された従来の構成要素及び回路のネットワークを使用して構成要素を実装してもよい。接続は、有線、無線、モデムなどであってもよい。本明細書で説明した実施形態は、包括的又は限定的であることを意図したものではない。本発明は、特許請求の範囲によってのみ限定される。
【符号の説明】
【０１２２】
３００  ネットワーク・システム；  ３０５  デスクトップ；  
３１０ａ，  ３１０ｂ，  ３１０ｃ  モバイル装置；  ３１５  イントラネット；  
３２０  ネットワーク・セキュリティ・システム；  
３２５  セキュリティ・アドミニストレータ；  ３３０  インターネット；  
３３５  境界；  ３４０  信頼できる企業；  
３４５ａ，  ３４５ｂ  モバイル・セキュリティ・システム。
【図１】
2010528550.tif 000004
【図２】
2010528550.tif 000005
【図３】
2010528550.tif 000006
【図４】
2010528550.tif 000007
【図５】
2010528550.tif 000008
【図６】
2010528550.tif 000009
【図７】
2010528550.tif 000010
【図８】
2010528550.tif 000011
【図９】
2010528550.tif 000012
【図１０Ａ】
2010528550.tif 000013
【図１０Ｂ】
2010528550.tif 000014
【図１０Ｃ】
2010528550.tif 000015
【図１１】
2010528550.tif 000016
【図１２】
2010528550.tif 000017
【図１３】
2010528550.tif 000018
【図１４】
2010528550.tif 000019
【図１５】
2010528550.tif 000020
【図１６】
2010528550.tif 000021
【図１７】
2010528550.tif 000022
【図１８】
2010528550.tif 000023
【図１９】
2010528550.tif 000024
【図２０】
2010528550.tif 000025
【図２１】
2010528550.tif 000026
【図２２】
2010528550.tif 000027
【図２３】
2010528550.tif 000028
【図２４】
2010528550.tif 000029
【図２５】
2010528550.tif 000030
【図２６】
2010528550.tif 000031
【国際調査報告】
2010528550.tif 000032