(57)【要約】【課題】  通信ネットワークに接続されたコンピューティングデバイスをセキュリティ脅威から保護するためのネットワークセキュリティモジュールを提供する。【解決手段】  ネットワークセキュリティモジュールは、保護されるコンピュータと通信ネットワークとの間に論理的または物理的に配置される。ネットワークセキュリティモジュールは、セキュリティサービスからセキュリティ情報を受け取る。セキュリティ情報はセキュリティ対策を備え、セキュリティ対策は、ネットワークセキュリティモジュールによって施行されたとき、コンピュータに対するセキュリティ脅威からコンピュータを保護する。ネットワークセキュリティモジュールは、保護されるコンピュータとネットワークとの間のネットワークアクティビティを制御することによって、セキュリティ対策を実施する。【選択図】  図１０
2005285097.tif 000002
【特許請求の範囲】
【請求項１】
コンピューティングデバイスをネットワーク上のセキュリティ脅威から保護するためのネットワークセキュリティモジュールであって、
前記ネットワークセキュリティモジュールを前記コンピューティングデバイスに接続するコンピューティングデバイス接続と、
前記ネットワークセキュリティモジュールを前記ネットワークに接続するネットワーク接続と、
得られたセキュリティ対策を実施することによって前記コンピューティングデバイスと前記ネットワークとの間のネットワークアクティビティを制御し、それによって前記コンピューティングデバイスを前記ネットワーク上のセキュリティ脅威から保護するセキュリティ施行モジュールとを備え、
前記ネットワークセキュリティモジュールは、前記コンピューティングデバイスと前記ネットワークとの間のすべてのネットワークアクティビティが前記ネットワークセキュリティモジュールを介して通過するように前記コンピューティングデバイスと前記ネットワークとの間に配置されたことを特徴とするネットワークセキュリティモジュール。
【請求項２】
前記ネットワークセキュリティモジュールは、前記コンピューティングデバイスと前記ネットワークとの間に配置された物理デバイスを備えたことを特徴とする請求項１に記載のネットワークセキュリティモジュール。
【請求項３】
前記ネットワークセキュリティモジュールは、前記コンピューティングデバイスと前記ネットワークとの間に配置されるように前記コンピューティングデバイス内に統合されたハードウェアコンポーネントを備えたことを特徴とする請求項１に記載のネットワークセキュリティモジュール。
【請求項４】
前記ネットワークセキュリティモジュールは、前記コンピューティングデバイス上の実行可能モジュールを備え、前記コンピューティングデバイスと前記ネットワークとの間に配置されるようにして実行されることを特徴とする請求項１に記載のネットワークセキュリティモジュール。
【請求項５】
前記ネットワークセキュリティモジュールは、オペレーティングシステムモジュールであることを特徴とする請求項４に記載のネットワークセキュリティモジュール。
【請求項６】
メモリをさらに備え、前記ネットワークセキュリティモジュールは、セキュリティ対策を得ると前記セキュリティ対策を前記メモリに格納することを特徴とする請求項１に記載のネットワークセキュリティモジュール。
【請求項７】
前記ネットワークセキュリティモジュールは、前記コンピューティングデバイスの態様に対応する構成情報を前記コンピューティングデバイスからさらに受け取り、前記構成情報を前記メモリに格納することを特徴とする請求項６に記載のネットワークセキュリティモジュール。
【請求項８】
前記コンピューティングデバイスを前記ネットワーク上のセキュリティ脅威から保護するための最新のセキュリティ対策を得るために、更新セキュリティ対策の要求を定期的に発行する要求モジュールをさらに備えたことを特徴とする請求項７に記載のネットワークセキュリティモジュール。
【請求項９】
更新セキュリティ対策の前記要求は、前記コンピューティングデバイスの態様に対応する前記構成情報を含むことを特徴とする請求項８に記載のネットワークセキュリティモジュール。
【請求項１０】
前記得られたセキュリティ対策は、前記コンピューティングデバイスの構成情報に特に対応することを特徴とする請求項９に記載のネットワークセキュリティモジュール。
【請求項１１】
前記ネットワークセキュリティモジュールは、前記得られたセキュリティ対策を実施しないよう選択的にディセーブルすることができることを特徴とする請求項１０に記載のネットワークセキュリティモジュール。
【請求項１２】
前記ネットワークセキュリティモジュールは、選択的にディセーブルされたとき、前記コンピューティングデバイスを前記ネットワーク上のセキュリティ脅威から保護するための最新のセキュリティ対策を得るために、更新セキュリティ対策の要求を定期的に発行し、前記更新セキュリティ対策を前記メモリに格納し、前記コンピューティングデバイスの態様に対応する構成情報を前記コンピューティングデバイスから受け取ると前記構成情報を前記メモリに格納することを特徴とする請求項１１に記載のネットワークセキュリティモジュール。
【請求項１３】
前記コンピューティングデバイスから受け取られ、前記コンピューティングデバイスの態様に対応する構成情報は、
前記コンピューティングデバイスのオペレーティングシステム改訂情報と、
前記コンピューティングデバイスにインストールされたアンチウイルスソフトウェア改訂情報と、
アプリケーションプログラム改訂情報と
のうちのいずれかを含み得ることを特徴とする請求項１２に記載のネットワークセキュリティモジュール。
【請求項１４】
前記得られたセキュリティ対策に対応するセキュリティステータスを表示するためのセキュリティステータスインジケータモジュールをさらに備えたことを特徴とする請求項６に記載のネットワークセキュリティモジュール。
【請求項１５】
前記得られたセキュリティ対策は、前記コンピューティングデバイスと信用できるネットワークロケーションとの間のネットワークアクティビティを除いて、前記コンピューティングデバイスと前記ネットワークとの間のすべてのネットワークアクティビティをブロックすることを含み得ることを特徴とする請求項１に記載のネットワークセキュリティモジュール。
【請求項１６】
前記得られたセキュリティ対策は、ネットワークアクティビティのソースおよび／または宛先に対応するある範囲の通信ポートを伴う、前記コンピューティングデバイスと前記ネットワークとの間のネットワークアクティビティを選択的にブロックすることを含み得ることを特徴とする請求項１に記載のネットワークセキュリティモジュール。
【請求項１７】
前記得られたセキュリティ対策は、前記コンピューティングデバイス上の実行可能モジュールと前記ネットワークとの間のネットワークアクティビティをブロックすることを含み得ることを特徴とする請求項１に記載のネットワークセキュリティモジュール。
【請求項１８】
前記ネットワークセキュリティモジュールは、前記コンピューティングデバイスおよび前記ネットワークに対してトランスペアレントであることを特徴とする請求項１に記載のネットワークセキュリティモジュール。
【請求項１９】
ネットワークセキュリティモジュールを使用して、ネットワークを介して配布されるセキュリティ脅威からコンピューティングデバイスを保護するための方法であって、前記ネットワークセキュリティモジュールは、前記コンピューティングデバイスと前記ネットワークとの間のすべてのネットワークアクティビティが前記ネットワークセキュリティモジュールを介して通過するように前記コンピューティングデバイスと前記ネットワークとの間に配置され、前記方法は、
前記コンピューティングデバイスの態様に関する構成情報を前記コンピューティングデバイスから受け取ることと、
前記コンピューティングデバイスの構成情報に対応するセキュリティ情報を得ることであって、セキュリティ情報は前記コンピューティングデバイスをセキュリティ脅威から保護するための保護セキュリティ対策を含むことと、
前記得られたセキュリティ情報中の前記保護セキュリティ対策を実施することと
を備えることを特徴とする方法。
【請求項２０】
前記コンピューティングデバイスの態様に関する更新構成情報を前記コンピューティングデバイスから受け取ると、
前記ネットワークセキュリティモジュールに関連付けられたメモリに前記更新構成情報を格納することと、
前記コンピューティングデバイスの更新構成情報に対応する更新セキュリティ情報を得ることと、
前記更新セキュリティ情報中の保護セキュリティ対策を実施することと
をさらに備えることを特徴とする請求項１９に記載の方法。
【請求項２１】
前記コンピューティングデバイスの態様に関する構成情報は、
前記コンピューティングデバイスのオペレーティングシステム改訂情報と、
前記コンピューティングデバイスにインストールされたアンチウイルスソフトウェア改訂情報と、
アプリケーションプログラム改訂情報と
のうちのいずれかを含み得ることを特徴とする請求項２０に記載の方法。
【請求項２２】
更新セキュリティ情報を定期的に要求することと、
更新セキュリティ情報を受け取ると、前記ネットワークセキュリティモジュールに関連付けられたメモリに前記更新セキュリティ情報を格納し、前記更新セキュリティ情報中の保護セキュリティ対策を実施することと
をさらに備えることを特徴とする請求項１９に記載の方法。
【請求項２３】
前記保護セキュリティ対策は、前記コンピューティングデバイスと信用できるネットワークロケーションとの間のネットワークアクティビティを除いて、前記コンピューティングデバイスと前記ネットワークとの間のすべてのネットワークアクティビティをブロックすることを含み得ることを特徴とする請求項１９に記載の方法。
【請求項２４】
前記保護セキュリティ対策は、ネットワークアクティビティのソースおよび／または宛先に対応するある範囲の通信ポートを伴う、前記コンピューティングデバイスと前記ネットワークとの間のネットワークアクティビティを選択的にブロックすることを含み得ることを特徴とする請求項１９に記載の方法。
【請求項２５】
前記保護セキュリティ対策は、前記コンピューティングデバイス上の実行可能モジュールと前記ネットワークとの間のネットワークアクティビティをブロックすることを含み得ることを特徴とする請求項１９に記載の方法。
【請求項２６】
前記ネットワークセキュリティモジュールが前記保護セキュリティ対策を実施しないように前記ネットワークセキュリティモジュールを選択的にディセーブルすることをさらに備えることを特徴とする請求項１９に記載の方法。
【請求項２７】
前記セキュリティ情報は、前記セキュリティ対策に対応するセキュリティステータスをさらに含み、前記方法は、セキュリティステータスインジケータを介して前記セキュリティステータスを表示することをさらに備えることを特徴とする請求項１９に記載の方法。
【請求項２８】
コンピュータ実行可能命令を有するコンピュータ可読媒体であって、前記コンピュータ実行可能命令は、実行されると、ネットワークセキュリティモジュールを使用してネットワークを介して配布されるセキュリティ脅威からコンピューティングデバイスを保護するための方法を履行し、前記ネットワークセキュリティモジュールは、前記コンピューティングデバイスと前記ネットワークとの間のすべてのネットワークアクティビティが前記ネットワークセキュリティモジュールを介して通過するように前記コンピューティングデバイスと前記ネットワークとの間に配置され、前記方法は、
前記コンピューティングデバイスの態様に関する構成情報を前記コンピューティングデバイスから受け取ることと、
前記コンピューティングデバイスの構成情報に対応するセキュリティ情報を得ることであって、セキュリティ情報は前記コンピューティングデバイスをセキュリティ脅威から保護するための保護セキュリティ対策を含むことと、
前記得られたセキュリティ情報中の前記保護セキュリティ対策を実施することと
を備えたことを特徴とするコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク化された環境においてコンピューティングデバイスを攻撃から保護するためのネットワークセキュリティデバイスおよび方法に関する。
【背景技術】
【０００２】
インターネットなど、様々なネットワークを介してますます多くのコンピュータおよびその他のコンピューティングデバイスが相互接続されるのに伴い、コンピュータセキュリティ、特にネットワークまたは情報ストリームを介してなされる侵入または攻撃に対するセキュリティがますます重要になっている。当業者なら理解するであろうが、これらの攻撃は、多くの異なる形態でやってくる。もちろん限定しないがこれらには、コンピュータウイルス、コンピュータワーム、システムコンポーネントの置き換え、サービス妨害攻撃、さらには正当なコンピュータシステム機能の悪用／乱用が含まれ、これらはすべてが、１つまたは複数のコンピュータシステム脆弱性を不正目的に利用するものである。当業者なら様々なコンピュータ攻撃が技術的には一つ一つ異なることを理解するであろうが、本発明の目的上、そして説明を簡単にするために、以下ではこれらの攻撃のすべてをコンピュータエクスプロイト（ｃｏｍｐｕｔｅｒ  ｅｘｐｌｏｉｔｓ）、またはより単純にエクスプロイトと総称することにする。
【０００３】
コンピュータシステムがコンピュータエクスプロイトによって攻撃されるかまたは「感染」したとき、その悪い結果は様々であり、システムデバイスをディセーブルしたり、コンピューティングファームウェアやアプリケーションもしくはデータファイルを消去または破壊したり、可能性としてセンシティブなデータをネットワーク上の別の場所に送信したり、コンピュータシステムを遮断したり、コンピュータシステムをクラッシュさせたりすることが含まれる。さらに、すべてではないが多くのコンピュータエクスプロイトの別の有害な側面は、感染したコンピュータシステムを使用して他のコンピュータを感染させることである。
【０００４】
図１は、コンピュータエクスプロイトが通例ばら撒かれる例示的なネットワーク化環境１００を示す絵図である。図１に示すように、典型的な例示的ネットワーク化環境１００は複数のコンピュータ１０２〜１０８を含み、すべてが、イントラネットなどの通信ネットワーク１１０を介して、またはインターネットと一般に呼ばれるグローバルなＴＣＰ／ＩＰネットワークを含むより大きな通信ネットワークを介して相互接続されている。どんな理由であれ、コンピュータ１０２など、ネットワーク１１０に接続されたコンピュータ上の悪意ある者が、コンピュータエクスプロイト１１２を開発し、これをネットワーク上にリリースする。リリースされたコンピュータエクスプロイト１１２は、矢印１１４で示すように、コンピュータ１０４など１つまたは複数のコンピュータによって受け取られ、感染する。多くのコンピュータエクスプロイトで典型的であるように、一旦感染すると、コンピュータ１０４を使用して矢印１１６で示すようにコンピュータ１０６など他のコンピュータに感染し、そのコンピュータは、矢印１１８で示すようにコンピュータ１０８などさらに他のコンピュータに感染する。明らかに、近年のコンピュータネットワークのスピードおよび到達範囲により、コンピュータエクスプロイト１１２は指数関数的なレートで「成長」することができ、グローバルなコンピュータの全般的な流行にすぐエスカレートする局所的な流行にすぐになることがある。
【０００５】
コンピュータエクスプロイト、特にコンピュータウイルスおよびワームに対する従来の防御は、アンチウイルスソフトウェアである。一般に、アンチウイルスソフトウェアは、ネットワークを介して到着する入来データをスキャンして、既知のコンピュータエクスプロイトと関連付けられた識別可能なパターンを探す。既知のコンピュータエクスプロイトと関連付けられたパターンを検出すると、アンチウイルスソフトウェアは、感染したデータからコンピュータウイルスを除去したり、データを検疫したり、または「感染した」入来データを削除したりすることができる。残念ながら、アンチウイルスソフトウェアは通常、「既知の」識別可能なコンピュータエクスプロイトで機能する。しばしば、これはデータ内のパターンをエクスプロイトの「シグニチャ」と呼ばれるものと照合することによって行われる。このエクスプロイト検出モデルにおける核心的な欠陥の１つは、コンピュータのアンチウイルスソフトウェアが更新されて、未知のコンピュータエクスプロイトを確認し、対応するまで、この新しいコンピュータエクスプロイトがチェックされずにネットワーク中で伝搬する恐れがあることである。
【０００６】
アンチウイルスソフトウェアがより洗練され、何千もの既知のコンピュータエクスプロイトを効率的に認識するようになったのと同様に、コンピュータエクスプロイトもまた、より洗練されてきた。例えば、多くの最近のコンピュータエクスプロイトは、今やポリモアフィック（ｐｏｌｙｍｏｒｐｈｉｃ）であり、言い換えれば、エクスプロイトが転送中にアンチウイルスソフトウェアによって認識できる識別可能なパターンまたは「シグニチャ」を持たない。これらのポリモアフィックのエクスプロイトは、別のコンピュータシステムに伝搬する前にそれら自体を変化させるので、アンチウイルスソフトウェアによってしばしば認識不可能である。
【０００７】
コンピュータエクスプロイトに対する保護で今日一般的な別の防御は、ハードウェアまたはソフトウェアのネットワークファイアウォールである。当業者なら理解するであろうが、ファイアウォールは、内部ネットワークと外部ネットワークとの間の情報の流れを制御することによって、外部ネットワークから発生する無許可のアクセスから内部ネットワークを保護するセキュリティシステムである。ファイアウォールの外で発生するすべての通信は、その通信を調べて、通信が安全かどうか、または意図されたターゲットへの転送を許可できるかどうかを判定するプロキシに最初に送られる。残念ながら、許可できるネットワークアクティビティが制約されず、許可できないネットワークアクティビティが拒否されるようにファイアウォールを適正に構成することは、高度で複雑なタスクである。技術的に複雑であることに加えて、ファイアウォール構成は管理が難しい。ファイアウォールが不適正に構成されると、許可できるネットワークトラフィックが間違って遮断され、許可できないネットワークトラフィックが通過を許され、内部ネットワークを危うくする恐れがある。この理由で、ファイアウォールへの変更は一般に、たまにしか行われず、また専門的なネットワーク設計の問題に精通した人によってのみ行われる。
【０００８】
ファイアウォールの別の制限として、ファイアウォールは内部ネットワークを保護するが、特定のコンピュータに対する保護は何ら提供しない。言い換えれば、ファイアウォールは、特定のコンピュータのニーズにそれ自体を適応しない。そうではなく、ファイアウォールが単一のコンピュータを保護するために使用される場合であっても、ファイアウォールはやはり、単一のコンピュータの構成に従ってではなくファイアウォールの構成に従ってそのコンピュータを保護する。
【０００９】
ファイアウォールに関連する別の問題は、ファイアウォールによって確立された境界内で発生するコンピュータエクスプロイトからの保護は提供しないことである。言い換えれば、エクスプロイトは、ファイアウォールによって保護されたネットワークを一旦突破できると、エクスプロイトはファイアウォールによって制約されない。この状況は、従業員がポータブルコンピュータを家庭（すなわち企業ファイアウォールの保護外）に持ち出し、家庭のより安全でない環境で使用するときによく生じる。従業員の知らないうちに、ポータブルコンピュータが感染する。ポータブルコンピュータがファイアウォールの保護内の企業ネットワークに再接続されると、エクスプロイトは、多くの場合、ファイアウォールによってチェックされることなく自由に他のコンピュータに感染することができる。
【００１０】
上述のように、コンピュータエクスプロイトは今や、正当なコンピュータシステム機能をも攻撃に活用する。このように、ファイアウォールおよびアンチウイルスソフトウェアのプロバイダ以外の多くの当事者は、今や、協力してこれらのコンピュータエクスプロイトからコンピュータを守らなければならない。例えば、オペレーティングシステムプロバイダは今や、経済的および契約上の理由で、そのオペレーティングシステム機能を絶えず分析して、コンピュータエクスプロイトによって使用される恐れのある弱点または脆弱性を特定しなければならない。この考察では、コンピュータエクスプロイトがコンピュータシステムを攻撃する恐れのあるいかなる手段も、コンピュータシステム脆弱性または単に脆弱性と総称することにする。
【００１１】
オペレーティングシステム、またはその他のコンピュータシステムコンポーネント、ドライバ、アプリケーションにおいて脆弱性を確認し、それに対処するとき、プロバイダは通常、その脆弱性を修復するためにソフトウェア更新をリリースする。よくパッチと呼ばれるこれらの更新は、確認された脆弱性からコンピュータシステムを保護するためにコンピュータシステムにインストールされるべきものである。しかし、これらの更新は本質的に、オペレーティングシステム、デバイスドライバ、またはソフトウェアアプリケーションのコンポーネントのコード変更である。それゆえ、これらの更新は、アンチウイルスソフトウェアプロバイダからのアンチウイルス更新のように迅速かつ自由にリリースすることはできない。これらの更新はコード変更なので、ソフトウェア更新は、一般にリリースされるのに先立って相当の社内テストを必要とする。残念ながら、社内テストを行っても、ソフトウェア更新は１つまたは複数の他のコンピュータシステム機能に故障または障害を引き起こす場合がある。このため、ソフトウェア更新は、コンピュータシステムに依拠する当事者に多大なジレンマを生み出す。より具体的には、当事者は、そのコンピュータシステムを脆弱性から保護するために更新し、そのコンピュータシステムの動作を混乱させる危険を冒すか、それとも、コンピュータシステムを更新するのを控え、そのコンピュータシステムが感染するかもしれないという危険を冒すかという問題である。
【００１２】
本システムの下では、新しいコンピュータエクスプロイトがネットワーク１１０上にリリースされてから、コンピュータシステムを更新してコンピュータエクスプロイトから保護するまでの間に存在する期間があり、この期間を以下では脆弱性ウィンドウと呼ぶ。名前が示唆するように、この脆弱性ウィンドウの間、コンピュータシステムは新しいコンピュータエクスプロイトに対して脆弱であるか、またはさらされている。図２Ａ〜２Ｂは、この脆弱性ウィンドウを示す例示的なタイムラインのブロック図である。タイムラインに関する以下の考察では、重要な時またはイベントを、タイムラインに関するイベントとして特定および言及することにする。
【００１３】
図２Ａは、公衆ネットワーク上に現在リリースされているより最近の洗練されたクラスのコンピュータエクスプロイトの１つに関し、コンピュータシステムの脆弱性ウィンドウを示している。後述するように、この新しいクラスのコンピュータエクスプロイトは、システムプロバイダの予防的なセキュリティ対策を利用してコンピュータシステム脆弱性を特定し、その後、コンピュータエクスプロイトを作成し、配布する。
【００１４】
図２Ａを参照すると、イベント２０２で、オペレーティングシステムプロバイダは、リリースされたオペレーティングシステム中に脆弱性があることを確認する。例えば、あるシナリオでは、オペレーティングシステムプロバイダは、リリースされたオペレーティングシステムについてそれ自体の内部分析を行い、コンピュータシステムを攻撃するのに使用される可能性のある以前は未知であった脆弱性を発見する。代替のシナリオでは、以前は未知であった脆弱性が第三者によって発見される。第三者としては、コンピュータシステムに関してシステムセキュリティ分析を行い、脆弱性に関する情報をオペレーティングシステムプロバイダに中継する組織が含まれる。
【００１５】
オペレーティングシステムプロバイダは、セキュリティ脆弱性の存在に気付くと、この脆弱性に対処し、イベント２０４で、このオペレーティングシステムが稼働しているどのコンピュータシステムをも保護するパッチを作成し、リリースすることになる。通常、オペレーティングシステムプロバイダは、利用可能なシステムパッチがあることの何らかのタイプの告知を行うとともに、パッチをインストールするようすべてのオペレーティングシステムユーザに勧告することになる。パッチは通常、影響を受けるコンピュータシステムにダウンロードされ、インストールされるように、ネットワーク１１０上の既知の場所に置かれる。
【００１６】
残念ながら、あまりにも頻繁に起こることだが、オペレーティングシステムプロバイダがパッチをリリースした後、イベント２０６で、悪意ある者がパッチをダウンロードし、何らかのリバースエンジニアリング、ならびにオペレーティングシステムまたはその他によって公になった情報を用いて、オペレーティングシステム中の「修復された」脆弱性に関する詳細を特定する。この情報を用いて、悪意ある者はコンピュータエクスプロイトを作成して、基礎となる脆弱性を攻撃する。イベント２０８で、悪意ある者は、コンピュータエクスプロイトをネットワーク１１０上にリリースする。ソフトウェアパッチ（「フィックス」とも呼ばれる）を発行することの目的は、基礎となる脆弱性を修正することだが、「フィックス」は複雑なソフトウェアコードであることが多く、残念ながらそれ自体が、悪意ある者によって作成されたコンピュータエクスプロイトによって攻撃される可能性がある新たな脆弱性を生み出すか、または含む場合がある。このように、「フィックス」は、それが何を修正するかについて評価されるのに加えて、潜在的な脆弱性についても評価される。
【００１７】
「フィックス」が利用可能である間、悪意ある者は、前述の理由を含めた様々な理由で、あらゆる脆弱なコンピュータシステムがすぐにアップグレードされることにはならないと認識する。このように、イベント２０８で、悪意ある者は、コンピュータエクスプロイト１１２をネットワーク１１０上にリリースする。上述したように、コンピュータエクスプロイト１１２のリリースにより、脆弱性ウィンドウ２１２が開き、そこでは脆弱なコンピュータシステムがこのコンピュータエクスプロイトの影響を被りやすい。イベント２１０でパッチがようやくコンピュータシステムにインストールされたときにのみ、このコンピュータシステムの脆弱性ウィンドウ２１２が閉じられる。
【００１８】
今日リリースされる多くのコンピュータエクスプロイトは、図２Ａに関して述べたシナリオでの場合のように、既知の脆弱性に基づくものであるが、時として、未知であった脆弱性を利用するコンピュータエクスプロイトがネットワーク１１０上にリリースされる。図２Ｂに、このシナリオの下でタイムライン２２０に関する脆弱性ウィンドウ２３０を示す。このようにタイムライン２２０上に示すように、イベント２２２で、悪意ある者が新しいコンピュータエクスプロイトをリリースする。これは新しいコンピュータエクスプロイトなので、脆弱なコンピュータシステムを攻撃から保護するのに利用可能なオペレーティングシステムパッチもアンチウイルス更新もない。したがって、脆弱性ウィンドウ２３０が開かれる。
【００１９】
新しいコンピュータエクスプロイトがネットワーク１１０上に出回った後のどこかの時点で、イベント２２４で示すように、オペレーティングシステムプロバイダおよび／またはアンチウイルスソフトウェアプロバイダは、新しいコンピュータエクスプロイトを検出する。当業者なら理解するであろうが、通常、新しいコンピュータエクスプロイトの存在は、オペレーティングシステムプロバイダとアンチウイルスソフトウェアプロバイダの両方によって、およそ数時間以内に検出される。
【００２０】
コンピュータエクスプロイトが検出されると、アンチウイルスソフトウェアプロバイダは、アンチウイルスソフトウェアがコンピュータエクスプロイトを認識することができるパターンまたは「シグニチャ」を特定するそのプロセスを開始することができる。同様に、オペレーティングシステムプロバイダは、コンピュータエクスプロイトを分析して、オペレーティングシステムをコンピュータエクスプロイトから保護するためにそれにパッチを当てなければならないかどうかを判定するそのプロセスを開始する。これらの平行した労力の結果、イベント２２６で、オペレーティングシステムプロバイダおよび／またはアンチウイルスソフトウェアプロバイダは、コンピュータエクスプロイトに対処する更新、すなわちオペレーティングシステムへのソフトウェアパッチまたはアンチウイルス更新をリリースする。その後、イベント２２８で、更新がユーザのコンピュータシステムにインストールされ、それによってコンピュータシステムが保護され、脆弱性ウィンドウ２３０を閉じるようにする。
【発明の開示】
【発明が解決しようとする課題】
【００２１】
上の例から分かるように、コンピュータエクスプロイトがコンピュータシステムにセキュリティの脅威をもたらす可能性のあるシナリオのすべての代表にすぎないが、コンピュータエクスプロイト１１２がネットワーク１１０上にリリースされてから、対応する更新がユーザのコンピュータシステム上にインストールされて脆弱性ウィンドウが閉じるまでの間に、脆弱性ウィンドウが存在する。悲しむべきことに、脆弱性ウィンドウが大きかろうが小さかろうが、感染したコンピュータは、たとえ「殺菌」し、修復することが可能だとしても、そのためにかなりの金額がコンピュータの所有者にかかる。このコストは、何千、何十万台ものデバイスがネットワーク１１０に接続されている可能性のある大規模な企業またはエンティティと関係するとき、莫大となることがある。このようなコストはさらに、このようなエクスプロイトが顧客データを改ざんまたは破壊する可能性によって増幅され、これらすべては追跡および修復が非常に困難であるか不可能である場合がある。コンピュータシステム上で予防的な更新が利用可能になるか、そして／またはインストールされる前であっても、応答性に優れた形で個々のコンピュータシステムのニーズに従って、コンピュータシステムをコンピュータエクスプロイトから守るためのシステムおよび方法が必要とされている。本発明は、これらおよび従来技術にみられたその他の問題について取り組んでいる。
【課題を解決するための手段】
【００２２】
本発明の態様によれば、コンピューティングデバイスをネットワーク上のセキュリティ脅威から保護するためのネットワークセキュリティモジュールが提示される。ネットワークセキュリティモジュールは、コンピューティングデバイスとネットワークとの間のすべてのネットワークアクティビティがネットワークセキュリティモジュールを通して通過するようにコンピューティングデバイスとネットワークとの間に配置される。ネットワークセキュリティモジュールは、ネットワークセキュリティモジュールをコンピューティングデバイスに接続するためのコンピューティングデバイス接続と、ネットワークセキュリティモジュールをネットワークに接続するためのネットワーク接続とを含む。ネットワークセキュリティモジュールはまた、コンピューティングデバイスとネットワークとの間のネットワークアクティビティを制御するセキュリティ施行モジュールも含む。セキュリティ施行モジュールは、得られたセキュリティ対策を実施することによってネットワークアクティビティを制御し、それによってコンピューティングデバイスがセキュリティ脅威から保護される。
【００２３】
本発明の追加の態様によれば、ネットワークセキュリティモジュールを使用して、ネットワークを介して配布されるセキュリティ脅威からコンピューティングデバイスを保護する方法が提示される。ネットワークセキュリティモジュールは、コンピューティングデバイスとネットワークとの間のすべてのネットワークアクティビティがネットワークセキュリティモジュールを通して通過するようにコンピューティングデバイスとネットワークとの間に配置される。コンピューティングデバイスの態様に関する構成情報がコンピューティングデバイスから受け取られる。コンピューティングデバイスの構成情報に対応するセキュリティ情報が得られる。セキュリティ情報は、コンピューティングデバイスをセキュリティ脅威から保護するための保護セキュリティ対策を含む。得られたセキュリティ情報中の保護セキュリティ対策が実施され、それによってコンピューティングデバイスがネットワーク脅威から保護される。
【００２４】
本発明の別の態様によれば、実行されると、ネットワークセキュリティモジュールを使用してネットワークを介して配布されるセキュリティ脅威からコンピューティングデバイスを保護するための方法を実施するコンピュータ実行可能命令を担うコンピュータ可読媒体が提示される。ネットワークセキュリティモジュールは、コンピューティングデバイスとネットワークとの間のすべてのネットワークアクティビティがネットワークセキュリティモジュールを通して通過するようにコンピューティングデバイスとネットワークとの間に配置される。コンピューティングデバイスの態様に関する構成情報がコンピューティングデバイスから受け取られる。コンピューティングデバイスの構成情報に対応するセキュリティ情報が得られる。セキュリティ情報は、コンピューティングデバイスをセキュリティ脅威から保護するための保護セキュリティ対策を含む。得られたセキュリティ情報中の保護セキュリティ対策が実施され、それによってコンピューティングデバイスがネットワーク脅威から保護される。
【００２５】
本発明の前述の態様および付随する利点の多くは、以下の詳細な記述を添付の図面と共に参照することによってよりよく理解されるようになるので、より容易に理解されるようになるであろう。
【発明を実施するための最良の形態】
【００２６】
図３Ａは、本発明の態様を実施するのに適した例示的なネットワーク化環境３００を示す絵図である。例示的なネットワーク化環境３００は、ネットワーク１１０に接続されたコンピュータ３０２を含む。本発明を一般にコンピュータ３０２などのパーソナルコンピュータとの動作に関して述べるが、これは例示の目的のためにすぎず、本発明に関する限定と解釈すべきではないことに留意されたい。ほとんどすべてのネットワーク化コンピューティングデバイスがコンピュータエクスプロイトによって攻撃される恐れがあることを当業者なら容易に理解するであろう。したがって、本発明は、限定しないがパーソナルコンピュータ、タブレットコンピュータ、ノートブックコンピュータ、パーソナルディジタルアシスタント（ＰＤＡ）、ミニコンピュータおよびメインフレームコンピュータ、ワイヤレス電話機（しばしばセルフォンと呼ばれる）、ワイヤレス電話機／ＰＤＡの組合せなどのハイブリッドコンピューティングデバイス等を含む、多くのタイプのコンピュータ、コンピューティングデバイス、またはコンピューティングシステムを保護するために有利に実施することができる。本発明はまた、ハードウェアデバイス、周辺デバイス、ソフトウェアアプリケーション、デバイスドライバ、オペレーティングシステムなどを保護するために有利に実施することができる。
【００２７】
ネットワーク１１０は、いくつもの実際の通信ネットワークを含んでもよいことを理解されたい。これらの実際の通信ネットワークには、限定しないがインターネット、ワイドエリアネットワークおよびローカルエリアネットワーク、イントラネット、セルラーネットワーク、ＩＥＥＥ８０２．１１およびＢｌｕｅｔｏｏｔｈワイヤレスネットワークなどが含まれる。したがって、本発明をコンピュータネットワーク、特にインターネットについて論じるが、これは例示の目的のためにすぎず、本発明に関する限定と解釈すべきではない。
【００２８】
例示的なネットワーク化環境３００は、ネットワークセキュリティモジュール３０４およびセキュリティサービス３０６も含む。ネットワークセキュリティモジュール３０４は、コンピュータ３０２などのコンピュータとネットワーク１１０との間に配置される。ネットワークセキュリティモジュール３０４は、コンピュータ３０２とネットワーク１１０との間に物理的または論理的に配置することができる。コンピュータ３０２とネットワーク１１０との間の通信は、ネットワークセキュリティモジュール３０４を通して流れる。本発明によれば、ネットワークセキュリティモジュール３０４は、コンピュータの具体的構成に対応するセキュリティ情報に従って、コンピュータ３０２とネットワーク１１０との間のネットワークアクティビティを選択的に制御する。コンピュータの具体的構成には、限定しないが、コンピュータ３０２にインストールされた特定のオペレーティングシステム改訂、アンチウイルスソフトウェアと対応するシグニチャデータファイルの両方の改訂情報を含むアンチウイルス情報、インストール済みのアプリケーション、デバイスドライバなどが含まれ、これらはすべて、コンピュータシステム脆弱性を巧みに利用するためにコンピュータエクスプロイトの潜在的なターゲットになる恐れがある。
【００２９】
本発明の一実施形態によれば、セキュリティサービス３０６からセキュリティ情報を定期的に得るために、ネットワークセキュリティモジュール３０４は、コンピュータ３０２の特定の具体的構成に対応するセキュリティ情報についてセキュリティ情報要求をセキュリティサービス３０６に定期的に発行する。ネットワークセキュリティモジュール３０４は、セキュリティサービス３０６からセキュリティ情報を定期的に得るように構成することができる。例えば、ネットワークセキュリティモジュール３０４は、毎分にセキュリティサービス３０６からセキュリティ情報を得るように構成することができる。あるいは、ネットワークセキュリティモジュール３０４は、ユーザ指定の期間に従ってセキュリティサービス３０６からセキュリティ情報を得るように構成することができる。
【００３０】
多くのユーザは無数の理由でそのコンピュータシステムの更新をどうしても遅らせてしまうので、コンピュータの特定の具体的構成に対応するセキュリティ情報を得ることは重要である。例えば、オペレーティングシステムまたはアンチウイルスソフトウェアを更新する際の遅延は、コンピュータがしばらくの間アクティブでなかったために生じる場合がある。したがって、オペレーティングシステムおよび／またはアンチウイルスソフトウェアの一番最近の改訂が、新たに発見されたコンピュータエクスプロイトに対する十分な保護を提供することができても、コンピュータは「最新」ではない可能性があり、そのためコンピュータエクスプロイトの影響を被りやすく、コンピュータの特定の構成に対応するセキュリティ対策を実施しなければならない。したがって、セキュリティ情報要求は、限定しないが、インストール済みのパッチを含むコンピュータのオペレーティングシステム改訂を識別する情報；コンピュータによって使用されている特定のアンチウイルスソフトウェアおよび改訂、ならびにソフトウェアおよびデータファイルの更新；ｅメールやブラウザの識別子、改訂、ファームウェアプロバイダおよびバージョンなど、ネットワーク対応のアプリケーション情報；その他のセキュリティ設定を含むことができる。
【００３１】
本発明の態様によれば、ネットワークセキュリティモジュール３０４は、コンピュータシステムコンポーネントを更新する動作の１つとして、コンピュータの特定の構成情報を得る。例えば、ユーザがオペレーティングシステムパッチをインストールする動作の１つとしてオペレーティングシステムパッチをコンピュータ３０２にインストールするとき、ネットワークセキュリティモジュール３０４はオペレーティングシステムの現在の改訂について通知される。同様に、ネットワーク対応のアプリケーションやアンチウイルスソフトウェアなど、その他のコンピュータシステム機能も、それらが更新されたときにネットワークセキュリティモジュール３０４に通知する。これらすべてにより、ネットワークセキュリティモジュールは、コンピュータの具体的な現在の構成に従ってコンピュータ３０２を保護するために最も正確で十分なセキュリティ情報を得ることができる。
【００３２】
セキュリティ情報要求の中のコンピュータの特定の構成情報に基づいて、セキュリティサービス３０６は、既知のまたは知覚されたコンピュータシステム脆弱性からコンピュータを保護するために適切なセキュリティ情報を特定する。適切なセキュリティ情報の特定については後でより詳細に述べる。セキュリティ情報は、ネットワークセキュリティモジュール３０４によって実施されることになる保護セキュリティ対策を含み、この保護セキュリティ対策により、ネットワークセキュリティモジュールが既知の脆弱性のコンピュータエクスプロイトからコンピュータ３０２を隔離することができる。保護セキュリティ対策には、任意の数のネットワークアクティビティ制御、またはそれらの組合せを含めることができ、限定しないがこれらには、パッチや更新をインストールするためにセキュリティサービス３０６やアンチウイルスソフトウェアサービス３０８などいくつかの既知の安全なネットワークロケーションとの間で行われる通信を除いて、コンピュータ３０２とネットワーク１１０との間のすべてのネットワークアクティビティをブロックすること；特定の通信ポートおよびアドレス上のネットワークトラフィックをブロックすること；ｅメールやウェブブラウザアプリケーションなどいくつかのネットワーク関連のアプリケーションとの間の通信をブロックすること；コンピュータ３０２上の特定のハードウェアコンポーネントまたはソフトウェアコンポーネントへのアクセスをブロックすることが含まれる。このように、セキュリティ応答を受け取り次第、ネットワークセキュリティモジュールがセキュリティ対策を実施する。
【００３３】
前述のように、ネットワークセキュリティモジュール３０４はコンピュータ３０２とネットワーク１１０との間に配置され、そのため、コンピュータとネットワークとの間のすべてのネットワークアクティビティは、ネットワークセキュリティモジュールを通して流れなければならない。ネットワークトラフィックがネットワークセキュリティモジュール３０４を通して流れるとき、ネットワークセキュリティモジュールは、ネットワークトラフィックを監視し、セキュリティサービス３０６から受け取った保護セキュリティ対策を実施する。例えば、既知の安全なロケーションとの間の通信を除くすべてのネットワークアクセスをブロックすることなどを行う。
【００３４】
本発明のさらなる態様によれば、セキュリティ応答は、レベル赤、黄、緑など、指定のセキュリティレベルを含むこともできる。セキュリティレベルは、ネットワークセキュリティモジュール３０４によって実施される保護対策を表すレベルを、コンピュータ３０２のユーザに対して特定する情報を表す。例えば、赤のセキュリティレベルは、ネットワークセキュリティモジュール３０４が現在、既知の安全なロケーションとの間のアクセスを除いてコンピュータ３０２とネットワーク１１０との間のすべてのネットワークアクティビティをブロックしていることを示すことができる。あるいは、黄のセキュリティレベルは、ネットワークセキュリティモジュール３０４が現在、いくつかの保護セキュリティ対策を実施しているが、コンピュータ３０２は依然としてその他の点でネットワーク１１０と通信できることを示すことができる。さらに、緑のセキュリティレベルは、ネットワークセキュリティモジュール３０４が何の保護セキュリティ対策も実施しておらず、コンピュータ３０２とネットワーク１１０との間の通信が制限されていないことを示すことができる。上述のセキュリティレベルに従って、また説明の目的で、赤のセキュリティレベルは完全ロックダウン（ｌｏｃｋ−ｄｏｗｎ）と呼ぶこともでき、黄のセキュリティレベルは部分的ロックダウンと呼ぶこともでき、緑のセキュリティレベルはフリーネットワークアクセスと呼ぶこともできる。上の記述では３つのセキュリティレベルおよび赤黄緑のスキーマを識別しているが、これらは例示であり、本発明に関する限定と解釈すべきではない。それら表現のユーザに対する代替のスキーマを用いて任意の数のセキュリティレベルを実施することができることを当業者は容易に理解するであろう。
【００３５】
ネットワークセキュリティモジュール３０４は自律的に動作するので、すなわちユーザ介入を必要としないので、上で識別したセキュリティレベルならびに対応するセキュリティレベルの視覚表現は、ユーザ情報の目的のためのものにすぎない。これを使用して、ネットワークセキュリティモジュール３０４によって実施される制限のレベルの指示をユーザに提供することができる。この視覚指示は、ネットワーク接続が障害を起こしているかどうか、またはそのネットワークアクティビティが現在のネットワークセキュリティ問題のために制限されているかどうかをユーザが判定しようとしているときに、特に有用な場合がある。
【００３６】
本発明の態様により、そしてセキュリティの追加対策として、ネットワークセキュリティモジュール３０４の電源が入れられると、ネットワークセキュリティモジュールはデフォルト状態に入る。このデフォルト状態は、セキュリティの最高レベルすなわち完全ロックダウンに対応し、それゆえ、コンピュータ３０２と信用できるネットワークロケーションとの間のネットワークアクティビティが許可される。電源投入の一部として、またはセキュリティサービス３０６との定期的な通信の一部として、ネットワークセキュリティモジュール３０４は最新のセキュリティ情報を入手し、このセキュリティ情報に応じて、より制限の少ないセキュリティ対策を課すことができる。明らかに、ネットワークセキュリティモジュール３０４において完全ロックダウンのデフォルト状態を実施することは、コンピュータ３０２にとって有益である。というのは、脆弱性が確認されたかもしれず、つまりネットワークセキュリティモジュールの電源が切られていた間にエクスプロイトがネットワーク１１０上にリリースされたかもしれないからである。
【００３７】
本発明の一実施形態によれば、ネットワークセキュリティモジュール３０４は、コンピュータ３０２との間で情報を要求したり、アクセスしたりしない。そうではなく、ネットワークセキュリティモジュール３０４は、何らかのイベントに関連してコンピュータ３０２から送られてきた情報に関して動作する。このように、ネットワークセキュリティモジュール３０４は、最初にコンピュータ３０２とネットワーク１１０との間に配置されたときなど、コンピュータの保護を開始するとき、コンピュータシステムに対応するどんな具体的構成情報も持たないことになる。上述したように、ネットワークセキュリティモジュール３０４は、コンピュータ３０２に関する構成情報を持たないとき、またはネットワークセキュリティモジュール３０４の電源が入れられたとき、そのデフォルト状態すなわち完全ロックダウンに入る。しかし、上述したように、完全ロックダウンは依然として、コンピュータ３０２が既知の安全なロケーションと通信するのを許可することになる。例として、これらの既知の安全なロケーションには、オペレーティングシステム更新が置かれている１つまたは複数のロケーションが含まれる。このようにして、コンピュータ３０２が、最新のオペレーティングシステム、アンチウイルスソフトウェア、アプリケーション、デバイスドライバの利用可能な改訂および更新で構成されているときであっても、ユーザは、結果として構成情報がネットワークセキュリティモジュール３０４に送られることになる更新プロセスを実行することができる。あるいは、コンピュータシステムの現在構成についてネットワークセキュリティモジュール３０４に通知する特定のプログラムを提供することができる。
【００３８】
ネットワークセキュリティモジュール３０４とセキュリティサービス３０６との間の通信が真正であり、破損されていないことを確実にするために、本発明の一実施形態では、セキュリティ要求やセキュリティ情報など、ネットワークセキュリティモジュールとセキュリティサービスとの間の通信は、ＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ）プロトコルを使用した安全な通信など、暗号化された安全な通信で配布される。同様に、ネットワークセキュリティモジュール３０４とコンピュータ３０２との間の通信も同じく安全を確保される。
【００３９】
本発明のオプションの態様によれば、ネットワークセキュリティモジュール３０４は、コンピュータの電源が切られたときでも動作し続ける。すなわちコンピュータ３０２に対応するセキュリティ情報を入手し続ける。例えば、ネットワークセキュリティモジュール３０４は、コンピュータの電源がオンであったときにコンピュータに備わっていた最新のオペレーティングシステムおよび／またはアンチウイルスソフトウェア改訂データにすべて従って、コンピュータ３０２のセキュリティ情報を入手し続けることができる。一実施形態によれば、ネットワークセキュリティモジュール３０４はあるコンピュータの補助電源レールに接続されており、補助電源レールは、当業者に知られているように、コンピュータ３０２の電源が切られたときでも周辺のデバイスに電力を提供する。加えて、コンピュータ３０２が動作しているときだけネットワークセキュリティモジュール３０４が動作する場合、ネットワークセキュリティモジュールは、動作を再開したとき、コンピュータの現在構成に対応する最新のセキュリティ情報を得る間、完全ロックダウンを実施する。
【００４０】
本発明の別の実施形態によれば、ネットワークセキュリティモジュール３０４はオプションで、ユーザによってディセーブルすることができる。これは、ネットワークへの完全アクセスの必要性の方がコンピュータエクスプロイトからの攻撃の危険よりも勝ることが時としてあるため有用である。例えば、ネットワーキング問題／課題を診断しようと試みるとき、ネットワークセキュリティモジュール３０４をディセーブルする必要があることがある。あるいは、Ｅ９１１ボイスオーバーＩＰ（ＶｏＩＰ）サービスを使用するなど、いくつかの緊急事態では、ネットワークセキュリティモジュール３０４をディセーブルする必要があることがある。
【００４１】
本発明の一態様によれば、ネットワークセキュリティモジュール３０４は、ディセーブルされたとき、保護セキュリティ対策を実施しないがセキュリティサービス３０６からセキュリティ情報を入手し続ける。セキュリティ情報を絶えず更新することは、ユーザにとって有益である。特に、ネットワークセキュリティモジュール３０４が一時的にディセーブルされているだけの場合、再びイネーブルされたときに最新のセキュリティ情報を有することになるので有益である。あるいは、ネットワークセキュリティモジュール３０４がディセーブルされ、絶えず更新していない場合、セキュリティサービス３０６との通信を行わない所定の期間の経過後に、ネットワークセキュリティモジュールは、そのデフォルト状態、すなわちネットワークアクティビティの完全ロックダウンに戻ることができる。
【００４２】
セキュリティサービス３０６は、すべてのセキュリティ情報の単一のサーバ／ソースとして実現してもよく、あるいはまた、ネットワーク１１０全体に分散されたサーバ／ソースの階層として実現してもよい。階層システムでは、ネットワークセキュリティモジュール３０４は、セキュリティサービスにおいて常に存在することになるルートサーバ／サービスで最初に構成される。しかし、おそらくネットワークセキュリティモジュール３０４とセキュリティサービスとの間の最初の通信でセキュリティサービスによって返されるセキュリティ情報の一部として、セキュリティサービスはセキュリティサービスの階層に関する情報を提供する。この情報は、１つまたは複数の範囲のネットワークアドレスとして提供することができ、これらすべては、セキュリティサービス階層中のノードであり、ネットワークセキュリティモジュール３０４に適切なセキュリティ情報を提供することができるノードである。以後、ネットワークセキュリティモジュール３０４は、情報を得るために必ずしも元のノードに照会する必要はない。明らかに、セキュリティサービスを階層式に実施することの利点の１つは、情報を要求するネットワークセキュリティモジュールの数に対応するために、セキュリティサービスを容易に拡大または縮小することができ、セキュリティサービス階層中の元のノードはネットワーク中のすべてのネットワークセキュリティモジュールからのセキュリティ情報要求によって圧倒されないことになることである。ネットワーク１１０中に分散された階層構造の下では、階層中のあるノードが障害を起こしても、他が介入しセキュリティ情報を提供することができるように負荷バランスを生じさせることもでき、冗長性をシステムに組み込むことができる。
【００４３】
本発明の態様によれば、ネットワークセキュリティモジュール３０４は、当技術分野でポート模倣（ｐｏｒｔ  ｍｉｍｉｃｋｉｎｇ）と呼ばれる技法を用いて、コンピュータ３０２およびネットワーク１１０に対してトランスペアレントである。一般的に言えば、ポート模倣を用いると、ネットワークセキュリティモジュール３０４は、コンピュータ３０２にはネットワーク１１０として見え、ネットワーク上のデバイスにはコンピュータとして見える。このように、オペレーティングシステム更新やセキュリティ情報応答の通知など、通信がネットワークセキュリティモジュールに向けられているとネットワークセキュリティモジュールが判定しない限り、あるいはネットワークセキュリティモジュールが保護セキュリティ対策に従ってネットワークアクティビティをブロックしなければならないのでない限り、ネットワークアクティビティは、ネットワークセキュリティモジュール３０４を介してコンピュータ３０２とネットワーク１１０との間を自由に流れる。
【００４４】
上述したように、ネットワークセキュリティモジュール３０４は、照会の結果としてセキュリティサービス３０６からセキュリティ情報を得る。当業者はこれをポールシステム、すなわちセキュリティ情報についてセキュリティサービス３０６をポーリングすることとして認識するであろう。しかし、代替の一実施形態では、セキュリティサービス３０６は、ネットワーク１１０中のネットワークセキュリティモジュールに重要なセキュリティ情報を有利にブロードキャストする。例えば、ネットワーク化環境３００中のネットワークセキュリティモジュールがセキュリティサービス３０６からセキュリティ情報を得る定期的な間隔に応じて、セキュリティサービスは、特に悪性のコンピュータエクスプロイトがネットワーク１１０に出回り始めた場合に、ネットワークセキュリティモジュールが重要なセキュリティ情報を要求するのを待つのではなく、セキュリティ情報をネットワークセキュリティモジュールにブロードキャストする。このセキュリティ情報を以下ではセキュリティブリティン（ｓｅｃｕｒｉｔｙ  ｂｕｌｌｅｔｉｎ）と呼ぶが、これは通常、そのコンピュータエクスプロイトの影響を被りやすいすべての構成、および講じるべき保護セキュリティ対策を含み、さらに、対応するセキュリティレベルも示す。本発明の一実施形態によれば、セキュリティブリティンは、所定のスキーマに従って編成されたＸＭＬドキュメントである。
【００４５】
情報をリスナにブロードキャストするシステムは、プッシュシステムと呼ばれる。すなわち、セキュリティサービス３０６は、重要なセキュリティ情報をネットワークセキュリティモジュールにプッシュする。本発明の態様によれば、セキュリティブリティンは、「保証された配布（ｇｕａｒａｎｔｅｅｄ  ｄｅｌｉｖｅｒｙ）」サービスを用いてネットワーク１１０にブロードキャストされる。保証された配布サービスでは、セキュリティブリティンは優先順位の高いアイテムとして識別され、ネットワークサービスプロバイダの同意の上で、通常なら先に配布されるであろう他のネットワークトラフィックの配布よりも前に配布される。
【００４６】
コンピュータ３０２が通信するのと同じネットワーク１１０を介してセキュリティブリティンを配布することに加えて、「帯域外で」すなわちネットワーク１１０とは別個の第２の通信リンクを介して通信するのが有利であろうときも多くある。図３Ｂは、本発明の態様を実施するための代替的に構成されたネットワーク化環境３１０を示す絵図であり、ネットワーク１１０に接続されたネットワークセキュリティモジュールにセキュリティ情報を配布するための第２の通信リンク３１４を含んでいる。
【００４７】
図３Ｂに示すように、代替構成のネットワーク化環境３１０は、コンピュータ３０２、セキュリティサービス３０６、およびネットワークセキュリティモジュール３０４を含め、ネットワーク化環境３００に関して上述したのと同様のコンポーネントを含む。しかし、セキュリティサービス３０６は追加的に、第２の通信リンク３１４を介して受信デバイス３１２によって情報を受け取るように特に適応されたネットワークセキュリティモジュール３０４に、セキュリティ情報および／またはセキュリティブリティンを含むセキュリティ情報を伝送するように構成されている。本発明の態様によれば、第２の通信リンク３１４は、衛星通信リンク、無線周波数ブロードキャスト、または、セキュリティサービス３０６とネットワークセキュリティモジュール３０４との間の他の何らかの形態の２次的な通信とすることができる。当業者は、任意の数の通信チャネルを使用することができることを理解するであろう。
【００４８】
本発明の代替の態様によれば、第２の通信リンク３１４は、セキュリティサービス３０６およびネットワークセキュリティモジュール３０４からの一方向通信リンクでもよく、あるいはセキュリティサービスとセキュリティモジュールとの間の通信のための双方向通信リンクでもよい。加えて、ソフトウェア更新またはパッチも、上述したように第２の通信リンク３１４を介したセキュリティサービス３０６からのダウンロードに利用可能とすることができる。
【００４９】
ネットワークセキュリティモジュール３０４はコンピュータ３０２とインターネット１１０との間に配置されるが、ネットワークセキュリティモジュールの実際の実施形態は様々であることがある。それぞれの場合に、ネットワークセキュリティモジュール３０４はコンピュータ３０２によって、信用できるコンポーネントとして扱われる。一実施形態によれば、ネットワークセキュリティモジュール３０４は、コンピュータ３０２に外付けの「ドングル（ｄｏｎｇｌｅ）」と呼ばれることもある、ネットワーク１１０およびコンピュータへの接続を備えるハードウェアデバイスとして実現される。あるいは、ネットワークセキュリティモジュール３０４は、コンピュータ３０２内に統合されたハードウェアコンポーネントとして実現することもでき、またはコンピュータのネットワークインタフェース内の統合されたサブコンポーネントとして実現することもできる。ネットワークセキュリティモジュール３０４をコンピュータ３０２内に統合するか、またはコンピュータのネットワークインタフェース上のサブコンポーネントとして統合することは、コンピュータ３０２が無線接続を介してネットワーク１１０に接続されるときに、特に有用な場合がある。
【００５０】
別の代替の実施形態によれば、ネットワークセキュリティモジュールは、マイクロコーディングやファームウェアなどのロジックとして、限定しないがプロセッサ、グラフィックス処理ユニット、ノースブリッジ、サウスブリッジを含むコンピュータ３０２のコンポーネント内で実現することができる。別の代替の実施形態では、ネットワークセキュリティモジュール３０４は、オペレーティングシステムと共にまたはその一部として動作するソフトウェアモジュール、またはコンピュータ３０２にインストールされた別個のアプリケーションとして実現することができる。ソフトウェアで実装されたネットワークセキュリティモジュール３０４は、コンピュータ３０２中の第２のプロセッサ上で動作することができる。第２のプロセッサは、コンピュータの主プロセッサと非対称に他のコンピュータシステムタスクを実施しても、しなくてもよい。したがって、ネットワークセキュリティモジュール３０４は、いずれか特定の実施形態に限定されるものと解釈すべきではない。
【００５１】
本発明によって実現される利益の１つは、このシステムが多くのエクスプロイトの影響を軽減することであるということが指摘されるべきである。例えば、サービス妨害（ＤＯＳ）攻撃は、コンピュータがそのリソースを使い果たし、クラッシュするか、あるいはまた外部からの攻撃／エクスプロイトに対してより脆弱である曖昧な状態に誤って入るまでコンピュータをネットワーク要求で圧倒する試みであることを、当業者なら理解するであろう。しかし、保護セキュリティ対策を実施することによってネットワークセキュリティモジュール３０４がセキュリティサービス３０６に応答する状態では、可能性としてネットワーク要求が殺到することも含めてこのようなエクスプロイトがコンピュータ３０２に到達することはない。
【００５２】
上述のコンポーネントがどのように動作してコンピュータ３０２に向上したセキュリティを提供するかをより完全に理解するために、対応するイベントと共にタイムライン上に示した例示的なシナリオを参照する。図４Ａおよび４Ｂは、本発明のコンポーネントの動作を例証するための例示的なタイムラインを示すブロック図である。より具体的には、図４Ａは、ネットワーク１１０上での新しいコンピュータエクスプロイトのリリースに関して、本発明がどのようにコンピュータ３０２の脆弱性ウィンドウ４０６を最小化するかを例証するための例示的なタイムライン４００を示すブロック図である。以下はオペレーティングシステムを攻撃するコンピュータエクスプロイトとして提示するが、これは例示のためであり、本発明に関する限定と解釈すべきではないことに留意されたい。本発明を利用して、コンピュータシステム上のコードモジュール、サービス、さらにはハードウェアデバイスをも保護することができる。
【００５３】
タイムライン４００上に示すように、イベント４０２で、悪意ある者が新しいコンピュータエクスプロイトをネットワーク１１０上にリリースする。新しいコンピュータエクスプロイトのリリースは、コンピュータ３０２など、新しいコンピュータエクスプロイトによってターゲットとされるネットワーク１１０に接続されたコンピュータの脆弱性ウィンドウ４０６を開始する。イベント４０４で、上述したようにオペレーティングシステムプロバイダ、アンチウイルスプロバイダ、またはその他によって、新しいコンピュータエクスプロイトの存在が検出される。
【００５４】
新しいコンピュータエクスプロイトの存在を検出すると、エクスプロイトの性質または攻撃のモードが確認される前であっても、イベント４０８で、オペレーティングシステムプロバイダは、セキュリティサービス３０６を介してセキュリティ情報を発行する。通常、コンピュータエクスプロイトが発見され、その性質、程度、または攻撃のモードがよくわかっていないときは、セキュリティサービスは、明らかに影響を受けるすべてのコンピュータシステムに対するセキュリティレベルを赤すなわち完全ロックダウンに設定することになる。ブロック４１０で、ネットワークセキュリティモジュール３０４は、その定期的な要求においてまたはセキュリティブリティンとしてセキュリティ情報を得て、対応するセキュリティ対策、この場合は完全ロックダウンを実施する。利点として、セキュリティサービス３０６からのセキュリティ対策を実施すると、ターゲットコンピュータの脆弱性ウィンドウ４０６は閉じる。
【００５５】
図２Ｂの脆弱性ウィンドウ２３０とは対照的に、脆弱性ウィンドウ４０６は相対的に小さく、それにより、ターゲットコンピュータシステムの新しいコンピュータエクスプロイトにさらされるのが最小限に抑えられる。明らかに、脆弱性ウィンドウ４０６などの脆弱性ウィンドウが開いている実際の時間の長さは、少数の要因に依存する。要因の１つは、コンピュータエクスプロイトが検出されるまでに経過する時間である。上で論じたように、新しいコンピュータエクスプロイトは通常、リリース後１５分から数時間以内に検出される。第１の要因よりもずっと変動しやすい第２の要因は、ネットワークセキュリティモジュール３０４がセキュリティサービス３０６からセキュリティ情報を得るのにかかる時間である。ネットワークセキュリティモジュール３０４が絶えずセキュリティ情報を得ることができる想定すると、セキュリティ情報を得て対応するセキュリティ対策を実施するのにかかる時間はほんの数秒であろう。しかし、ネットワークセキュリティモジュール３０４が絶えずセキュリティサービス３０６と通信することができない場合、またはセキュリティ情報を得るための定期的な時間フレームが長い場合、保護セキュリティ対策を実施するのに非常に長時間かかることがある。本発明の態様によれば、ネットワークセキュリティモジュール３０４が所定時間にわたってセキュリティサービス３０６と連絡がとれない場合、ネットワークセキュリティモジュールは、デフォルトの完全ロックダウンステータスになり、セキュリティサービスからのさらなる通信をペンディングにする。
【００５６】
初期のセキュリティ情報が発行された後、オペレーティングシステムプロバイダまたはアンチウイルスソフトウェアプロバイダは通常、コンピュータエクスプロイトがどのように動作するか、および／またはどの具体的なコンピュータシステム機能を攻撃するかについてよりよく理解するために、コンピュータエクスプロイトの分析を続ける。この分析から、脆弱なコンピュータシステムがコンピュータエクスプロイトによる感染を防ぐために講じなければならない第２の、おそらくより制限の少ない保護対策のセットを特定する。したがって、イベント４１２で、更新セキュリティ情報が黄のセキュリティレベルと共に発行され、危険な状態にあるネットワークアクティビティをブロックするための保護対策、すなわち部分的ロックダウンを特定する。例えば、上述したように、保護セキュリティ対策は、ソースポートおよび／または宛先ポートを含む特定範囲の通信ポートとの間のアクセスを単にブロックするか、あるいは、ｅメール通信、ウェブアクセス、または保護されたコンピュータシステム上にインストールされたオペレーティングシステム、アプリケーション、デバイスドライバなどに向けられたその他のネットワークアクティビティを、他のネットワークアクティビティは自由に流れるように許可しつつ、ディセーブルすることを含むことができる。「危険な状態にある」ネットワークアクティビティには、エクスプロイトがコンピュータシステムの欠陥を攻撃するかどうか、または単に正当なコンピュータシステム機能を悪用するかどうかにかかわらず、エクスプロイトによるコンピューティングシステムへの脅威を表すネットワークアクティビティが含まれることを理解されたい。加えて、「危険な状態にある」ネットワークアクティビティには、別のデバイスによって一方的に開始された、コンピュータシステムに向けられたネットワークアクティビティも含まれる。言い換えれば、「危険な状態にある」ネットワークアクティビティには、ネットワークに接続する以上に何もしていないコンピュータシステムに向けられたエクスプロイトのネットワークアクティビティが含まれる。
【００５７】
イベント４１４で、更新セキュリティ情報はネットワークセキュリティモジュール３０４によって入手され、対応する保護セキュリティ対策が実施される。イベント４１６で、オペレーティングシステムプロバイダおよび／またはアンチウイルスプロバイダは、ソフトウェア更新を生成し、利用可能にした後、追加の更新セキュリティ情報が発行される。この追加の更新セキュリティ情報は、オペレーティングシステムプロバイダ、アンチウイルスソフトウェアプロバイダ、またはアプリケーションプロバイダからの更新など、ソフトウェア更新がコンピュータ３０２上にインストールされれば、セキュリティレベルが緑になることを確認することができる。その後、イベント４１８で、追加の更新セキュリティ情報が得られ、ソフトウェア更新がコンピュータ３０２上にインストールされ、ネットワークセキュリティモジュール３０４が自由な、すなわち無制限のネットワークアクセスを可能にする。
【００５８】
図４Ｂは、コンピュータエクスプロイト、より具体的には、まったく新しい攻撃ではなく以前に確認された脆弱性を利用するエクスプロイトのネットワーク１１０上のリリースに関して存在する可能性のある脆弱性ウィンドウを、本発明がどのようにして除去するかを例証するための代替の例示的なタイムライン４２０を示すブロック図である。前述したように、既に既知の脆弱性の使用の方が、まったく新しい攻撃よりもずっと一般的である。イベント４２２で、オペレーティングシステムプロバイダは、オペレーティングシステムの現リリースに脆弱性があることを確認する。確認された脆弱性によってさらされる脅威に応答して、イベント４２４で、オペレーティングシステムプロバイダは、セキュリティレベルを設定し、対応する保護セキュリティ対策を特定する軽減セキュリティ情報を発行する。図４Ｂに示すこの例では、脆弱性によりネットワーク１１０に接続されたコンピュータがかなりの危険にさらされると想定すると、オペレーティングシステムプロバイダは、完全ロックダウンを実施するセキュリティ対策と共に、セキュリティレベルを赤に設定するセキュリティ情報を発行する。イベント４２６で、ネットワークセキュリティモジュール３０４は、最新のセキュリティ情報を得て、完全ロックダウンを実施する。確認された脆弱性からコンピュータ３０２を保護するセキュリティ対策は、パッチまたは「フィックス」が利用可能になる前に実施されることに留意されたい。大多数のコンピュータエクスプロイトは、パッチが訂正する脆弱性を分析することによって得られる情報からどうにか導き出されるので、悪意ある者が脆弱性を攻撃するエクスプロイトを作成する機会は事前に断たれる。このようにして、脆弱性ウィンドウは開かない。明らかに、この結果はコンピュータユーザにとってかなりの利益であり、特に、ネットワークセキュリティモジュールがセキュリティ対策を実施していないときの図２Ａに示した対応するタイムライン２００とは対照的である。
【００５９】
しばしば、コンピュータエクスプロイトをさらに分析した後、オペレーティングシステムプロバイダは、ネットワークに接続されたコンピュータをコンピュータエクスプロイトから保護することになるより制限の少ない保護対策のセットを判定することがある。このように、図４Ｂに示すように、イベント４２８で、セキュリティレベルを黄に設定し、その他のすべてのネットワークアクティビティを可能にしつつ、利用される脆弱性に特にアドレスする対応する保護セキュリティ対策、すなわち部分的ロックダウンを含む更新セキュリティブリティンが発行される。これに対応して、イベント４３０で、更新セキュリティ情報が得られ、ネットワークセキュリティモジュール３０４が部分的ロックダウンを実施する。
【００６０】
（コンピュータ３０２にインストールされれば、脆弱性をターゲットとするコンピュータエクスプロイトからコンピュータを保護するであろう）オペレーティングシステムパッチまたはアンチウイルス更新が利用可能になると、イベント４３２で、オペレーティングシステムプロバイダは、情報を発行し、インストールされるとネットワークセキュリティモジュールが自由なネットワークアクセスを許可できること、すなわちパッチがインストールされるとセキュリティレベルを緑に設定できることを示す。これにより、イベント４３４で、パッチまたはアンチウイルス更新がコンピュータ３０２上にインストールされた後、ネットワークセキュリティモジュール３０４が自由なアクセスを可能にする。
【００６１】
図５は、発行されたセキュリティ情報に従ってコンピュータのネットワークアクセスを動的に制御するための例示的なルーチン５００を示す流れ図である。図５は、ネットワークセキュリティモジュール３０４の起動に対応する開始端５０２と、コンピュータシステム３０２からの更新通知を受け取ることに対応する開始端５２０の２つの開始端を含む。まず最初に開始端５０２で始めてブロック５０４に進み、ネットワークセキュリティモジュール３０４は、完全ロックダウンに関連するセキュリティ対策を実施する。上述したように、完全ロックダウンのとき、コンピュータは、最新のセキュリティステータス情報および利用可能な更新を得るために、セキュリティサービス３０６を含む、既知の信用できるネットワークロケーションにアクセスすることに制限される。
【００６２】
ブロック５０６で、ネットワークセキュリティモジュール３０４は、コンピュータの現在の構成に対応する最新のセキュリティ情報をセキュリティサービス３０６から得る。本発明の態様によれば、ネットワークセキュリティモジュール３０４は、最新のセキュリティ情報についての要求をセキュリティサービスに発行することによって、この情報をセキュリティサービスから得ることができる。あるいは、ネットワークセキュリティモジュール３０４は、セキュリティサービス３０６から第２の通信リンクを介したブロードキャストとして、またはネットワークを介したブロードキャストとして最新のセキュリティ情報を得ることができる。
【００６３】
判定ブロック５０８で、セキュリティサービス３０６から得た最新のセキュリティ情報に基づいて、ネットワークセキュリティモジュール３０４は、現在実施されているセキュリティ対策および対応するセキュリティレベルが、得られたセキュリティ情報に対して最新かどうかを判定する。本発明の一態様によれば、この判定は、ネットワークセキュリティモジュールが現在格納しているコンピュータシステムの改訂情報と、セキュリティサービスが最新の改訂として発行しているものとの単純な比較として行われる。
【００６４】
現在実施されているセキュリティ対策が最新でない場合は、ブロック５１０で、ネットワークセキュリティモジュール３０４は、コンピュータシステムに関して格納している情報に従って、コンピュータシステムのセキュリティ対策を得る。あるいは（図示せず）、セキュリティ対策は、得られたセキュリティ情報に含まれていてもよい。ネットワークセキュリティモジュール３０４がセキュリティ対策を有すれば、ブロック５１２で、ネットワークセキュリティモジュールはセキュリティ対策を実施し、対応するセキュリティレベル、例えば赤、黄、または緑を設定する。
【００６５】
コンピュータシステムのためのセキュリティ対策を実施した後、あるいは現在実施されているセキュリティ対策がコンピュータシステムにとって最新である場合、ブロック５１４で、ネットワークセキュリティモジュール３０４は遅延状態に入る。この遅延状態は、ネットワークセキュリティモジュール３０４が最新のセキュリティ情報を得るためにセキュリティサービス３０６に定期的に照会する時間に対応する。所定の時間にわたって遅延した後、プロセスはブロック５０６に戻り、セキュリティサービス３０６から最新のセキュリティ情報を得て、現在実施されているセキュリティ対策がコンピュータシステムにとって最新かどうかを判定し、新しいセキュリティ対策があれば実施するというプロセスが繰り返される。
【００６６】
図５に示すように、例示的なルーチン５００は、コンピュータ３０２をコンピュータエクスプロイトから保護するために継続的に動作するように設計されているので、終了端がない。しかしルーチン５００は、上述したように、ネットワークセキュリティモジュール３０４の電源が切られたり、例示的なネットワーク化環境３００から切断されたり、またはユーザによって明示的にディセーブルされたりした場合に終了することを、当業者は理解するであろう。
【００６７】
代替の開始端５２０を参照すると、このエントリポイントは、ネットワークセキュリティモジュール３０４がコンピュータシステムから更新通知を受け取るときの状況を表している。先に論じたように、本発明を利用するように適応されたアプリケーションは、コンピュータシステムを更新するステップの１つとして、現在の最新改訂情報についてネットワークセキュリティモジュールに通知する。例えば、アンチウイルスソフトウェアを更新する間、このプロセスのステップの１つは、ネットワークセキュリティモジュール３０４に向けられた通知を発行し、現在の最新改訂をネットワークセキュリティモジュールに忠告することである。このように、ブロック５２２で、ネットワークセキュリティモジュールは更新通知を受け取る。
【００６８】
ブロック５２４で、更新通知情報は、現在実施されているセキュリティ対策が最新かどうかを判定するにあたって後で使用するために、ネットワークセキュリティモジュールによって格納される。オペレーティングシステム更新ならびにその他のコードモジュール更新は、ネットワークセキュリティモジュール３０４に通知を提供するように適応させることもでき、それによりセキュリティシステムは、任意の与えられたコンピュータシステムを保護するのに必要な適切なセキュリティ対策についてより多くの情報に基づいて決定を行うことができる。
【００６９】
情報を格納した後、ルーチン５００はブロック５０６に進み、上述したように、セキュリティサービス３０６から最新のセキュリティ情報を得るステップと、現在実施されているセキュリティ対策がコンピュータシステムにとって最新かどうかを判定するステップと、新しいセキュリティ対策があれば実施するステップとを開始する。代替（図示せず）として、更新コンピュータシステム情報をブロック５２４で受け取った後、ネットワークセキュリティモジュールは、現在の遅延状態が終了するまで、セキュリティステータス情報を得るのを待つことができる。
【００７０】
図６は、ネットワークセキュリティモジュール３０４など、例示的なネットワーク化環境３００中のネットワークセキュリティモジュールのセキュリティ情報をブロードキャストするための例示的なルーチン６００を示す流れ図である。ブロック６０２で開始し、セキュリティサービス３０６は、様々なソースからセキュリティ関連情報を得る。例えば、セキュリティサービス３０６は通常、オペレーティングシステムプロバイダやアンチウイルスソフトウェアプロバイダから、利用可能な最新の改訂、パッチ、更新、ならびに様々なパッチおよび更新によって対処されるコンピュータエクスプロイトおよび／または脆弱性に関する情報を得る。セキュリティ関連情報について様々な政府機関やセキュリティ専門家などを含むその他のソースをポーリングすることもできる。
【００７１】
ブロック６０４で、セキュリティサービス３０６は、ネットワーク１１０に接続されたコンピュータシステムの脆弱性に関する情報を得る。この情報は、脆弱性が検出されたときに、オペレーティングシステムプロバイダ、アンチウイルスソフトウェアプロバイダ、またはその他の当事者に由来することがある。ブロック６０６で、セキュリティサービス３０６は、脆弱性によってさらされる脅威に基づいて、セキュリティレベル（例えば赤、黄、または緑）、ならびに影響を受けるコンピュータをコンピュータエクスプロイトによる脆弱性に関する攻撃から守るためにネットワークセキュリティモジュール３０４などのネットワークセキュリティモジュールによって実施されるべき保護セキュリティ対策を判定する。
【００７２】
ブロック６０８で、セキュリティサービス３０６は、上述したように、セキュリティレベルおよび対応する保護セキュリティ対策を備えるセキュリティブリティンを、ネットワーク１１０に接続されたネットワークセキュリティモジュールにブロードキャストする。上で論じたように、セキュリティサービス３０６は、ネットワークワイドのブロードキャストをすべてのネットワークセキュリティモジュールに発行することによって、セキュリティブリティンをブロードキャストすることができる。このネットワークワイドのブロードキャストは、ネットワーク１１０を介してオプションで上述した保証された配布オプションを用いて行ってもよく、あるいはネットワーク化環境３００中のネットワークセキュリティデバイスへ第２の通信リンク３１４を介して行ってもよい。セキュリティブリティンをブロードキャストした後、ルーチン６００は終了する。
【００７３】
図７は、ネットワークセキュリティモジュール３０４からセキュリティ情報要求を受け取り応答するために、セキュリティサービス３０６によって実施される例示的なルーチン７００を示す流れ図である。ブロック７０２で開始し、セキュリティサービス３０６は、ネットワークセキュリティデバイス３０４からセキュリティ情報要求を受け取る。すでに述べたように、セキュリティ情報要求は、コンピュータの現在の構成に対応する情報を含むことができる。
【００７４】
ブロック７０４で、ネットワークセキュリティモジュールによって提供されたセキュリティ情報要求中の特定のコンピュータの構成情報に従って、セキュリティサービス３０６がセキュリティ情報要求中のコンピュータの現在の構成情報に対応する適切なセキュリティ情報を識別する。
【００７５】
一実施形態によれば、セキュリティサービス３０６は、コンピュータ３０２を保護するのに必要な保護セキュリティ対策をコンピュータの構成情報に従って判定することによって、適切なセキュリティ情報を識別する。代替の一実施形態によれば、どの保護セキュリティ対策を実施すべきかを判定するネットワークセキュリティモジュールによるさらなる処理のために、セキュリティサービス３０６は、特定のコンピュータの構成に対応するすべてのセキュリティ情報を返すことによって適切なセキュリティ情報を識別する。別の代替方法としては、セキュリティサービス３０６は、特定のコンピュータの構成に対応するすべてのセキュリティ情報を返すことによって適切なセキュリティ情報を識別し、次いでセキュリティ情報は、コンピュータがどの保護セキュリティ対策を実施すべきかをネットワークセキュリティモジュールに通知できるようにネットワークセキュリティデバイスからコンピュータ３０２に転送される。上述した代替方法、ならびにその他のシステムの組合せを利用することもできる。したがって本発明は、いずれか１つの特定の実施形態に限定されるものと解釈すべきではない。
【００７６】
ブロック７０６で、セキュリティサービス３０６は、適切なセキュリティ情報を要求元ネットワークセキュリティモジュール３０４に返す。その後、ルーチン７００は終了する。
【００７７】
図８は、セキュリティサービス３０６から得られたセキュリティ対策に従ってコンピュータ３０２とネットワークとの間のネットワークトラフィックの流れを制御するための、ネットワークセキュリティモジュール３０４によって実施される例示的な方法８００を示す流れ図である。ブロック８０２で開始し、ネットワークセキュリティモジュール３０４は、コンピュータ３０２にやってくるネットワークトラフィックとコンピュータで発生したネットワークトラフィックの両方を含む、ネットワークトラフィックを受け取る。
【００７８】
決定ブロック８０４で、ネットワークトラフィックが、セキュリティサービス、アンチウイルスソフトウェアプロバイダ、オペレーティングシステムプロバイダなど、信用できるネットワークサイトとの間のものどうかについて判定が行われる。ネットワークトラフィックが信用できるネットワークサイトとの間のものである場合は、ルーチンがブロック８１０に進み、ネットワークトラフィックはネットワークセキュリティモジュール３０４を通して流れるのを許可され、その後ルーチン８００は終了する。しかし、ネットワークトラフィックが信用できるネットワークサイトとの間のものでない場合は、ルーチンは決定ブロック８０６に進む。
【００７９】
決定ブロック８０６で、ネットワークトラフィックが現在実施されているセキュリティ対策に従って制限されるかどうかについて別の判定が行われる。ネットワークトラフィックが現在実施されているセキュリティ対策に従って制限されない場合は、ルーチンはブロック８１０に進み、ネットワークトラフィックはネットワークセキュリティモジュール３０４を通して流れるのを許可され、その後ルーチン８００は終了する。しかし、ネットワークトラフィックが現在実施されているセキュリティ対策に従って制限される場合は、ルーチンはブロック８０８に進み、ネットワークトラフィックはネットワークセキュリティモジュール３０４を通して流れるのを許可されない。その後、ルーチン８００は終了する。
【００８０】
ネットワークセキュリティモジュール３０４はコンピュータ３０２とインターネット１１０との間に配置されるが、ネットワークセキュリティモジュールの実際の実施形態は様々であることがある。一実施形態によれば、ネットワークセキュリティモジュール３０４は、コンピュータ３０２に物理的に外付けである、インターネット１１０およびコンピュータ３０２への接続を備えたハードウェアデバイスとして実現することができる。図９は、コンピュータ３０２に外付けのハードウェアデバイスとして実現された例示的なネットワークセキュリティモジュール３０４を示す絵図である。
【００８１】
図９に示すように、外部デバイスとして、ネットワークセキュリティモジュール３０４は、ネットワーク１１０への接続９０２と、コンピュータ３０２への対応する接続９０４とを含む。コンピュータ３０２とネットワーク１１０との間のすべてのネットワークアクティビティは、コンピュータへの接続９０４上で搬送される。図示したネットワークセキュリティモジュール３０４はまた、コンピュータ３０２とネットワークセキュリティモジュールとの間で情報を通信するための、この２つの間の２次コンピュータ接続９１８も含む。図示したネットワークセキュリティモジュール３０４は、イネーブル／ディセーブルスイッチ９０６と、ステータスインジケータ９１０〜９１６と、外部電源へのオプション接続９０８とをさらに含む。
【００８２】
前述したように、ネットワークセキュリティモジュール３０４がその現在のセキュリティ対策を施行できないようにディスエーブルできることが望ましい場合がある。図示した図９の実施形態によれば、イネーブル／ディセーブルスイッチ９０６は、現在のセキュリティ対策をバイパスするのが望ましいときにネットワークセキュリティモジュール３０４をディセーブルし、また、セキュリティサービス３０６から得た現在のセキュリティ対策を施行するようネットワークセキュリティモジュール３０４をイネーブルするトグルスイッチである。
【００８３】
ステータスインジケータ９１０〜９１６は、ネットワークセキュリティモジュールの現在ステータスの視覚的指示を提供するために含められる。ステータスインジケータは、先に論じたように、情報のためのものにすぎない。これらは、ネットワークセキュリティモジュール３０４によって実施される保護セキュリティ対策についてオプションの視覚的な手がかりをコンピュータユーザに提供する。各インジケータは、特定のセキュリティステータスに対応する。例えば、ステータスインジケータ９１０は、ネットワークアクティビティのトータルロックダウンを意味する赤のセキュリティレベルに対応することができ、ネットワークセキュリティモジュール３０４がトータルロックダウンを実施しているときに赤く点灯する。ステータスインジケータ９１２は、黄のセキュリティレベル、すなわちネットワークアクティビティの部分的ロックダウンに対応することができ、ネットワークセキュリティモジュール３０４が部分的ロックダウンを実施しているときに黄色に点灯することができる。同様に、ステータスインジケータ９１４は緑のセキュリティレベル、すなわちフリーネットワークアクセスに対応することができ、ネットワークセキュリティモジュール３０４が制限されないネットワークアクセスを許可しているときに緑色に点灯する。ステータスインジケータ９１６は、ネットワークセキュリティモジュールがディセーブルされているとき、このステータスインジケータは、おそらく点滅する赤い光として点灯するようにネットワークセキュリティモジュール３０４のイネーブル／ディセーブルステータスに対応することができる。
【００８４】
本発明は図９に示すように実施することができるが、これは単なる例示と見なすべきである。本発明の範囲を逸脱することなく、図９に示す物理的な実施形態に数多くの修正および変更を加えることができる。したがって本発明は、いずれか特定の物理的実施形態に限定されるものと解釈すべきではない。
【００８５】
物理的実施形態（図示せず）の代替として、ネットワークセキュリティモジュール３０４は、コンピュータ３０２内のコンポーネントとして、またはコンピュータのネットワークインタフェース内のサブコンポーネントとして統合されたコンポーネントとすることができる。これら２つの実施形態は、コンピュータがワイヤレス接続を介してインターネット１１０に接続されているときに特に有用である場合がある。別の代替形態として、ネットワークセキュリティモジュール３０４は、オペレーティングシステム内に統合されたソフトウェアモジュールとして、またはコンピュータ３０２にインストールされた別個のモジュールとして実現することができる。したがって、ネットワークセキュリティモジュール３０４は、物理的であれ論理的であれ任意の特定の実施形態に限定されるものと解釈すべきではない。
【００８６】
図１０は、本発明により形成されたネットワークセキュリティモジュール３０４の例示的な論理コンポーネントを示すブロック図である。ネットワークセキュリティモジュール３０４は、メモリ１００２、セキュリティステータスインジケータモジュール１００４、比較モジュール１００６、セキュリティ施行モジュール１００８、更新要求モジュール１０１０、ネットワーク接続１０１２、コンピュータ接続１０１４、２次コンピュータ接続１０１８、コーダ／デコーダモジュール１０２０を含む。
【００８７】
メモリ１００２は、揮発性および不揮発性メモリ領域を含み、ネットワークセキュリティモジュール３０４によって実施される現在のセキュリティ対策を格納する。メモリ１００２はまた、オペレーティングシステム、アンチウイルスソフトウェアおよびシグニチャ、アプリケーションなどの現在の改訂情報を含む、ネットワークセキュリティモジュール３０４に提供された構成情報も格納する。メモリ１００２には、信用できるロケーションのアドレスや更新ソースなどを含むその他の情報が格納されることもある。信用できるロケーションのアドレスなどの情報は、おそらく不揮発性メモリに格納される。
【００８８】
セキュリティステータスインジケータモジュール１００４は、ネットワークセキュリティモジュール３０４の現在のセキュリティステータスをコンピュータユーザに表すためのものである。例えば、ネットワークセキュリティモジュール３０４が図９に示したような物理デバイスとして実現されているとき、セキュリティステータスインジケータモジュール１００４は、ネットワークセキュリティモジュールの現在のセキュリティステータスに従ってステータスインジケータ９１０〜９１６を制御する。
【００８９】
比較モジュール１００６は、メモリ１００２に格納されたセキュリティ情報と、セキュリティサービス３０６から得られたセキュリティ情報との比較を行って、メモリ１００２に格納されたセキュリティ情報がコンピュータの現在の構成にとって最新かどうかを判定する。セキュリティ施行モジュール１００８は、コンピュータ３０２をセキュリティ脅威から保護するのに必要なセキュリティ対策を実施するコンポーネントである。このようにして、セキュリティ施行モジュール１００８は、メモリ１００２に格納されたセキュリティ対策に従って、コンピュータ３０２とネットワーク１１０との間のネットワークアクティビティの流れを制御する。
【００９０】
更新要求モジュール１０１０は、最新のセキュリティ情報をセキュリティサービス３０６から定期的に要求するポールシステムで使用される。プッシュシステムでは、更新要求モジュール１０１０は、セキュリティサービスからのセキュリティ情報のレシーバとして働くことができ、比較モジュール１００６と協働して、セキュリティサービス３０６から受け取った情報に従ってコンピュータ３０２を十分に保護するための保護セキュリティ対策を識別することができる。あるいは、更新要求モジュールは、コンピュータ３０２と通信して、セキュリティサービス３０６から受け取った情報に従ってコンピュータ３０２を十分に保護するための保護セキュリティ対策を判定／識別することができる。ネットワークセキュリティモジュール３０４のコンポーネントすべては、共通のシステムバス１０１６を介して相互接続される。
【００９１】
コーダ／デコーダモジュール１０２０は、ネットワークセキュリティモジュール３０４とセキュリティサービス３０６との間の安全な通信、ならびにコンピュータ３０２とネットワークセキュリティモジュールとの間の安全な通信を符号化および復号化するのに使用される。一実施形態によれば、コンピュータ３０２とネットワークセキュリティモジュール３０４との間の安全な通信は、２次コンピュータ接続１０１８を介して配送される。
【００９２】
ネットワークセキュリティモジュール３０４の個々のコンポーネントについて述べたが、これらは論理コンポーネントであり、実際の実施形態ではこれらを共に組み合わせるか、または述べていない他のコンポーネントと組み合わせてもよいことを理解されたい。したがって、上述したコンポーネントは例示と見なすべきであり、本発明に関して限定と解釈すべきではない。
【００９３】
好ましい実施形態を含め、本発明の数多くの実施形態を図示および記述したが、本発明の趣旨および範囲を逸脱することなくこれらに様々な変更を加えることができることが理解されるであろう。
【図面の簡単な説明】
【００９４】
【図１】コンピュータエクスプロイトが通例ばら撒かれる従来技術でみられる例示的なネットワーク環境を示す絵図である。
【図２Ａ】ネットワーク上にリリースされたコンピュータエクスプロイトに関してコンピュータシステムの脆弱性ウィンドウを例証する例示的なタイムラインを示すブロック図である。
【図２Ｂ】ネットワーク上にリリースされたコンピュータエクスプロイトに関してコンピュータシステムの脆弱性ウィンドウを例証する例示的なタイムラインを示すブロック図である。
【図３Ａ】本発明の態様を実施するのに適した例示的なネットワーク化環境を示す絵図である。
【図３Ｂ】本発明の態様を実施するのに適した例示的なネットワーク化環境を示す絵図である。
【図４Ａ】本発明によりコンピュータエクスプロイトに関連付けられた脆弱性ウィンドウがどのように最小化されるかを例証するための例示的なタイムラインの絵図である。
【図４Ｂ】本発明によりコンピュータエクスプロイトに関連付けられた脆弱性ウィンドウがどのように最小化されるかを例証するための例示的なタイムラインの絵図である。
【図５】本発明によって、発行されたセキュリティ情報に従ってコンピュータシステムのネットワークアクセスを動的に制御するための例示的なルーチンの流れ図である。
【図６】本発明によって、例示的なネットワーク化環境中のネットワークセキュリティモジュールのセキュリティ情報を発行するためのセキュリティサービスによって実施される例示的なルーチンを示す流れ図である。
【図７】ネットワークセキュリティモジュールからセキュリティ情報の要求を受け取り応答するセキュリティサービスによって実施される例示的なルーチンを示す流れ図である。
【図８】セキュリティサービスから得られたセキュリティ対策に従ってコンピュータとネットワークとの間のネットワークトラフィックの流れを制御するための、ネットワークセキュリティモジュールによって実施される例示的な方法を示す流れ図である。
【図９】コンピュータの外部のハードウェアデバイスとして実現された例示的なネットワークセキュリティモジュールを示す絵図である。
【図１０】本発明によって形成されたネットワークセキュリティモジュールの論理コンポーネントを示すブロック図である。
【符号の説明】
【００９５】
１００  ネットワーク化環境
１０２〜１０８  コンピュータ
１１０  ネットワーク
１１２  エクスプロイト
３００  ネットワーク化環境
３０２  コンピュータ
３０４  ネットワークセキュリティモジュール
３０６  セキュリティサービス
３０８  ウイルス対策サービス
３１２  受信デバイス
３１４  第２の通信リンク
９０６  イネーブル／ディセーブルスイッチ
９０８  
９１０〜９１６  ステータスインジケータ
１００２  メモリ
１００４  セキュリティステータスインジケータモジュール
１００６  比較モジュール
１００８  セキュリティ施行モジュール
１０１０  更新要求モジュール
１０１２  ネットワーク接続
１０１４  コンピュータ接続
１０１８  ２次コンピュータ接続
１０２０  コーダ／デコーダモジュール
【図１】
2005285097.tif 000003
【図２Ａ】
2005285097.tif 000004
【図２Ｂ】
2005285097.tif 000005
【図３Ａ】
2005285097.tif 000006
【図３Ｂ】
2005285097.tif 000007
【図４Ａ】
2005285097.tif 000008
【図４Ｂ】
2005285097.tif 000009
【図５】
2005285097.tif 000010
【図６】
2005285097.tif 000011
【図７】
2005285097.tif 000012
【図８】
2005285097.tif 000013
【図９】
2005285097.tif 000014
【図１０】
2005285097.tif 000015
【外国語明細書】
2005285097000001.pdf