(57)【要約】  ネットワーク・マッピングのためのシステムは、インターフェースとプロセッサとを含む。インターフェースは、指紋を使用してアドレスの組をスキャンするための指示を受信するように構成されている。プロセッサは、アドレスの組の内のアドレスに対して、アドレスに関連付けられている応答を受信し、応答が指紋と一致するか否かを決定し、そして応答が指紋と一致する場合、クライアント・ネットワーク・データベースにアドレスを保存する、ように構成されている。【選択図】無
2019532601.tif 000002
【特許請求の範囲】
【請求項１】
指紋を使用してアドレスの組をスキャンする指示を受信する、ように構成されているインターフェースと、
アドレスの組の内のアドレスに対し、
前記アドレスに関連付けられている応答を受信し、
前記応答が前記指紋と一致するか否かを決定し、そして
前記応答が前記指紋と一致する場合、クライアント・ネットワーク・データベースに前記アドレスを保存する、ように構成されているプロセッサと
を備えるネットワーク・マッピングのためのシステム。
【請求項２】
前記アドレスの組が、全てのインターネット・アドレスを備える、請求項１に記載のシステム。
【請求項３】
前記アドレスの組が、所定のサブセットのアドレスを備える、請求項１に記載のシステム。
【請求項４】
前記プロセッサが、更に、前記アドレスの組の前記アドレスに対し、アドレスの前記組の前記アドレスに関連付けられている応答を要求するように構成されている、請求項１に記載のシステム。
【請求項５】
前記応答を要求することが、ネットワーク情報データベースから前記応答を要求することを備える、請求項４に記載のシステム。
【請求項６】
前記ネットワーク情報データベースに格納されている応答が、前記インターネットをスキャンすることによりコンパイルされた応答を備える、請求項５に記載のシステム。
【請求項７】
前記インターネットをスキャンすることが、ペイロードをインターネット・アドレスの組に提供することを備える、請求項６に記載のシステム。
【請求項８】
前記応答を要求することが、前記アドレスから前記応答を要求することを備える、請求項４に記載のシステム。
【請求項９】
前記アドレスから前記応答を要求することが、ペイロードを前記アドレスに提供することを備える、請求項８に記載のシステム。
【請求項１０】
前記指紋が、クライアント・ネットワークに関連付けられている、請求項１に記載のシステム。
【請求項１１】
前記指紋が、開放ポートの組を備える、請求項１に記載のシステム。
【請求項１２】
前記指紋が、サービスおよび関連付けられているポートの組を備える、請求項１に記載のシステム。
【請求項１３】
前記指紋が、証明書を備える、請求項１に記載のシステム。
【請求項１４】
前記指紋が、公開暗号化鍵を備える、請求項１に記載のシステム。
【請求項１５】
前記指紋が、テキスト・パターンを備える、請求項１に記載のシステム。
【請求項１６】
前記テキスト・パターンが、ドメイン名を備える、請求項１５に記載のシステム。
【請求項１７】
前記テキスト・パターンが、ホスト名を備える、請求項１５に記載のシステム。
【請求項１８】
前記指紋が、識別要素の組み合わせを備える、請求項１に記載のシステム。
【請求項１９】
指紋を使用してアドレスの組をスキャンする指示を受信するステップと、
アドレスの組の内のアドレスに対して、
プロセッサを使用して、アドレスに関連付けられている応答を受信し、
前記応答が指紋と一致するか否かを決定し、そして
前記応答が指紋と一致する場合、クライアント・ネットワーク・データベースにアドレスを保存する、
ステップと
を備えるネットワーク・マッピングの方法。
【請求項２０】
ネットワーク・マッピングのためのコンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品が、非一時的コンピュータ可読記憶媒体の中に具現化されていて、かつ
指紋を使用してアドレスの組をスキャンする指示を受信するステップ、および
アドレスの組の内のアドレスに対して、
前記アドレスに関連付けられている応答を受信し、
前記応答が指紋と一致するか否かを判断し、そして
前記応答が指紋と一致する場合、クライアント・ネットワーク・データベースに前記アドレスを保存する、
ステップ
のためのコンピュータ命令を備える、コンピュータ・プログラム製品。
【発明の詳細な説明】
【背景技術】
【０００１】
インターネットにより接続されているアセット（インターネット接続アセット）（例えば、コンピュータ、モバイル機器、サーバ・システム、クライアント・システム、ＩｏＴ機器等）は、インターネットと通信するコンピューティング・システムを備える。インターネット接続アセットは、一般に、１つまたは複数のアドレス指定可能な公開通信ポートを含み、これにより任意のインターネット接続デバイスが、インターネット接続アセットに問合せすることが可能になる。いくつかのデバイスでは、1つまたは複数のアクセス可能な公開ポートを介して、さまざまな種類の接続（例えば、ＨＴＴＰ（ハイパーテキスト送信プロトコル：HyperText Transfer Protocol）接続、ＨＴＴＰＳ（ハイパーテキスト送信プロトコル・セキュアhypertext transfer protocol-secure）接続、ＦＴＰ（ファイル転送プロトコル：File Transfer Protocol）接続、ＦＴＰＳ（ファイル転送プロトコル・セキュア）接続、Ｔｅｌｎｅｔ接続、ＳＳＨ（セキュア・ソケット・シェル）接続等）が可能である。インターネット接続アセットにおいては、さまざまな構成オプションを備える、さまざまなソフトウェアを実行する、さまざまな種類のハードウェア・デバイスを使用することが出来るが、これにより無数の可能性があるセキュリティの脆弱性が生じてしまう。典型的なシステム管理者が、自分の監視下にあるシステムの細部を全て関知することはできないため、システムの脆弱性が、検出されずかつ修正されないことは起こり得る。
【発明の概要】
【課題を解決するための手段】
【０００２】
本発明は、プロセス、装置、システム、組成物（composition of matter）、可読記憶媒体に書込まれているコンピュータ・プログラム製品、および／またはプロセッサに結合されているメモリによって提供されるおよび／またはそのようなメモリに格納されている命令を実行するように構成されているプロセッサを備える多数の方法で実施することが出来る。本明細書では、これらの実装形態、または本発明が取り得る他の任意の形態を、技術と呼ぶことがある。一般に、開示されるプロセスのステップの順序は、本発明の範囲内で、変更することができる。特に明記しない限り、タスクを実行するように構成されていると記載されているプロセッサまたはメモリの様な構成部品は、所与の時間にタスクを実行するように一時的に構成されている汎用構成部品、またはタスクを実行するように構成されている特定構成部品として実施させることが出来る。本明細書で使用されように、用語「プロセッサ」は、コンピュータ・プログラム命令などのデータを処理するように構成されている１つまたは複数のデバイス、回路、および／または処理コアを意味する。
【０００３】
本発明の１つ以上の実施態様の詳細な説明が、以下に、本発明の原理を例示する添付の図面と共に提供される。本発明は、以下の実施態様に関連して説明されるが、本発明は、何れかの実施態様に限定されることはない。本発明の範囲は、特許請求の範囲によってのみ限定され、本発明は、多数の代替物、修正物および等価物を包含する。多数の特定の詳細が、本発明の完全な理解を提供するために、以下の説明に記載されている。これらの詳細は、例示の目的のために提供されていて、かつ本発明は、これらの具体的な詳細の一部または全部がなくても特許請求の範囲に従って実施することができる。明確にするために、本発明に関する技術分野で知られている技術的事項は、本発明が不必要に曖昧にならないように詳細には説明されていない。
【０００４】
指紋を使用してネットワーク・マッピングをするためのシステムは、指紋を使用してアドレスの組をスキャンするための指示を受信するように構成されているインターフェースと、アドレスの組内のアドレスに対して、関連付けられている応答を受信し、応答が指紋と一致するか否かを決定し、応答が指紋と一致する場合、クライアント・ネットワーク・データベースにアドレスを格納するように構成されているプロセッサとを備える。いくつかの実施態様では、指紋を使用してネットワーク・マッピングをするためのシステムは、プロセッサに結合されていて、かつプロセッサに命令を提供するように構成されているメモリを備える。
【０００５】
いくつかの実施態様では、指紋を使用してネットワーク・マッピングをするためのシステムは、クライアント・ネットワークに関連付けられているコンピュータ・システムを識別するためのシステムを備える。指紋は、コンピュータ・システムのための１つまたは複数の識別基準を備える。いくつかの実施態様では、指紋は、クライアント・ネットワークに関連付けられていることが知られている公開情報の組を備える。様々な実施態様では、指紋は、開放ポートの組（例えば、クライアント・ネットワークに相関していると既に決定されている特定の開放ポートの組）、サービスおよび関連付けられているポートの組、暗号化証明書、公開暗号鍵、テキスト文字列、テキスト部分文字列、テキスト文字列パターン、ドメイン名、ドメイン名パターン、ホスト名、ホスト名パターン、識別要素の組み合わせ、またはその他の適切な指紋情報を備える。いくつかの実施態様では、ネットワーク・マッピングのためのシステムは、ネットワーク・データを網羅的にスキャンし、かつ指紋と一致するネットワーク・データを識別することによって、クライアント・ネットワークをマッピングする。いくつかの実施態様では、ネットワーク・マッピングのためのシステムは、ネットワーク・スキャナによって収集されかつネットワーク・データベースに格納されているデータをスキャンする（例えば、ネットワーク・スキャン・ツールは、最初にネットワークに関する全ての可能な（例えば、インターネット全体の）情報を収集し、そしてそれをネットワーク情報データベースに格納し、次で、このネットワーク・マッピング・システムは、ネットワーク情報データベース内のデータをスキャンして、指紋と一致する、格納されている情報を有するシステムを見出す）。いくつかの実施態様では、ネットワーク・マッピングのためのシステムは、インターネット上のネットワーク・アドレスをスキャンし、指紋と一致する情報を返すシステムが受信した情報を分析する。クライアント・ネットワークの部分であると決定されるシステムが見つかった場合（例えば、その情報が指紋情報と一致する場合）、このシステムに関連付けられているアドレスは、クライアント・ネットワーク・データベースに格納される。いくつかの実施態様では、他のシステム情報が、クライアント・ネットワーク・データベースに追加的に格納される。
【０００６】
本発明の様々な実施態様が、以下の詳細な説明および添付の図面において開示されている。
【図面の簡単な説明】
【０００７】
【図１】ネットワーク・システムの一実施態様を示すブロック図である。
【図２】ネットワーク・システムの一実施態様を示すブロック図である。
【図３】ネットワーク・マッピング・システムの一実施態様を示すブロック図である。
【図４】ネットワーク・マッピングのためのプロセスの一実施態様を示す流れ図である。
【図５】応答を要求するためのプロセスの一実施態様を示す流れ図である。
【図６】応答が、指紋と一致するか否かを判断するためのプロセスの一実施態様を示す流れ図である。
【図７】応答が、開放ポート指紋基準タイプの組を備える指紋基準タイプについての指紋基準に一致するか否かを決定するプロセスの一実施態様を示す流れ図である。
【図８】応答が、サービスおよび関連付けられているポートの指紋基準タイプを備える指紋基準タイプについての指紋基準に一致するか否かを決定するためのプロセスの一実施態様を示す流れ図である。
【図９】応答が、証明書指紋基準タイプを備える指紋基準タイプについての指紋基準に一致するか否かを決定するプロセスの一実施態様を示す流れ図である。
【図１０】応答が、公開暗号鍵指紋基準タイプを備える指紋基準タイプの指紋基準に一致するか否かを決定するプロセスの一実施態様を示す流れ図である。
【図１１】応答が、テキスト・パターン指紋基準タイプを備える指紋基準タイプについての指紋基準と一致するか否かを決定するプロセスの一実施態様を示す流れ図である。
【発明を実施するための形態】
【０００８】
図１は、ネットワーク・システムの一実施態様を示すブロック図である。いくつかの実施態様では、図１のネットワーク・システムは、指紋を使用してネットワーク・マッピングをするためのシステムを備える。図示の例では、図１はネットワーク１００を備える。様々な実施態様では、ネットワーク１００は、ローカルエリア・ネットワーク、ワイドエリア・ネットワーク、有線ネットワーク、無線ネットワーク、インターネット、イントラネット、ストレージエリア・ネットワーク、または他の適切な通信ネットワーク、の内の１つ以上を備える。管理者システム１０２とネットワーク・マッピング・システム１０４は、ネットワーク１００を介して通信する。管理者システム１０２は、管理者用のシステムを備える。様々な実施態様では、管理者システム１０２は、管理者が、アプリケーション・システム上のアプリケーションにアクセスし、データベース・システム上のデータにアクセスし、ネットワーク・マッピング・システム１０４に指示してネットワーク・マッピング・プロセスを実行させ、ネットワーク・マッピング・システム１０４からデータを受信し、ネットワーク・システム（例えば、ネットワーク・システム１０６）を構成し、ネットワーク・システムからデータを受信する、または他の適切な目的のためのシステムを備える。いくつかの実施態様では、管理者システム１０２はプロセッサおよびメモリを備える。ネットワーク・マッピング・システム１０４は、クライアント・ネットワークをマッピングするシステムを備える。いくつかの実施態様では、ネットワーク・マッピング・システム１０４は、管理者システム１０２からのコマンドに応答してネットワーク・システムに関係付けられているデータをスキャンするシステムを備える。いくつかの実施態様では、ネットワーク・マッピング・システム１０４は、ネットワーク・システムの組（ネットワーク・システム１０６、ネットワーク・システム１０８、ネットワーク・システム１１０、ネットワーク・システム１１２、ネットワーク・システム１１４、ネットワーク・システム１１６、ネットワーク・システム１１８、およびネットワーク・システム１２０）に関連付けられているデータをスキャンするシステムを備える。いくつかの実施態様では、ネットワーク・システムの組に関連付けられているデータをスキャンすることは、以前に格納されている、このネットワーク・システムの組に関連付けられているデータを分析することを備える。いくつかの実施態様では、ネットワーク・システムの組に関連付けられているデータをスキャンすることは、応答が受信されると、このネットワーク・システムの組の内の１つまたは複数のネットワーク・システムにペイロードを与えかつ受信された応答を分析することを備える。いくつかの実施態様では、ネットワーク・マッピング・システム１０４は、プロセッサおよびメモリを備える。図１の各ネットワーク・システム（例えば、ネットワーク・システム１０６）は、インターネットに接続されているシステム（例えば、ファイアウォール、ルータ、スイッチ、デスクトップ・コンピュータ、ラップトップ・コンピュータ、スマートフォン、タブレット・コンピュータ、サーバ・システム、モノのインターネット・デバイス等）を備える。様々な実施態様では、図１のシステムは、８、１３、１９７、２２２２、１００万、１億、または他の適切な数のネットワーク・システムを備える。いくつかの実施態様では、図１の各ネットワーク・システムは、インターネット・アドレスに関連付けられている。いくつかの実施態様では、インターネット・アドレスは、インターネット・プロトコル（ＩＰ）アドレスを備える。
【０００９】
いくつかの実施態様では、ネットワーク・マッピング・システム１０４は、複数のネットワーク・マッピング・システムの内の１つである。例えば、アドレスをより効率的にスキャンするために、複数のネットワーク・マッピング・システムにアドレスをスキャンすることが命令される。
【００１０】
図２は、ネットワーク・システムの一実施態様を示すブロック図である。いくつかの実施態様では、ネットワーク・システム２００は、図１のネットワーク・システム（例えば、ネットワーク・システム１０６、ネットワーク・システム１０８、ネットワーク・システム１１０、ネットワーク・システム１１２、ネットワーク・システム１１４、ネットワーク・システム１１６、ネットワーク・システム１１８、またはネットワーク・システム１２０）を備える。図示された例では、ネットワーク・システム２００は、プロセッサ２０２、データ・ストレージ２０４、およびネットワーク・インターフェース２０６を備える。いくつかの実施態様では、ネットワーク・システム２００は、インターネット接続アセット（例えば、ルータ、スイッチ、ファイアウォール、デスクトップ・コンピュータ、ラップトップ・コンピュータ、スマートフォン、タブレット・コンピュータ、サーバ・システム、モノのインターネット・デバイス、または他の適切なインターネット接続アセット）を備える。様々な実施態様では、プロセッサ２０２は、命令を実行し、データを処理し、コマンドに応答する等のためのプロセッサを備える。様々な実施態様では、プロセッサ２０２は、汎用プロセッサ、マイクロコントローラ、並列処理システム、プロセッサのクラスタ、または任意の他の適切なプロセッサを備える。様々な実施態様では、データ・ストレージ２０４は、データを格納するため、プロセッサ２０２のための命令を格納するため、構成情報を格納するため、または他の適切な情報を格納するための、データ・ストレージを備える。様々な実施態様では、データ・ストレージ２０４は、揮発性メモリ、不揮発性メモリ、磁気メモリ、光メモリ、相変化メモリ、半導体メモリ、ディスクメモリ、テープメモリ、または任意の他の適切なメモリ、の内の１つまたは複数を備える。メモリネットワーク・インターフェース２０６は、ネットワークと通信するためのネットワーク・インターフェースを備える。図示の例では、ネットワーク・インターフェース２０６は、ネットワーク通信情報２０８と複数のポート（例えば、ポート２１０）とを備える。様々な実施態様では、ネットワーク通信情報は、ネットワーク通信ソフトウェア、ネットワーク通信設定、ネットワーク通信データ、または他の任意の適切なネットワーク通信情報を備える。複数のポートは、物理ポート（例えば、ケーブルをネットワーク・システム２００に接続するためのプラグ）または仮想ポート（例えば、仮想ポート番号によって識別される仮想通信チャネル）を備える。いくつかの実施態様では、ネットワーク・インターフェース２０６は、ネットワーク・アドレス（例えば、外部ネットワーク・アドレス指定機関によって関連付けられているネットワーク・アドレス）を備える。いくつかの実施態様では、ネットワーク・システム２００との通信は、ポート番号と共にネットワーク２００のネットワーク・アドレスを指示することによって指定される。いくつかの実施態様では、ネットワーク・インターフェース２０６のいくつかのポートは、通信用に構成され（例えば、開放ポートを備える）、そして他のいくつかは、通信に応答しないように構成される。いくつかの実施態様では、ポートのサービスについての構成情報は、ネットワーク通信情報２０８に格納される。いくつかの実施態様では、いくつかのポートは、１つ以上の、特定通信サービス（例えば、ハイパーテキスト送信プロトコル（ＨＴＴＰ）、ファイル転送プロトコル（ＦＴＰ）、セキュア・シェル（ＳＳＨ）等）に関連付けられている。いくつかの実施態様では、サービスをポートに関連付ける構成情報は、ネットワーク通信情報２０８に格納される。いくつかの実施態様では、ネットワーク通信情報２０８は、暗号化情報（例えば、公開ＳＳＨ鍵、証明書等）を備える。いくつかの実施態様では、ネットワーク通信情報２０８は、１つまたは複数のネットワーク・システム名（例えば、ホスト名、ドメイン名、ホスト名の組、ホスト名パターン等）を備える。いくつかの実施態様では、ネットワーク通信情報は、サービスまたはサービスの組に関連付けられているテキスト情報（例えば、ウェルカムテキスト、接続拒否テキスト、サービス非対応テキスト、ファイル未検出テキスト、または他の適切なテキスト情報）を備える。いくつかの実施態様では、ネットワーク・インターフェース２０６は、通信仕様の組に従って既に構成されている通信ソフトウェアの組を実行するネットワーク・ハードウェア（例えば、モデム）の組を備える。
【００１１】
図３は、ネットワーク・マッピング・システムの一実施態様を示すブロック図である。いくつかの実施態様では、ネットワーク・マッピング・システム３００は、図１のネットワーク・マッピング・システム１０４を備える。いくつかの実施態様では、ネットワーク・マッピング・システム３００は、サーバ・システムを備える。図示の例では、ネットワーク・マッピング・システム３００は、プロセッサ３０２、データ・ストレージ３０４、およびネットワーク・インターフェース３０６を備える。いくつかの実施態様では、プロセッサ３０２は、命令を実行する、データを処理する、コマンドに応答する、または他の適切なプロセッサ機能を果たす、プロセッサを備える。様々な実施態様では、プロセッサ３０２は、汎用プロセッサ、マイクロコントローラ、並列処理システム、プロセッサのクラスタ、または他の任意の適切なプロセッサを備える。いくつかの実施態様では、プロセッサ３０２はネットワーク・スキャナ３０８を備える。様々な実施態様では、ネットワーク・スキャナ３０８は、ネットワーク・マッピング・システム機能を実装するソフトウェアおよび／またはハードウェアを備える。様々な実施態様では、データ・ストレージ３０４は、データを格納するため、プロセッサ３０２のための命令を格納するため、構成情報を格納するため、または任意の他の適切な情報を格納するため、のデータ・ストレージを備える。様々な実施態様では、データ・ストレージ３０４は、揮発性メモリ、不揮発性メモリ、磁気メモリ、光メモリ、相変化メモリ、半導体メモリ、ディスクメモリ、テープメモリ、または他の任意の適切なメモリ、の内の１つまたは複数を備える。図示の例では、データ・ストレージ３０４は、ネットワーク・システムを識別するための指紋を格納する指紋データベース３１０を備える。いくつかの実施態様では、指紋データベースに格納されている指紋は、それぞれ、クライアント・ネットワークに関連付けられている。いくつかの実施態様では、指紋は、１つまたは複数のネットワーク識別特性を備える。いくつかの実施態様では、ネットワーク識別特性は、ネットワーク通信情報設定（例えば、開放ポートの組、サービスおよび関連付けられているポートの組、暗号化情報、ホスト名情報、ドメイン名情報、テキスト情報等）を備える。
【００１２】
いくつかの実施態様では、データ・ストレージ３０４は、さらに、クライアント・ネットワーク情報（例えば、クライアント・ネットワークに関連付けられているインターネット・アドレス（例えば、ＩＰｖ４またはＩＰｖ６アドレス等））を格納するためのクライアント・ネットワーク・データベース３１２を備える。いくつかの実施態様では、クライアント・ネットワーク・データベース３１２は、ネットワーク・マッピング・プロセスが実行された後に、クライアント・ネットワークの範囲を記述する（例えば、クライアント・ネットワークに関連付けられていることが判明した全てのネットワーク・システムを識別する）クライアント・ネットワーク情報の組を備える。データ・ストレージ３０４は、ネットワーク情報を格納するためのネットワーク情報データベース３１４を備える。いくつかの実施態様では、ネットワーク情報は、ネットワークをスキャンした結果として受信されるネットワーク情報を備える。いくつかの実施態様では、ネットワーク情報は、インターネットをスキャンすることによってコンパイルされる応答を備える。いくつかの実施態様では、インターネットをスキャンすることは、ペイロード（例えば、所定のデータパケットまたはパケットの組）をインターネット・アドレスの組に提供することを備える。いくつかの実施態様では、ネットワークをスキャンすることは、ネットワーク・システムの組からネットワーク情報を収集することを備える。いくつかの実施態様では、ネットワークをスキャンすることは、アクセス可能な全てのネットワーク・システムからネットワーク情報を収集することを備える。様々な実施態様では、ネットワーク情報は、ネットワーク通信情報設定、ネットワーク・アドレス、対話型ネットワーク・システムによって受信される情報（例えば、ネットワーク・システム上で実行されるアクティブ・サービスの指示に応じてフォローアップ・プローブを実行することによって受信される情報）を備える。いくつかの実施態様では、ネットワーク情報は、（例えば、ストレージ・サーバ上、異なるネットワーク・システム上、クラウド・ストレージ上等に）遠隔で格納される。図示の例では、ネットワーク・インターフェース３０６は、ネットワークを介して遠隔システムと対話するためのネットワーク・インターフェースを備える。いくつかの実施態様では、ネットワーク・インターフェース３０６は、高帯域通信用に構成されているネットワーク・インターフェースを備える。
【００１３】
図４は、ネットワーク・マッピングのためのプロセスの一実施態様を示す流れ図である。いくつかの実施態様では、図４のプロセスは、図１のネットワーク・マッピング・システム１０４によって実行される。図示される例では、４００で、指紋を使用してアドレスの組をスキャンするための指示が受信される。いくつかの実施態様では、アドレスの組は、全てのインターネット・アドレスを備える。いくつかの実施態様では、アドレスの組は、所定のネットワーク（例えば、所定のアドレスのサブセット）を備える。いくつかの実施態様では、スキャンの実行指示は、管理者システムから受信される。いくつかの実施態様では、指紋は、スキャン実行指示の一部として受信される。いくつかの実施態様では、指紋は、ネットワーク・マッピング・システムによって格納される。４０２において、アドレスのこの組の内の次のアドレスに関連付けられている応答が要求される。いくつかの実施態様では、アドレスの組の内の次のアドレスは、このアドレスの組の最初のアドレスを備える。いくつかの実施態様では、この応答は、このアドレスに関連付けられているネットワーク・システムから（例えば、ネットワーク・インターフェースおよびネットワークを介して）要求される。いくつかの実施態様では、この応答は、ネットワーク情報データベース（例えば、図３のネットワーク情報データベース３１４）から要求される。いくつかの実施態様では、応答を要求する部分としての利用可能な全ての情報（例えば、ネットワーク通信情報設定、ネットワーク・アドレス、ネットワーク・システムと対話して問い合わせることによって受信される情報等）は、ネットワーク・システムから要求される。いくつかの実施態様では、要求される情報は、少なくとも一部は指紋に基づく（例えば、応答が指紋と一致するか否かを判断するのに十分な情報のみが、要求され、例えば、指紋によってテストされない情報は、要求されない）。４０４において、このアドレスに関連付けられている応答が受信される。４０６において、この応答が、この指紋と一致するか否かが決定される。いくつかの実施態様では、この応答がこの指紋と一致するか否かを決定することは、この応答データを指紋基準（１つまたは複数）と比較することを備える。この応答がこの指紋と一致しないと決定された場合、制御は４１０に進む。この応答がこの指紋と一致すると決定された場合、制御は４０８に進む。４０８において、このアドレスは、このクライアント・ネットワーク・データベースに格納される。いくつかの実施態様では、この応答は、このクライアント・ネットワーク・データベースに追加して格納される。４１０において、更にアドレス（例えば、アドレスの組の内の更なるアドレス）があるか否かが決定される。更にアドレスがあると判断された場合、制御は、４０２に移る。これ以上アドレスがないと判断された場合、このプロセスは、終了する。
【００１４】
図５は、アドレスの組の内の次のアドレスに関連付けられている応答を要求するためのプロセスの一実施態様を示す流れ図である。いくつかの実施態様では、図５のプロセスは、図４の４０２を実施する。図示される例では、５００において、この所望の応答データが、ネットワーク情報データベースに格納されているか否かが判断される。いくつかの実施態様では、この所望の応答データが、ネットワーク情報データベースに格納されているか否かを判断することは、この応答に関連付けられているこのアドレスを用いて、このネットワーク情報データベースに問い合わせることを備える。この所望の応答データが、このネットワーク情報データベースに格納されていると判断された場合、制御は５０２に移る。５０２において、この応答は、このネットワーク情報データベースから要求され、そしてこのプロセスは終了する。５００において、この所望の応答データが、このネットワーク情報データベースに格納されていないと判断された場合、制御は５０４に進む。５０４において、この応答が、このアドレスから（例えば、ネットワーク・インターフェースおよびネットワークを介して）要求される。いくつかの実施態様では、このアドレスからの応答を要求することは、ペイロードをこのアドレスに提供すること（例えば、所定のデータパケットまたはパケットのシーケンスをアドレスに提供すること）を備える。
【００１５】
図６は、応答が指紋と一致するか否かを判断するためのプロセスの一実施態様を示す流れ図である。いくつかの実施態様では、図６のプロセスは、図４の４０６を実施する。図示される例では、６００において、この指紋の次の指紋基準が選択される。いくつかの実施態様では、この次の指紋基準は、第１の指紋基準を備える。６０２において、この指紋基準タイプが決定される。様々な実施態様では、この指紋基準タイプは、開放ポート基準タイプの組、サービスおよび関連付けられているポート基準タイプの組、証明書基準タイプ、公開暗号化鍵基準タイプ、テキスト文字列基準タイプ、テキストサブ文字列基準タイプ、テキスト文字列パターン基準タイプ、ドメイン名基準タイプ、ドメイン名パターン基準タイプ、ホスト名基準タイプ、ホスト名パターン基準タイプ、または他の適切な基準タイプを備える。６０４で、この応答が、この指紋基準タイプの指紋基準と一致するか否かが決定される。この応答が、この指紋基準タイプの指紋基準と一致しないと決定された場合、制御は６０６に移る。６０６で、このプロセスは、この応答がこの指紋と一致しないことを指示し、そしてこのプロセスは終了する。この応答が、６０４におけるこの指紋基準タイプの指紋基準と一致すると決定された場合、制御は６０８に移る。６０８で、更に指紋基準があるか否かが決定される。更に指紋基準があると判断された場合、制御は６００に進む。これ以上指紋基準がないと決定された場合、制御は６１０に進む。６１０において、このプロセスは、この応答がこの指紋と一致することを指示する。図示の例では、この応答が、この指紋の全ての指紋基準に一致すると決定された場合のみ、この応答が、この指紋と一致すると決定される。
【００１６】
図７は、開放ポート指紋基準タイプの組を備える指紋基準タイプについての応答が、指紋基準と一致するか否かを判断するプロセスの一実施態様を示す流れ図である。いくつかの実施態様では、この指紋基準タイプが、開放ポート指紋基準タイプであると決定された場合、図７の流れ図は、図６の６０４を実施する。図示される例では、７００において、開放ポートの指紋の組（例えば、この指紋基準によって指示される開放ポートの組）が決定される。いくつかの実施態様では、開放ポートの組は、開放ポートに関連付けられているポート番号の組（例えば、ポート２２、８０、８０８０、および９９９９）を備える。様々な実施態様では、開放ポートの組は、１、３、８、１４、９９、または他の任意の適切な番号の開放ポートを備える。様々な実施態様では、開放ポート指紋基準の組は、個別に頻繁に見られるポートの組（例えば、ポート２２、２３、２５、８０、４４３、および８０８０）である。様々な実施態様では、開放ポート指紋基準の組は、頻繁な開放が個別に見られるいくつかの開放ポートと、頻繁な開放が個別に見られないいくつかの開放ポートとの組（（例えば、頻度の閾値よりもより頻繁に表れる）頻繁に開放されるポート８０  ８０８０、および（例えば、頻度の閾値よりも少ない頻度でしか表れない）頻繁に開放されないポート４７８０８）である。様々な実施態様では、この開放ポート指紋基準の組は、個別にまれにしか開放されない全てのポートの組（例えば、ポート１４３３、３３０６、および５４３２）である。７０２において、この応答が、開放ポートの指紋の組と一致する開放ポートを指示するか否かが決定される。この応答が、開放ポートの指紋のこの組と一致する開放ポートを指示すると決定された場合、制御は７０４に進む。７０４において、このプロセスは、この応答がこの指紋基準と一致することを指示し、そしてこのプロセスは終了する。７０２において、この応答が、開放ポートの指紋のこの組と一致する開放ポートを指示していないと決定された場合、制御は７０６に進む。７０６において、このプロセスは、この応答がこの指紋基準と一致しないことを指示する。
【００１７】
図８は、応答が、サービスおよび関連付けられているポート指紋基準タイプの組を備える指紋基準タイプの指紋基準と一致するか否かを決定するプロセスの一実施態様を示す流れ図である。いくつかの実施態様では、この指紋基準タイプが、サービスおよび関連付けられているポート指紋基準タイプの組によって決定される場合、図８の流れ図は、図６の６０４を実施する。図示されている例では、８００において、サービスおよび関連付けられているポートの指紋の組（例えば、この指紋基準によって指示されるサービスおよび関連付けられているポートの組）が、決定される。いくつかの実施態様では、サービスおよび関連付けられているポートの組は、ポート番号の組（例えば、ポート１２２、１０００、および４４４４）を含み、かつ各ポートは、ネットワーク・サービス（例えば、ＳＳＨ、ＨＴＴＰ、ＨＴＴＰＳ、ｔｅｌｎｅｔ等）に関連付けられている。様々な実施態様では、サービスおよび関連付けられているポートの組は、１、３、８、１４、９９、または任意の他の適切な番号のサービスおよび関連付けられているポートを備える。様々な実施態様では、サービスおよび関連付けられているポート指紋基準のこの組は、個別に頻繁に見られるポートの組（例えば、ポート／サービス対２２（ＳＳＨ）、２３（ｔｅｌｎｅｔ）、２５（ＳＭＴＰ）、８０（ＨＴＴＰ）、 ４４３（ＨＴＴＰＳ）および８０８０（ＨＴＴＰ）- 例えば、閾値頻度より頻繁に見られるポートの組）を備える。様々な実施態様では、サービスおよび関連付けられているポート指紋基準のこの組は、一部は個別に頻繁に見られる、および一部は個別に頻繁に見られることがない、サービスおよび関連付けられているポートの組（（例えば、頻度の閾値より頻繁に表れる）例えば、頻繁に開放されるポート８０（ＨＴＴＰ）、８０８０（ＨＴＴＰ）、および（例えば、頻度の閾値より少ない頻度で現われる）例えば、まれにしか開放されない４７８０８（ＢＡＣｎｅｔ））である。様々な実施態様では、サービスおよび関連付けられているポート指紋基準のこの組は、個別に開放されることがまれにしか見られない、サービスおよび関連付けられている全てのポートの組（例えば、ポート１４３３（ＭＳＳＱＬ）、３３０６（ＭｙＳＱＬ）、および５４３２（Ｐｏｓｔｇｒｅｓ）−例えば、頻度の閾値よりも少ない頻度で表れる）である。８０２において、この応答が、この指紋サービスおよび関連付けられているポートに一致するサービスおよび関連付けられているポートを指示するか否かが決定される。この応答が、この指紋サービスおよび関連付けられているポートに一致する、サービスおよび関連付けられているポートを指示すると決定された場合、制御は８０４に進む。８０４において、このプロセスは、この応答がこの指紋基準と一致することを指示し、そしてこのプロセスは終了する。８０２において、この応答が、この指紋サービスおよび関連付けられているポートと一致する、サービスおよび関連付けられているポートを指示していないと決定された場合、制御は８０６に進む。８０６において、このプロセスは、この応答がこの指紋基準と一致しないことを指示する。
【００１８】
図９は、応答が、証明書指紋基準タイプを備える指紋基準タイプの指紋基準に一致するか否かを決定するプロセスの一実施態様を示す流れ図である。いくつかの実施態様では、この指紋基準タイプが証明書指紋基準タイプであると決定された場合に、図９の流れ図は、図６の６０４を実施する。図示される例では、９００において、指紋証明書（例えば、指紋基準によって指示される証明書）が決定される。いくつかの実施態様では、証明書指紋は、ＳＳＬ（例えば、セキュア・ソケット・レイヤ）証明書を備える。いくつかの実施態様では、証明書指紋はトランスポート層セキュリティ（ＴＬＳ）証明書を備える。様々な実施態様では、証明書指紋は、組織名、組織の場所、組織のホスト名、組織のドメイン名、組織のサーバー名、シリアル番号、暗号鍵、サブジェクト共通名（ＣＮ）、発行者、共通名（ＣＮ）、発行者組織単位（ＯＵ）名、発行者組織名、サブジェクト組織名、サブジェクトＯＵ名、および他の適切な情報、の内の1つまたは複数を備える。様々な実施態様では、この証明書指紋基準は、上記証明書指紋タイプの内の１つ以上に対する完全一致、ファジー文字列一致、または正規表現一致、または任意の他の適切な一致を備える。９０２において、この応答が、この指紋証明書と一致する証明書を指示するか否かが決定される。この応答が、この指紋証明書と一致する証明書を指示すると決定された場合、制御は９０４に進む。９０４で、このプロセスは、この応答がこの指紋基準と一致することを指示し、そしてこのプロセスは終了する。９０２において、この応答が、この指紋証明書と一致する証明書を指示していないと決定された場合、制御は９０６に移る。９０６において、このプロセスは、この応答がこの指紋基準と一致しないことを指示する。
【００１９】
図１０は、応答が、公開暗号鍵指紋基準タイプを備える指紋基準タイプの指紋基準に一致するか否かを決定するプロセスの一実施態様を示す流れ図である。いくつかの実施態様では、図１０の流れ図は、この指紋基準タイプが、公開暗号化鍵指紋基準タイプであると決定された場合、図６の６０４を実施する。図示される例では、１０００において、指紋公開暗号化鍵（例えば、指紋基準によって指示される公開暗号化鍵）が決定される。いくつかの実施態様では、公開暗号化鍵は、ＳＳＨ公開暗号化鍵、ＳＳＬ公開暗号化鍵、ＴＬＳ公開暗号化鍵、ＨＴＴＰＳ公開暗号化鍵、または任意の他の適切な公開暗号化鍵を備える。いくつかの実施態様では、公開暗号化鍵は、暗号化された情報を（例えば、この公開暗号化鍵を提供するシステムに）送信するための暗号化情報を備える。１００２において、この応答が、この指紋公開暗号化鍵と一致する公開暗号化鍵を指示するか否かが決定される。この応答が、この指紋公開暗号化鍵に一致する公開暗号化鍵を指示すると決定された場合、制御は１００４に進む。１００４において、このプロセスは、この応答がこの指紋基準と一致することを指示し、そしてこのプロセスは終了する。１００２において、この応答が、この指紋公開暗号化鍵と一致する公開暗号化鍵を指示していないと決定された場合、制御は１００６へ進む。１００６において、このプロセスは、この応答がこの指紋基準と一致しないことを指示する。
【００２０】
図１１は、応答が、テキスト・パターン指紋基準タイプを備える指紋基準タイプの指紋基準に一致するか否かを決定するプロセスの一実施態様を示す流れ図である。いくつかの実施態様では、この指紋基準タイプがテキスト・パターン指紋基準タイプであると決定された場合、図１１の流れ図は、図６の６０４を実行する。図示される例では、１１００において、指紋テキスト・パターン（例えば、この指紋基準によって指示されるテキスト・パターン）が決定される。様々な実施態様では、このテキスト・パターンは、テキスト文字列、正規表現、ホスト名、ホスト名パターン、ドメイン名、ドメイン名パターン、会社名、組織名、管理者名、ユーザ識別子、または他の任意の適切なテキスト・パターンを備える。他の適切なテキスト・パターンの様々な実施態様では、このテキスト・パターン基準は、子会社の名前、組織の過去の名前、組織のグループまたは部門の名前、組織の一般的なエイリアスまたは通称事業名（ＤＢＡ:Doing Business As）、組織の製品の名前およびサービスライン、または他の適切なテキスト・パターンを備える。１１０２において、この応答が、この指紋テキスト・パターンと一致するテキスト・パターンを指示するか否かが決定される。様々な実施態様では、応答テキスト・パターンが指紋テキスト・パターンと一致するか否かを決定することは、この指紋テキスト・パターンがこの応答テキスト・パターンと同一であるか否かを決定すること、この指紋テキスト・パターンがこの応答テキスト・パターンの部分文字列を備えるか否かを決定すること、この応答テキスト・パターンが、指紋の正規表現のテキスト・パターンと一致するか否かを決定すること、またはこの応答テキスト・パターンがこの指紋テキスト・パターンと一致するか否かを他の適切な方法で決定することを、備える。この応答が、この指紋テキスト・パターンと一致するテキスト・パターンを指示すると決定された場合、制御は１１０４に進む。１１０４において、このプロセスは、この応答がこの指紋基準と一致することを指示し、そしてこのプロセスは終了する。１１０２において、この応答がこの指紋テキスト・パターンと一致するテキスト・パターンを指示していないと決定された場合、制御は１１０６へ進む。１１０６において、このプロセスは、この応答がこの指紋基準と一致しないことを指示する。
【００２１】
前述の実施態様は、理解を明確にする目的で、ある程度詳細に説明されているが、本発明は、提供された詳細に限定されない。本発明を実施する多くの代替方法がある。開示された実施態様は、例示的であり限定的ではない。 
【図１】
2019532601.tif 000003
【図２】
2019532601.tif 000004
【図３】
2019532601.tif 000005
【図４】
2019532601.tif 000006
【図５】
2019532601.tif 000007
【図６】
2019532601.tif 000008
【図７】
2019532601.tif 000009
【図８】
2019532601.tif 000010
【図９】
2019532601.tif 000011
【図１０】
2019532601.tif 000012
【図１１】
2019532601.tif 000013
【国際調査報告】
2019532601.tif 000014