(58)【調査した分野】(Int.Cl.,DB名)
無線アクセスポイントデバイスのセキュリティリスクを評価するためのシステムであって、該システムは、1つ以上のプロセッサと、該1つ以上のプロセッサに動作可能に結合された1つ以上のメモリデバイスとを含み、
前記1つ以上のメモリデバイスは、
第1のデバイス及び第2のデバイスのうちの1つから、一意的な識別子を有するアクセスポイントの第1のアクセスの第1の報告を受信することであって、前記第1の報告は、前記アクセスポイントの前記第1のアクセスの属性を含む、ことと、
前記第1のデバイス、前記第2のデバイス、及び第3のデバイスのうちの1つから、前記アクセスポイントの前記第1のアクセスの後に生じる、前記アクセスポイントのアクセスの第2の報告を受信することであって、前記第2の報告は前記アクセスポイントの前記第2のアクセスの属性を含む、ことと、
前記第1及び第2のアクセスの前記属性を集合して集合的属性を得ることであって、各集合的属性は、前記第1及び第2のアクセスの前記属性のうちの対応する属性の値の集合である、ことと、
前記アクセスポイントが安全でないことを前記第1のアクセス及び前記第2のアクセスの前記集合的属性が示している場合、前記アクセスポイントが安全でないことを示すメッセージを、前記第1のデバイスへ送信することと、
を前記1つ以上のプロセッサに行わせるのに有効である実行可能なコードを記憶し、
前記実行可能なコードは、
前記第1及び第2のアクセスの各々について、セッションごとの再接続数の関数である第1の値を計算することと、
前記第1及び第2のアクセス中に検出されたローカルインターネットプロトコル(IP)アドレスの数の関数である第2の値、前記第1及び第2のアクセス間の経過時間の関数である第3の値、及び、前記アクセスポイントにアクセスして前記コンピュータシステムに報告を送信した一意的なユーザの数である第4の値、のうちの少なくとも1つを計算することと、
前記第1の値と、前記第2、第3、及び第4の値のうちの少なくとも1つとの組み合わせであるスコアを作成することと、
前記アクセスポイントが安全でないことを前記スコアが示している場合、前記アクセスポイントが安全でないことを示すメッセージを前記第1のデバイスへ送信することと、
によって集合的属性を得るよう、前記1つ以上のプロセッサに前記第1及び第2のアクセスの前記属性を集合させるのに更に有効である、システム。
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、良好なセキュリティプロトコルの告知は、特定のAPに対する接続中のユーザの安全性を保証するものではない。幾つかのWi−Fiルータは、遠隔で感染することがあり得るが、攻撃者がユーザに対して物理的に近接しているときに、より多くの攻撃が可能である。ユーザの通信範囲内の幾つかのAPは、ハニーポットであり得る。合法に見える名称を有するAPは、パスワードを集めるか、またはトラフィックを変更することを仕組んでいる。ホットスポットのパスワードが脆弱である場合、近接した攻撃者は、広く利用可能なソフトウェアを利用し、認証なしでネットワークに参加することによってその脆弱性を発見することができる。同―ネットワーク上の信頼されないユーザは、再接続させた後でネットワークトラフィックを復号することができるか、またはゲートウェイとしてそのデバイスを提示するためにARPキャッシュポイズニングを利用して、マン・イン・ザ・ミドル(man−in−the−middle)になるか、またはルータの脆弱性を検出して利用することができる。ユーザのコンピュータが既にマルウェアに感染している場合、このような攻撃は、ユーザが気付かないうちに実行され得る。
【0007】
ARP攻撃を示し得る突然のゲートウェイ変更の検出など、推定上安全なWi−Fiホットスポットにおいて可能性のある攻撃を検出するための幾つかの方法が存在する。しかしながら、これらの方法は、信頼性に欠け、多数の誤った警告を発生することがある。ARP記録は、ユーザがホテル内の異なるAPの間で移動するときに変化し得る。再接続の繰り返しは、良好ではない接続品質によって引き起こされ得る。ハニーポットは、任意の既知の危険指標を提示しないことがある。
【0008】
APまたはネットワークゲートウェイは、クライアント分離を強要することによって幾つかの種類の攻撃からユーザを保護し得る。各クライアントは、ゲートウェイで通信することのみ許可されるが、他のローカルクライアントは、許可されない。この方法は、ローカルネットワークがクライアント間通信(プリンタ、ローカルストレージなど)を要求するデバイスを有さないが、ハニーポットから保護されていない場合にのみ使用されてもよい。使用可能な時には、クライアント分離は告知されないので、さらなる保護を展開するか否かの決定をするためには使用されない。
【0009】
異なるリスクプロファイルに加えて、同一の通信範囲内の異なるAPは、接続品質に大きな相違を有し得る。例えば、一方は、高帯域幅のISPを通じた大きなデータスループットをサポートできるが、別のAPは、異なるISPを通じた非常に低いデータスループットを提供する。現在、ユーザデバイスからの各接続を実際に試験する前に、最良の接続品質、より詳細にはより大きい帯域幅を有するネットワークを選択する方法は存在しない。
【0010】
したがって、特に、強いセキュリティプロトコルを告知するが、低い接続品質に関連付けられた重要な危険または問題にそのユーザを晒し得る脆弱性を有する無線アクセスポイントのセキュリティおよび接続品質を評価する手段の必要性が存在する。
【課題を解決するための手段】
【0011】
上記の課題を解決するために、本発明の方法は、無線アクセスポイントデバイスのセキュリティリスクを評価するための方法であって、
第1のデバイス及び第2のデバイスのうちの1つから、一意的な識別子を有するアクセスポイントの第1のアクセスの第1の報告を受信することであって、前記第1の報告は、前記アクセスポイントの前記第1のアクセスの属性を含む、ことと、
前記第1のデバイス、前記第2のデバイス、及び第3のデバイスのうちの1つから、前記アクセスポイントの前記第1のアクセスの後に生じる、前記アクセスポイントのアクセスの第2の報告を受信することであって、前記第2の報告は前記アクセスポイントの前記第2のアクセスの属性を含む、ことと、
前記第1及び第2のアクセスの前記属性を集合して集合的属性を得ることであって、各集合的属性は、前記第1及び第2のアクセスの前記属性のうちの対応する属性の値の集合である、ことと、
前記アクセスポイントが安全でないことを前記第1のアクセス及び前記第2のアクセスの前記集合的属性が示していると判定することと、
前記アクセスポイントが安全でないことを示すメッセージを、前記第1のデバイスへ送信することと、
をコンピュータシステムによって実行することを含み、
前記第1及び第2のアクセスの前記属性を集合して集合的属性を得ることは、
前記第1及び第2のアクセスの各々について、セッションごとの再接続数の関数である第1の値を計算することと、
前記第1及び第2のアクセス中に検出されたローカルインターネットプロトコル(IP)アドレスの数の関数である第2の値を計算すること、前記第1及び第2のアクセス間の経過時間の関数である第3の値を計算すること、及び、前記アクセスポイントにアクセスして前記コンピュータシステムに報告を送信した一意的なユーザの数である第4の値を計算すること、のうちの少なくとも1つと、
前記第1の値と、前記第2、第3、及び第4の値のうちの少なくとも1つとの組み合わせであるスコアを作成することと、
を更に含み、
前記アクセスポイントが安全でないことを前記第1のアクセス及び前記第2のアクセスの前記集合的属性が示していると判定することは、前記アクセスポイントが安全でないことを前記スコアが示していると判定することを含む、ことを特徴とする。
【0012】
また、本発明のシステムは、無線アクセスポイントデバイスのセキュリティリスクを評価するためのシステムであって、該システムは、1つ以上のプロセッサと、該1つ以上のプロセッサに動作可能に結合された1つ以上のメモリデバイスとを含み、
前記1つ以上のメモリデバイスは、
第1のデバイス及び第2のデバイスのうちの1つから、一意的な識別子を有するアクセスポイントの第1のアクセスの第1の報告を受信することであって、前記第1の報告は、前記アクセスポイントの前記第1のアクセスの属性を含む、ことと、
前記第1のデバイス、前記第2のデバイス、及び第3のデバイスのうちの1つから、前記アクセスポイントの前記第1のアクセスの後に生じる、前記アクセスポイントのアクセスの第2の報告を受信することであって、前記第2の報告は前記アクセスポイントの前記第2のアクセスの属性を含む、ことと、
前記第1及び第2のアクセスの前記属性を集合して集合的属性を得ることであって、各集合的属性は、前記第1及び第2のアクセスの前記属性のうちの対応する属性の値の集合である、ことと、
前記アクセスポイントが安全でないことを前記第1のアクセス及び前記第2のアクセスの前記集合的属性が示している場合、前記アクセスポイントが安全でないことを示すメッセージを、前記第1のデバイスへ送信することと、
を前記1つ以上のプロセッサに行わせるのに有効である実行可能なコードを記憶し、
前記実行可能なコードは、
前記第1及び第2のアクセスの各々について、セッションごとの再接続数の関数である第1の値を計算することと、
前記第1及び第2のアクセス中に検出されたローカルインターネットプロトコル(IP)アドレスの数の関数である第2の値、前記第1及び第2のアクセス間の経過時間の関数である第3の値、及び、前記アクセスポイントにアクセスして前記コンピュータシステムに報告を送信した一意的なユーザの数である第4の値、のうちの少なくとも1つを計算することと、
前記第1の値と、前記第2、第3、及び第4の値のうちの少なくとも1つとの組み合わせであるスコアを作成することと、
前記アクセスポイントが安全でないことを前記スコアが示している場合、前記アクセスポイントが安全でないことを示すメッセージを前記第1のデバイスへ送信することと、
によって集合的属性を得るよう、前記1つ以上のプロセッサに前記第1及び第2のアクセスの前記属性を集合させるのに更に有効である、ことを特徴とする。
【発明を実施するための形態】
【0014】
本発明のコンポーネントは、本明細書の図面に一般的に記述され図示されるように、広い範囲の異なる構成で配置し、設計することができることは容易に理解されるであろう。したがって、図面に表されるような、本発明の実施形態の以下のより詳細な記述は、請求される本発明の範囲を限定することを意図するものではなく、本発明によって現在考えら得る実施形態のある例を単に表すものである。ここに記述された実施形態は、図面を参照することによって最良に理解され、類似の部分は、図面を通して類似の参照番号によって示される。
【0015】
本発明は、本技術分野の現在の状態に応じて、より詳細には、現在利用可能な装置および方法によっていまだ完全には解決されていない本技術分野における問題点およびニーズに応じて開発されたものである。
【0016】
本発明による実施形態は、装置、方法またはコンピュータプログラム製品として具現化されてもよい。したがって、本発明は、全体としてハードウェアの実施形態、全体としてソフトウェアの実施形態の形式(ファームウェア、レジデントソフトウェア、マイクロコードなどを含む)、または本明細書で“モジュール”もしくは“システム”として全て一般的に称され得るソフトウェアとハードウェアとの態様の組み合わせる実施形態の形式をとり得る。さらに、本発明は、媒体内で具現化されるコンピュータ利用可能なプログラムコードを有する表現のあらゆる有形媒体内で具現化されるコンピュータプログラム製品の形式をとってもよい。
【0017】
一つ以上のコンピュータ利用可能な媒体またはコンピュータで読み出し可能な媒体の如何なる組み合わせが使用されてもよい。例えば、コンピュータ可読媒体は、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)デバイス、リードオンリーメモリ(ROM)デバイス、消去可能なプログラマブルリードオンリーメモリ(EPROMまたはフラッシュメモリ)デバイス、ポータブルコンパクトディスクリードオンリーメモリ(CDROM)、光学ストレージデバイスおよび磁気ストレージデバイスのうちの一つ以上を含んでもよい。選択された実施形態においては、コンピュータ可読媒体は、命令実行システム、装置もしくはデバイスによって使用するため、または命令実行システム、装置もしくはデバイスと接続して使用するためのプログラムを含み、格納し、通信し、伝搬するかまたは伝送することができるあらゆる非一時的媒体を含んでもよい。
【0018】
実施形態は、クラウドコンピューティング環境内で実現されてもよい。この記述および以下の請求項においては、“クラウドコンピューティング”は、仮想化を介して迅速にセットアップすることができ、最小の管理努力もしくはサービスプロバイダ相互作用でリリースし、それによってスケール変更することができる。構成可能なコンピューティングリソース(例えば、ネットワーク、サーバ、ストレージ、アプリケーションおよびサービス)の共有されたプールに対する、ユビキタスで、簡便かつオンデマンドネットワークアクセスを可能とするためのモデルとして定義されてもよい。クラウドモデルは、種々の特徴(例えば、オンデマンドセルフサービス、ブロードネットワークアクセス、リソースプーリング、迅速な弾力性およびメジャードサービス)、サービスモデル(例えば、ソフトウェアアズアサービス(“SaaS”)、プラットフォームアズアサービス(“PaaS”)およびインフラストラクチャアズアサービス(“IaaS”))および展開モデル(例えば、プライベートクラウド、コミュニティクラウド、パブリッククラウドおよびハイブリッドクラウド)で構成することができる。
【0019】
本発明の動作を実行するためのコンピュータプログラムコードは、JaVa、Smalltalk、C++などのオブジェクト指向プログラミング言語、“C”プログラミング言語などの従来の手続き型プログラミング言語、または類似のプログラミング言語を含む、一つ以上のプログラミング言語の如何なる組み合わせで書き込まれてもよい。プログラムコードは、全体としてスタンドアロンソフトウェアパッケージとしてコンピュータシステム上で、スタンドアロンハードウェアユニット上で、部分的にコンピュータから幾らかの距離を離隔された遠隔コンピュータ上で、または、全体として遠隔コンピュータもしくはサーバ上で実行してもよい。後者においては、遠隔コンピュータは、ローカルエリアネットワーク(LAN)もしくはワイドエリアネットワーク(WAN)を含むあらゆる種類のネットワークを通じてコンピュータに接続されてもよいし、または、その接続が、外部コンピュータ(例えば、インターネットサービスプロバイダを利用してインターネットを通じて)に対して行われてもよい。
【0020】
本発明は、本発明の実施形態による方法、装置(システム)およびコンピュータプログラム製品のフローチャート図および/またはブロック図を参照して以下に記述される。フローチャート図および/またはブロック図の各ブロックならびにフローチャート図および/またはブロック図内のブロックの組み合わせは、コンピュータプログラム命令もしくはコードによって実現することができることが理解されるだろう。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、またはマシンを作成するための他のプログラマブルデータ処理装置のプロセッサに提供されてもよく、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行すると、この命令は、フローチャートおよび/またはブロック図内の一つ以上のブロックで特定される機能/動作を実現するための手段を作成する。
【0021】
これらのコンピュータプログラム命令は、コンピュータまたは特定の方法で機能する他のプログラムデータ処理装置に命令できる非一時的コンピュータ可読媒体に格納することもでき、コンピュータ可読媒体内に格納された命令は、フローチャートおよび/またはブロック図の一つ以上のブロックで特定される機能/動作を実現する命令手段を含む製造製品を作成する。
【0022】
コンピュータプログラム命令は、コンピュータまたは他のプログラマブルデータ処理装置上にロードされてもよく、一連の動作ステップをコンピュータまたは他のプログラマブル装置上で実施させ、コンピュータに実装されるプロセスを実施して、コンピュータまたは他のプログラマブル装置上で実行する命令が、フローチャートおよび/またはブロック図の一つ以上のブロックで特定される機能/動作を実現するためのプロセスを提供する。
【0023】
図1は、通信範囲内にある5個のアクセスポイント(AP)(100、110、120、130、150)からのビーコンを受信するモバイル無線デバイス140の一例を示す。幾つかのAPは、各APに対する一意的な基本サービスセット識別子(BSSID)を利用する間に、同一のサービスセット識別子(SSID)をブロードキャストする。
【0024】
一つ以上の実施形態においては、信頼できる接続を提供するために、重複する通信範囲内で同一のBSSIDを使用してもよい独立した(協働しない)APは、二つとないが、一意的なBSSIDを有する複数のAPによる同一のSSIDの利用は可能である。
【0025】
図示された例においては、AP110および120は、同一ネットワークのメンバー(例えば、ホテルのWi−Fiネットワーク)として同一のSSIDを合法的に共有する。しかしながら、AP100は、偽物である。AP100は、同一のSSIDをブロードキャストし、同一ネットワークの一部であるふりをし、一意的なBSSIDを作成して、接続を可能にする。ユーザが、ログイン本人証明を再入力するためにプロンプトで入力を求められる場合、攻撃者は、それらを利用して、対象のWi−Fiネットワークにアクセスし、その後、ローカル脆弱性を突き止めるか、または他の認証されたユーザからトラフィックを聞く。
【0026】
AP130は、例えば、異なるSSIDを有する近所のカフェなど、異なるネットワーク由来の合法的デバイスである。一つ以上の実施形態においては、AP150も異なるSSDを有するが、それは“ハニートラップ”である。ユーザがAP150を通じて接続するように誘いこまれ、ユーザのデータが分析または改変され得る。新規SSIDおよびBSSIDを作成する代わりに、AP150は、SSIDおよびBSSIDの幾つかの既知の値を利用する(例えば、有名カフェチェーンの既存のAPからデータをコピーするなど)ことができる。同一のBSSDを有する合法的なAPが通信範囲内にない限りは、ユーザのモバイルデバイス140は、SSID、BSSIDおよびパスワードが、クローンの偽装AP150に対するテンプレートとして使用される合法的なAPに対する以前のビジットから格納された場合(例えば、AP100に類似する合法的なAPの近辺において、より早く異なるBSSIDをだますことによって、攻撃者は予めパスワードを知ることができる)、自動的にAP150に接続するかもしれない。
【0027】
ユーザのデバイス由来のビジットの履歴に基づいた従来方法は、AP150(それがより初期に考慮され得る合法的なAPのクローンである)に対して警告するために役立たないか、または(それが異なるBSSIDを有し、同一のユーザによって以前ビジット(閲覧)されていない場合)合法的AP110に関する警告を発行することがあり、偽物100とそれとを区別することに失敗する。
【0028】
予め規定された組のBSSIDに対するアクセスの制限に基づいた従来方法は、悪意のあるクローンとしてAP150を特定することにも役立たない。また、その領域に対する新規ユーザは、AP110、120、130などの合法的BSSDのリストについての最新の情報を有し得ない。一実施形態においては、本発明は、セキュリティリスクの増加したAPを特定するために、複数のユーザからの報告に依存する。
【0029】
図2は、このような実施形態の一例を示し、異なる2つのモバイル無線デバイス220および260のユーザから、同一の位置に対して2つの個別のビジットがあるときのデータフローの図示を組み合わせたものである。
【0030】
一つ以上の実施形態においては、デバイス220は、AP200、210、230および240からビーコンを検出する。受信された各ビーコンに対するSSID、BSSIDおよび通信チャネルの決定後、デバイス220は、近隣の携帯電話基地局225を利用して、携帯電話通信ネットワークを通じてこの情報を含む報告を送信する。報告の送信中、デバイス220は、自身のID(例えば、そのネットワークカードのIMEI識別子またはMACアドレス)も含み、利用可能であれば、その位置についての情報(例えば、ビルトインGPS受信器から得られる)も含む。デバイス220からの報告は、遠隔サーバ270に送信され、遠隔サーバ270はデータベース内に報告されたデータを格納する。
【0031】
一つ以上の実施形態においては、異なる日に、異なるデバイス260によって同一位置がビジットされ、この異なるデバイス260は、AP230、240および250からビーコンを検出する。それは、発見されたデータおよび自身のIDのうちの幾つかを遠隔サーバ270に報告するが、(例えば、GPSデバイスの欠如によって)その位置についての情報は追加しない。しかしながら、遠隔サーバ270は、携帯電話基地局225のIPアドレスを受信せず、適切なルックアップテーブルにアクセスを有する場合に、このIPアドレスをデバイス260の概略位置に変換することができる。
【0032】
一つ以上の実施形態においては、デバイスを報告することは、報告されたAPのBSSIDを少なくとも参照すべきであり、APの他のパラメータは、オプションである(合法的アクセスポイントのBSSIDは一意的であるべきである)。別の実施形態においては、デバイスの報告は、APの別の一意的識別子(例えば、BSSIDと異なる場合は、MACアドレス)を参照してもよいか、または複数のパラメータから組み合わせられた一意的識別子(例えば、SSIDおよびBSSIDの組み合わせのハッシュ)を作成してもよい。
【0033】
図示された例においては、同一の位置に対する異なるビジット中に異なるデバイスによって受信されたWi−Fiビーコン間に相違が存在する。
【0034】
AP200および210はデバイス220によってのみ検出される。
【0035】
AP250はデバイス260によってのみ検出される。
【0036】
一つ以上の実施形態は、合法的なAPが悪意のあるAPよりも、より永続的であるという事実を明らかにする。悪意のあるAPによる露出時間の増加は、その発見のリスクを増加させ、所有者に対する潜在的なトレーサビリティを増加させる。悪意のあるAPの大半は、断続的にのみ利用可能である一方、合法的なAPは長期間、同一の場所にとどまるだろう。
【0037】
提供された例においては、断続的APのうちの二つ(200および250)は悪意のあるものであるが、AP210は、悪意のない理由でデバイス260には ブロードキャストしない合法的APである。それは新規であり得るか、またはメンテナンスのプロセス中であり得る。したがって、本例は、悪意のあるAP200および250から悪意のないAP210を区別するのに十分なデータを提供しない。しかしながら、AP230および240が異なる2つのデバイスからの2回のビジットに遭遇されたという事実は、本発明によって用いられ、これらのAPに関連付けられるセキュリティリスクの評価を低下させ、それらが合法的であることの可能性を増加させる。
【0038】
図示された例においては、報告は、別の通信チャネル(携帯電話ネットワーク)を利用して、あらゆるデバイスがあらゆるアクセスポイントに接続される前に送信される。別の実施形態においては、一つ以上の報告は、延期され得、例えば、ユーザのデバイス上に格納されて、その後、ユーザが位置を変更した後で別のAPに接続(例えば、家のWi−Fiに対する接続)するときに自動的に送信され得る。
【0039】
図3は、本発明の他の実施形態を図示し、報告は、報告されたAPに対する接続を確立した後で送信される。
【0040】
この例においては、ユーザのデバイス320は、
図2におけるデバイス220および260によってビジットされた位置とは異なる位置に入り、AP310および300からビーコンを検出する。デバイス320は、BSID、SSIDおよび通信チャネルなどの受信されたビーコンのパラメータを判定し、その後、現在のAPのうちの一つ(310)に対する接続に進む。この点において、デバイス320は、各APのセキュリティまたは品質評価についての如何なる情報も有し得ないか、またはそれを無視するか、または通信決定を誘導するためにそれを使用し得ない。この例の目的に対して、関連する事実は、デバイス320がAP310に接続し、その報告を送信するためにこの接続を利用することである。
【0041】
一つ以上の実施形態においては、本例におけるAP300は、
図2のAP210のクローンであることに留意されたい。つまり、AP300は、同一のSSIDおよびBSSIDを有するが、合法的なAPの通信範囲外に位置するため、クローンAPに対する接続は、成功し得る。デバイス320は、AP300のパラメータを報告するだけである。そのセキュリティリスクの評価は、報告の集合が分析されるまで延期される。
【0042】
一つ以上の実施形態においては、この報告は遠隔サーバ330に送信され、本例においては、遠隔サーバ330は個別のデータベースサーバ340に接続される。遠隔サーバ330は、AP310のIPアドレスを検出してもよく、AP310のおおよその位置を計算するためにそれを利用して、そのIPアドレスまたは他の関連情報(AS番号、割り当て情報、セキュリティ組織からのIP範囲の評価など)の所有記録を見つけてもよい。この情報は、IPアドレスに由来するが、デバイス320によって報告されるデータと共にデータベースサーバによって格納されてもよい。
【0043】
一つ以上の実施形態においては、データベースは、デバイスによって報告された値と同一の値を格納してもよいか、またはこれらの値に由来する幾つかの情報を格納してもよい。例えば、SSIDまたはチャネルデータは省略されてもよく、SSIDおよびBSSIDを組み合わせるハッシュは、BSSIDの代わりに、またはBSSIDに加えて格納することができる。(最下位オクテットマスクされた)IP範囲またはIPアドレスのハッシュは、正確なIPの代わりに格納することができる。ユーザIDまたは部分的IDのハッシュは、プライバシーのために格納することができる、など。本発明によるデータベース格納に対する要件のみが、評価されたAPによって供給されるデータ由来の一つ以上の識別子を含む要求に応じて、以前にビジットされたAPを識別することができ、関連情報を抽出することができる。
【0044】
図示された実施形態においては、デバイス320は、AP310に関連付けられた接続品質パラメータ、より詳細にはデータ帯域幅をも報告し、そうするために、デバイス320は、既知の位置、例えば、遠隔サーバ330において格納された一つ以上のデータファイルに対する要求を送信してもよい。これらのファイルまたはその派生物を受信するのにかかる時間は、AP310のレイテンシーおよび/またはスループットを測定するために使用することができる。異なるサイズのファイルが要求される場合には、レイテンシーおよびスループットパラメータは、複数の試みにわたって分離し、平均化することができる。
【0045】
他の実施形態においては、デバイスは、潜在的なセキュリティリスクおよび通信品質の双方に関連する、APの他の重要な特徴を監視して報告することができ、その特徴とは、再接続数(弱い信号によるもの、または攻撃を審議するためのものであり得る)、ビーコンレート、QoSパラメータ(例えば、HTTP対トレントトラフィックなどの異なる種類のコンテンツに対するデータレートにおける相違)、アクセス制限(例えば、特定のポート、IPアドレスまたはドメインに対するアクセスが不可能であること)である。幾つかの他の実施形態においては、モバイルデバイスは、同一ネットワークに接続された他のユーザから発されるトラフィックまたはこのようなトラフィックによって引き起こされるイベントのパラメータを監視して報告することができる。例えば、モニタリングプログラムは、“ルート”(管理)権を有し、データパケットについてのカーネルレベル情報にアクセスすることができる場合、ルータブルではないIPアドレス(ローカルネットワーク上でその存在を示す)を有する他のデバイスからのトラフィックを監視することができる。このようなプログラムは、異なる種類のパケット数(ARP、SSDPなど)、一意的なローカルIPのリスト、同一ネットワーク上で他のユーザとして識別することができる(例えば、ルータブルではないIPはゲートウェイ、DHCPまたはDNSサーバとして記載されない)このようなIPの総数を抽出し得る。このようなユーザの検出は、悪意ある動作であるという指示がなくても、APまたはネットワークゲートウェイを有する潜在的なセキュリティ問題を意味し、つまり、“クライアント分離”の欠如である。この特徴は、可能になると、ローカルネットワークユーザが互いに会話し、互いにトラフィックを聞くことを妨げる。それは、通常、信頼され、制御された環境では(例えば、家またはオフィスにおける無線プリンタと通信するために)使用不可にされるが、多数の信頼できないユーザ(例えば、同一のWi−Fiパスワードを共有するカフェの客)によってアクセスされるネットワークに対しては脆弱性を示し得る。
【0046】
一つ以上の実施形態においては、モニタリングプログラムがルートアクセスを有しない場合であっても、幾つかのデバイスは、ゲートウェイのIPアドレスなどのARPキャッシュに格納されたエントリの監視を可能とする。セッション中のこのようなアドレスの変更は、ARPキャッシュポイズニング攻撃の成功を示し得るか、またはある合法的なAPから別のAPへの変化に対する悪意のない結果であり得る。本発明の一実施形態は、複数のビジットからのデータが集められて分析されるまで、セキュリティリスク評価を延期する間に、このようなイベントまたは観察されたローカルトラフィック由来の他の情報を報告してもよい。
【0047】
一つ以上の実施形態においては、
図5および
図6を参照して記述されるように、このような分析は、同一の識別子を有するAPをビジットする複数のユーザからのデータを比較すること、または同一もしくは異なるユーザによってビジットされたこのようなAPの複数の特性を比較することを含み得る。
【0048】
図4は、Wi−Fiアクセスポイントのセキュリティおよび品質を評価する間のデータフローの一例を図示する。
【0049】
図示された例においては、モバイル無線デバイス450は、デバイス140(
図1)、220および260(
図2)と同一の位置に入る。このビジットの間、モバイル無線デバイス450は、AP400、410、420、430および460からビーコンを検出し、この受信された各ビーコンから少なくとも一つの一意的な識別子(BSSIDなど)を抽出し、この情報に、検出されたAPのセキュリティ評価に対する要求を付加する。
【0050】
図示された実施形態においては、この要求は、デバイスが現在のAPのうちのいずれかに接続される前に、遠隔サーバ470に接続するための近くの携帯電話基地局を利用することによって送信される。他の実施形態においては、セキュリティ評価に対する要求は、(現在のAPが高いセキュリティリスクを有する場合には、別のAPに再接続するための意図で)デバイスが検出されたアクセスポイントのうちのいずれかに接続した後に送信され得る。幾つかの他の実施形態においては、モバイルデバイスは、(例えば、家で)信頼されたAPに接続するまでセキュリティ評価に対する要求を延期して、その後、将来のビジットに対するセキュリティリスク評価を格納してもよい。
【0051】
図示された実施形態においては、遠隔サーバ470は、セキュリティリスク評価に対する要求を受信して、その後、データベースサーバ480にクエリを送信し、評価されたAPの一意的な識別子(例えば、BSSID)の組に対して格納された情報を得る。
【0052】
一つ以上の実施形態においては、クエリの結果を受信した後、サーバ470は、
図6および
図7を参照してさらに議論されるセキュリティリスク評価を作成し、その後、要求するデバイスにこの評価を戻す。図示された例においては、偽装アクセスポイント400は、その近隣の合法的なAP410および420よりも高いセキュリティリスクを有する(AP410および420のBSSIDが複数のモバイルデバイスからのビジット中に変更されないままであったが、AP400のBSSIDは、以前に遭遇されなかった)。
【0053】
AP430は、より高いセキュリティリスクを有する。なぜなら、同一の識別子を有するAPが、異なる位置(AP300、
図3)から報告されたからである。
【0054】
一実施形態においては、デバイス450は、セキュリティリスクが悪意のあるクローニングの試みによって上昇している、合法的なAPであっても、AP430に対する接続を断つ。別の実施形態においては、そのクローンが異なる位置において、非常に少ない回数の報告が生じる間に、長い時間間隔で複数のユーザによって複数回現在の位置から報告される場合には、AP430は、合法的なものとして認識され得る。
【0055】
一つ以上の実施形態においては、AP460も、より高いセキュリティリスクに関連付けられる。この例においては、そのBSSIDは、以前見られなかった。
図1は、“ハニートラップ”AP150の一時的な出現を図示する。
図4におけるAP460は、別の偽装APであり得るか、または単に新規の合法的なAPであり得る。本発明によれば、そのセキュリティリスクは、その永続性が複数の報告によって確認されるまでは比較的高いままである。
【0056】
幾つかの実施形態においては、遠隔サーバおよびデータベースサーバは、組み合わせることができる。このような一実施形態においては、評価されたAPの格納された位置など二次的な特性を比較することによってセキュリティリスクが評価される場合、報告されたデータストレージおよび評価されたAPに対するセキュリティリスクの評価の双方は、外部への要求を発行することなく同一のモバイルデバイス上で実施され得る。
【0057】
図5は、Wi−Fi監視および報告ステップの一実施形態を図示する。
【0058】
Wi−Fiデータ収集および報告は、報告されたAPに対する接続前に生じる。それは、二つ以上のAPからのビーコンの検出で開始し、そのSSIDをブロードキャストする(ステップ500)。
【0059】
一つ以上の実施形態においては、SSIDは、APを一意的に識別しないために、ビーコンのパケット由来の一意的な識別子(例えば、BSSID)の抽出は、ビーコンの検出後に実施される(ステップ510)。他の実施形態においては、MACアドレスは、BSSIDとは異なる場合に抽出され得る。或いは、一意的なAP識別子の決定は、APに対してユーザが接続した後に実施することができる。同一ステップにおいて、デバイスは、例えば、信号通信周波数が既知の範囲のうちの一つの内にあることを検出することによって、チャネル数を決定することもできる。一つ以上の実施形態においては、モバイルデバイスは、ステップ520で自身のデータ(オペレーティングシステムまたはビルトインGPSから利用可能な場合には位置)およびそれ自身の識別子(例えば、IMEIのハッシュまたはそのネットワークカードのMACアドレスのハッシュ)と共にAPのパラメータを報告する。この例においては、デバイスは、その後、APに接続し(ステップ530)、その後、接続が生じた(接続セッションが開始した)ことを確認する報告を遠隔サーバに送信する。他の実施形態においては、このステップは、スキップすることができるか、またはステップ520からの報告と組み合わせることができる。一つ以上の実施形態においては、接続中、モバイルデバイスは、ローカルトラフィックを監視し続け(ステップ540)、APまたはゲートウェイがクライアント分離をサポートするか否か、もししない場合には、幾つのローカルデバイスが現在同一ネットワーク上でアクティブであるかを検出してもよい。これらの発見は、潜在的にセキュリティの低いイベント、例えば、ゲートウェイIPの変更などが検出された場合に特に、即座に報告され得るか、または、その報告は、次のステップまで延期することができる。図示された実施形態においては、モバイルデバイスは、アクティブおよびパッシブモニタリングの組み合わせも実施して、接続品質を判定する(ステップ550)。例えば、モバイルデバイスは、認証解除要求および再接続を検出して、利用可能な帯域幅を評価し、APを提供するネットワークが幾つかの種類の(例えば、トレント)トラフィックを調整するか否か、または幾つかのポートもしくはプロトコルに対するアクセスをブロックするか否かを観察する。データスループットおよびレイテンシーは、アクティブに(異なるサイズのファイルに対する一つ以上の要求を遠隔サーバに発行することによって)またはパッシブに(特定のタイムフレーム内に存在するデータトラフィックを観察することによって)測定することができる。一つ以上の実施形態においては、接続品質パラメータの報告は、ステップ550で実施することができるか、またはその後に延期することができる。一つ以上の実施形態においては、接続セッションの終わり(ステップ560)は、別々の報告も引き起こし得、他の実施形態においては、全てもしくは幾つかの報告が異なるAPの集合に対する複数のビジットをカバーするバッチとして集められ、報告され得る。
【0060】
図6は、複数のユーザによる報告からWi−FiAPのセキュリティ評価を得るプロセスの一実施形態を図示する。
図4に図示されるように、モバイルデバイスは、識別されたAPのセキュリティ評価に対する要求を送信する。
図6は、このような評価を作成するために実施されるステップの一例を図示する。一つ以上の実施形態においては、プロセスは、評価されたアクセスポイントBSSID[i]に対してセキュリティリスクのデフォルト値(0)を仮定することによって、ステップ600で開始する。
【0061】
一つ以上の実施形態においては、データベース610は、以前の報告で集められた結果を含むが、BSSID[i]に関連する情報に対して問い合わせを受ける。図示された表現においては、データベース610は、キーとしてのBSSIDを有するハッシュアレイとしてこの情報を格納し、クライアント分離をサポートしないAPに対して検出された値(最初と最後の報告時刻、報告が受信された日数、通信セッション数、個別のユーザ数、再接続数、パケット種毎(ARP、SSDP、その他)の個別のローカルIP数)として集められたパラメータの組を格納する。データベース自体は、リレーショナルデータベースサポーティングSQLクエリ(Postgres、MySQLなど)または“SQLではない”データベースMongoDBなど、またはメモリ内に格納されハッシュキーによって参照される単純なハッシュアレイであり得る。
【0062】
図6は、評価されたBSSIDに対する記録がデータベース610内に見つかる場合を図示する。このような記録が見つからない場合、セキュリティリスクは、未知のAPを示す予め定義された値(通常、より安全性の高いオプションが利用可能である場合、またはVPNなどさらなる保護を使用することを少なくとも推奨する場合、ユーザの接続を妨げるほど十分に高い値)に即座に設定される。
【0063】
一つ以上の実施形態においては、ステップ620は、評価されたAPをビジットした一意的なユーザの数(num_users)に基づいてセキュリティリスクを調整する。図示された実施形態においては、num_usersが予め定義された閾値(例えば、2から10の間の値に設定される)を超えるときに、セキュリティリスクは減少する。報告するユーザ数が1を超えるとき(場合によっては、日に日に変化するとき)、それは、評価されたAPが、信頼できない可能性のあるユーザによって公衆アクセス用に使用される(例えば、カフェ)ことを示すことがあり、日数が経過しても変化しない少数のユーザが存在することは、信頼されるユーザによってアクセスされるプライベートAP(例えば、ホームオフィス)を示し得る。公衆APは、より安全性が低いと考えられ得るため、num_usersの最初の増加は、評価されるセキュリティリスクを増加させ得る。しかしながら、num_usersのさらなる増加、例えば、num_usersが閾値T_usersより大きくなった後は、セキュリティリスクを減少させ得る。同一のAPに接続する一意的ユーザ数の増加は、その永続性を確認し、短寿命の悪意のあるAPから区別する。図示された実施形態においては、このようなセキュリティリスクの減少は、関数f1(num_users)として計算される。この関数は、非線形であり得る(例えば、ユーザ数が増えすぎた場合に変化が停止するか、または方向を反転する)か、または、複数のパラメータ(例えば、ユーザ数と共に入力引数としての使用タイミング)に依存し得る。図示された実施形態の主な際立った特徴は、評価されたAPについての報告を送信する一意的ユーザの数に対する評価されたセキュリティリスクの依存であり、このような依存性は、異なる実施形態では異なるのが本質である。
【0064】
一つ以上の実施形態においては、ステップ630は、クライアント分離なしのAPに対するセキュリティリスクを調整し、ここで、デバイスの報告は、同一のローカルネットワーク上の他のユーザを検出することができる。例えば、ARPパケットに関連付けられた個別のいずれかの数のローカルIPが検出される場合、そのセキュリティリスクは、予め定義された値d_local_IPsだけ増加する。別の実施形態においては、セキュリティリスクは、個別のローカルIP数の増加と共に更に増加し得、ローカルユーザによって送信されたパケット数の増加と共にも更に増加し得る(例えば、同一のローカルIPからのARPパケットの数の増加は、ARPフラッド攻撃を示すことがある)。
【0065】
一つ以上の実施形態においては、ステップ640は、最初のアクセスおよび最後のアクセスの日付、総日数などのタイミング情報に基づいたセキュリティリスクの調整を図示する。図示された実施形態においては、カバーされる期間およびアクセス日数の増加は、APの永続性を確認し、そのセキュリティリスクを減少させる。このような現象の程度を特定する関数f2は、非線形(例えば、最近のビジットのみを考慮にいれる)または反対方向でもあり得る(例えば、最近のビジットは、移動平均と比較すると急激に変化する)。他の実施形態においては、この関数は、一つ以上のさらなるパラメータに依存し得、例えば、一意的ユーザの行動パターンを考慮し得る。
【0066】
一つ以上の実施形態においては、ステップ650は、検出された再接続数に基づいてセキュリティリスクを調整する。再接続は、比較的悪意のない理由(低い信号品質、ノイズの多い環境など)によって、または故意の攻撃(例えば、暗号化キーを検出するための再接続フレームを捕捉するために使用される認証解除要求、または異なるAPにユーザを切り替えるために使用される認証解除要求)によって引き起こされ得る。図示された実施形態においては、関数f3は、セッションごとの再接続数を評価し、この比率が大きくなると、セキュリティリスクが増加する。他の実施形態においては、セキュリティリスクは、その平均数が接続セッション数よりも非常に低いままであっても、再接続数における一時的なスパイク(急上昇)に応じて増加し得る。幾つかの他の実施形態においては、再接続数は、接続品質を評価するためにも使用され得る。ユーザは、このようなAPが低いセキュリティリスクを有する場合であっても、比較的高い再接続頻度でAPを使用することを避けるように忠告され得る。
【0067】
図示された実施形態は、セキュリティリスク調整の特定のシーケンスを示しているが、異なる実施形態は、このようなステップとは異なる順序を使用してもよいし、または複数のステップを並行して実施してもよいし、ステップのうちのいくつかをスキップしてもよいし、複数の引数関数内で異なるステップをまとめてもよい。一つ以上の実施形態においては、評価されたアクセスポイントのセキュリティリスク評価が作成された後、実施形態は、セキュリティとアクセス品質との間の最良のバランスでWi−Fi接続を確立することを支援するために使用することができる。例えば、ステップ660で、モバイルデバイスは、最小のセキュリティリスクR[j]でAPに対する接続を命令される。ステップ670では、このリスクは、安全な保護されていないアクセスに対する閾値(T_risk)と比較される。最小のリスクR[j]がT_riskよりも大きい場合には、モバイルデバイスは、推奨されたAPを通じて接続する間、仮想プライベートネットワーク(VPN)を使用することを命令される。VPNは、モバイルデバイスと遠隔VPNサーバとの間で全てのトラフィックを暗号化し、ユーザのデータを攻撃者が分析するか、または変更することを困難にする。しかしながら、VPNは、全体の接続特性を劣化させ(レイテンシーの増加、さらなる暗号化オーバーヘッドなど)るため、アクセスセキュリティを改善するために実際に必要とされるときのみ使用されるべきである。
【0068】
他の実施形態においては、セキュリティリスク評価についての情報は、自動接続を引き起こすことなくユーザに提示することができるか、またはセキュリティリスクの改善した接続の異なる保護手段を使用することができる。例えば、VPNは、暗号化されていないデータを保護する(VPNのバイパス内でHTTPSデータを送信する間にHTTPデータを保護する)か、または、選択されたドメインのみを保護する(例えば、VPNなしでの一般的なニュースサイトへのアクセス中の、VPNを通じた買い物もしくは健康用サイトへのアクセス)ためにのみ選択的に使用することができる。幾つかの他の実施形態においては、モバイルデバイスは、セキュリティリスクの上昇を伴ってAPにアクセスするときに、異なる保護手段を展開することができる。例えば、ルートアクセスが利用可能である場合、ユーザデバイス上のローカルファイアウォールは、同一のローカルネットワーク上の現在のユーザと他のユーザとの間のトラフィックをブロックし得、現在のAPまたはゲートウェイがそれをサポートしない場合であっても、クライアント分離を効率的に行わせる。それによって、評価されたセキュリティリスクをVPN利用に対する閾値未満のレベルに減少させるが、ブロックされることを故意に除外されない限りは、同一ネットワーク(無線プリンタなど)上での他のデバイスに対するアクセスをブロックし得る。
【0069】
一つ以上の実施形態においては、ユーザが選択されたAPに接続された後、さらなる保護とともに、またはさらなる保護なしでも、モバイルデバイスは、再接続、ローカルパケットおよび帯域幅などのイベントを監視して報告し続けることができる。セキュリティリスクは、接続セッションに対して同一のままであり得るか、検出されたイベントに依存して調整され続け得る。例えば、大数の再接続または新規ローカルユーザの検出は、遠隔サーバに対して追加要求が送信されない場合であっても、セキュリティリスクの内部再計算を引き起こし得る。リスクが閾値よりも高くなる場合、モバイルデバイスは、VPNをオン状態にするか、または接続を断ち、別のAPを試し得る。
【0070】
図6に図示された実施形態は、複数のユーザからの報告に依拠してAPの永続性を評価し、それを短寿命の偽装APと区別する。
【0071】
図7は、このようなビジットが同一ユーザによって実施される場合であっても、複数ビジット中のその二次的特性を監視することによって、Wi−FiAPのセキュリティおよび品質を評価できる一実施形態を図示する。
【0072】
この実施形態においては、AP評価に対する要求700は、BSSIDに加え、SSID、通信チャネルおよびモバイルデバイスの位置などの複数の値を含む。これらの値は、データベース710内に格納されたデータと比較される。図示された実施形態においては、格納されたデータは、特定のBSSIDを有するAPに対して報告された、別の位置、チャネル、公衆IPおよび帯域幅の値のアレイを含む。
【0073】
一つ以上の実施形態においては、その後の処理ステップは、このようなビジットが同一ユーザによって実施される場合であっても、格納された特徴が、あるビジットと別のビジットとで変化する場合にセキュリティリスク評価を増加させる。
【0074】
例えば、ステップ720で、APがそのSSIDを変更した場合(データベース内の異なるSSIDの数が2以上であるか、または新規SSIDが評価要求で送信された場合)には、セキュリティリスクはd_SSIDの分だけ増加する。安定したSSIDを有するAPは、より永続性を有すると考えられるため、より低いセキュリティリスクと関連付けられる。別の実施形態においては、APセキュリティリスクは、SSID報告の回数とタイミングとに依存し得る。例えば、最新のSSIDが複数の最近のセッション中に報告され変化していないままである場合、セキュリティリスクは低いままであり得る。
【0075】
一つ以上の実施形態においては、同様に、ステップ730において、格納された複数の位置または新規位置を有するAPに対するセキュリティリスクを増加させる。位置の変化は、
図3におけるAP300などの悪意のあるクローンのAPの強い指標と成り得る。他の実施形態においては、APセキュリティリスクは、位置報告の回数およびタイミングに依存し得る。例えば、最新の位置が複数の最近のセッション中に報告され、変化しないままである場合、セキュリティリスクは低いままであり得る。
【0076】
一つ以上の実施形態においては、ステップ740において、セキュリティリスクは報告されたチャネルに基づいて調整することができる。チャネル変更は、通常悪意のないものである(異なるチャネルは、他のユーザとの干渉またはラジオノイズ源との干渉を回避するために使用することができる)が、チャネル切り替えは、より強い信号を有するAPへとユーザの接続を強いるために、攻撃者によって使用することができる。幾つかの実施形態においては、チャネル変更(d_channel)に対するペナルティは、比較的低いものであり得るか、特定の期間中にチャネル切り替えの数が閾値を超えて急上昇するときのみ課され得る。
【0077】
一つ以上の実施形態においては、ステップ750は、評価されたAPの公衆IPアドレスに関連付けられた一つ以上の特徴の変化が存在する場合の、セキュリティリスクの増加を図示する。地理的位置情報に加えて、ルータブルIPアドレスの範囲は、既知の所有者(例えば、ISPまたは組織)、AS数(BGP広告に対して使用される)、割り当て(一次的な所有権移転の指示)、割り当て権限などに関連付けられ得る。偽装APがインターネット(例えば、携帯電話ホットスポット)に接続するためにそれ自体の通信チャネルを使用する場合、IPアドレス所有権の変更は、合法的なAPのSSIDおよびBSSIDを完璧にクローンする場合であっても、それを検出することを可能にし、認証解除要求のフラッドを発行することによって合法的なAPをシャットダウンし、その後、同一位置に自体を提示する。
【0078】
一つ以上の実施形態においては、ステップ760は、“マン・イン・ザ・ミドル”攻撃に関連付けられたセキュリティリスクを検出するためのアクティブまたはパッシブ試験中に収集された帯域幅の情報の利用を図示する。攻撃者がユーザのARPキャッシュ内のそれ自体のIPへのゲートウェイのIPの置換に成功する場合、ユーザのトラフィックは、実際のゲートウェイに到達する前に、攻撃者のデバイスを通ってリダイレクトされる。これは、特に、データ転送を遅延させる深いパケット検査を攻撃者が展開する場合に、利用可能な帯域幅の降下によって検出することができる。図示された実施形態においては、検出された帯域幅の値の範囲が平均値によって正規化されると、閾値(例えば、2.5)より大きくなる場合に、セキュリティリスクは、増加する。他の実施形態においては、同一のセッション内で、または、ゲートウェイIPの変化と組み合わせて、またはクライアント分離なしのAPに対してのみ、利用可能な帯域幅の大きい変化が検出されるときのみ、セキュリティリスクは増加する。
【0079】
幾つかの他の実施形態においては、帯域幅データは、セキュリティリスクを何ら変化させることなく、接続品質を評価するためにのみ使用され得る。
【0080】
図示された実施形態は、セキュリティリスク調整の特定のシーケンスを示しているが、異なる実施形態は、このようなステップの異なる順序を使用してもよいし、または複数のステップを並行して実施してもよいし、またはステップのうちの幾つかをスキップしてもよいし、複数の引数関数における異なるステップをまとめてもよい。
【0081】
一つ以上の実施形態においては、評価されたアクセスポイントのセキュリティリスク評価が作成された後、それは、セキュリティとアクセス品質との間の最良のバランスでのWi−Fi接続の確立を支援するために使用することができ、VPNなどのさらなる保護手段を展開するか、または評価されたAPのセキュリティもしくはアクセス品質についての情報をユーザに単に提示する。
【0082】
図8は、ユーザの位置の近くの評価されたAPについての情報を示すためのアプリケーション(例えば、モバイルデバイス用のWi−Fiファインダアプリケーション)またはウェブサイトに対するユーザインターフェイスの一例を図示する。
【0083】
一つ以上の実施形態においては、ユーザが特定の位置に入って、Wi−Fiファインダアプリケーションまたは対応するウェブサイトを開いた後、情報ウインドウ800が、近傍のAPを評価した結果を表示する。このようなAPは、アプリケーションもしくはウェブサイトが開かれる前、または開かれた後に、それらのビーコンによって検出され得る。それは、特定のAPにユーザが接続される前、またはその後に行われ得る。評価結果は、遠隔サーバから受信されるか、またはローカルストレージから読み出され得るかのいずれかである。
【0084】
記述された実施形態の主な目的は、ユーザが未知の位置にいる場合に特に、最良のセキュリティおよび/または接続品質のためにどのAPを使用するかについて、ユーザによる詳細な決定を可能にすることである。
【0085】
記述された実施形態においては、検出された各APの名称(SSID)は、評価中に得られたさらなる情報と共に記載される。
【0086】
一つ以上の実施形態においては、記録810は、一定期間中に相当数のユーザによって確認され、利用可能な帯域幅のうち提示された範囲の、永続性のある、低リスクAPを図示する。パスワードが格納されたということは、APが安全な暗号化を用いていることを示し、現在のデバイスによって以前ビジットされ、パスワードを手動で再入力することをユーザに要求しないことに留意されたい。
【0087】
一つ以上の実施形態においては、記録820は、可能性のあるセキュリティ問題を有するAPを図示する。すなわち、他のローカルユーザからのトラフィックの存在が、異なるデバイスによるビジット中に検出され、このことはAPまたはそのゲートウェイがクライアント分離をサポートしないことを示す。それは、より高い利用可能な帯域幅を有し、幾つかのユーザは、それを他よりも好むことがある。セキュリティリスクを減少させるために、ユーザは、このAPに接続する間にVPNを有効化するように推奨される。
【0088】
一つ以上の実施形態においては、記録830は、極度のセキュリティリスクを有するAPを図示する。すなわち、このAPの位置は、最近変更され、クローンされた偽装を示し得る。“ログイン要求”通知は、このAPが“Wi−FiEnterprise”認証を展開し、それによって、WPA−PSKなど複数のユーザ間で同一のパスワードを共有する代わりに特定のパスワードを各ユーザに割り当てる。より安全を考えると、この認証方法は、ユーザに彼らのログイン本人証明を入力するようにだますためにも使用され得、攻撃者が、その後、合法的なネットワーク上でこのようなユーザになりすますことを可能とする。帯域幅のデータは示されていない。なぜなら、デバイスは、位置変更の後、そのAPに接続されていないためである。ユーザは、UIからこのAPを隠すための選択を提供され、偶発的な接続の機会を減らす。
【0089】
一つ以上の実施形態においては、記録840は、データベース内に比較的少数の記録を有するAPを示す。すなわち、APの特徴が、その永続性についての判定を行うのに十分ではない。このAPに接続するときには、それがパスワードを要求し、比較的強い暗号化を有する(例えば、WPA−PSK)場合であっても、VPNの利用が推奨される。
【0090】
一つ以上の実施形態においては、記録850は、暗号化のない公衆APを図示する(パスワードを要求されない)。それが永続的であると考えられる(多数のユーザによって変化がないと報告されている)が、そのセキュリティリスクは、“高い”ものとして評価される。なぜなら、そのAPに接続していないユーザでさえも、全ての暗号化されていないトラフィックをパッシブに監視することができるからである。VPNの利用は、少なくともHTTPトラフィックに対しても推奨される。
【0091】
従来技術のAP評価方法は、その暗号化の欠如により、記録850において図示されたAPに対してセキュリティ保護の増加を推奨するだけである。
図8に図示されたように、本発明の実施形態は、それらが、WPA−PSKまたはWPA Enterpriseなどの比較的安全な暗号化アルゴリズムを使用する場合でも、複数のAPをセキュリティリスクが上昇したものとして識別する。
【0092】
他の実施形態は、ユーザに対して異なる種類のデータを提示してもよい。例えば、接続品質または帯域幅のデータを提供することなくセキュリティリスクを示す。(例えば、全ての安全ではないエントリが隠される場合)セキュリティリスクのレベルを表示することなく、接続品質データのみを示す。(例えば、カスタム設定によって制御されるように)異なる種類のデータが異なるAPに対して、または、異なるユーザに対して示され得る。
【0093】
一つ以上の実施形態においては、AP評価データを提示するのに加えて、図示された実施形態は、ユーザのセキュリティに関して妥協することなく、最速のAPに自動的に接続するための容易な選択を提供する(ボタン860)。例えば、このボタンをクリックすると、セキュリティ増加のためにVPNを使用する間、(最速の帯域幅を有する)AP820に対する接続を開始し得る。さらなる試験がVPNの使用による帯域幅の降下を示す場合、ユーザは、VPNを必要としない、より安全なAP810に自動的に再接続され得る。
【0094】
他の実施形態においては、セキュリティおよび自動接続用の速度間のバランスは、ユーザによってカスタマイズすることができる。AP評価データの表示は、(例えば、既にビジットされた位置で検出されたAPの組が変化したときに新規位置においてのみ、)ユーザの入力が自動化された選択をすることが望ましいときにのみ始動され得る。
【0095】
図示された実施形態は、Wi−Fiアクセスポイントを参照しているが、本発明は、その識別子によって識別され得るあらゆるローカルネットワークにも適用可能である。例えば、本発明によるセキュリティリスクまたは接続品質評価は、携帯電話通信ネットワークによってサポートされるローカルWi−Fiホットスポットに対して、または、比較的広い領域をカバーする無線ネットワーク(WiMAX、衛星ベース接続もしくは固定帯域幅接続など)に対して、異なるホテル内の客に提供される有線(LAN)接続に対して発行される。評価されたネットワークがBSSIDなどの明確な識別子を提供しない場合でも、本発明は、一意的な識別子が評価されたネットワークに対して獲得され得る(例えば、モデムまたはゲートウェイのMACアドレス)場合に使用され得る。MACアドレスおよびそのゲートウェイのIPが変化しないままであって、帯域幅が以前のユーザによって報告された制限内にあり、他のローカルユーザ由来の検出可能なトラフィックが存在しない場合には、例えば、共有有線ネットワーク(LAN)は、比較的安全と考えられ得る。
【0096】
図示された実施形態は、モバイル無線デバイスを参照しているが、本発明は、それらが無線特性を有していない場合でも、通信ネットワークに接続されたあらゆるデバイスにも適用可能である。上述されたように、本発明は、無線ネットワークカードなしでデバイスによって使用される有線ネットワーク(LAN)のセキュリティリスクを評価するために使用することができる。
【0097】
一つ以上の実施形態においては、APおよび他のローカルネットワークの永続性を報告し、評価するために使用されるデータは、図示された実施形態によって限定されることはない。それは、マルウェア検出イベント、APまたはルータにインストールされたライブラリおよびOSバージョン、APまたはルータの型およびモデル、外部または内部の侵入試験の結果などのパラメータも含み得る。例えば、同一のAPに接続された複数のデバイスが同様のマルウェアイベントの検出(例えば、ボットネットワークのコマンドおよび制御センターの同一のIP範囲に対するアクセス)を報告する場合、それは、セキュリティリスク上昇の指標と成り得る。同一のAPに接続された同一のデバイスに対するマルウェアイベントの頻度が、このAPに対する繰り返しビジット中に増加する場合、他のAPに対して低いままである間、それも、セキュリティリスクの上昇を示し得る。
【0098】
一つ以上の実施形態においては、接続品質についての情報は、異なる報告から収集され得、その後、最良の接続の選択を支援するために使用され得る。このような情報は、図示された例に限定されることはなく、例えば、ピング試験の測定、トレースルート分析の結果、パケット損失の測定、輻輳ウインドウのサイズの測定または他のトラフィック輻輳指標なども含み得る。接続品質は、処理されたデータの種類に基づいて異なるように評価され得る。例えば、短いレイテンシーは、ウェブコンテンツに対してより重要である。より高いスループットは、動画に対してより重要である。双方の組み合わせは、リアルタイムネットワーク相互作用を伴うゲームに対して重要である。
【0099】
図9は、本発明のシステムおよび方法の種々の実施形態が実装され得るコンピュータプラットフォームの例示的一実施形態を図示する。詳細には、
図9は、本発明の方法の一実施形態が実装され得るコンピュータ/サーバシステム1300の一実施形態を図示するブロック図を表す。システム1300は、コンピュータ/サーバプラットフォーム1301、周辺デバイス1302およびネットワークリソース1303を含む。
【0100】
一つ以上の実施形態においては、コンピュータプラットフォーム1301は、データバス1304またはコンピュータプラットフォーム1301の種々の部分にわたって、その間で情報を通信するための他の通信機構を含み、情報を処理し、他の計算および制御タスクを実施するために、バス1304で結合されたプロセッサ1305を含み得る。コンピュータプラットフォーム1301は、プロセッサ1305によって実行される命令と同様に種々の情報を格納するためにバス1304に結合された、ランダムアクセスメモリ(RAM)もしくは他のダイナミックストレージデバイスなどの揮発性ストレージ1306も含む。揮発性ストレージ1306は、プロセッサ1305によって命令を実行する間に、一時的に変数または他の中間情報を格納するためにも使用されてもよい。コンピュータプラットフォーム1301は、種々のシステム構成パラメータと同様に、基本入力出力システム(BIOS)など、プロセッサ1305に対する静的情報および命令を格納するためにバス1304に結合された、リードオンリーメモリ(ROMもしくはEPROM)1307または他のスタティックストレージデバイスをさらに含んでもよい。磁気ディスク、光ディスクまたはソリッドステートフラッシュメモリデバイスなどの永続的ストレージデバイス1308が、提供され、情報および命令を格納するためにバス1304に結合される。
【0101】
一つ以上の実施形態においては、コンピュータプラットフォーム1301は、コンピュータプラットフォーム130のシステム管理者またはユーザに情報を表示するためのブラウン管(CRT)、プラズマディスプレイまたは液晶ディスプレイ(LCD)などのディスプレイ1309にバス1304を介して結合されてもよい。入力デバイス1310は、英数字および他のキーを含み、プロセッサ1305に情報およびコマンド選択を通信するためにバス1304に結合される。別の種類のユーザ入力デバイスは、マウス、トラックボールまたはプロセッサ1305に対して方向の情報およびコマンド選択を通信し、ディスプレイ1309上のカーソル移動を制御するためのカーソル方向キーなどの、カーソル制御デバイス1311である。この入力デバイスは、典型的には、デバイスが平面内の位置を特定することを可能にする第一軸(例えばx)および第二軸(例えばy)の二つの軸において二つの自由度を有する。
【0102】
一つ以上の実施形態においては、外部ストレージデバイス1312は、バス1304を介してコンピュータプラットフォーム1301に結合されてもよく、コンピュータプラットフォーム1301に対して、予備のストレージ容量またはリムーバブルストレージ容量を提供する。コンピュータシステム1300の一実施形態においては、外部リムーバブルストレージデバイス1312が使用されてもよく、他のコンピュータシステムとのデータ交換を容易にする。
【0103】
本発明は、本明細書に記述された技術を実現するためのコンピュータシステム1300の使用に関する。一実施形態においては、本発明のシステムは、コンピュータプラットフォーム1301などのマシン上に存在し得る。本発明の一実施形態によれば、本明細書に記述された技術は、揮発性メモリ1306に含まれる一つ以上の命令の一つ以上のシーケンスをプロセッサ1305が実行するのに応じて、コンピュータシステム1300によって実施される。このような命令は、永続的ストレージデバイス1308などの別のコンピュータ可読媒体から揮発性メモリ1306に読み出されてもよい。揮発性メモリ1306に含まれた一連の命令の実行によって、本明細書に記述されたプロセスステップをプロセッサ1305に実施させる。別の実施形態においては、ハードワイヤード回路は、本発明を実現するためのソフトウェア命令の代わりに、またはソフトウェア命令と組み合わせて使用されてもよい。したがって、本発明の実施形態は、ハードウェア回路とソフトウェアとの如何なる特定の組み合わせにも限定されることはない。
【0104】
本明細書で用いられるように“コンピュータ可読媒体”という語は、実行用にプロセッサ1305に命令を提供することに関与するあらゆる媒体のことを称する。コンピュータ可読媒体は、マシン可読媒体の単なる一例であって、本明細書に記述されたあらゆる方法および/または技術を実現するための命令を担持してもよい。このような媒体は、不揮発性媒体および揮発性媒体を含むがそのいずれにも限定はされない多くの形式をとってもよい。不揮発性媒体は、例えば、ストレージデバイス1308などの光または磁気ディスクを含む。揮発性媒体は、揮発性ストレージ1306などのダイナミックメモリを含む。
【0105】
コンピュータ可読媒体の一般的形式は、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープまたは任意の他の磁気媒体、CDROM、任意の他の光媒体、パンチカード、紙テープ、穴のパターンを有する任意の他の物理媒体、RAM、PROM、EPROM、FLASH−EPROM、フラッシュドライブ、メモリカード、任意の他のメモリチップもしくはカートリッジ、またはコンピュータがそこから読み出すことができる任意の他の媒体を含む。
【0106】
コンピュータ可読媒体の種々の形式は、プロセッサ1305に対する実行用の一つ以上の命令の一つ以上のシーケンスを担持することに関与してもよい。例えば、命令は、最初、遠隔コンピュータからの磁気ディスク上に担持されてもよい。或いは、遠隔コンピュータは、そのダイナミックメモリに命令をロードして、モデムを利用して電話線を介して命令を送信できる。コンピュータシステムに対してローカルなモデムは、電話線上でデータを受信して、赤外線送信器を利用して、赤外信号にデータを変換することができる。赤外線検出器は、赤外線信号に担持されたデータを受信することができ、適切な回路は、データバス1304上にデータを載せることができる。バス1304は、揮発性ストレージ1306にデータを伝送して、プロセッサ1305は、揮発性ストレージ1306から、命令を検索して実行する。揮発性メモリ1306によって受信された命令は、プロセッサ1305による実行前、または実行後のいずれかに永続的ストレージデバイス1308上で任意で格納されてもよい。命令は、本技術分野で既知の種々のネットワークデータ通信プロトコルを利用して、インターネットを介してコンピュータプラットフォーム1301にダウンロードされてもよい。
【0107】
コンピュータプラットフォーム1301は、データバス1304に結合されたネットワークインターフェイスカード1313などの通信インターフェイスも含む。通信インターフェイス1313は、ローカルネットワーク1315に結合されたネットワークリンク1315に結合する二方向データ通信を提供する。例えば、通信インターフェイス1313は、総合サービスデジタルネットワーク(ISDN)カードまたはモデムであってもよく、対応する種類の電話線にデータ通信接続を提供する。別の例として、通信インターフェイス1313は、ローカルエリアネットワークインターフェイスカード(LAN NIC)であってもよく、互換性のあるLANにデータ通信接続を提供する。既知の802.11a、802.11b、802.11gおよびBluetoothなどの無線リンクも、ネットワーク実装のために使用されてもよい。このようなあらゆる実装において、通信インターフェイス1313は、様々な種類の情報を表すデジタルデータストリームを担持する電気信号、電磁気信号または光信号を送受信する。
【0108】
ネットワークリンク1313は、典型的には、一つ以上のネットワークを通じて他のネットワークリソースにデータ通信を提供する。例えば、ネットワークリンク1315は、ホストコンピュータ1316またはネットワークストレージ/サーバ1317に対して、ローカルネットワーク1315を通じて接続を提供してもよい。追加的に、または代替的に、ネットワークリンク1313は、インターネットなどのワイドエリアまたはグローバルネットワーク1318にゲートウェイ/ファイアウォール1317を通じて接続してもよい。したがって、コンピュータプラットフォーム1301は、遠隔ネットワークストレージ/サーバ1319などのインターネット1318上のあらゆる場所に配置されたネットワークリソースにアクセスすることができる。一方、コンピュータプラットフォーム1301は、ローカルエリアネットワーク1315および/またはインターネット1318上のあらゆる場所に配置されたクライアントによってもアクセスされ得る。ネットワーククライアント1320および1321は、プラットフォーム1301に類似のコンピュータプラットフォームに基づいてそれ自体実装されてもよい。
【0109】
ローカルネットワーク1315およびインターネット1318は、双方とも、デジタルデータストリームを担持する電気信号、電磁気信号または光信号を使用する。種々のネットワークを通る信号、ネットワークリンク1315上で通信インターフェイス1313を通った信号は、コンピュータプラットフォーム1301との間でデジタルデータをやり取りするが、情報を伝送するキャリア波の例示的形態である。
【0110】
コンピュータプラットフォーム1301は、インターネット1318およびLAN1315、ネットワークリンク1315および通信インターフェイス1313を含む種々の(複数の)ネットワークを通じて、メッセージを送信して、プログラムコードを含むデータを受信することができる。インターネットの例においては、システム1301がネットワークサーバとして機能するとき、システム1301は、インターネット1318、ゲートウェイ/ファイアウォール1317、ローカルエリアネットワーク1315および通信インターフェイス1313を通じて、(複数の)クライアント1320および/または1321上で実行するアプリケーションプログラムに対して要求されたコードまたはデータを伝送してもよい。同様に、システム1301は、他のネットワークリソースからコードを受信してもよい。
【0111】
受信されたコードは、永続的または揮発性ストレージデバイス1308および1306に其々受信および/または格納されるときに、またはその後の実行用に他の不揮発性ストレージデバイスに受信および/または格納されるときに、プロセッサ1305によって実行されてもよい。
【0112】
本明細書で記述されたプロセスおよび技術は、いかなる特定の装置に本質的に関連するものではなく、ソフトウェアコンポーネントの如何なる適切な組み合わせによって実装されてもよいことを理解されたい。さらに、様々な種類の汎用ソフトウェアコンポーネントが、本明細書に記述された教示により使用されてもよい。本明細書に記述された方法ステップを実施するために、メディアチャネル数およびチャネル動作数と同様に分類法を拡張することもまた利点を示し得る。本発明は、特定の例に関連して記述されてきた。特定の例は、全ての点において限定的ではなく例示的なものとして意図される。多くの異なる組み合わせのソフトウェアコンポーネントおよびソフトウェアサービスが本発明を実施するのに適切であることを、当業者は理解するであろう。例えば、記述されたソフトウェアは、.NET、PHP、Javaなどの様々なプログラミング言語またはスクリプト言語で実装されてもよい。
【0113】
さらに、本発明の他の実装は、本明細書に開示された本発明の明細書および実施を考慮することによって、当業者に明らかであろう。記述された実施形態の種々の態様および/またはコンポーネントは、コンピュータネットワークを介して遠隔サーバと通信するための無線デバイスによって使用される無線アクセスポイントのセキュリティおよび品質を評価するためのコンピュータシステムおよびコンピュータ実装された方法において単一またはあらゆる組み合わせで使用されてもよい。明細書および例は、例示的なものとしてのみ考えられることを意図され、本発明の真の範囲および趣旨は、以下の請求項によって示される。
【0114】
[参照]
米国特許8,526,368:Wi−Fi access point characteristics database
【0115】
米国特許8,483,704:Method and apparatus for maintaining a fingerprint for a wireless network
【0116】
米国特許8,467,361:Intelligent wireless access point notification
【0117】
米国特許8,032,939:Method and system for providing wireless vulnerability management for local area computer networks
【0118】
米国特許7,971,253:Method and system for detecting address rotation and related events in communication networks
【0119】
米国特許6,321,338:Network surveillance
【0120】
米国特許7,856,656:Method and system for detecting masquerading wireless devices in local area computer networks
【0121】
http://en.wikipedia.org/wiki/Wi-Fi_Protected_Access
【0122】
http://en.wikipedia.org/wiki/Service_set_(802.11_network)
【0123】
http://askubuntu.com/questions/40068/show−bssid−of−an−access−point
【0124】
http://coderrr.wordpress.com/2008/09/10/get−the−physical location−ofwireless−router−from−its−mac−address−bssid/
【0125】
http://www.digininja.org/jasager/usage_web.phphttps://forum.openwrt.org/viewtopic.php?id=26512
【0126】
http://cecs.wright.edu/〜pmateti/InternetSecurity/Lectures/WirelesHacks/Mateti−WirelessHacks.htm#_Toc77524652
【0127】
http://www.maxi−pedia.com/how+to+break+MAC+filtering