(57)【要約】  ネットワーク・セキュリティ・デバイスはクライアント計算デバイスとネットワークとの間の通信を仲介する。ネットワーク・セキュリティ・デバイスは、パケット・ヘッダの構造およびコンテンツに関するパラメータを定義するパケット・ヘッダ検証ルールを記憶するメモリを含む。ネットワーク・セキュリティ・デバイスは、クライアント計算デバイスおよびネットワークに接続するための通信インターフェースをさらに含む。ネットワーク・セキュリティ・デバイスは、メモリおよび通信インターフェースと相互接続されたプロセッサをさらに含む。プロセッサは、クライアント計算デバイスに送信するためのネットワークからの着信パケットを受信したことに応答して、着信パケットから着信ヘッダを抽出するように構成される。プロセッサは、パケット・ヘッダ検証ルールに従って着信ヘッダの構造およびコンテンツの検証を実行するようにさらに構成される。プロセッサは、着信ヘッダの検証の成功に応答して、クライアント計算デバイスに着信パケットを送信するようにさらに構成される。
2021512564.tif 000002
【特許請求の範囲】
【請求項１】
クライアント計算デバイスとネットワークとの間の通信を仲介するためのネットワーク・セキュリティ・デバイスであって、
パケット・ヘッダの構造およびコンテンツに関するパラメータを定義するパケット・ヘッダ検証ルールを記憶するメモリと、
前記クライアント計算デバイスおよび前記ネットワークに接続するための通信インターフェースと、
前記メモリおよび前記通信インターフェースと相互接続されたプロセッサであって、
前記クライアント計算デバイスに送信するための前記ネットワークからの着信パケットを受信したことに応答して、該着信パケットから着信ヘッダを抽出することと、
前記パケット・ヘッダ検証ルールに従って前記着信ヘッダの構造およびコンテンツの検証を実行することと、
前記着信ヘッダの検証の成功に応答して、前記クライアント計算デバイスに前記着信パケットを送信することと
を行うように構成された、プロセッサと
を備える、ネットワーク・セキュリティ・デバイス。
【請求項２】
前記プロセッサが、
前記メモリから、記憶されたルーティング経路を取得することと、
前記着信パケットの前記着信ヘッダから現在のルーティング経路を取得することと、
前記記憶されたルーティング経路および前記現在のルーティング経路がしきい値数の類似ポイントを含むことが決定されたとき、前記着信ヘッダの前記検証が成功したことを決定することであって、前記しきい値数が前記パケット・ヘッダ検証ルールにおいて定義されている、前記着信ヘッダの前記検証が成功したことを決定することと
によって、前記着信ヘッダの前記検証を実行するように構成された、請求項１に記載のネットワーク・セキュリティ・デバイス。
【請求項３】
前記プロセッサが、前記着信ヘッダの検証の成功に応答して、前記メモリに前記現在のルーティング経路を記憶するようにさらに構成された、請求項２に記載のネットワーク・セキュリティ・デバイス。
【請求項４】
前記プロセッサが、
前記着信パケットの前記着信ヘッダから現在のルーティング経路を取得することと、
該現在のルーティング経路の１つまたは複数のロケーションが、前記パケット・ヘッダ検証ルールにおいて定義された制限付きロケーション・リスト上のロケーションに一致するかどうかを決定することと、
前記現在のルーティング経路の前記ロケーションのいずれも前記制限付きロケーション・リスト上の前記ロケーションに一致しないとき、前記着信ヘッダの前記検証が成功したことを決定することと
によって、前記着信ヘッダの前記検証を実行するように構成された、請求項１に記載のネットワーク・セキュリティ・デバイス。
【請求項５】
前記プロセッサが、
前記メモリからセッション情報を取得することと、
前記着信パケットの前記着信ヘッダから応答シーケンスを取得することと、
該応答シーケンスが前記セッション情報に対応するとき、前記着信ヘッダの前記検証が成功したことを決定することと
によって、前記着信ヘッダの前記検証を実行するように構成された、請求項１に記載のネットワーク・セキュリティ・デバイス。
【請求項６】
前記プロセッサが、
前記着信ヘッダの前記構造において利用される通信プロトコルを識別することと、
該識別された通信プロトコルが、前記パケット・ヘッダ検証ルールにおいて定義されたベースライン通信プロトコルに一致するとき、前記着信ヘッダの前記検証が成功したことを決定すること
とによって、前記着信ヘッダの前記検証を実行するように構成された、請求項１に記載のネットワーク・セキュリティ・デバイス。
【請求項７】
前記ネットワークに接続するための前記クライアント計算デバイスからの要求に応答して、前記プロセッサが、
ネットワーク情報を取得することと、
前記メモリに記憶された予備検証ルールに基づいて前記ネットワーク情報に対する予備検証を実行することと、
予備検証の成功に応答して、前記ネットワークに接続するように前記通信インターフェースを制御することと
を行うように構成された、請求項１に記載のネットワーク・セキュリティ・デバイス。
【請求項８】
前記プロセッサが、
前記ネットワークにおいて利用される通信プロトコルを識別することと、
前記予備検証ルールに従って、前記識別された通信プロトコルを検証することと
によって、前記予備検証を実行するように構成された、請求項７に記載のネットワーク・セキュリティ・デバイス。
【請求項９】
前記プロセッサが、
ネットワーク・ルーティング経路を取得し、前記メモリに該ネットワーク・ルーティング経路を記憶することと、
前記予備検証ルールに従って、前記ネットワーク・ルーティング経路を検証することと
によって、前記予備検証を実行するように構成された、請求項７に記載のネットワーク・セキュリティ・デバイス。
【請求項１０】
前記プロセッサが、
前記ネットワークに送信するための前記クライアント計算デバイスからの発信パケットを受信したことに応答して、該発信パケットから発信ヘッダを抽出することと、
前記パケット・ヘッダ検証ルールに従って前記発信ヘッダの構造およびコンテンツの検証を実行することと、
前記発信ヘッダの検証の成功に応答して、前記ネットワークに前記発信パケットを送信することと
を行うようにさらに構成された、請求項１に記載のネットワーク・セキュリティ・デバイス。
【請求項１１】
前記プロセッサが、
前記発信パケットの前記発信ヘッダから現在のルーティング経路を取得することと、
該現在のルーティング経路の１つまたは複数のロケーションが、前記パケット・ヘッダ検証ルールにおいて定義された制限付きロケーション・リスト上のロケーションに一致するかどうかを決定することと、
前記現在のルーティング経路の前記ロケーションのいずれも前記制限付きロケーション・リスト上の前記ロケーションに一致しないとき、前記発信ヘッダの前記検証が成功したことを決定することと
によって、前記発信ヘッダの前記検証を実行するように構成された、請求項１０に記載のネットワーク・セキュリティ・デバイス。
【請求項１２】
前記プロセッサが、
前記メモリから、記憶されたネットワーク・トラフィック量データを取得することと、
現在のネットワーク・トラフィック量を検出することと、
前記記憶されたネットワーク・トラフィック量データおよび前記現在のネットワーク・トラフィック量がしきい値類似度の範囲内であるかどうかを決定することと、
前記決定が肯定的であるとき、前記検証が成功したことを決定することと
によって、ネットワーク使用検証を実行するようにさらに構成された、請求項１に記載のネットワーク・セキュリティ・デバイス。
【請求項１３】
前記メモリに前記現在のネットワーク・トラフィック量を記憶することをさらに含む、請求項１２に記載のネットワーク・セキュリティ・デバイス。
【請求項１４】
前記現在のネットワーク・トラフィック量が、個々のポートによるトラフィック、指定されたホストへのまたは指定されたホストからのトラフィック、指定されたネットワークへのまたは指定されたネットワークからのトラフィック、および指定された地理的領域へのまたは指定された地理的領域からのトラフィックのうちの１つまたは複数を備える、請求項１２に記載のネットワーク・セキュリティ・デバイス。
【請求項１５】
前記プロセッサが、パーセンテージ差および標準偏差差のうちの１つまたは複数に基づいて、前記記憶されたネットワーク・トラフィック量データおよび前記現在のネットワーク・トラフィック量がしきい値類似度の範囲内であるかどうかを決定する、請求項１２に記載のネットワーク・セキュリティ・デバイス。
【請求項１６】
前記通信インターフェースが、暗号化された通信プロトコルを利用するようにさらに構成された、請求項１に記載のネットワーク・セキュリティ・デバイス。
【請求項１７】
前記プロセッサが、
ドメイン・ネーム・システム（ＤＮＳ）要求に応答して、前記メモリから信頼されたドメイン・ネーム・サーバのあらかじめ記憶されたアドレスを取り出すことと、
前記暗号化された通信プロトコルを介して前記信頼されたドメイン・ネーム・サーバに前記ＤＮＳ要求を転送するように前記通信インターフェースを制御することと
を行うようにさらに構成された、請求項１６に記載のネットワーク・セキュリティ・デバイス。
【請求項１８】
前記プロセッサが、前記暗号化された通信プロトコルを使用して前記通信インターフェースを介して集中コマンド・センターと通信するようにさらに構成された、請求項１６に記載のネットワーク・セキュリティ・デバイス。
【請求項１９】
前記プロセッサが、前記集中コマンド・センターからの切断コマンドの受信に応答して、前記ネットワークから切断するように前記通信インターフェースを制御するようにさらに構成された、請求項１８に記載のネットワーク・セキュリティ・デバイス。
【請求項２０】
前記プロセッサが、前記集中コマンド・センターからのリセット・コマンドの受信に応答して、前記デバイスを出荷時設定にリセットするようにさらに構成された、請求項１８に記載のネットワーク・セキュリティ・デバイス。
【請求項２１】
前記メモリが、前記クライアント計算デバイスによって実行可能なダッシュボード・アプリケーションをさらに記憶する、請求項１に記載のネットワーク・セキュリティ・デバイス。
【請求項２２】
前記プロセッサが、検証の不成功に応答して、前記ダッシュボード・アプリケーションを介して前記クライアント計算デバイスにおいて指示を与えるように構成された、請求項２１に記載のネットワーク・セキュリティ・デバイス。
【請求項２３】
前記プロセッサが、検証の不成功に応答して、前記ネットワークから切断するように前記通信インターフェースを制御するように構成された、請求項１に記載のネットワーク・セキュリティ・デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、一般に、ネットワーク・デバイスに関し、より詳細には、ネットワーク接続をセキュアにするためのデバイスおよび方法に関する。
【背景技術】
【０００２】
インターネットはユビキタスである。人々は、どこからでも、すなわち、家庭およびオフィス、ならびにホテル、コーヒー・ショップおよびレストランなど、公共の場所からインターネットに接続することができる。公衆ネットワークはセキュリティ対策を採用していないことがあり、したがって、ユーザおよびユーザのデバイスにセキュリティ脅威を呈し得る。
【発明の概要】
【０００３】
本明細書の一態様は、クライアント計算デバイスとネットワークとの間の通信を仲介するためのネットワーク・セキュリティ・デバイスを対象とする。ネットワーク・セキュリティ・デバイスは、パケット・ヘッダの構造およびコンテンツに関するパラメータを定義するパケット・ヘッダ検証ルールを記憶するメモリを含む。ネットワーク・セキュリティ・デバイスは、クライアント計算デバイスおよびネットワークに接続するための通信インターフェースをさらに含む。ネットワーク・セキュリティ・デバイスは、メモリおよび通信インターフェースと相互接続されたプロセッサをさらに含む。プロセッサは、クライアント計算デバイスに送信するためのネットワークからの着信パケットを受信したことに応答して、着信パケットから着信ヘッダを抽出するように構成される。プロセッサは、パケット・ヘッダ検証ルールに従って着信ヘッダの構造およびコンテンツの検証を実行するようにさらに構成される。プロセッサは、着信ヘッダの検証の成功に応答して、クライアント計算デバイスに着信パケットを送信するようにさらに構成される。
【０００４】
以下の図を参照しながら、実装形態について説明する。
【図面の簡単な説明】
【０００５】
【図１】ネットワーク接続をセキュアにするための例示的なシステムの概略を示す図である。
【図２】図１のシステムにおけるネットワーク・セキュリティ・デバイスのいくつかの内部構成要素のブロック図を示す図である。
【図３】図１のシステムにおいてネットワーク接続の予備検証を実行する例示的な方法のフローチャートを示す図である。
【図４】図１のシステムにおいてパケット・ヘッダ検証を実行する例示的な方法のフローチャートを示す図である。
【図５】図１のシステムにおいてネットワーク使用検証を実行する例示的な方法のフローチャートを示す図である。
【図６】集中コマンド・センターと通信しているネットワーク接続をセキュアにするための例示的なシステムを示す図である。
【図７】例示的なポータブル・ネットワーク・セキュリティ・デバイスの斜視図を示す図である。
【図８】図１のシステムにおけるダッシュボード・アプリケーションの例示的なユーザ・インターフェースを示す図である。
【発明を実施するための形態】
【０００６】
現在のネットワーク・セキュリティ手段は複雑であり、適切にセット・アップし、使用するために高いレベルの技術的洗練を必要とし得る。コンピュータ・セキュリティに対する潜在的な脅威および攻撃を緩和することは、許容できるレベルの保護を確立するための高いレベルの知識をしばしば必要とする。さらに、ネットワークをセキュアにする多くの方法は、既知のセキュリティ問題に一致するパターンを検出するに過ぎない。これらの方法は、異なる脅威を相乗的に分析することができず、ユーザまたはカウンタに脅威を通知するための十分な手段を与えない。
【０００７】
ネットワーク・セキュリティ・デバイスは、ネットワーク・セキュリティ・デバイスに接続された計算デバイスにネットワーク・セキュリティを与えることができる。特に、ネットワーク・セキュリティ・デバイスはユーザのデバイスとネットワークとの間のインラインであり得、ユーザのデバイスはネットワーク・セキュリティ・デバイスを介してネットワークと対話し得る。ネットワーク・セキュリティ・デバイスは、したがって、通信における脅威を自律的に分析し、検出し、その脅威に応答することを含めて、ネットワークとユーザのデバイスとの間の通信を仲介し得る。ネットワーク・セキュリティ・デバイス・セキュリティ機能は、盗聴検出および防止、ドメイン・ネーム・システム攻撃検出および防止、侵入検出および防止、地理的アクセス・フィルタ、トラフィック量監視および制御、直接攻撃検出、暗号化された通信、および予備ネットワーク検証のうちの１つまたは複数を含むことができる。ネットワーク・セキュリティ・デバイスは、ユーザのデバイスが危険にさらされているかどうかを決定するためにネットワーク情報を分析し、比較し、処理し、検証する。ネットワーク・セキュリティ・デバイスは、ネットワーク・セッション中に受信された未加工情報の詳細な識別情報を使用し、識別された攻撃の重大度および影響に従ってそれらの攻撃に重みを割り当て、適切に応答する。デバイスは、接続ポート、オペレーティング・システムなどにかかわらず、デバイスが複数のデバイスにセキュリティ機能を与えることを可能にする、技術アグノスティックであるように構成され得る。
【０００８】
図１は、ネットワーク接続をセキュアにするための例示的なシステム１００を示す。システム１００は、ネットワーク・セキュリティ・デバイス１２０を介してネットワーク１３０に接続するためのクライアント計算デバイス１１０を含む。クライアント計算デバイス１１０は、タブレット、スマート・フォン、ラップトップ・コンピュータ、または他の好適なデバイスなど、モバイル計算デバイスであり得る。いくつかの例では、クライアント計算デバイス１１０は、デスクトップ・コンピュータ、キオスクなどの計算デバイスであり得る。一般に、クライアント計算デバイス１１０は、ネットワーク１３０など、ネットワーク上で通信することが可能な計算デバイスである。クライアント計算デバイス１１０は通信リンク１１５を介してネットワーク・セキュリティ・デバイス１２０に接続される。通信リンク１１５は、有線または無線、または有線と無線の組合せであり得る。例えば、通信リンク１１５は、クライアント計算デバイス１１０上に設けられたユニバーサル・シリアル・バス（ＵＳＢ）、イーサネット、または他の好適なポートを介したネットワーク・セキュリティ・デバイス１２０からクライアント計算デバイス１１０への有線接続を含むことができる。特に、ネットワーク・セキュリティ・デバイス１２０は、通信リンク１１５を介してクライアント計算デバイス１１０のためのネットワーク・インターフェースとして働くように構成される。
【０００９】
ネットワーク１３０は、１つまたは複数のルータ、スイッチ、無線アクセス・ポイントなどによって定義されたローカル・エリア・ネットワーク（ＬＡＮ）のうちのいずれか１つまたは任意の組合せを含むことができる。ネットワーク１３０はまた、セルラー・ネットワークとインターネットとを含む任意の好適なワイド・エリア・ネットワーク（ＷＡＮ）を含み得る。ネットワーク・セキュリティ・デバイス１２０は通信リンク１２５を介してネットワーク１３０に接続される。通信リンク１２５は、イントラネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、Ｗｉ−Ｆｉネットワーク、短距離無線ネットワーク、インターネット、そのようなネットワークの組合せなど、ＩＰネットワークを含み得る。通信リンク１２５は、直接リンク、またはローカル・エリア・ネットワークとワイド・エリア・ネットワークの両方を含む１つまたは複数のネットワークを横断するリンクであり得る。
【００１０】
ネットワーク・セキュリティ・デバイス１２０（本明細書で単にデバイス１２０とも呼ぶ）は、クライアント計算デバイス１１０とネットワーク１３０との間の通信を仲介するように構成される。特に、デバイス１２０は、セキュアな通信を与えるために脅威および攻撃を監視する。次に図２を参照すると、ネットワーク・セキュリティ・デバイス１２０のいくつかの内部構成要素の概略が示されている。
【００１１】
ネットワーク・セキュリティ・デバイス１２０は、プロセッサ２００と、メモリ２０４など、非一時的コンピュータ可読記憶媒体と、通信インターフェース２０８とを含む。プロセッサ２００は、中央処理ユニット（ＣＰＵ）、マイクロコントローラ、マイクロプロセッサ、処理コア、フィールドプログラマブル・ゲート・アレイ（ＦＰＧＡ）などを含み得る。プロセッサ２００は、複数の協働するプロセッサを含み得る。プロセッサ２００は、本明細書で説明した機能を実現するための命令を実行するためにメモリ２０４と協働し得る。特に、プロセッサ２００は、クライアント計算デバイス１１０とネットワーク１３０との間のセッションのセキュリティ状態についての決定を自律的に行うために、ネットワークおよびパケット情報、ならびにネットワーク・トラフィックを分析するように構成される。プロセッサ２００は、修正アクションを行うように構成され得る。プロセッサ２００は、ネットワーク情報と、パケット情報と、ネットワーク・トラフィックと、セッション履歴と、オペレータ構成とに基づいてセキュリティ状態および適切な修正アクションを決定するために１つまたは複数の人工知能および／または機械学習技法を実装し得る。
【００１２】
メモリ２０４は、揮発性メモリ（例えば、ランダム・アクセス・メモリすなわちＲＡＭ）と不揮発性メモリ（例えば、読取り専用メモリすなわちＲＯＭ、電気的消去可能プログラマブル読取り専用メモリすなわちＥＥＰＲＯＭ、フラッシュ・メモリ）の組合せを含み得る。メモリ２０４のうちのすべてまたはいくつかはプロセッサ２００と一体化され得る。特に、メモリ２０４は、プロセッサ２００によって実行可能な複数のコンピュータ可読命令をそれぞれ含む複数のアプリケーションを記憶する。プロセッサ２００による命令の実行は、本明細書で説明する様々なアクションを実行するようにネットワーク・セキュリティ・デバイス１２０を構成する。メモリ２０４に記憶されるアプリケーションは、クライアント計算デバイス１１０とネットワーク１３０との間の通信を仲介するためのネットワーク・セキュリティ・アプリケーション２１２、ならびにネットワーク・セキュリティ・デバイス１２０のセキュリティ機能を管理するためのダッシュボード・アプリケーション２１６を含む。メモリ２０４は、検証ルールを記憶するリポジトリ２２０をさらに含む。特に、検証ルールは、パケット・ヘッダ検証ルール、予備検証ルール、ネットワーク使用検証ルールなどを含むことができる。例えば、パケット・ヘッダ検証ルールは、セキュアな接続を確立するためにクライアント計算デバイス１１０とネットワーク１３０との間で通信されるパケット・ヘッダの構造およびコンテンツに関するパラメータおよび基準を定義する。
【００１３】
ネットワーク・セキュリティ・デバイス１２０は、プロセッサ２００と相互接続された通信インターフェース２０８をさらに含む。通信インターフェース２０８は、ネットワーク・セキュリティ・デバイス１２０が、通信リンク１１５を介したクライアント計算デバイス１１０、および通信リンク１２５を介したネットワーク１３０など、他の計算デバイスと通信することを可能にする好適なハードウェア（例えば、送信機、受信機、ネットワーク・インターフェース・コントローラなど）を含む。通信インターフェース２０８の特定の構成要素は、ネットワーク・セキュリティ・デバイス１２０がその上で通信するネットワークまたは他のリンクのタイプに基づいて選択される。例えば、通信インターフェース２０８は、クライアント計算デバイス１１０と通信するための有線ＵＳＢ接続と好適な送信機および受信機の両方、ならびにネットワーク１３０と通信するためのネットワーク・インターフェース・コントローラを含み得る。
【００１４】
動作において、いくつかの実装形態では、通信インターフェース２０８は、暗号化された通信プロトコルを利用するように構成され得る。例えば、メモリ２０４は、通信インターフェース２０８が暗号化された通信を送信することを可能にするための暗号化方式をあらかじめ記憶し得る。いくつかの実装形態では、デバイス１２０は、例えば、信頼されたドメイン・ネーム・システム（ＤＮＳ）サーバ（例えば、デバイス１２０の外部のＤＮＳサーバ）のアドレスを記憶するＤＮＳサーバを、メモリ２０４にさらにホストすることができる。したがって、通信中に、ＤＮＳ要求に応答して、プロセッサ２００は、メモリ２０４から信頼されたＤＮＳサーバのあらかじめ記憶されたアドレスを取り出すように構成され得る。プロセッサ２００は、次いで、暗号化された通信プロトコルを介して信頼されたＤＮＳサーバにＤＮＳ要求を転送するように通信インターフェースを制御し得る。したがって、ＤＮＳ要求は、クライアント計算デバイス１１０および信頼されたＤＮＳサーバのロケーションにかかわらず暗号化され得る。したがって、第三者がＤＮＳトラフィックを観測することを防止し、フィッシングおよび／またはＤＮＳポイズニング脅威を妨害し得る。さらに、ＤＮＳ情報は、信頼されたソースから受信されたものとして検証され得る。他の実装形態では、通信インターフェース２０８は、１つまたは複数の仮想プライベート・ネットワーク（ＶＰＮ）サーバへのＶＰＮを確立するようにさらに構成され得る。いくつかの実装形態では、通信インターフェース２０８は、異なる通信リンクを介して通信するための複数の通信インターフェースを含むことができる。
【００１５】
次に図３を参照すると、クライアント計算デバイス１１０とネットワーク１３０との間の仲介された通信を初期化するための例示的な方法３００が示されている。システム１００における方法３００の実行とともに、特に、図１および図２に示された構成要素を参照しながら、方法３００について説明する。他の実装形態では、方法３００は他の好適なシステムによって実行され得ることが企図される。特に、方法３００は、クライアント計算デバイス１１０とネットワーク１３０との間の接続のスパン中の一連の通信（すなわち、ネットワークとクライアント計算デバイスとの間の送信）によって定義されるセッションを開始する。セッションは、ネットワーク・セキュリティ・デバイス１２０によって仲介されるクライアント計算デバイス１１０とネットワーク１３０との接続によって定義され得る。
【００１６】
方法３００はブロック３０５で開始され、デバイス１２０は、ネットワーク１３０に接続するためのクライアント計算デバイス１１０からの要求を受信する。例えば、インターネットに接続するための要求は、ダッシュボード・アプリケーション２１６との対話によってなど、クライアント計算デバイス１１０のオペレータによって開始され得る。例えば、ダッシュボード・アプリケーション２１６は、オペレータがネットワーク接続を構成することを可能にするためのユーザ・インターフェースを与え得る。例えば、ダッシュボード・アプリケーション２１６は、対話型ウェブ・ポータルとしてクライアント計算デバイス１１０上のウェブ・ブラウザに現れ得る。ダッシュボード・アプリケーション２１６に対する認証はログイン証明などを介して実行され得る。いくつかの例では、２次認証（例えば、ワン・タイム・パスワード、一体化された近距離通信（ＮＦＣ）チップ・リーダーによる信号の周期的検出など）も実装され得る。
【００１７】
いくつかの例では、デバイス１２０は、ネットワーク１３０に接続する人々を識別および／または認証するためのパスワードおよび／または他の手段を必要とするゲートウェイにアクセスすることによってネットワーク１３０に接続し得る。いくつかの実装形態では、ネットワーク・セキュリティ・デバイス１２０は、ダッシュボード・アプリケーション２１６を介して、オペレータがゲートウェイに対するログイン資格証明を確立するか、または他の認証を与えるための手段を与え得る。いくつかの実装形態では、デバイス１２０は、オペレータ入力を必要とすることなしにゲートウェイとの将来の接続が確立されることを可能にするために、メモリ２０４に（例えば、ゲートウェイ識別子などによって）ゲートウェイに関連するログイン資格証明を記憶し得る。したがって、ダッシュボード・アプリケーション２１６は、いずれか１つまたは複数のネットワークのためのそのような資格証明の記憶および管理をサポートし得る。
【００１８】
ネットワーク１３０に接続するための要求に応答して、デバイス１２０はブロック３１０に進む。ブロック３１０において、デバイス１２０、特にプロセッサ２００はネットワーク情報を取得する。ネットワーク情報は、ネットワークに対するルーティング情報、ネットワークにおいて利用される通信プロトコル、ネットワーク・トラフィック情報などを含むことができる。例えば、デバイス１２０は、ネットワーク１３０にテスト・パケットを送信し、テスト・パケットに対する応答に基づいてルーティング情報、通信プロトコル、およびネットワーク・トラフィック情報を抽出し得る。
【００１９】
ブロック３１５において、デバイスは、メモリ２０４に記憶された予備検証ルールに基づいてネットワーク情報の予備検証を実行する。例えば、予備検証ルールはパケット・ヘッダ検証ルールのサブセットであり得るか、または予備検証ルールは別個のルール・セットであり得る。予備検証ルールは、ブロック３１０において取得されたルーティング情報、通信プロトコル、ネットワーク・トラフィック情報、および他のネットワーク情報のための許容できる規格および許容できない規格を定義し得る。
【００２０】
いくつかの実装形態では、デバイス１２０は、割り当てられたセキュリティ・レベルに基づいて複数の予備検証ルールを記憶し得る。したがって、予備検証を実行する前に、ブロック３１５において、デバイス１２０は、割り当てられたセキュリティ・レベルを決定し得る。例えば、デバイス１２０はデフォルト・セキュリティ・レベルを有し得るか、またはカスタム・セキュリティ・レベルがダッシュボード・アプリケーション２１６を介してクライアント計算デバイス１１０のオペレータによって確立され得る。いくつかの例では、クライアント計算デバイス１１０のオペレータのログイン資格証明に基づいて、クライアント計算デバイス１１０の識別子に基づいて（すなわち、異なるデバイスに異なるセキュリティ・レベルが割り当てられ得る）、各セッションに基づいてなど、異なるセキュリティ・レベルが割り当てられ得る。ダッシュボード・アプリケーション２１６は、したがって、オペレータが上記の識別子のいずれかに関連してセキュリティ・レベルを設定または変更するためのクライアント計算デバイス１１０におけるユーザ・インターフェースを与え得る。
【００２１】
予備検証を実行するために、デバイス１２０は、ネットワークにおいて利用される通信プロトコルを識別し、それらのプロトコルを予備検証ルールにおいて定義された許容できるベースライン通信プロトコルと比較し得る。したがって、予備検証を実行するために、デバイス１２０は、ネットワークにおいて利用される通信プロトコルを識別し得る。例えば、デバイス１２０は、どのタイプの通信プロトコルが使用されるかを決定するために、ネットワークからのデータ送信の構造をあらかじめ記憶された通信プロトコル構造と比較し得る。検証を実行するために、デバイス１２０は、識別された通信プロトコルを予備検証ルールにおいて定義されたベースライン通信プロトコルと比較し得る。例えば、予備検証ルールは１つまたは複数の許容できる通信プロトコルまたはベースライン規格を定義し得る。予備検証ルールは１つまたは複数の許容できない通信プロトコルをさらに定義し得る。デバイス１２０が、識別された通信プロトコルが許容できるベースライン規格を満たすか、または許容できるベースライン規格に一致することを決定したとき、デバイス１２０は、予備検証が成功したことを決定し得る。識別された通信プロトコルが許容できないことが決定された（例えば、通信プロトコル自体がクライアント計算デバイス１１０とネットワーク１３０との間の通信に対する脅威または攻撃を示す）場合、デバイス１２０は、予備検証が不成功であったことを決定し得る。例えば、より低いセキュリティ・レベルでは、依然として予備検証の成功を可能にしながら、セッションの持続時間にわたって監視するために、いくつかの通信プロトコルにフラグが付けられ得る。より高いセキュリティ・レベルでは、同じ通信プロトコルは、予備検証が不成功であったことを決定し、即時のアクション（例えば、ネットワーク１３０への接続を防ぐこと）を行うようにデバイス１２０に促し得る。
【００２２】
別の例では、予備検証を実行するために、デバイス１２０は、ネットワーク・ルーティング経路を取得し、予備検証ルールに従って、ルーティング経路のポイントのロケーションに基づいてネットワーク・ルーティング経路を検証し得る。特に、ルーティング経路上のポイントは地理的ロケーションに関連し得る。いくつかの地理的ロケーションは、クライアント計算デバイス１１０とネットワーク１３０との間の通信に対する潜在的な脅威または攻撃を示し得る。したがって、予備検証ルールは、地理的ロケーションに制限レベルを関連付ける制限付きロケーション・リストを定義し得る。以下の表１は、メモリ２０４に記憶される例示的な制限付きロケーション・リストを示す。
【表１】
2021512564.tif 000003
【００２３】
上記に示したように、制限付きロケーション・リストは、地理的ロケーションと、地理的ロケーションの制限レベルとを含む。例えば、いくつかのロケーションは、例えば、さらなる検証ルールなどに基づいて制限付きアクセスを有し得る。他のロケーションはアクセスを有せず、それによって、所与のロケーションによってルーティングされたネットワーク１３０とクライアント計算デバイス１１０との間の通信が終了されるべきであることを示し得る。いくつかの実装形態では、制限付きロケーション・リストは、各地理的ロケーションまたは各制限レベルに対応して行われるべき１つまたは複数のアクションをさらに定義することができる。いくつかの実装形態では、ＩＰアドレス（例えば個々のアドレスおよび／または範囲）またはドメイン・ネームに基づいて制限レベルが割り当てられ得る。いくつかの実装形態では、制限付きロケーション・リストは、制限レベル（すなわち制限付きアクセス、アクセス禁止など）を有する地理的ロケーションのみを含み得、リスト上にないロケーションは制限レベルを有しないこと（すなわち制限なし）が決定され得る。
【００２４】
したがって、予備検証を実行するために、デバイス１２０は、現在のルーティング経路の１つまたは複数のロケーションが制限付きロケーション・リスト上のロケーションに一致するかどうかを決定し得る。現在のルーティング経路のロケーションのいずれも制限付きロケーション・リスト上の制限付きロケーションに一致しないとき、検証が成功したことが決定される。すなわち、ロケーションのいずれも制限レベルを有しない（例えば、「制限なし」の指示を有するか、または制限付きロケーション・リスト上にない。）。より低いセキュリティ・レベルでは、「制限付きアクセス」の制限レベルは、デバイスが、セッションの持続時間にわたって監視するためのフラグを地理的ロケーションに付けながら、予備検証が成功したことを決定することを可能にし得る。より高いセキュリティ・レベルでは、「制限付きアクセス」の制限レベルは、予備検証が不成功であったことを決定するようにデバイスに促し得る。
【００２５】
ブロック３２０において、デバイス１２０は、予備検証の結果に基づいて、割り当てられたセキュリティ・レベルに従って検証が成功したかどうかを決定する。検証が成功した場合、デバイス１２０はブロック３２５に進む。
【００２６】
ブロック３２５において、デバイス１２０はネットワーク１３０に接続し得る。特に、プロセッサ２００は、ネットワーク１３０に接続するように通信インターフェース２０８を制御し得る。デバイス１２０は、メモリ２０４にネットワーク情報をさらに記憶し得る。特に、セッションのブロック３１０において取得されたネットワーク情報は、接続の初期化の時点の構成のスナップショットを与え得る。したがって、初期構成からのある変化は、以下でさらに説明するように、脅威または攻撃であることが決定され得る。
【００２７】
ブロック３２０において、デバイス１２０が、検証が不成功であったことを決定した場合、デバイス１２０はブロック３３０に進む。ブロック３３０において、デバイス１２０は、ネットワーク１３０に接続するための要求を拒否する。
【００２８】
次に図４を参照すると、通信を仲介するための例示的な方法４００が示されている。特に、方法４００はデータ・パケットの完全性を検証するためのものである。システム１００における方法４００の実行とともに、特に、図１および図２に示された構成要素を参照しながら、方法４００について説明する。他の実装形態では、方法４００は他の好適なシステムによって実行され得ることが企図される。
【００２９】
ブロック４０５において、ネットワーク・セキュリティ・デバイス１２０は、セッション中のネットワーク１３０とクライアント計算デバイス１１０との間の送信のためのパケットを受信する。例えば、パケットは、ネットワーク１３０に送信するためのクライアント計算デバイス１１０からの発信パケットであり得るか、またはパケットは、クライアント計算デバイス１１０に送信するためのネットワーク１３０からの着信パケットであり得る。
【００３０】
ブロック４１０において、ネットワーク・セキュリティ・デバイス１２０、特にプロセッサ２００はパケットのヘッダを抽出する。特に、パケットはヘッダと本体とを含む。パケット・ヘッダは、パケット識別および配信のためのアドレス指定情報および他の制御情報を含むことができる。例えば、パケット・ヘッダは、パケットがパケットのソースからパケットの宛先に移動した際の経路を識別するためのルーティング情報を含むことができる。パケット・ヘッダは、（例えば、要求に対する応答などとして）セッションにおけるパケットのコンテキストの識別を可能にするための順序付け情報をさらに含むことができる。一般に、パケット・ヘッダは、パケット・ヘッダ中に含まれる様々な情報の標準の長さ、サイズ、順序、およびフォーマッティングを含む標準インターネット通信プロトコルに従ってフォーマットされ得る。パケットは、宛先に配信されるべき情報を含んでいる本体またはペイロードをさらに含む。したがって、ブロック４１０において、デバイス１２０は、さらなる処理および検証のためのアドレス指定情報および制御情報を含んでいるヘッダを抽出する。
【００３１】
ブロック４１５において、ネットワーク・セキュリティ・デバイス１２０、特にプロセッサ２００は、ブロック４１０において抽出されたヘッダの構造およびコンテンツの検証を実行する。特に、検証は、メモリ２０４に記憶されたパケット・ヘッダ検証ルールに基づいて実行され得る。パケット・ヘッダ検証ルールは、ブロック４１０において抽出されたパケット・ヘッダの許容できる構造および／またはコンテンツについての１つまたは複数のルールを指定し得る。例えば、ルールは、ヘッダにおいて定義されるルーティング経路、ヘッダにおいて定義される順序付け情報、ヘッダにおいて使用される通信プロトコルの構造などに基づき得る。
【００３２】
予備検証ルールと同様に、デバイス１２０は、割り当てられたセキュリティ・レベルに関連するパケット・ヘッダ検証ルールを記憶し得る。したがって、検証を実行する前に、デバイス１２０は、割り当てられたセキュリティ・レベルを決定し得る。いくつかの実装形態では、異なるセキュリティ・レベルが予備検証に割り当てられ得、セッションの持続時間にわたってパケット・ヘッダ検証が実行され得る。
【００３３】
一例では、ネットワーク・セキュリティ・デバイス１２０は、パケットの現在のルーティング経路に基づいて検証を実行するように構成され得る。特に、現在のルーティング経路は、パケットがパケットのソースからパケットの宛先に（例えば、ソース計算デバイスからネットワーク１３０を介してクライアント計算デバイス１１０に）移動した際の経路を定義し得る。現在のルーティング経路は、パケットが通信された際の１つまたは複数のポイント（例えば、ルータ、アクセス・ポイントなどを表す）を含むことができる。ポイントは、インターネット・プロトコル（ＩＰ）アドレス、ロケーション、および他の識別情報に関連付けられ得る。
【００３４】
いくつかの例では、現在のルーティング経路の検証は、セッションにわたるルーティング経路の一貫性に関して行われ得る。特に、検証を実行するために、ネットワーク・セキュリティ・デバイス１２０は、最初に、メモリ２０４から、記憶されたルーティング経路を取得するように構成され得る。例えば、記憶されたルーティング経路は、リポジトリ２２０に、またはセッション固有のデータを記憶するためのキャッシュに記憶され得る。特に、記憶されたルーティング経路は、デバイス１２０によってネットワーク１３０からクライアント計算デバイス１１０に通信された前のパケットに関連付けられ得る。例えば、前のパケットは、（例えば、方法３００中のクライアント計算デバイス１１０とネットワーク１３０との間の接続の初期化に関する）セッションのための初期ルーティング経路を決定するためのテスト・パケットであり得るか、または前のパケットは、セッションの持続時間にわたって送信される別のデータ・パケットであり得る。
【００３５】
デバイス１２０は、着信パケットの現在のルーティング経路を記憶されたルーティング経路と比較するように構成され得る。特に、データ・パケットのルーティング経路は、一般に、セッションの持続時間にわたって静的であることが予想される。すなわち、クライアント計算デバイス１１０とネットワーク１３０との間で送信されるデータ・パケットは、一般に、同じルーティング経路をたどる。したがって、現在のルーティング経路と記憶されたルーティング経路とがしきい値類似度（例えば、しきい値数の共有ポイントまたは類似ポイント、しきい値パーセンテージの共有ポイントまたは類似ポイントなど）を有する場合、デバイス１２０は、検証が成功したことを決定し得る。しきい値類似度は、メモリ２０４に記憶されるパケット・ヘッダ検証ルールにおいて定義され得る。現在のルーティング経路と記憶されたルーティング経路とがしきい値類似度を有しない場合、デバイス１２０は、検証が不成功であったことを決定し、それによって、クライアント計算デバイス１１０とネットワーク１３０との間の通信に対する潜在的攻撃または攻撃を示し得る。いくつかの実装形態では、パケット・ヘッダ検証ルールは、異なるセキュリティ・レベルについて異なるしきい値類似度を定義し得る。
【００３６】
いくつかの実装形態では、現在のルーティング経路は、例えば、ルーティング経路における変化を追跡するために、２つ以上の記憶されたルーティング経路と比較され得る。さらなる実装形態では、着信ヘッダの検証の成功に応答して（すなわち、現在のルーティング経路と記憶されたルーティング経路との比較の成功に基づいて）、デバイス１２０は、将来の着信パケットのルーティング経路との比較のためにメモリに現在のルーティング経路を記憶し得る。
【００３７】
例えば、デバイス１２０からのルーティング経路における最初の３つのホストはローカル・ネットワークに属することが仮定され得、したがって、最初の３つのホストの識別情報への変更はセキュリティに対する攻撃または脅威として受け取られ得る。一貫性としきい値類似度とに基づくルーティング経路の検証は、したがって、ネットワーク・セキュリティ・デバイス１２０が侵入を自律的に検出し、防止することを可能にする。さらに、プロセッサ２００は、ルーティング経路における差分の重大度および影響を評価するためにそれらの差分を分析するように構成され得る。
【００３８】
他の例では、現在のルーティング経路の検証はルーティング経路上のポイントのロケーションに基づき得る。したがって、パケット・ヘッダ検証ルールは、地理的ロケーションに制限レベルを関連付ける制限付きロケーション・リストを定義し得る。いくつかの実装形態では、制限付きロケーション・リストは、予備検証のために使用されるリストと同じであり得るが、他の例では、予備検証ルールおよびパケット・ヘッダ検証ルールは、異なるそれぞれの制限付きロケーション・リストを定義し得る。
【００３９】
したがって、検証を実行するために、デバイス１２０は、現在のルーティング経路の１つまたは複数のロケーションが制限付きロケーション・リスト上のロケーションに一致するかどうかを決定し得る。現在のルーティング経路のロケーションのいずれも制限付きロケーション・リスト上の制限付きロケーションに一致しないとき、検証が成功したことが決定される。すなわち、ロケーションのいずれも制限レベルを有しない（例えば、「制限なし」の指示を有するか、または制限付きロケーション・リスト上にない）とき、検証が成功したことが決定される。いくつかの実装形態では、制限付きロケーション・リストは、セキュリティ・レベルまたはセッションに基づいて変動し得る。例えば、ダッシュボード・アプリケーション２１６は、オペレータが地理的ロケーションをリストに追加する、もしくはリストから削除するか、またはリスト上の地理的ロケーションの制限レベルを変更するためのクライアント計算デバイス１１０におけるユーザ・インターフェースを与え得る。さらに、ユーザ・インターフェースは、オペレータが、ルーティング経路上のポイントのロケーションが所与の地理的ロケーションに一致することが決定された時に基づいて行われるべき１つまたは複数のアクションを定義することを可能にし得る。ジオコーディング（ｇｅｏｃｏｄｉｎｇ）またはロケーション情報に基づくそのような地理的フィルタは、したがって、デバイスが、潜在的な脅威または攻撃を自律的に評価し、それらの潜在的な脅威または攻撃をオペレータに警告することを可能にする。
【００４０】
いくつかの例では、デバイス１２０は、パケットの順序付け情報に基づいて検証を実行するように構成され得る。特に、順序付け情報は、セッションにおけるパケットのコンテキストの識別を可能にし得る。例えば、パケットは、クライアント計算デバイス１１０からの要求（例えばダウンロードなど）に対する応答の一部として、クライアント計算デバイス１１０への送信用であり得る。したがって、順序付け情報は、そのようなものとしてパケットを識別する応答シーケンスを含むことができる。
【００４１】
検証を実行するために、デバイス１２０は、最初に、例えば、メモリ２０４に記憶されたキャッシュからセッション情報を取得し得る。セッション情報は、例えば、セッション開始時間、セッション識別子、初期化情報（例えば初期ルーティング経路など）、クライアント計算デバイス１１０によって送信された要求およびネットワーク１３０から受信された応答を示し得る。デバイス１２０は、受信されたパケットのヘッダから応答シーケンスをさらに取得し得る。デバイス１２０は、次いで、応答シーケンスがセッション情報に対応するかどうかを決定し得る。例えば、デバイス１２０は、応答シーケンスが、クライアント計算デバイス１１０によって送信された要求に正確に応答するかどうかを決定し得る。他の例では、デバイス１２０は、ネットワーク１３０から応答がすでに受信されているかどうかを決定し得る。デバイス１２０が、応答シーケンスがセッション情報に対応することを決定したとき、デバイス１２０は、検証が成功したことをさらに決定し得る。デバイス１２０が、応答シーケンスがセッション情報に対応していない（例えば、応答がすでに受信されている、応答シーケンスが要求に対応していないなど）ことを決定したとき、デバイス１２０は、検証が不成功であったことをさらに決定する。デバイス１２０は、したがって、クライアント計算デバイス１１０とネットワーク１３０との間のセッションのコンテキストにおけるパケットの妥当性を自律的に決定し得る。
【００４２】
またさらなる例では、デバイス１２０は、パケットの通信プロトコルに基づいて検証を実行するように構成され得る。特に、パケット・ヘッダは、パケット・ヘッダに含まれる情報の一般的に容認される長さ、サイズ、順序、および他のフォーマッティングを含む標準インターネット通信プロトコルに従ってフォーマットされ得る。したがって、検証を実行するために、デバイス１２０は、パケット・ヘッダの構造において利用される通信プロトコルを識別し得る。例えば、デバイス１２０は、どのタイプの通信プロトコルが使用されるかを決定するために、パケット・ヘッダの構造をあらかじめ記憶された通信プロトコル構造と比較し得る。検証を実行するために、デバイス１２０は、識別された通信プロトコルをパケット・ヘッダ検証ルールにおいて定義されたベースライン通信プロトコルと比較し得る。例えば、ベースライン通信プロトコルは、１つまたは複数の許容できる通信プロトコルを識別し得る。いくつかの実装形態では、パケット・ヘッダ検証ルールは、許容できない通信プロトコルをさらに識別し得る。識別された通信プロトコルがベースライン通信プロトコルに一致するとき、検証が成功したことが決定され得る。識別された通信プロトコルがベースライン通信プロトコルに一致しないとき、検証が不成功であったことが決定され得る。他の実装形態では、識別された通信プロトコルが許容できないことが決定された（例えば、利用される通信プロトコル自体がクライアント計算デバイス１１０とネットワーク１３０との間の通信に対する脅威または攻撃を示す）とき、やはり検証が不成功であったことが決定され得る。
【００４３】
いくつかの実装形態では、検証は、（例えば、ルーティング経路一貫性、ロケーション、順序付け、および構造に基づく）２つ以上のタイプの検証の組合せであり得る。例えば、デバイス１２０は、検証が成功したことを決定するために、すべてのタイプの検証が成功することを必要とし得る。他の例では、デバイス１２０は、（例えば、１つの検証を実行し、次いで後続の検証を実行するなど）検証のタイプに優先度または順序を付け得る。必要とされる検証または検証のタイプ、ならびに検証の順序付けは、例えば、割り当てられたセキュリティ・レベルに基づいて定義され得る。さらに、成功した検証と不成功であった検証の組合せがセキュリティ脅威の重大度を決定し得る。複数の検証の管理は、以下でさらに説明するように、エラー処理プロシージャによって、またはエラー処理プロシージャとともに処理され得る。
【００４４】
例えば、パケット・ヘッダ検証は、請求によらない着信トラフィックをブロックするデバイス１２０のファイアウォールの使用を介してなど、直接攻撃の識別とさらに組み合わせられ得る。さらに、デバイス１２０は、クライアント計算デバイス１１０を走査するプロセス（例えばポート走査）、ならびに既知のエクスプロイトおよびフィンガープリンティングの試みを検出し得る。例えば、ネットワーク１３０からデバイス１２０において受信された請求によらないかまたはその他の理由で未知の要求は、ランダム応答を受け得る。
【００４５】
ブロック４２０において、ネットワーク・セキュリティ・デバイス１２０は、ブロック４１５において実行された検証が成功したかどうかを決定する。検証が成功したことが決定された場合、ネットワーク・セキュリティ・デバイスはブロック４２５に進む。
【００４６】
ブロック４２５において、ネットワーク・セキュリティ・デバイス１２０、特にプロセッサ２００は、パケットをパケットの宛先（すなわちネットワーク１３０またはクライアント計算デバイス１１０）に送信するように通信インターフェース２０８を制御する。
【００４７】
検証が不成功であったことが決定された場合、ネットワーク・セキュリティ・デバイス１２０はエラー処理プロシージャのためのブロック４３０に進む。エラー処理プロシージャは、割り当てられたセキュリティ・レベル、実行された検証の１つまたは複数のタイプ、検出された特定のエラー条件、または上記の組合せに基づいて変動し得る。例えば、ルーティング経路におけるいくつかの地理的ロケーション、またはいくつかの通信プロトコルの検出は、マルウェアなど、脅威の存在を肯定的に示し得、したがって、ネットワーク・セキュリティ・デバイス１２０は、ネットワーク１３０とクライアント計算デバイスとの間の通信を終了し得る。特に、プロセッサ２００は、ネットワーク１３０から切断するように通信インターフェース２０８を制御し得る。
【００４８】
他の例では、検証の不成功は、ネットワーク１３０の条件における無害の変化または別の悪意のないイベントを示し得る。例えば、クライアント計算デバイス１１０のオペレータは、高帯域幅アプリケーション（例えば、ビデオ・ストリーミング、大きいファイルのダウンロードなど）を使用することを開始し得、したがって、ネットワーク使用量が増加し得る。したがって、検証の不成功に応答して、ネットワーク・セキュリティ・デバイス１２０は、例えば、異なるタイプの検証に基づいて、第２の検証を実行するように構成され得る。他の例では、デバイス１２０は、別の検証の不成功に応答して、さらなるアクションが行われ得る（例えば、接続が終了され得る）ように、より高いセキュリティ・レベルを割り当て得る。
【００４９】
いくつかの実装形態では、ネットワーク・セキュリティ・デバイス１２０は、エラー条件が検出され、エラー条件に応答してデバイス１２０によってアクションが行われた（例えば、接続が終了された、セキュリティ・レベルが引き上げられたなど）ことのクライアント計算デバイス１１０における指示をさらに与え得る。デバイス１２０は、エラー条件が検出されたことの電子メール、テキスト・メッセージ、または他の好適な通知など、別のタイプの通知を与えるようにさらに構成され得る。
【００５０】
次に図５を参照すると、通信を仲介するための例示的な方法５００が示されている。特に、方法５００は、ネットワーク使用検証を実行するためのものである。システム１００における方法５００の実行とともに、特に、図１および図２に示された構成要素を参照しながら、方法５００について説明する。他の実装形態では、方法５００は他の好適なシステムによって実行され得ることが企図される。
【００５１】
方法５００は、例えば、セッション中のネットワーク１３０とクライアント計算デバイス１１０との間の送信のためのパケットの受信に応答して、ブロック５０５において開始される。他の例では、方法５００は、所定の時刻に、または所定の間隔で開始され得る。例えば、デバイス１２０は、時刻を追跡するおよび／または所定の間隔の経過を追跡するための独立したリアルタイム・クロックを含み得る。ブロック５０５において、ネットワーク・セキュリティ・デバイス１２０は、メモリ２０４から、記憶されたネットワーク・トラフィック量データを取得する。記憶されたネットワーク・トラフィック量データは、個々のポートによるトラフィック、指定されたホストへのまたは指定されたホストからのトラフィック、指定されたネットワークへのまたは指定されたネットワークからのトラフィック、および指定された地理的領域へのまたは指定された地理的領域からのトラフィックのうちの１つまたは複数を含み得る。特に、記憶されたネットワーク・トラフィック量データは、方法５００の前の反復の平均または合計トラフィック量を示し得る。記憶されたネットワーク・トラフィック量データは、指定された時間間隔にわたる移動平均および／または別個の間隔にわたる平均であり得る。いくつかの実装形態では、記憶されたネットワーク・トラフィック量データは、いくつかの時間間隔にわたって取得された複数の測定値を含むことができる。
【００５２】
ブロック５１０において、デバイス１２０は現在のネットワーク・トラフィック量を検出する。特に、デバイス１２０は、個々のポートによるトラフィック、指定されたホストへのまたは指定されたホストからのトラフィック、指定されたネットワークへのまたは指定されたネットワークからのトラフィック、および指定された地理的領域へのまたは指定された地理的領域からのトラフィックのうちの１つまたは複数の対応する現在の測定値を検出し得る。
【００５３】
ブロック５１５において、デバイス１２０は、記憶されたネットワーク・トラフィック量データと現在のネットワーク・トラフィック量とがしきい値類似度の範囲内であるかどうかを決定するために、記憶されたネットワーク・トラフィック量データを現在のネットワーク・トラフィック量と比較する。例えば、しきい値類似度は、パーセンテージ差、標準偏差差、または絶対値差のうちの１つまたは複数に基づき得る。特に、メモリ２０４は、適用すべきしきい値類似度を定義するネットワーク・トラフィック・ルールを記憶し得る。例えば、しきい値類似度は、異なる時間間隔、異なるタイプの量、異なるセキュリティ・レベルなどに基づいて変動し得る。
【００５４】
一例では、ネットワーク・トラフィック・ルールは、前に記録された平均に対する１５０％の量の増加が有意である（すなわち、１５０％の量の増加はしきい値類似度要件を満たさないことがある）ことを定義し得る。他の例では、しきい値類似度は、１２５％、１７５％、２００％または他の値として定義され得る。さらなる例では、量の増加が前の平均を１標準偏差または２標準偏差だけ超過する場合、その量の増加は有意である（すなわち、しきい値類似度要件を満たさない）と考えられ得る。さらなる例では、（例えば、すべてのポートにわたって測定される）総トラフィック量の５０％の増加が有意であると考えられ得、一方、個々のポートからのトラフィックの増加のためのしきい値は２５％であり得る。複数のしきい値および平均が同じタイプのトラフィックに適用し得る。例えば、（例えば、すべてのポートにわたって測定される）総ネットワーク・トラフィック量が５００ミリ秒と２秒の両方にわたって測定され得、しきい値類似度がいずれかのまたは両方の間隔にわたって定義され得る。いくつかの実装形態では、より低いしきい値類似度（すなわち、記憶されたネットワーク・トラフィック量データと現在のネットワーク・トラフィック量データとがより類似することを必要とする）が、より低いセキュリティ・レベルにおいて適用されるしきい値類似度に対してより高いセキュリティ・レベルにおいて適用され得る。
【００５５】
ブロック５２０において、デバイス１２０は、記憶されたネットワーク・トラフィック量データと現在のネットワーク・トラフィック量とが指定されたしきい値の範囲内であるかどうかを決定する。決定が肯定的であるとき、デバイス１２０はブロック５２５に進む。
【００５６】
ブロック５２５において、デバイス１２０は、ネットワーク使用検証が肯定的であることを決定する。いくつかの実装形態では、デバイス１２０は、メモリ２０４に現在のネットワーク・トラフィック量を記憶することができる。
【００５７】
ブロック５２０において、決定が否定的である場合、デバイス１２０はブロック５３０に進む。ブロック５３０において、デバイス１２０は、ネットワーク使用検証が否定的であることを決定し、エラー処理プロシージャに進み得る。
【００５８】
図６は、それぞれのクライアント計算デバイス６１０−１、６１０−２、および６１０−３に、およびそれぞれのネットワーク６３０−１、６３０−２、および６３０−３に接続された複数のネットワーク・セキュリティ・デバイス６２０−１、６２０−２、および６２０−３（一般的にデバイス６２０と呼ばれ、総称してデバイス６２０と呼ばれる。この名称は本明細書の他の場所で使用される）を含む、例示的なシステム６００を示す。システム６００において、ネットワーク・セキュリティ・デバイス６２０は、暗号化された通信リンク６５５−１、６５５−２、および６５５−３を介して集中コマンド・センター６５０にさらに接続される。集中コマンド・センター６５０は、サーバ上でホストされ得、ネットワーク・セキュリティ・デバイス６２０のフリートを管理するように構成され得る。
【００５９】
動作において、ネットワーク情報、パケット・ヘッダ情報、ネットワーク・トラフィックなどの検証の不成功の識別などによって、デバイス６２０によって脅威が検出されると、検証の結果が、さらなる分析または処理のために、暗号化された通信リンク６５５によって集中コマンド・センター６５０に通信され得る。いくつかの実装形態では、すべての検証が、成功にかかわらず、分析、さらなる処理、またはログ記録のために集中コマンド・センター６５０に送信され得る。集中コマンド・センター６５０のオペレータは、したがって、ネットワーク・セキュリティ・デバイス６２０のフリートの監督を行い得る。
【００６０】
ネットワーク・セキュリティ・デバイス６２０は、脅威が検出されると、フリートの集中制御を可能にするための集中コマンド・センター６５０からのコマンドに応答するようにさらに構成され得る。例えば、ネットワーク・セキュリティ・デバイス６２０のプロセッサは、集中コマンド・センター６５０からの切断コマンドの受信に応答して、ネットワーク・セキュリティ・デバイス６２０のそれぞれのネットワーク６３０から切断するようにネットワーク・セキュリティ・デバイス６２０の通信インターフェースを制御するように構成され得る。他の例では、プロセッサは、集中コマンド・センター６５０からのリセット・コマンドの受信に応答して、デバイス６２０を出荷時設定にリセットするように構成され得る。すなわち、リセットは、デバイス６２０のメモリからすべての記憶された構成設定（例えば、オペレータ資格証明、ネットワーク資格証明、カスタム・セキュリティ・レベル設定など）を消去し得る。
【００６１】
図７は、スタンドアロン・ポータブル・デバイスとしての例示的なネットワーク・セキュリティ・デバイス７００を示す。ネットワーク・セキュリティ・デバイス７００は、プロセッサおよびメモリ（図示せず）、ならびに無線ネットワーク通信のためのアンテナ（図示せず）を格納する本体７１０を含む。ネットワーク・セキュリティ・デバイス７００は、ホスト・コンピュータのＵＳＢレセプタクルと係合し、それによって、デバイス７００からホスト・コンピュータへの接続を与えるように構成されたＵＳＢコネクタ７２０をさらに含む。他の実装形態では、コネクタ７２０は、デバイス７００とホスト・コンピュータとの間の有線接続を与えるようにホスト・コンピュータのレセプタクルと好適に係合するための異なる構成を有し得る。ネットワーク・セキュリティ・デバイス７００は、したがって、ネットワーク・セキュリティ機能を与えながら、ポータブル（例えば、ポケット、ハンドバッグ、またはブリーフケースの中などで簡便に携行されるほど十分に小さい）であり得る。他の実装形態では、ネットワーク・セキュリティ・デバイスの機能は計算デバイスに一体化され得る。
【００６２】
図８は、クライアント計算デバイス１１０のディスプレイ上に提示されるダッシュボード・アプリケーション２１６の例示的なユーザ・インターフェース８００を示す。例えば、ダッシュボード・アプリケーション２１６は、ユーザ・インターフェース８００を生成するためにクライアント計算デバイス１１０によって実行可能であり得る。ユーザ・インターフェース８００は、ユーザが、ネットワーク・セキュリティ・デバイス１２０に対するネットワーク接続、セキュリティ設定をセット・アップし、認証を行う（例えば、資格証明を与える）ことを可能にするための対話型ポータルを含み得る。
【００６３】
ユーザ・インターフェース８００は、（例えば、ネットワークを介して）デバイスが接続される国を示す対話型マップをさらに含み得る。対話型マップは、例えば、異なる色、パターンなどの描写を介して、履歴データに対する現在のデータのさらなる情報を与え得る。対話型マップは、さらなる異なる色、パターンなどの描写を介して制限付きアクセス・リスト上で識別される国をさらに示し得る。
【００６４】
ユーザ・インターフェース８００は、ネットワークのヒートマップ、未加工の攻撃試みおよびそれらの攻撃試みのソースのリスト、それぞれの個々の攻撃試みの未加工の組合せ情報の分析による高レベル攻撃の識別、およびクライアント計算デバイス１１０をセキュアにするために行われたアクションの履歴およびその履歴に関連付けられる意思決定のうちの１つまたは複数を提示するようにさらに構成され得る。ユーザ・インターフェース８００は、セッション中に確立された接続の数、セッションの持続時間にわたる総ネットワーク・トラフィック、平均使用速度、システム・リソース消費量、システム・ログなど、セッション情報を示す対話型ウェブ・ポータルをさらに与え得る。
【００６５】
ユーザ・インターフェース８００は、ユーザに通知とアラートとを与えるための、ならびにデバイス１２０によって検出されたイベントの重大度のレベルに従ってデバイス１２０によって行われるアクションを反映する、通知領域をさらに与えられ得る。例えば、アクションは、ユーザ・インターフェース８００において通知を与えること、クライアント計算デバイス１１０においてデスクトップ通知を与えること、クライアント計算デバイス１１０において音声アラートを与えること、およびネットワーク１３０からデバイス１２０を自動的に切断することのうちの１つまたは複数を含み得る。いくつかの実装形態では、ユーザ・インターフェース８００は、検出されたイベントに対応する通知およびアクションのタイプを（例えば、通知を却下することによって）管理するための構成オプションを与え得る。
【００６６】
ネットワーク・セキュリティ・デバイスは、したがって、クライアント計算デバイスとネットワークとの間の通信を仲介し得る。ネットワーク・セキュリティ・デバイスは、ネットワーク情報を分析し、比較し、処理し、検証し、異なる結果を組み合わせ、接続が危険にさらされているかどうかを決定し得る。特に、ネットワーク・セキュリティ・デバイスは、ネットワーク・セッション中に受信された未加工情報の詳細な識別情報を使用し、その情報の分析によって、識別された脅威の重大度および影響に従ってそれらの脅威に重みを割り当てる。したがって、攻撃が行われたとき、ネットワーク・セキュリティ・デバイスは、各攻撃ベクトルを分離し、分析し、各攻撃ベクトルのための重みを設定し、それらの重みを互いに相互参照し得る。したがって、ネットワーク・セキュリティ・デバイスは、強い攻撃ベクトルの組合せと比較して、弱い攻撃ベクトルの組合せに直面したとき、異なって反応し得る。さらに、ネットワーク・セキュリティ・デバイスは、組み合わせられたとき、クライアント計算デバイスへのおよびクライアント計算デバイスからの通信に重大な脅威を呈する、異なる重みをもつベクトルの組合せに相応して応答し得る。ネットワーク・セキュリティ・デバイスは、セッション中にこれらの検証および識別を動的に、常時、自律的に（すなわち、オペレータの監督または承認を必要とすることなしに）実行し得る。
【００６７】
請求項の範囲は、上記の例に記載された実施形態によって限定されるべきでなく、説明全体に一致する最も広い解釈を与えられるべきである。
【図１】
2021512564.tif 000004
【図２】
2021512564.tif 000005
【図３】
2021512564.tif 000006
【図４】
2021512564.tif 000007
【図５】
2021512564.tif 000008
【図６】
2021512564.tif 000009
【図７】
2021512564.tif 000010
【図８】
2021512564.tif 000011
【国際調査報告】
2021512564.tif 000012
2021512564.tif 000013