(57)【要約】      （修正有）【課題】ユーザが当該ユーザに関する個人データを格納するサービスとインタラクションする手段であるコンピュータ装置に対するサイバー攻撃に対抗するためのシステムおよび方法を提供する。【解決手段】装置自体についてのデータに加え、ユーザが装置によってインタラクションするサービスについてのデータを収集する３１０。収集したデータを解析して、少なくとも一つのサービスからユーザの個人データがデータ流出したことによって装置に対するサイバー攻撃が発生している場合に、攻撃を検出する。該当クラスタに自身の複数の装置が属している別のユーザの少なくとも一つの装置に対する攻撃ベクトルの特徴と一致した場合、サイバー攻撃に対抗するためのアクションを選択し３５０、該当クラスタのユーザ全員の装置に送信する。【選択図】図３
2019220126.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが当該ユーザに関するデータを保持するサービスとインタラクションする手段であるコンピュータ装置に対するサイバー攻撃に対抗するためのコンピュータで実行される方法であって、
複数のユーザの個人データを収集して格納するサービスに対応するサービスデータを受信し、
前記サービスとインタラクションする前記複数のユーザの複数のコンピュータ装置に対応する装置データを受信し、
前記受信したサービスデータおよび装置データに基づき、前記サービスからの前記ユーザの個人データのデータ流出によって前記複数のコンピュータ装置のうち少なくとも一つにサイバー攻撃が発生していることを検出し、
前記複数のコンピュータ装置のサブセットのクラスタを作成し、
前記受信した装置データに基づいて前記サイバー攻撃の攻撃ベクトルを特定し、
前記サイバー攻撃に対抗するためのアクションであって、前記特定された攻撃ベクトルに基づいて判定されたアクションを、前記クラスタ内のコンピュータ装置のサブセットに送信する
ことを含む方法。
【請求項２】
前記受信したサービスデータは、前記複数のユーザの個人データのうち少なくとも一部の公的にアクセス可能な漏えいデータベースをさらに含む、請求項１に記載の方法。
【請求項３】
前記サイバー攻撃は前記サービスを参照して前記データ流出した個人データを使用するという前提条件を含む基準を基に、前記サイバー攻撃を検出する、請求項１に記載の方法。
【請求項４】
前記受信した装置データに基づいて前記サイバー攻撃の攻撃ベクトルを特定する処理は、第１のユーザとインタラクションしている前記サービスが前記サイバー攻撃のソースであると判定することを含む、請求項１に記載の方法。
【請求項５】
前記受信した装置データに基づいて前記サイバー攻撃の攻撃ベクトルを特定する処理は、前記サイバー攻撃の標的である第１のユーザの電子メールアドレスおよび当該第１のユーザの電話番号を含む要素グループを判定することを含む、請求項１に記載の方法。
【請求項６】
前記サイバー攻撃に対抗するためのアクションを判定する処理はさらに、前記クラスタに自身の複数のコンピュータ装置が属している別のユーザの少なくとも一つのコンピュータ装置に対する前記攻撃ベクトルの特徴との照合に基づいて行われる、請求項１に記載の方法。
【請求項７】
前記複数のコンピュータ装置から受信した診断データに基づいて前記サイバー攻撃に対抗するためのアクションの有効性を判定し、
前記判定された有効性に基づいてサイバー攻撃を検出して対抗するための１以上の基準を変更する、
ことをさらに含む請求項１に記載の方法。
【請求項８】
ユーザが当該ユーザに関するデータを保持するサービスとインタラクションする手段であるコンピュータ装置に対するサイバー攻撃に対抗するためのシステムであって、
複数のユーザの個人データを収集して格納するサービスに対応するサービスデータを受信し、
前記サービスとインタラクションする前記複数のユーザの複数のコンピュータ装置に対応する装置データを受信し、
前記受信したサービスデータおよび装置データに基づき、前記サービスからの前記ユーザの個人データのデータ流出によって前記複数のコンピュータ装置のうち少なくとも一つにサイバー攻撃が発生していることを検出し、
前記複数のコンピュータ装置のサブセットのクラスタを作成し、
前記受信した装置データに基づいて前記サイバー攻撃の攻撃ベクトルを特定し、
前記サイバー攻撃に対抗するためのアクションであって、前記特定された攻撃ベクトルに基づいて判定されたアクションを、前記クラスタ内のコンピュータ装置のサブセットに送信する
ハードウェアプロセッサを備えるシステム。
【請求項９】
前記受信したサービスデータは、前記複数のユーザの個人データのうち少なくとも一部の公的にアクセス可能な漏えいデータベースをさらに含む、請求項８に記載のシステム。
【請求項１０】
前記サイバー攻撃は前記サービスを参照して前記データ流出した個人データを使用するという前提条件を含む基準を基に、前記サイバー攻撃を検出する、請求項８に記載のシステム。
【請求項１１】
前記受信した装置データに基づいて前記サイバー攻撃の攻撃ベクトルを特定する前記プロセッサは、さらに、
第１のユーザとインタラクションしている前記サービスが前記サイバー攻撃のソースであると判定する、請求項８に記載のシステム。
【請求項１２】
前記受信した装置データに基づいて前記サイバー攻撃の攻撃ベクトルを特定する前記プロセッサは、さらに、
前記サイバー攻撃の標的である第１のユーザの電子メールアドレスおよび当該第１のユーザの電話番号を含む要素グループを判定する、請求項８に記載のシステム。
【請求項１３】
前記サイバー攻撃に対抗するためのアクションを判定する前記プロセッサは、さらに、
前記クラスタに自身の複数のコンピュータ装置が属している別のユーザの少なくとも一つのコンピュータ装置に対する前記攻撃ベクトルの特徴との照合に基づいて前記アクションを判定する、請求項８に記載のシステム。
【請求項１４】
前記プロセッサは、さらに、
前記複数のコンピュータ装置から受信した診断データに基づいて前記サイバー攻撃に対抗するためのアクションの有効性を判定し、
前記判定された有効性に基づいてサイバー攻撃を検出して対抗するための１以上の基準を変更する、請求項８に記載のシステム。
【請求項１５】
ユーザが当該ユーザに関するデータを保持するサービスとインタラクションする手段であるコンピュータ装置に対するサイバー攻撃に対抗するためのコンピュータ実行可能命令を含む、非一時的コンピュータ可読媒体であって、
複数のユーザの個人データを収集して格納するサービスに対応するサービスデータを受信し、
前記サービスとインタラクションする前記複数のユーザの複数のコンピュータ装置に対応する装置データを受信し、
前記受信したサービスデータおよび装置データに基づき、前記サービスからの前記ユーザの個人データのデータ流出によって前記複数のコンピュータ装置のうち少なくとも一つにサイバー攻撃が発生していることを検出し、
前記複数のコンピュータ装置のサブセットのクラスタを作成し、
前記受信した装置データに基づいて前記サイバー攻撃の攻撃ベクトルを特定し、
前記サイバー攻撃に対抗するためのアクションであって、前記特定された攻撃ベクトルに基づいて判定されたアクションを、前記クラスタ内のコンピュータ装置のサブセットに送信する、
各手順を実行させる命令を含む、非一時的コンピュータ可読媒体。
【請求項１６】
前記受信したサービスデータは、前記複数のユーザの個人データのうち少なくとも一部の公的にアクセス可能な漏えいデータベースをさらに含む、請求項１５に記載の非一時的コンピュータ可読媒体。
【請求項１７】
前記サイバー攻撃は前記サービスを参照して前記データ流出した個人データを使用するという前提条件を含む基準を基に、前記サイバー攻撃を検出する、請求項１５に記載の非一時的コンピュータ可読媒体。
【請求項１８】
前記受信した装置データに基づいて前記サイバー攻撃の攻撃ベクトルを特定するための前記命令は、さらに、
第１のユーザとインタラクションしている前記サービスが前記サイバー攻撃のソースであると判定するための命令を含む、請求項１５に記載の非一時的コンピュータ可読媒体。
【請求項１９】
前記受信した装置データに基づいて前記サイバー攻撃の攻撃ベクトルを特定するための前記命令は、さらに、
前記サイバー攻撃の標的である第１のユーザの電子メールアドレスおよび当該第１のユーザの電話番号を含む要素グループを判定するための命令を含む、請求項１５に記載の非一時的コンピュータ可読媒体。
【請求項２０】
前記サイバー攻撃に対抗するためのアクションを判定するための前記命令は、さらに、
前記クラスタに自身の複数のコンピュータ装置が属している別のユーザの少なくとも一つのコンピュータ装置に対する前記攻撃ベクトルの特徴との照合に基づいて前記アクションを判定するための命令を含む、請求項１５に記載の非一時的コンピュータ可読媒体。
【請求項２１】
前記複数のコンピュータ装置から受信した診断データに基づいて前記サイバー攻撃に対抗するためのアクションの有効性を判定し、
前記判定された有効性に基づいてサイバー攻撃を検出して対抗するための１以上の基準を変更する命令をさらに含む、請求項１５に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ハッカーによるコンピュータ攻撃からユーザのコンピュータ装置を防御するためのコンピュータセキュリティおよび解決法に関し、特に、ユーザのコンピュータ装置に対する攻撃を検出して対抗するシステムおよび方法に関する。
【背景技術】
【０００２】
現在、情報技術（information  technologies；ＩＴ）によりサービスセクタが大幅に拡大している。大規模なサービスプロバイダはＩＴサポートおよびＩＴを使用した一般的なサービス（電子メールサービス又はソーシャルネットワーク、インターネットを介した購入や支払など）の両方を提供している。ほとんどの企業はＩＴサービスを用いたインフラストラクチャを有しており、インフラストラクチャのデータベースにユーザのデータが格納されている場合が多い。このようなデータベースを用いることにより、たとえばフィットネスクラブは、イベントや割引についてユーザに通知することができ、さらに、サブスクリプションの終了について通知したり、提供したサービスについてユーザから意見を受信したりすることもできる。
【０００３】
現在のＩＴサービスは、その多様化に伴ってハッカーからの悪質なサイバー攻撃の数も確実に増えている。攻撃が成功した場合、ハッカーはユーザの個人データにアクセスすることができ、ユーザに経済的または精神的な危害が生じ得る。（少なくとも不正行為を回避するため）ユーザのサービス登録が不可欠であるが、各サービスにはサービスを利用するユーザのデータを格納したデータベースが収容されているため、当該サービスへの攻撃が成功した場合、ユーザのデータにアクセス可能となり得る。
【０００４】
いわゆる標的型攻撃は上述のようなサービスで実行されることが多い。標的型攻撃は、特定のサービスプロバイダ、企業、組織または政府機関を対象とした攻撃である。セキュリティ・アプリケーションの開発者はこうした攻撃に対抗するための解決法を提案している。たとえば、標的型攻撃に対抗するために、特定の企業に関連するセキュリティイベントを分類し、標的型攻撃を特定し、当該攻撃に対抗する処置をとるシステムが知られている。
【０００５】
しかし、こうしたサービスからのユーザに関するデータ漏えいすべてを防ぐことは事実上不可能である。攻撃が成功してデータベースが漏えいした場合、当該サービスのユーザは、迷惑電話（intrusive  calls）、スパムメールおよびＳＭＳメッセージ、悪性ファイル、フィッシングリンクなど自装置に対する攻撃に後から直面することが多い。なお、この場合、当該サービスのユーザは実際そのサービスによって関連づけられており特定のハードウェアやソフトウェアに基づいて関連づけられているわけではないため、攻撃は装置モデルやオペレーティングシステムの種類と明確に関連してはいない。
【発明の概要】
【０００６】
本開示は、ユーザが自分の装置によってインタラクションするサービスからデータが漏えいした場合に当該装置を防御するという上記の課題を解決するシステムおよび方法に関する。
【０００７】
本開示の一側面では、ユーザが当該ユーザに関するデータを保持するサービスとインタラクションする手段であるコンピュータ装置に対するサイバー攻撃に対抗するため、コンピュータで実行される方法を提供する。当該方法では、複数のユーザの個人データを収集して格納するサービスに対応するサービスデータを受信し、当該サービスとインタラクションするよう構成された複数のユーザの複数のコンピュータ装置に対応する装置データを受信する。当該方法ではさらに、受信したサービスデータおよび装置データに基づき、当該サービスからのユーザの個人データのデータ流出によって複数のコンピュータ装置のうち少なくとも一つにサイバー攻撃が発生していることを検出する。当該方法では、複数のコンピュータ装置のサブセットのクラスタを作成し、受信した装置データに基づいてサイバー攻撃の攻撃ベクトルを特定する。当該方法では、サイバー攻撃に対抗するためのアクションであって、特定された攻撃ベクトルに基づいて判定されたアクションを、クラスタ内のコンピュータ装置のサブセットに送信する。
【０００８】
別の側面では、受信したサービスデータは、複数のユーザの個人データのうち少なくとも一部の公的にアクセス可能な漏えいデータベースをさらに含む。
【０００９】
別の側面では、サイバー攻撃はサービスを参照してデータ流出した個人データを使用するという前提条件を含む基準を基に、サイバー攻撃を検出する。
【００１０】
別の側面では、受信した装置データに基づいてサイバー攻撃の攻撃ベクトルを特定する処理において、第１のユーザとインタラクションしているサービスがサイバー攻撃のソースであると判定する。
【００１１】
別の側面では、受信した装置データに基づいて攻撃の攻撃ベクトルを特定する処理において、攻撃の標的である第１のユーザの電子メールアドレスおよび当該第１のユーザの電話番号を含む要素グループを判定する。
【００１２】
別の側面では、サイバー攻撃に対抗するためのアクションを判定する処理はさらに、クラスタに自身の複数のコンピュータ装置が属している別のユーザの少なくとも一つのコンピュータ装置に対する攻撃ベクトルの特徴との照合に基づいて行われる。
【００１３】
別の側面では、当該方法においてさらに、複数の装置から受信した診断データに基づいてサイバー攻撃に対抗するためのアクションの有効性を判定し、判定された有効性に基づいてサイバー攻撃を検出して対抗するための１以上の基準を変更する。
【００１４】
本開示の別の側面では、ユーザが当該ユーザに関するデータを保持するサービスとインタラクションする手段であるコンピュータ装置に対するサイバー攻撃に対抗するためのシステムを提供している。当該システムは、複数のユーザの個人データを収集して格納するサービスに対応するサービスデータを受信し、当該サービスとインタラクションする複数のユーザの複数のコンピュータ装置に対応する装置データを受信するよう構成されたハードウェアプロセッサを含む。当該プロセッサはさらに、受信したサービスデータおよび装置データに基づき、当該サービスからのユーザの個人データのデータ流出によって複数のコンピュータ装置のうち少なくとも一つにサイバー攻撃が発生していることを検出するよう構成されている。当該プロセッサはさらに、複数のコンピュータ装置のサブセットのクラスタを作成し、受信した装置データに基づいてサイバー攻撃の攻撃ベクトルを特定する。当該プロセッサは、サイバー攻撃に対抗するためのアクションであって、特定された攻撃ベクトルに基づいて判定されたアクションを、クラスタ内のコンピュータ装置のサブセットに送信するよう構成される。
【００１５】
別の例示的側面では、本明細書に記載するいずれかの方法を実行するためのコンピュータ実行可能命令を含む命令を備えたコンピュータ可読媒体を提供する。
【００１６】
上記の例示的側面の簡単な概要により、本開示を基本的に理解できるであろう。当該概要は、想定されるすべての側面の包括的な概観ではなく、全ての側面の主要または必要不可欠な要素を特定するものでも、本開示の側面の一部または全部の範囲を画するものでもない。本概要は、単に、以下の本開示の詳細な説明の前置きとして、１以上の側面を簡単に述べるものである。本開示の１以上の側面は、請求の範囲において説明され例示的に提示されている特徴を含む。
【図面の簡単な説明】
【００１７】
本明細書に組み込まれて本明細書の一部を構成する添付の図面は、本開示の１以上の例示的側面を図示するものであり、詳細な説明とともにその原理および実施形態を説明するものである。
【００１８】
【図１】図１は、一側面に係る、ユーザとユーザに関するデータを保持するサービスとのインタラクションを示すブロック図である。
【図２】図２は、一側面に係る、ユーザがユーザに関するデータを保持するサービスとインタラクションする手段であるコンピュータ装置に対する攻撃に対抗するためのシステムを示すブロック図である。
【図３】図３は、一例示的側面に係る、ユーザがユーザに関するデータを保持するサービスとインタラクションする手段であるコンピュータ装置に対する攻撃に対抗するための方法を示すフロー図である。
【図４】図４は、本開示の側面が実行されるコンピュータシステムの一例を示す図である。
【発明を実施するための形態】
【００１９】
ユーザがユーザに関するデータを保持するサービスとインタラクションする手段であるコンピュータ装置に対する攻撃に対抗するためのシステム、方法、およびコンピュータプログラムプロダクトについて例示的側面を説明する。当業者であれば、以下の説明が単に例示的なものであって限定的なものではないことが理解できるであろう。他の側面についても、本開示の利益を享受する当業者は容易に理解できるであろう。以下、添付の図面に示す、例示的側面に係る実施形態を詳しく参照する。図面および以下の説明では、同じ又は同様の要素については可能な限り同じ参照符号を使用する。
【００２０】
本開示では、「システムモジュール」は、集積マイクロ回路（特定用途向け集積回路（application-specific  integrated  circuits；ＡＳＩＣ））またはフィールドプログラマブル・ゲート・アレイ（field−programmable  gate  array；ＦＰＧＡ）などのハードウェアの使用、あるいは、マイクロプロセッサシステムおよびプログラム命令一式などのソフトウェアとハードウェアの組み合わせ形式、ならびに、ニューロシナプティック・チップで実現される、実装置、システム、コンポーネント、コンポーネントグループのことを指す。システムモジュールの機能は、ハードウェアのみで実現することができ、また、システムモジュールの機能の一部をソフトウェアで実現し一部をハードウェアで実現するという組み合わせ形式で実現することもできる。特定の変形側面では、モジュールの一部または全部がコンピュータのプロセッサで実行され得る（一例を図４に示す）。システムコンポーネント（各モジュール）は、一台のコンピュータ装置内、あるいは、相互に接続された複数のコンピュータ装置間に広がって実現され得る。
【００２１】
本開示では、「コンピュータ攻撃（以下、攻撃）」は、情報、自動化情報システムのリソースへの標的型不正アクション、あるいは、ソフトウェアおよび／またはハードウェアを用いたこれらへの不正アクセスのことを指す。
【００２２】
図１は、一側面に係る、ユーザに関するデータを保持するサービスとユーザとのインタラクション１０１を示すブロック図である。ユーザ１１０とユーザに関するデータを保持するサービス１２０（以下、サービス）とのインタラクション１０１は、通常、コンピュータ装置１３０（以下、装置）を用いて行われる。装置１３０は、スマートフォン、コンピュータ、またはタブレットＰＣでもよい。通常、インタラクション１０１は双方向である（インタラクションはユーザ１１０またはサービス１２０のいずれかによって発生または開始される）。たとえば、ユーザ１１０はアカウント記録によって特定のサービス１２０にアクセスでき、サービス１２０は電子メールや携帯電話番号にメッセージを送ることによってユーザ１１０に通知することができる（ユーザ１１０は、サービス１２０からのメールを読んだり、電話を受信したりするために装置１３０を使用する）。特定の変形側面では、ユーザ１１０は、特定の装置１３０によって一方向でサービス１２０とインタラクションする。たとえば、ユーザ１１０はＳＭＳメッセージによってサービス１２０とインタラクションすることはないものの、サービス１２０から当該メッセージを受信する。一変形側面では、ユーザ１１０は、（たとえば、パーソナルコンピュータやスマートフォンによって電子メールをチェックしたりソーシャルネットワークを利用したりするために）異なる装置１３０によってサービスとインタラクションしてもよい。
【００２３】
ユーザに関する特定の形式のデータは、一般的に、データベース１２５やその他の種類の記憶モジュールなど、サービス１２０のインフラストラクチャを用いてサービス１２０に格納される。通常、ユーザ１１０は、登録処理（以下、登録）を実行し、ユーザ１１０の識別度合いの異なる個人情報をサービス１２０に提供する。一例では、たとえば、サービス１２０の登録には登録を確認する電子メールが必要となる。別の例では、たとえば、ユーザ１１０の登録は、フィットネスクラブに出向いてそのフィットネスクラブと契約を結び、パスポートやその他のデータを契約書に記入することによって行われる。
【００２４】
図２は、一側面に係る、ユーザがユーザに関するデータを保持するサービスとインタラクションする手段であるコンピュータ装置に対する攻撃に対抗するためのシステム２００を示すブロック図である。なお、システムの一変形側面では、ユーザに関するデータはユーザの個人データである。一部の側面では、個人データは個人識別可能情報（personally  identifiable  information；ＰＩＩ）でもよい。一部の側面では、個人データは、当該データの収集、格納、アクセス、頒布、および処理に制約を設けるデータポリシーや規定に則ったものでもよい。一部の側面では、ユーザに関するデータは、ユーザ名、パスワード、セキュリティ質問、その他のログイン認証情報、および／または、それらから導出される情報（たとえば、パスワードのハッシュ値）等、ユーザをサービスで認証するために使用されるデータを含んでいてもよい。
【００２５】
ユーザ１１０がユーザに関するデータを保持するサービス１２０とインタラクションする手段であるコンピュータ装置１３０に対する攻撃に対抗するためのシステム２００は、通常、セキュリティ・アプリケーション（アンチウィルス・アプリケーション等）の一部であり、収集モジュール２１０、解析モジュール２２０、および攻撃対抗モジュール２３０を含む。
【００２６】
当該側面における収集モジュール２１０は、通常、ユーザ１１０がサービス１２０とインタラクションする手段である装置１３０において実行される。収集モジュール２１０は、アンチスパムモジュール、アンチフィッシングモジュール、または発信者ＩＤモジュール（たとえば、Kaspersky  WhoCalls（登録商標）で使用可能）などのアンチウィルス・アプリケーションの既知のコンポーネントの様式であってもよい。収集モジュール２１０は、ユーザ１１０がインタラクションするサービス１２０に関するデータ、および、ユーザ１１０がサービス１２０とインタラクションする手段である装置１３０に関するデータを収集するよう構成される。
【００２７】
一側面では、サービス１２０に関するデータ（すなわち、サービスについてのデータ）は、サービス１２０の種類（サイト、電子メール、組織）、サービス１２０によって収集されたユーザ１１０の個人データ、サービス１２０の場所、および、サービス１２０とインタラクションする目的を含んでもよいが、これらに限定されない。一側面では、装置１３０に関するデータ（すなわち、装置についてのデータ）は、装置１３０の種類（スマートフォン、タブレット、ノート型パーソナルコンピュータ）、装置１３０が実行されているオペレーティングシステム、ユーザ１１０がサービス１２０とインタラクションする手段である装置１３０のアプリケーションに関するデータ、装置１３０にインストールされた既知の脆弱なアプリケーション、装置１３０のオペレーティングシステム（ＯＳ）およびアプリケーション用にインストールされたセキュリティパッチ、および、装置１３０の場所を含んでもよいが、これらに限定されない。
【００２８】
一変形側面では、収集モジュール２１０はさらに、少なくとも上記のサービス１２０の一つからユーザに関するデータが漏えいしたことによって攻撃が発生したことを示すデータも収集する。データ漏えいやデータ流出は、通常、ハッカーがユーザ１１０に関するデータにアクセスしてサービス１２０への攻撃に成功した場合に発生する。その後、ハッカーは、ソーシャルエンジニアリングや、悪性のプログラムおよびリンクといった様々な手法を利用し、ユーザの個人（秘密）データに不正アクセスするためにユーザ１１０やその装置１３０の制御を試みることができる。攻撃は、たとえば、ユーザ１１０が不明なアドレスから添付ファイルの付いた電子メールを受信した場合や特定のセルラオペレータの不明な番号から電話を着信した場合など、少なくとも一つの攻撃検出の基準を基に検出される。一般的なケースでは、これらの基準はより詳細なヒューリスティックによって変更や説明がされ得る。一変形側面では、基準は統計データに基づいて自動的に設定される。別の変形側面では、基準はコンピュータセキュリティの専門家とともに設定される。一般的なケースでは、当該基準は遠隔サーバに保持され、収集モジュール２１０によって解析モジュール２２０から受信される。
【００２９】
一例示的側面では、収集されたデータは匿名データである。一側面では、収集されたデータはデータ匿名化のため（収集モジュールなどによって）変更される。
【００３０】
一変形側面では、攻撃に対抗するために実行されたアクションに関する情報は、攻撃対抗モジュール２３０から受信される。少なくとも一つの基準に則って攻撃が先に特定されていた場合、収集モジュール２１０は、解析モジュール２２０によって設定されたクラスタ（以下に記載）の他のユーザ１１０の装置１３０に対する先に特定されていた攻撃を特定し、実行されたアクションおよびアクション実行後に上記の基準によって攻撃が検出されたか否かについての情報を解析モジュール２２０に送信する。
【００３１】
一変形側面では、収集モジュール２１０は、遠隔サーバ２９０上で実行されるか、あるいは、クラウドサービスとして実行される。この場合、収集モジュール２１０は、インターネット２８０上およびインターネット（Ｔｏｒネットワーク等）によってアクセス可能なネットワーク上でアクセス可能なユーザ１１０に関するデータを保持するサービス１２０のデータを収集して解析する。一変形側面では、たとえば売渡や無料配布されたユーザデータベースなど、ネットワークに「漏えいした」データについて解析が行われる。銀行データベースやユーザの電子メールアドレス、さらにはユーザ１１０がインタラクションする様々な組織のデータベースなどの、データベースの「漏えい」が多く知られている。
【００３２】
収集モジュール２１０によって収集されたデータは解析モジュール２２０へ送信される。
【００３３】
解析モジュール２２０は、遠隔サーバ２９０上で実行されるか、あるいは、クラウドサービスとして実行され得る。一般的なケースでは、解析モジュール２２０は、収集モジュール２１０から取得されたデータに基づいて、ユーザ１１０がサービス１２０とインタラクションする手段である装置１３０のクラスタを作成（設定）するよう構成される。
【００３４】
一変形側面では、上記のクラスタは継続的に作成される。たとえば、一定時間経過後、解析モジュール２２０は、ユーザ１１０がどのサービス１２０とどの装置１３０によってインタラクションしているかを判定する解析を行う。一変形側面では、解析モジュール２２０は、一定条件下でクラスタからユーザ１１０の装置１３０を除外することができる。たとえば、ユーザ１１０が装置１３０によってサービス１２０とのインタラクションを一定期間行っていないと判定された場合、あるいは、装置１３０自体がユーザ１１０の元に長期間存在していないと判定された場合、解析モジュール２２０は設定されたクラスタから当該装置を除外することができる。
【００３５】
別の変形側面では、実際に攻撃が出現した時点で、すなわち、同時サイバー攻撃の検出に応じて、クラスタが動的に作成される。
【００３６】
上記の例で説明したとおり、装置１３０に対する攻撃は基準を基に特定され得る。解析モジュール２２０は実際の攻撃に基づいて攻撃の攻撃ベクトルを特定する。攻撃ベクトルは、セキュリティに対する脅威を実現する際の、ハッカー側の装置１３０に対するアクションの方向性または具体的な方法である。一側面では、攻撃ベクトルは、装置１３０またはサービス１２０に不正アクセスするためにハッカーや悪意ある主体が使用する経路または手法でもよい。セキュリティに対する脅威を実現する際、ハッカーは、情報システムのネットワークプロトコルにおけるセキュリティ欠陥に加え、システムソフトウェアやアプリケーションソフトウェアにおける不十分な保護レベル、設定ミス、またはバグなどの様々な脆弱性を悪用し得る。
【００３７】
攻撃ベクトルを画定する特徴として、（ｉ）攻撃のソース又はソースグループ、（ｉｉ）攻撃の標的である要素又は要素グループ、（ｉｉｉ）アクションの種類、および、（ｉｖ）アクションの媒介手段（インストルメント）などがある。
【００３８】
攻撃のソースは、通常、ユーザ１１０がインタラクションしているサービス１２０である。サービス１２０は、攻撃中に、リンク、ＳＭＳまたは電子メールを配布する。なお、特定のケースでは、ソースはサービス１２０ではない場合がある。たとえば、悪性ファイルはコンパクトディスクやフラッシュドライブによって取り込まれる場合がある。しかし、こうしたケースでも、たとえばディスクやドライブはユーザが特定のサービス１２０（ＰＲキャンペーンの一環としてフィットネスクラブやレストラン等）から得たものであるとして、解析モジュール２２０は攻撃のソースへのリンクを見つけることができる。
【００３９】
攻撃の標的である要素は、通常、一ユーザ１１０または複数ユーザ１１０の装置１３０である。攻撃は、たとえば、攻撃の範囲拡大や成功確率向上などのハッカーの観点により、ユーザの複数の装置１３０で同時に発生し得る。ハッカーが電子メールや電話番号などを含むユーザ１１０のデータにアクセスした場合、ユーザ１１０は電子メールや電話呼出を受信する可能性がある。
【００４０】
（悪意ある）アクションの種類の例は上述したとおりである。悪意あるアクションの種類には、リンク、ＳＭＳ又は電子メール、応答マシンのテキスト、音声および動画のメッセージ、ならびに、（人又はロボットからの）応答マシンへの電話も含まれる。
【００４１】
アクションの媒介手段（インストルメント）は、（ハッカーが、ＳＭＳまたはソーシャルネットワークによって、ユーザからユーザの銀行カードデータなどを取得しようとした場合）ソーシャルエンジニアリング技術を含む悪性のファイル、スクリプト、テキスト、あるいは、迷惑電話である。
【００４２】
よって、「漏えいした」データベース、（Avitoなどの）インターネットサイトのユーザ登録、侵入者によるサイトの一時的ハッキング（ニュースサイト、または、コンピュータゲームや特定の話題を専門としたサイトの一時的ハッキングなど）により、ハッカーは取得したユーザ１１０に関するデータに基づいて装置１３０を攻撃することができる。
【００４３】
一変形側面では、攻撃ベクトルを特定する際、解析モジュール２２０は攻撃ベクトルの特徴と他のユーザ１１０の装置１３０に対する攻撃とを比較する。該当クラスタに自身の複数の装置が属している別のユーザ１１０の少なくとも一つの装置１３０に対する攻撃ベクトルの特徴と一致した場合、解析モジュール２２０は、該当クラスタに含まれる装置１３０の攻撃対抗モジュール２３０に攻撃についてのデータを送信する。一変形側面では、解析モジュール２２０は、攻撃に対抗するために実行する必要がある少なくとも一つのアクションに関する情報も送信する。
【００４４】
一変形側面では、解析モジュール２２０は、以前に実行されたアクションに関する情報、および、アクション実行後のどのタイミングで攻撃検出のための基準がトリガされたかについての情報を、収集モジュール２１０から受信する。解析モジュール２２０は、収集モジュール２１０から取得したデータに基づき、攻撃に対抗するために実行されたアクションの有効性を解析する。一般的なケースでは、結果として他のユーザ１１０の装置１３０に対する攻撃を検出する上述の基準によって攻撃が検出されなかった場合、実行したアクションは有効であると判断される。
【００４５】
一変形側面では、解析モジュール２２０はフィードバックとしてユーザ１１０自身との（ＳＭＳ、電子メール、メッセンジャー、電話などによる）インタラクション（通信）を使用する。解析モジュール２２０は、フィードバックに基づき、攻撃が正確に判定（特定または検出）されたか、あるいは、ユーザ１１０が攻撃を誤認警報と判断したかを把握する。
【００４６】
一変形側面では、解析モジュール２２０は、ユーザ１１０からデータ漏えいのソースについての仮説に関する情報を受信する。たとえば、ユーザはこれまでＳＭＳ（スパム）メールを受信したことはなかったものの、最近になってスポーツクラブに入会してからスポーツをテーマとしたスパムメールが送られるようになった場合、ユーザは、当該クラブに入会してからメール送信が始まったと考える。こうした情報は、装置１３０のクラスタをより正確に設定し、攻撃ベクトルを特定するため、解析モジュール２２０によって使用される。
【００４７】
一変形側面では、解析モジュール２２０は、装置１３０のクラスタと攻撃ベクトルを特定する際、ユーザに関するデータの漏えいのソースについてユーザ１１０に通知する。なお、ユーザは損害についての賠償や訴訟あるいは契約解消を求め、自分のデータをサービス１２０から削除するよう要求することもできるが、これは過去のデータ漏えいではなく新たなデータ漏えいについてのみ可能である。さらに別の変形側面では、解析モジュール２２０は、ユーザ１１０に関するデータの漏えいの発生元であるサービス１２０に通知を行う。これにより、サービス１２０は、自身のセキュリティシステムの検査、漏えいの原因の特定、および、漏えいの繰り返しを防止する処置などを行うことができる。さらに、この場合、サービス１２０は漏えいについて自ら他のユーザ１１０に通知することもできる。
【００４８】
一般的な側面における攻撃対抗モジュール２３０は、ユーザ１１０がサービス１２０とインタラクションする手段であるユーザ１１０の装置上で実行される。一般的なケースでは、攻撃対抗モジュール２３０は、攻撃に対抗するために解析モジュール２２０から取得したアクションを実行する。一例では、攻撃対抗モジュール２３０は、攻撃について警告するテキストを送信することができる。別の例では、攻撃対抗モジュール２３０は、ブロックリストにリンク（ＵＲＬまたはＵＲＬを含むＨＴＭＬ等）の追加、（電話および留守番電話の両方の）ブロックリストに電話番号の追加、および／または、ブロックリストに送信者の電子メールアドレスの追加をすることもできる。別の例では、攻撃対抗モジュール２３０は、特別な経路によってオペレーティングシステム（ＯＳ）キャッシュや所定のアプリケーションからファイルを削除することができる。別の例では、攻撃対抗モジュール２３０は、装置１３０の所定のクラスタに対応するベクトルからの攻撃に対抗するセキュリティ・アプリケーション技術の「改良」モードに自動的に切り替えることができる。
【００４９】
一変形側面では、攻撃対抗モジュール２３０は、実行されたアクションについての情報を収集モジュール２１０に送信する。収集モジュール２１０が攻撃検出のための基準に基づいて攻撃を特定しなくなった場合（たとえば、ユーザが、リンクを含むＳＭＳを受信したものの、当該リンクがブロックリストに追加されていたためにクリックしなかった場合）、これに関するデータも解析モジュール２２０に送られて攻撃対抗のために選択されたアクションの有効性を評価するということは、上記の説明からも理解できるであろう。装置１３０の多様性やセキュリティ・アプリケーションの権限の観点から、これは重要なことである。たとえば、セキュリティ・アプリケーションはオペレーティングシステムによって異なる権限を有しているため、同じ種類（携帯電話など）の異なる装置１３０に対して同じ攻撃対抗アクションを実行することが必ずしも適切であるとは限らない（たとえば、セキュリティ・アプリケーションはアンドロイドＯＳやｉＯＳにおいて異なる権限セットを有しているため）。
【００５０】
以下の状況は、本明細書に記載するシステム２００のオペレーションの一例となり得る。仮想通貨資産を正規に取引する仮想通貨取引サービスにおいて、データ漏えいにつながるサイバー攻撃が成功したとする。取引サービスの登録ユーザの一部は認証を受け、その他のユーザは銀行カードで現金を引き出していたため、個人データ（パスポートの写真、電話番号、銀行カード番号）がハッカーからアクセス可能となった。よって、上記の取引は、ユーザ１１０に関するデータを保持するサービス１２０に該当する。サービス１２０には、データベースの漏えいを防ぐための適切な防御手段やソフトウェアがなかったため、ハッカーからアクセス可能となったユーザ１１０のデータを保護する必要がある。なお、このような状況では、ユーザ１１０のデータを含むデータベースが公的にアクセス可能である場合、異なるハッカーグループから１以上の異なる（後続の）攻撃が発生する可能性がある。つまり、ユーザ１１０のデータを伴うデータベースに含まれる個人データを用いて、１以上のサイバー攻撃が立て続けに発生し得る。
【００５１】
ハッカーは様々なベクトルによって後続の攻撃を開始する。たとえば、ハッカーは、電子メールによって悪性添付ファイル（フィッシングリンクおよびキーロガープログラム）を含むメッセージを送信し、ユーザ１１０のパスポートデータやカード番号を用いて銀行に電話し（ソーシャルエンジニアリング等）、電話したりＳＭＳを送信したりしてソーシャルネットワークによってユーザ１１０に接触し、ユーザ１１０からその他のデータを得ようとする。
【００５２】
収集モジュール２１０は、攻撃検出基準に基づいて、ＳＭＳ、電話、および電子メールに関するデータを収集する。たとえば、不明の送信者からの電子メールに仮想通貨バスケットのアドレスや投資についてのキーワードが入った提案が含まれているという前提条件を有する基準を基に、収集モジュール２１０はデータを収集してもよい。さらに、収集モジュール２１０は、ユーザが上述の取引サービスとインタラクションしていることについてのデータを予め収集する。さらに、収集モジュール２１０は、ネットワークＴｏｒ内の専用フォーラム上でユーザ１１０に関するデータを含む上述のデータベースを発見する。
【００５３】
解析モジュール２２０にデータを送信した後、ユーザ１１０の装置１３０のクラスタが設定される。ユーザ１１０は、異なるオペレーティングシステムの制御下で様々なモバイル機器やＰＣを使用する。さらに、解析モジュール２２０によって攻撃ベクトルが判定される。解析モジュール２２０は、装置１３０の種類や装置１３０のＯＳに応じて装置１３０に対する攻撃に対抗するためのアクションを選択する。これらのアクションはユーザ１１０の装置１３０に送られ、攻撃対抗モジュール２３０によって実行される。
【００５４】
この結果、一部の攻撃ベクトルは出現しなくなる（あるいは、出現数が大幅に減る）一方で、それ以外の攻撃ベクトルについては変化がなかった。攻撃対抗モジュール２３０がアクションを実行した後に解析モジュール２２０が収集モジュール２１０から取得したデータにより、解析モジュール２２０は、採用されたアクションの有効性を算出することができる。有効性が閾値以下の場合、他のアクションや追加のアクションが選択され、攻撃対抗モジュール２３０に送信される。
【００５５】
システム２００のオペレーションの方法は継続され、新たな攻撃が発見されると、システムの一連のアクションが繰り返される。
【００５６】
図３は、一例示的側面に係る、ユーザがユーザに関するデータを保持するサービスとインタラクションする手段であるコンピュータ装置に対する攻撃に対抗するための方法３００を示すフロー図である。
【００５７】
ステップ３１０では、収集モジュール２１０を用いて、ユーザ１１０が装置１３０によってインタラクションしているサービス１２０に関するデータ、および、装置１３０に関するデータを収集する。一変形側面では、収集モジュール２１０はさらに、ユーザ１１０に関するデータを保持するサービス１２０についてインターネット上でアクセス可能なデータを収集するよう構成されている。一側面では、（たとえば、遠隔サーバ２９０で実行される）収集モジュール２１０は、複数のユーザ１１０の個人データを収集して格納するサービス１２０（オンラインサービス、ブリック・アンド・モルタル・サービス等）に対応するサービスデータを受信することができる。一側面では、収集モジュール２１０は、サービス１２０とインタラクションするよう構成される複数のユーザ１１０の複数のコンピュータ装置１３０に対応する装置データを受信することができる。一側面では、受信したサービスデータは、複数のユーザの個人データのうち少なくとも一部の公的にアクセス可能な漏えいデータベースを含んでもよい。一部の側面では、受信したサービスデータにより、サービスの種類、サービスによって収集された複数のユーザの個人データ、サービスの場所、および、サービスとインタラクションするユーザの目的が特定される。一部の側面では、受信した装置データにより、各コンピュータ装置の種類、各コンピュータ装置が実行されているオペレーティングシステム、および、ユーザがサービスとインタラクションする手段である各コンピュータ装置上のアプリケーションのデータのうち少なくとも一つが、複数のコンピュータ装置の各々について特定される。
【００５８】
ステップ３２０では、収集モジュール２１０は、上記のサービス１２０の少なくとも一つからユーザ１１０に関するデータが漏えいしたことによって発生した攻撃を攻撃検出のための少なくとも一つの基準を基に特定する装置に関するデータを収集するために使用される。収集されたデータは解析モジュール２２０に送信される。
【００５９】
一側面では、解析モジュール２２０は、サービス１２０からユーザ１１０の個人データがデータ流出したことによって発生した複数のコンピュータ装置１３０のうちの少なくとも一つに対するサイバー攻撃を（たとえば、受信したサービスデータおよび装置データに基づいて）検出することができる。一部の側面では、解析モジュール２２０は、サイバー攻撃はサービスを参照してデータ流出した個人データを使用するという前提条件を含む基準を基に、サイバー攻撃を検出することができる。たとえば、解析モジュール２２０は、第１のユーザが会員であり連絡先情報（すなわち個人データ）として電子メールアドレス＜john@email.com＞を登録している仮想通貨取引サービスにおいてデータ流出が発生したことを示すサービスデータを解析することができる。解析モジュール２２０は、仮想通貨取引サービスを参照したり、あるいは、仮想通貨取引のアドレスや仮想通貨投資についてのキーワードが入った提案を含んでいたりする、漏えいした電子メールアドレス＜john@email.com＞宛の不審な電子メールを第１の装置が受信したことを示す第１のコンピュータ装置からの装置データを解析することができる。不審な電子メールは、未認証または不明の送信者から送信されたり、フィッシングリンクを含んでいたりする場合がある。
【００６０】
一側面では、解析モジュール２２０は、データ漏えいのソースについての手がかりや示唆を示すユーザ１１０からの情報に基づいて攻撃を判定することもできる。受信した手がかりは、データ漏えいのソース候補を示す場合がある。たとえば、ユーザはこれまでＳＭＳ（スパム）メールを受信したことはなかったものの、最近になってスポーツクラブに入会してからスポーツをテーマとしたスパムメールが送られるようになったとする。この例では、解析モジュール２２０は、当該クラブに入会してからメール送信が始まったとするユーザの考えを示す表示をユーザから受信することができる。こうした情報は、装置１３０のクラスタをより正確に設定し、攻撃ベクトルを特定するため、解析モジュール２２０によって使用される。
【００６１】
ステップ３３０では、収集モジュール２１０が収集したデータに基づいて、ユーザ１１０がユーザに関するデータを保持するサービス１２０とインタラクションする手段である装置１３０のクラスタを作成するため、解析モジュール２２０を使用する。一側面では、解析モジュール２２０は、受信したサービスデータおよび装置データに基づいて、複数のコンピュータ装置１３０のサブセットのクラスタを作成してもよい。
【００６２】
ステップ３４０では、攻撃ベクトルの特徴に基づいて攻撃ベクトルを特定するために解析モジュール２２０を使用する。攻撃ベクトルを判定する特徴は、少なくとも、（ｉ）攻撃のソース又はソースグループ、（ｉｉ）攻撃の標的である要素又は要素グループ、（ｉｉｉ）アクションの種類、および、（ｉｖ）アクションの媒介手段（インストルメント）でもよい。
【００６３】
一側面では、解析モジュール２２０は、受信した装置データに基づいてサイバー攻撃の攻撃ベクトルを特定することができる。一部の側面では、受信した装置データに基づいてサイバー攻撃の攻撃ベクトルを特定する処理において、第１のユーザとインタラクションしているサービスがサイバー攻撃のソースであると判定することができる。一部の側面では、受信した装置データに基づいて攻撃の攻撃ベクトルを特定する処理において、攻撃の標的である第１のユーザの電子メールアドレスおよび当該第１のユーザの電話番号を含む要素グループを判定する。たとえば、ハッカーが電子メールアドレスや電話番号などのユーザ１１０の個人データにアクセスした場合、ユーザ１１０は電子メールや電話呼出を受信する可能性がある。他の側面では、受信した装置データに基づいて攻撃の攻撃ベクトルを特定する処理において、悪意のあるアクションの種類を判定すること、および／または、アクションの媒介手段（インストルメント）を判定することができる。
【００６４】
ステップ３５０では、解析モジュール２２０は、攻撃に対抗するための少なくとも一つのアクションを選択するために使用され、当該アクションは、該当クラスタに自身の複数の装置１３０が属している別のユーザ１１０の少なくとも一つの装置１３０に対する攻撃ベクトルの特徴と一致した場合、該当クラスタのすべてのユーザ１１０の装置１３０の攻撃対抗モジュール２３０に送信される。一側面では、解析モジュール２２０は、特定された攻撃ベクトルに基づいてサイバー攻撃に対抗するためのアクションを判定し、アクションの仕様をクラスタ内のコンピュータ装置１３０のサブセットに送信することができる。一部の側面では、サイバー攻撃に対抗するためのアクションは、さらに、クラスタに自身の複数のコンピュータ装置が属している別のユーザの少なくとも一つのコンピュータ装置に対する攻撃ベクトルの特徴との照合に基づいて判定される。たとえば、サイバー攻撃に対抗するためのアクションは、該当クラスタに自身の複数の装置１３０が属している別のユーザ１１０の少なくとも一つの装置１３０に対する攻撃ベクトルの特徴と一致した場合、該当クラスタのすべてのユーザ１１０の装置１３０のコンピュータセキュリティモジュール（攻撃対抗モジュール２３０等）に送信される。
【００６５】
ステップ３６０では、ユーザ１１０のコンピュータ装置１３０に対する攻撃に対抗するアクションを実行するために攻撃対抗モジュール２３０を使用する。
【００６６】
一変形側面では、ステップ３２０の後で実行されるステップ３７０において、解析モジュール２２０はさらに、収集モジュール２１０から取得したデータに基づいて、攻撃に対抗するために実行されたアクションの有効性を解析する。一般的なケースでは、結果として他のユーザ１１０の装置１３０に対する攻撃を検出するための上述の基準によって攻撃が検出されなかった場合、実行したアクションは有効であったと判断される。一側面では、解析モジュール２２０は、複数の装置から受信した診断データに基づいてサイバー攻撃に対抗するためのアクションの効果を判定し、判定された効果に基づいて、サイバー攻撃を検出して対抗するための１以上の基準を変更してもよい。
【００６７】
図４は、ユーザがユーザに関するデータを保持するサービスとインタラクションする手段であるコンピュータ装置に対する攻撃に対抗するためのシステムおよび方法の側面が一例示的側面に基づいて実行され得るコンピュータシステム２０を示すブロック図である。なお、コンピュータシステム２０は、たとえば、上記で説明したコンピュータ装置１３０、サービス１２０のサーバ、および遠隔サーバ２９０等に相当し得る。
【００６８】
図示されているとおり、コンピュータシステム２０（パーソナルコンピュータまたはサーバでもよい）は、中央処理装置２１、システムメモリ２２、および、中央処理装置２１に対応するメモリを含む様々なシステムコンポーネントを接続するシステムバス２３を備える。当業者に理解されるとおり、システムバス２３は、バスメモリまたはバスメモリ制御部、周辺バス、および他のバスアーキテクチャと相互作用可能なローカルバスを含んでもよい。システムメモリは、永久メモリ（ＲＯＭ）２４およびランダムアクセスメモリ（ＲＡＭ）２５を含んでもよい。基本入力／出力システム（basic  input／output  system；ＢＩＯＳ）２６は、ＲＯＭ２４を使用してオペレーティングシステムをロードする時などの、コンピュータシステム２０の要素間の基本的な情報転送手順を記憶してもよい。
【００６９】
コンピュータシステム２０は、さらに、データの読み取りおよび書き込みを行うハードディスク２７、取り外し可能な磁気ディスク２９の読み取りおよび書き込みを行う磁気ディスクドライブ２８、ならびに、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭおよびその他の光学媒体等の取り外し可能な光学ディスク３１の読み取りおよび書き込みを行う光学ドライブ３０を含んでもよい。ハードディスク２７、磁気ディスクドライブ２８、および光学ドライブ３０は、それぞれ、ハードディスクインタフェース３２、磁気ディスクインタフェース３３、および光学ドライブインタフェース３４を介して、システムバス２３に接続されている。ドライブおよびそれに対応するコンピュータ情報媒体は、コンピュータ命令、データ構造、プログラムモジュールおよびその他のコンピュータシステム２０のデータを記憶するための独立電源型モジュールである。
【００７０】
例示的側面は、コントローラ５５を介してシステムバス２３に接続される、ハードディスク２７、取り外し可能な磁気ディスク２９、および取り外し可能な光学ディスク３１を用いるシステムを備えている。コンピュータによって読み取り可能な形式でデータを記憶できる媒体５６（ソリッド・ステート・ドライブ、フラッシュメモリカード、デジタルディスク、ランダムアクセスメモリ（ＲＡＭ）等）であればどのようなものでも利用できることは、当業者であれば理解できるであろう。
【００７１】
コンピュータシステム２０は、オペレーティングシステム３５が記憶され得るファイルシステム３６、ならびに、追加プログラムアプリケーション３７、その他のプログラムモジュール３８およびプログラムデータ３９を有する。コンピュータシステム２０のユーザは、キーボード４０、マウス４２、またはマイク、ジョイスティック、ゲームコントローラ、スキャナ等（これらに限定されない）のその他の当業者に知られている入力装置を使用して命令や情報を入力することができる。これらの入力装置は、通常、シリアルポート４６を介してコンピュータシステム２０に差し込まれ、システムバスに接続される。ただし、当業者であれば、入力装置は、パラレルポート、ゲームポート、またはユニバーサルシリアルバス（ＵＳＢ）等（これらに限定されない）を介するその他の方法でも接続され得ることがわかるであろう。モニタ４７やその他のタイプの表示装置も、ビデオアダプタ４８などのインタフェースを介してシステムバス２３に接続されてもよい。モニタ４７に加え、パーソナルコンピュータは、ラウドスピーカやプリンタ等のその他の周辺出力装置（図示せず）を装備していてもよい。
【００７２】
コンピュータシステム２０は、１以上のリモートコンピュータ４９へのネットワーク接続を使用して、ネットワーク環境で動作してもよい。一台（または複数）のリモートコンピュータ４９は、上述のコンピュータシステム２０の性質で説明した要素の大部分もしくはすべてを含むローカルコンピュータワークステーションまたはサーバでもよい。以下に限定されないが、ルータ、ネットワークステーション、ピア装置またはその他のネットワークノードなど他の装置も、コンピュータネットワーク内に存在してもよい。
【００７３】
ネットワーク接続により、ローカルエリア・コンピュータネットワーク（ＬＡＮ）５０およびワイドエリア・コンピュータネットワーク（ＷＡＮ）が形成される。これらのネットワークは、企業コンピュータネットワークおよび社内ネットワークで使用され、通常はインターネットにアクセスできる。ＬＡＮまたはＷＡＮネットワークでは、パーソナルコンピュータ２０は、ネットワークアダプタまたはネットワークインタフェース５１を介して、ローカルエリア・ネットワーク５０に接続されている。ネットワークが使用されると、コンピュータシステム２０は、モデム５４、または、インターネットなどのワイドエリア・コンピュータネットワークによって通信を可能にする、当業者に周知のその他のモジュールを使用することができる。内部装置または外部装置であるモデム５４は、シリアルポート４６によってシステムバス２３に接続されてもよい。このネットワーク接続が、通信モジュールを使用して一つのコンピュータを別のコンピュータに接続させる数々の周知の方法の非限定的な例であることは、当業者であればわかるであろう。
【００７４】
種々の側面において、本明細書に記載するシステムおよび方法は、ハードウェア、ソフトウェア、ファームウェアまたはその組み合わせにおいて実行されてもよい。ソフトウェアで実行される場合、この方法は１以上の命令またはコードとして非一時的なコンピュータ可読媒体に記憶されてもよい。コンピュータ可読媒体はデータ記憶装置も含む。一例では、このコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ、フラッシュメモリ、その他の電気、磁気または光学記憶媒体、あるいは、命令やデータ構造の形式で所望のプログラムコードを伝達または記憶するために使用し、汎用コンピュータのプロセッサからアクセス可能な、その他の媒体を含んでもよいが、これらに限定されない。
【００７５】
種々の側面において、本明細書に記載したシステムおよび方法は、モジュールによって処理することができる。本明細書の「モジュール」という用語は、たとえば、特定用途向け集積回路（ＡＳＩＣ）またはフィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）などのハードウェア、あるいは、モジュールの機能を実行するマイクロプロセッサシステムおよび命令一式などのハードウェアとソフトウェアとの組み合わせによって実行される、実装置、コンポーネントまたは一組のコンポーネントのことを指しており、これらは（実行中に）マイクロプロセッサシステムを専用装置に変換する。モジュールは、一部の機能をハードウェアのみで実行させ、他の機能をハードウェアとソフトウェアの組み合わせによって実行させるという、２つの組み合わせで実行させることもできる。特定の実施形態では、モジュールの少なくとも一部、または、場合によってすべてが、汎用コンピュータのプロセッサで実行されてもよい（上記図４で詳しく説明）。よって、各モジュールは、様々な適切な設定で実行され得るものであって、本明細書で例示した特定の実施形態に限定されるものではない。
【００７６】
なお、明瞭化のため、各側面の一般的な特徴すべてについては開示しない。本開示の実際の実装を開発する際、開発者の具体的な目的を達成するためには実装に応じた数々の決定を行わなければならず、具体的な目的は実装や開発者によって異なることに留意されたい。こうした開発上の取り組みは、複雑で時間を要するものであるが、本開示の利益を享受する当業者にとっては日常の作業であることを理解されたい。
【００７７】
更に、本明細書で使用する用語又は表現は、あくまでも説明のためであり、限定するものではないことを理解されたい。よって、本明細書の用語又は表現は、関連技術の熟練者の知識と組み合わせて、本明細書に示す教示及び指針に照らして当業者によって解釈されたい。明細書又は特許請求の範囲における用語はいずれも、特に明記していない限り、一般的でない意味や特別な意味をもつものではない。
【００７８】
本明細書で開示した様々な側面は、本明細書で例示した既知のモジュールの、現在及び将来の既知の均等物を包含する。本明細書では、複数の側面及び応用例を示して説明したが、本明細書に開示した発明の概念の範囲内で、上記よりも多くの変形例が可能であることは、本開示の利益を享受する当業者にとって明らかであろう。
【図１】
2019220126.tif 000003
【図２】
2019220126.tif 000004
【図３】
2019220126.tif 000005
【図４】
2019220126.tif 000006
【外国語明細書】
2019220126000001.pdf